/* components.css — Kuchup shared design layer, layer 2 of 2. Every panel page loads tokens.css + components.css only. */
/* v2. Tokens verbatim from design-tokens.css. One 5-step type scale (12/14/16/20/24).
   Spacing only from --space-* (4/8 grid). One accent (orange) reserved for the primary action + selection bar. */

*{box-sizing:border-box}
html,body{margin:0;height:100%}
html{-webkit-text-size-adjust:100%;overscroll-behavior:none}
button,a,[role=button]{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.prose a,.source a{-webkit-user-select:text;user-select:text}
body{font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--leading-normal,1.5);color:var(--color-ink);background:var(--color-paper);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}
button,input{font:inherit;color:inherit}
button{touch-action:manipulation}
a{color:inherit}
:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-sm)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.num,.tnum{font-variant-numeric:tabular-nums}
.muted{color:var(--color-muted)}

/* ---------- shell v2.1 (shared app-shell: affects every panel page) ---------- */
.shell{display:grid;grid-template-columns:15rem minmax(0,1fr);height:100dvh;overflow:hidden}
.rail{display:flex;flex-direction:column;min-height:0;padding:var(--space-xs) var(--space-xs) var(--space-sm);background:var(--color-paper);border-right:var(--hair);overflow-y:auto;overscroll-behavior:contain}
.brand{display:flex;align-items:center;gap:var(--space-2xs);min-height:var(--tap);padding:0 var(--space-2xs);margin-bottom:var(--space-xs);font-family:var(--font-display);font-weight:700;font-size:var(--text-sm);letter-spacing:.06em;text-decoration:none}
.brand img{width:28px;height:26px;flex:0 0 auto}
.nav{display:flex;flex-direction:column;gap:var(--space-md)}
.nav-sec{display:flex;flex-direction:column;gap:2px}
.nav-h{margin:0 0 var(--space-3xs);padding:0 var(--space-xs);font-size:var(--text-xs);font-weight:600;color:var(--color-muted)}
.nav-item{position:relative;display:flex;align-items:center;gap:var(--space-xs);min-height:var(--tap);padding:0 var(--space-xs);border-radius:8px;text-decoration:none;font-size:var(--text-sm);font-weight:500;color:var(--color-ink-2)}
.nav-item svg{flex:0 0 auto;color:var(--color-muted)}
.nav-item.is-active{background:var(--color-paper-2);color:var(--color-ink);font-weight:600}
.nav-item.is-active svg{color:var(--color-ink)}
.nav-item.is-active::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:2px;border-radius:2px;background:var(--color-accent)}
.nav-l{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rail-foot{margin-top:auto;display:flex;flex-direction:column;gap:2px;padding-top:var(--space-sm)}
.credits{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2xs);min-height:3rem;padding:0 var(--space-3xs) 0 var(--space-xs);margin:var(--space-3xs) 0;border-radius:8px;background:var(--color-paper-2);font-size:var(--text-sm);color:var(--color-ink-2)}
.credits b{color:var(--color-ink);font-weight:600}
.credits-add{display:inline-flex;align-items:center;gap:6px;min-height:var(--tap);padding:0 var(--space-xs);border-radius:6px;font-size:var(--text-xs);font-weight:600;color:var(--color-ink);text-decoration:none}
.account{display:flex;align-items:center;gap:var(--space-xs);width:100%;min-height:3rem;padding:0 var(--space-2xs);border:0;border-radius:8px;background:none;text-align:left;cursor:pointer;color:var(--color-ink-2)}
.av{display:grid;place-items:center;flex:0 0 auto;width:2rem;height:2rem;border-radius:50%;background:var(--color-accent);color:var(--color-accent-ink);font-family:var(--font-display);font-weight:700;font-size:var(--text-sm)}
.acct-t{flex:1;display:flex;flex-direction:column;line-height:1.3}
.acct-t b{font-size:var(--text-sm);font-weight:600;color:var(--color-ink)}
.acct-t span{font-size:var(--text-xs);color:var(--color-muted);overflow:hidden;text-overflow:ellipsis}
.backdrop{display:none}
.main{display:flex;flex-direction:column;min-width:0;min-height:0}
/* desktop: no top bar (its tour/credits/avatar live in the rail); mobile keeps it */
.topbar{display:none;align-items:center;gap:var(--space-2xs);min-height:3.5rem;padding:var(--space-2xs) var(--space-xs);border-bottom:var(--hair);background:var(--color-paper);flex:0 0 auto}
.menu-btn{display:inline-grid;place-items:center;width:var(--tap);height:var(--tap);border:0;border-radius:var(--radius-input);background:transparent;color:var(--color-ink)}
.chip-credits{display:inline-flex;align-items:center;min-height:var(--tap);padding:0 var(--space-xs);border-radius:8px;background:var(--color-paper-2);font-size:var(--text-sm);color:var(--color-ink-2);text-decoration:none}
.chip-credits b{color:var(--color-ink);font-weight:600}
.topbar .spacer{flex:1}
.icon-btn{display:inline-grid;place-items:center;flex:0 0 auto;width:var(--tap);height:var(--tap);border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper);cursor:pointer;color:var(--color-ink)}
.icon-btn:disabled{color:var(--color-rule);cursor:default}
.topbar .icon-btn{border-color:transparent}
.avatar{display:grid;place-items:center;flex:0 0 auto;width:var(--tap);height:var(--tap);border:0;border-radius:50%;background:transparent;cursor:pointer}

/* tooltip for the collapsed rail (pointer devices only) */
@media (min-width:901px) and (max-width:1200px){
  .shell{grid-template-columns:4.25rem minmax(0,1fr)}
  .rail{padding:var(--space-xs) var(--space-2xs) var(--space-sm);align-items:center}
  .rail .nav-l,.nav-h{display:none}
  .nav-sec+.nav-sec{border-top:var(--hair);padding-top:var(--space-sm)}
  .nav{gap:var(--space-sm)}
  .brand{justify-content:center;width:var(--tap);padding:0;margin-bottom:var(--space-sm)}
  .nav-item{justify-content:center;width:var(--tap);min-height:var(--tap);padding:0}
  .nav-item.is-active::before{left:-6px}
  .credits{justify-content:center;width:var(--tap);min-height:var(--tap);padding:0;border-radius:50%;font-size:var(--text-xs)}
  .account{justify-content:center;width:var(--tap);padding:0}
  .split .md{--list-w:21rem}
}
.scroller{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}

/* ---------- buttons: flat & crisp ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2xs);min-height:var(--tap);padding:0 var(--space-sm);border-radius:var(--btn-radius);border:var(--hair);background:var(--color-paper);box-shadow:var(--btn-shadow);font-size:var(--text-sm);font-weight:600;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-short),border-color var(--dur-short)}
@media (hover:hover) and (pointer:fine){.btn:hover{border-color:var(--border-hover)}}
.btn-primary{background:var(--color-accent);border-color:var(--color-accent-deep);color:var(--color-accent-ink)}
@media (hover:hover) and (pointer:fine){.btn-primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-deep)}.btn-quiet:hover{background:var(--color-paper-2);border-color:transparent;color:var(--color-ink)}.row:hover,.nav-item:hover,.account:hover,.co-row:hover{background:color-mix(in srgb,var(--color-paper-2) 70%,transparent)}.credits-add:hover{background:var(--color-paper-3)}}
.btn:active,.row:active,.nav-item:active,.icon-btn:active{transform:translateY(.5px);filter:brightness(.97)}
.btn-quiet{border-color:transparent;background:transparent;box-shadow:none;color:var(--color-ink-2)}
.btn-icon{width:var(--tap);padding:0}
.btn svg{color:currentColor}
.link{--slop-allow: underlined-text;display:inline-flex;align-items:center;gap:var(--space-3xs);min-height:var(--tap);font-weight:600;color:var(--color-ink);text-decoration:underline;text-decoration-color:var(--color-rule);text-underline-offset:3px}
.link:hover{text-decoration-color:currentColor}

/* ---------- badges: only for real status / signal ---------- */
.badge{display:inline-flex;align-items:center;gap:var(--space-3xs);height:1.375rem;padding:0 var(--space-2xs);border-radius:.375rem;font-size:var(--text-xs);font-weight:600;line-height:1;white-space:nowrap}
.b-remote{background:var(--intent-soft);color:var(--intent)}
.b-visa{background:var(--visa-soft);color:var(--visa)}
.b-ready{background:var(--success-soft);color:var(--success)}
.b-applied{background:var(--intent-soft);color:var(--intent)}
.b-want{background:var(--pending-soft);color:var(--pending)}

/* ---------- meta line: plain text, subtle icons, dot separators ---------- */
/* leading separators of each wrapped line are clipped by the negative margin + overflow trick */
.meta{display:flex;flex-wrap:wrap;align-items:center;row-gap:var(--space-3xs);margin-left:-17px;padding:2px 0;clip-path:inset(-4px -4px -4px 17px);font-size:var(--text-sm);color:var(--color-ink-2)}
.meta>*{position:relative;display:inline-flex;align-items:center;gap:6px;margin-left:17px}
.meta>*::before{content:"";position:absolute;left:-10px;top:50%;width:3px;height:3px;margin-top:-1.5px;border-radius:50%;background:var(--color-rule)}
.meta svg{color:var(--color-muted)}

/* ---------- page + company header ---------- */
.page{padding:var(--space-md) var(--space-lg) 0}
.back{border:0;background:none;cursor:pointer;display:inline-flex;align-items:center;gap:var(--space-3xs);min-height:var(--tap);margin-left:-6px;padding-right:var(--space-2xs);font-size:var(--text-sm);font-weight:600;color:var(--color-ink-2);text-decoration:none}
.back:hover{color:var(--color-ink)}
.co{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-md);padding:var(--space-xs) 0 var(--space-md)}
.logo{width:3.5rem;height:3.5rem;border-radius:var(--radius-input);border:var(--hair);background:#fff;object-fit:contain;display:block}
.logo.mono{display:grid;place-items:center;background:var(--color-paper-3);border-color:transparent;font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;color:var(--color-ink)}
.co h1{overflow-wrap:anywhere;text-wrap:balance;margin:0 0 var(--space-3xs);font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;letter-spacing:-.02em;line-height:1.2}
.co-actions{display:flex;gap:var(--space-2xs);align-items:center}

/* ---------- master / detail ---------- */
.md{display:grid;grid-template-columns:var(--list-w) minmax(0,1fr);border-top:var(--hair);margin:0 calc(var(--space-lg) * -1)}
.roles{position:sticky;top:0;align-self:start;height:calc(100dvh - 3.5rem);display:flex;flex-direction:column;border-right:var(--hair)}
.full .roles{position:static;height:auto}
.roles-head{padding:var(--space-sm) var(--space-sm) var(--space-xs) var(--space-lg)}
.roles-title{display:flex;align-items:baseline;justify-content:space-between;margin:0 0 var(--space-xs);font-family:var(--font-display);font-size:var(--text-base);font-weight:600}
.roles-title .num{font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:var(--color-muted)}
.tools{display:flex;flex-direction:column;gap:var(--space-2xs)}
.search{display:flex;align-items:center;gap:var(--space-2xs);min-height:var(--tap);padding:0 var(--space-xs);border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper)}
.search:focus-within{border-color:var(--border-hover);box-shadow:0 0 0 3px var(--color-accent-soft)}
.search svg{color:var(--color-muted)}
.search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:var(--text-sm)}
.search input::placeholder{color:var(--color-muted)}
.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:2px;border-radius:var(--radius-input);background:var(--color-paper-2);border:var(--hair)}
.seg button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3xs);min-height:var(--tap);padding:0 var(--space-2xs);border:0;border-radius:calc(var(--radius-input) - 2px);background:transparent;font-size:var(--text-xs);font-weight:600;color:var(--color-ink-2);cursor:pointer}
.seg button .num{color:var(--color-muted);font-weight:500}
.seg button:disabled{color:var(--color-rule);cursor:default}.seg button:disabled .num{color:var(--color-rule)}
.seg button[aria-pressed=true]{background:var(--color-paper);color:var(--color-ink);box-shadow:var(--btn-shadow)}
.seg button[aria-pressed=true] .num{color:var(--color-ink-2)}
.fsum{display:flex;align-items:center;justify-content:space-between;font-size:var(--text-xs);color:var(--color-ink-2);font-weight:600}
.btn-sm{padding:0 var(--space-xs);font-size:var(--text-xs)}
.role-list{flex:1;overflow-y:auto;overscroll-behavior:contain;padding-bottom:var(--space-md)}
.full .role-list{overflow:visible}
.grp{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;margin:0;padding:var(--space-xs) var(--space-sm) var(--space-3xs) var(--space-lg);background:var(--color-paper);font-size:var(--text-xs);font-weight:600;color:var(--color-muted)}
.row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:var(--space-sm);width:100%;min-height:3.25rem;padding:var(--space-2xs) var(--space-sm) var(--space-2xs) var(--space-lg);border:0;background:transparent;text-align:left;cursor:pointer;position:relative}
.row[aria-current=true]{background:var(--color-paper-2)}
.row[aria-current=true]::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--color-accent);--slop-allow: side-tab}
.row-t{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:var(--text-sm);font-weight:500;line-height:1.35;color:var(--color-ink);overflow:hidden;overflow-wrap:anywhere}
.row.is-closed .row-t{color:var(--color-ink-2);text-decoration:line-through;text-decoration-color:var(--color-rule)}
.row[aria-current=true] .row-t{font-weight:600}
.row-m{display:flex;align-items:center;gap:var(--space-2xs);margin-top:2px;font-size:var(--text-xs);color:var(--color-muted);white-space:nowrap;overflow:hidden}
.row-m .badge{height:1.125rem;padding:0 6px}
.row-r{font-size:var(--text-xs);color:var(--color-muted);font-variant-numeric:tabular-nums;white-space:nowrap}

