/* Chapter — Open GTM Positions
   Themed with the Chapter design system (tokens: warm paper/ink, indigo accent,
   Newsreader serif display + Hanken Grotesk UI, soft radii, warm low shadows). */
@import url('https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;0,6..72,600;1,6..72,400;1,6..72,500&family=Hanken+Grotesk:wght@400;500;600;700&display=swap');

/* Chapter runs DARK by default (updated CI: neutral near-black, indigo, dot grid). */
:root{
  --paper:#0B0B0C; --paper-raised:#141416; --paper-sunken:#070708;
  --greige:#1A1A1D; --greige-deep:#26262A;
  --ink:#F4F3F0; --ink-2:#B7B6B2; --ink-3:#7E7D79; --ink-4:#545350;
  --hairline:rgba(244,243,240,0.10); --hairline-strong:rgba(244,243,240,0.18);
  --accent:#5B4FE6; --accent-soft:#7C70F0; --accent-tint:#16152A; --accent-contrast:#FBFAFF;
  --clay:#D9754C; --clay-soft:#E6926B; --clay-tint:rgba(217,117,76,0.15);
  --surface-inverse:#0B0B0C; --text-on-inverse:#F4F3F0;
  --dot-color:rgba(244,243,240,0.11); --dot-size:22px;

  --bg:var(--paper); --panel:var(--paper-raised); --line:var(--hairline); --muted:var(--ink-3);
  --signed:var(--accent-soft);   --signed-bg:var(--accent-tint);
  --verbal:var(--clay-soft);     --verbal-bg:var(--clay-tint);
  --target:var(--ink-2);         --target-bg:var(--greige);
  --grey:var(--ink-3);           --grey-bg:var(--greige);
  --new:var(--accent-contrast);  --new-bg:var(--accent-soft);

  --font-serif:'Newsreader','Iowan Old Style',Georgia,serif;
  --font-sans:'Hanken Grotesk',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  --radius:12px;
  --shadow:0 2px 10px rgba(0,0,0,.40);
  --shadow-pop:0 12px 40px rgba(0,0,0,.55);
}

/* Optional light inversion (neutral, not cream). Toggle in the header. */
[data-theme="light"]{
  --paper:#FFFFFF; --paper-raised:#FFFFFF; --paper-sunken:#F3F3F4;
  --greige:#EDEDEF; --greige-deep:#E2E2E5;
  --ink:#131318; --ink-2:#45454B; --ink-3:#77767C; --ink-4:#A6A5AB;
  --hairline:rgba(19,19,24,0.10); --hairline-strong:rgba(19,19,24,0.18);
  --accent:#5B4FE6; --accent-soft:#4a3ee0; --accent-tint:#ECEAFB; --accent-contrast:#FFFFFF;
  --clay:#B0512B; --clay-soft:#B0512B; --clay-tint:#F3E7DF;
  --dot-color:rgba(19,19,24,0.07);
  --signed:var(--accent);        --signed-bg:var(--accent-tint);
  --verbal:var(--clay);          --verbal-bg:var(--clay-tint);
  --target:var(--ink-2);         --target-bg:var(--greige);
  --grey:var(--ink-3);           --grey-bg:var(--paper-sunken);
  --new:var(--accent-contrast);  --new-bg:var(--accent);
  --shadow:0 2px 8px rgba(19,19,24,.06); --shadow-pop:0 10px 34px rgba(19,19,24,.14);
}
*{box-sizing:border-box}
body{margin:0;color:var(--ink);
  font:17px/1.55 var(--font-sans);-webkit-font-smoothing:antialiased;
  background-color:var(--bg);
  background-image:radial-gradient(var(--dot-color) 1px, transparent 1.5px);
  background-size:var(--dot-size) var(--dot-size);
  background-position:-1px -1px}
h1{font-family:var(--font-serif);font-size:2.375rem;line-height:1.14;letter-spacing:-.01em;
  margin:6px 0 0;font-weight:600;color:var(--ink)}
.sub{margin:6px 0 0;color:var(--ink-3);font-size:15px}

.topbar{display:flex;justify-content:space-between;align-items:flex-end;
  padding:26px 40px 22px;background:var(--paper-raised);border-bottom:1px solid var(--line)}
.brand{display:flex;flex-direction:column}
.wordmark{font-family:var(--font-serif);font-weight:600;font-size:20px;letter-spacing:-.02em;
  color:var(--ink);line-height:1}
.pill{background:var(--paper-sunken);color:var(--ink-3);padding:6px 13px;border-radius:999px;
  font-size:12px;letter-spacing:.02em;border:1px solid var(--line)}
.meta{display:flex;align-items:center;gap:12px}
.theme-toggle{width:34px;height:34px;border-radius:999px;border:1px solid var(--line);
  background:var(--paper-raised);color:var(--ink-2);cursor:pointer;font-size:15px;line-height:1;
  display:flex;align-items:center;justify-content:center}
