
:root {
  color-scheme: dark;
  --t-display:clamp(2.1rem, 5.6vw, 3.6rem); --t-hero:clamp(1.6rem, 4.5vw, 2.4rem); --t-title:1.15rem; --t-brand:1.5rem; --t-body:1rem;
  --t-meta:.9rem; --t-label:.8rem;
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px;
  --r-card:12px; --r-ctl:10px; --r-pill:999px; --tap:44px; --tap-lg:48px;
  --bg:#0B0C15; --panel:#12142A; --panel-2:#191C38; --line:#20223D; --line-2:#363964;
  --ink:#F3F2FF; --dim:#BDB8DC; --faint:#9691BA;
  --accent:#7C3AED; --accent-soft:#2A1B54; --link:#B9A6F5;
  --good:#7FD6AC; --good-line:#2E7D5B; --warn:#E8C464; --warn-line:#8A6D1F;
  --info:#9DBBF5; --info-line:#3D5A99;
  --locked:#C7B4FF; --locked-line:#4B3A86; --locked-bg:#1C1435;
}
@font-face { font-family:"Space Grotesk"; src:url(/assets/space-grotesk.woff2) format("woff2"); font-weight:300 700; font-style:normal; font-display:swap; }
* { box-sizing: border-box; margin: 0; }
body { background:var(--bg); color:var(--ink); font-family:"Space Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:16px; line-height:1.5; padding-bottom:env(safe-area-inset-bottom); -webkit-font-smoothing:antialiased; }
button, input, select, textarea { font-family:inherit; font-size:var(--t-body); }
a { color:var(--link); text-underline-offset:2px; }
h1 { font-size:var(--t-hero); letter-spacing:-0.02em; line-height:1.15; margin-bottom:var(--s2); font-weight:700; }
h2 { font-size:var(--t-title); color:var(--ink); font-weight:600; margin:var(--s6) 0 var(--s2); letter-spacing:-0.01em; }
h3 { font-size:var(--t-body); margin:var(--s4) 0 var(--s1); }
p { margin:var(--s2) 0; }
table { width:100%; border-collapse:collapse; font-size:var(--t-body); font-variant-numeric:tabular-nums; }
td,th { padding:var(--s2); border-bottom:1px solid var(--line); text-align:left; }
.tablewrap { overflow-x:auto; }
ul.plain { list-style:none; padding:0; }
main { max-width:52rem; margin:0 auto; padding:var(--s4) var(--s4) var(--s7); min-width:0; width:100%; }
main.wide { max-width:none; }
@media (min-width: 60rem) {
  main { padding:var(--s5) var(--s6) var(--s7); }
  .cols { display:grid; grid-template-columns:minmax(0, 48rem) minmax(20rem, 30rem); justify-content:space-between; gap:var(--s6); align-items:start; }
  .cols > .main { grid-column:1; grid-row:1; min-width:0; }
  .cols > aside { grid-column:2; grid-row:1; position:sticky; top:calc(var(--tap) + 2 * var(--s2) + 1px + var(--s4)); min-width:0; }
  .cols > aside h2:first-child { margin-top:0; }
}
a.skip { position:absolute; left:-999px; top:8px; z-index:1; background:var(--accent); color:#fff;
  padding:var(--s3) var(--s4); border-radius:var(--r-ctl); text-decoration:none; }
a.skip:focus { left:16px; }
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline:2px solid var(--link); outline-offset:2px; border-radius:var(--s1); }
body { display:grid; grid-template-columns:minmax(0,1fr); }
header { display:flex; flex-wrap:wrap; gap:var(--s2) var(--s3); align-items:center; padding:var(--s2) var(--s4); border-bottom:1px solid var(--line);
  background:rgba(11,12,21,.92); position:sticky; top:0; z-index:3; }