/* detail */
.detail{min-width:0}
.d-sticky{position:sticky;top:0;z-index:5;background:var(--color-paper);border-bottom:var(--hair);padding:var(--space-md) var(--space-lg) var(--space-sm)}
.full .d-sticky{position:static}
.d-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-sm)}
.d-title{overflow-wrap:anywhere;margin:0 0 var(--space-2xs);font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;line-height:1.3;letter-spacing:-.01em}
.d-sec{display:flex;gap:var(--space-3xs);margin-top:-6px;margin-right:-8px}
.d-actions{display:flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-sm)}
.d-actions .hint{font-size:var(--text-xs);color:var(--color-muted)}
.d-actions .hint b{color:var(--color-ink-2);font-weight:600}
.d-body{padding:var(--space-lg) var(--space-lg) var(--space-xl)}
.sec-h{margin:0 0 var(--space-xs);font-family:var(--font-display);font-size:var(--text-base);font-weight:600}
/* documents */
.docs{max-width:68ch}
.doc{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0;border-top:var(--hair)}
.doc:last-child{border-bottom:var(--hair)}
.doc-ic{display:grid;place-items:center;width:2.25rem;height:2.75rem;border-radius:6px;border:var(--hair);background:#fff}
.doc-ic.blank{background:var(--color-paper-2)}
.doc-ic svg{color:var(--color-muted)}
.doc-t{font-weight:600;display:flex;align-items:center;gap:var(--space-2xs)}
.doc-s{font-size:var(--text-xs);color:var(--color-muted);margin-top:2px}
.doc-a{display:flex;gap:var(--space-3xs)}
.docs-note{margin:var(--space-xs) 0 0;font-size:var(--text-xs);color:var(--color-muted)}
/* JD typography */
.prose{max-width:68ch;font-size:var(--text-base);line-height:1.65;color:var(--color-ink)}
.prose h3{margin:var(--space-lg) 0 var(--space-2xs);font-family:var(--font-display);font-size:var(--text-base);font-weight:600;line-height:1.35;scroll-margin-top:10rem}
.prose>h3:first-child{margin-top:0}
.prose p{margin:0 0 var(--space-xs)}
.prose ul{margin:0 0 var(--space-xs);padding:0;list-style:none}
.prose li{position:relative;padding-left:var(--space-md);margin:var(--space-2xs) 0}
.prose li::before{content:"";position:absolute;left:var(--space-2xs);top:.7em;width:5px;height:5px;border-radius:50%;background:var(--color-rule)}
.source{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--space-2xs);margin-top:var(--space-lg);padding-top:var(--space-sm);border-top:var(--hair);font-size:var(--text-xs);color:var(--color-muted);max-width:68ch}
.source a{--slop-allow: underlined-text;min-height:var(--tap);display:inline-flex;align-items:center;color:var(--color-ink-2);text-decoration:underline;text-decoration-color:var(--color-rule);text-underline-offset:3px}

/* menus/dialogs */
.pop{position:absolute;z-index:40;width:16rem;padding:var(--space-3xs);border-radius:var(--radius-input);background:var(--color-paper);border:var(--hair);box-shadow:var(--elev-2)}
.pop button{display:flex;align-items:center;gap:var(--space-xs);width:100%;min-height:var(--tap);padding:0 var(--space-xs);border:0;border-radius:8px;background:transparent;text-align:left;font-size:var(--text-sm);font-weight:500;cursor:pointer}
.pop button svg{color:var(--color-muted)}
.pop button:hover{background:var(--color-paper-2)}
.pop hr{border:0;border-top:var(--hair);margin:var(--space-3xs) 0}
.pop .danger,.pop .danger svg{color:var(--danger)}
.scrim{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:color-mix(in srgb,var(--color-ink) 36%,transparent)}
.dialog{position:relative;width:min(30rem,calc(100% - 2rem));border-radius:var(--radius-card);background:var(--color-paper);border:var(--hair);box-shadow:var(--elev-3);padding:var(--space-md)}
dialog.dialog{margin:auto;max-width:calc(100% - 2rem)}
dialog.dialog::backdrop{background:color-mix(in srgb,var(--color-ink) 36%,transparent)}
.dialog>.x{position:absolute;top:var(--space-xs);right:var(--space-xs)}
.dialog h2,.dlg-body h2{margin:0 var(--space-xl) var(--space-2xs) 0;font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;line-height:1.3}
.dialog .lede,.dlg-body .lede{margin:0 0 var(--space-md);color:var(--color-ink-2)}
.ledger-row{display:flex;justify-content:space-between;gap:var(--space-sm);padding:var(--space-2xs) 0;font-size:var(--text-sm);border-bottom:var(--hair)}
.ledger-row:last-child{border-bottom:0}
.steps{list-style:none;margin:0;padding:0;counter-reset:s}
.steps li{display:grid;grid-template-columns:1.5rem minmax(0,1fr) auto;gap:var(--space-xs);padding:var(--space-xs) 0;border-top:var(--hair)}
.steps li::before{counter-increment:s;content:counter(s);display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--color-paper-3);font-size:var(--text-xs);font-weight:700}
.steps b{display:block;font-weight:600}
.steps span.t{font-size:var(--text-xs);color:var(--color-muted)}
.prompt{display:flex;align-items:center;gap:var(--space-2xs);margin-top:var(--space-2xs);padding:var(--space-2xs) var(--space-xs);border-radius:8px;background:var(--color-paper-2);font-family:var(--font-mono);font-size:var(--text-xs)}
.dlg-actions{display:flex;justify-content:flex-end;gap:var(--space-2xs);margin-top:var(--space-md)}
.x{position:absolute;right:var(--space-xs);top:var(--space-xs)}
/* skeleton */
.sk{background:var(--color-paper-2);border-radius:6px}
/* empty */
.empty{max-width:40rem;padding:var(--space-xl) 0}
.empty h2{margin:0 0 var(--space-2xs);font-family:var(--font-display);font-size:var(--text-lg);font-weight:600}
.empty p{margin:0 0 var(--space-md);color:var(--color-ink-2)}
.sim{margin-top:var(--space-xl)}
.sim a{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:var(--space-sm);min-height:3.5rem;padding:var(--space-2xs) 0;border-top:var(--hair);text-decoration:none}
.sim a:last-child{border-bottom:var(--hair)}
.sim a:hover .sim-n{color:var(--color-ink)}
.sim .logo{width:2.25rem;height:2.25rem;border-radius:8px}
.sim .logo.mono{font-size:var(--text-sm)}
.sim-n{font-weight:600}