.theme-toggle:hover{background:var(--paper-sunken)}

.stats{display:flex;gap:14px;flex-wrap:wrap;padding:22px 40px 0}
.stat{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);
  padding:14px 18px;min-width:132px;box-shadow:var(--shadow)}
.stat .n{font-family:var(--font-serif);font-size:2rem;font-weight:600;letter-spacing:-.01em;line-height:1}
.stat .l{color:var(--ink-3);font-size:12px;margin-top:4px}

.controls{padding:16px 24px;margin:20px 40px 0;background:var(--panel);
  border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.viewtabs{display:inline-flex;gap:2px;background:var(--paper-sunken);border:1px solid var(--line);
  border-radius:999px;padding:3px;margin-bottom:14px}
.viewtab{border:none;background:none;padding:7px 16px;border-radius:999px;cursor:pointer;
  font-size:13px;font-weight:600;color:var(--ink-3);font-family:var(--font-sans)}
.viewtab.on{background:var(--panel);color:var(--ink);box-shadow:var(--shadow)}
.ctrl-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.co-search{padding:10px 13px;border:1px solid var(--line);border-radius:8px;min-width:210px;
  font-size:14px;font-family:var(--font-sans);background:var(--paper-raised);color:var(--ink)}
.co-search::placeholder{color:var(--ink-4)}
.sortwrap{font-size:13px;color:var(--ink-3);display:flex;align-items:center;gap:7px}
select{padding:9px 11px;border:1px solid var(--line);border-radius:8px;font-size:14px;
  background:var(--paper-raised);color:var(--ink);font-family:var(--font-sans)}

.dd{position:relative}
.dd-btn{display:flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid var(--line);
  background:var(--paper-raised);border-radius:8px;cursor:pointer;font-size:14px;color:var(--ink);white-space:nowrap}
.dd-btn:hover{background:var(--paper-sunken)}
.dd-btn.has{border-color:var(--accent);color:var(--accent);background:var(--accent-tint);font-weight:600}
.dd-btn .caret{color:var(--ink-4);font-size:10px}
.dd-pop{position:absolute;top:calc(100% + 6px);left:0;z-index:30;background:var(--paper-raised);
  border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-pop);
  padding:6px;min-width:210px;max-height:290px;overflow:auto}
.dd-opt{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:8px;cursor:pointer;font-size:14px}
.dd-opt:hover{background:var(--paper-sunken)}
.dd-opt input{accent-color:var(--accent);width:15px;height:15px}

.newtoggle{padding:10px 13px;border:1px solid var(--line);background:var(--paper-raised);border-radius:8px;
  cursor:pointer;font-size:13px;font-weight:600;color:var(--ink);font-family:var(--font-sans);white-space:nowrap}
.newtoggle:hover{background:var(--paper-sunken)}
.newtoggle.on{background:var(--new-bg);color:var(--new);border-color:var(--new-bg)}
.newtoggle:disabled{opacity:.45;cursor:default}
.reset{padding:10px 15px;border:1px solid var(--line);background:var(--paper-raised);border-radius:8px;
  cursor:pointer;font-size:14px;color:var(--ink-3);font-family:var(--font-sans)}
.reset:hover{background:var(--paper-sunken)}
.linkbtn{background:none;border:none;color:var(--accent);cursor:pointer;font-size:14px;font-weight:600;font-family:var(--font-sans)}