header a { min-height:var(--tap); display:inline-flex; align-items:center; }
header a.brand { font-size:var(--t-title); font-weight:700; text-decoration:none; color:var(--ink); gap:var(--s2); letter-spacing:-0.02em; }
header a.brand .mark { display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; border-radius:8px;
  background:var(--accent); color:#fff; font-weight:700; font-size:var(--t-title); letter-spacing:-0.06em; line-height:1; }
header a.brand .eq { color:var(--accent); }
header nav { order:3; flex:1 0 100%; display:flex; align-items:center; gap:var(--s1); }
header nav a { min-height:var(--tap); display:inline-flex; align-items:center; gap:var(--s2); padding:0 var(--s3);
  border-radius:var(--r-ctl); color:var(--dim); text-decoration:none; font-size:var(--t-body); }
header nav a:hover { background:var(--panel-2); color:var(--ink); }
header nav a[aria-current="true"] { background:var(--accent-soft); color:var(--ink); font-weight:600; }
header .who { margin-left:auto; display:flex; align-items:center; }
header .who a { text-decoration:none; gap:var(--s2); color:var(--ink); }
header .who a.signin { border:1px solid var(--accent); background:var(--accent-soft); border-radius:var(--r-pill); padding:0 var(--s4); color:var(--ink); font-weight:600; }
header .who a.signin:hover { background:var(--accent); }
header .who .avatar { width:32px; height:32px; border-radius:50%; background:var(--accent); color:#fff; font-weight:700;
  display:inline-flex; align-items:center; justify-content:center; font-size:var(--t-body); overflow:hidden; object-fit:cover; flex:0 0 auto; }
header .who .name { max-width:9rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
header .who form.preview { margin-right:var(--s2); }
header .who form.preview button { font-size:var(--t-label); line-height:1.3; padding:var(--s1) var(--s3); max-width:11rem; text-align:left; }
header .who form.preview.on button { box-shadow:inset 0 0 0 1px var(--accent); background:var(--accent-soft); color:var(--ink); }
header .hsearch { order:4; flex:1 0 100%; }
header form.search { margin:0; }
header form.search input { min-height:var(--tap); }
main { padding-bottom:var(--s7); }
@media (max-width: 45rem) { header { position:static; } }
@media (min-width: 45rem) {
  header { flex-wrap:nowrap; gap:var(--s4); }
  header nav { order:0; flex:0 1 auto; }
  header .hsearch { order:0; flex:1 1 auto; max-width:40rem; margin-left:auto; }
  header .who { margin-left:0; }
}
footer { padding:var(--s5) var(--s4) calc(var(--s5) + env(safe-area-inset-bottom)); color:var(--faint); font-size:var(--t-meta);
  border-top:1px solid var(--line); margin-top:var(--s5); }
footer nav { display:flex; flex-wrap:wrap; gap:0 var(--s6); max-width:96rem; margin:0 auto var(--s3); }
footer nav div { display:flex; flex-wrap:wrap; align-items:center; gap:0 var(--s3); }
footer nav strong { color:var(--dim); margin-right:var(--s1); }
footer nav a { display:inline-flex; align-items:center; min-height:var(--tap); font-size:var(--t-body); color:var(--dim); text-decoration:none; }
footer nav a:hover { color:var(--ink); text-decoration:underline; }
footer p { max-width:96rem; margin:0 auto; }
.crumbs { font-size:var(--t-meta); color:var(--faint); margin-bottom:var(--s1); }
.crumbs a { color:var(--dim); display:inline-flex; align-items:center; min-height:var(--tap); position:relative; }
.crumbs a::before { content:""; position:absolute; inset:0 -6px; }
.pager { display:flex; gap:var(--s3); align-items:center; margin:var(--s5) 0; flex-wrap:wrap; }
.pager a, .pager span { display:inline-flex; align-items:center; min-height:var(--tap); padding:0 var(--s4); border-radius:var(--r-ctl);
  border:1px solid var(--line-2); background:var(--panel); text-decoration:none; }
.pager span { color:var(--faint); border-style:dashed; }
.pager form.jump { display:inline-flex; align-items:center; gap:var(--s2); }
.pager form.jump label { display:inline-flex; align-items:center; gap:var(--s2); color:var(--dim); font-size:var(--t-meta); }
.pager form.jump select { min-height:var(--tap); font-size:var(--t-body); padding:0 var(--s2); border-radius:var(--r-ctl); border:1px solid var(--line-2); background:var(--panel); color:var(--ink); }
p.lateral { margin:var(--s1) 0 var(--s3); }
p.lateral a { display:inline-flex; align-items:center; min-height:var(--tap); }
.card { background:var(--panel); border:1px solid var(--line); border-radius:var(--r-card); padding:var(--s3) var(--s4); margin:var(--s3) 0;
  overflow-wrap:anywhere; transition:border-color .15s ease; }
article.card:hover, .hub .card:hover { border-color:var(--line-2); }
.card a.title { text-decoration:none; }
.card a.title:hover { text-decoration:underline; }
.card a.title { font-size:var(--t-title); font-weight:600; min-height:var(--tap); display:flex; align-items:center; }
.meta { color:var(--dim); font-size:var(--t-body); }
.card .meta, .posthead { line-height:1.8; }
.card .meta + .meta { margin-top:var(--s1); }
.card .meta.when { margin-top:var(--s1); }
.card .meta a:not(.action), .posthead a { display:inline-flex; align-items:center; min-height:44px; margin:-8px 0; max-width:100%; }
.meta > a:only-child:not(.action):not(.apply) { display:inline-flex; align-items:center; min-height:44px; margin:-8px 0; max-width:100%; }
.teaser { margin-top:var(--s2); font-size:var(--t-body); color:var(--ink); }
.why { margin-top:var(--s2); font-size:var(--t-body); color:var(--dim); }
.card.urgent { border-color:var(--warn-line); }
.due { color:var(--warn); font-weight:600; }
.gone { color:var(--faint); }
.rolling { color:var(--dim); }
.tag { display:inline-block; font-size:var(--t-meta); padding:0 var(--s2); border-radius:var(--r-pill); border:1px solid var(--line-2); color:var(--dim); }
.tag.prog { background:var(--panel-2); }
.badge { display:inline-block; font-size:var(--t-meta); padding:0 var(--s2); border-radius:var(--r-pill); border:1px solid var(--line-2); color:var(--dim); margin-right:var(--s2); }
.badge a { display:inline-block; padding:12px 4px; margin:-12px -4px; }
.badge.ok, .badge.cited { border-color:var(--good-line); color:var(--good); }
.badge.info, .badge.aggregate { border-color:var(--info-line); color:var(--info); }
.badge.warn, .badge.inference { border-color:var(--warn-line); color:var(--warn); }
.badge.aged { border-color:var(--warn-line); color:var(--warn); background:#241D07;
  padding:var(--s1) var(--s2); border-radius:var(--r-ctl); }
.split { display:block; }
.split-main { min-width:0; }
.rider { background:var(--panel); border:1px solid var(--line-2); border-radius:var(--r-card); padding:var(--s4);
  margin:0 0 var(--s4); overflow-wrap:anywhere; }
.rider .rider-head { display:flex; align-items:center; justify-content:space-between; gap:var(--s2); }
.rider .kind { font-size:var(--t-label); letter-spacing:.06em; color:var(--faint); font-weight:600; }
.rider a.close { color:var(--dim); text-decoration:none; min-height:var(--tap); display:inline-flex; align-items:center; padding:0 var(--s2); margin-right:calc(-1 * var(--s2)); }
.rider a.close:hover { color:var(--ink); }
.rider h2 { margin:var(--s1) 0 var(--s1); font-size:var(--t-title); line-height:1.2; }
.rider h3 { font-size:var(--t-label); letter-spacing:.06em; color:var(--faint); font-weight:600; margin:var(--s4) 0 var(--s1); }
.rider .rider-actions { display:flex; flex-wrap:wrap; gap:var(--s2); margin:var(--s2) 0 var(--s1); }
.rider .rider-actions a.action { margin-top:0; }
.rider .dt { margin:0; }
.rider .dt.facts th[scope="row"] { width:42%; padding-left:0; }
.rider .dt.facts td { padding-right:0; }
.rider .apply { display:inline-flex; }
.rider .facts-grid { grid-template-columns:minmax(0,1fr); margin:var(--s2) 0; }
.rider .block { margin:var(--s2) 0; }
.est { color:var(--faint); font-size:var(--t-meta); display:block; }
.obj-who { margin:var(--s1) 0 0; font-size:var(--t-body); }
.rider .gate { margin:var(--s3) 0 0; }
@media (max-width: 59.99rem) {
  .split { display:flex; flex-direction:column; }
  .split .rider { order:-1; }
}
@media (min-width: 60rem) {
  .split.open { display:grid; grid-template-columns:minmax(0,1fr) clamp(24rem, 36vw, 34rem); gap:var(--s5); align-items:start; }
  .split.open .dt th.num, .split.open .dt td.num { width:1%; }
  .split.open .dt td.p { min-width:13rem; }
  .split.open .rider { position:sticky; top:var(--s4); max-height:calc(100vh - var(--s5)); overflow-y:auto; }
}
.obj-head { margin:0 0 var(--s5); padding-bottom:var(--s4); border-bottom:1px solid var(--line); }
.obj-kind { color:var(--faint); font-size:var(--t-label); letter-spacing:.06em; font-weight:600; margin:var(--s1) 0; }
.obj-row { display:flex; flex-wrap:wrap; gap:var(--s4); align-items:flex-end; justify-content:space-between; }
.obj-what { min-width:0; flex:1 1 28rem; }
.obj-head h1 { margin:0 0 var(--s2); }
.obj-facts { list-style:none; padding:0; margin:0; color:var(--dim); line-height:1.6; }
.obj-facts li { display:inline; }
.obj-facts li + li::before { content:"·"; margin:0 var(--s2); color:var(--faint); }
.obj-facts strong { color:var(--ink); font-weight:600; font-variant-numeric:tabular-nums; }
.obj-action { flex:0 0 auto; display:flex; flex-direction:column; gap:var(--s1); align-items:stretch; max-width:20rem; }
.obj-action > .meta { font-size:var(--t-meta); margin:0; text-align:center; }
.obj-action .apply, .obj-action .action, .obj-action form { margin:0; }
.obj-head > .meta, .obj-head > p:last-child { margin:var(--s3) 0 0; }
.obj-action .apply, .obj-action button { width:100%; justify-content:center; }
@media (max-width: 45rem) { .obj-action, .obj-action form { width:100%; max-width:none; } }
details.sec { border-top:1px solid var(--line); margin:var(--s5) 0 0; }
details.sec > summary { display:flex; align-items:center; gap:var(--s3); min-height:var(--tap-lg); padding:var(--s2) 0; cursor:pointer; list-style:none; }
details.sec > summary::-webkit-details-marker { display:none; }
details.sec > summary h2 { margin:0; }
details.sec > summary .n { color:var(--faint); font-size:var(--t-meta); font-variant-numeric:tabular-nums; }
details.sec > summary::after { content:"−"; margin-left:auto; color:var(--dim); }
details.sec:not([open]) > summary::after { content:"+"; }
details.sec > summary:hover h2 { color:var(--link); }
details.sec > .sec-body { padding:0 0 var(--s2); }
details.sec > .sec-body > .dt:first-child { margin-top:0; }
.dt { margin:var(--s3) 0 var(--s4); }
.dt table { font-size:var(--t-body); }
.dt caption { text-align:left; color:var(--dim); font-size:var(--t-meta); padding:0 0 var(--s2); caption-side:top; font-variant-numeric:tabular-nums; }
.dt th { font-size:var(--t-label); font-weight:600; color:var(--faint); white-space:nowrap; padding:var(--s2) var(--s3); border-bottom:1px solid var(--line-2);
  letter-spacing:.04em; }
.dt th a { color:var(--faint); text-decoration:none; display:inline-flex; align-items:center; min-height:var(--tap); }
.dt th a:hover { color:var(--ink); text-decoration:underline; }
.dt th[aria-sort] a { color:var(--ink); }
.dt th[aria-sort="descending"] a::after { content:" ↓"; }
.dt th[aria-sort="ascending"] a::after { content:" ↑"; }
.dt td { vertical-align:top; padding:var(--s3) var(--s3); border-bottom:1px solid var(--line); line-height:1.4; }
.dt tbody tr:nth-child(even) { background:transparent; }
.dt tbody tr:hover { background:var(--panel); }
.dt td a { color:var(--ink); text-decoration:none; }
.dt td a:hover { color:var(--link); text-decoration:underline; }
.dt td.p a { font-weight:600; }
.dt td .sub { display:block; color:var(--dim); font-size:var(--t-meta); line-height:1.3; }
.dt td .sub.nowrap { white-space:nowrap; }
.dt td .area { color:var(--dim); }
.others { margin:var(--s4) 0; line-height:2.2; }
.track-programmes .card, .track-divisions .card { display:grid; grid-template-columns:repeat(auto-fill, minmax(12rem, 1fr)); gap:0 var(--s4); }
.track-programmes .card > button, .track-divisions .card > button { grid-column:1 / -1; justify-self:start; margin-top:var(--s3); }
.dt tr.multi td { padding:var(--s2) var(--s3); }
.dt tr.group th { text-align:left; font-size:var(--t-meta); font-weight:600; color:var(--dim); padding:var(--s2) var(--s3);
  background:var(--panel); border-bottom:1px solid var(--line-2); letter-spacing:0; white-space:normal; }
.dt tr.group th a { color:var(--ink); text-decoration:none; }
.dt tr.group th a:hover { text-decoration:underline; }
.closes { display:block; font-size:var(--t-meta); color:var(--dim); white-space:nowrap; }
.closes.due { color:var(--warn); font-weight:600; }
.new { font-size:var(--t-label); color:var(--good); font-weight:600; white-space:nowrap; }
.dt td.num, .dt th.num { text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
.age { white-space:nowrap; font-variant-numeric:tabular-nums; }
.age.a7 { color:var(--good); font-weight:600; }
.age.a30 { color:var(--faint); }
.dt .gen { color:var(--faint); }
details.meta > summary { min-height:var(--tap); display:flex; align-items:center; gap:var(--s2); cursor:pointer; }
details.meta > summary::before { content:"\25B8"; }
details.meta[open] > summary::before { content:"\25BE"; }
.dt td.nil::before { content:none; }
@media (min-width: 60rem) {
  .dt .tablewrap { overflow:visible; }
  .dt thead th { position:sticky; top:calc(var(--tap) + 2 * var(--s2) + 1px); background:var(--bg); z-index:1; }
}
.dt.facts th[scope="row"] { font-weight:400; color:var(--dim); white-space:normal; width:45%; text-align:left; vertical-align:top; }
.dt.facts td { font-variant-numeric:tabular-nums; }
@media (max-width: 45rem) { .dt.facts table, .dt.facts tbody, .dt.facts tr, .dt.facts td, .dt.facts th { display:revert; width:auto; }
  .dt.facts table { display:table; width:100%; } .dt.facts td { padding:var(--s2); } .dt.facts td::before { content:none; } }
@media (max-width: 45rem) {
  .dt thead { position:absolute; left:-999px; }
  .dt table, .dt caption, .dt tbody, .dt tr { display:block; width:100%; }
  .dt tr { padding:var(--s2) 0; border-bottom:1px solid var(--line); }
  .dt tbody tr:nth-child(even) { background:transparent; }
  .dt td, .dt tr.multi td { padding:0; border:0; display:inline; }
  .dt td.p, .dt tr.multi td.p { display:block; }
  .dt td:first-child:not(.p) { float:right; margin:0 0 0 var(--s3); text-align:right; }
  .dt td:first-child.num:not(.nil)::before { content:none; }
  .dt td:not(.p) .sub { display:inline; }
  .dt td:not(.p) .sub::before { content:" · "; color:var(--faint); }
  .dt tr.group, .dt tr.group th { display:block; width:100%; }
  .dt td.t { color:var(--faint); font-size:var(--t-meta); }
  .dt td.nil::before { content:none; }
  .dt td.num:not(.nil)::before { content:attr(data-l) " "; color:var(--faint); font-size:var(--t-meta); }
  .dt td.p ~ td:not(.nil) ~ td:not(.nil)::before { content:" · "; color:var(--faint); }
  .dt td.p ~ td:not(.nil) ~ td.num:not(.nil)::before { content:" · " attr(data-l) " "; color:var(--faint); font-size:var(--t-meta); }
  .dt td.num { text-align:left; }
}
.block { margin:var(--s3) 0; }
.reqs { margin:var(--s2) 0 var(--s3); padding-left:1.25rem; }
.reqs li { margin:var(--s1) 0; }
.block p { margin-top:var(--s1); }
a.src { font-size:var(--t-meta); color:var(--dim); white-space:nowrap; padding:12px var(--s2); margin:-12px 0; display:inline-block; }
details.filter { border:1px solid var(--line); border-radius:var(--r-card); background:var(--panel); margin:var(--s2) 0 var(--s4); }
details.filter > summary { display:flex; align-items:center; gap:var(--s2); min-height:var(--tap-lg); padding:0 var(--s4);
  color:var(--ink); cursor:pointer; font-size:var(--t-body); list-style:none; }
details.filter > summary::-webkit-details-marker { display:none; }
details.filter > summary::after { content:"▾"; margin-left:auto; color:var(--dim); }
details.filter[open] > summary::after { content:"▴"; }
details.filter > summary .set { color:var(--link); }
details.filter .inner { padding:0 var(--s4) var(--s2); border-top:1px solid var(--line); }
details.filter .chips, details.filter form.filters { margin:var(--s3) 0; }
a.clear { color:var(--dim); }
.chips { display:flex; flex-wrap:wrap; gap:var(--s2); margin:var(--s2) 0 var(--s4); padding:0; list-style:none; }
.chips a { display:inline-flex; align-items:center; min-height:var(--tap); padding:0 var(--s4); border-radius:var(--r-pill);
  border:1px solid var(--line-2); background:var(--panel); color:var(--dim); text-decoration:none; font-size:var(--t-body); font-variant-numeric:tabular-nums; }
.chips a.on { border-color:var(--accent); background:var(--accent-soft); color:var(--ink); font-weight:600; }
.chips a .n { color:var(--faint); margin-left:var(--s2); font-size:var(--t-meta); }
form.search { display:flex; gap:var(--s2); margin:var(--s3) 0 var(--s4); }
form.search input { flex:1; min-width:0; min-height:var(--tap); font-size:var(--t-body); padding:var(--s2) var(--s3); border-radius:var(--r-ctl); border:1px solid var(--line-2); background:var(--panel); color:var(--ink); }
form.search button { min-height:var(--tap); min-width:var(--tap); padding:0 var(--s4); font-size:var(--t-body); border-radius:var(--r-ctl); border:1px solid var(--line-2); background:var(--panel-2); color:var(--ink); font-weight:600; cursor:pointer; }
form.search button:hover, form.filters button:hover { border-color:var(--link); }
form.search.login { margin-top:var(--s4); }
.boardbar { display:flex; flex-wrap:wrap; align-items:center; gap:var(--s2) var(--s3); margin:0 0 var(--s3);
  scroll-margin-top:calc(var(--tap) + var(--s5)); }
.boardbar h1 { font-size:var(--t-title); margin:0; white-space:nowrap; }
.boardbar h1 .n { color:var(--faint); font-weight:400; font-size:var(--t-meta); font-variant-numeric:tabular-nums; margin-left:var(--s1); }
.boardbar p.for { flex:1 1 20rem; margin:0; color:var(--dim); }
.boardbar details.filter { margin:0; flex:0 1 auto; min-width:0; }
.boardbar details.filter > summary { min-height:var(--tap); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.boardbar details.filter[open] { flex:1 0 100%; order:5; }
.boardbar details.filter[open] > summary { white-space:normal; }
.front { padding:var(--s6) 0 var(--s5); margin:0 0 var(--s4); border-bottom:1px solid var(--line); }
.front h1 { font-size:var(--t-display); line-height:1.08; margin:0 0 var(--s4); }
.front .for { font-size:var(--t-body); color:var(--dim); margin:0 0 var(--s5); max-width:46rem; }
.hub { padding:var(--s4) 0 var(--s4); margin:0 0 var(--s4); border-bottom:1px solid var(--line); }
.hub .for { color:var(--dim); max-width:46rem; margin:0 0 var(--s3); }
.hub .meta a { display:inline-flex; align-items:center; min-height:var(--tap); }
.verdict { list-style:none; padding:0; margin:0 0 var(--s4); display:flex; flex-wrap:wrap; gap:var(--s2); }
.verdict li { border:1px solid var(--line-2); border-radius:var(--r-card); background:var(--panel); padding:var(--s2) var(--s3);
  font-size:var(--t-body); font-variant-numeric:tabular-nums; }
.verdict .k { display:block; font-size:var(--t-label); color:var(--faint); }
ul.slots { margin:var(--s2) 0 var(--s4); }
.slot { border-bottom:1px solid var(--line); padding:var(--s3) 0; }
.slot .sub { display:block; color:var(--dim); margin:var(--s1) 0 var(--s2); }
.slot a.quiet, .slot button.quiet, .slot a.apply { display:inline-flex; align-items:center; min-height:var(--tap); }
.slot.soon strong { color:var(--dim); }
.door { border:1px solid var(--locked-line); border-radius:var(--r-card); background:var(--locked-bg); padding:var(--s4); margin:var(--s4) 0; }
.door h2 { margin-top:0; }
.door li { margin:var(--s2) 0; }
.applying li { margin:var(--s2) 0; }
form.unclear { margin:var(--s1) 0 var(--s4); }
form.unclear button.linklike { color:var(--faint); font-size:var(--t-meta); min-height:var(--tap); }
.hp { position:absolute; left:-9999px; width:1px; height:1px; opacity:0; }
footer p.company { color:var(--faint); font-size:var(--t-meta); }
form.stack { display:flex; flex-direction:column; gap:var(--s2); margin:var(--s4) 0; max-width:46rem; }
form.stack textarea { min-height:var(--s7); padding:var(--s2) var(--s3); border-radius:var(--r-ctl); border:1px solid var(--line-2);
  background:var(--panel); color:var(--ink); }
.surfaces { display:grid; grid-template-columns:1fr; gap:var(--s4); margin:var(--s4) 0; }
@media (min-width:60rem) { .surfaces { grid-template-columns:1fr 1fr; } }
.surface { border:1px solid var(--line-2); border-radius:var(--r-card); background:var(--panel); padding:var(--s4); min-width:0; }
.surface h2 { margin-top:0; }
.surface li { margin:var(--s2) 0; min-height:var(--tap); }
.surface textarea { width:100%; min-height:var(--s7); padding:var(--s2) var(--s3); border-radius:var(--r-ctl); border:1px solid var(--line-2); background:var(--bg); color:var(--ink); }
.naming h2 { margin-top:0; }
nav.tabs { display:flex; gap:var(--s2); flex:0 0 auto; }
nav.tabs a { display:inline-flex; align-items:center; min-height:var(--tap); padding:0 var(--s3); border-radius:var(--r-pill);
  border:1px solid var(--line-2); color:var(--dim); text-decoration:none; font-size:var(--t-body); }
nav.tabs a[aria-current] { color:var(--ink); background:var(--panel-2); }
.boardbar h2 { font-size:var(--t-title); margin:0; white-space:nowrap; }
.boardbar h2 .n { color:var(--faint); font-weight:400; font-size:var(--t-meta); font-variant-numeric:tabular-nums; margin-left:var(--s1); }
p.or { text-align:center; color:var(--faint); margin:var(--s3) 0 var(--s1); }
a.action.oauth, a.apply.oauth { display:flex; justify-content:center; width:100%; min-height:var(--tap-lg); margin:0 0 var(--s3); }
form.filters { display:flex; flex-wrap:wrap; gap:var(--s2); margin:var(--s3) 0 var(--s4); }
form.filters label { display:flex; flex-direction:column; gap:var(--s1); font-size:var(--t-meta); color:var(--dim); flex:1 1 9rem; min-width:0; }
form.filters select { width:100%; min-height:var(--tap); font-size:var(--t-body); padding:var(--s2) var(--s3); border-radius:var(--r-ctl); border:1px solid var(--line-2); background:var(--panel); color:var(--ink); max-width:100%; }
form.filters label.check-row { flex-direction:row; align-items:center; gap:var(--s2); align-self:flex-end; min-height:var(--tap); color:var(--ink); }
form.filters button { min-height:var(--tap); padding:0 var(--s5); font-size:var(--t-body); border-radius:var(--r-ctl); border:1px solid var(--line-2); background:var(--panel-2); color:var(--ink); font-weight:600; align-self:flex-end; flex:0 0 auto; cursor:pointer; }
form.filters fieldset.facet { flex:1 1 14rem; min-width:0; margin:0; padding:var(--s2) var(--s3); border:1px solid var(--line); border-radius:var(--r-ctl); max-height:16rem; overflow:auto; }
form.filters fieldset.facet legend { padding:0 var(--s2); font-size:var(--t-meta); color:var(--dim); }
form.filters fieldset.facet label.check-row { align-self:auto; min-height:var(--tap); font-size:var(--t-body); }
form.filters fieldset.facet label.check-row .n { color:var(--faint); font-size:var(--t-meta); }
form.filters fieldset.facet.many { flex-basis:100%; columns:13rem; column-gap:var(--s5); }
form.filters fieldset.facet.many label.check-row { break-inside:avoid; }
.dt.pricing td:not(.p) { white-space:nowrap; }
.yes { color:var(--good); font-weight:600; }
form.settings .pair { display:grid; grid-template-columns:repeat(auto-fit, minmax(14rem, 1fr)); gap:var(--s2) var(--s4); margin:var(--s2) 0; }
form.settings .pair label { display:flex; flex-direction:column; gap:var(--s1); }
form.settings .hint { color:var(--dim); font-size:var(--t-meta); font-weight:400; }
form.filters input[type=month] { width:100%; min-height:var(--tap); font-size:var(--t-body); padding:var(--s2) var(--s3); border-radius:var(--r-ctl); border:1px solid var(--line-2); background:var(--panel); color:var(--ink); }
ul.active-chips { margin:0 0 var(--s3); }
ul.active-chips a .x { margin-left:var(--s2); color:var(--faint); font-weight:400; }
ul.active-chips a.chip.clear { border-style:dashed; color:var(--dim); }
form.settings label { display:block; margin:var(--s3) 0 var(--s1); color:var(--dim); }
form.settings input[type=text], form.settings input[type=email], form.settings select { width:100%; min-height:var(--tap); font-size:var(--t-body); padding:var(--s2) var(--s3); border-radius:var(--r-ctl); border:1px solid var(--line-2); background:var(--bg); color:var(--ink); }
form.settings .row { display:flex; align-items:center; gap:var(--s3); min-height:var(--tap); margin:var(--s1) 0; }
form.settings .row input { width:22px; height:22px; flex:0 0 auto; accent-color:var(--accent); }
form.settings button { min-height:var(--tap); padding:0 var(--s5); font-size:var(--t-body); border-radius:var(--r-ctl); border:0; background:var(--accent); color:#fff; margin-top:var(--s3); cursor:pointer; }
form.inline { display:inline; }
button.linklike { background:none; border:0; padding:0; margin:0; font:inherit; color:var(--link); text-decoration:underline; text-underline-offset:2px; cursor:pointer; min-height:var(--tap); }
button.quiet { min-height:var(--tap); background:var(--line); color:var(--dim); border:0; border-radius:var(--r-ctl); padding:0 var(--s4); cursor:pointer; }
form.stand-form { margin:var(--s4) 0; }
form.stand-form select { width:100%; min-height:var(--tap); font-size:var(--t-body); border-radius:var(--r-ctl);
  background:var(--panel); color:var(--ink); border:1px solid var(--line-2); padding:0 var(--s3); }
form.stand-form button { min-height:var(--tap); padding:0 var(--s5); font-size:var(--t-body); border-radius:var(--r-ctl);
  border:0; background:var(--accent); color:#fff; margin-top:var(--s3); cursor:pointer; }
.stat { display:grid; grid-template-columns:repeat(auto-fill, minmax(9.5rem, 1fr)); gap:var(--s3); padding:0; list-style:none; margin:var(--s3) 0 var(--s4); }
.stat li { background:var(--panel); border:1px solid var(--line); border-radius:var(--r-card); padding:var(--s3) var(--s4); }
.stat .n { display:block; font-size:var(--t-hero); font-weight:700; line-height:1.2; }
.stat .k { color:var(--dim); font-size:var(--t-meta); }
.empty { color:var(--dim); font-size:var(--t-body); background:var(--panel); border:1px dashed var(--line-2);
  border-radius:var(--r-card); padding:var(--s3) var(--s4); margin:var(--s3) 0; }
.person { background:var(--panel); border:1px solid var(--line); border-radius:var(--r-card); padding:var(--s3) var(--s4);
  margin:var(--s3) 0; overflow-wrap:anywhere; }
.person .nm { font-size:var(--t-title); font-weight:600; display:block; }
.person .route { margin-top:var(--s2); padding-top:var(--s2); border-top:1px solid var(--line); }
.person .addr { font-size:var(--t-body); color:var(--good); }
.person .pattern { font-size:var(--t-body); color:var(--ink); }
.person .said { color:var(--faint); font-size:var(--t-meta); }
.approach { background:var(--panel-2); border:1px solid var(--line-2); border-left:3px solid var(--accent);
  border-radius:0 var(--r-card) var(--r-card) 0; padding:var(--s4); margin:var(--s4) 0; }
.approach h3 { margin:0 0 var(--s2); font-size:var(--t-title); }
.approach ol { margin:0; padding-left:var(--s5); }
.approach li { margin:var(--s2) 0; }
.approach .step { color:var(--faint); font-size:var(--t-label); text-transform:none; display:block; }
.approach .say { background:var(--bg); border:1px solid var(--line); border-radius:var(--r-ctl); padding:var(--s3);
  margin:var(--s2) 0; color:var(--ink); }
.season { display:flex; align-items:flex-end; gap:var(--s1); height:88px; margin:var(--s3) 0 var(--s2); }
.season .col { flex:1 1 0; min-width:0; display:flex; flex-direction:column; justify-content:flex-end; height:100%; overflow:hidden; }
.season { overflow:hidden; }
.season .bar { background:var(--accent); border-radius:3px 3px 0 0; min-height:2px; }
.season .bar.zero { background:var(--line); }
.months { display:flex; gap:var(--s1); font-size:var(--t-label); color:var(--dim); text-align:center; }
.months span { flex:1 1 0; min-width:0; }
.months span b { display:block; color:var(--ink); font-weight:600; font-variant-numeric:tabular-nums; }
.sr { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }
.months span.now { color:var(--ink); font-weight:700; }
.locked { background:var(--locked-bg); border:1px solid var(--locked-line); border-radius:var(--r-card);
  padding:var(--s3) var(--s4); margin:var(--s3) 0; }
.locked .shape { color:var(--locked); font-size:var(--t-meta); }
.locked .rest { margin-top:var(--s2); padding-top:var(--s2); border-top:1px solid var(--locked-line); color:var(--dim); }
.locked .row { display:block; height:var(--s3); margin:var(--s2) 0; border-radius:var(--s1);
  background:linear-gradient(90deg, var(--locked-line), var(--panel-2)); opacity:.55; }
.locked .row.b { width:70%; }
.locked .row.c { width:85%; }
.locked .example { margin:var(--s2) 0; }
.locked .example > .card:first-child, .locked .example > article.card:first-child { margin-top:0; }
.locked .example > .card:last-child, .locked .example > article.card:last-child { margin-bottom:0; }
.state { border:1px solid var(--line); border-radius:var(--r-card); background:var(--panel);
  padding:var(--s3) var(--s4); margin:var(--s3) 0; }
.state p { margin:var(--s1) 0; }
.state.waiting { border-color:var(--info-line); }
.state.waiting .what { color:var(--info); }
.state.failed { border-color:var(--warn-line); }
a.action, button.action { display:inline-flex; align-items:center; min-height:var(--tap); padding:0 var(--s3); margin-top:var(--s2);
  border:1px solid var(--line-2); border-radius:var(--r-ctl); text-decoration:none; font-size:var(--t-body); color:var(--ink); background:var(--panel); }
a.action:hover { border-color:var(--link); }
.apply { display:inline-flex; align-items:center; justify-content:center; min-height:var(--tap-lg); padding:0 var(--s5); margin:var(--s3) 0;
  background:var(--accent); color:#fff; border-radius:var(--r-ctl); text-decoration:none; font-weight:600; letter-spacing:-0.01em;
  box-shadow:0 1px 0 rgba(255,255,255,.08) inset, 0 8px 24px rgba(124,58,237,.25); }
.apply:hover { filter:brightness(1.08); }
.apply.soft { background:var(--accent-soft); color:var(--ink); border:1px solid var(--accent); box-shadow:none; }
.apply.soft:hover { background:var(--accent); filter:none; }
.lede { font-size:var(--t-body); color:var(--ink); margin:var(--s2) 0 var(--s4); }
.for { color:var(--dim); margin:var(--s1) 0 var(--s4); max-width:64rem; }
.fresh { font-size:var(--t-meta); color:var(--good); }
.stale { font-size:var(--t-meta); color:var(--warn); }
.when-box { background:var(--panel-2); border:1px solid var(--line-2); border-left:3px solid var(--accent);
  border-radius:0 var(--r-card) var(--r-card) 0; padding:var(--s4); margin:var(--s3) 0 var(--s2); }
.when-box p { margin:0; }
.when-box .meta { margin-top:var(--s1); }
.facts-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:0;
  margin:var(--s3) 0 var(--s4); padding:var(--s1) var(--s4); border:1px solid var(--line); border-radius:var(--r-card); background:var(--panel); }
.facts-grid > div { min-width:0; display:grid; grid-template-columns:9rem minmax(0,1fr); gap:var(--s3); align-items:baseline;
  padding:var(--s2) 0; border-bottom:1px solid var(--line); }
.facts-grid > div:last-child { border-bottom:0; }
.facts-grid dt { font-size:var(--t-label); color:var(--faint); letter-spacing:.04em; }
.facts-grid dd { margin:0; color:var(--ink); font-variant-numeric:tabular-nums; }
.facts-grid dd a { color:var(--ink); }
.facts-grid .stated-deadline dd { color:var(--dim); }
.cols > aside .facts-grid { grid-template-columns:1fr; gap:0; padding:var(--s1) var(--s4); }
.cols > aside .facts-grid > div { display:grid; grid-template-columns:6.5rem minmax(0,1fr); gap:var(--s3); align-items:baseline;
  padding:var(--s2) 0; border-bottom:1px solid var(--line); }
.cols > aside .facts-grid > div:last-child { border-bottom:0; }
.similar-seats ul.plain li { display:flex; flex-wrap:wrap; gap:var(--s2); align-items:center; min-height:var(--tap); padding:var(--s1) 0; border-bottom:1px solid var(--line); }
.similar-seats ul.plain li a { color:var(--ink); }
p.back a { display:inline-flex; align-items:center; min-height:var(--tap); }
.when-box + .apply, .applyfoot .apply { display:flex; width:100%; }
.applyfoot, .ask { border-top:1px solid var(--line); margin-top:var(--s6); padding-top:var(--s4); }
.ask { margin-top:var(--s4); }
.gate { background:var(--locked-bg); border:1px solid var(--locked-line); border-radius:var(--r-card); padding:var(--s3) var(--s4); margin:var(--s3) 0; }
.gate .what { color:var(--locked); font-size:var(--t-meta); margin:0 0 var(--s1); }
.gate ul { margin:var(--s1) 0 var(--s2); padding-left:var(--s5); color:var(--dim); }
.gate a.apply { margin-top:var(--s2); }
.gate .why { margin:var(--s2) 0 0; }
.hello { background:var(--accent-soft); border:1px solid var(--locked-line); border-radius:var(--r-card); padding:var(--s3) var(--s4); margin:0 0 var(--s4); }
.hello p { margin:var(--s1) 0; }
.start { background:var(--panel); border:1px solid var(--line); border-radius:var(--r-card); padding:var(--s3) var(--s4); margin:var(--s3) 0 var(--s5); }
.start h2 { margin:0 0 var(--s2); }
.steps { list-style:none; padding:0; margin:0; counter-reset:step; }
.steps li { display:flex; gap:var(--s3); align-items:flex-start; padding:var(--s2) 0; border-top:1px solid var(--line); }
.steps li:first-child { border-top:0; }
.steps .n { flex:0 0 28px; width:28px; height:28px; border-radius:50%; border:1px solid var(--line-2); color:var(--dim);
  display:inline-flex; align-items:center; justify-content:center; font-size:var(--t-meta); margin-top:var(--s2); }
.steps li.done .n { background:var(--good-line); border-color:var(--good-line); color:#fff; }
.steps li.done .what { color:var(--dim); }
.steps a { display:inline-flex; align-items:center; min-height:var(--tap); font-weight:600; }
.next { background:var(--panel); border-left:3px solid var(--accent); border-radius:0 var(--r-card) var(--r-card) 0; padding:var(--s3) var(--s4); margin:var(--s5) 0; }
.next p { margin:var(--s1) 0; }
button.apply, button.action { font:inherit; cursor:pointer; }
button.apply { border:0; }
.apply.quiet { background:var(--line); color:var(--dim); font-weight:400; }
.apply.tight, .action.tight { margin:0; }
.row-actions { display:flex; gap:var(--s3); flex-wrap:wrap; align-items:center; }
.row-actions form { margin:0; }
.between { display:flex; justify-content:space-between; align-items:center; gap:var(--s3); flex-wrap:wrap; }
.field { width:100%; min-height:var(--tap); font-size:var(--t-body); font-family:inherit; line-height:1.5;
  background:var(--bg); color:var(--ink); border:1px solid var(--line-2); border-radius:var(--r-ctl); padding:var(--s2) var(--s3); }
.field.panel { background:var(--panel); }
.field.grow { width:auto; flex:1; min-width:0; }
textarea.field { min-height:112px; border-radius:var(--r-card); padding:var(--s3); }
.check-row { display:flex; align-items:center; gap:var(--s3); min-height:var(--tap); font-size:var(--t-body); }
.check-row input { width:22px; height:22px; flex:0 0 auto; accent-color:var(--accent); }
.mono { word-break:break-all; font-family:ui-monospace, monospace; background:var(--bg); padding:var(--s3); border-radius:var(--r-ctl); }
.nowrap { white-space:nowrap; }
h1.small { font-size:var(--t-title); }
.reader { max-width:34rem; }
.reader p { font-size:var(--t-body); line-height:1.75; margin:0 0 var(--s4); }
.reader h2 { margin:var(--s6) 0 var(--s2); }
.wait, .adv-wait { background:var(--panel); border:1px solid var(--line); border-radius:var(--r-card); padding:var(--s4); margin:var(--s4) 0; }
.wait-bar, .adv-wait .bar { position:relative; height:6px; border-radius:var(--r-pill); background:var(--line); overflow:hidden; margin:0 0 var(--s4); }
.wait-bar::after, .adv-wait .bar i { content:""; position:absolute; top:0; left:-40%; width:40%; height:100%; border-radius:var(--r-pill);
  background:linear-gradient(90deg, rgba(124,58,237,0) 0%, var(--accent) 50%, rgba(124,58,237,0) 100%);
  animation:wait-slide 1.6s ease-in-out infinite; }
@keyframes wait-slide { from { left:-40%; } to { left:100%; } }
.wait-steps { list-style:none; margin:0; padding:0; display:grid; gap:var(--s3); }
.wait-steps li { display:flex; align-items:center; gap:var(--s3); font-size:var(--t-body); line-height:1.45; color:var(--dim); }
.wait-steps li .dot { flex:0 0 auto; width:22px; height:22px; border-radius:50%; border:2px solid var(--line-2);
  display:inline-flex; align-items:center; justify-content:center; font-size:var(--t-label); }
.wait-steps li.done { color:var(--good); }
.wait-steps li.done .dot { border-color:var(--good-line); background:var(--good-line); color:#fff; }
.wait-steps li.now { color:var(--ink); font-weight:600; }
.wait-steps li.now .dot { border-color:var(--accent); animation:wait-pulse 1.2s ease-in-out infinite; }
@keyframes wait-pulse { 0%,100% { box-shadow:0 0 0 0 rgba(124,58,237,.55); } 50% { box-shadow:0 0 0 7px rgba(124,58,237,0); } }
.wait-time { font-size:var(--t-body); color:var(--dim); margin:var(--s4) 0 0; }
.wait-time strong { color:var(--ink); font-weight:600; }
.wait-tip { border-left:3px solid var(--accent); padding:var(--s1) 0 var(--s1) var(--s4); margin:var(--s5) 0; font-size:var(--t-body); line-height:1.6; }
.wait-tip .k { display:block; font-size:var(--t-label); letter-spacing:.08em; color:var(--dim); margin-bottom:var(--s1); }
.adv-wait .doing { display:flex; align-items:center; gap:var(--s3); font-size:var(--t-body); }
.adv-wait .dots { display:inline-flex; gap:var(--s1); }
.adv-wait .dots i { width:var(--s2); height:var(--s2); border-radius:50%; background:var(--link); display:block; animation:adv-pulse 1.2s infinite ease-in-out; }
.adv-wait .dots i:nth-child(2) { animation-delay:.2s } .adv-wait .dots i:nth-child(3) { animation-delay:.4s }
@keyframes adv-pulse { 0%,80%,100% { opacity:.25; transform:scale(.8) } 40% { opacity:1; transform:scale(1) } }
.adv-wait .bar { margin:var(--s3) 0 var(--s1); }
.adv-wait .wait-steps { display:flex; gap:var(--s3); flex-wrap:wrap; margin:var(--s1) 0 0; }
.adv-wait .wait-steps li { font-size:var(--t-meta); }
.adv-wait .wait-steps li.on { color:var(--ink); font-weight:600; }
.adv-wait .wait-steps li.done { color:var(--link); }
.adv-wait .meta { margin:var(--s1) 0 0; }
@media (prefers-reduced-motion: reduce) { .wait-bar::after, .wait-steps li.now .dot, .adv-wait .dots i, .adv-wait .bar i { animation:none; } .wait-bar::after, .adv-wait .bar i { left:30%; width:100%; opacity:.5; } }
.cv-form textarea { width:100%; min-height:260px; font-size:var(--t-body); font-family:inherit; line-height:1.5;
  background:var(--bg); color:var(--ink); border:1px solid var(--line-2); border-radius:var(--r-card); padding:var(--s3); }
.cv-form textarea.short { min-height:112px; }
.cv-form.again { margin-top:var(--s5); }
.cv-form label { display:block; font-size:var(--t-body); line-height:1.5; margin:var(--s4) 0 var(--s1); }
.cv-btn { display:inline-flex; align-items:center; justify-content:center; min-height:var(--tap-lg); padding:0 var(--s5);
  font-size:var(--t-body); border:0; border-radius:var(--r-ctl); background:var(--accent); color:#fff; font-weight:600;
  margin-top:var(--s3); cursor:pointer; text-decoration:none; font-family:inherit; }
.cv-btn.quiet { background:var(--line); color:var(--dim); font-weight:400; }
.cv-linkbtn { background:none; border:0; padding:0; color:var(--dim); text-decoration:underline; cursor:pointer;
  font:inherit; font-size:var(--t-body); min-height:var(--tap); }
.cv-file { display:block; width:100%; min-height:var(--tap-lg); font-size:var(--t-body); color:var(--dim); margin:var(--s2) 0; }
.cv-actions { display:flex; flex-wrap:wrap; gap:var(--s3); align-items:center; }
.cv-actions form { margin:0; }
.cv-q { border:0; padding:0; margin:var(--s4) 0 0; }
.cv-q legend { font-weight:600; padding:0; margin-bottom:var(--s2); line-height:1.4; }
.cv-opts { display:flex; flex-wrap:wrap; gap:var(--s2); margin-bottom:var(--s2); }
.cv-opts label { display:inline-flex; align-items:center; gap:var(--s2); min-height:var(--tap); padding:0 var(--s3); border:1px solid var(--line-2); border-radius:var(--r-pill); background:var(--panel); cursor:pointer; }
.cv-opts label:has(input:checked) { border-color:var(--link); background:var(--accent-soft); }
.cv-actions .cv-btn .gen { font-weight:400; margin-left:var(--s1); }
.cv-verdict { background:var(--panel); border-left:4px solid var(--accent); border-radius:0 var(--r-card) var(--r-card) 0;
  padding:var(--s4); margin:var(--s3) 0; }
.cv-verdict p { font-size:var(--t-body); line-height:1.65; margin:var(--s2) 0; }
.cv-fix { border:1px solid var(--line); border-radius:var(--r-card); padding:var(--s4); margin:var(--s3) 0; background:var(--panel); }
.cv-fix .n { display:inline-block; font-size:var(--t-label); font-weight:600; color:var(--info); margin-bottom:var(--s1); }
.cv-fix .src { font-size:var(--t-body); line-height:1.5; margin:0; padding:var(--s3); background:var(--bg); border:1px solid var(--line);
  border-radius:var(--r-ctl); overflow-wrap:anywhere; }
.cv-fix .src.now { border-color:var(--good-line); }
.cv-fix .k { display:block; font-size:var(--t-label); letter-spacing:.06em; color:var(--dim); margin:var(--s3) 0 var(--s1); }
.cv-fix .k:first-of-type { margin-top:0; }
.cv-fix .why { font-size:var(--t-body); line-height:1.55; color:var(--ink); margin:var(--s3) 0 0; }
.cv-good { border:1px solid var(--good-line); border-radius:var(--r-card); padding:var(--s3) var(--s4); margin:var(--s2) 0; background:var(--panel); }
.cv-good .src { font-size:var(--t-body); line-height:1.5; margin:0 0 var(--s1); overflow-wrap:anywhere; }
.cv-good .why { font-size:var(--t-body); color:var(--dim); margin:0; }
.cv-ask { background:var(--panel-2); border:1px solid var(--line-2); border-radius:var(--r-card); padding:var(--s4); margin:var(--s3) 0; }
.cv-ask p { font-size:var(--t-body); line-height:1.65; margin:0; }
.cv-doc { background:var(--panel); border:1px solid var(--line); border-radius:var(--r-card); padding:var(--s4); margin:var(--s3) 0; }
.cv-doc h3 { font-size:var(--t-body); letter-spacing:.06em; color:var(--dim); margin:var(--s4) 0 var(--s1); }
.cv-doc h3:first-of-type { margin-top:0; }
.cv-doc ul { margin:var(--s1) 0 var(--s2); padding-left:var(--s5); }
.cv-doc li { font-size:var(--t-body); line-height:1.55; margin:var(--s1) 0; }
.cv-doc .cv-entry, .cv-doc .cv-subentry, .cv-doc .cv-sub { display:flex; flex-wrap:wrap; justify-content:space-between; gap:0 var(--s3); margin:var(--s2) 0 0; }
.cv-doc .cv-subentry, .cv-doc .cv-sub { margin-left:var(--s4); }
.cv-doc .cv-sub span { text-decoration:underline; }
.cv-doc ul.cv-l2 { padding-left:calc(var(--s5) + var(--s4)); }
.cv-doc .positioning { font-size:var(--t-body); color:var(--info); margin:0 0 var(--s3); }
.cv-change { border:1px solid var(--line); border-radius:var(--r-card); padding:var(--s3) var(--s4); margin:var(--s2) 0; background:var(--panel); }
.cv-pair { display:grid; gap:var(--s3); }
.cv-pair > div { background:var(--bg); border:1px solid var(--line); border-radius:var(--r-ctl); padding:var(--s3); overflow-wrap:anywhere; }
.cv-pair .k { display:block; font-size:var(--t-label); letter-spacing:.06em; color:var(--faint); margin-bottom:var(--s1); }
.cv-pair .now { border-color:var(--good-line); }
.cv-change .why { font-size:var(--t-body); color:var(--ink); margin:var(--s2) 0 0; }
.cv-change .sup { font-size:var(--t-meta); color:var(--faint); margin:var(--s1) 0 0; overflow-wrap:anywhere; }
.cv-dropped { border:1px solid var(--warn-line); border-radius:var(--r-card); padding:var(--s3) var(--s4); margin:var(--s2) 0; background:var(--panel-2); }
.cv-dropped .line { font-size:var(--t-body); text-decoration:line-through; color:var(--dim); overflow-wrap:anywhere; }
.cv-dropped .reason { font-size:var(--t-meta); color:var(--warn); margin-top:var(--s1); }
mark.cv-mark { background:var(--accent-soft); color:var(--ink); box-shadow:inset 0 -2px 0 var(--warn); border-radius:2px; padding:0 var(--s1); }
mark.cv-mark.soft { background:var(--panel-2); box-shadow:inset 0 -1px 0 var(--line-2); }
mark.cv-mark.place { box-shadow:none; border-bottom:2px dashed var(--warn); }
mark.cv-mark.place.soft { border-bottom-color:var(--line-2); }
.cv-mark-form input { flex:1 1 12rem; min-height:var(--tap-lg); margin-top:var(--s3); padding:0 var(--s3); background:var(--bg); color:var(--ink);
  border:1px solid var(--line-2); border-radius:var(--r-ctl); }
.cv-note { background:var(--panel-2); border:1px solid var(--line-2); border-radius:var(--r-card); padding:var(--s3) var(--s4); margin:var(--s4) 0; }
.cv-note p { font-size:var(--t-body); line-height:1.6; margin:var(--s1) 0; }
.cv-dl { display:flex; flex-wrap:wrap; gap:var(--s3); margin:var(--s2) 0; }
.cv-dl a { display:inline-flex; align-items:center; min-height:var(--tap-lg); padding:0 var(--s4); border:1px solid var(--line-2);
  border-radius:var(--r-ctl); color:var(--ink); text-decoration:none; font-weight:600; }
@media (min-width: 44rem) { .cv-pair { grid-template-columns: 1fr 1fr; } }
.adv-msg { border-radius:var(--r-card); padding:var(--s3) var(--s4); margin:var(--s3) 0; border:1px solid var(--line); overflow-wrap:anywhere; }
.adv-msg.you { background:var(--panel-2); border-color:var(--line-2); }
.adv-msg.adv { background:var(--panel); }
.adv-msg .who { font-size:var(--t-meta); letter-spacing:.06em; color:var(--dim); margin-bottom:var(--s1); }
.adv-msg p { margin:var(--s2) 0; font-size:var(--t-body); line-height:1.6; }
.adv-msg p:first-of-type { margin-top:0; }
.adv-msg ul { margin:var(--s2) 0; padding-left:var(--s5); }
.adv-msg li { margin:var(--s1) 0; font-size:var(--t-body); line-height:1.6; }
.adv-msg a { color:var(--link); }
.adv-next { list-style:none; padding:0; margin:var(--s3) 0 0; display:flex; flex-direction:column; gap:var(--s2); }
.adv-next li a { display:block; min-height:var(--tap); padding:var(--s3); border:1px solid var(--line-2); border-radius:var(--r-ctl);
  background:var(--panel-2); color:var(--ink); text-decoration:none; font-size:var(--t-body); line-height:1.4; }
.adv-next li a::before { content:"Ask next "; color:var(--dim); font-size:var(--t-meta); letter-spacing:.06em; }
.adv-form { margin:var(--s5) 0; }
.adv-form textarea { width:100%; min-height:112px; font-size:var(--t-body); font-family:inherit; line-height:1.5;
  background:var(--bg); color:var(--ink); border:1px solid var(--line-2); border-radius:var(--r-card); padding:var(--s3); }
.adv-form button { min-height:var(--tap-lg); padding:0 var(--s5); font-size:var(--t-body); border:0; border-radius:var(--r-ctl);
  background:var(--accent); color:#fff; font-weight:600; margin-top:var(--s3); cursor:pointer; }
.adv-sugg { list-style:none; padding:0; margin:var(--s2) 0 var(--s5); display:flex; flex-direction:column; gap:var(--s2); }
.adv-sugg button { display:block; width:100%; text-align:left; min-height:var(--tap); padding:var(--s3) var(--s4);
  font-size:var(--t-body); font-family:inherit; line-height:1.4; border:1px solid var(--line-2); border-radius:var(--r-card);
  background:var(--panel); color:var(--ink); cursor:pointer; }
.adv-note { background:var(--panel-2); border:1px solid var(--line-2); border-radius:var(--r-card); padding:var(--s3) var(--s4); margin:var(--s3) 0; }
.draft { background:var(--panel); border:1px solid var(--line-2); border-radius:var(--r-card); padding:var(--s4); margin:var(--s3) 0; }
.draft .subj { font-size:var(--t-meta); color:var(--faint); display:block; margin-bottom:var(--s2); }
.draft p { font-size:var(--t-body); line-height:1.7; margin:var(--s3) 0; }
.draft p:first-of-type { margin-top:0; }
.draft p:last-child { margin-bottom:0; }
.plan-steps { margin:var(--s3) 0; padding-left:var(--s5); }
.plan-steps li { margin:var(--s2) 0; font-size:var(--t-body); line-height:1.6; }
.plan-steps li strong { display:block; }
.hub .card p { margin:var(--s1) 0 0; color:var(--dim); }
.stats { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:var(--s3); margin:var(--s5) 0; }
.stat { background:var(--panel); border:1px solid var(--line); border-radius:var(--r-card); padding:var(--s4); display:flex; flex-direction:column; gap:var(--s1); }
.stat .n { font-size:var(--t-hero); font-weight:700; color:var(--ink); line-height:1.1; }
.stat .l { color:var(--ink); }
.share { margin:var(--s3) 0; padding:var(--s3) var(--s4); border:1px dashed var(--line-2); border-radius:var(--r-card); }
.share .meta { margin:0 0 var(--s2); }
.share label { display:block; margin:var(--s3) 0 var(--s1); }
.how { display:grid; grid-template-columns:1fr; gap:var(--s3); margin:var(--s5) 0; }
.step { border-top:2px solid var(--accent); padding:var(--s3) 0 0; }
.step .k { display:inline-flex; width:28px; height:28px; border-radius:50%; align-items:center; justify-content:center;
  background:var(--accent); color:#fff; font-weight:700; font-size:var(--t-meta); }
.step h2 { margin:var(--s2) 0 var(--s1); }
.step p { color:var(--dim); margin:0; }
.plans { display:grid; grid-template-columns:1fr; gap:var(--s3); margin:var(--s4) 0 var(--s5); }
.plan { background:var(--panel); border:1px solid var(--line); border-radius:var(--r-card); padding:var(--s4); display:flex; flex-direction:column; gap:var(--s2); }
.plan.paid { border-color:var(--accent); background:var(--locked-bg); }
.plan .price { font-size:var(--t-hero); font-weight:700; line-height:1.1; }
.plan .price small { font-size:var(--t-meta); font-weight:400; color:var(--dim); }
.plan ul { margin:0; padding-left:var(--s5); color:var(--dim); }
.plan li { margin:var(--s1) 0; }
.plan li strong { color:var(--ink); }
.plan .apply, .plan .action { margin-top:auto; align-self:flex-start; }
  border:1px solid var(--line-2); border-radius:var(--r-pill); color:var(--dim); text-decoration:none; }
.features .span { grid-column:1 / -1; margin:0; }
.features h2.span { margin-bottom:var(--s1); }
.gate-line { margin:var(--s2) 0 var(--s4); }
@media (min-width: 60rem) {
  .features { grid-template-columns:repeat(4, minmax(0, 1fr)); }
  .stats { grid-template-columns:repeat(4, minmax(0, 1fr)); }
  .how { grid-template-columns:repeat(3, minmax(0, 1fr)); gap:var(--s5); }
  .plans { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
html { scrollbar-color:var(--line-2) transparent; }
::selection { background:var(--accent); color:#fff; }
body { background:var(--bg) radial-gradient(ellipse 90rem 36rem at 50% -12rem, rgba(124,58,237,.18), rgba(124,58,237,0) 70%) no-repeat; }
a { text-decoration-thickness:1px; text-decoration-color:rgba(185,166,245,.4); transition:color .12s ease, text-decoration-color .12s ease; }
a:hover { text-decoration-color:currentColor; }
h1 { letter-spacing:-0.03em; }
h2 { letter-spacing:-0.015em; }
@view-transition { navigation:auto; }
::view-transition-old(root), ::view-transition-new(root) { animation-duration:.16s; }
@media (prefers-reduced-motion: reduce) { @view-transition { navigation:none; } }
header { background:rgba(11,12,21,.72); -webkit-backdrop-filter:saturate(1.6) blur(16px); backdrop-filter:saturate(1.6) blur(16px);
  border-bottom-color:rgba(54,57,100,.5); }
header a.brand .mark { background:linear-gradient(135deg, var(--accent), #5B21B6); box-shadow:0 4px 16px rgba(124,58,237,.35); }
header nav a { transition:background .12s ease, color .12s ease; }
header form.search input { background:rgba(18,20,42,.8); transition:border-color .12s ease, box-shadow .12s ease; }
form.search input:focus, .field:focus, form.settings input:focus, form.settings select:focus { border-color:var(--accent); box-shadow:0 0 0 4px rgba(124,58,237,.2); outline:0; }
.card, .facts-grid, .rider, .person, .state, .stat li, .plan, .surface, .cv-card, .draft, details.filter, .ba, .me-card, .tile {
  background:linear-gradient(180deg, var(--panel-2) 0, var(--panel) 48px); border-color:var(--line-2);
  box-shadow:0 1px 0 rgba(255,255,255,.04) inset, 0 12px 32px rgba(0,0,0,.28); }
.ba.after, .plan.paid { background:linear-gradient(180deg, var(--accent-soft) 0, var(--locked-bg) 96px); }
.apply, .cv-btn, form.settings button, form.stand-form button, .adv-form button {
  background:linear-gradient(135deg, var(--accent), #5B21B6); transition:transform .12s ease, box-shadow .12s ease, filter .12s ease; }
.apply:hover, .cv-btn:hover, form.settings button:hover { transform:translateY(-1px); box-shadow:0 1px 0 rgba(255,255,255,.1) inset, 0 12px 32px rgba(124,58,237,.4); }
.apply:active, .cv-btn:active { transform:none; }
.apply.soft, .apply.quiet, .cv-btn.quiet { background:var(--accent-soft); }
.apply.quiet, .cv-btn.quiet { color:var(--ink); border:1px solid var(--line-2); box-shadow:none; }
a.action, button.action, button.quiet { background:rgba(25,28,56,.6); color:var(--ink); border:1px solid var(--line-2); cursor:pointer;
  transition:border-color .12s ease, background .12s ease; }
a.action:hover, button.action:hover, button.quiet:hover { border-color:var(--link); background:var(--panel-2); }
@media (prefers-reduced-motion: reduce) { .apply, .cv-btn, .tile, a, .dt td { transition:none; } .apply:hover, .cv-btn:hover, .tile:hover { transform:none; } }
.dt td { transition:background .1s ease; }
.dt tbody tr:hover { background:rgba(25,28,56,.7); }
.dt tbody tr:hover td:first-child { box-shadow:inset 2px 0 0 var(--accent); }
.dt td.p a { letter-spacing:-0.005em; }
.dt caption { color:var(--faint); }
@media (min-width: 60rem) { .dt thead th { background:rgba(11,12,21,.9); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); } }
.chips a { transition:border-color .12s ease, background .12s ease, color .12s ease; }
.chips a:hover { border-color:var(--link); color:var(--ink); }
.boardbar h1, .boardbar h2 { font-size:var(--t-hero); letter-spacing:-0.03em; }
.obj-head { border-bottom:0; margin-bottom:var(--s4); padding-bottom:0; }
.obj-head h1 { font-size:var(--t-display); line-height:1.05; }
.obj-kind { color:var(--link); }
.obj-who { font-size:var(--t-title); color:var(--dim); }
.obj-who a { color:var(--ink); font-weight:600; text-decoration:none; }
.obj-who a:hover { color:var(--link); }
.advertised { color:var(--faint); font-size:var(--t-meta); }
.advertised a { color:var(--dim); }
.note { border:1px solid var(--line-2); border-radius:var(--r-ctl); padding:var(--s2) var(--s3); background:var(--panel); color:var(--dim); margin:var(--s3) 0; }
.note.ok { border-color:var(--good-line); color:var(--good); }
.bsec { padding:var(--s5) 0; border-top:1px solid var(--line); }
.bsec:first-of-type { border-top:0; padding-top:0; }
.bsec h2, .bsec h3 { margin:0 0 var(--s2); }
.bsec h2 { font-size:var(--t-title); }
.bsec .block, .bsec .block p, .bsec .reqs li { line-height:1.7; }
.bsec .block:last-child, .bsec .reqs:last-child { margin-bottom:0; }
.reqs li::marker { color:var(--accent); }
.rider .bsec { padding:var(--s4) 0; }
.rider .bsec h3 { font-size:var(--t-body); letter-spacing:0; color:var(--ink); }
form.unclear { margin:var(--s2) 0 var(--s4); text-align:right; }
form.unclear button.linklike { text-decoration:none; }
form.unclear button.linklike:hover { color:var(--link); text-decoration:underline; }
.facts-grid dt { color:var(--faint); letter-spacing:.02em; }
.facts-grid dd { font-weight:500; }
.cols > aside .facts-grid { margin-top:0; }
.cols > aside .facts-grid > div { grid-template-columns:7rem minmax(0,1fr); }
.rider .facts-grid { grid-template-columns:1fr; gap:0; padding:var(--s1) var(--s4); }
.rider .facts-grid > div { display:grid; grid-template-columns:7rem minmax(0,1fr); gap:var(--s3); align-items:baseline; padding:var(--s2) 0; border-bottom:1px solid var(--line); }
.rider .facts-grid > div:last-child { border-bottom:0; }
.approx { color:var(--link); font-weight:400; }
.jobacts { display:flex; flex-wrap:wrap; gap:var(--s2); margin:var(--s3) 0; }
.jobacts > * { flex:1 1 12rem; margin:0; }
.jobacts form { margin:0; }
.jobacts .action, .jobacts .apply { width:100%; justify-content:center; margin:0; }
.savebar { display:flex; flex-wrap:wrap; align-items:center; gap:var(--s2) var(--s3); }
.savebar p { margin:0; }
.savebar p a { color:var(--good); text-decoration:none; }
.applying { border-top:1px solid var(--line); margin-top:var(--s5); padding-top:var(--s4); }
.applying .apply { display:flex; width:100%; margin:0; }
.ask, .getready, .similar-seats { border-top:1px solid var(--line); margin-top:var(--s5); padding-top:var(--s4); }
.ask h2, .getready h2, .similar-seats h2 { margin-top:0; }
ul.slots { display:grid; grid-template-columns:repeat(auto-fill, minmax(13rem, 1fr)); gap:var(--s3); }
.slot { border:0; padding:0; }
.tile { display:flex; flex-direction:column; gap:var(--s1); height:100%; min-height:var(--tap-lg); padding:var(--s3) var(--s4); border:1px solid var(--line-2);
  border-radius:var(--r-card); text-decoration:none; color:var(--ink); transition:border-color .12s ease, transform .12s ease; }
a.tile:hover { border-color:var(--accent); transform:translateY(-1px); }
.tile .sub, .slot .sub { display:block; color:var(--dim); font-size:var(--t-meta); margin:0; }
p.soon { display:flex; flex-wrap:wrap; align-items:center; gap:var(--s2); color:var(--faint); font-size:var(--t-meta); }
p.soon form { margin:0; }
p.soon .action { margin:0; border-style:dashed; color:var(--dim); border-radius:var(--r-pill); }
.tag.asked { color:var(--good); border-color:var(--good-line); }
.share { border:0; padding:0; display:flex; flex-wrap:wrap; align-items:center; gap:var(--s1) var(--s3); color:var(--faint); }
.share a { display:inline-flex; align-items:center; min-height:var(--tap); }
.words a { display:inline-flex; align-items:center; min-height:var(--tap); }
.gate { background:linear-gradient(180deg, var(--accent-soft) 0, var(--locked-bg) 96px); }
.gate .what { font-size:var(--t-body); color:var(--ink); font-weight:600; }
.rider { padding:var(--s5); }
.rider h2 { font-size:var(--t-hero); letter-spacing:-0.03em; line-height:1.1; }
.rider .kind { color:var(--link); }
.rider .rider-actions { margin:var(--s4) 0 var(--s2); }
.rider .rider-actions .apply { flex:1 1 100%; margin:0; }
.rider .rider-actions a.action { flex:1 1 auto; justify-content:center; }
.front h1 { background:linear-gradient(100deg, var(--ink) 30%, var(--link)); -webkit-background-clip:text; background-clip:text; color:transparent; letter-spacing:-0.04em; }
.front .for { font-size:var(--t-title); }
.me { max-width:64rem; margin:0 auto; }
.me-head { display:flex; flex-wrap:wrap; align-items:center; gap:var(--s4); margin:var(--s2) 0 var(--s4); }
.me-avatar { flex:0 0 auto; width:64px; height:64px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, var(--accent), #5B21B6); color:#fff; font-size:var(--t-hero); font-weight:700; box-shadow:0 8px 24px rgba(124,58,237,.35); }
.me-id { flex:1 1 16rem; min-width:0; overflow-wrap:anywhere; }
.me-id h1 { margin:0; }
.me-id .meta { margin:var(--s1) 0 0; }
.me-head form { margin:0; }
.me-card { border:1px solid var(--line-2); border-radius:var(--r-card); padding:var(--s5); margin:0 0 var(--s4); scroll-margin-top:calc(var(--tap) + var(--s6)); }
.me-card > h2 { margin:0 0 var(--s4); display:flex; align-items:baseline; gap:var(--s2); font-size:var(--t-hero); letter-spacing:-0.03em; }
.me-card > h2 .n { color:var(--good); font-size:var(--t-meta); font-weight:400; letter-spacing:0; }
.me-card > h2 .n.off { color:var(--faint); }
.me-card form { margin:0; }
.me-card form[data-auto] + .picks { margin-top:var(--s5); }
.picks { border:0; padding:0; margin:0 0 var(--s5); display:flex; flex-wrap:wrap; gap:var(--s2); min-width:0; }
.picks legend, .picks h3 { flex:1 0 100%; width:100%; padding:0; margin:0 0 var(--s2); color:var(--faint); font-size:var(--t-label); font-weight:600; letter-spacing:.04em; }
div.picks { margin-bottom:0; }
.pick { position:relative; display:inline-flex; }
.pick input { position:absolute; inset:0; width:100%; height:100%; margin:0; opacity:0; cursor:pointer; }
.pick span { display:inline-flex; align-items:center; gap:var(--s2); min-height:var(--tap); padding:0 var(--s4); border-radius:var(--r-pill); border:1px solid var(--line-2);
  background:var(--bg); color:var(--dim); transition:border-color .12s ease, background .12s ease, color .12s ease; }
.pick span::before { content:"+"; color:var(--faint); }
.pick:hover span { border-color:var(--link); color:var(--ink); }
.pick input:checked + span { border-color:var(--accent); background:var(--accent-soft); color:var(--ink); font-weight:600; }
.pick input:checked + span::before { content:"\2713"; color:var(--good); }
.pick input:focus-visible + span { outline:2px solid var(--link); outline-offset:2px; }
.me-firms { list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:var(--s2); width:100%; }
.me-firms:empty { display:none; }
.me-firms li { display:inline-flex; align-items:center; gap:var(--s2); min-height:var(--tap); padding:0 0 0 var(--s4); border-radius:var(--r-pill);
  border:1px solid var(--accent); background:var(--accent-soft); }
.me-firms li a { color:var(--ink); font-weight:600; text-decoration:none; display:inline-flex; align-items:center; min-height:var(--tap); }
.me-firms li .n { color:var(--good); font-size:var(--t-meta); white-space:nowrap; }
.me-firms li button { min-width:var(--tap); min-height:var(--tap); border:0; border-radius:50%; background:none; color:var(--dim); cursor:pointer; }
.me-firms li button:hover { color:var(--ink); background:rgba(255,255,255,.08); }
.me-card form.search { width:100%; max-width:28rem; margin:var(--s2) 0 0; }
.me-save { display:flex; align-items:center; gap:var(--s3); margin:0; }
form.auto .me-save:has(.saved:empty) { display:none; }
.me-card form .picks:last-of-type { margin-bottom:var(--s3); }
.me-save button { margin:0; }
form.auto .me-save button { display:none; }
.saved { color:var(--good); font-size:var(--t-meta); }
.me-card form.settings .pair { margin:0 0 var(--s4); }
.me-card form.settings label { margin:0; font-size:var(--t-meta); }
.me-card form.settings button { margin:0; }
.me-card .row-actions { gap:var(--s2) var(--s4); }
.me-card .row-actions a:not(.action) { display:inline-flex; align-items:center; min-height:var(--tap); }
.me-rows { list-style:none; padding:0; margin:0; }
.me-rows li { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--s1) var(--s4); min-height:var(--tap-lg); border-top:1px solid var(--line); overflow-wrap:anywhere; }
.me-rows li:first-child { border-top:0; }
.me-rows li > a:only-child { flex:1; display:flex; align-items:center; justify-content:space-between; min-height:var(--tap-lg); color:var(--ink); text-decoration:none; }
.me-rows li > a:only-child::after { content:"\203A"; color:var(--faint); }
.me-rows li > a:only-child:hover { color:var(--link); }
.me-rows .acts { display:flex; flex-wrap:wrap; gap:0 var(--s4); }
.me-rows .acts a, .me-rows .acts button { display:inline-flex; align-items:center; min-height:var(--tap); }
.me-rows .mono { display:block; margin:var(--s2) 0; }
@media (max-width: 45rem) { .me-card { padding:var(--s4); } }
h1, h2 { text-wrap:balance; }
.lede, .block p, .bsec p { text-wrap:pretty; }
.obj-head h1 { font-size:var(--t-hero); line-height:1.1; }
.obj-kind { letter-spacing:.06em; }
.dt thead th { color:var(--dim); border-bottom-color:var(--line-2); vertical-align:bottom; }
.dt thead th a { color:inherit; text-decoration:none; }
.dt thead th a:hover { color:var(--ink); text-decoration:underline; }
.dt thead th[aria-sort] { color:var(--ink); }
@media (min-width: 60rem) {
  .dt thead th, .dt thead th.num { white-space:normal; line-height:1.25; }
  .dt thead th.num a { display:inline-block; max-width:8rem; }
  footer nav { display:grid; grid-template-columns:repeat(auto-fit, minmax(11rem, 1fr)); gap:var(--s5) var(--s6); align-items:start; }
  footer nav div { flex-direction:column; align-items:flex-start; gap:0; }
  footer nav strong { margin:0 0 var(--s1); color:var(--ink); }
}
@media (max-width: 45rem) {
  .dt thead { position:absolute; left:auto; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  .dt td.num:not(:first-child):not(.nil), .dt td.t:not(:first-child):not(.nil) { display:inline-block; white-space:nowrap; margin-right:var(--s3); }
  .dt td.num:not(:first-child):not(.nil)::before, .dt td.p ~ td:not(.nil) ~ td.num:not(.nil)::before { content:attr(data-l) " "; color:var(--faint); font-size:var(--t-meta); }
  .dt td[data-l="Kind"] { display:block; }
  .dt td.p ~ td:not(.nil):not(.num) ~ td.num:not(.nil)::before { content:attr(data-l) " "; }
  .rider { padding:var(--s4); }
}
td[data-l="What it names"] { color:var(--faint); }
table:has(.yes) th:last-child, table:has(.yes) td:last-child { background:color-mix(in srgb, var(--accent-soft) 55%, transparent); }
table:has(.yes) thead th:last-child { color:var(--ink); border-bottom-color:var(--accent); }
.rider { position:relative; z-index:2; }
@media (min-width: 60rem) { .split.open .rider { z-index:2; } }
header a.brand { display:inline-flex; align-items:center; gap:0; font-size:var(--t-brand); line-height:1; letter-spacing:-0.03em; margin-right:var(--s2); }
.rider .rider-head .back { color:var(--link); text-decoration:none; min-height:var(--tap); display:inline-flex; align-items:center; }
.rider .nums { list-style:none; padding:0; margin:var(--s2) 0 var(--s3); display:flex; flex-wrap:wrap; gap:var(--s2) var(--s4); }
.rider .nums li { color:var(--dim); font-size:var(--t-meta); }
.rider .nums strong { display:block; color:var(--ink); font-size:var(--t-title); font-variant-numeric:tabular-nums; letter-spacing:-0.01em; }
.rider h4 { font-size:var(--t-body); margin:var(--s3) 0 var(--s1); color:var(--ink); }
.rider ul.pjobs { list-style:none; padding:0; margin:0; }
.rider ul.pjobs li { padding:var(--s1) 0; }
.rider ul.pjobs li a { min-height:var(--tap); display:inline-flex; align-items:center; }
.rider .people { margin:var(--s1) 0 0; font-size:var(--t-meta); }
.rider details.more summary { cursor:pointer; min-height:var(--tap); display:flex; align-items:center; color:var(--link); }
.rider .shares { display:flex; flex-wrap:wrap; gap:var(--s2); margin:var(--s1) 0 var(--s2); }
.rider .shares a.si, .rider .shares button.share { min-height:var(--tap); display:inline-flex; align-items:center; padding:0 var(--s3);
  border:1px solid var(--line-2); border-radius:999px; color:var(--ink); text-decoration:none; background:transparent; font:inherit; font-size:var(--t-meta); }
.rider .shares.native a.si:not(.copy) { display:none; }
.shares { display:flex; flex-wrap:wrap; gap:var(--s2); }
.shares a.si, .shares button.share { min-height:var(--tap); display:inline-flex; align-items:center; padding:0 var(--s3);
  border:1px solid var(--line-2); border-radius:999px; color:var(--ink); text-decoration:none; background:transparent; font:inherit; font-size:var(--t-meta); }
.shares.native a.si:not(.copy) { display:none; }
.rider .rider-head .shares { margin:0 0 0 auto; }
.rider h2 a { color:inherit; text-decoration:none; }
.rider h2 a:hover { text-decoration:underline; text-underline-offset:4px; }
details.sharemenu { position:relative; }
details.sharemenu > summary { list-style:none; cursor:pointer; min-height:var(--tap); display:inline-flex; align-items:center; padding:0 var(--s3);
  border:1px solid var(--line-2); border-radius:999px; font-size:var(--t-meta); color:var(--ink); }
details.sharemenu > summary::-webkit-details-marker { display:none; }
details.sharemenu .sharelist { position:absolute; right:0; top:calc(100% + var(--s1)); z-index:6; display:flex; flex-direction:column; min-width:11rem;
  padding:var(--s1); background:var(--panel-2); border:1px solid var(--line-2); border-radius:var(--r-card); box-shadow:0 12px 40px rgba(0,0,0,.45); }
details.sharemenu .sharelist a.si { border:0; border-radius:var(--r-card); justify-content:flex-start; height:auto; }
details.sharemenu .sharelist a.si:hover { background:var(--panel); }
.shares.native details.sharemenu { display:none; }
.rider .rider-actions.pinned { position:sticky; bottom:calc(-1 * var(--s5)); z-index:3; margin:var(--s4) 0 0; padding:var(--s4) 0 var(--s3);
  background:linear-gradient(180deg, transparent, var(--panel) 35%); }
.rider .rider-actions.pinned.two .apply { flex:1 1 11rem; }
.applying.pinned { position:sticky; bottom:0; z-index:3; border-top:0; padding:var(--s4) 0 var(--s3); background:linear-gradient(180deg, transparent, var(--bg) 35%); }
ul.learnmore { list-style:none; padding:0; margin:0; }
ul.learnmore li a { min-height:var(--tap); display:inline-flex; align-items:center; }
.gate { display:flex; flex-wrap:wrap; align-items:center; gap:var(--s2) var(--s3); padding:var(--s3); }
.gate a.apply { margin:0; }
@media (max-width: 59.99rem) {
  .split.open .rider { position:fixed; inset:0; z-index:20; margin:0; border-radius:0; overflow-y:auto; max-height:none;
    overscroll-behavior:contain; padding-bottom:calc(var(--s5) + env(safe-area-inset-bottom)); }
  .split.open .rider .rider-head { position:sticky; top:calc(-1 * var(--s5)); background:var(--panel); z-index:1; }
  body.sheet, body:has(.split.open) { overflow:hidden; }
}
.tagsearch { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:var(--s2); align-items:start; margin:var(--s2) 0 var(--s3); }
.tagsearch .tagfield { display:flex; flex-wrap:wrap; align-items:center; gap:var(--s1); min-height:calc(var(--tap) + 8px); padding:4px var(--s2);
  border:1px solid var(--line-2); border-radius:var(--r-card); background:var(--panel); }
.tagsearch .tagfield:focus-within { border-color:var(--accent); box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 30%, transparent); }
.tagsearch ul.chips.inside { display:contents; list-style:none; margin:0; padding:0; }
.tagsearch ul.chips.inside li { display:inline-flex; }
.tagsearch .chip.on { min-height:36px; }
.tagsearch input[name=q] { flex:1 1 12rem; min-width:10rem; min-height:var(--tap); border:0; background:transparent; color:var(--ink); font:inherit; font-size:var(--t-body); outline:none; padding:0 var(--s1); }
.tagsearch button.go { min-height:36px; }
.tagsearch .bell { margin:0; }
.tagsearch .bellbtn { display:inline-flex; align-items:center; justify-content:center; width:calc(var(--tap) + 8px); height:calc(var(--tap) + 8px);
  border:1px solid var(--line-2); border-radius:var(--r-card); background:var(--panel); color:var(--dim); font-size:var(--t-title); text-decoration:none; cursor:pointer; filter:grayscale(1); }
.tagsearch .bellbtn.on { filter:none; border-color:var(--accent); color:var(--ink); }
.tagsearch .suggest { grid-column:1 / -1; position:absolute; top:calc(var(--tap) + 14px); left:0; right:0; z-index:30; list-style:none; margin:0; padding:var(--s1) 0;
  background:var(--panel); border:1px solid var(--line-2); border-radius:var(--r-card); box-shadow:0 16px 48px rgba(0,0,0,.5); max-height:70vh; overflow:auto; }
.tagsearch .suggest li { padding:var(--s1) var(--s3); min-height:var(--tap); display:flex; flex-wrap:wrap; align-items:center; column-gap:var(--s2); row-gap:0; cursor:pointer; line-height:1.35; }
.tagsearch .suggest li .gen { margin-left:auto; text-align:right; color:var(--faint); font-size:var(--t-meta); }
.tagsearch .suggest li.fam { min-height:0; padding-top:var(--s2); color:var(--faint); font-size:var(--t-label); cursor:default; }
.tagsearch .suggest li.on, .tagsearch .suggest li:not(.fam):hover { background:var(--accent-soft); }
.tagsearch .maybe { grid-column:1 / -1; margin:0; }
.tagsearch .families { grid-column:1 / -1; display:flex; flex-wrap:wrap; gap:var(--s1) var(--s3); }
.tagsearch .families details.fam > summary { cursor:pointer; min-height:var(--tap); display:inline-flex; align-items:center; color:var(--dim); list-style:none; }
.tagsearch .families details.fam > summary::after { content:"▾"; margin-left:var(--s1); font-size:var(--t-label); }
.tagsearch .families details.fam[open] { flex-basis:100%; }
.tagsearch .families details.fam[open] > summary { color:var(--ink); }
.tagsearch .families ul { list-style:none; padding:0; margin:0 0 var(--s2); display:flex; flex-wrap:wrap; gap:var(--s1); }
.tagsearch .families ul li a { display:inline-flex; align-items:center; gap:var(--s1); min-height:36px; padding:0 var(--s3); border:1px solid var(--line-2); border-radius:999px; color:var(--ink); text-decoration:none; }
.tagsearch .families ul li a .n { color:var(--faint); font-size:var(--t-meta); font-variant-numeric:tabular-nums; }
.boardbar .tagsearch { flex-basis:100%; width:100%; }
.boardbar:has(.tagsearch) { display:block; }
.countbar ~ .dt caption, .countbar ~ .dt .tablewrap caption { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.tagsearch button.go { background:var(--accent); color:#fff; border:0; border-radius:var(--r-card); padding:0 var(--s3); font:inherit; font-weight:600; cursor:pointer; }
.countbar { display:flex; align-items:center; justify-content:space-between; gap:var(--s2); margin:0 0 var(--s1); color:var(--dim); }
.countbar .count { font-variant-numeric:tabular-nums; }
footer nav { display:grid; grid-template-columns:repeat(3, 14rem); gap:var(--s2) var(--s5); }
footer nav div { display:flex; flex-direction:column; align-items:flex-start; gap:0; }
footer nav div > * { display:flex; align-items:center; min-height:var(--tap); line-height:1.3; margin:0; }
footer nav .fh { color:var(--ink); font-weight:600; font-size:var(--t-body); min-height:var(--tap); display:inline-flex; align-items:center; text-decoration:none; }
footer nav a.fh:hover { text-decoration:underline; }
footer p.company { margin-top:var(--s4); line-height:1.6; }
footer p.company a { color:var(--dim); margin-left:var(--s2); display:inline-flex; min-height:var(--tap); align-items:center; }
@media (max-width: 45rem) { footer nav { grid-template-columns:repeat(2, minmax(0, 1fr)); column-gap:var(--s3); } footer nav div:first-child { grid-row:span 2; } }
header .hs-icon { display:none; order:1; margin-left:auto; width:var(--tap); justify-content:center; color:var(--dim); border-radius:var(--r-card); }
header .hs-icon:hover { color:var(--ink); background:var(--panel-2); }
header .who { order:2; }
header .hsearch:not(.open) { display:none; }
@media (max-width: 45rem) { header .hs-icon { display:inline-flex; } header .who { margin-left:0; } }
@media (min-width: 45rem) { header .hsearch:not(.open) { display:block; } }
header .tagsearch { display:block; margin:0; position:relative; }
header .tagsearch .tagfield { min-height:var(--tap); padding:0 var(--s1) 0 var(--s2); }
header .tagsearch .chip.on { min-height:32px; font-size:var(--t-meta); }
header .tagsearch button.go { background:transparent; color:var(--dim); width:var(--tap); min-height:36px; padding:0; display:inline-flex; align-items:center; justify-content:center; }
header .tagsearch button.go:hover { color:var(--ink); }
header .tagsearch input[name=q] { flex:1 1 7rem; min-width:6rem; }
.shares { align-items:center; }
.shares a.si, .shares button.share { height:var(--tap); min-height:var(--tap); box-sizing:border-box; line-height:1; white-space:nowrap; margin:0; }
header .tagsearch .suggest { top:calc(100% + var(--s1)); }
.tagcontrols { display:flex; flex-wrap:wrap; align-items:flex-start; gap:var(--s1) var(--s3); margin:var(--s1) 0 var(--s3); }
.tagcontrols .families { display:flex; flex-wrap:wrap; gap:var(--s1) var(--s3); flex:1 1 auto; }
.tagcontrols .families details.fam > summary { cursor:pointer; min-height:var(--tap); display:inline-flex; align-items:center; color:var(--dim); list-style:none; }
.tagcontrols .families details.fam > summary::after { content:"▾"; margin-left:var(--s1); font-size:var(--t-label); }
.tagcontrols .families details.fam[open] { flex-basis:100%; }
.tagcontrols .families details.fam[open] > summary { color:var(--ink); }
.tagcontrols .families ul { list-style:none; padding:0; margin:0 0 var(--s2); display:flex; flex-wrap:wrap; gap:var(--s1); }
.tagcontrols .families ul li a { display:inline-flex; align-items:center; gap:var(--s1); min-height:36px; padding:0 var(--s3); border:1px solid var(--line-2); border-radius:999px; color:var(--ink); text-decoration:none; }
.tagcontrols .families ul li a .n { color:var(--faint); font-size:var(--t-meta); font-variant-numeric:tabular-nums; }
.tagcontrols .maybe { flex-basis:100%; margin:0; }
.tagcontrols .bell { margin:0; }
.tagcontrols .bellbtn { display:inline-flex; align-items:center; justify-content:center; width:var(--tap); height:var(--tap);
  border:1px solid var(--line-2); border-radius:var(--r-card); background:var(--panel); color:var(--dim); font-size:var(--t-title); text-decoration:none; cursor:pointer; filter:grayscale(1); }
.tagcontrols .bellbtn.on { filter:none; border-color:var(--accent); color:var(--ink); }
:root { --admin:#F2A93B; --admin-soft:rgba(242,169,59,.12); --admin-line:rgba(242,169,59,.45); }
body.admin-mode header { box-shadow:inset 0 3px 0 var(--admin); }
header a.admin-pill { order:0; display:inline-flex; align-items:center; gap:var(--s1); min-height:32px; align-self:center; padding:0 var(--s2);
  border:1px solid var(--admin-line); background:var(--admin-soft); color:var(--admin); border-radius:999px; font-size:var(--t-label); font-weight:700; text-decoration:none; letter-spacing:.02em; }
header a.admin-pill:hover { background:rgba(242,169,59,.2); }
nav.adminnav { display:flex; flex-wrap:wrap; gap:var(--s1); margin:var(--s3) 0 var(--s4); padding:var(--s2); border:1px solid var(--admin-line);
  border-radius:var(--r-card); background:linear-gradient(180deg, var(--admin-soft), transparent); }
nav.adminnav a { display:inline-flex; align-items:center; min-height:36px; padding:0 var(--s3); border-radius:999px; color:var(--dim); text-decoration:none; font-size:var(--t-meta); }
nav.adminnav a:hover { color:var(--ink); background:var(--admin-soft); }
nav.adminnav a[aria-current="page"] { color:#1b1406; background:var(--admin); font-weight:700; }
body.admin-mode main h1 { border-left:3px solid var(--admin); padding-left:var(--s3); }
nav.rp-period { display:flex; flex-wrap:wrap; gap:var(--s1); margin:0 0 var(--s4); }
nav.rp-period a { display:inline-flex; align-items:center; min-height:44px; padding:0 var(--s3); border:1px solid var(--line-2); border-radius:999px; color:var(--dim); text-decoration:none; }
nav.rp-period a[aria-current="page"] { color:var(--ink); border-color:var(--admin); background:var(--admin-soft); font-weight:700; }
.rp-summary { border:1px solid var(--admin-line); border-radius:var(--r-card); padding:var(--s3) var(--s4); margin:0 0 var(--s4); }
.rp-summary h2 { margin-top:0; } .rp-summary p { margin:0; line-height:1.6; }
.rp-spark { color:var(--dim); vertical-align:middle; }
#rp-funnel td, #rp-funnel .sub { white-space:normal; }
.rl { white-space:nowrap; } .rl-green span { color:var(--good); } .rl-amber span { color:var(--warn); } .rl-red span { color:#F08A8A; } .rl-incomplete { color:var(--faint); }
.rp-heat { display:inline-block; min-width:3.2em; padding:var(--s1); border-radius:4px; background:rgba(124,58,237,var(--a)); color:var(--ink); }
.rp-tgrid { display:grid; grid-template-columns:repeat(auto-fill, minmax(16rem, 1fr)); gap:var(--s2) var(--s4); margin:var(--s3) 0; }
.rp-tgrid label { display:flex; flex-direction:column; gap:var(--s1); font-size:var(--t-meta); color:var(--dim); }
.vh { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.dt th { vertical-align:bottom; }
.dt thead th > span, .dt thead th > a, .dt thead th.num > a { display:inline-flex; align-items:center; min-height:var(--tap); max-width:none; }
h3 + .dt caption, .split-main > .dt caption, details.older .dt caption { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.rider .rider-head .close { margin-left:auto; }
.boardbar { display:block; }
.boardctl { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--s2) var(--s4); margin:var(--s2) 0 var(--s3); }
.boardctl .maybe { flex-basis:100%; margin:0; }
ul.levels { list-style:none; margin:0; padding:0; display:flex; gap:var(--s2); overflow-x:auto; scrollbar-width:none; flex:1 1 auto; min-width:0; max-width:100%; }
ul.levels::-webkit-scrollbar { display:none; }
ul.levels a.lv { display:inline-flex; align-items:center; gap:var(--s1); min-height:var(--tap); padding:0 var(--s4); border:1px solid var(--line-2);
  border-radius:999px; color:var(--dim); text-decoration:none; white-space:nowrap; font-weight:500; }
ul.levels a.lv:hover { color:var(--ink); border-color:var(--link); }
ul.levels a.lv.on { color:var(--ink); background:var(--accent-soft); border-color:var(--accent); font-weight:600; }
ul.levels a.lv .n { color:var(--faint); font-size:var(--t-meta); font-variant-numeric:tabular-nums; }
.boardctl .ctlend { display:flex; align-items:center; gap:var(--s3); margin-left:auto; }
nav.where { display:flex; align-items:center; gap:var(--s2) var(--s3); margin:var(--s3) 0 var(--s2); min-width:0; }
nav.where strong { white-space:nowrap; font-weight:600; color:var(--ink); }
.dt tr.band td, .dt tr.band td:first-child { padding:var(--s3) 0; border:0; background:none; text-align:left; float:none; margin:0; }
.dt tr.band .join { margin:0; }
.dt tbody tr.band:hover, .dt tbody tr.band:hover td, .dt tbody tr.band:hover td:first-child { background:none; box-shadow:none; }
.boardbar.slim .boardctl::-webkit-scrollbar { display:none; }
.boardctl .bell { margin:0; }
.boardctl .action.on { border-color:var(--accent); color:var(--ink); }
.dt td .dot { display:inline-block; width:8px; height:8px; border-radius:50%; background:var(--good); margin:0 var(--s2) 0 0; vertical-align:middle; }
.dt td .age { color:var(--dim); font-weight:400; }
.dt td[data-l="Pay"] { white-space:nowrap; color:var(--dim); font-variant-numeric:tabular-nums; }
.dt td[data-l="Stage"], .dt td[data-l="Who can apply"] { color:var(--dim); min-width:6.5rem; }
.boardctl .showpay { font-size:var(--t-meta); color:var(--dim); }
@media (max-width: 45rem) {
  .dt tbody tr { position:relative; }
  .dt tbody td.p, .dt tbody tr.multi td.p { padding-right:6.5rem; }
  .dt td[data-l="Posted"] { position:absolute; right:0; top:var(--s2); }
  .dt tbody tr:has(.closes) { padding-right:6.5rem; }
  .dt tbody tr:has(.closes) td.p { padding-right:0; }
  .dt td[data-l="Posted"]::before { content:none !important; }
  .dt td[data-l="Pay"]::before { content:" · "; color:var(--faint); }
  .dt thead { width:1px; height:1px; overflow:hidden; }
  .tagcontrols .families ul li a { max-width:100%; white-space:normal; }
  .dt tbody tr:not(.group) { display:flex; flex-wrap:wrap; align-items:baseline; column-gap:var(--s3); row-gap:var(--s1); }
  .dt tbody td, .dt tr.multi td { display:inline; white-space:normal; float:none !important; margin:0; }
  .dt tbody td.p { flex-basis:100%; }
  .dt tbody td.nil { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); padding:0; }
  .dt tbody td:not(.p)::before { content:none !important; }
  .dt tbody td.num:not(.nil)::before { content:attr(data-l) " " !important; color:var(--faint); font-size:var(--t-meta); }
  .dt tbody td.num[data-l="Posted"]:not(.nil)::before { content:none !important; }
  .dt tbody tr.band, .dt tbody tr.band td:first-child { display:block; padding-left:0; padding-right:0; margin:0; }
  nav.where { margin:var(--s1) 0 var(--s2); }
  nav.where strong { font-size:var(--t-meta); }
  .front.slim { padding:var(--s2) 0 var(--s2); margin:0 0 var(--s1); }
  .front.slim h1 { font-size:var(--t-brand); margin:0 0 var(--s2); }
  .front.slim .for { font-size:var(--t-meta); margin:0; line-height:1.45; }
  .boardbar.slim .boardctl { flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; gap:var(--s2); margin:0; }
  .boardbar.slim .boardctl ul.levels { flex:0 0 auto; overflow:visible; max-width:none; }
  .boardbar.slim .boardctl .ctlend { flex:0 0 auto; margin-left:0; padding-right:var(--s2); }
  .boardbar.slim .boardctl .showpay { white-space:nowrap; }
  .boardbar.slim ~ .split .split-main > .dt:first-of-type { margin-top:var(--s1); }
}
.about-hero { padding:var(--s5) 0 var(--s3); }
.about-hero h1 { font-size:var(--t-hero); letter-spacing:-0.03em; line-height:1.1; max-width:40rem; }
.about-hero .lede { font-size:var(--t-title); color:var(--dim); line-height:1.5; max-width:42rem; }
ul.about-cards { list-style:none; padding:0; margin:var(--s5) 0; display:grid; grid-template-columns:repeat(auto-fit, minmax(14rem, 1fr)); gap:var(--s4); }
ul.about-cards li { background:var(--panel); border:1px solid var(--line-2); border-radius:var(--r-card); padding:var(--s4) var(--s5); }
ul.about-cards h2 { font-size:var(--t-body); margin:0 0 var(--s2); color:var(--ink); }
ul.about-cards p { margin:0; color:var(--dim); line-height:1.5; }
ol.about-steps, ul.about-plans { list-style:none; padding:0; margin:var(--s3) 0 var(--s4); display:grid; gap:var(--s3); }
ol.about-steps li, ul.about-plans li { display:grid; grid-template-columns:9rem 1fr; gap:var(--s3); align-items:baseline; padding:var(--s3) 0; border-bottom:1px solid var(--line); }
ol.about-steps strong, ul.about-plans strong { color:var(--ink); }
ol.about-steps span, ul.about-plans span { color:var(--dim); line-height:1.5; }
@media (max-width: 45rem) { ol.about-steps li, ul.about-plans li { grid-template-columns:1fr; gap:var(--s1); } }
.ask-hero { background:linear-gradient(180deg, var(--accent-soft), var(--panel) 70%); border:1px solid var(--line-2); border-radius:var(--r-card); padding:var(--s5); margin:var(--s3) 0 var(--s5); }
.ask-hero h1, .ask-hero h2 { font-size:var(--t-hero); letter-spacing:-0.03em; line-height:1.1; margin:0 0 var(--s4); }
.ask-form { display:grid; grid-template-columns:1fr auto; gap:var(--s3); align-items:end; }
.ask-form textarea { width:100%; min-height:calc(var(--tap) * 1.6); font:inherit; font-size:var(--t-title); padding:var(--s3) var(--s4);
  background:var(--bg); color:var(--ink); border:1px solid var(--line-2); border-radius:var(--r-card); resize:vertical; }
.ask-form .apply { margin:0; }
.ask-hero .adv-sugg { flex-direction:row; flex-wrap:wrap; margin:var(--s4) 0 0; }
.ask-hero .adv-sugg li { flex:1 1 15rem; }
.ask-hero .adv-sugg button { height:100%; border-radius:var(--r-card); }
.ask-hero > .meta { margin:var(--s3) 0 0; }
ul.stand-rows { list-style:none; padding:0; margin:var(--s2) 0 var(--s3); border:1px solid var(--line-2); border-radius:var(--r-card); background:var(--panel); }
ul.stand-rows li { display:grid; grid-template-columns:11rem 12rem 1fr auto; gap:var(--s3); align-items:baseline; padding:var(--s3) var(--s4); border-top:1px solid var(--line); }
ul.stand-rows li:first-child { border-top:0; }
ul.stand-rows .badge { justify-self:start; margin:0; }
ul.stand-rows .why { color:var(--dim); line-height:1.5; }
ul.stand-rows a { white-space:nowrap; }
@media (max-width:760px) { ul.stand-rows li { grid-template-columns:1fr auto; } ul.stand-rows .why { grid-column:1 / -1; } ul.stand-rows strong { grid-row:1; grid-column:1; } ul.stand-rows .badge { grid-row:1; grid-column:2; justify-self:end; } ul.stand-rows a { grid-column:1 / -1; } }
#stand form.stand-form { display:flex; gap:var(--s3); flex-wrap:wrap; margin:var(--s3) 0 var(--s5); }
#stand form.stand-form select { width:auto; flex:1 1 16rem; min-width:0; max-width:100%; }
ul.tool-cards { list-style:none; padding:0; margin:0 0 var(--s4); display:grid; grid-template-columns:repeat(auto-fit, minmax(15rem, 1fr)); gap:var(--s4); }
ul.tool-cards li { display:flex; flex-direction:column; gap:var(--s2); background:var(--panel); border:1px solid var(--line-2); border-radius:var(--r-card); padding:var(--s4) var(--s5); }
ul.tool-cards h3 { margin:0; font-size:var(--t-title); }
ul.tool-cards p { margin:0; color:var(--dim); line-height:1.5; flex:1; }
ul.tool-cards .action { align-self:flex-start; margin:var(--s2) 0 0; }
.badge.free, .badge.member { align-self:flex-start; font-size:var(--t-label); font-weight:600; letter-spacing:.04em; padding:var(--s1) var(--s2); border-radius:999px; }
.badge.free { color:var(--good); background:rgba(52,211,153,.12); }
.badge.member { color:var(--link); background:var(--accent-soft); }
@media (max-width: 45rem) { .ask-form { grid-template-columns:1fr; } }
ul.plans { list-style:none; padding:0; margin:var(--s4) 0 var(--s5); display:grid; grid-template-columns:repeat(auto-fit, minmax(15rem, 1fr)); gap:var(--s4); }
ul.plans > li.plan { display:flex; flex-direction:column; gap:var(--s2); background:var(--panel); border:1px solid var(--line-2); border-radius:var(--r-card); padding:var(--s5); }
ul.plans > li.plan.strong { border-color:var(--accent); background:linear-gradient(180deg, var(--accent-soft), var(--panel) 60%); }
ul.plans h2 { margin:0; font-size:var(--t-title); }
ul.plans .price { margin:0; font-size:var(--t-hero); font-weight:700; letter-spacing:-0.02em; color:var(--ink); }
ul.plans li.plan ul { list-style:none; padding:0; margin:var(--s2) 0 var(--s3); flex:1; display:grid; align-content:start; gap:var(--s2); color:var(--dim); }
ul.plans .per { margin:0; color:var(--dim); }
.door-plain li { margin:var(--s2) 0; }
ul.plans li.plan ul li::before { content:"✓ "; color:var(--good); }
ul.plans .action, ul.plans .apply { align-self:flex-start; margin:0; }
details.compare { margin:0 0 var(--s4); }
details.compare > summary { cursor:pointer; min-height:var(--tap); display:inline-flex; align-items:center; color:var(--link); font-weight:600; }
nav.learn-jump { display:flex; gap:var(--s2); flex-wrap:wrap; margin:0 0 var(--s4); }
nav.learn-jump a { display:inline-flex; align-items:center; min-height:var(--tap); padding:0 var(--s4); border:1px solid var(--line-2); border-radius:var(--r-pill); text-decoration:none; }
ul.guide-cards { list-style:none; padding:0; margin:var(--s3) 0 var(--s5); display:grid; grid-template-columns:repeat(auto-fit, minmax(15rem, 1fr)); gap:var(--s4); }
ul.guide-cards a { display:flex; flex-direction:column; gap:var(--s2); height:100%; box-sizing:border-box; background:var(--panel); border:1px solid var(--line-2);
  border-radius:var(--r-card); padding:var(--s4) var(--s5); text-decoration:none; color:var(--ink); }
ul.guide-cards a:hover { border-color:var(--link); }
ul.guide-cards strong { font-size:var(--t-title); line-height:1.25; }
ul.guide-cards span { color:var(--dim); line-height:1.5; }
ul.checks { list-style:none; padding:0; margin:var(--s4) 0; display:grid; gap:var(--s3); font-size:var(--t-title); }
ul.checks li::before { content:"✓ "; color:var(--good); font-weight:700; }
footer { border-top:1px solid var(--line); background:linear-gradient(180deg, var(--panel) 0, var(--bg) 100%); padding:var(--s6) var(--s4) 0; margin-top:var(--s6); }
footer .fwrap { max-width:96rem; margin:0 auto; display:grid; grid-template-columns:minmax(14rem, 1.4fr) 3fr; gap:var(--s5) var(--s6); align-items:start; }
footer .fbrand .brand { font-size:var(--t-title); color:var(--ink); text-decoration:none; font-weight:700; letter-spacing:-0.03em; }
footer .fbrand p { margin:var(--s2) 0 0; color:var(--dim); font-size:var(--t-body); max-width:22rem; }
footer .fwrap nav { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:var(--s4) var(--s5); margin:0; max-width:none; }
footer p.company { max-width:96rem; margin:var(--s6) auto 0; padding:var(--s4) 0 calc(var(--s4) + env(safe-area-inset-bottom)); border-top:1px solid var(--line);
  color:var(--faint); font-size:var(--t-meta); line-height:1.6; }
.route-links { margin:0; padding-left:var(--s4); }
.route-links li { margin:0 0 var(--s2); }
.route-links details summary { cursor:pointer; color:var(--dim); font-size:var(--t-meta); min-height:var(--tap); display:flex; align-items:center; }
.route-links .draft { margin:var(--s2) 0; user-select:all; }
.route-goal { margin:var(--s5) 0; }
.route-goal summary { cursor:pointer; min-height:var(--tap); display:flex; align-items:center; }
@media (max-width: 45rem) {
  footer .fwrap { grid-template-columns:1fr; }
  footer .fwrap nav { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  footer .fwrap nav div:first-child { grid-row:auto; }
}
.pstrip { display:grid; grid-template-columns:repeat(auto-fill, minmax(9rem, 1fr)); gap:var(--s2); margin:var(--s3) 0 var(--s2); padding:0; }
.pstrip > div { padding:var(--s2) var(--s3); border:1px solid var(--line-2); border-radius:var(--r-ctl); background:var(--panel-2); min-width:0; }
.pstrip dt { font-size:var(--t-label); color:var(--faint); letter-spacing:.04em; margin:0 0 var(--s1); }
.pstrip dd { margin:0; font-weight:600; overflow-wrap:break-word; }
.fit { margin:var(--s2) 0 var(--s3); padding:var(--s2) var(--s3); border-left:3px solid var(--accent); background:var(--accent-soft); border-radius:0 var(--r-ctl) var(--r-ctl) 0; }
form.fit.ask { display:flex; flex-wrap:wrap; align-items:center; gap:var(--s2); }
form.fit.ask .lbl { flex:1 1 100%; font-weight:600; }
form.fit.ask .pact { min-height:var(--tap); padding:0 var(--s3); border:1px solid var(--line-2); border-radius:var(--r-pill); background:var(--panel); color:var(--ink); cursor:pointer; }
form.fit.ask .pact:hover { border-color:var(--link); }
.pcard { margin:var(--s4) 0 0; padding:var(--s3) var(--s4); border:1px solid var(--line-2); border-radius:var(--r-card); background:var(--panel-2); }
.pcard h3 { margin:0 0 var(--s1); font-size:var(--t-body); letter-spacing:0; color:var(--ink); }
.pcard h3 a { color:inherit; }
.pcard .facts-grid { padding:0; margin:0; }
.pcard .facts-grid > div:last-child { border-bottom:0; }
.pcard p.meta { margin:var(--s2) 0 0; }
.pcard .n { color:var(--dim); font-variant-numeric:tabular-nums; }
.ppath { list-style:none; display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:var(--s2); margin:var(--s2) 0 var(--s3); padding:0; }
.ppath li { position:relative; padding:var(--s3); border:1px solid var(--line-2); border-radius:var(--r-ctl); background:var(--panel-2); min-width:0; display:flex; flex-direction:column; gap:var(--s1); }
.ppath li .lbl { font-size:var(--t-label); color:var(--faint); letter-spacing:.04em; }
.ppath li strong { overflow-wrap:break-word; }
.ppath li .sub { color:var(--dim); font-size:var(--t-meta); }
.ppath li + li::before { content:"→"; position:absolute; left:calc(-1 * var(--s2) - 4px); top:50%; transform:translateY(-50%); color:var(--faint); font-size:var(--t-meta); }
.rider .pacts.yours { margin-top:calc(-1 * var(--s2)); }
.rider .rider-actions.pinned .line, .applying.pinned .line { flex:1 1 100%; margin:0 0 var(--s1); color:var(--dim); }
.applying.pinned { display:flex; flex-wrap:wrap; gap:var(--s2); }
.applying.pinned .apply { flex:1 1 11rem; margin:0; }
.rider .rider-head .walk { display:inline-flex; gap:var(--s1); margin-right:auto; }
.rider .rider-head .walk a { display:inline-flex; align-items:center; justify-content:center; min-width:var(--tap); min-height:var(--tap); color:var(--dim); text-decoration:none; border-radius:var(--r-ctl); }
.rider .rider-head .walk a:hover { color:var(--ink); background:var(--panel-2); }
.rider .rider-head .walk a[aria-disabled="true"] { opacity:.35; pointer-events:none; }
@container (max-width: 30rem) {
  .ppath { grid-template-columns:1fr; }
  .ppath li + li::before { content:"↓"; left:var(--s3); top:calc(-1 * var(--s2) - 2px); transform:none; }
}
.split-main .views { margin:0 0 var(--s2); }
.split-main .views a[aria-current="true"] { color:var(--ink); font-weight:600; text-decoration:none; }
:root { --gold:#D4AF37; --gold-2:#F6E3A1; --gold-soft:rgba(212,175,55,.14); }
body.paid header { border-bottom:1px solid var(--gold); background-image:linear-gradient(90deg, transparent 0, var(--gold-soft) 35%, var(--gold-soft) 65%, transparent 100%), linear-gradient(90deg, transparent, var(--gold-2) 20%, var(--gold) 50%, var(--gold-2) 80%, transparent); background-repeat:no-repeat; background-size:100% 100%, 100% 2px; }
body.paid header a.brand .eq, body.paid footer .brand .eq { color:var(--gold); }
body.paid header nav a[aria-current="true"] { background:var(--gold-soft); box-shadow:inset 0 -2px 0 var(--gold); }
body.paid header .who a.me { border:1px solid var(--gold); border-radius:var(--r-pill); padding:0 var(--s3) 0 var(--s2); background:var(--gold-soft); }
body.paid header .who a.me::after { content:"✦"; color:var(--gold); margin-left:var(--s1); }
body.paid header .who .avatar { box-shadow:0 0 0 2px var(--gold); }
:root { --violet:#A78BFA; --violet-2:#DDD6FE; --violet-soft:rgba(167,139,250,.14);
  --lv-spring:#7FD6AC; --lv-summer:#8EC5FF; --lv-offcycle:#6EE7D8; --lv-industrial:#F0A6CA;
  --lv-graduate:#C4B5FD; --lv-exp:#C9CEDC; --lv-apprenticeship:#FDBA74; }
body { background-image:radial-gradient(1200px 520px at 85% -120px, rgba(124,58,237,.16), transparent 70%),
  radial-gradient(900px 420px at -10% -160px, rgba(56,189,248,.07), transparent 70%); background-repeat:no-repeat; }
body.member header { border-bottom:1px solid rgba(167,139,250,.45); background-image:linear-gradient(90deg, transparent 0, var(--violet-soft) 35%, var(--violet-soft) 65%, transparent 100%), linear-gradient(90deg, transparent, var(--violet-2) 20%, var(--violet) 50%, var(--violet-2) 80%, transparent); background-repeat:no-repeat; background-size:100% 100%, 100% 2px; }
body.member header a.brand .eq, body.member footer .brand .eq { color:var(--violet); }
body.member header nav a[aria-current="true"] { background:var(--violet-soft); box-shadow:inset 0 -2px 0 var(--violet); }
body.member header .who .avatar { box-shadow:0 0 0 2px var(--violet); }
body.guest header .who a.signin { background:linear-gradient(135deg, #8B5CF6, #6D28D9); border-color:transparent; color:#fff;
  box-shadow:0 6px 22px -6px rgba(124,58,237,.75); transition:transform .15s ease, box-shadow .15s ease; }
body.guest header .who a.signin:hover, body.guest header .who a.signin:focus-visible { transform:translateY(-1px); box-shadow:0 10px 28px -6px rgba(124,58,237,.9); }
.join { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--s3) var(--s4);
  margin:var(--s3) 0 var(--s4); padding:var(--s3) var(--s4); border-radius:var(--r-card);
  border:1px solid rgba(167,139,250,.35); background:linear-gradient(120deg, rgba(124,58,237,.22), rgba(124,58,237,.06) 60%, rgba(56,189,248,.08)); }
.join p { margin:0; color:var(--dim); max-width:44rem; }
.join p strong { color:var(--ink); margin-right:var(--s2); }
.join a.apply, .gate a.apply { min-height:var(--tap); display:inline-flex; align-items:center; padding:0 var(--s5); border-radius:var(--r-pill);
  background:linear-gradient(135deg, #8B5CF6, #6D28D9); color:#fff; font-weight:700; text-decoration:none; border:0;
  box-shadow:0 6px 22px -8px rgba(124,58,237,.8); transition:transform .15s ease; }
.join a.apply:hover, .gate a.apply:hover { transform:translateY(-1px); }
.gate { border-color:rgba(167,139,250,.35); background:linear-gradient(120deg, rgba(124,58,237,.22), rgba(124,58,237,.05) 70%); }
.lvl { display:inline-flex; align-items:center; gap:var(--s1); padding:0 var(--s3) 0 var(--s2); border-radius:var(--r-pill); font-size:var(--t-meta); font-weight:600;
  color:var(--c, var(--lv-exp)); background:color-mix(in srgb, var(--c, var(--lv-exp)) 13%, transparent); border:1px solid color-mix(in srgb, var(--c, var(--lv-exp)) 30%, transparent); white-space:nowrap; }
.lvl::before { content:""; width:var(--s2); height:var(--s2); border-radius:50%; background:currentColor; }
a.lvl.lvl, a.lvl.lvl:hover { color:var(--c, var(--lv-exp)); text-decoration:none; }
.lvl-spring { --c:var(--lv-spring); } .lvl-summer_intern { --c:var(--lv-summer); } .lvl-offcycle { --c:var(--lv-offcycle); }
.lvl-industrial { --c:var(--lv-industrial); } .lvl-graduate { --c:var(--lv-graduate); } .lvl-apprenticeship { --c:var(--lv-apprenticeship); }
.fm { flex:0 0 auto; white-space:nowrap; line-height:1; display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; margin-right:var(--s2); vertical-align:middle;
  border-radius:8px; font-size:var(--t-label); font-weight:700; letter-spacing:.02em; color:hsl(var(--h) 85% 82%);
  background:linear-gradient(145deg, hsl(var(--h) 55% 30%), hsl(var(--h) 50% 20%)); box-shadow:inset 0 0 0 1px hsl(var(--h) 60% 45% / .45); }
img.fm.logo { display:inline-block; object-fit:contain; padding:0; border-radius:6px; background:#fff; }
.rider .rhead { display:flex; align-items:center; gap:var(--s3); }
.rider .rhead .fm { margin:0; }
.rider .rhead h2 { margin:0; }
.rider-actions.top { margin:var(--s3) 0 var(--s4); }
.rider .dt { margin:var(--s2) 0; }
.rider .more { margin:var(--s2) 0 var(--s4); }
.mstrip { list-style:none; display:grid; grid-template-columns:repeat(12, 1fr); gap:var(--s1); margin:var(--s2) 0 var(--s3); padding:0; }
.mstrip li { height:var(--s6); border-radius:var(--s1); background:var(--line-2); display:flex; align-items:flex-end; justify-content:center; }
.mstrip li span { font-size:var(--t-label); color:var(--faint); padding-bottom:var(--s1); }
.mstrip li.h1 { background:rgba(124,58,237,.25); }
.mstrip li.h2 { background:rgba(124,58,237,.45); }
.mstrip li.h3 { background:rgba(124,58,237,.65); }
.mstrip li.h4 { background:rgba(124,58,237,.9); }
.mstrip li.h3 span, .mstrip li.h4 span { color:var(--ink); }
.mstrip li.now { box-shadow:inset 0 0 0 2px var(--link); }
.mhead { font-size:var(--t-label); font-weight:600; color:var(--dim); margin:var(--s3) 0 0; }
.mstrip.sn { padding:var(--s5) 0 var(--s5); }
.mstrip.sn li { position:relative; min-width:0; }
.mstrip.sn .mc, .mstrip.sn .mw { position:absolute; left:0; right:0; text-align:center; font-size:var(--t-label); line-height:1.3; white-space:nowrap; font-style:normal; }
.mstrip.sn .mc { top:100%; margin-top:var(--s1); color:var(--dim); font-weight:400; font-variant-numeric:tabular-nums; }
.mstrip.sn .mw { bottom:100%; margin-bottom:var(--s1); color:var(--ink); font-weight:700; }
@media (max-width: 59.99rem) {
  .cols.s4 { display:flex; flex-direction:column; }
  .cols.s4 > aside { display:contents; }
  .cols.s4 > aside > .lead { order:1; }
  .cols.s4 > .main { order:2; }
  .cols.s4 > aside > :not(.lead) { order:3; }
}
.applying.pinned.pair .apply, .rider .rider-actions.pinned.two.pair .apply { flex:1 1 0; min-width:0; padding:0 var(--s3); text-align:center; line-height:1.2; }
nav.wayon { border-top:1px solid var(--line); margin-top:var(--s5); padding-top:var(--s4); }
nav.wayon h2, nav.wayon h3 { margin-top:0; }
nav.wayon ul { list-style:none; padding:0; margin:0; }
.split-main.term > section + section { margin-top:var(--s6); }
.split-main.term > section > h2 { margin:var(--s4) 0 var(--s2); }
@media (min-width: 64rem) and (max-width: 74.99rem) {
  header nav { gap:0; }
  header nav a, header .jswitch a { padding:0 var(--s2); white-space:nowrap; }
  header .hsearch { min-width:0; flex:1 1 8rem; }
  header .hsearch .tagsearch, header .hsearch input { min-width:0; }
  header .hsearch .tagfield { flex-wrap:nowrap; overflow:hidden; }
  header .hsearch .tagfield input { flex:1 1 0; width:0; }
}
nav.wayon li a { display:flex; align-items:center; min-height:var(--tap); }
details.whole summary { cursor:pointer; color:var(--link); margin:var(--s2) 0; }
@media (min-width: 64rem) {
  .split.open:has(.rider[data-wide]) { grid-template-columns:minmax(0,1fr) clamp(26rem, 38vw, 40rem); }
}
.dt td.num { font-variant-numeric:tabular-nums; }
.dt tbody tr { transition:background-color .12s ease; }
.dt tbody tr:hover { background:linear-gradient(90deg, rgba(124,58,237,.14), rgba(25,28,56,.55) 40%); }
.dt td.p .dot { box-shadow:0 0 0 4px rgba(127,214,172,.18); }
.fmh0 { --h:8; } .fmh1 { --h:38; } .fmh2 { --h:68; } .fmh3 { --h:98; } .fmh4 { --h:128; } .fmh5 { --h:158; } .fmh6 { --h:188; } .fmh7 { --h:218; } .fmh8 { --h:248; } .fmh9 { --h:278; } .fmh10 { --h:308; } .fmh11 { --h:338; }
nav.areachips { display:flex; flex-wrap:wrap; gap:var(--s2); margin:var(--s2) 0 0; width:100%; }
nav.areachips a { display:inline-flex; align-items:center; min-height:var(--tap); padding:0 var(--s4); border-radius:var(--r-pill); border:1px solid var(--line-2);
  color:var(--dim); text-decoration:none; font-size:var(--t-meta); background:rgba(18,20,42,.6); transition:border-color .12s ease, color .12s ease; }
nav.areachips a:hover { border-color:var(--violet); color:var(--ink); }
nav.areachips a.on { color:var(--ink); background:var(--accent-soft); border-color:var(--accent); font-weight:600; }
details.older { margin:var(--s4) 0 0; border-top:1px solid var(--line); }
details.older > summary { cursor:pointer; list-style:none; display:flex; align-items:center; gap:var(--s2); min-height:var(--tap);
  padding:var(--s2) 0; color:var(--dim); font-weight:600; }
details.older > summary::-webkit-details-marker { display:none; }
details.older > summary::before { content:""; width:.45rem; height:.45rem; border-right:2px solid var(--faint); border-bottom:2px solid var(--faint);
  transform:rotate(-45deg); transition:transform .15s ease; }
details.older[open] > summary::before { transform:rotate(45deg); }
details.older > summary .n { color:var(--faint); font-weight:400; font-variant-numeric:tabular-nums; }
nav.areachips::-webkit-scrollbar { display:none; }
.front { padding:var(--s5) 0 var(--s4); }
.front h1 { font-size:var(--t-hero); }
.card, .rider { box-shadow:0 1px 0 rgba(255,255,255,.03) inset, 0 10px 30px -18px rgba(0,0,0,.8); }
a.card:hover, .cards a:hover { transform:translateY(-1px); }
.shares button.share[hidden] { display:none; }
details.sharemenu .sharelist { left:0; right:auto; }
.rider-head details.sharemenu .sharelist { left:auto; right:0; }
.rider .rider-head .shares + .close { margin-left:0; }
@media (max-width: 45rem) {
  .fm { width:24px; height:24px; margin-right:var(--s1); border-radius:6px; }
  .join { padding:var(--s3); }
  .join a.apply { width:100%; justify-content:center; }
  nav.areachips { flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; }
  nav.areachips a { flex:0 0 auto; }
}
@media (prefers-reduced-motion: reduce) { * { transition:none !important; } }
:root { --hdr:63px; --drawer:#14163A; }
.rider { background:linear-gradient(180deg, rgba(124,58,237,.12), rgba(124,58,237,0) 240px), var(--drawer);
  overflow-wrap:break-word; container:rider / inline-size; }
.rider { --rpt:var(--s5); --rps:var(--s5); }
@media (max-width: 45rem) { .rider { --rpt:var(--s4); --rps:var(--s4); } }
.split.open .rider .rider-head { position:sticky; top:calc(-1 * var(--rpt)); z-index:2; background:var(--drawer);
  margin:calc(-1 * var(--rpt)) calc(-1 * var(--rps)) 0; padding:var(--s3) var(--rps) var(--s2); }
.rider a.close { font-size:var(--t-brand); line-height:1; }
@media (min-width: 75rem) {
  body:has(.split.open) { --pw:clamp(26rem, 34vw, 44rem); }
  body:has(.split.open .rider[data-wide]) { --pw:clamp(28rem, 38vw, 50rem); }
  body:has(.split.open .rider[data-focus]) { --pw:min(66vw, 90rem); }
  body:has(.split.open) main.wide { max-width:none; padding-right:calc(var(--pw) + var(--s5)); }
  body:has(.split.open) footer { padding-right:calc(var(--pw) + var(--s5)); }
  .split.open { display:block; }
  .split.open .rider { position:fixed; top:var(--hdr); right:0; bottom:0; left:auto; width:var(--pw); max-height:none; margin:0;
    border:0; border-left:1px solid rgba(124,58,237,.45); border-radius:0; box-shadow:-28px 0 56px -16px rgba(0,0,0,.6);
    overflow-y:auto; overscroll-behavior:contain; z-index:2; padding:var(--s5) var(--s6) var(--s7); --rps:var(--s6); }
}
.split-main { container:list / inline-size; }
@container list (max-width: 42rem) {
  .split-main .dt thead { position:absolute; left:-999px; }
  .split-main .dt table, .split-main .dt tbody, .split-main .dt tr { display:block; width:100%; }
  .split-main .dt tr { padding:var(--s2) 0; border-bottom:1px solid var(--line); }
  .split-main .dt td { padding:0; border:0; display:inline; }
  .split-main .dt td.p { display:block; }
  .split-main .dt td:not(.p) .sub { display:inline; }
  .split-main .dt td.nil::before { content:none; }
  .split-main .dt td.p ~ td:not(.nil) ~ td:not(.nil)::before { content:" · "; color:var(--faint); }
  .split-main .dt td.num:not(.nil)::before { content:attr(data-l) " "; color:var(--faint); font-size:var(--t-meta); }
  .split-main .dt td.p ~ td:not(.nil) ~ td.num:not(.nil)::before { content:" · " attr(data-l) " "; color:var(--faint); font-size:var(--t-meta); }
  .split-main .dt td.num { text-align:left; }
}
@media (min-width: 48rem) and (max-width: 74.99rem) {
  .split.open { display:block; }
  .split.open .rider { position:fixed; top:var(--hdr); right:0; bottom:0; left:auto; width:min(36rem, 88vw); max-height:none; margin:0;
    border:0; border-left:1px solid rgba(124,58,237,.45); border-radius:0; box-shadow:-28px 0 56px -16px rgba(0,0,0,.6);
    overflow-y:auto; overscroll-behavior:contain; z-index:6; padding:var(--s5); }
  .split.open .rider[data-focus] { width:calc(100vw - 3rem); }
  body:has(.split.open) main::after { content:""; position:fixed; inset:var(--hdr) 0 0 0; background:rgba(5,6,14,.6); z-index:5; pointer-events:none; }
  body.sheet, body:has(.split.open) { overflow:visible; }
}
.rider .fabout h3, .rider .fhire h3 { margin-top:var(--s4); }
.rider .fabout .facts-grid, .rider .fhire .facts-grid { margin:var(--s2) 0 var(--s3); }
.rider .facts-grid > div { grid-template-columns:9rem minmax(0,1fr); }
.rider .fhire .mstrip { margin:var(--s3) 0 var(--s2); }
.rider .fhire > p { margin:var(--s2) 0 0; }
.rider .fabout p { line-height:1.6; max-width:70ch; }
.rider .fabout p a { text-decoration:underline; text-decoration-color:rgba(185,166,245,.45); text-underline-offset:3px; }
@container rider (max-width: 26rem) {
  .rider .facts-grid > div { grid-template-columns:7.5rem minmax(0,1fr); }
}
.jswitch { display:none; align-items:center; gap:0; flex:0 0 auto; border:1px solid var(--line-2); border-radius:var(--r-pill); }
.jswitch a { display:inline-flex; align-items:center; min-height:var(--tap); padding:0 var(--s3); border-radius:var(--r-pill);
  color:var(--dim); text-decoration:none; white-space:nowrap; }
.jswitch a:hover { color:var(--ink); background:var(--panel-2); }
.jswitch a[aria-current] { color:var(--ink); background:var(--accent-soft); font-weight:600; }
@media (min-width: 64rem) { header .jswitch.head { display:inline-flex; } }
@media (max-width: 63.99rem) { .jswitch.bar { display:inline-flex; } }
@media (max-width: 45rem) { header nav { flex-wrap:wrap; } header nav a { padding:0 var(--s2); } }
@media (max-width: 26rem) { header nav { gap:0; } header nav a { padding:0 var(--s1); } }
.rider .pacts { display:flex; flex-wrap:wrap; align-items:center; gap:var(--s2); margin:var(--s3) 0 var(--s4); }
.rider .pacts form { margin:0; }
.rider .pacts .shares { margin:0; }
.rider .pacts .pact { display:inline-flex; align-items:center; gap:var(--s1); min-height:var(--tap); margin:0; padding:0 var(--s3);
  border:1px solid var(--line-2); border-radius:999px; background:transparent; color:var(--ink); font:inherit; font-size:var(--t-meta);
  text-decoration:none; cursor:pointer; white-space:nowrap; }
.rider .pacts .pact:hover { border-color:var(--link); }
.rider .pacts .pact .n { color:var(--dim); font-variant-numeric:tabular-nums; }
.rider .pacts .pact[aria-pressed="true"], .rider .pacts .pact.on { background:var(--accent-soft); border-color:var(--accent); }
.rider .pacts .pact.icon { width:var(--tap); padding:0; justify-content:center; color:var(--dim); }
.rider .pacts .pact.icon:hover { color:var(--ink); }
.me-tiles { list-style:none; padding:0; margin:0 0 var(--s5); display:grid; grid-template-columns:repeat(auto-fit, minmax(14rem, 1fr)); gap:var(--s3); }
.me-tiles .mtile { display:flex; flex-direction:column; gap:var(--s1); min-width:0; padding:var(--s4); border:1px solid var(--line-2);
  border-radius:var(--r-card); overflow-wrap:anywhere; }
.me-tiles .mtile .k { color:var(--dim); font-size:var(--t-meta); }
.me-tiles .mtile strong { color:var(--ink); font-size:var(--t-title); font-weight:600; }
.me-tiles .mtile .sub { color:var(--dim); font-size:var(--t-meta); }
.me-tiles .mtile .acts { display:flex; flex-wrap:wrap; align-items:center; gap:0 var(--s4); margin-top:auto; padding-top:var(--s1); }
.me-tiles .mtile .acts a, .me-tiles .mtile .acts form { display:inline-flex; align-items:center; min-height:var(--tap); margin:0; }
.me-tiles .mtile .acts .row-actions { flex-basis:100%; gap:var(--s2); }
.me-tiles .mtile.ai { border-color:var(--accent); background:var(--accent-soft); }
.me-tiles .mtile.plan > strong { font-size:var(--t-body); font-weight:400; }
@media (min-width: 45rem) { .me-tiles .mtile.ai, .me-tiles .mtile.plan { grid-column:span 2; } }
.me-sec.me-card > h2 { font-size:var(--t-title); letter-spacing:-0.01em; margin:0 0 var(--s3); }
.me-sec form.settings label { display:flex; flex-direction:column; gap:var(--s1); max-width:28rem; margin:0; font-size:var(--t-meta); }
.me-sec form.settings { margin:0 0 var(--s4); }
.me-sec.quiet { margin:var(--s5) 0 0; padding:0 var(--s1); color:var(--dim); }
.me-sec.quiet > h2 { font-size:var(--t-body); color:var(--dim); margin:0 0 var(--s3); }
.me-sec.quiet .me-rows li > a:only-child { color:var(--dim); }
.me-admin { margin:var(--s5) 0 0; }
.me-admin a { display:inline-flex; align-items:center; gap:var(--s1); min-height:var(--tap); }
.convs { margin:var(--s5) 0; }
.convs > h2 { margin:0 0 var(--s2); }
@media (min-width: 60rem) {
  .dt th[data-k="title"] { width:36%; }
  .dt th[data-k="firm"] { width:22%; }
  .dt th[data-k="programme"] { width:14%; }
  .dt th[data-k="stage"] { width:16%; }
  .dt th[data-k="pay"] { width:12%; }
  .dt th[data-k="posted"] { width:12%; }
}
@container list (min-width: 64rem) {
  .dt td .sub.nowrap { display:inline; margin-left:var(--s2); }
  .dt td .closes { display:inline; }
  .dt td .closes::before { content:" · "; color:var(--faint); }
}
.dt tbody tr[aria-current] { background:var(--accent-soft); }
.dt tbody tr[aria-current] td:first-child { box-shadow:inset 3px 0 0 var(--accent); }
html:root {
  color-scheme:light;
  --bg:#FBF9F4; --panel:#FFFFFF; --panel-2:#F3EFE6; --line:#E3DDD0; --line-2:#C9C1AF; --drawer:#FFFFFF;
  --ink:#17181E; --dim:#43454E; --faint:#5C5E68;
  --accent:#5B21B6; --accent-soft:#EEE8FA; --link:#4C1D95;
  --good:#1D6B45; --good-line:#9CC9B1; --warn:#7A5000; --warn-line:#DDBE79; --info:#1E4E9C; --info-line:#A9BFE6;
  --locked:#5B21B6; --locked-line:#C9B8EE; --locked-bg:#F5F0FC;
  --gold:#86640C; --gold-2:#A8801A; --gold-soft:rgba(134,100,12,.10);
  --violet:#5B21B6; --violet-2:#4C1D95; --violet-soft:rgba(91,33,182,.08);
  --lv-spring:#1F6F5C; --lv-summer:#1E4E9C; --lv-offcycle:#1D6B45; --lv-industrial:#8A2D5C; --lv-graduate:#5B21B6;
  --lv-apprenticeship:#8A4B00; --lv-exp:#43454E;
  --admin:#8A5A00; --admin-soft:rgba(138,90,0,.08); --admin-line:rgba(138,90,0,.45); --admin-ink:#FFFFFF;
  --rule:#17181E; --fill-good:#1D6B45; --aged-bg:#FBF1DA; --bad:#B42318;
  --shade:rgba(23,24,30,.12); --scrim:rgba(23,24,30,.28); --ul:rgba(76,29,149,.35);
  --m1:#E3D9F6; --m2:#C9B5EE; --m3:#7C5AC8; --m4:#5B21B6; --m-ink:#FFFFFF;
  --fm-s:45%; --fm-l:91%; --fm-ink-l:28%; --heat:91,33,182; --heat-k:.35;
  --r-card:6px; --r-ctl:4px;
}
@media (prefers-color-scheme: dark) {
html:root {
  color-scheme:dark;
  --bg:#0A0B10; --panel:#111219; --panel-2:#171923; --line:#22242E; --line-2:#34374A; --drawer:#0F1017;
  --ink:#ECEDF2; --dim:#B5B7C5; --faint:#9396A8;
  --accent:#7C3AED; --accent-soft:#221A3D; --link:#C0B0F7;
  --good:#7FD6AC; --good-line:#2E7D5B; --warn:#E8C464; --warn-line:#8A6D1F; --info:#9DBBF5; --info-line:#3D5A99;
  --locked:#C7B4FF; --locked-line:#4B3A86; --locked-bg:#1C1435;
  --gold:#D4AF37; --gold-2:#F6E3A1; --gold-soft:rgba(212,175,55,.14);
  --violet:#A78BFA; --violet-2:#DDD6FE; --violet-soft:rgba(167,139,250,.14);
  --lv-spring:#7FD6AC; --lv-summer:#8EC5FF; --lv-offcycle:#6EE7D8; --lv-industrial:#F0A6CA; --lv-graduate:#C4B5FD;
  --lv-apprenticeship:#FDBA74; --lv-exp:#C9CEDC;
  --admin:#F2A93B; --admin-soft:rgba(242,169,59,.12); --admin-line:rgba(242,169,59,.45); --admin-ink:#1B1406;
  --rule:#34374A; --fill-good:#2E7D5B; --aged-bg:#241D07; --bad:#F08A8A;
  --shade:rgba(0,0,0,.5); --scrim:rgba(5,6,14,.6); --ul:rgba(192,176,247,.4);
  --m1:rgba(124,58,237,.25); --m2:rgba(124,58,237,.45); --m3:rgba(124,58,237,.65); --m4:rgba(124,58,237,.9); --m-ink:#ECEDF2;
  --fm-s:50%; --fm-l:22%; --fm-ink-l:82%; --heat:124,58,237; --heat-k:1;
}
}
body { background:var(--bg); background-image:none; }
a { text-decoration-color:var(--ul); }
h1, h2, .obj-head h1, .front h1, .rider h2, .boardbar h1, .boardbar h2 { font-family:"Iowan Old Style","Charter","Source Serif Pro","Georgia",serif; font-weight:700; letter-spacing:-0.01em; }
.bsec p, .bsec li, .block p, .block li, .lede, .front .for, .rider .fabout p { font-family:"Iowan Old Style","Charter","Source Serif Pro","Georgia",serif; line-height:1.65; }
.front h1 { background:none; -webkit-background-clip:border-box; background-clip:border-box; color:var(--ink); }
header { background:var(--bg); -webkit-backdrop-filter:none; backdrop-filter:none; border-bottom:1px solid var(--rule); background-image:none; }
header a.brand, header nav a { color:var(--ink); }
header nav a[aria-current="true"] { background:transparent; box-shadow:inset 0 -2px 0 var(--ink); border-radius:0; }
header nav a:hover { background:var(--panel-2); }
header form.search input { background:var(--panel); }
body.member header { border-bottom:1px solid var(--rule); background-image:none; }
body.member header nav a[aria-current="true"] { background:transparent; box-shadow:inset 0 -2px 0 var(--ink); }
body.paid header { border-bottom:2px solid var(--gold); background-image:none; }
body.paid header nav a[aria-current="true"] { background:transparent; box-shadow:inset 0 -2px 0 var(--gold); }
body.guest header .who a.signin { background:transparent; border:1px solid var(--ink); color:var(--ink); box-shadow:none; transform:none; border-radius:var(--r-ctl); }
body.guest header .who a.signin:hover, body.guest header .who a.signin:focus-visible { background:var(--panel-2); transform:none; box-shadow:none; }
input, select, textarea { background:var(--panel); color:var(--ink); border-color:var(--line-2); }
.apply, .cv-btn, form.settings button, form.stand-form button, .adv-form button, .join a.apply, .gate a.apply {
  background:var(--accent); color:#fff; box-shadow:none; transform:none; border-radius:var(--r-ctl); }
.apply:hover, .cv-btn:hover, form.settings button:hover, .join a.apply:hover, .gate a.apply:hover { transform:none; box-shadow:none; filter:brightness(1.12); }
.apply.soft, .gate a.apply.soft { background:var(--panel); color:var(--link); border:1px solid var(--accent); }
.apply.soft:hover, .gate a.apply.soft:hover { background:var(--accent); color:#fff; }
.apply.quiet, .cv-btn.quiet { background:var(--panel); color:var(--ink); border:1px solid var(--line-2); }
a.action, button.action, button.quiet { background:var(--panel); color:var(--ink); border-color:var(--line-2); }
a.action:hover, button.action:hover, button.quiet:hover { background:var(--panel-2); border-color:var(--ink); }
.me-firms li button:hover { background:var(--panel-2); }
nav.areachips a { background:var(--panel); }
nav.areachips a.on, .boardctl .levels a.lv.on, nav.where .levels a.lv.on, .jswitch a[aria-current="true"] { background:var(--panel); color:var(--ink); border-color:var(--ink);
  box-shadow:inset 0 0 0 1px var(--ink); font-weight:700; }
.jswitch a[aria-current="true"], body header nav .jswitch a[aria-current="true"] { border-radius:var(--r-pill); background:var(--panel);
  box-shadow:inset 0 0 0 1px var(--ink); color:var(--ink); }
.card, .facts-grid, .person, .state, .stat li, .plan, .surface, .cv-card, .draft, details.filter, .ba, .me-card, .tile, .pcard, .pstrip > div {
  background:var(--panel); border-color:var(--line); box-shadow:none; }
.ba.after, .plan.paid, ul.plans > li.plan.strong { background:var(--locked-bg); }
.ask-hero { background:var(--panel); }
.join, .gate { background:var(--panel); border:1px solid var(--line); border-top:2px solid var(--rule); border-radius:0; box-shadow:none; }
.sharemenu, details.share > div { background:var(--panel); }
.dt thead th { background:var(--bg); -webkit-backdrop-filter:none; backdrop-filter:none; border-bottom:1px solid var(--rule); color:var(--dim); }
.dt tbody tr:hover { background:var(--panel-2); }
.dt td.p a { color:var(--ink); }
.rider .dt thead th { background:var(--drawer); }
.locked .dt thead th { background:var(--locked-bg); }
.lvl { background:transparent; border:1px solid var(--line-2); }
.fm { color:hsl(var(--h) 60% var(--fm-ink-l)); background:hsl(var(--h) var(--fm-s) var(--fm-l)); box-shadow:inset 0 0 0 1px hsl(var(--h) 40% 50% / .35); }
img.fm.logo, img.logo { background:#fff; box-shadow:0 0 0 1px var(--line-2); }
.rider { background:var(--drawer); color:var(--ink); box-shadow:none; }
.rider .rider-head, .rider .rhead { background:var(--drawer); }
@media (min-width: 48rem) {
  .split.open .rider { border-left:1px solid var(--rule); box-shadow:-16px 0 40px -24px var(--shade); }
}
body:has(.split.open) main::after { background:var(--scrim); }
.rider .fabout p a { text-decoration-color:var(--ul); }
.mstrip li { background:var(--panel-2); border:1px solid var(--line); }
.mstrip li.h1 { background:var(--m1); } .mstrip li.h2 { background:var(--m2); }
.mstrip li.h3 { background:var(--m3); } .mstrip li.h4 { background:var(--m4); }
.mstrip li.h2 span { color:var(--dim); }
.mstrip li.h3 span, .mstrip li.h4 span { color:var(--m-ink); }
.mstrip li.now { box-shadow:none; outline:2px solid var(--ink); outline-offset:-2px; }
details.sharemenu .sharelist, .tagsearch .suggest { box-shadow:0 12px 32px var(--shade); }
.badge.aged { background:var(--aged-bg); }
.steps li.done .n, .wait-steps li.done .dot { background:var(--fill-good); border-color:var(--fill-good); }
.rl-red span { color:var(--bad); }
nav.adminnav a[aria-current="page"] { color:var(--admin-ink); }
.rp-heat { background:rgba(var(--heat), calc(var(--a) * var(--heat-k))); }
header a.admin-pill:hover { background:var(--admin-soft); }
footer { background:var(--panel-2); border-top:1px solid var(--line-2); color:var(--dim); }
footer a, footer .fh { color:var(--ink); }