/* ---------- split view (LinkedIn/Indeed): list | JD pane, each scrolls on its own ---------- */
@media (min-width:901px){
  .split .scroller{overflow:hidden;display:flex;flex-direction:column}
  .split .page{flex:1;min-height:0;display:flex;flex-direction:column}
  .split .md{flex:1;min-height:0;grid-template-rows:minmax(0,1fr)}
  .split .roles{position:static;height:100%}
  .split .detail{height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
  .full .split .scroller,.full .split .detail,.full .split .roles{overflow:visible;height:auto}
  .full .split .md{grid-template-rows:auto}
}
.tabs{display:flex;gap:var(--space-md);margin:var(--space-sm) 0 calc(var(--space-sm) * -1)}
.tabs a{display:inline-flex;align-items:center;gap:var(--space-2xs);min-height:var(--tap);border-bottom:2px solid transparent;font-size:var(--text-sm);font-weight:600;color:var(--color-ink-2);text-decoration:none}
.tabs a:hover{color:var(--color-ink)}
.tabs a[aria-selected=true]{color:var(--color-ink);border-bottom-color:var(--color-ink)}
.docs-lede{margin:0 0 var(--space-sm);color:var(--color-ink-2)}
.b-admin{background:var(--color-paper-3);color:var(--color-ink-2);margin-left:auto}

/* ---------- mobile ---------- */
.pagebar,.m-sub,.m-bar{display:none}
@media (max-width:900px){
  .shell{grid-template-columns:1fr}
  .rail{position:fixed;inset:0 auto 0 0;z-index:30;width:min(18.5rem,86vw);transform:translateX(-105%)}
  .menu-open .rail{transform:none}
  .menu-open .backdrop{display:block;position:fixed;inset:0;z-index:25;background:color-mix(in srgb,var(--color-ink) 32%,transparent)}
  .topbar{padding:var(--space-2xs) var(--space-xs);gap:var(--space-2xs)}
  .menu-btn{display:inline-grid;place-items:center;width:var(--tap);height:var(--tap);border:0;border-radius:var(--radius-input);background:transparent}
  .page{padding:var(--space-xs) var(--space-sm) 0}
  .co{grid-template-columns:auto minmax(0,1fr);gap:var(--space-xs) var(--space-sm);padding-bottom:var(--space-sm)}
  .logo{width:3rem;height:3rem}
  .co .meta{font-size:var(--text-xs)}
  .co-actions{grid-column:1/-1}
  .co{align-items:start}
  .co h1{margin-top:2px}
  .co-actions .btn-primary{flex:1}
  .md{display:block;margin:0 calc(var(--space-sm) * -1)}
  .roles{position:static;height:auto;border:0}
  .roles-head{padding:var(--space-sm) var(--space-sm) var(--space-2xs)}
  .search input{font-size:var(--text-base)} /* ≥16px: no iOS zoom */
  .grp{padding:var(--space-sm) var(--space-sm) var(--space-3xs);top:0}
  .row{min-height:3.5rem;padding:var(--space-2xs) var(--space-sm)}
  .row+.row{border-top:1px solid color-mix(in srgb,var(--border-subtle) 60%,transparent)}
  .row[aria-current=true]{background:transparent}.row[aria-current=true]::before{display:none}
  .detail{display:none}
  .pagebar{display:flex;flex:0 0 auto;align-items:center;gap:var(--space-2xs);padding:var(--space-2xs) var(--space-xs) max(var(--space-2xs),env(safe-area-inset-bottom));border-top:var(--hair);background:var(--color-paper)}
  .pagebar .mid{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:var(--tap);border:0;background:none;font-size:var(--text-sm);font-weight:600;line-height:1.2}
  .pagebar .mid small{font-size:var(--text-xs);color:var(--color-muted);font-weight:500}
  /* role page */
  .m-detail .page-co,.m-detail .roles{display:none}
  .m-detail .page{padding:0}
  .m-detail .md{margin:0;border:0}
  .m-detail .detail{display:block}
  .m-detail .m-sub{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:6;min-height:3rem;padding:0 var(--space-sm) 0 var(--space-2xs);background:var(--color-paper);border-bottom:var(--hair)}
  .m-sub .back{margin:0}
  .m-sub .pos{font-size:var(--text-xs);color:var(--color-muted);font-weight:600}
  .m-detail .d-sticky{position:static;padding:var(--space-sm) var(--space-sm) 0;border-bottom:0;background:none;backdrop-filter:none}
  .m-detail .d-actions,.m-detail .d-sec{display:none}
  .m-detail .d-body{padding:var(--space-md) var(--space-sm) var(--space-lg)}
  .m-detail .tabs{margin-bottom:0;border-bottom:var(--hair);margin-left:calc(var(--space-sm) * -1);margin-right:calc(var(--space-sm) * -1);padding:0 var(--space-sm)}
  .m-detail .pagebar{display:none}
  .m-detail .m-bar{display:flex;align-items:center;gap:var(--space-2xs);flex:0 0 auto;padding:var(--space-2xs) var(--space-xs) max(var(--space-2xs),env(safe-area-inset-bottom));border-top:var(--hair);background:var(--color-paper)}
  .m-bar .btn-primary{flex:1}
  .doc{grid-template-columns:auto minmax(0,1fr)}
  .doc-a{grid-column:1/-1}
  .doc-a .btn{flex:1}
  .sheet-wrap{position:fixed;inset:0;z-index:50;display:flex;align-items:flex-end;background:color-mix(in srgb,var(--color-ink) 36%,transparent)}
  .sheet{width:100%;max-height:90%;overflow:auto;overscroll-behavior:contain;border-radius:var(--radius-card) var(--radius-card) 0 0;background:var(--color-paper);padding:var(--space-2xs) var(--space-sm) max(var(--space-sm),env(safe-area-inset-bottom))}
  .grab{width:2.25rem;height:4px;border-radius:2px;background:var(--color-rule);margin:0 auto var(--space-sm)}
  .sheet .pop{position:static;width:auto;border:0;box-shadow:none;padding:0}
  .sheet .dialog{width:auto;border:0;box-shadow:none;padding:0}
  .empty{padding:var(--space-lg) 0}
}
.full .shell{height:auto;overflow:visible}
.full .scroller{overflow:visible}
.full .main{min-height:100dvh}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
.skip:focus{position:fixed;left:8px;top:8px;z-index:99;width:auto;height:auto;clip:auto;padding:8px 12px;background:var(--color-paper);border-radius:8px;box-shadow:var(--shadow-sm)}

/* ---------- v2.1 additions ---------- */
.badge.b-closed{background:var(--color-paper-3);color:var(--color-ink-2)}
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm) var(--space-lg);max-width:68ch;margin:0 0 var(--space-lg);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-input);background:var(--color-paper-2)}
.facts div{min-width:0}
.facts dt{font-size:var(--text-xs);font-weight:600;color:var(--color-muted);margin-bottom:2px}
.facts dd{margin:0;font-size:var(--text-sm);color:var(--color-ink);overflow-wrap:anywhere}
.closed{max-width:68ch;margin-bottom:var(--space-lg);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-input);background:var(--color-paper-2)}
.closed h3{margin:0 0 var(--space-3xs);font-family:var(--font-display);font-size:var(--text-base);font-weight:600}
.closed p{margin:0;color:var(--color-ink-2);font-size:var(--text-sm)}
.sim-roles{max-width:68ch;margin-top:0}
.sim-roles a{grid-template-columns:minmax(0,1fr) auto auto;min-height:3rem}
.trunc{min-width:0;max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.board{padding-bottom:var(--space-xl)}
.board-h{padding:var(--space-md) 0 var(--space-md)}
.board-h h1{margin:0 0 var(--space-3xs);font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;letter-spacing:-.02em}
.co-list{max-width:56rem;border-top:var(--hair)}
.co-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-sm);min-height:4rem;padding:var(--space-2xs) var(--space-xs);border-bottom:var(--hair);text-decoration:none}
.co-row .logo{width:2.5rem;height:2.5rem;border-radius:8px}
.co-row .logo.mono{font-size:var(--text-sm)}
.co-row-main{min-width:0}
.co-row-n{display:block;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.co-row-r{font-size:var(--text-sm);color:var(--color-ink-2);white-space:nowrap}
.row-m svg{color:var(--color-muted)}
@media (max-width:900px){
  .topbar{display:flex}
  .rail{width:min(18.5rem,86vw)}
  .m-sub{gap:var(--space-2xs)}
  .m-sub .pos{margin-left:auto}
  .m-sub .btn-icon{margin-right:calc(var(--space-2xs) * -1)}
  .facts{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:var(--space-sm);gap:var(--space-sm)}
  .m-bar .btn-primary{min-width:0}
  .board-h{padding:var(--space-xs) 0 var(--space-sm)}
  .co-list{margin:0 calc(var(--space-sm) * -1)}
  .co-row{padding:var(--space-2xs) var(--space-sm)}
  .closed{padding:var(--space-sm)}
}

/* =====================================================================
   Harmonize additions: components shared by every panel page
   ===================================================================== */
/* page header */
.ph{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-md);padding:var(--space-md) 0 var(--space-sm)}
.ph h1{margin:0 0 var(--space-3xs);font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;letter-spacing:-.02em;line-height:1.2}
.ph p{margin:0;max-width:var(--measure);color:var(--color-ink-2)}
.ph-actions{display:flex;gap:var(--space-2xs);flex:0 0 auto}
.content{padding:0 var(--space-lg) var(--space-xl);max-width:72rem}
/* toolbar: compact dropdown buttons + search + sort */
.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2xs);padding:var(--space-2xs) 0 var(--space-sm);border-bottom:var(--hair)}
.toolbar .search{flex:1 1 16rem;max-width:24rem}
.dd{display:inline-flex;align-items:center;gap:var(--space-2xs);min-height:var(--tap);padding:0 var(--space-xs) 0 var(--space-sm);border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper);font-size:var(--text-sm);font-weight:500;color:var(--color-ink);cursor:pointer;white-space:nowrap}
.dd .k{color:var(--color-muted);font-weight:500}
.dd svg{color:var(--color-muted)}
.dd[aria-expanded=true]{border-color:var(--border-hover);box-shadow:0 0 0 3px var(--color-accent-soft)}
.toolbar .spacer{flex:1}
.tb-scroll{display:contents}
/* grouped list (board companies, applications) */
.group{border-bottom:var(--hair)}
.group-h{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0 var(--space-2xs)}
.group-h .logo{width:2.25rem;height:2.25rem;border-radius:8px}
.group-h .logo.mono{font-size:var(--text-sm)}
.group-n{display:flex;align-items:baseline;gap:var(--space-2xs);min-width:0;font-weight:600;font-size:var(--text-base);color:var(--color-ink);text-decoration:none}
.group-n span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.group-m{font-size:var(--text-xs);color:var(--color-muted);font-weight:500}
.lrow{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-sm);min-height:3.5rem;padding:var(--space-2xs) 0 var(--space-2xs) calc(2.25rem + var(--space-sm));border-top:1px solid color-mix(in srgb,var(--border-subtle) 60%,transparent)}
.lrow-t{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:var(--text-sm);font-weight:500;color:var(--color-ink);text-decoration:none;overflow-wrap:anywhere}
.lrow-a{display:flex;align-items:center;gap:var(--space-3xs)}
.btn-sm{min-height:var(--tap)}
.group-more{display:inline-flex;align-items:center;min-height:var(--tap);padding-left:calc(2.25rem + var(--space-sm));font-size:var(--text-sm);font-weight:600;color:var(--color-ink-2);text-decoration:none}
/* toggle chips (multi-select) — the one place outlined pills remain: they are inputs, not decoration */
.chips{display:flex;flex-wrap:wrap;gap:var(--space-2xs)}
.tchip{display:inline-flex;align-items:center;gap:var(--space-2xs);min-height:var(--tap);padding:0 var(--space-sm);border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper);font-size:var(--text-sm);font-weight:500;color:var(--color-ink);cursor:pointer}
.tchip .num{font-size:var(--text-xs);color:var(--color-muted)}
.tchip[aria-pressed=true]{border-color:var(--color-ink);background:var(--color-paper-2);font-weight:600}
.tchip[aria-pressed=true]::before{content:"";width:16px;height:16px;border-radius:4px;background:var(--color-ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/12px no-repeat}
.tchip:disabled{color:var(--color-muted);border-color:var(--border-subtle);background:var(--color-paper-2);cursor:not-allowed}
/* tags (keywords) */
.tags{display:flex;flex-wrap:wrap;gap:var(--space-2xs)}
.tag{display:inline-flex;align-items:center;gap:var(--space-3xs);height:1.75rem;padding:0 var(--space-2xs);border-radius:6px;background:var(--color-paper-2);font-size:var(--text-xs);font-weight:600;color:var(--color-ink-2)}
.tag button{display:inline-grid;place-items:center;width:var(--tap);height:var(--tap);margin:-8px -14px -8px -8px;border:0;background:none;color:var(--color-muted);cursor:pointer}
/* sections + form fields */
.section{padding:var(--space-lg) 0;border-bottom:var(--hair);max-width:48rem}
.section:last-child{border-bottom:0}
.section h2{margin:0 0 var(--space-3xs);font-family:var(--font-display);font-size:var(--text-base);font-weight:600}
.section .lede{margin:0 0 var(--space-sm);color:var(--color-ink-2);font-size:var(--text-sm)}
.section .status{margin:var(--space-xs) 0 0;font-size:var(--text-xs);color:var(--color-muted)}
.fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,14rem) auto;gap:var(--space-sm);align-items:end}
.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field label{font-size:var(--text-xs);font-weight:600;color:var(--color-ink-2)}
.input,.select{min-height:var(--tap);padding:0 var(--space-xs);border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper);font:inherit;font-size:var(--text-sm);color:var(--color-ink)}
.input::placeholder{color:var(--color-muted)}
.select{display:flex;align-items:center;justify-content:space-between}
.select svg{color:var(--color-muted)}
.hint-line{font-size:var(--text-xs);color:var(--color-muted)}
/* notice (inline, not a banner card) */
.notice{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin:var(--space-sm) 0;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-input);background:var(--color-paper-2);font-size:var(--text-sm);color:var(--color-ink-2)}
.notice b{color:var(--color-ink)}
/* empty / error states */
.state{max-width:34rem;padding:var(--space-2xl) 0;margin:0 auto;text-align:center}
.state-ic{display:inline-grid;place-items:center;width:3rem;height:3rem;margin-bottom:var(--space-sm);border-radius:50%;background:var(--color-paper-2);color:var(--color-ink-2)}
.state h2{margin:0 0 var(--space-2xs);font-family:var(--font-display);font-size:var(--text-lg);font-weight:600}
.state p{margin:0 0 var(--space-md);color:var(--color-ink-2)}
.state .row-btns{display:flex;justify-content:center;gap:var(--space-2xs);flex-wrap:wrap}
/* master/editor split (resumes, notes) */
.editor{display:grid;grid-template-columns:16rem minmax(0,1fr);border-top:var(--hair);margin:0 calc(var(--space-lg) * -1)}
.editor-list{border-right:var(--hair);padding:var(--space-xs) 0}
.editor-list .lh{display:flex;justify-content:space-between;align-items:center;padding:0 var(--space-sm) var(--space-3xs) var(--space-lg);font-size:var(--text-xs);font-weight:600;color:var(--color-muted)}
.editor-list .row{padding-left:var(--space-lg)}
.mono-s{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-muted)}
.editor-main{padding:var(--space-md) var(--space-lg) var(--space-lg);min-width:0}
.editor-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-sm);margin-bottom:var(--space-sm)}
.panes{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-sm)}
.pane-h{display:flex;justify-content:space-between;align-items:center;min-height:var(--tap);font-size:var(--text-xs);font-weight:600;color:var(--color-muted)}
.code{height:22rem;padding:var(--space-sm);border:var(--hair);border-radius:var(--radius-input);background:#fff;overflow:hidden}
.code i{display:block;height:8px;margin:0 0 10px;border-radius:4px;background:var(--color-paper-3)}
.pdf{display:grid;place-items:center;height:22rem;border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper-2);text-align:center;color:var(--color-ink-2);font-size:var(--text-sm)}
.editor-foot{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm);margin-top:var(--space-sm)}
/* sub-navigation (page-level tabs) */
.subnav{display:flex;gap:var(--space-md);border-bottom:var(--hair);margin-bottom:0;overflow-x:auto;scrollbar-width:none}
.subnav a{display:inline-flex;align-items:center;gap:var(--space-2xs);min-height:var(--tap);border-bottom:2px solid transparent;font-size:var(--text-sm);font-weight:600;color:var(--color-ink-2);text-decoration:none;white-space:nowrap}
.subnav a[aria-current=page]{color:var(--color-ink);border-bottom-color:var(--color-ink)}
.subnav .num{font-weight:500;color:var(--color-muted)}
/* plans (pricing page + upgrade dialog) */
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-sm)}
.plan{display:flex;flex-direction:column;padding:var(--space-md);border:var(--hair);border-radius:var(--radius-card);background:var(--color-paper)}
.plan.is-featured{border-color:var(--color-ink)}
.pub .plan h2,.plan h2{margin:0 0 var(--space-3xs);font-family:var(--font-display);font-size:var(--text-base);font-weight:600}
.plan .price{margin:0 0 var(--space-sm);font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;letter-spacing:-.02em}
.plan .price small{font-family:var(--font-body);font-size:var(--text-sm);font-weight:500;color:var(--color-muted);letter-spacing:0}
.plan ul{flex:1;margin:0 0 var(--space-md);padding:0;list-style:none;font-size:var(--text-sm);color:var(--color-ink-2)}
.plan li{position:relative;padding-left:var(--space-md);margin:var(--space-2xs) 0}
.plan li::before{content:"";position:absolute;left:2px;top:.35em;width:10px;height:6px;border-left:2px solid var(--success);border-bottom:2px solid var(--success);transform:rotate(-45deg)}
.opts{display:flex;flex-direction:column;border:var(--hair);border-radius:var(--radius-input);overflow:hidden}
.opt{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-sm);min-height:3.5rem;padding:0 var(--space-sm);cursor:pointer}
.opt:has(>input:checked){background:var(--color-paper-2);box-shadow:inset 2px 0 0 var(--color-accent)}
.radio{flex:0 0 auto;width:18px;height:18px;border-radius:50%;border:2px solid var(--color-rule)}
.opt:has(>input:checked)>.radio{border:5px solid var(--color-ink)}
.opt b{display:block;font-weight:600}
.opt span.s{font-size:var(--text-xs);color:var(--color-muted)}
.opt .p{font-weight:600}
/* auth (login, onboarding) — centered column; login gets a bordered surface */
.auth-wrap{min-height:100dvh;display:grid;place-items:center;padding:var(--space-lg) var(--space-sm);background:var(--color-paper)}
.auth{width:min(26rem,100%)}
.auth .brand{margin:0 0 var(--space-lg);padding:0;color:var(--color-ink)}
.auth h1,.auth h2{margin:0 0 var(--space-2xs);font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;letter-spacing:-.02em;color:var(--color-ink)}
.auth p.lede{margin:0 0 var(--space-md);font-size:var(--text-sm);line-height:1.5;color:var(--color-ink-2)}
.auth form{display:flex;flex-direction:column;gap:var(--space-sm);margin:0}
.auth form .btn,.auth>.btn,.auth .login-actions .btn{width:100%}
.or{display:flex;align-items:center;gap:var(--space-sm);margin:var(--space-md) 0;font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted)}
.or::before,.or::after{content:"";flex:1;border-top:var(--hair)}
.auth-wide{width:min(40rem,100%)}
/* light login even when time-theme left data-theme=dark */
html:has(.layout>.login-panel:not([hidden])),
body:has(.layout>.login-panel:not([hidden])){
  --color-paper:#fcfaf7;--color-paper-2:#f2f7fa;--color-ink:#0e3a69;--color-ink-2:#345c7c;
  --color-muted:#5d7488;--color-rule:#a9c1d1;--color-accent:#ff6b35;--color-accent-hover:#ff7f52;
  --color-accent-deep:#d94f1f;--color-accent-ink:#082743;--color-focus:#ff6b35;--color-danger:#b42318;
  --hair:1px solid #a9c1d1;
  --elev-2:0 1px 2px rgba(14,58,105,.08),0 12px 32px -8px rgba(14,58,105,.14);
  --shadow-button:0 3px 0 #d94f1f,0 8px 16px -8px rgba(255,107,53,.4);
  --shadow-button-hover:0 4px 0 #d94f1f,0 12px 22px -10px rgba(255,107,53,.48);
  --shadow-button-pressed:0 1px 0 #d94f1f,0 3px 8px -5px rgba(255,107,53,.35);
  background:var(--color-paper);color:var(--color-ink);color-scheme:light!important
}
.layout:has(>.login-panel:not([hidden])){
  min-height:100dvh;width:100%;max-width:none;display:grid;place-items:center;margin:0;
  padding:clamp(1.5rem,5vh,3rem) var(--space-sm);
  background:
    radial-gradient(ellipse 85% 50% at 50% -6%,var(--color-paper-2) 0%,transparent 55%),
    radial-gradient(ellipse 45% 30% at 100% 100%,rgba(255,107,53,.08) 0%,transparent 50%),
    var(--color-paper);
  color:var(--color-ink);color-scheme:light
}
.layout:has(>.login-panel:not([hidden]))::before{display:none!important}
.layout:has(>.login-panel:not([hidden])) :is(#mainContent,.shell.app-shell,.admin-content){display:none!important}
.login-panel,.login-panel.auth{
  width:min(26rem,100%);max-width:26rem;margin:0;position:relative;overflow:hidden;
  padding:var(--space-lg) var(--space-md);border:var(--hair)!important;border-radius:var(--radius-card)!important;
  background:var(--color-paper)!important;box-shadow:var(--elev-2)!important
}
.login-panel::before{
  content:"";display:block;position:absolute;top:0;left:0;right:0;height:3px;background:var(--color-accent);border:0!important
}
.login-panel .login-brand{margin:0 0 var(--space-md);text-align:center}
.login-panel .brand-lockup{
  display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);
  width:100%;text-decoration:none;color:var(--color-ink)
}
.login-panel .brand-mark{display:grid;place-items:center}
.login-panel .brand-mark img{display:block;width:3.75rem;height:auto}
.login-panel .brand-text{display:flex;flex-direction:column;align-items:center;gap:.15rem}
.login-panel .brand-name{
  font-family:var(--font-display);font-weight:700;letter-spacing:.07em;
  font-size:1.35rem;line-height:1.15;color:var(--color-ink)
}
.login-panel .brand-tagline{
  display:block;font-family:var(--font-body);font-size:var(--text-xs);font-weight:500;
  letter-spacing:0;text-transform:none;color:var(--color-muted)
}
.login-panel h2{
  margin:0 0 var(--space-2xs);text-align:center;font-family:var(--font-display);
  font-size:var(--text-xl);font-weight:700;letter-spacing:-.025em;color:var(--color-ink)
}
.login-panel .lede,.login-panel .hint{
  margin:0 0 var(--space-md);text-align:center;font-size:var(--text-sm);line-height:1.5;color:var(--color-ink-2)
}
.login-panel .seg{margin:0 0 var(--space-md)}
.login-panel .seg[hidden]{display:none}
.login-panel form{gap:var(--space-sm)}
.login-panel .input{background:var(--color-paper);border-color:var(--color-rule)}
.login-panel .input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px var(--color-accent-soft,rgba(255,107,53,.18))}
.login-panel form .btn-primary{
  margin-top:var(--space-2xs);border:0;font-weight:700;box-shadow:var(--shadow-button);
  transition:background 160ms cubic-bezier(.16,1,.3,1),transform 140ms cubic-bezier(.2,0,0,1),box-shadow 140ms cubic-bezier(.2,0,0,1)
}
.login-panel form .btn-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-button-hover)}
.login-panel form .btn-primary:active{transform:translateY(2px);box-shadow:var(--shadow-button-pressed);transition-duration:70ms}
.login-panel .login-actions{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-sm);margin:0}
.login-panel .login-actions .btn{background:var(--color-paper)}
.login-panel .login-actions .btn-quiet{align-self:center;background:transparent;box-shadow:none}
.login-panel .login-error:empty{display:none}
.login-panel .login-error:not(:empty){margin:0 0 var(--space-sm);color:var(--color-danger);font-size:var(--text-sm);text-align:center}
.login-panel .hint-line{margin:var(--space-md) 0 0;text-align:center}
@media (max-width:900px){
  .layout:has(>.login-panel:not([hidden])){padding:var(--space-md) var(--space-sm)}
  .login-panel,.login-panel.auth{width:100%;padding:var(--space-md) var(--space-sm)}
  .login-panel .brand-mark img{width:3.25rem}
}
/* public (marketing) header for /pricing */
.pubnav{display:flex;align-items:center;gap:var(--space-md);min-height:4rem;padding:0 var(--space-lg);border-bottom:var(--hair)}
.pubnav nav{display:flex;gap:var(--space-sm);flex:1}
.pubnav nav a{display:inline-flex;align-items:center;min-height:var(--tap);font-size:var(--text-sm);font-weight:500;color:var(--color-ink-2);text-decoration:none}
.pubnav nav a[aria-current=page]{color:var(--color-ink);font-weight:600}
.pub{max-width:64rem;margin:0 auto;padding:var(--space-xl) var(--space-lg)}
.pub h1{margin:0 0 var(--space-xs);font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;letter-spacing:-.02em}
.pub .lede{max-width:var(--measure);margin:0 0 var(--space-xl);font-size:var(--text-base);line-height:1.65;color:var(--color-ink-2)}
.pub h2{margin:var(--space-xl) 0 var(--space-xs);font-family:var(--font-display);font-size:var(--text-lg);font-weight:600}
.pub p.body{max-width:var(--measure);margin:0 0 var(--space-sm);font-size:var(--text-base);line-height:1.65}
@media (max-width:900px){
  .content{padding:0 var(--space-sm) var(--space-lg)}
  .ph{flex-direction:column;align-items:stretch;padding:var(--space-sm) 0 var(--space-xs)}
  .ph-actions .btn{flex:1}
  .toolbar{margin:0 calc(var(--space-sm) * -1);padding:var(--space-2xs) var(--space-sm) var(--space-sm)}
  .toolbar .search{flex:0 0 100%;max-width:none}
  .tb-scroll{display:flex;gap:var(--space-2xs);flex:0 0 calc(100% + 2 * var(--space-sm));margin:0 calc(var(--space-sm) * -1);padding:0 var(--space-sm);overflow-x:auto;scrollbar-width:none}
  .tb-scroll .spacer{display:none}
  .ph:has(.ph-actions .btn-quiet:only-child){flex-direction:row;align-items:flex-start}
  .ph-actions .btn-quiet .lbl{display:none}
  .ph-actions .btn-quiet:only-child{flex:0 0 auto;width:var(--tap);padding:0;justify-content:center}
  .lrow{padding-left:0;grid-template-columns:minmax(0,1fr) auto}
  .lrow .hide-m{display:none}
  .group-more{padding-left:0}
  .fields{grid-template-columns:1fr}
  .editor{grid-template-columns:1fr;margin:0 calc(var(--space-sm) * -1)}
  .editor-list{border-right:0;border-bottom:var(--hair)}
  .editor-list .row{padding-left:var(--space-sm)}
  .editor-list .lh{padding-left:var(--space-sm)}
  .editor-main{padding:var(--space-sm)}
  .editor-fields,.panes{grid-template-columns:1fr}
  .code,.pdf{height:12rem}
  .plans{grid-template-columns:1fr}
  .pubnav{padding:0 var(--space-sm)}
  .pubnav nav{display:none}
  .pub{padding:var(--space-lg) var(--space-sm)}
  .subnav{margin:0 calc(var(--space-sm) * -1);padding:0 var(--space-sm)}
}
/* row target: the whole row opens the role; actions sit above the stretched link */
.lrow{position:relative}
.lrow-t::after{content:"";position:absolute;inset:0}
.lrow-a{position:relative;z-index:1}
.group-n{min-height:var(--tap);align-items:center}
.pubnav nav a{padding:0 var(--space-2xs)}
.subnav a{padding:0 var(--space-3xs)}
.cr-t{display:flex;flex-direction:column;line-height:1.25}
.cr-t small{font-size:var(--text-xs);color:var(--color-muted);font-weight:500}
.editor-foot .hint-line{white-space:nowrap}
.plan .pl-list li{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm);min-height:3rem;margin:0;padding:0;border-top:var(--hair)}
.plan .pl-list li::before{display:none}
.plan .pl-list b{display:block;color:var(--color-ink);text-transform:capitalize}
.plan .pl-list .num{font-weight:600;color:var(--color-ink)}
@media (max-width:900px){.lrow.stack{grid-template-columns:1fr;padding-bottom:var(--space-xs)}.lrow.stack .lrow-a{justify-content:flex-start}.lrow.stack .lrow-a .btn:first-child{flex:1}}
.opt+.opt{border-top:var(--hair)}
.wallet{display:flex;justify-content:space-between;gap:var(--space-sm);margin:0 0 var(--space-sm);font-size:var(--text-sm);color:var(--color-ink-2)}
.wallet b{color:var(--color-ink)}
.sheet-list{display:flex;flex-direction:column}
.sheet-list button{display:flex;align-items:center;gap:var(--space-xs);min-height:var(--tap);padding:0 var(--space-xs);border:0;background:none;font:inherit;font-size:var(--text-base);color:var(--color-ink);text-align:left}
.sheet-list button[aria-selected=true]{font-weight:600}
.group-n .group-m{flex:0 0 auto;overflow:visible}