.active-filters{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.active-filters:empty{margin-top:0}
.afchip{display:inline-flex;align-items:center;gap:5px;background:var(--accent-tint);color:var(--accent);
  border:1px solid var(--accent);border-radius:999px;padding:3px 6px 3px 12px;font-size:12px;font-weight:600}
.afx{border:none;background:none;color:var(--accent);cursor:pointer;font-size:15px;line-height:1;padding:0 3px}

.resultbar{display:flex;justify-content:space-between;align-items:center;padding:16px 44px 4px}
#count{color:var(--ink-3);font-size:14px}

main{padding:6px 40px 48px;overflow-x:auto}
.groouphdr{margin:22px 4px 8px;font-size:12px;font-weight:700;color:var(--ink-3);
  text-transform:uppercase;letter-spacing:.14em}
.statushdr{display:flex;align-items:center;gap:12px;margin:30px 4px 8px;
  padding-bottom:8px;border-bottom:1.5px solid var(--hairline-strong)}
.statushdr .badge{font-size:13px;padding:5px 13px}
.statushdr-n{color:var(--ink-3);font-size:13px;font-family:var(--font-serif);font-style:italic}
.tierhdr{margin:16px 4px 6px;font-size:11px;font-weight:700;color:var(--ink-3);
  text-transform:uppercase;letter-spacing:.14em}

table{width:100%;min-width:1160px;border-collapse:separate;border-spacing:0;background:var(--panel);
  border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
td.role,td.role a{white-space:normal;word-break:break-word}
thead th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.1em;
  color:var(--ink-3);background:var(--paper-sunken);padding:11px 15px;border-bottom:1px solid var(--line);
  cursor:pointer;white-space:nowrap;font-weight:700}
tbody td{padding:12px 15px;border-bottom:1px solid var(--line);vertical-align:middle;font-size:14px}
tbody tr:last-child td{border-bottom:none}
tbody tr:hover{background:var(--paper-sunken)}
.days{font-weight:700;font-variant-numeric:tabular-nums;font-family:var(--font-serif);font-size:16px}
.days small{display:block;font-weight:400;color:var(--ink-3);font-size:10px;font-family:var(--font-sans)}
.days.unknown{color:var(--ink-4)}
.days.unknown small{color:var(--clay)}
.co{display:flex;align-items:center;gap:10px;min-width:150px}
.co img,.co .ini{width:26px;height:26px;border-radius:6px;object-fit:contain;background:#fff;border:1px solid var(--line)}
.co .ini{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--ink-3);background:var(--greige)}
.co .nm{font-weight:600;color:var(--ink)}
.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;white-space:nowrap;letter-spacing:.01em}
.b-signed{color:var(--signed);background:var(--signed-bg)}
.b-verbal{color:var(--verbal);background:var(--verbal-bg)}
.b-target{color:var(--target);background:var(--target-bg)}
.b-other{color:var(--grey);background:var(--grey-bg)}
.b-new{color:var(--new);background:var(--new-bg);margin-left:6px;letter-spacing:.06em}
.func{color:var(--ink-2);font-weight:600}
.lvl-tag{display:inline-block;padding:2px 9px;border-radius:999px;font-size:10px;
  font-weight:700;letter-spacing:.03em;color:var(--accent);background:var(--accent-tint);
  border:1px solid var(--accent);vertical-align:middle}
.lvl-ic{display:inline-block;padding:2px 9px;border-radius:999px;font-size:10px;font-weight:600;
  letter-spacing:.03em;color:var(--ink-3);background:var(--grey-bg)}
.lvl-both-wrap{display:inline-flex;gap:5px;align-items:center}
.city{color:var(--ink)}
.rm{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600}
.rm-remote{color:var(--accent);background:var(--accent-tint)}
.rm-hybrid{color:var(--clay);background:var(--clay-tint)}
.rm-onsite{color:var(--ink-3);background:var(--grey-bg)}

.cohdr{display:flex;align-items:center;gap:12px;margin:26px 4px 8px;padding-bottom:8px;
  border-bottom:1.5px solid var(--hairline-strong)}
.cohdr .co img,.cohdr .co .ini{width:30px;height:30px}
.cohdr .conm{font-family:var(--font-serif);font-size:20px;font-weight:600;letter-spacing:-.01em;color:var(--ink)}
.cohdr-n{color:var(--ink-3);font-size:13px;font-family:var(--font-serif);font-style:italic;margin-left:auto}
.role a{color:var(--ink);text-decoration:none;font-weight:500}
.role a:hover{color:var(--accent);text-decoration:underline}
.reg{color:var(--ink-3);font-size:13px}

.pending{margin:12px 40px 30px}
.pendhead{width:100%;text-align:left;background:var(--panel);border:1px dashed var(--hairline-strong);
  border-radius:var(--radius);padding:13px 16px;cursor:pointer;color:var(--ink-3);font-size:14px;font-family:var(--font-sans)}
.outdated-head{border:1px solid var(--clay);color:var(--clay);background:var(--clay-tint)}
.pendlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px;margin-top:10px}
.pendcard{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:11px 13px;font-size:13px}
.pendcard .pc-top{display:flex;justify-content:space-between;gap:8px;align-items:center}
.pendcard a{color:var(--accent);text-decoration:none}
.pendcard .rs{color:var(--ink-3);font-size:11px;margin-top:3px}

footer{padding:0 40px 44px;color:var(--ink-3);font-size:13px}
footer code{background:var(--paper-sunken);padding:1px 6px;border-radius:4px;font-size:12px}
@media(max-width:640px){.controls{padding:14px}.stats{padding:16px 20px 0}.topbar{padding:20px}}

/* Verification flag on each role (Denis's status ask, 2026-07-16) */
.vflag{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;
  border-radius:50%;font-size:11px;font-weight:700;margin-left:7px;vertical-align:middle;cursor:help;
  flex:0 0 auto;line-height:1;}
.v-ok{background:rgba(16,159,110,.14);color:var(--good,#0E9F6E);}
.v-unsure{background:rgba(180,83,9,.16);color:var(--warn,#B45309);}
[data-theme="dark"] .v-ok{color:#34D399;background:rgba(52,211,153,.15);}
[data-theme="dark"] .v-unsure{color:#FBBF24;background:rgba(251,191,36,.16);}
