/* MARK — station-hall split-flap board. Warm plaster wall, black mechanical board, cream flaps. */
:root{
  --wall:#ebe4d6;--wall2:#e1d9c8;--wall3:#d5cbb6;--ink:#17150f;--ink2:#4a463c;--faint:#8a8476;
  --board:#141418;--board2:#1d1d23;--flap:#2a2a31;--flap2:#222228;--cream:#f3ecd9;--amber:#f0a51f;--green:#5ec87a;--red:#e8604f;--steel:#5d5c66;
  --cond:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;--sans:'IBM Plex Sans',system-ui,-apple-system,Segoe UI,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{color-scheme:light}
body{background:var(--wall);color:var(--ink);font-family:var(--sans);line-height:1.55;font-size:15.5px;
  background-image:radial-gradient(ellipse at 50% -10%,rgba(255,255,255,.55),transparent 60%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
a{color:inherit}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}

/* ── station sign (nav) ── */
.sign{background:var(--ink);color:var(--cream);border-bottom:6px solid var(--amber)}
.sign .wrap{display:flex;align-items:stretch;justify-content:space-between;gap:18px;min-height:64px}
.sign .brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.sign .brand .mk{font-family:var(--cond);font-weight:700;font-size:34px;letter-spacing:.06em;line-height:1}
.sign .brand .mk span{color:var(--amber)}
.sign .brand .tag{font-family:var(--cond);font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:#bdb5a1;border-left:1px solid #3a3a42;padding-left:14px;line-height:1.3}
.sign nav{display:flex;align-items:center;gap:4px}
.sign nav a{font-family:var(--cond);font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:#d8d0bb;text-decoration:none;padding:8px 12px;border-radius:2px}
.sign nav a:hover,.sign nav a.on{color:var(--cream);background:#26262e}
.sign nav a.cta{background:var(--amber);color:var(--ink);font-weight:700}
.sign nav a.cta.live{background:var(--green)}
@media(max-width:720px){.sign .brand .tag{display:none}.sign nav a{padding:8px 8px;font-size:14px}}

/* ── flaps ── */
.fl{display:inline-flex;gap:2px;vertical-align:middle}
.fc{position:relative;width:.62em;height:1.06em;font-family:var(--cond);font-weight:600;font-size:inherit;line-height:1.06em;text-align:center;color:var(--cream);
  perspective:220px;border-radius:2px;overflow:hidden;background:var(--flap2)}
.fc .h{position:absolute;left:0;right:0;height:50%;overflow:hidden;background:var(--flap);backface-visibility:hidden}
.fc .h::after{content:attr(data-c);position:absolute;left:0;right:0;height:1.06em;line-height:1.06em}
.fc .t{top:0;border-radius:2px 2px 0 0;transform-origin:bottom}
.fc .t::after{top:0}
.fc .b{bottom:0;border-radius:0 0 2px 2px;transform-origin:top;background:var(--flap2)}
.fc .b::after{bottom:0}
.fc .ta{z-index:3}.fc .bb{z-index:3;transform:rotateX(90deg)}
.fc::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(0,0,0,.65);z-index:4}
.fc.flip .ta{animation:foldDown .16s ease-in forwards}
.fc.flip .bb{animation:foldUp .16s .16s ease-out forwards}
@keyframes foldDown{from{transform:rotateX(0)}to{transform:rotateX(-90deg)}}
@keyframes foldUp{from{transform:rotateX(90deg)}to{transform:rotateX(0)}}
.fl.amber .fc{color:var(--amber)}.fl.green .fc{color:var(--green)}.fl.red .fc{color:var(--red)}.fl.dim .fc{color:#a39d8c}
.fc.blank .h::after{content:""}

/* ── the board ── */
.boardwrap{background:var(--board);border:10px solid #0d0d10;border-radius:6px;box-shadow:0 30px 60px -30px rgba(0,0,0,.6),inset 0 0 0 1px #2a2a32;overflow-x:auto;margin:26px 0}
.boardhead{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 22px;border-bottom:1px solid #2a2a32;min-width:940px}
.boardhead .ttl{font-family:var(--cond);font-size:20px;letter-spacing:.24em;text-transform:uppercase;color:#b8b09b}
.boardhead .ttl b{color:var(--cream);font-weight:700}
.boardhead .clock{display:flex;gap:22px;align-items:center;font-family:var(--cond);font-size:15px;letter-spacing:.16em;text-transform:uppercase;color:#8f887a}
.boardhead .clock .fl{font-size:20px}
table.board{width:100%;border-collapse:collapse;min-width:940px}
table.board th{font-family:var(--cond);font-weight:500;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:#8f887a;text-align:left;padding:12px 10px 8px;border-bottom:1px solid #2a2a32;white-space:nowrap}
table.board td{padding:7px 10px;font-size:26px;white-space:nowrap;border-bottom:1px solid #1c1c22}
table.board tr:hover td{background:#191920}
table.board td.r,table.board th.r{text-align:right}
table.board td .fl{font-size:inherit}
table.board a.rowlink{position:absolute;inset:0}
table.board td.name{font-family:var(--sans);font-size:12px;color:#8f887a;letter-spacing:.04em;padding-left:0}
table.board td.name a{text-decoration:none;color:#c8c0aa}
table.board td.name a:hover{color:var(--amber)}
.legend{display:flex;flex-wrap:wrap;gap:18px 26px;padding:12px 22px 16px;font-family:var(--cond);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#8f887a;border-top:1px solid #2a2a32;min-width:940px}
.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:8px;vertical-align:-1px}
@media(max-width:720px){table.board td{font-size:20px}}

/* ── placards (printed signs on the wall) ── */
h1.hero{font-family:var(--cond);font-weight:700;font-size:clamp(46px,7vw,92px);line-height:.95;letter-spacing:.01em;margin:44px 0 12px;text-transform:uppercase}
h1.hero em{font-style:normal;color:var(--amber);-webkit-text-stroke:1px var(--ink)}
p.lede{font-size:19px;max-width:760px;color:var(--ink2)}
p.lede b{color:var(--ink)}
.plaque{background:var(--cream);border:1px solid var(--wall3);box-shadow:0 1px 0 #fff inset,0 10px 30px -18px rgba(0,0,0,.35);padding:22px 24px;position:relative;border-radius:2px}
.plaque::before,.plaque::after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff,#9a9384 60%,#5c574c);top:9px}
.plaque::before{left:9px}.plaque::after{right:9px}
.plaque h3{font-family:var(--cond);font-size:14px;letter-spacing:.24em;text-transform:uppercase;color:var(--faint);margin-bottom:8px}
.plaque h2{font-family:var(--cond);font-weight:700;font-size:30px;line-height:1.05;letter-spacing:.01em;text-transform:uppercase;margin-bottom:10px}
.plaque p{color:var(--ink2);font-size:15px}
.plaque p+p{margin-top:8px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:34px 0}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:34px 0}
@media(max-width:860px){.grid3,.grid2{grid-template-columns:1fr}}
.sect{margin:52px 0}
.sect>h2{font-family:var(--cond);font-weight:700;font-size:38px;text-transform:uppercase;letter-spacing:.01em;line-height:1;margin-bottom:6px}
.sect>h2 small{display:block;font-weight:500;font-size:14px;letter-spacing:.24em;color:var(--faint);margin-bottom:8px}
.sect>p{color:var(--ink2);max-width:760px}

/* ── printed table (paper) ── */
table.paper{width:100%;border-collapse:collapse;font-size:14px;background:var(--cream);border:1px solid var(--wall3)}
table.paper th{font-family:var(--cond);font-weight:600;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--faint);text-align:left;padding:9px 12px;border-bottom:2px solid var(--ink)}
table.paper td{padding:8px 12px;border-bottom:1px solid var(--wall2);font-variant-numeric:tabular-nums}
table.paper td.r,table.paper th.r{text-align:right}
table.paper td.mono{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12.5px}
table.paper tr.rej td{color:var(--red);text-decoration:line-through}
.pill{display:inline-block;white-space:nowrap;font-family:var(--cond);font-size:12px;letter-spacing:.14em;text-transform:uppercase;padding:2px 8px;border:1px solid var(--ink);border-radius:2px}
.pill.amber{background:var(--amber);border-color:var(--amber)}.pill.green{background:var(--green);border-color:var(--green)}.pill.red{color:#fff;background:var(--red);border-color:var(--red)}
.up{color:#1e7a3c}.dn{color:#b5372a}
.btn{font-family:var(--cond);font-size:17px;letter-spacing:.14em;text-transform:uppercase;background:var(--ink);color:var(--cream);border:2px solid var(--ink);padding:10px 22px;text-decoration:none;display:inline-block;cursor:pointer;border-radius:2px}
.btn.ghost{background:transparent;color:var(--ink)}
.btn.amber{background:var(--amber);border-color:var(--amber);color:var(--ink)}
.btn:hover{filter:brightness(1.08)}
.btn:disabled{opacity:.45;cursor:not-allowed}
pre,code.blk{display:block;background:#f6f1e3;border:1px solid var(--wall3);border-left:4px solid var(--ink);padding:12px 14px;font:12.5px/1.55 ui-monospace,Menlo,Consolas,monospace;overflow-x:auto;white-space:pre;color:#2a2620}
code{font:.92em ui-monospace,Menlo,Consolas,monospace;background:#f6f1e3;padding:1px 5px;border-radius:2px}
.ca{display:flex;align-items:center;gap:12px;background:var(--ink);color:var(--cream);padding:12px 16px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:13px;border-radius:2px;flex-wrap:wrap}
.ca b{font-family:var(--cond);letter-spacing:.2em;font-size:13px;color:var(--amber)}
.ca button{font-family:var(--cond);letter-spacing:.14em;text-transform:uppercase;background:var(--amber);color:var(--ink);border:0;padding:6px 12px;cursor:pointer;margin-left:auto}
.foot{border-top:2px solid var(--ink);margin-top:70px;padding:24px 0 50px;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-family:var(--cond);font-size:14px;letter-spacing:.18em;text-transform:uppercase;color:var(--faint)}
.foot a{text-decoration:none}
.foot a:hover{color:var(--ink)}
.note{font-size:13px;color:var(--faint)}
input,select{font:15px var(--sans);padding:9px 10px;border:1px solid var(--wall3);background:#fff;color:var(--ink);border-radius:2px;width:100%}
label.f{display:block;font-family:var(--cond);font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--faint);margin-bottom:4px}
.field+.field{margin-top:12px}
canvas.band{width:100%;height:280px;display:block;background:var(--cream);border:1px solid var(--wall3)}
.bigmark{background:var(--board);border:8px solid #0d0d10;border-radius:6px;padding:18px 22px;display:flex;flex-wrap:wrap;gap:16px 40px;align-items:flex-end;margin:20px 0}
.bigmark .k{font-family:var(--cond);font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:#8f887a;margin-bottom:6px}
.bigmark .fl{font-size:54px}
.bigmark .fl.sm{font-size:28px}
@media(max-width:720px){.bigmark .fl{font-size:36px}.bigmark .fl.sm{font-size:22px}}
.tape{background:var(--ink);color:#bdb5a1;font-family:var(--cond);font-size:14px;letter-spacing:.2em;text-transform:uppercase;overflow:hidden;white-space:nowrap;padding:7px 0}
.tape span{display:inline-block;padding-left:100%;animation:tk 60s linear infinite}
@keyframes tk{to{transform:translateX(-100%)}}
.tape i{font-style:normal;color:var(--amber)}
.tape em{font-style:normal;color:var(--cream)}