/* ---- Pin (per-position `pinned`): always-visible toggle on every role row ---- */
.pin-btn{position:relative;display:inline-grid;place-items:center;flex:0 0 auto;width:var(--tap);height:var(--tap);padding:0;border:0;border-radius:var(--radius-input);background:transparent;color:var(--color-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;user-select:none}
.pin-btn[aria-pressed=true]{color:var(--color-accent-deep)}
.btn-pin[aria-pressed=true]{color:#a83c14}
.btn-pin[aria-pressed=true]{border-color:color-mix(in srgb,var(--color-accent-deep) 45%,var(--border-subtle));background:color-mix(in srgb,var(--color-accent) 8%,var(--color-paper))}
.pin-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px}
.pin-btn:active{transform:translateY(.5px)}
[data-tip].pin-btn::after,[data-tip].btn-pin::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);padding:4px 8px;border-radius:6px;background:var(--color-ink);color:#fff;font-size:var(--text-xs);font-weight:500;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s;z-index:5;padding:6px 10px}
.btn-pin{position:relative}
@media (hover:hover) and (pointer:fine){.pin-btn:hover{background:var(--color-paper-2);color:var(--color-ink)}.pin-btn[aria-pressed=true]:hover{color:var(--color-accent-deep)}[data-tip].pin-btn:hover::after,[data-tip].btn-pin:hover::after{opacity:1;transition-delay:.4s}}
[data-tip].pin-btn:focus-visible::after,[data-tip].btn-pin:focus-visible::after{opacity:1}
@media (prefers-reduced-motion:reduce){[data-tip].pin-btn::after,[data-tip].btn-pin::after{transition:none}}
/* Pinned group: sits above all other groups when any role is pinned */
.sec-h{display:flex;align-items:center;gap:6px;margin:0;padding:var(--space-sm) 0 var(--space-3xs);font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;color:var(--color-muted)}
.sec-h svg{color:var(--color-accent-deep)}
.sec-h .num{margin-left:2px}
.group.pinned{border-bottom:var(--hair)}
.lrow.flush{padding-left:0}
.co-m{font-weight:600;color:var(--color-ink-2)}

