:root{color-scheme:light dark;--white: #ffffff;--gray-400: #a8a29b;--gray-500: #78716a;--gray-600: #57534d;--gray-700: #44403a;--gray-800: #292524;--gray-900: #1c1917;--gray-950: #0c0a09;--canvas: #faf9f7;--canvas: light-dark(#faf9f7, #0e0d0c);--surface: #ffffff;--surface: light-dark(#ffffff, #171614);--paper: #fdfcfa;--paper: light-dark(#fdfcfa, #121110);--line: #e9e6e1;--line: light-dark(#e9e6e1, #292724);--line-strong: #d9d5ce;--line-strong: light-dark(#d9d5ce, #3a3733);--line-hover: #a8a29b;--line-hover: light-dark(#a8a29b, #55504a);--ink: #1c1917;--ink: light-dark(#1c1917, #f5f3f0);--ink-2: #57534d;--ink-2: light-dark(#57534d, #c4bdb4);--ink-3: #736d66;--ink-3: light-dark(#736d66, #8e8880);--ink-inverse: #ffffff;--ink-inverse: light-dark(#ffffff, #06201d);--brand: #0f5750;--brand: light-dark(#0f5750, #6fd8c8);--brand-hover: #0b443e;--brand-hover: light-dark(#0b443e, #8fe6d8);--brand-active: #083430;--brand-active: light-dark(#083430, #57c4b4);--brand-link: #10635b;--brand-link: light-dark(#10635b, #7be0d0);--brand-tint: #e8f2ef;--brand-tint: light-dark(#e8f2ef, #12211f);--brand-tint-strong: #d3e6e0;--brand-tint-strong: light-dark(#d3e6e0, #1e3230);--focus: #0f766e;--focus: light-dark(#0f766e, #45c7b8);--ok-fg: #067647;--ok-fg: light-dark(#067647, #75e0a7);--ok-bg: #ecfaf0;--ok-bg: light-dark(#ecfaf0, #08251a);--ok-line: #b3ebc8;--ok-line: light-dark(#b3ebc8, #145232);--warn-fg: #b54708;--warn-fg: light-dark(#b54708, #fdb022);--warn-bg: #fef8ea;--warn-bg: light-dark(#fef8ea, #2a1d06);--warn-line: #fbdf9a;--warn-line: light-dark(#fbdf9a, #5b410c);--danger-fg: #b42318;--danger-fg: light-dark(#b42318, #fda29b);--danger-bg: #fef2f0;--danger-bg: light-dark(#fef2f0, #2c1210);--danger-line: #fbcdc7;--danger-line: light-dark(#fbcdc7, #612320);--info-fg: #175cd3;--info-fg: light-dark(#175cd3, #84caff);--info-bg: #eff6fe;--info-bg: light-dark(#eff6fe, #0a1b2c);--info-line: #b7dbfb;--info-line: light-dark(#b7dbfb, #10375f);--purple-fg: #6941c6;--purple-fg: light-dark(#6941c6, #c3b5fd);--purple-bg: #f5f2fe;--purple-bg: light-dark(#f5f2fe, #1a1434);--purple-line: #dbd5fb;--purple-line: light-dark(#dbd5fb, #392a66);--cyan-fg: #0e7090;--cyan-fg: light-dark(#0e7090, #67e3f9);--cyan-bg: #ecfafc;--cyan-bg: light-dark(#ecfafc, #06262e);--cyan-line: #a8eefa;--cyan-line: light-dark(#a8eefa, #0c4b5a);--toast-bg: #1c1917;--toast-bg: light-dark(#1c1917, #e9e6e1);--toast-fg: #ffffff;--toast-fg: light-dark(#ffffff, #171614);--toast-line: #1c1917;--toast-line: light-dark(#1c1917, #cbc5bc);--code-bg: #14120f;--code-bg: light-dark(#14120f, #0a0908);--code-fg: #e7e3dd;--code-fg: light-dark(#e7e3dd, #d9d4cc);--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--fs-display: 64px;--lh-display: 70px;--fs-h1: 48px;--lh-h1: 54px;--fs-h2: 40px;--lh-h2: 46px;--fs-h3: 24px;--lh-h3: 32px;--fs-h4: 19px;--lh-h4: 28px;--fs-lg: 18px;--lh-lg: 30px;--fs-md: 16px;--lh-md: 26px;--fs-sm: 14px;--lh-sm: 22px;--fs-xs: 12px;--lh-xs: 18px;--tracking-display: -.036em;--tracking-tight: -.024em;--tracking-snug: -.012em;--tracking-none: 0;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--sp-14: 56px;--sp-16: 64px;--sp-20: 80px;--sp-24: 96px;--sp-30: 120px;--r-xs: 6px;--r-sm: 10px;--r-md: 14px;--r-lg: 18px;--r-xl: 24px;--r-2xl: 28px;--r-full: 999px;--shadow-tint-1: rgba(28, 25, 23, .05);--shadow-tint-1: light-dark(rgba(28, 25, 23, .05), rgba(0, 0, 0, .4));--shadow-tint-2: rgba(28, 25, 23, .1);--shadow-tint-2: light-dark(rgba(28, 25, 23, .1), rgba(0, 0, 0, .55));--shadow-tint-3: rgba(28, 25, 23, .06);--shadow-tint-3: light-dark(rgba(28, 25, 23, .06), rgba(0, 0, 0, .45));--shadow-xs: 0 1px 2px var(--shadow-tint-1);--shadow-sm: 0 1px 3px var(--shadow-tint-2), 0 1px 2px var(--shadow-tint-3);--shadow-md: 0 4px 8px -2px var(--shadow-tint-2), 0 2px 4px -2px var(--shadow-tint-3);--shadow-lg: 0 12px 16px -4px var(--shadow-tint-2), 0 4px 6px -2px var(--shadow-tint-1);--shadow-xl: 0 20px 24px -4px var(--shadow-tint-2), 0 8px 8px -4px var(--shadow-tint-1);--container: 1200px;--container-narrow: 720px;--gutter: 32px;--section-y: 104px;--nav-h: 64px;--card-pad: 24px;--ease: cubic-bezier(.4, 0, .2, 1);--dur-fast: .12s;--dur: .18s;--ring-tint: rgba(15, 118, 110, .3);--ring-tint: light-dark(rgba(15, 118, 110, .3), rgba(69, 199, 184, .4));--ring-danger-tint: rgba(180, 35, 24, .28);--ring-danger-tint: light-dark( rgba(180, 35, 24, .28), rgba(253, 162, 155, .35) );--ring: 0 0 0 3px var(--ring-tint);--ring-danger: 0 0 0 3px var(--ring-danger-tint)}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}@media(max-width:720px){:root{--gutter: 20px;--card-pad: 20px;--section-y: 72px;--fs-display: 40px;--lh-display: 44px;--fs-h1: 34px;--lh-h1: 40px;--fs-h2: 30px;--lh-h2: 36px;--fs-h3: 21px;--lh-h3: 29px}}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){:root{--dur-fast: 0ms;--dur: 0ms}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-sans);font-size:var(--fs-sm);line-height:var(--lh-sm);background:var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{margin:0;font-weight:var(--weight-semibold);color:var(--ink)}p{margin:0}a{color:var(--brand-link);text-decoration:none}a:hover{text-decoration:underline}code{font-family:var(--font-mono)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--r-xs)}.skip-link{position:absolute;left:var(--sp-4);top:var(--sp-4);z-index:100;transform:translateY(-200%);background:var(--brand);color:var(--ink-inverse);padding:var(--sp-3) var(--sp-5);border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:var(--weight-semibold);transition:transform var(--dur) var(--ease)}.skip-link:focus{transform:translateY(0);text-decoration:none}.boot{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-6);background:var(--canvas)}.spinner{width:28px;height:28px;border-radius:var(--r-full);border:2.5px solid var(--line);border-top-color:var(--brand);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{display:flex;min-height:100vh}.sidebar{width:260px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--line);padding:var(--sp-5) var(--sp-3);display:flex;flex-direction:column;gap:2px;position:sticky;top:0;height:100vh}.wordmark{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-lg);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);color:var(--ink);padding:var(--sp-2) var(--sp-2) var(--sp-6)}.wordmark .mark{width:28px;height:28px;border-radius:var(--r-sm);background:var(--brand);color:var(--ink-inverse);display:grid;place-items:center;flex-shrink:0}.wordmark .mark svg{width:17px;height:17px}.wordmark b{font-weight:var(--weight-semibold)}.wordmark>span>span{color:var(--ink-2)}.sidebar-nav{display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-2) var(--sp-3);border:none;border-radius:var(--r-sm);background:none;color:var(--ink-2);font-family:inherit;font-size:var(--fs-sm);line-height:var(--lh-sm);font-weight:var(--weight-medium);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.nav-item:hover{background:var(--canvas);color:var(--ink)}.nav-item:active{background:var(--line)}.nav-item.active{background:var(--brand-tint);color:var(--brand);font-weight:var(--weight-semibold)}.nav-item .ico{width:18px;flex-shrink:0;text-align:center;font-size:var(--fs-md);color:var(--ink-3)}.nav-item.active .ico{color:var(--brand)}.sidebar-foot{margin-top:auto;padding:var(--sp-4) var(--sp-2) 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:var(--sp-2)}.sidebar-email{font-size:var(--fs-xs);line-height:var(--lh-xs);color:var(--ink-2);font-weight:var(--weight-medium);overflow-wrap:anywhere}.sidebar-note{font-size:var(--fs-xs);line-height:var(--lh-xs);color:var(--ink-3)}.sidebar-error{font-size:var(--fs-xs);line-height:var(--lh-xs);margin:var(--sp-1) 0 0;padding:var(--sp-2) var(--sp-3)}.theme-toggle{align-self:flex-start;flex-shrink:0;display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink-2);font-family:inherit;font-size:var(--fs-md);line-height:1;cursor:pointer;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.theme-toggle:hover{background:var(--canvas);border-color:var(--line-hover);color:var(--ink)}.link-btn{align-self:flex-start;background:none;border:none;padding:0;color:var(--brand-link);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--weight-semibold);cursor:pointer}.link-btn:hover{text-decoration:underline}.link-btn:disabled{opacity:.55;cursor:default;text-decoration:none}.main{flex:1;min-width:0;padding:var(--sp-10) var(--sp-10) var(--sp-20);max-width:1120px;width:100%;margin:0 auto}.page-head{margin-bottom:var(--sp-6)}.page-head h1{font-size:var(--fs-h3);line-height:var(--lh-h3);letter-spacing:var(--tracking-tight);margin-bottom:var(--sp-1)}.page-head p{color:var(--ink-2);font-size:var(--fs-sm);line-height:var(--lh-sm)}.mock-banner{display:flex;width:fit-content;align-items:center;gap:var(--sp-2);background:var(--info-bg);border:1px solid var(--info-line);color:var(--info-fg);padding:var(--sp-1) var(--sp-3);border-radius:var(--r-full);font-size:var(--fs-xs);line-height:var(--lh-xs);font-weight:var(--weight-semibold);margin-bottom:var(--sp-5)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--card-pad)}.card+.card{margin-top:var(--sp-4)}.card h2{font-size:var(--fs-md);line-height:var(--lh-md);letter-spacing:var(--tracking-snug);margin-bottom:var(--sp-5)}.card-grid{display:grid;gap:var(--sp-4);grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-4);margin-bottom:var(--sp-4)}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--sp-5)}.stat .l{font-size:var(--fs-xs);line-height:var(--lh-xs);color:var(--ink-2);font-weight:var(--weight-medium);margin-bottom:var(--sp-2)}.stat .n{font-size:30px;line-height:36px;font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums}.stat.accent .n{color:var(--brand)}.tbl-tools{display:flex;gap:var(--sp-3);margin-bottom:var(--sp-4);flex-wrap:wrap}.tool-search{flex:1;min-width:200px}.tbl-tools input,.tbl-tools select{width:100%;min-height:40px;padding:var(--sp-2) var(--sp-3);border:1px solid var(--line-strong);border-radius:var(--r-sm);font-family:inherit;font-size:var(--fs-sm);color:var(--ink);background:var(--surface);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.tbl-tools input::placeholder{color:var(--ink-3)}.tbl-tools input:hover,.tbl-tools select:hover{border-color:var(--line-hover)}.tbl-tools input:focus,.tbl-tools select:focus{outline:none;border-color:var(--focus);box-shadow:var(--ring)}.tbl-tools .tool-status{width:auto;min-width:160px;text-transform:capitalize}.tbl-meta{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink-2);font-weight:var(--weight-medium);margin-bottom:var(--sp-2)}.tbl-note{font-size:var(--fs-xs);line-height:var(--lh-xs);color:var(--ink-3);margin-bottom:var(--sp-3);max-width:68ch}.tbl-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-sm)}.tbl-scroll:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.tbl{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.tbl th,.tbl td{text-align:left;font-weight:var(--weight-normal);vertical-align:middle}.tbl thead th{padding:0;border-bottom:1px solid var(--line);background:var(--canvas);white-space:nowrap}.th-sort{display:flex;align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-3) var(--sp-4);border:none;background:none;font-family:inherit;font-size:var(--fs-xs);line-height:var(--lh-xs);font-weight:var(--weight-semibold);color:var(--ink-2);text-align:left;cursor:pointer;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.th-sort:hover{background:var(--line);color:var(--ink)}.th-arrow{color:var(--ink-3);font-size:var(--fs-xs)}.tbl th[aria-sort]:not([aria-sort=none]) .th-sort{color:var(--ink)}.tbl th[aria-sort]:not([aria-sort=none]) .th-arrow{color:var(--brand)}.tbl tbody tr+tr th,.tbl tbody tr+tr td{border-top:1px solid var(--line)}.tbl tbody td{padding:var(--sp-3) var(--sp-4);color:var(--ink-2)}.tbl tbody th{padding:0;min-width:0}.row-open{display:block;width:100%;padding:var(--sp-3) var(--sp-4);border:none;background:none;font-family:inherit;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease)}.row-open:hover{background:var(--canvas)}.row-open .co{display:block;font-weight:var(--weight-semibold);font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink)}.row-open .ti{display:block;color:var(--ink-2);font-size:var(--fs-xs);line-height:var(--lh-xs);overflow-wrap:anywhere}.tbl .col-ats{color:var(--ink-3);text-transform:capitalize;white-space:nowrap}.tbl .col-when{color:var(--ink-3);white-space:nowrap}.pager{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-3);margin-top:var(--sp-4);flex-wrap:wrap}.pager-at{font-size:var(--fs-sm);color:var(--ink-2);font-variant-numeric:tabular-nums}.badge{display:inline-flex;align-items:center;padding:2px var(--sp-2);border:1px solid transparent;border-radius:var(--r-full);font-size:var(--fs-xs);line-height:var(--lh-xs);font-weight:var(--weight-medium);text-transform:capitalize;white-space:nowrap}.badge.applied{background:var(--info-bg);color:var(--info-fg);border-color:var(--info-line)}.badge.screening{background:var(--purple-bg);color:var(--purple-fg);border-color:var(--purple-line)}.badge.oa{background:var(--warn-bg);color:var(--warn-fg);border-color:var(--warn-line);text-transform:uppercase}.badge.interview{background:var(--cyan-bg);color:var(--cyan-fg);border-color:var(--cyan-line)}.badge.offer{background:var(--ok-bg);color:var(--ok-fg);border-color:var(--ok-line)}.badge.rejected{background:var(--danger-bg);color:var(--danger-fg);border-color:var(--danger-line)}.badge.withdrawn,.badge.opened,.badge.draft{background:var(--canvas);color:var(--ink-2);border-color:var(--line)}.funnel{display:flex;flex-direction:column;gap:var(--sp-2)}.funnel-row{display:grid;grid-template-columns:104px 1fr 40px;align-items:center;gap:var(--sp-3)}.funnel-row .fl{font-size:var(--fs-xs);line-height:var(--lh-xs);color:var(--ink-2);font-weight:var(--weight-medium)}.funnel-track{background:var(--canvas);border-radius:var(--r-xs);overflow:hidden}.funnel-bar{height:24px;border-radius:var(--r-xs);background:var(--brand);min-width:3px;transition:width .4s var(--ease)}.funnel-row .fn{font-weight:var(--weight-semibold);text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}.field{margin-bottom:var(--sp-4)}.field label{display:block;font-size:var(--fs-sm);line-height:var(--lh-sm);font-weight:var(--weight-medium);color:var(--ink);margin-bottom:var(--sp-2)}.field input,.field textarea,.field select{width:100%;min-height:40px;padding:var(--sp-2) var(--sp-3);border:1px solid var(--line-strong);border-radius:var(--r-sm);font-family:inherit;font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink);background:var(--surface);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.field input::placeholder,.field textarea::placeholder{color:var(--ink-3)}.field input:hover,.field textarea:hover,.field select:hover{border-color:var(--line-hover)}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--focus);box-shadow:var(--ring)}.field input:disabled,.field select:disabled,.field textarea:disabled{background:var(--canvas);color:var(--ink-3);cursor:not-allowed}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:40px;padding:0 var(--sp-4);border:1px solid transparent;border-radius:var(--r-sm);font-family:inherit;font-size:var(--fs-sm);line-height:var(--lh-sm);font-weight:var(--weight-semibold);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.btn.primary{background:var(--brand);color:var(--ink-inverse)}.btn.primary:hover:not(:disabled){background:var(--brand-hover)}.btn.primary:active:not(:disabled){background:var(--brand-active)}.btn.ghost{background:var(--surface);border-color:var(--line-strong);color:var(--ink)}.btn.ghost:hover:not(:disabled){background:var(--canvas);border-color:var(--line-hover)}.btn.ghost:active:not(:disabled){background:var(--line)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-row{display:flex;gap:var(--sp-3);margin-top:var(--sp-4);flex-wrap:wrap}.toast-region{position:fixed;bottom:var(--sp-6);right:var(--sp-6);z-index:80;max-width:calc(100vw - var(--sp-12));pointer-events:none}.toast{background:var(--toast-bg);color:var(--toast-fg);border:1px solid var(--toast-line);padding:var(--sp-3) var(--sp-5);border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:var(--weight-medium);box-shadow:var(--shadow-lg);animation:rise var(--dur) var(--ease)}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.timeline{border-left:1px solid var(--line);margin-left:5px;padding-left:var(--sp-5)}.tl-item{position:relative;padding-bottom:var(--sp-4)}.tl-item:last-child{padding-bottom:0}.tl-item:before{content:"";position:absolute;left:calc(-1 * var(--sp-5) - 5px);top:5px;width:9px;height:9px;border-radius:var(--r-full);background:var(--brand);border:2px solid var(--surface);box-sizing:content-box}.tl-item .tl-t{font-weight:var(--weight-semibold);font-size:var(--fs-sm);line-height:var(--lh-sm);text-transform:capitalize;color:var(--ink)}.tl-item .tl-d{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink-2)}.tl-item .tl-when{font-size:var(--fs-xs);line-height:var(--lh-xs);color:var(--ink-3);margin-top:2px}.followup{display:flex;align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3) 0;border-bottom:1px solid var(--line)}.followup:first-child{padding-top:0}.followup:last-child{border-bottom:none;padding-bottom:0}.followup .dot{width:8px;height:8px;border-radius:var(--r-full);margin-top:6px;flex-shrink:0}.followup .dot.high{background:var(--danger-fg)}.followup .dot.medium{background:var(--warn-fg)}.followup .dot.low{background:var(--ink-3)}.followup .fu-co{font-weight:var(--weight-semibold);font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink)}.followup .fu-r{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink-2)}.muted{color:var(--ink-2)}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--sp-2);padding:var(--sp-10) var(--sp-5)}.empty-icon{width:40px;height:40px;border-radius:var(--r-sm);background:var(--canvas);border:1px solid var(--line);color:var(--ink-3);display:grid;place-items:center;font-size:var(--fs-md);margin-bottom:var(--sp-1)}.empty-title{font-size:var(--fs-md);line-height:var(--lh-md);font-weight:var(--weight-semibold);color:var(--ink)}.empty-hint{font-size:var(--fs-sm);line-height:var(--lh-md);color:var(--ink-2);max-width:46ch}.loading{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-2) 0}.loading-label{font-size:var(--fs-sm);color:var(--ink-2)}.skeleton{height:14px;border-radius:var(--r-xs);background:linear-gradient(90deg,var(--line) 25%,var(--canvas) 37%,var(--line) 63%);background-size:400% 100%;animation:shimmer 1.4s ease-in-out infinite}.skeleton.tall{height:56px}@keyframes shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.detail-back{display:flex;width:fit-content;align-items:center;gap:var(--sp-2);background:none;border:none;padding:0;margin-bottom:var(--sp-4);color:var(--brand-link);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--weight-medium);cursor:pointer}.detail-back:hover{text-decoration:underline}.detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--sp-4);flex-wrap:wrap}.detail-head h2{font-size:var(--fs-h4);line-height:var(--lh-h4);letter-spacing:var(--tracking-snug);margin-bottom:var(--sp-1)}.detail-head .ti{font-size:var(--fs-sm);color:var(--ink-2);margin-bottom:var(--sp-1)}.detail-head a{font-size:var(--fs-xs);overflow-wrap:anywhere}.chips{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.chip{display:inline-flex;align-items:center;gap:var(--sp-1);background:var(--canvas);border:1px solid var(--line);border-radius:var(--r-xs);padding:var(--sp-1) var(--sp-2);font-size:var(--fs-xs);line-height:var(--lh-xs);color:var(--ink-2)}@media(max-width:900px){.app-shell{flex-direction:column}.sidebar{width:100%;height:auto;position:sticky;top:0;z-index:40;flex-direction:row;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-right:none;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.sidebar::-webkit-scrollbar{display:none}.wordmark{padding:0 var(--sp-2) 0 0;flex-shrink:0}.sidebar-nav{flex-direction:row}.nav-item{width:auto;flex-shrink:0}.sidebar-foot{margin-top:0;margin-left:auto;padding:0 0 0 var(--sp-4);border-top:none;border-left:1px solid var(--line);flex-direction:row;align-items:center;flex-shrink:0}.sidebar-email,.sidebar-note{display:none}.main{padding:var(--sp-6) var(--gutter) var(--sp-16)}.stats{grid-template-columns:repeat(2,1fr)}.field-row{grid-template-columns:1fr}}@media(max-width:560px){.tbl .col-ats,.tbl .col-when{display:none}.tbl-tools .tool-status{min-width:0;flex:1}.funnel-row{grid-template-columns:84px 1fr 32px;gap:var(--sp-2)}.toast-region{left:var(--sp-4);right:var(--sp-4);bottom:var(--sp-4);max-width:none}}.ob-shell{min-height:100vh;background:var(--canvas);display:flex;flex-direction:column}.ob-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap;padding:var(--sp-5) var(--gutter) 0;max-width:880px;width:100%;margin:0 auto}.ob-head .wordmark{padding:0}.ob-head-right{display:flex;align-items:center;gap:var(--sp-4)}.ob-rail{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--sp-1);list-style:none;margin:var(--sp-6) auto 0;padding:0;max-width:880px;width:100%}.rail-step{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-2)}.rail-step+.rail-step:before{content:"";width:16px;height:1px;background:var(--line-strong);margin-right:var(--sp-2)}.rail-dot{width:18px;height:18px;border-radius:var(--r-full);border:1.5px solid var(--line-strong);background:var(--surface);display:grid;place-items:center;font-size:10px;color:var(--ink-inverse);flex-shrink:0;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease)}.rail-label{font-size:var(--fs-xs);line-height:var(--lh-xs);color:var(--ink-3);font-weight:var(--weight-medium)}.rail-step.current .rail-dot{border-color:var(--brand);border-width:5px}.rail-step.current .rail-label{color:var(--brand);font-weight:var(--weight-semibold)}.rail-step.past .rail-dot{background:var(--brand);border-color:var(--brand)}.rail-step.past .rail-label{color:var(--ink-2)}.ob-main{flex:1;max-width:880px;width:100%;margin:0 auto;padding:var(--sp-6) var(--gutter) var(--sp-20)}.ob-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--sp-10)}.ob-card h2{font-size:var(--fs-h3);line-height:var(--lh-h3);letter-spacing:var(--tracking-tight);margin-bottom:var(--sp-2)}.ob-card h3{font-size:var(--fs-md);line-height:var(--lh-md);letter-spacing:var(--tracking-snug);margin-bottom:var(--sp-1)}.ob-card h4{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink-2);margin:var(--sp-5) 0 var(--sp-2)}.ob-lede{color:var(--ink-2);font-size:var(--fs-md);line-height:var(--lh-md);margin-bottom:var(--sp-6);max-width:60ch}.ob-provider{color:var(--ink-3)}.ob-center{text-align:center;display:flex;flex-direction:column;align-items:center}.ob-center .ob-lede{text-align:center}.ob-hero-mark{width:48px;height:48px;border-radius:var(--r-md);background:var(--brand);color:var(--ink-inverse);display:grid;place-items:center;margin-bottom:var(--sp-5)}.ob-hero-mark svg{width:28px;height:28px}.btn-lg{min-height:44px;padding:0 var(--sp-5);font-size:var(--fs-md)}.ob-bullets{list-style:none;padding:0;margin:var(--sp-8) 0 0;text-align:left;max-width:46ch;display:flex;flex-direction:column;gap:var(--sp-3)}.ob-bullets li{font-size:var(--fs-sm);line-height:var(--lh-md);color:var(--ink-2);padding-left:var(--sp-6);position:relative}.ob-bullets li:before{content:"";position:absolute;left:0;top:3px;width:16px;height:16px;border-radius:var(--r-full);background:var(--ok-bg);border:1px solid var(--ok-line)}.ob-bullets li:after{content:"";position:absolute;left:5px;top:7px;width:6px;height:3px;border-left:1.5px solid var(--ok-fg);border-bottom:1.5px solid var(--ok-fg);transform:rotate(-45deg)}.ob-bullets b{color:var(--ink);font-weight:var(--weight-semibold)}.ob-section{margin-top:var(--sp-8);padding-top:var(--sp-8);border-top:1px solid var(--line)}.ob-section:first-of-type{margin-top:0;padding-top:0;border-top:none}.ob-subsection{margin-top:var(--sp-5)}.section-help{color:var(--ink-2);font-size:var(--fs-sm);line-height:var(--lh-md);margin:0 0 var(--sp-4);max-width:66ch}.ob-section h3 .count{display:inline-block;margin-left:var(--sp-2);background:var(--canvas);border:1px solid var(--line);color:var(--ink-2);border-radius:var(--r-full);padding:0 var(--sp-2);font-size:var(--fs-xs);font-weight:var(--weight-semibold)}.ob-actions{margin-top:var(--sp-8);align-items:center}.ob-outstanding{margin-left:var(--sp-1)}.ob-error{background:var(--danger-bg);border:1px solid var(--danger-line);color:var(--danger-fg);border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-sm);line-height:var(--lh-md);margin-bottom:var(--sp-5)}.ob-warn{background:var(--warn-bg);border:1px solid var(--warn-line);color:var(--warn-fg);border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-sm);line-height:var(--lh-md);margin-bottom:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-1)}.ob-missing{list-style:none;margin:0 0 var(--sp-5);padding:var(--sp-3) var(--sp-4)}.ob-missing li{padding-left:var(--sp-4);position:relative}.ob-missing li:before{content:"•";position:absolute;left:2px}.dropzone{border:1.5px dashed var(--line-strong);border-radius:var(--r-md);background:var(--canvas);padding:var(--sp-12) var(--sp-6);text-align:center;cursor:pointer;transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease)}.dropzone:hover{border-color:var(--brand);background:var(--brand-tint)}.dropzone:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-color:var(--brand)}.dropzone.over{border-color:var(--brand);border-style:solid;background:var(--brand-tint)}.dz-icon{width:40px;height:40px;border-radius:var(--r-sm);margin:0 auto var(--sp-4);background:var(--brand-tint);border:1px solid var(--brand-tint-strong);color:var(--brand);display:grid;place-items:center;font-size:var(--fs-lg)}.dz-title{font-weight:var(--weight-semibold);font-size:var(--fs-md);line-height:var(--lh-md);color:var(--ink)}.dz-sub{color:var(--ink-2);font-size:var(--fs-sm);line-height:var(--lh-sm);margin-top:var(--sp-1)}.field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0 var(--sp-5)}.field-help{font-size:var(--fs-xs);line-height:var(--lh-xs);color:var(--ink-2);margin:var(--sp-2) 0 0}.field label{display:flex;align-items:center;gap:var(--sp-2)}.field-bool .segmented{margin-top:2px}.tag{font-size:10px;line-height:16px;font-weight:var(--weight-semibold);letter-spacing:.02em;text-transform:uppercase;border-radius:var(--r-full);padding:0 var(--sp-2)}.tag.optional{background:var(--canvas);border:1px solid var(--line);color:var(--ink-2)}.segmented{display:inline-flex;border:1px solid var(--line-strong);border-radius:var(--r-sm);overflow:hidden}.segmented button{border:none;background:var(--surface);cursor:pointer;min-height:38px;padding:0 var(--sp-5);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--weight-medium);color:var(--ink-2);transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.segmented button+button{border-left:1px solid var(--line-strong)}.segmented button:hover{background:var(--canvas);color:var(--ink)}.segmented button:focus-visible{outline:2px solid var(--focus);outline-offset:-2px;border-radius:0}.segmented button.on{background:var(--brand);color:var(--ink-inverse);font-weight:var(--weight-semibold)}.entry{border:1px solid var(--line);border-radius:var(--r-sm);padding:var(--sp-4) var(--sp-4) var(--sp-1);margin-bottom:var(--sp-3);position:relative;background:var(--surface)}.entry-remove{position:absolute;top:var(--sp-2);right:var(--sp-3);background:none;border:none;cursor:pointer;color:var(--ink-3);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--weight-medium)}.entry-remove:hover{color:var(--danger-fg);text-decoration:underline}.chip.removable button{background:none;border:none;cursor:pointer;padding:0;color:var(--ink-3);font-size:var(--fs-sm);line-height:1}.chip.removable button:hover{color:var(--danger-fg)}.chip-add{display:flex;gap:var(--sp-2);margin-top:var(--sp-3);max-width:360px}.chip-add input{flex:1;min-width:0;min-height:38px;padding:var(--sp-2) var(--sp-3);font-family:inherit;font-size:var(--fs-sm);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.chip-add input:focus{outline:none;border-color:var(--focus);box-shadow:var(--ring)}.disclosure{display:flex;align-items:center;gap:var(--sp-2);width:100%;background:none;border:none;padding:var(--sp-3) 0;cursor:pointer;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--weight-semibold);color:var(--ink-2);text-align:left}.disclosure:hover{color:var(--ink)}.disclosure .chevron{color:var(--ink-3);width:12px}.optional-block{border-top:1px solid var(--line);padding-top:var(--sp-1)}.detect-banner{display:flex;align-items:center;gap:var(--sp-2);border:1px solid transparent;border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-sm);line-height:var(--lh-sm);font-weight:var(--weight-medium);margin-bottom:var(--sp-6)}.detect-banner.checking{background:var(--canvas);border-color:var(--line);color:var(--ink-2)}.detect-banner.found{background:var(--ok-bg);border-color:var(--ok-line);color:var(--ok-fg)}.detect-banner.missing{background:var(--warn-bg);border-color:var(--warn-line);color:var(--warn-fg)}.detect-banner .dot{width:8px;height:8px;border-radius:var(--r-full);flex-shrink:0}.detect-banner .dot.ok{background:var(--ok-fg)}.detect-banner .dot.warn{background:var(--warn-fg)}.detect-banner .dot.pulse{background:var(--ink-3);animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.install-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:var(--sp-4)}.install-card{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--sp-5);background:var(--surface)}.install-card.subtle{background:var(--canvas)}.install-card p{font-size:var(--fs-sm);line-height:var(--lh-md);color:var(--ink-2)}.install-card .steps{margin:var(--sp-3) 0 var(--sp-3);padding-left:var(--sp-5)}.install-card .steps li{font-size:var(--fs-sm);line-height:var(--lh-md);margin-bottom:var(--sp-2);color:var(--ink-2)}code{background:var(--canvas);border:1px solid var(--line);border-radius:var(--r-xs);padding:1px var(--sp-1);font-size:.92em;color:var(--ink)}.done-badge{width:44px;height:44px;border-radius:var(--r-full);background:var(--ok-bg);border:1px solid var(--ok-line);color:var(--ok-fg);display:grid;place-items:center;font-size:var(--fs-lg);font-weight:var(--weight-semibold);margin-bottom:var(--sp-4)}.copy-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-sm);padding:var(--sp-2) var(--sp-3);background:var(--canvas);margin-bottom:var(--sp-3)}.copy-label{font-size:var(--fs-xs);font-weight:var(--weight-semibold);color:var(--ink-2);white-space:nowrap}.copy-value{font-size:var(--fs-sm);color:var(--ink);overflow-x:auto;white-space:nowrap}.copy-value.mono{font-family:var(--font-mono);font-size:var(--fs-xs)}.copy-row .btn{min-height:34px;padding:0 var(--sp-3)}.completeness{display:flex;flex-direction:column;gap:var(--sp-3)}.c-title{font-weight:var(--weight-semibold);font-size:var(--fs-md);line-height:var(--lh-md);color:var(--ink)}.c-sub{font-size:var(--fs-sm);line-height:var(--lh-sm);margin-top:2px}.c-bar{height:8px;border-radius:var(--r-full);background:var(--line);overflow:hidden}.c-fill{height:100%;border-radius:var(--r-full);background:var(--brand);transition:width .4s var(--ease)}.needs-answer .field input,.needs-answer .field select{border-color:var(--warn-line);background:var(--warn-bg)}.history-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-4);padding:var(--sp-3) 0;border-bottom:1px solid var(--line)}.history-row:first-child{padding-top:0}.history-row:last-child{border-bottom:none;padding-bottom:0}.history-row .co{font-weight:var(--weight-semibold);font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink)}.history-row .ti{color:var(--ink-2);font-size:var(--fs-xs);line-height:var(--lh-xs)}.small{font-size:var(--fs-xs);line-height:var(--lh-xs)}@media(max-width:720px){.install-grid{grid-template-columns:1fr}.ob-card{padding:var(--sp-6) var(--sp-5)}.ob-rail{gap:0}.rail-label{display:none}.rail-step+.rail-step:before{width:10px;margin-right:var(--sp-1)}.copy-row{grid-template-columns:1fr auto}.copy-label{grid-column:1 / -1}}
