
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/assets/fonts/figtree-latin-ext-400-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/assets/fonts/figtree-latin-400-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/assets/fonts/figtree-latin-ext-500-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/assets/fonts/figtree-latin-500-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/assets/fonts/figtree-latin-ext-600-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/assets/fonts/figtree-latin-600-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/assets/fonts/figtree-latin-ext-700-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/assets/fonts/figtree-latin-700-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/assets/fonts/plus-jakarta-sans-latin-ext-500-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/assets/fonts/plus-jakarta-sans-latin-500-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/assets/fonts/plus-jakarta-sans-latin-ext-600-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/assets/fonts/plus-jakarta-sans-latin-600-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/assets/fonts/plus-jakarta-sans-latin-ext-700-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/assets/fonts/plus-jakarta-sans-latin-700-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
:root{
  --font-display:"Bagoss Standard","Bagoss Standard-TRIAL","Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-text:"TT Commons Pro","Figtree",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
:root{
  --ink:#2a3071;            
  --ink-border:#2c2f75;     
  --ink-deep:#000433;       
  --ink-blue:#000c8a;       
  --ink-bright:#0011c7;     
  --ink-eye:#2d2f71;        
  --lilac:#a78bce;          
  --lilac-mark:#ab96c7;     
  --lilac-pale:#dcc2de;     
  --lilac-soft:#efe9f7;     
  --lilac-tint:#f8f2ff;     
  --surface:#ffffff;
  --surface-warm:#fefcff;
  --surface-cool:#fbfeff;
  --bg-onboard:#f4f0f9;     
  --bg-app:#f8f2ff;
  --dark-bg:#090917;        
  --dark-bg-true:#000000;   
  --line:#f0e8fa;          
  --card-fill:#fbf7ff;      
  --card-border:#f5ebff;    
  --pill-fill:#fefcff;      
  --nav-chosen-fill:#f1ebfb; 
  --status-available:#38d67f;
  --status-busy:#f598a9;
  --status-away:#c7c7c7;    
  --status-met:#6bc586;
  --muted:#bcbcbc;          
  --muted-text:#828282;
  --track:#e9e9e9;          
  --confirm:#98f5c2;
  --decline:#f598a9;
  --motif-magenta:#ed00ff;
  --motif-blue:#0077ff;
  --motif-blue-soft:#8bb5e5;
  --motif-green:#00ff4d;
  --motif-orange:#ff4d00;
  --motif-yellow:#e1ff00;
  --motif-red:#ff1e00;
  --motif-cyan-tri:#00f2ff; 
  --motif-pink:#ff0090;
  --motif-violet:#7b00ff;
  --motif-amber:#ffb300;
  --motif-cyan:#00e5ff;
  --motif-mint:#00ffc8;
  --motif-white:#ffffff;
  --motif-chartreuse:#55ff00;
  --motif-azure:#00a8ff;
  --motif-electric:#1e00ff;
  --motif-crimson:#ff0044;
  --motif-tangerine:#ff8c00;
  --motif-gold:#ffd500;
  --text-heading:var(--ink-deep);
  --text-body:var(--ink-deep);
  --text-on-dark:#ffffff;
  --text-inverse:var(--lilac-soft);
  --text-muted:var(--muted);
  --surface-card:var(--card-fill);
  --surface-page:var(--surface);
  --surface-page-onboard:var(--bg-onboard);
  --surface-page-dark:var(--dark-bg);
  --border-strong:var(--ink);
  --border-hairline:var(--line);
  --action-primary-bg:var(--ink-bright);
  --action-primary-fg:var(--lilac-soft);
  --action-lilac-bg:var(--lilac);
  --action-lilac-fg:#ffffff;
  --action-ghost-fg:var(--ink);
}
:root{
  --display-28:28px;        
  --display-28-nudged:28.2965030670166px;
  --display-25:25px;        
  --display-24:24px;        
  --display-22:22px;        
  --display-20:20px;        
  --display-18:18px;
  --text-25:25px;           
  --text-20:20px;
  --text-18:18px;           
  --text-16:16px;           
  --text-14:14px;           
  --text-12:12px;
  --text-10:10px;
  --weight-display:500;
  --weight-regular:400;
  --weight-medium:500;
  --weight-demibold:600;
  --weight-bold:700;
  --lh-tight:1.25; 
  --lh-body:1.4; 
  --lh-ui:1.5; 
  --tracking-tight:-0.01em; 
  --tracking-wordmark:-0.05em;
  --type-screen-title:var(--weight-display) var(--display-28)/var(--lh-tight) var(--font-display);
  --type-greeting:var(--weight-display) var(--display-22)/var(--lh-tight) var(--font-display);
  --type-section-title:var(--weight-display) var(--display-24)/var(--lh-tight) var(--font-display);
  --type-auth-title:var(--weight-bold) var(--text-25)/var(--lh-tight) var(--font-text);
  --type-card-name:var(--weight-bold) var(--text-16)/var(--lh-tight) var(--font-text);
  --type-card-role:var(--weight-regular) var(--text-16)/var(--lh-tight) var(--font-text);
  --type-why:var(--weight-regular) var(--text-16)/var(--lh-body) var(--font-text);
  --type-button:var(--weight-bold) var(--text-16)/var(--lh-tight) var(--font-text);
  --type-button-sm:var(--weight-medium) var(--text-14)/var(--lh-tight) var(--font-text);
  --type-pill:var(--weight-regular) var(--text-14)/var(--lh-tight) var(--font-text);
  --type-meta:var(--weight-medium) var(--text-14)/var(--lh-tight) var(--font-text);
}
:root{
  --frame-w:390px;          
  --gutter:35px;            
  --content-w:319px;        
  --gap-card:18px;          
  --gap-inline:10px;        
  --gap-stack:8px;
  --gap-row:16px;
  --gap-section:32px;
  --gap-hero:50px;          
  --gap-card-inner:20px;
  --gap-before-button:19px;
  --nav-tab-1:129px;
  --nav-tab-2:275px;
  --gap-nav-label:4px;
  --onboard-logo-y:94px;
  --onboard-title-y:502px;
  --onboard-body-y:556.371px;
  --onboard-dots-y:687px;
  --onboard-cta-y:740px;
  --match-heading-y:77px;
  --match-heading-w:261px;
  --match-motif-x:81px;
  --match-motif-y:230px;
  --match-motif-w:228.427px;
  --match-name-y:486px;
  --match-circles-y:646px;
  --match-circle-gap:81px;
  --match-label-y:718px;
  --matched-ground-y:330px;
  --matched-avatars-y:75px;
  --matched-avatar-overlap:17px;
  --matched-heading-y:171px;
  --matched-ice-y:434px;
  --matched-ice-w:235px;
  --matched-cta-y:718px;
  --field-inset:14px;
  --field-icon-gap:10.555px;
  --pad-card:20px 20px 18px 21px;
  --indent-card-text:19px;
  --pad-button:10px;        
  --pad-button-web:12px 18px;
  --pad-nav:0 64px;         
}
:root{
  --radius-card:15px;               
  --h-card:229px;                   
  --radius-pill:20px;               
  --radius-button:30.76923179626465px; 
  --radius-button-wide:45px;        
  --radius-lilac:40px;              
  --radius-field:5px;               
  --radius-web-button:32px;         
  --radius-round:50%;
  --h-button:44px;                  
  --h-button-sm:38px;               
  --h-button-web:48px;
  --h-pill:23px;
  --h-field:40px;                   
  --h-field-auth:44px;              
  --w-button:278px;
  --w-button-wide:281px;
  --w-button-sm:179px;
  --gutter-auth:55px;
  --size-circle-action:61px;        
  --size-avatar:33px;               
  --size-avatar-lg:82px;            
  --size-dot-status:5px;
  --size-mark-status:7px;           
  --size-dot-carousel:11px;
  --size-icon-nav:32px;
  --size-logo:150.527px;            
  --size-logo-sm:47px;              
  --shadow-hard:0 4px 0 0 var(--ink);
  --shadow-hard-offset:4px;
  --border-lilac:inset 0 0 0 1px var(--ink-border);
  --border-ghost:inset 0 0 0 1px var(--ink);
  --border-field:inset 0 0 0 1px var(--ink);
  --border-field-strong:inset 0 0 0 1px var(--ink-deep); 
  --border-avatar:inset 0 0 0 2px var(--bg-app);
  --border-card:inset 0 0 0 1px var(--card-border);
  --border-pill:inset 0 0 0 1px var(--line);
  --ground-w:794px;
  --ground-h:566px;
  --ground-x:-202px;
}
:root{
  --ease-out:cubic-bezier(.2,.8,.2,1); 
  --ease-in-out:cubic-bezier(.4,0,.2,1); 
  --ease-press:cubic-bezier(.3,0,.5,1); 
  --dur-press:90ms; 
  --dur-fast:160ms; 
  --dur-page:260ms; 
  --dur-motif-drift:9s; 
  --dur-motif-breathe:2.6s; 
  --dur-motif-spin:22s; 
}
@keyframes tam-drift{
  0%  {transform:translate(0,0)}
  25% {transform:translate(14px,-18px)}
  50% {transform:translate(-10px,-6px)}
  75% {transform:translate(-16px,16px)}
  100%{transform:translate(0,0)}
}
@keyframes tam-breathe{
  0%,100%{transform:scale(1)}
  50%    {transform:scale(1.075)}
}
@keyframes tam-spin{ to{transform:rotate(360deg)} }
@keyframes tam-shimmer{
  0%,100%{opacity:1}
  50%    {opacity:.82}
}
@keyframes tam-press{
  to{transform:translateY(var(--shadow-hard-offset));box-shadow:var(--border-lilac)}
}
@media (prefers-reduced-motion:reduce){
  :root{--dur-fast:0s;  --dur-motif-drift:0s;  --dur-motif-breathe:0s;  --dur-motif-spin:0s; }
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:var(--font-text);color:var(--text-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:var(--weight-display);line-height:var(--lh-tight);color:var(--text-heading);text-wrap:balance}
p{margin:0;text-wrap:pretty}
button{font:inherit;color:inherit}
input::placeholder{color:var(--ink);opacity:.5}
a{color:var(--ink-blue);text-decoration:none}
a:hover{color:var(--ink);text-decoration:underline}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
html { -webkit-text-size-adjust: 100%; }
body.page { background: var(--surface-page); }
.visually-hidden {
    position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
    overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0;
}
.shell {
    width: 100%; max-width: var(--frame-w); min-height: 100svh; margin: 0 auto;
    display: flex; flex-direction: column;
    background: var(--surface-page); color: var(--text-body); font-family: var(--font-text);
}
.column { padding-inline: min(var(--gutter), 9vw); }
.masthead { padding-top: 22px; display: grid; place-items: center; }
.wordmark {
    font: var(--weight-display) var(--display-20)/var(--lh-tight) var(--font-display);
    letter-spacing: var(--tracking-wordmark); color: var(--ink-deep); white-space: nowrap;
}
.wordmark small { font: inherit; color: var(--ink); margin-left: 0.25em; }
.shell main { flex: 1; padding-top: 22px; display: flex; flex-direction: column; gap: var(--gap-card); }
.shell main > section { display: flex; flex-direction: column; gap: var(--gap-card); }
.shell main > section + section { margin-top: 14px; }
.shell main h1, .shell main h2 { font: var(--type-section-title); color: var(--text-heading); }
.shell .board-section > h1 { font: var(--weight-display) var(--display-22)/var(--lh-tight) var(--font-display); padding-left: 8px; }
.cards { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--gap-card); }
.card {
    width: 100%; max-width: var(--content-w);
    border-radius: var(--radius-card); background: var(--surface-card); box-shadow: var(--border-card);
    padding: var(--pad-card); display: flex; flex-direction: column; gap: var(--gap-card-inner);
}
.card-company {
    align-self: flex-start; display: inline-flex; align-items: center;
    min-height: var(--h-pill); padding: 0 11px; border-radius: var(--radius-pill);
    background: var(--pill-fill); box-shadow: var(--border-pill);
    font: var(--type-pill); color: var(--text-heading); overflow-wrap: anywhere;
}
.card-lockup {
    margin-left: var(--indent-card-text);
    font: var(--type-card-role); line-height: 1.4; letter-spacing: -0.04em; color: var(--text-heading);
}
.card-title { font: inherit; font-weight: var(--weight-bold); line-height: inherit; letter-spacing: inherit; color: inherit; overflow-wrap: anywhere; }
.card-meta { overflow-wrap: anywhere; }
.button {
    display: inline-flex; align-items: center; justify-content: center; gap: var(--gap-inline);
    width: 100%; height: var(--h-button); margin-top: -1px; padding: 0 var(--pad-button);
    border: none; border-radius: var(--radius-button);
    background: var(--action-primary-bg); color: var(--action-primary-fg); font: var(--type-button);
    text-decoration: none; cursor: pointer;
    transition: filter var(--dur-press) var(--ease-press);
}
.button:hover { color: var(--action-primary-fg); text-decoration: none; }
.button:active { filter: brightness(1.35); }
.filters {
    width: 100%; max-width: var(--content-w);
    border-radius: var(--radius-card); background: var(--surface-card); box-shadow: var(--border-card);
    padding: var(--pad-card); display: flex; flex-direction: column; gap: 12px;
}
.filters fieldset { border: 0; margin: 0; padding: 0; min-width: 0; display: flex; flex-wrap: wrap; column-gap: 8px; align-items: center; }
.filters legend { float: left; width: 100%; padding: 0; font: var(--type-meta); color: var(--text-body); }
.chip-input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.chip {
    position: relative; isolation: isolate;
    display: inline-flex; align-items: center; gap: 3px; min-height: 44px; padding: 0 11px;
    font: var(--type-pill); color: var(--text-heading); white-space: nowrap;
    cursor: pointer; user-select: none; -webkit-tap-highlight-color: transparent;
}
.chip::before {
    content: ""; position: absolute; z-index: -1; inset: 50% 0 auto; height: var(--h-pill); transform: translateY(-50%);
    border-radius: var(--radius-pill); background: var(--pill-fill); box-shadow: var(--border-pill);
    transition: background-color var(--dur-fast) var(--ease-out);
}
.chip:hover::before { background: var(--nav-chosen-fill); }
.chip-input:checked + .chip::before { background: var(--nav-chosen-fill); box-shadow: var(--border-ghost); }
.chip-input:focus-visible + .chip::before { outline: 2px solid var(--ink); outline-offset: 2px; }
.chip-mark { display: block; flex-shrink: 0; width: var(--size-mark-status); overflow: visible; }
.chip-dot { fill: var(--status-away); }
.chip-tick { display: none; fill: none; stroke: var(--status-met); stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.chip-input:checked + .chip .chip-dot { display: none; }
.chip-input:checked + .chip .chip-tick { display: inline; }
.board { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--gap-card); }
.role a {
    display: grid; grid-template-columns: 1fr auto; column-gap: 12px; align-items: start;
    max-width: var(--content-w); padding: var(--pad-card);
    border-radius: var(--radius-card); background: var(--surface-card); box-shadow: var(--border-card);
    font: var(--type-card-role); line-height: 1.4; letter-spacing: -0.04em; color: var(--text-heading);
    text-decoration: none; transition: background-color var(--dur-fast) var(--ease-out);
}
.role a:hover { background: var(--nav-chosen-fill); color: var(--text-heading); text-decoration: none; }
.role-title { grid-column: 1; margin-left: var(--indent-card-text); font-weight: var(--weight-bold); overflow-wrap: anywhere; }
.role-meta { grid-column: 1; margin-left: var(--indent-card-text); overflow-wrap: anywhere; }
.role-go {
    grid-column: 2; grid-row: 1 / span 2; align-self: center;
    font: var(--weight-bold) var(--text-14)/22px var(--font-text); letter-spacing: 0; white-space: nowrap;
    color: var(--ink-bright); text-decoration: underline; text-underline-offset: 3px;
}
.board-empty, .plain .notice {
    width: 100%; max-width: var(--content-w); padding: var(--pad-card);
    border-radius: var(--radius-card); background: var(--lilac-soft); color: var(--text-body);
    font: var(--weight-regular) var(--text-16)/var(--lh-body) var(--font-text);
}
.lede-box {
    width: 100%; max-width: var(--content-w); padding: var(--pad-card);
    border-radius: var(--radius-card); background: var(--ink); color: var(--lilac-soft);
}
.lede { font: var(--weight-medium) var(--text-16)/var(--lh-body) var(--font-text); color: inherit; }
.shell .plain { padding-top: 30px; }
.shell .plain h1 { font: var(--type-screen-title); padding-left: 8px; }
.plain > p:not(.notice) { font: var(--type-why); color: var(--text-body); padding-left: 8px; }
.plain a, .site-footer a {
    color: var(--ink-bright); text-decoration: underline; text-underline-offset: 3px; padding-block: 13px;
}
.plain a:hover, .site-footer a:hover { color: var(--ink); }
.site-footer {
    padding-top: var(--gap-section); padding-bottom: calc(26px + env(safe-area-inset-bottom, 0px));
    text-align: center; font: var(--type-pill); color: var(--ink);
}
:root {
    --web-gutter: 64px;
    --web-measure: 1120px;
    --web-card-min: 280px;
}
@media (min-width: 768px) {
    .shell { max-width: none; min-height: 100vh; }
    .column { padding-inline: max(var(--web-gutter), calc((100% - var(--web-measure)) / 2)); }
    .masthead { place-items: center start; padding-block: 22px; border-bottom: 1px solid var(--line); }
    .shell main { padding-block: var(--gap-hero); }
    .shell main > section + section { margin-top: var(--gap-section); }
    .shell main h1, .shell .board-section > h1 { font: var(--type-screen-title); padding-left: 0; }
    .cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(var(--web-card-min), 1fr)); }
    .card { max-width: none; }
    .card .button { margin-top: auto; }
    .filters, .board-empty, .lede-box { max-width: none; }
    .board { display: grid; grid-template-columns: repeat(auto-fill, minmax(var(--web-card-min), 1fr)); }
    .role { display: flex; }
    .role a { flex: 1; max-width: none; }
    .shell .plain { padding-top: var(--gap-hero); justify-content: center; align-items: center; text-align: center; }
    .shell .plain h1 { padding-left: 0; }
    .plain > p:not(.notice) { padding-left: 0; max-width: 34em; }
    .plain .notice { max-width: 34em; }
    .site-footer { padding-block: 22px; border-top: 1px solid var(--line); text-align: left; }
}
@media (min-width: 1024px) {
    .shell main > .board-section {
        display: grid; grid-template-columns: var(--content-w) minmax(0, 1fr); align-items: start;
        column-gap: var(--gap-section); row-gap: var(--gap-card);
    }
    .board-section > h1, .board-section > h2 { grid-column: 1 / -1; }
    .board-section > .filters { grid-column: 1; grid-row: 2 / span 2; position: sticky; top: var(--gap-section); }
    .board-section > .board { grid-column: 2; grid-row: 2; }
    .board-section > .board-empty { grid-column: 2; grid-row: 3; }
}
.admin {
    --admin-ink: #241f4d;
    --admin-ink-soft: #5d5885;
    --admin-line: #e2dff0;
    --admin-ground: #faf9fd;
    --admin-surface: #ffffff;
    --admin-accent: #332f6e;
    --admin-accent-soft: #efecf9;
    --admin-done: #2f6b4f;
    --admin-done-soft: #e6f2ec;
    --admin-alarm: #9c3324;
    --admin-alarm-ink: #5c1d13;
    --admin-alarm-soft: #fdf0ed;
    margin: 0; background: var(--admin-ground); color: var(--admin-ink);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
    font-size: 17px; line-height: 1.5;
}
.admin main { margin: 0 auto; display: flex; flex-direction: column; gap: 1rem; }
.admin main.narrow { max-width: 34rem; padding: 2rem 1.25rem 5rem; gap: 1.25rem; }
.admin main.console { max-width: 82rem; padding: 1.5rem 1.5rem 4rem; }
@media (max-width: 40rem) { .admin main.console { padding-inline: 1rem; } }
.admin h1, .admin h2 { font-family: inherit; color: inherit; text-wrap: balance; }
.admin h1 { font-size: 1.6rem; font-weight: 700; line-height: 1.2; letter-spacing: -0.02em; }
.admin h2 { font-size: 1.05rem; font-weight: 700; line-height: 1.3; }
.admin p { margin: 0; }
.admin .muted { color: var(--admin-ink-soft); font-size: 0.95rem; }
.admin code, .admin .mono { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 0.85em; }
.admin a { color: var(--admin-accent); text-decoration: underline; text-underline-offset: 2px; padding-block: 0.75rem; }
.admin a:hover { color: var(--admin-ink); }
.admin a:focus-visible, .admin button:focus-visible { outline: 2px solid var(--admin-accent); outline-offset: 2px; }
.admin nav.crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 0.25rem 0.75rem; }
.admin nav.crumbs > .muted { margin-left: auto; font-size: 0.9rem; }
.admin nav.crumbs button { min-height: 2.75rem; padding: 0.35rem 0.9rem; font-size: 0.85rem; }
.admin .panel {
    background: var(--admin-surface); border: 1px solid var(--admin-line); border-radius: 14px;
    padding: 1.1rem 1.2rem; display: flex; flex-direction: column; gap: 0.8rem; min-width: 0;
}
.admin .panel > p:empty { display: none; }
.admin .stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(8.5rem, 1fr)); gap: 0.75rem; }
.admin .stat { display: flex; flex-direction: column; gap: 0.1rem; font-size: 0.9rem; font-weight: 600; }
.admin .stat b { font-size: 2.1rem; font-weight: 800; line-height: 1.05; letter-spacing: -0.03em; font-variant-numeric: tabular-nums; }
.admin .table-wrap { overflow-x: auto; }
.admin table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.admin th {
    text-align: left; font-size: 0.8rem; color: var(--admin-ink-soft); font-weight: 700;
    padding: 0 0.6rem 0.45rem 0; border-bottom: 1px solid var(--admin-line); white-space: nowrap;
}
.admin td { padding: 0.5rem 0.6rem 0.5rem 0; border-bottom: 1px solid var(--admin-line); vertical-align: baseline; }
.admin tr:last-child td { border-bottom: none; }
.admin td.num, .admin th.num { text-align: right; font-variant-numeric: tabular-nums; padding-right: 1.2rem; }
.admin td code, .admin td:last-child { white-space: nowrap; }
.admin .notice { background: var(--admin-accent-soft); border-radius: 10px; padding: 1rem; }
.admin .notice.good { background: var(--admin-done-soft); box-shadow: inset 0 0 0 1px var(--admin-done); }
.admin .notice.good .muted { color: var(--admin-done); }
.admin .notice.bad { background: var(--admin-alarm-soft); box-shadow: inset 0 0 0 2px var(--admin-alarm); color: var(--admin-alarm-ink); border-radius: 12px; }
.admin .pill { display: inline-block; font-size: 0.8rem; font-weight: 700; border-radius: 999px; padding: 0.15rem 0.6rem; white-space: nowrap; background: var(--admin-accent-soft); color: var(--admin-accent); }
.admin .pill.on { background: var(--admin-done-soft); color: var(--admin-done); }
.admin .pill.off { background: var(--admin-ground); color: var(--admin-ink-soft); box-shadow: inset 0 0 0 1px var(--admin-line); }
.admin .pill.warn { background: var(--admin-alarm-soft); color: var(--admin-alarm); }
.admin form.inline { display: inline; }
.admin button, .admin .btn {
    font: inherit; font-weight: 600; min-height: 3rem; padding: 0.9rem 1rem; border-radius: 10px;
    border: 1px solid var(--admin-line); background: var(--admin-surface); color: var(--admin-accent); cursor: pointer;
}
.admin button.primary { background: var(--admin-accent); border-color: transparent; color: #fff; }
.admin button.danger { border-color: var(--admin-alarm); color: var(--admin-alarm); }
.admin button:disabled { opacity: 0.55; cursor: default; }
.admin td button { min-height: 2.75rem; padding: 0.3rem 0.7rem; font-size: 0.85rem; white-space: nowrap; }
.admin input[type=email], .admin input[type=password], .admin select, .admin textarea {
    font: inherit; font-size: 17px; width: 100%; max-width: 100%; padding: 0.9rem 1rem;
    border: 1px solid var(--admin-ink-soft); border-radius: 10px; background: var(--admin-surface); color: var(--admin-ink);
}
.admin select { width: auto; min-height: 3rem; padding: 0.5rem 0.75rem; }
.admin textarea { min-height: 5.5rem; resize: vertical; }
.admin input:focus-visible, .admin select:focus-visible, .admin textarea:focus-visible { outline: 2px solid var(--admin-accent); outline-offset: 1px; }
.admin input[type=checkbox] { width: 1.1rem; height: 1.1rem; accent-color: var(--admin-accent); vertical-align: -0.15rem; }
.admin label { display: block; font-weight: 600; font-size: 0.95rem; margin: 0.25rem 0 0.35rem; }
.admin label.inline { display: inline-flex; align-items: center; gap: 0.35rem; min-height: 2.75rem; margin: 0 0.4rem 0 0; font-weight: 400; }
.admin .row { display: flex; gap: 0.75rem; flex-wrap: wrap; align-items: center; margin: 0.75rem 0 0; }
.admin .login { display: flex; flex-direction: column; gap: 0.75rem; }
.admin .login form { display: flex; flex-direction: column; }
.admin .login .row button { flex: 1; }
.board-empty{display:none}
.board-section:has(#f-engineering:checked) .role:not([data-f="engineering"]){display:none}
.board-section:has(#f-product:checked) .role:not([data-f="product"]){display:none}
.board-section:has(#f-design:checked) .role:not([data-f="design"]){display:none}
.board-section:has(#f-data-ai:checked) .role:not([data-f="data-ai"]){display:none}
.board-section:has(#f-marketing-growth:checked) .role:not([data-f="marketing-growth"]){display:none}
.board-section:has(#l-senior-ic:checked) .role:not([data-l="senior-ic"]){display:none}
.board-section:has(#l-lead-manager:checked) .role:not([data-l="lead-manager"]){display:none}
.board-section:has(#l-head-director:checked) .role:not([data-l="head-director"]){display:none}
.board-section:has(#l-vp:checked) .role:not([data-l="vp"]){display:none}
.board-section:has(#l-c-level:checked) .role:not([data-l="c-level"]){display:none}
.board-section:has(#f-all:checked):has(#l-all:checked) .board-empty[data-f="all"][data-l="all"]{display:block}
.board-section:has(#f-all:checked):has(#l-senior-ic:checked) .board-empty[data-f="all"][data-l="senior-ic"]{display:block}
.board-section:has(#f-all:checked):has(#l-lead-manager:checked) .board-empty[data-f="all"][data-l="lead-manager"]{display:block}
.board-section:has(#f-all:checked):has(#l-head-director:checked) .board-empty[data-f="all"][data-l="head-director"]{display:block}
.board-section:has(#f-all:checked):has(#l-vp:checked) .board-empty[data-f="all"][data-l="vp"]{display:block}
.board-section:has(#f-all:checked):has(#l-c-level:checked) .board-empty[data-f="all"][data-l="c-level"]{display:block}
.board-section:has(#f-engineering:checked):has(#l-all:checked) .board-empty[data-f="engineering"][data-l="all"]{display:block}
.board-section:has(#f-engineering:checked):has(#l-senior-ic:checked) .board-empty[data-f="engineering"][data-l="senior-ic"]{display:block}
.board-section:has(#f-engineering:checked):has(#l-lead-manager:checked) .board-empty[data-f="engineering"][data-l="lead-manager"]{display:block}
.board-section:has(#f-engineering:checked):has(#l-head-director:checked) .board-empty[data-f="engineering"][data-l="head-director"]{display:block}
.board-section:has(#f-engineering:checked):has(#l-vp:checked) .board-empty[data-f="engineering"][data-l="vp"]{display:block}
.board-section:has(#f-engineering:checked):has(#l-c-level:checked) .board-empty[data-f="engineering"][data-l="c-level"]{display:block}
.board-section:has(#f-product:checked):has(#l-all:checked) .board-empty[data-f="product"][data-l="all"]{display:block}
.board-section:has(#f-product:checked):has(#l-senior-ic:checked) .board-empty[data-f="product"][data-l="senior-ic"]{display:block}
.board-section:has(#f-product:checked):has(#l-lead-manager:checked) .board-empty[data-f="product"][data-l="lead-manager"]{display:block}
.board-section:has(#f-product:checked):has(#l-head-director:checked) .board-empty[data-f="product"][data-l="head-director"]{display:block}
.board-section:has(#f-product:checked):has(#l-vp:checked) .board-empty[data-f="product"][data-l="vp"]{display:block}
.board-section:has(#f-product:checked):has(#l-c-level:checked) .board-empty[data-f="product"][data-l="c-level"]{display:block}
.board-section:has(#f-design:checked):has(#l-all:checked) .board-empty[data-f="design"][data-l="all"]{display:block}
.board-section:has(#f-design:checked):has(#l-senior-ic:checked) .board-empty[data-f="design"][data-l="senior-ic"]{display:block}
.board-section:has(#f-design:checked):has(#l-lead-manager:checked) .board-empty[data-f="design"][data-l="lead-manager"]{display:block}
.board-section:has(#f-design:checked):has(#l-head-director:checked) .board-empty[data-f="design"][data-l="head-director"]{display:block}
.board-section:has(#f-design:checked):has(#l-vp:checked) .board-empty[data-f="design"][data-l="vp"]{display:block}
.board-section:has(#f-design:checked):has(#l-c-level:checked) .board-empty[data-f="design"][data-l="c-level"]{display:block}
.board-section:has(#f-data-ai:checked):has(#l-all:checked) .board-empty[data-f="data-ai"][data-l="all"]{display:block}
.board-section:has(#f-data-ai:checked):has(#l-senior-ic:checked) .board-empty[data-f="data-ai"][data-l="senior-ic"]{display:block}
.board-section:has(#f-data-ai:checked):has(#l-lead-manager:checked) .board-empty[data-f="data-ai"][data-l="lead-manager"]{display:block}
.board-section:has(#f-data-ai:checked):has(#l-head-director:checked) .board-empty[data-f="data-ai"][data-l="head-director"]{display:block}
.board-section:has(#f-data-ai:checked):has(#l-vp:checked) .board-empty[data-f="data-ai"][data-l="vp"]{display:block}
.board-section:has(#f-data-ai:checked):has(#l-c-level:checked) .board-empty[data-f="data-ai"][data-l="c-level"]{display:block}
.board-section:has(#f-marketing-growth:checked):has(#l-all:checked) .board-empty[data-f="marketing-growth"][data-l="all"]{display:block}
.board-section:has(#f-marketing-growth:checked):has(#l-senior-ic:checked) .board-empty[data-f="marketing-growth"][data-l="senior-ic"]{display:block}
.board-section:has(#f-marketing-growth:checked):has(#l-lead-manager:checked) .board-empty[data-f="marketing-growth"][data-l="lead-manager"]{display:block}
.board-section:has(#f-marketing-growth:checked):has(#l-head-director:checked) .board-empty[data-f="marketing-growth"][data-l="head-director"]{display:block}
.board-section:has(#f-marketing-growth:checked):has(#l-vp:checked) .board-empty[data-f="marketing-growth"][data-l="vp"]{display:block}
.board-section:has(#f-marketing-growth:checked):has(#l-c-level:checked) .board-empty[data-f="marketing-growth"][data-l="c-level"]{display:block}