/* =====================================================================
   Polished CURRENT board + Applications (restyle only: same layout, same visible actions)
   ===================================================================== */
.content-p{max-width:60rem}
.ptool{display:flex;flex-direction:column;gap:var(--space-2xs);margin:0 0 var(--space-md)}
.ptool-r{display:flex;gap:var(--space-2xs);flex-wrap:wrap}
.ctl{display:inline-flex;align-items:center;gap:var(--space-2xs);min-height:var(--tap);padding:0 var(--space-xs);border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper);font:inherit;font-size:var(--text-sm);font-weight:500;color:var(--color-ink);cursor:pointer}
.ctl svg{color:var(--color-muted);flex:0 0 auto}
.ctl span{flex:1;text-align:left}
.ctl[aria-expanded=true]{border-color:var(--border-hover);box-shadow:0 0 0 3px var(--color-accent-soft)}
.ctl-s{flex:1 1 18rem}
.cc-list{display:flex;flex-direction:column;gap:var(--space-sm)}
.cc{border:var(--hair);border-radius:var(--radius-card);background:var(--color-paper)}
.cc-h{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm) var(--space-sm) var(--space-sm) var(--space-md)}
.cc-id{display:flex;flex-direction:column;gap:var(--space-2xs);min-width:0}
.cc-n{font-family:var(--font-display);font-size:var(--text-base);font-weight:600;color:var(--color-ink);text-decoration:none;overflow-wrap:anywhere}
.cc-loc{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2xs);font-size:var(--text-xs)}
.chip-q{display:inline-flex;align-items:center;height:1.5rem;padding:0 var(--space-2xs);border-radius:6px;background:var(--color-paper-2);font-size:var(--text-xs);font-weight:500;color:var(--color-ink-2)}
.muted{color:var(--color-muted);font-weight:500}
.cc-careers{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;min-height:2rem;font-size:var(--text-sm);font-weight:600;color:var(--color-ink-2);text-decoration:none}
.cc-careers svg{color:var(--color-muted)}
.cc-stats{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2xs)}
.b-neutral{background:var(--color-paper-2);color:var(--color-ink-2)}
.b-await{background:color-mix(in srgb,var(--color-status-violet) 12%,transparent);color:var(--color-status-violet)}
.link-q{display:inline-flex;align-items:center;min-height:2rem;padding:0 var(--space-3xs);border:0;background:none;font:inherit;font-size:var(--text-xs);font-weight:600;color:var(--color-ink-2);cursor:pointer}
.cc-a{display:flex;gap:var(--space-3xs);flex:0 0 auto}
.btn-quiet-b{border:var(--hair);background:var(--color-paper);box-shadow:none}
.cc-roles{border-top:var(--hair)}
.pc{padding:var(--space-sm) var(--space-sm) var(--space-sm) var(--space-md);border-top:var(--hair)}
.cc-roles .pc:first-child{border-top:0}
.pc.is-pinned{box-shadow:inset 2px 0 0 var(--color-accent-deep)}
.pc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-sm)}
.pc-head{display:flex;flex-direction:column;gap:6px;min-width:0}
.pc-t{font-size:var(--text-sm);font-weight:600;line-height:1.35;color:var(--color-ink);text-decoration:none;overflow-wrap:anywhere}
.pc.is-seen .pc-t{font-weight:500;color:var(--color-ink-2)}
.pc .row-m{margin:0;white-space:normal;flex-wrap:wrap}
.pc-badges{display:flex;flex-wrap:wrap;gap:6px}
.pc-badges a.badge{text-decoration:none}
.pc-side{display:flex;align-items:center;gap:var(--space-3xs);flex:0 0 auto}
.pc-act{display:flex;align-items:center;gap:var(--space-2xs);margin-top:var(--space-xs)}
.btn-apply{background:var(--success-soft);border-color:color-mix(in srgb,var(--success) 25%,transparent);color:var(--success);box-shadow:none}
.btn-nfm{background:color-mix(in srgb,var(--color-status-ochre) 12%,var(--color-paper));border-color:color-mix(in srgb,var(--color-status-ochre) 30%,transparent);color:oklch(42% .11 70);box-shadow:none;gap:4px}
.btn-reject{background:color-mix(in srgb,var(--color-status-crimson) 8%,var(--color-paper));border-color:color-mix(in srgb,var(--color-status-crimson) 25%,transparent);color:var(--color-status-crimson);box-shadow:none}
.pc-status{display:flex;align-items:center;gap:6px;margin-top:var(--space-xs);font-size:var(--text-sm);color:var(--success)}
.pc-status .num{color:var(--color-muted);font-size:var(--text-xs)}
.cc-more{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;min-height:var(--tap);border:0;border-top:var(--hair);border-radius:0 0 var(--radius-card) var(--radius-card);background:none;font:inherit;font-size:var(--text-sm);font-weight:600;color:var(--color-ink-2);cursor:pointer}
.app-co{margin-top:var(--space-md);border:var(--hair);border-radius:var(--radius-card);overflow:hidden}
.app-co-h{display:flex;align-items:baseline;gap:var(--space-2xs);margin:0;padding:var(--space-sm) var(--space-md);font-family:var(--font-display);font-size:var(--text-base);font-weight:600}
.app-co-h .muted{font-family:var(--font-body);font-size:var(--text-xs)}
.app-co .pc:first-of-type{border-top:var(--hair)}
.ats-chip{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:var(--tap);padding:0 var(--space-xs);border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper);font:inherit;font-size:var(--text-sm);font-weight:600;color:var(--color-ink-2);cursor:pointer}
.ats-chip .k{font-size:var(--text-xs);color:var(--color-muted)}
.ats-chip.has b{display:inline-grid;place-items:center;min-width:2rem;height:1.5rem;padding:0 6px;border-radius:6px}
.ats-chip.hi b{background:color-mix(in srgb,var(--color-status-green) 14%,transparent);color:var(--color-status-green)}
.ats-chip.mid b{background:color-mix(in srgb,var(--color-status-ochre) 16%,transparent);color:oklch(42% .11 70)}
.ats-chip.lo b{background:color-mix(in srgb,var(--color-status-crimson) 12%,transparent);color:var(--color-status-crimson)}
.pc-side .pin-btn{border:var(--hair);background:var(--color-paper)}
.tip{position:relative}
.tip[data-tip]::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);padding:4px 8px;border-radius:6px;background:var(--color-ink);color:#fff;font-size:var(--text-xs);font-weight:500;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s;z-index:5;padding:6px 10px}
@media (hover:hover) and (pointer:fine){.tip[data-tip]:hover::after{opacity:1;transition-delay:.4s}.btn-quiet-b:hover,.ats-chip:hover,.ctl:hover{background:var(--color-paper-2)}.link-q:hover{color:var(--color-ink)}}
.tip[data-tip]:focus-visible::after{opacity:1}
@media (max-width:900px){
  .ptool-r{flex-direction:column}
  .ptool-r>*{width:100%}
  .ctl-s{flex:0 0 auto}
  .cc-h{padding:var(--space-sm)}
  .pc{padding:var(--space-sm)}
  .pc-top{flex-direction:column;gap:var(--space-xs)}
  .pc-side{align-self:flex-end}
  .pc-act .btn-apply,.pc-act .btn-nfm,.pc-act .btn-reject{flex:1}
  .pc-act .position-more-btn{flex:0 0 var(--tap);order:2}
  .app-co-h{padding:var(--space-sm)}
  .tip[data-tip]::after{display:none}
}
/* 44px hit areas without changing the visual rhythm (padding + equal negative margin) */
.pc-t{padding:13px 0;margin:-13px 0}
.cc-n{padding:10px 0;margin:-10px 0}
.cc-careers,.link-q{min-height:var(--tap);margin:-6px 0}
.app-co-h span{padding:10px 0;margin:-10px 0}


/* PR2 extras (company pin row + follow) — not in mockup core */
.rrow{display:flex;align-items:stretch;gap:0;list-style:none;margin:0;padding:0}
.rrow>.row{flex:1;min-width:0}
.rrow>.pin-btn,.rrow>.company-position-reapply{align-self:center;flex-shrink:0;margin-right:var(--space-2xs)}
.btn-primary.btn-follow[aria-pressed=true]{background:color-mix(in srgb,var(--color-accent) 16%,var(--color-paper));border-color:color-mix(in srgb,var(--color-accent-deep) 55%,var(--border-subtle));color:var(--color-accent-deep);box-shadow:none}
button.nav-item,.credits-add,.chip-credits,.menu-btn,.account{appearance:none;-webkit-appearance:none;border:0;background:none;font:inherit;color:inherit;cursor:pointer}
.nav-item svg.nav-ic,.shell .nav-item .nav-ic{width:20px;height:20px}

/* ---------- PR1 production bridge (legacy board scroll + shell chrome) ---------- */
.shell.app-shell{display:grid;grid-template-columns:var(--rail-w) minmax(0,1fr);min-height:100dvh;height:100dvh;max-height:100dvh;background:var(--color-paper);overflow:hidden}
.shell.app-shell.hidden,.shell.app-shell[hidden]{display:none!important}
@media (min-width:901px) and (max-width:1200px){.shell.app-shell{grid-template-columns:var(--rail-w-collapsed) minmax(0,1fr)}}
@media (max-width:900px){
  /* Fixed rail must not keep a grid track — that left a dead band under the role page. */
  .shell.app-shell{display:flex;flex-direction:column;grid-template-columns:unset}
  .shell .main.app-main{flex:1 1 auto;min-height:0;width:100%}
}
.shell .main.app-main{display:flex;flex-direction:column;min-width:0;min-height:0;flex:1;height:100%;overflow:hidden}
.shell .scroller{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.shell .topbar.app-topbar{flex-wrap:nowrap}
.shell .topbar .spacer{flex:1 1 auto;min-width:0}
.shell .topbar-fetch-slot .header-secondary-btn,.shell .topbar .header-fetch-slot .header-secondary-btn{min-width:var(--tap);min-height:var(--tap);padding-inline:var(--space-xs)}
html:has(.shell.app-shell:not(.hidden):not([hidden])){height:100%;overflow:hidden;overscroll-behavior:none}
html:has(.shell.app-shell:not(.hidden):not([hidden])) :is(body,.layout){height:100%;min-height:0;overflow:hidden}
html:has(.shell.app-shell:not(.hidden):not([hidden])) .layout.apply-layout,html:has(.shell.app-shell:not(.hidden):not([hidden])) .layout.admin-layout{margin:0;max-width:none;height:100%;min-height:0;overflow:hidden;padding:0}
.shell .workbench-top-actions{display:none;align-items:center;justify-content:flex-end;gap:var(--space-2xs);padding:var(--space-2xs) var(--space-lg) 0;flex:0 0 auto}
@media (min-width:901px){
  .shell .topbar.app-topbar{display:none!important}
  .shell .workbench-top-actions{display:flex}
  .rail-foot .account{position:relative}
}
@media (max-width:900px){
  .shell .topbar.app-topbar{display:flex!important}
  .shell .workbench-top-actions{display:none!important}
  .shell .add-company-top{display:inline-grid}
  .shell .topbar-fetch-slot{display:flex;align-items:center;flex:0 0 auto}
  /* Account lives in the topbar avatar on mobile — hide the rail duplicate. */
  .shell .rail-foot .account{display:none}
}
@media (min-width:901px){.shell .topbar-fetch-slot{display:none}}
@media (min-width:901px){.shell .add-company-top{display:none!important}}
.shell.is-menu-open .rail,.shell.menu-open .rail{transform:none}
.shell.is-menu-open .backdrop:not([hidden]),.shell.menu-open .backdrop:not([hidden]){display:block}
.shell .backdrop[hidden]{display:none!important}
.shell .nav-n{margin-left:auto;font-size:var(--text-xs);font-weight:600;color:var(--color-muted)}
.shell .nav-n:not([hidden])~.nav-l{flex:1}
.shell .scroller:has(.board-page),.shell .scroller:has(.applications-page){overflow:hidden}
.shell .board-page,.shell .applications-page{display:flex;flex-direction:column;flex:1;min-height:0;height:100%;padding-bottom:0}
.shell .board-page-body,.shell .applications-page-body{flex:1 1 auto;min-width:0;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:var(--space-md)}
.shell .board-pagination-root,.shell .applications-pagination-root{flex:0 0 auto}
@media (min-width:901px){
  .shell.app-shell:has(.board-page) .rail,.shell.app-shell:has(.applications-page) .rail{height:100%;min-height:0;overflow-y:auto}
}
@media (min-width:901px) and (max-width:1200px){
  .nav-item[data-tip]{position:relative}
  .nav-item[data-tip]::after{content:attr(data-tip);position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);padding:6px 10px;border-radius:6px;background:var(--color-ink);color:#fff;font-size:var(--text-xs);font-weight:500;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s;z-index:40}
  @media (hover:hover) and (pointer:fine){.nav-item[data-tip]:hover::after,.nav-item[data-tip]:focus-visible::after{opacity:1;transition-delay:.35s}}
}
@media (max-width:900px){
  .shell .scroller input[type=search],.shell .scroller input[type=text],.shell .scroller input[type=email],.shell .scroller input[type=password],.shell .scroller input[type=tel],.shell .scroller input[type=url],.shell .scroller select,.shell .scroller textarea,.shell .scroller .filter-btn{font-size:max(16px,var(--text-sm));font-family:var(--font-body)}
  .shell .topbar{padding-top:max(var(--space-2xs),env(safe-area-inset-top,0px));padding-inline:max(var(--space-xs),env(safe-area-inset-left,0px)) max(var(--space-xs),env(safe-area-inset-right,0px))}
}
@media (max-width:400px){
  .shell .topbar-fetch-slot .header-btn-text,.shell .topbar .header-fetch-slot .header-btn-text{display:none}
}
.skip{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip:focus{position:fixed;left:8px;top:8px;z-index:99;width:auto;height:auto;clip:auto;padding:8px 12px;background:var(--color-paper);border-radius:8px;box-shadow:var(--shadow-sm)}
.visually-hidden,.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}


/* PR3 role meta line: city · Seen/Added date */
.pc .row-m{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--space-2xs);margin:0;font-size:var(--text-xs);color:var(--color-muted)}
.pc .row-m>span+span::before{content:"·";margin-right:var(--space-2xs);color:var(--color-rule)}
.pc .row-m .expand-cities-btn{min-height:var(--tap);margin:-10px 0;padding:0 var(--space-3xs);border:0;background:none;font:inherit;font-size:var(--text-xs);font-weight:600;color:var(--color-ink-2);cursor:pointer}
.applied-btn.btn-apply{background:var(--success-soft);border-color:color-mix(in srgb,var(--success) 25%,transparent);color:var(--success);box-shadow:none}
.hide-reason-trigger.btn-nfm,.position-actions-primary .hide-reason-trigger{background:color-mix(in srgb,var(--color-status-ochre) 12%,var(--color-paper));border-color:color-mix(in srgb,var(--color-status-ochre) 30%,transparent);color:oklch(42% .11 70);box-shadow:none}

/* PR3/4 bridge: legacy board DOM (.company-card / position-card) → polish tokens (.cc / .pc) */
.company-card.cc,.cc-list>.company-card.cc{border:var(--hair);border-radius:var(--radius-card);background:var(--color-paper)}
.company-card.cc .company-header,.cc-h{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm) var(--space-sm) var(--space-sm) var(--space-md)}
.company-card.cc .company-name-link,.cc-n{font-family:var(--font-display);font-size:var(--text-base);font-weight:600;color:var(--color-ink);text-decoration:none;overflow-wrap:anywhere}
.company-card.cc .positions.cc-roles,.cc-roles{border-top:var(--hair)}
.company-card.cc .positions.cc-roles position-card,.cc-roles position-card{display:block}
.cc-roles position-card+position-card>.pc{border-top:var(--hair)}
.pin-job-btn.pin-btn{width:var(--tap);height:var(--tap);border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper)}
.pin-job-btn.pin-btn .pin-job-label{display:none}

/* Legacy styles.css hits these nodes with up to 3 classes; .shell scope keeps the mockup values winning. */
.shell .cc .company-header-main.cc-id{display:flex;flex-direction:column;gap:var(--space-2xs);min-width:0;padding:0}
.shell .cc .company-name-row{margin:0}
.shell .cc .company-meta.cc-loc{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2xs);margin:0;font-size:var(--text-xs);color:var(--color-muted)}
.shell .cc .company-locations-wrap{display:contents}
.shell .cc .edit-city-btn.cc-city{display:inline-flex;flex-wrap:wrap;gap:var(--space-2xs);min-height:0;height:auto;padding:0;border:0;border-radius:0;background:none;box-shadow:none;font:inherit;color:inherit;cursor:pointer}
.shell .cc .edit-city-btn.cc-city:disabled{cursor:default;opacity:1}
.shell .cc .cc-city .chip-q{display:inline-flex;align-items:center;height:1.5rem;padding:0 var(--space-2xs);border-radius:6px;background:var(--color-paper-2);font-size:var(--text-xs);font-weight:500;color:var(--color-ink-2)}
.shell .cc .cc-loc .link-q,.shell .cc .cc-stats .link-q{display:inline-flex;align-items:center;min-height:var(--tap);margin:-6px 0;padding:0 var(--space-3xs);border:0;border-radius:0;background:none;box-shadow:none;font:inherit;font-size:var(--text-xs);font-weight:600;color:var(--color-ink-2);cursor:pointer}
.shell .cc .cc-stats .link-q.active{color:var(--color-ink);text-decoration:underline;text-underline-offset:3px}
.shell .cc a.cc-careers{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;min-height:var(--tap);margin:-6px 0;font-size:var(--text-sm);font-weight:600;color:var(--color-ink-2);text-decoration:none}
.shell .cc a.cc-careers svg{color:var(--color-muted)}
.shell .cc .company-status-row.cc-stats{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2xs);margin:0}
.shell .cc .company-header-actions.cc-a{display:flex;gap:var(--space-3xs);flex:0 0 auto;margin:0}
.shell .cc .cc-a .btn.btn-icon{display:inline-grid;place-items:center;width:var(--tap);height:var(--tap);min-height:var(--tap);padding:0;border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper);box-shadow:none;color:var(--color-ink-2);list-style:none}
.shell .cc .cc-a summary.btn::-webkit-details-marker{display:none}
.shell .cc.collapsed .collapse-company-chevron{transform:none}
.shell .cc:not(.collapsed) .collapse-company-chevron{transform:rotate(180deg)}
.shell .cc .expand-roles-btn.cc-more{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;min-height:var(--tap);margin:0;border:0;border-top:var(--hair);border-radius:0 0 var(--radius-card) var(--radius-card);background:none;box-shadow:none;font:inherit;font-size:var(--text-sm);font-weight:600;color:var(--color-ink-2);cursor:pointer}

.shell .badge{display:inline-flex;align-items:center;gap:var(--space-3xs);height:1.375rem;padding:0 var(--space-2xs);border:0;border-radius:.375rem;box-shadow:none;font-size:var(--text-xs);font-weight:600;line-height:1;white-space:nowrap}
.shell .badge.b-applied{background:var(--intent-soft);color:var(--intent)}
.shell .badge.b-neutral{background:var(--color-paper-2);color:var(--color-ink-2)}
.shell .badge.b-want{background:var(--pending-soft);color:var(--pending)}
.shell .badge.b-await{background:color-mix(in srgb,var(--color-status-violet) 12%,transparent);color:var(--color-status-violet)}
.shell .badge.b-visa{background:var(--visa-soft);color:var(--visa)}
.shell .badge.b-ready{background:var(--success-soft);color:var(--success);text-decoration:none}
.shell .badge.b-closed{background:var(--color-paper-3);color:var(--color-ink-2)}
.shell .badge.b-rejected{background:color-mix(in srgb,var(--color-status-crimson) 10%,transparent);color:var(--color-status-crimson)}

.shell .pc .pc-t{font-size:var(--text-sm);font-weight:600;line-height:1.35;color:var(--color-ink);text-decoration:none}
.shell .pc.is-seen .pc-t{font-weight:500;color:var(--color-ink-2)}
.shell .pc .pc-act .btn,.shell .pc .position-actions-secondary .btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:var(--tap);height:var(--tap);padding:0 var(--space-sm);border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper);box-shadow:none;font:inherit;font-size:var(--text-sm);font-weight:600;color:var(--color-ink-2);white-space:nowrap}
.shell .pc .pc-act .btn.btn-icon{width:var(--tap);padding:0}
.shell .pc .btn.btn-apply{background:var(--success-soft);border-color:color-mix(in srgb,var(--success) 25%,transparent);color:var(--success)}
.shell .pc .btn.btn-nfm{background:color-mix(in srgb,var(--color-status-ochre) 12%,var(--color-paper));border-color:color-mix(in srgb,var(--color-status-ochre) 30%,transparent);color:oklch(42% .11 70)}
.shell .pc .btn.btn-reject{background:color-mix(in srgb,var(--color-status-crimson) 8%,var(--color-paper));border-color:color-mix(in srgb,var(--color-status-crimson) 25%,transparent);color:var(--color-status-crimson)}
.shell .board-page-body>*,.shell .applications-page-body>*{max-width:60rem}
.shell .position-card.pc{gap:0;border:0;border-radius:0;background:none}
.shell .cc-roles position-card+position-card>.position-card.pc,.shell .app-co position-card+position-card>.position-card.pc{border-top:var(--hair)}
.shell .applications-tabs.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;max-width:26rem;margin:var(--space-sm) 0 0;padding:2px;border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper-2)}
.shell .seg .applications-tab{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3xs);min-height:var(--tap);margin:0;padding:0 var(--space-2xs);border:0;border-radius:calc(var(--radius-input) - 2px);background:transparent;box-shadow:none;font:inherit;font-size:var(--text-xs);font-weight:600;color:var(--color-ink-2);cursor:pointer}
.shell .seg .applications-tab::after{content:none}
.shell .seg .applications-tab .applications-tab-count{color:var(--color-muted);font-weight:500;font-variant-numeric:tabular-nums}
.shell .seg .applications-tab.is-active{background:var(--color-paper);color:var(--color-ink);box-shadow:var(--btn-shadow)}
.shell .seg .applications-tab.is-active .applications-tab-count{color:var(--color-ink-2)}
.shell .applications-list{display:block}
.shell .applications-row.app-co{display:block;margin-top:var(--space-md);padding:0;border:var(--hair);border-radius:var(--radius-card);background:var(--color-paper);overflow:hidden}
.shell .applications-row-meta.app-co-h{display:flex;align-items:baseline;gap:var(--space-2xs);margin:0;padding:var(--space-sm) var(--space-md);border-bottom:var(--hair);font-family:var(--font-display);font-size:var(--text-base);font-weight:600}
.shell .app-co-h .applications-company{color:var(--color-ink);text-decoration:none}
.shell .app-co-h .muted{font-family:var(--font-body);font-size:var(--text-xs);font-weight:500;color:var(--color-muted)}
.shell .applications-card-host{display:block;margin:0;padding:0;border:0}
.shell .cc .cc-loc>*::before{content:none}
.shell .badge.cv-master{font-family:inherit}
.shell .pc .position-application-status.pc-status{display:flex;justify-content:flex-start;align-items:center;gap:6px;min-height:0;margin-top:var(--space-xs);padding:0;border:0;background:none;font-size:var(--text-sm);color:var(--success)}
.shell .pc .pc-status .num{font-size:var(--text-xs);color:var(--color-muted)}
.shell .pc .pc-side .btn.btn-icon{display:inline-grid;place-items:center;width:var(--tap);height:var(--tap);min-height:var(--tap);padding:0;border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper);box-shadow:none;color:var(--color-ink-2)}
.shell .pc .ats-score-trigger.ats-chip{display:inline-flex;align-items:center;gap:6px;min-height:var(--tap);height:var(--tap);padding:0 var(--space-xs);border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper);box-shadow:none;font:inherit;font-size:var(--text-sm);font-weight:600;color:var(--color-ink-2)}
.shell .pc .ats-chip .k{font-size:var(--text-xs);color:var(--color-muted)}
.shell .pc .ats-chip.has b{display:inline-grid;place-items:center;min-width:2rem;height:1.5rem;padding:0 6px;border-radius:6px}
.shell .pc .ats-chip.hi b{background:color-mix(in srgb,var(--color-status-green) 14%,transparent);color:var(--color-status-green)}
.shell .pc .ats-chip.mid b{background:color-mix(in srgb,var(--color-status-ochre) 16%,transparent);color:oklch(42% .11 70)}
.shell .pc .ats-chip.lo b{background:color-mix(in srgb,var(--color-status-crimson) 12%,transparent);color:var(--color-status-crimson)}
.shell .pc .pin-btn[aria-pressed=true]{color:var(--color-accent-deep)}
.shell .position-card.pc.is-pinned{border-left:0;box-shadow:inset 2px 0 0 var(--color-accent-deep)}

/* Company v2.1: the role card is flattened into the detail header action row */
.shell .d-actions{position:relative;flex-wrap:wrap;gap:var(--space-2xs)}
.shell .d-card,.shell .d-card position-card,.shell .d-card .position-card.pc,.shell .d-card .pc-top,.shell .d-card .pc-side,.shell .d-card .pc-act{display:contents}
.shell .d-card .pc-head,.shell .d-card .position-application-status{display:none}
.shell .d-card .applied-btn,.shell .d-card .rejected-btn,.shell .d-card .reapply-btn,.shell .d-card .restore-job-btn{order:1}
.shell .d-card .pin-btn{order:2}
.shell .d-card .hide-reason-wrap{order:3}
.shell .d-card .ats-score-wrap{order:4}
.shell .d-card .open-job-posting-btn{order:5}
.shell .d-card .position-more-btn{order:6}
.shell .d-card .share-job-btn{order:7}
.shell .d-card .pin-btn{display:inline-flex;align-items:center;gap:6px;width:auto;padding:0 var(--space-sm);font-size:var(--text-sm);font-weight:600;color:var(--color-ink-2)}
.shell .d-card .pin-btn svg{width:16px;height:16px}
.pin-btn-l{display:none}
.shell .d-card .pin-btn .pin-btn-l{display:inline}
.hide-reason-ic{display:none}
.shell .pc .hide-reason-l,.shell .d-card .hide-reason-l{display:inline}
.shell .d-card .pin-btn[aria-pressed=true]{background:color-mix(in srgb,var(--color-accent) 8%,var(--color-paper));border-color:color-mix(in srgb,var(--color-accent) 40%,transparent);color:var(--color-accent-deep)}
.shell .d-card .position-application-status.pc-status{display:none}
.shell .split .company-detail-panel.detail{overscroll-behavior:auto}
.prefs-mine{display:grid;grid-template-columns:8rem 1fr;gap:var(--space-xs) var(--space-sm);align-items:center;margin-bottom:var(--space-md)}
button.tag{border:0;cursor:pointer}
button.tag[aria-pressed=false]{color:var(--color-muted);text-decoration:line-through}
.shell .role-prefs-page.content{max-width:72rem}
.shell .scroller:has(>.role-prefs-page) .workbench-top-actions{display:none}
.shell .scroller:has(>.apply-page) .workbench-top-actions{display:none}
.shell .apply-page.content{max-width:72rem}
.shell .apply-page .apply-panel.admin-panel{margin:0;padding:var(--space-md) 0 0;border:0;border-radius:0;background:none;box-shadow:none}
.shell .apply-page .apply-panel>.admin-panel-title{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.shell .apply-page .apply-panel>.apply-hint{margin:0 0 var(--space-sm);color:var(--color-ink-2);font-size:var(--text-sm)}
.shell .apply-page :is(input[type=text],input[type=email],input[type=url],input:not([type]),textarea,select){min-height:var(--tap);padding:0 var(--space-xs);border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper);font:inherit;font-size:var(--text-sm);color:var(--color-ink)}
.shell .apply-page textarea{padding:var(--space-xs)}
.shell .apply-page label{font-size:var(--text-xs);font-weight:600;color:var(--color-ink-2)}
.shell .apply-page .apply-masters-layout{display:grid;grid-template-columns:13rem minmax(0,1fr);gap:var(--space-md);align-items:start}
.shell .apply-page .apply-master-list-wrap{border:0;border-right:var(--hair);border-radius:0;background:none;padding:0 var(--space-xs) 0 0}
.shell .apply-page .apply-master-list-header{display:flex;align-items:center;justify-content:space-between;padding:0 0 var(--space-3xs);font-size:var(--text-xs);color:var(--color-muted)}
.shell .apply-page .apply-master-list-title{font-size:var(--text-xs);font-weight:500;text-transform:none;letter-spacing:0;color:var(--color-muted)}
.shell .apply-page .apply-new-master-btn{min-height:var(--tap);font-size:var(--text-xs);font-weight:600;color:var(--color-ink)}
.shell .apply-page .apply-master-list{margin:0;padding:0;list-style:none}
.shell .apply-page .apply-master-item{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--space-2xs);width:100%;padding:var(--space-2xs) var(--space-xs);border:0;border-radius:0;background:none;text-align:left;box-shadow:inset 2px 0 0 transparent}
.shell .apply-page .apply-master-item--active{background:var(--color-paper-2);box-shadow:inset 2px 0 0 var(--color-accent)}
.shell .apply-page .apply-master-item-label{grid-column:1;min-width:0;font-size:var(--text-sm);font-weight:500;color:var(--color-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.shell .apply-page .apply-master-item-slug{grid-column:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-muted)}
.shell .apply-page .apply-master-item-date{grid-column:2;grid-row:1/3;align-self:center;font-size:var(--text-xs);color:var(--color-muted)}
.shell .apply-page .apply-master-meta{display:grid;grid-template-columns:1fr 1fr;grid-auto-flow:column;grid-template-rows:auto auto;gap:6px var(--space-sm);margin:0 0 var(--space-sm)}
.shell .apply-page .apply-master-actions{display:flex;justify-content:flex-end;gap:var(--space-2xs);margin:0 0 var(--space-2xs)}
.shell .apply-page .apply-master-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}
.shell .apply-page .apply-master-preview-label{margin:0 0 6px;text-transform:none;letter-spacing:0;font-size:var(--text-xs);font-weight:600;color:var(--color-ink-2)}
.shell .apply-page .apply-tex-editor{width:100%;min-height:22rem;font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.6}
.shell .apply-page .apply-master-pdf-frame-wrap{min-height:22rem;border:var(--hair);border-radius:var(--radius-input);background:var(--color-paper-2);display:grid;place-items:center}
.shell .apply-page .apply-master-pdf-missing{color:var(--color-muted);font-size:var(--text-sm)}
.shell .apply-page .apply-form-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-top:var(--space-sm)}
.shell .apply-page .apply-updated-at{font-size:var(--text-xs);color:var(--color-muted)}
@media(max-width:900px){
  .shell .apply-page .apply-masters-layout,.shell .apply-page .apply-master-preview-grid{grid-template-columns:1fr}
  .shell .apply-page .apply-master-list-wrap{border-right:0;padding:0}
}
.shell .company-position-header.d-sticky{display:block;margin:0;border-radius:0;box-shadow:none}
.shell .company-position-header .d-actions{justify-content:flex-start;margin-top:var(--space-sm)}
.shell .company-positions-head.roles-head{display:block}
.shell .company-positions-head .roles-title{display:flex;align-items:baseline;justify-content:space-between;margin:0 0 var(--space-xs)}
.shell .company-positions-panel .company-positions-hint{margin:0;padding:0 var(--space-sm) var(--space-2xs) var(--space-lg);font-size:var(--text-xs);color:var(--color-muted)}
.shell .company-positions-panel .sec-h{display:flex;align-items:center;justify-content:space-between;gap:4px;margin:0;padding:var(--space-xs) var(--space-sm) var(--space-3xs) var(--space-lg);font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;letter-spacing:0;text-transform:none;color:var(--color-muted)}
.shell .company-positions-panel .sec-h{justify-content:flex-start}
.shell .company-positions-panel .sec-h .num{margin-left:auto}
.shell .company-positions-panel .sec-h svg{width:14px;height:14px;color:var(--color-accent-deep)}
.shell .company-positions-panel .group.pinned,.shell .company-positions-panel .company-position-group{margin:0;padding:0;border:0}
.shell .company-positions-panel .rrow.company-position-row{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-start;margin:0;padding:0;border:0}
.shell .company-positions-panel .rrow>.row{flex:1 1 10rem;min-width:min(100%,10rem)}
.shell .company-positions-panel .rrow>.pin-btn,.shell .company-positions-panel .rrow>.company-position-reapply{align-self:flex-start;margin-top:0.4rem}
.shell .company-positions-panel .company-position-item.row{grid-template-columns:minmax(0,1fr)}
.shell .company-positions-panel .company-position-item.row>span{min-width:0}
.shell .company-positions-panel .row-t{overflow-wrap:normal}
.shell .company-positions-panel .role-list{margin:0;padding:0;list-style:none}
.shell .company-jd-panel{margin:0;padding:0;border:0;background:none}
.shell .company-jd-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:var(--space-2xs);margin-top:var(--space-sm)}
.shell .company-jd-actions[hidden]{display:none!important}
@media (max-width:900px){
  /* Company shell: edge-to-edge like /panel, not a padded desktop card. */
  .layout.company-layout{max-width:none;margin:0;padding:0;width:100%;height:100%}
  /* List view: content-sized — shell scroller scrolls; no empty flex stretch under short lists. */
  .shell .scroller:has(.page.split:not(.m-detail)){overflow-y:auto}
  .shell .page.split.app-page:not(.m-detail){height:auto;padding:var(--space-xs) var(--space-sm) 0}
  .shell .page.split:not(.m-detail) .company-breadcrumb.back{margin:0 0 var(--space-3xs);margin-left:-6px;font-size:var(--text-sm);font-weight:600;color:var(--color-ink-2)}
  .shell .page.split:not(.m-detail) .company-detail-panel.detail{display:none}
  /* Role detail: fill viewport; only .d-body scrolls between sticky header and .m-bar. */
  .shell .scroller:has(.m-detail){overflow:hidden;display:flex;flex-direction:column}
  .shell .scroller:has(.m-detail) .workbench-top-actions{display:none!important}
  .shell .page.split.app-page.m-detail{flex:1;min-height:0;height:100%;padding:0;display:flex;flex-direction:column}
  .shell .m-detail .company-workspace.md{flex:1;min-height:0;display:flex;flex-direction:column;margin:0;border:0;grid-template-columns:1fr}
  .shell .m-detail .company-detail-panel.detail{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;width:100%;max-width:none}
  .shell .m-detail .company-breadcrumb,.shell .m-detail .page-co,.shell .m-detail .company-workspace>.roles{display:none}
  .shell .m-detail .m-sub{flex:0 0 auto;position:relative;top:auto}
  .shell .m-detail .company-detail-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}
  .shell .m-detail .m-bar{position:relative;bottom:auto;flex:0 0 auto;z-index:6}
  .shell .m-detail .d-sticky{flex:0 0 auto;padding:var(--space-sm) var(--space-sm) 0}
  .shell .m-detail .d-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:var(--space-md) var(--space-sm) var(--space-lg)}
  .shell .m-detail .company-jd-panel,.shell .m-detail .company-docs-panel{min-height:min-content}
  /* Sticky strip: Mark applied + Not for me share the row (pin/primary live in .m-bar). */
  .shell .m-detail .company-position-header .d-actions{display:flex;flex-wrap:nowrap;align-items:center;gap:var(--space-2xs);width:100%}
  .shell .m-detail #companyApplyLink,.shell .m-detail #companyTailorBtn,.shell .m-detail .d-card .pin-btn,.shell .m-detail .d-card .pin-btn-l,.shell .m-detail .d-card .rejected-btn,.shell .m-detail .d-card .reapply-btn,.shell .m-detail .d-card .ats-score-wrap,.shell .m-detail .d-card .open-job-posting-btn,.shell .m-detail .d-card .position-more-btn{display:none}
  .shell .m-bar #companyBarPrimary.btn-reject{flex:1;min-height:var(--tap)}
  .shell .m-detail .d-card .applied-btn,.shell .m-detail .d-card .restore-job-btn,.shell .m-detail .d-card .hide-reason-wrap{flex:1 1 0;min-width:0}
  .shell .m-detail .d-card .hide-reason-trigger{width:100%;justify-content:center}
  .shell .m-detail .d-card .hide-reason-l{display:inline}
  .shell .m-detail .d-card .hide-reason-ic{display:none}
  .shell .m-detail .d-card .hide-reason-chevron{display:inline-block}
  .shell .m-detail .company-jd-view{max-width:none;max-height:none;overflow:visible}
  .shell .m-detail .company-preview-grid{grid-template-columns:1fr}
  .shell .m-bar #companyBarPin[aria-pressed=true]{background:color-mix(in srgb,var(--color-accent) 8%,var(--color-paper));border-color:color-mix(in srgb,var(--color-accent) 40%,transparent);color:var(--color-accent-deep)}
  .shell .m-bar .btn:disabled{opacity:.45}
  .shell .m-bar .btn-primary{min-height:var(--tap)}
}
.shell .company-jd-view{max-width:68ch;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:none;overflow:visible;font-size:var(--text-base);line-height:1.65;color:var(--color-ink)}
.shell .d-card .position-actions-secondary:not([hidden]){position:absolute;top:100%;right:0;z-index:20}
.shell .company-position-header .d-meta{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--space-2xs);margin:0;font-size:var(--text-sm);color:var(--color-ink-2);white-space:normal}
.shell .d-meta>span:not(.badge)+span:not(.badge)::before,.shell .co .meta>span+span::before{content:"·";margin-right:var(--space-2xs);color:var(--color-rule)}
.shell .d-step{margin:var(--space-2xs) 0 0;font-size:var(--text-xs);color:var(--color-muted)}
.shell .d-step b{font-weight:600;color:var(--color-ink-2)}
.shell .co .meta{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--space-2xs);margin:0;font-size:var(--text-sm);color:var(--color-ink-2)}
.shell .co .meta b{color:var(--color-ink)}
.shell .company-detail-body .tabs a{padding:0;background:none}
.shell .docs-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-sm);margin:0 0 var(--space-md)}
.shell .docs-acts{display:flex;flex-wrap:wrap;gap:var(--space-2xs)}
.shell .company-artifact-tabs.seg{min-width:14rem;margin:0}
.shell .seg .company-artifact-tab{display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap);padding:0 var(--space-sm);border:0;border-radius:calc(var(--radius-input) - 2px);background:transparent;box-shadow:none;font:inherit;font-size:var(--text-xs);font-weight:600;color:var(--color-ink-2)}
.shell .seg .company-artifact-tab--active{background:var(--color-paper);color:var(--color-ink);box-shadow:var(--btn-shadow)}
.shell .company-positions-panel .row-m{display:flex;flex-wrap:wrap;align-items:center;gap:4px var(--space-2xs);white-space:normal}
.shell .company-positions-panel .row-m .row-r{white-space:normal}
.shell .company-positions-panel .row-m .badge{height:1.125rem;padding:0 6px}
.company-detail-panel.detail{min-width:0}
/* Desktop split only — unscoped rules were beating mobile .md{display:block} / .roles{border:0}. */
@media (min-width:901px){
  .company-workspace.md{display:grid;grid-template-columns:var(--list-w) minmax(0,1fr);min-height:0}
  .company-positions-panel.roles{border-right:var(--hair)}
}
@media (max-width:900px){
  /* Negative margin pulls roles edge-to-edge; page padding keeps breadcrumb/.co inset. */
  .company-workspace.md{display:block;margin:0 calc(var(--space-sm) * -1);border:0}
  .company-positions-panel.roles{border-right:0;height:auto}
  .shell .company-position-history{padding:var(--space-xs) var(--space-sm) var(--space-sm);border-top:1px dashed color-mix(in srgb,var(--danger) 25%,transparent)}
  .shell .company-position-history-toggle{padding:var(--space-2xs) 0;min-height:var(--tap)}
}
