:root{--ink:#14181d;--dim:#545e6b;--faint:#626c7a;--line:#d6dbe2;--bg:#eef0f3;--paper:#fff;--panel:#f7f8fa;--accent:#0f7168;--secondary:#8a5a0f;--warn:#a92f1b;--ok:#2b7146;--amber:#7f5a0c;--road:#d8dde3;--bldg:#e4e7ec;--bldgline:#cbd2da;--accent-ink:#fff;--accent-soft:color-mix(in srgb, var(--accent) 12%, transparent);--accent-line:color-mix(in srgb, var(--accent) 34%, transparent);--secondary-soft:color-mix(in srgb, var(--secondary) 14%, transparent);--secondary-line:color-mix(in srgb, var(--secondary) 36%, transparent);--line-strong:color-mix(in srgb, var(--ink) 18%, transparent);--hover:color-mix(in srgb, var(--ink) 3.5%, transparent);--okbg:color-mix(in srgb, var(--ok) 13%, transparent);--warnbg:color-mix(in srgb, var(--warn) 13%, transparent);--amberbg:color-mix(in srgb, var(--amber) 15%, transparent);--radius:4px;--r-sm:calc(var(--radius) * .75);--r-md:var(--radius);--r-lg:calc(var(--radius) * 1.5);--r-pill:var(--radius);--scale:.95;--font:ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Helvetica, Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, "Cascadia Mono", monospace;--t-sm:calc(14px * var(--scale));--t-md:calc(15.5px * var(--scale));--t-base:calc(16.5px * var(--scale));--t-lg:calc(18px * var(--scale));--t-xl:calc(20px * var(--scale));--sh-1:none;--sh-2:0 1px 2px #1018280a, 0 4px 12px #1018280f;--sh-3:0 4px 12px #10182814, 0 20px 48px #10182824;--bar-h:68px}:root[data-dark=true]{--accent-ink:#0b0e12;--sh-1:0 1px 2px #0006;--sh-2:0 1px 3px #0006, 0 6px 18px #00000057;--sh-3:0 10px 24px #00000080, 0 30px 70px #0000008c;--hover:color-mix(in srgb, var(--ink) 9%, transparent)}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--ink);font:var(--t-base) / 1.65 var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}body:before{content:"";z-index:-2;background-image:var(--bgimage,none);background-position:50%;background-size:cover;background-attachment:fixed;position:fixed;inset:0}body:after{content:"";z-index:-1;background:var(--bg);opacity:var(--veil,1);position:fixed;inset:0}:root[data-bg=true] .topbar,:root[data-bg=true] .pane.list,:root[data-bg=true] .pane.rail,:root[data-bg=true] .mapside{-webkit-backdrop-filter:blur(14px)saturate(1.1);backdrop-filter:blur(14px)saturate(1.1)}:root[data-bg=true] .three,:root[data-bg=true] .pane.detail{background:0 0}:root[data-bg=true] .card,:root[data-bg=true] .rowcard{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.shell{flex-direction:column;min-height:100vh;display:flex}.topbar{height:var(--bar-h);background:var(--paper);border-bottom:1px solid var(--line);box-shadow:var(--sh-1);z-index:40;align-items:center;gap:18px;padding:0 20px;display:flex;position:sticky;top:0}.brand{flex:none;align-items:center;gap:11px;text-decoration:none;display:flex}.brand .mark{flex:none;width:32px;height:32px;display:block}.brand .wordmark{flex-direction:column;line-height:1.1;display:flex}.brand b{letter-spacing:-.5px;font-size:19px;font-weight:750}.brand span{color:var(--faint);letter-spacing:.2px;font-size:11.5px;font-weight:600}.nav{align-items:center;gap:4px;display:flex}.nav a{font-size:var(--t-md);border-radius:var(--r-pill);color:var(--dim);white-space:nowrap;align-items:center;gap:7px;padding:9px 14px;font-weight:620;text-decoration:none;transition:background .14s,color .14s;display:inline-flex}.nav a:hover{background:var(--hover);color:var(--ink)}.nav a.on{background:var(--accent);color:var(--accent-ink)}.nav .navcount{font:700 12px var(--mono);border-radius:var(--r-pill);background:color-mix(in srgb, var(--ink) 9%, transparent);padding:1px 7px}.nav a.on .navcount{background:color-mix(in srgb, var(--accent-ink) 22%, transparent)}.spacer{margin-left:auto}main{flex:1}.wrap{max-width:1200px;margin:0 auto;padding:34px 24px 90px}.wrap.wide{max-width:none;padding:0}h1{font-size:calc(29px * var(--scale));letter-spacing:-.7px;margin:0 0 6px;font-weight:730;line-height:1.2}h2{font-size:calc(13px * var(--scale));letter-spacing:.9px;text-transform:uppercase;color:var(--faint);margin:24px 0 11px;font-weight:750}h2 .tiny{text-transform:none;letter-spacing:0}.lede{color:var(--dim);font-size:var(--t-lg);margin:0 0 26px;line-height:1.55}.muted{color:var(--dim)}.tiny{font-size:var(--t-sm);color:var(--faint);line-height:1.55}.mono{font:600 calc(13.5px * var(--scale)) var(--mono)}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--sh-1);padding:20px 22px}.btn{font-family:var(--font);font-size:var(--t-sm);border-radius:var(--r-pill);border:1px solid var(--line);background:var(--paper);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:9px 16px;font-weight:640;text-decoration:none;transition:background .14s,border-color .14s,transform 60ms;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--line-strong);background:var(--hover)}.btn:active:not(:disabled){background:color-mix(in srgb, var(--ink) 8%, var(--paper))}.btn:disabled{opacity:.42;cursor:default}.btn.pri{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.pri:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 86%, var(--ink))}.btn.big{font-size:var(--t-md);padding:12px 22px;font-weight:670}.btn.sm{font-size:calc(13px * var(--scale));padding:6px 12px}.btn.danger{color:var(--warn);border-color:color-mix(in srgb, var(--warn) 32%, transparent)}.btn.danger:hover:not(:disabled){background:var(--warnbg)}.btn.ghosty{color:var(--faint);border-color:#0000;padding:3px 9px;font-size:12px}.btn.ghosty:hover{background:var(--hover);color:var(--ink)}.input,.select{font-size:var(--t-md);border-radius:var(--r-sm);border:1px solid var(--line);background:var(--paper);width:100%;padding:11px 14px}.input:focus,.select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.pill{font-size:calc(13px * var(--scale));color:var(--faint);white-space:nowrap;background:0 0;align-items:center;gap:5px;padding:2px 0;font-weight:600;display:inline-flex}.rowmeta.tags{gap:12px}.rowmeta.tags .pill+.pill{position:relative}.rowmeta.tags .pill+.pill:before{content:"·";color:var(--line-strong);position:absolute;left:-8px}.pill.ge,.pill.open,.pill.closed,.pill.wait{border-radius:var(--r-sm);padding:3px 8px;font-weight:650}.pill.ge{background:var(--secondary-soft);color:var(--secondary)}:root[data-dark=true] .pill.ge{color:color-mix(in srgb, var(--secondary) 86%, var(--ink))}.pill.open{background:var(--okbg);color:var(--ok)}.pill.closed{background:var(--warnbg);color:var(--warn)}.pill.wait{background:var(--amberbg);color:var(--amber)}.note{border-radius:var(--r-md);font-size:var(--t-md);border:1px solid color-mix(in srgb, var(--warn) 26%, transparent);border-left:4px solid var(--warn);background:var(--warnbg);padding:15px 18px;line-height:1.6}.note.ok{border-color:color-mix(in srgb, var(--ok) 26%, transparent);border-left-color:var(--ok);background:var(--okbg)}.note.info{border-color:var(--accent-line);border-left-color:var(--accent);background:var(--accent-soft)}.note b{color:var(--warn)}.note.ok b{color:var(--ok)}.note.info b{color:var(--accent)}:root[data-dark=true] .note b,:root[data-dark=true] .note.ok b,:root[data-dark=true] .note.info b{color:var(--ink)}.row{align-items:center;gap:12px;display:flex}.grow{flex:1;min-width:0}.stack{flex-direction:column;gap:12px;display:flex}.empty{border:1px dashed var(--line-strong);border-radius:var(--r-md);text-align:center;color:var(--faint);font-size:var(--t-md);padding:52px 24px}table{border-collapse:collapse;width:100%;font-size:var(--t-md)}th{text-align:left;color:var(--dim);border-bottom:1px solid var(--line);padding:11px 10px;font-weight:650}td{border-bottom:1px solid var(--line);vertical-align:top;padding:11px 10px}tr:last-child td{border-bottom:0}.cal{border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);box-shadow:var(--sh-1);grid-template-columns:60px repeat(5,1fr);display:grid;overflow:hidden}.cal .dayhead{font-weight:680;font-size:var(--t-sm);text-align:center;background:var(--panel);border-bottom:1px solid var(--line);border-left:1px solid var(--line);letter-spacing:.3px;padding:11px 8px}.cal .corner{background:var(--panel);border-bottom:1px solid var(--line)}.cal .col{border-left:1px solid var(--line);position:relative}.cal .timecol{position:relative}.cal .hr{border-top:1px solid color-mix(in srgb, var(--line) 60%, transparent);position:absolute;left:0;right:0}.cal .hrlab{text-align:right;width:54px;font:600 11.5px var(--mono);color:var(--faint);padding-right:8px;position:absolute;left:0;transform:translateY(-7px)}.ev{border-radius:var(--r-sm);background:color-mix(in srgb, var(--ink) 6%, var(--paper));border-left:3px solid;padding:6px 8px;font-size:12px;line-height:1.3;position:absolute;left:4px;right:4px;overflow:hidden}.ev .t{font-weight:720;display:block}.ev .r{color:var(--faint);font-size:11px;display:block}.ev.clash{outline:2px dashed var(--warn);outline-offset:-2px}.three{height:calc(100vh - var(--bar-h));background:var(--paper);grid-template-columns:clamp(348px,29vw,470px) minmax(300px,1fr) clamp(232px,19vw,310px);display:grid}.pane{flex-direction:column;min-width:0;display:flex;overflow:hidden}.pane.list{border-right:1px solid var(--line);background:var(--panel)}.pane.detail{overflow-y:auto}.pane.rail{border-left:1px solid var(--line);background:var(--paper);overflow-y:auto}.filters{border-bottom:1px solid var(--line);background:var(--panel);padding:14px 14px 11px}.searchrow{align-items:center;display:flex;position:relative}.mag{color:var(--faint);pointer-events:none;display:flex;position:absolute;left:16px}.searchbox{width:100%;font-size:var(--t-md);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--panel);padding:12px 38px 12px 42px;font-weight:500}.searchbox::placeholder{color:var(--faint);font-weight:450}.searchbox:focus{background:var(--paper);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.clearx{cursor:pointer;color:var(--faint);background:0 0;border:0;border-radius:50%;padding:5px 8px;font-size:19px;line-height:1;position:absolute;right:10px}.clearx:hover{background:var(--hover);color:var(--ink)}.chiprow{flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px;display:flex}.chip{font-size:var(--t-md);border-radius:var(--r-pill);border:1px solid var(--line);background:var(--paper);color:var(--dim);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:8px 13px;font-weight:620;transition:background .14s,border-color .14s;display:inline-flex}.chip:hover{border-color:var(--line-strong);background:var(--hover)}.chip.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.chip.tight{justify-content:center;min-width:38px;padding:8px 11px}.chip.ghost{border-style:dashed}.caret{opacity:.55;font-size:10px}.menuwrap{position:relative}.iconbtn{cursor:pointer;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--paper);width:34px;height:34px;color:var(--dim);flex:none;justify-content:center;align-items:center;display:inline-flex}.iconbtn:hover{color:var(--ink);border-color:var(--line-strong);background:var(--hover)}.morebtn{cursor:pointer;font-size:var(--t-sm);color:var(--dim);border-radius:var(--r-sm);background:0 0;border:0;align-items:center;gap:5px;padding:8px 12px;font-weight:620;display:inline-flex}.morebtn:hover{background:var(--hover);color:var(--ink)}.morebtn.on{color:var(--ink);background:var(--hover)}.navmenu{left:auto;right:0}.navmenu .menuitem{color:var(--ink);text-decoration:none}.menu{z-index:50;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--sh-3);flex-direction:column;max-height:380px;padding:7px;display:flex;position:absolute;top:calc(100% + 7px);left:0;overflow:hidden}.menusearch{width:100%;font-size:var(--t-sm);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--panel);margin-bottom:5px;padding:9px 11px}.menusearch:focus{border-color:var(--accent);outline:none}.menuscroll{overflow-y:auto}.menuitem{text-align:left;width:100%;font-size:var(--t-md);cursor:pointer;border-radius:var(--r-sm);background:0 0;border:0;align-items:center;gap:10px;padding:9px 11px;display:flex}.menuitem:hover{background:var(--hover)}.box{border:1.5px solid var(--line-strong);border-radius:var(--r-sm);width:17px;height:17px;color:var(--accent-ink);flex:none;justify-content:center;align-items:center;font-size:11px;display:inline-flex}.box.on{background:var(--accent);border-color:var(--accent)}.menufoot{border-top:1px solid var(--line);font-size:var(--t-sm);cursor:pointer;color:var(--warn);text-align:left;background:0 0;border-bottom:0;border-left:0;border-right:0;margin-top:5px;padding:9px 10px}.countline{font-size:var(--t-sm);color:var(--faint);letter-spacing:.2px;white-space:nowrap;margin-left:auto;font-weight:600}.controlrow{flex-wrap:wrap;align-items:center;gap:5px;margin-top:9px;display:flex}.ctl{font-size:var(--t-sm);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--paper);color:var(--ink);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:7px 11px;font-weight:600;display:inline-flex}.ctl:hover{border-color:var(--line-strong);background:var(--hover)}.ctl.on{border-color:var(--accent);color:var(--accent)}.ctlcount{font:700 11px var(--mono);background:var(--accent);min-width:17px;height:17px;color:var(--accent-ink);border-radius:var(--r-sm);justify-content:center;align-items:center;padding:0 4px;display:inline-flex}.filterpanel{z-index:60;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);width:320px;max-height:min(70vh,560px);box-shadow:var(--sh-3);padding:4px 4px 0;position:absolute;top:calc(100% + 7px);left:0;overflow-y:auto}.filterpanel section{border-bottom:1px solid var(--line);padding:10px 8px}.filterpanel section:last-of-type{border-bottom:0}.filterpanel h4{text-transform:uppercase;letter-spacing:.7px;color:var(--faint);margin:0 0 7px 3px;font-size:11px;font-weight:700}.filterpanel .menuscroll{max-height:190px}.panelfoot{background:var(--paper);border-top:1px solid var(--line);justify-content:space-between;gap:8px;padding:9px 6px;display:flex;position:sticky;bottom:0}.dayrow{flex-wrap:wrap;gap:5px;display:flex}.day{min-width:36px;font-size:var(--t-sm);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--paper);color:var(--dim);cursor:pointer;padding:7px 6px;font-weight:600}.day:hover{border-color:var(--line-strong)}.day.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.radiodot{border:1.5px solid var(--line-strong);border-radius:50%;flex:none;width:16px;height:16px;position:relative}.radiodot.on{border-color:var(--accent);border-width:5px}.activerow{flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px;display:flex}.activechip{font-size:calc(12.5px * var(--scale));border:1px solid var(--accent-line);border-radius:var(--r-sm);background:var(--accent-soft);color:var(--accent);cursor:pointer;align-items:center;gap:6px;padding:4px 8px;font-weight:600;display:inline-flex}.activechip .x{opacity:.7;font-size:14px;line-height:1}.activechip:hover .x{opacity:1}.linkbtn{cursor:pointer;color:var(--dim);font-size:calc(12.5px * var(--scale));text-underline-offset:2px;background:0 0;border:0;padding:4px 2px;font-weight:600;text-decoration:underline}.linkbtn:hover{color:var(--ink)}.listscroll{flex:1;padding:12px;overflow-y:auto}.rowcard{text-align:left;cursor:pointer;background:var(--panel);border:0;border-bottom:1px solid var(--line);width:100%;font:inherit;border-radius:0;margin:0;padding:15px 17px 15px 15px;transition:background .12s,box-shadow .12s;display:block;box-shadow:inset 2px 0 #0000}.rowcard:hover{background:color-mix(in srgb, var(--ink) 4%, var(--panel))}.rowcard.on{background:color-mix(in srgb, var(--accent) 6%, var(--paper));box-shadow:inset 2px 0 0 var(--accent)}.rowcard:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rowtitle{font-size:var(--t-base);overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:8px;line-height:1.32;display:flex}.rowcode{letter-spacing:-.3px;color:var(--accent);font-weight:760}:root[data-dark=true] .rowcode{color:color-mix(in srgb, var(--accent) 82%, var(--ink))}.rowname{font-weight:560}.rowmeta{font-size:var(--t-sm);color:var(--dim);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.rowmeta.where{margin-top:8px}.rowmeta.who{margin-top:7px}.rowmeta.tags{gap:7px;margin-top:9px}.rowmeta.where{gap:0}.rowmeta.where span+span:before{content:"·";color:var(--faint);margin:0 8px}.rowmeta .instname{color:var(--ink);font-weight:640}.star{cursor:pointer;color:var(--faint);background:0 0;border:0;border-radius:50%;flex:none;padding:3px 4px;font-size:20px;line-height:1}.star:hover{background:var(--hover);color:var(--amber)}.star.on{color:#e0a91b}.star.big{padding:5px 7px;font-size:28px}.seatwrap{margin-top:11px}.seatnums{font:650 calc(13.5px * var(--scale)) var(--mono);justify-content:space-between;display:flex}.seatbar{background:color-mix(in srgb, var(--ink) 8%, transparent);border-radius:var(--r-sm);height:5px;margin-top:7px;overflow:hidden}.rowcard .seatbar i{opacity:.75}.seatbar i{border-radius:var(--r-pill);height:100%;transition:width .3s;display:block}.detailhead{border-bottom:1px solid var(--line);padding:22px 30px 18px}.detailkey{flex-wrap:wrap;align-items:center;gap:11px;display:flex}.detailkey b{font-size:var(--t-lg);color:var(--accent);letter-spacing:-.3px;font-weight:740}:root[data-dark=true] .detailkey b{color:color-mix(in srgb, var(--accent) 82%, var(--ink))}.detailtitle{font-size:calc(29px * var(--scale));letter-spacing:-.8px;margin:6px 0 0;font-weight:730;line-height:1.16}.detailbody{padding:20px 30px 80px}.prose{font-size:var(--t-md);color:var(--dim);margin:0 0 10px;line-height:1.65}.enrolbox{border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel);align-items:center;gap:14px;padding:14px 18px;display:flex}.enrolbig{font-size:calc(22px * var(--scale));letter-spacing:-.6px;font-weight:740}.dot{border-radius:50%;flex:none;width:14px;height:14px}.minimapwrap{border-bottom:1px solid var(--line);overflow:hidden}.minimap{background:var(--bg);width:100%;height:165px;display:block;overflow:hidden}.legbar{font-size:calc(13px * var(--scale));background:var(--okbg);color:var(--ok);border-top:1px solid var(--line);align-items:baseline;gap:9px;padding:11px 14px;font-weight:600;display:flex}.legbar.tight{background:var(--warnbg);color:var(--warn)}.legbar.quiet{background:var(--paper);color:var(--faint);font-weight:500}.legbar b{font-size:calc(17px * var(--scale));letter-spacing:-.4px;flex:none;font-weight:740}.legbar .legfrom{opacity:.85;font-weight:500;display:block}.legbar .legslack{white-space:nowrap;flex:none;font-weight:750}.railfacts{flex-direction:column;gap:2px;padding:10px 4px 14px;display:flex}.fact{font-size:var(--t-sm);border-bottom:0;align-items:flex-start;gap:11px;padding:7px 12px;display:flex}.fact>span{opacity:.75;flex:none;width:17px;padding-top:1px;display:flex}.fact>div{word-break:break-word;min-width:0}.termbtn{font-size:var(--t-md);border-radius:var(--r-pill);border:1px solid var(--line);background:var(--panel);cursor:pointer;white-space:nowrap;align-items:center;gap:9px;padding:9px 15px;font-weight:660;display:inline-flex}.termbtn:hover{border-color:var(--line-strong)}.termbtn .qtr{font:700 10.5px var(--mono);letter-spacing:.6px;text-transform:uppercase;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-ink);padding:2px 7px}.termmenu{z-index:60;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);min-width:268px;box-shadow:var(--sh-3);max-height:420px;padding:7px;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto}.termitem{text-align:left;width:100%;font-size:var(--t-md);cursor:pointer;border-radius:var(--r-sm);background:0 0;border:0;align-items:center;gap:11px;padding:10px 12px;font-weight:600;display:flex}.termitem:hover:not(:disabled){background:var(--hover)}.termitem.on{background:var(--accent-soft);color:var(--accent)}:root[data-dark=true] .termitem.on{color:var(--ink)}.termitem:disabled{cursor:default;opacity:.55;font-weight:500}.termitem .n{flex:1}.termitem .c{font:600 12px var(--mono);color:var(--faint)}.termsep{letter-spacing:.9px;text-transform:uppercase;color:var(--faint);border-top:1px solid var(--line);margin-top:5px;padding:12px 12px 6px;font-size:11px;font-weight:750}.termsep:first-child{border-top:0;margin-top:0;padding-top:6px}.syncdot{background:var(--faint);border-radius:50%;flex:none;width:8px;height:8px;margin-right:2px;display:inline-block}.syncdot.idle,.syncdot.saved{background:var(--ok)}.syncdot.working{background:var(--amber)}.syncdot.error{background:var(--warn)}.ratings{align-items:center;gap:6px;display:inline-flex}.ratechip{min-width:38px;font:700 calc(13.5px * var(--scale)) var(--mono);border-radius:var(--r-sm);letter-spacing:-.2px;justify-content:center;align-items:center;gap:4px;padding:2px 7px;display:inline-flex}.ratechip small{font:650 9.5px var(--font);opacity:.85;letter-spacing:.3px}.ratecard{border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel);flex-wrap:wrap;align-items:center;gap:18px;padding:16px 18px;display:flex}.ratecard.none{color:var(--dim)}.ratecard b{font-size:var(--t-lg);font-weight:700}.ratenums{text-align:center;gap:22px;display:flex}.ratenums span{font:740 26px var(--mono);letter-spacing:-.8px;display:block}.ratenums i{color:var(--faint);font-size:11.5px;font-style:normal;font-weight:600;display:block}.scrim{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0b0e128c;justify-content:center;align-items:center;padding:24px;animation:.16s fade;display:flex;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(12px)scale(.985)}}.modal{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-3);flex-direction:column;width:min(760px,100%);max-height:min(86vh,860px);animation:.2s rise;display:flex;overflow:hidden}.modal.wide{width:min(1000px,100%)}.modalhead{border-bottom:1px solid var(--line);padding:24px 28px 18px}.modalhead h2{text-transform:none;letter-spacing:-.5px;color:var(--ink);margin:0;font-size:23px;font-weight:720}.modalbody{flex:1;padding:22px 28px;overflow-y:auto}.modalfoot{border-top:1px solid var(--line);background:var(--panel);align-items:center;gap:12px;padding:18px 28px;display:flex}.xbtn{cursor:pointer;color:var(--faint);background:0 0;border:0;border-radius:50%;padding:5px 9px;font-size:24px;line-height:1}.xbtn:hover{background:var(--hover);color:var(--ink)}.secopt{text-align:left;border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);cursor:pointer;width:100%;font:inherit;align-items:center;gap:15px;margin-bottom:10px;padding:15px 17px;transition:border-color .14s,box-shadow .14s;display:flex}.secopt:hover:not(:disabled){border-color:var(--line-strong);box-shadow:var(--sh-1)}.secopt.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.secopt:disabled{opacity:.55;cursor:default}.secopt .sec{font:740 19px var(--mono);letter-spacing:-.5px;flex:none;width:52px}.secopt .when{font-size:var(--t-md);font-weight:620;display:block}.secopt .where{font-size:var(--t-sm);color:var(--dim);margin-top:3px;display:block}.secopt .fit{text-align:right;flex:none;max-width:250px;margin-left:auto}.secopt .fit b{font-size:var(--t-md);font-weight:700;display:block}.secopt .fit i{color:var(--faint);margin-top:2px;font-size:12px;font-style:normal;display:block}.pickrow{text-align:left;border:0;border-bottom:1px solid var(--line);cursor:pointer;width:100%;font:inherit;background:0 0;align-items:center;gap:14px;padding:13px 6px;display:flex}.pickrow:hover{background:var(--hover)}.pickrow .code{color:var(--accent);width:96px;font-weight:740;font-size:var(--t-md);flex:none}:root[data-dark=true] .pickrow .code{color:color-mix(in srgb, var(--accent) 82%, var(--ink))}.pickrow .ttl{font-size:var(--t-md);font-weight:560}.pickrow .sub{font-size:var(--t-sm);color:var(--dim);margin-top:2px}.gate{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0b0e1285;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.gatecard{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-3);max-width:560px;padding:36px 38px;animation:.22s rise}.gatetitle{letter-spacing:-.7px;text-transform:none;color:var(--ink);margin:18px 0 12px;font-size:28px;font-weight:730}.gatebody{font-size:var(--t-lg);color:var(--dim);margin:0 0 16px;line-height:1.62}.gatelist{font-size:var(--t-md);color:var(--dim);margin:0 0 24px;padding-left:20px;line-height:1.72}.themegrid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;display:grid}.themecard{text-align:left;cursor:pointer;font:inherit;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);padding:13px 14px;position:relative}.themecard:hover{border-color:var(--line-strong)}.themecard.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.themeswatch{border-radius:var(--r-sm);border:1px solid var(--line);height:36px;display:flex;overflow:hidden}.themeswatch i{flex:1}.themename{font-size:var(--t-md);margin-top:10px;font-weight:640;display:block}.themename em{color:var(--faint);font-style:normal;font-weight:500}.themebadge{font:700 10px var(--font);background:var(--ink);color:var(--paper);border-radius:var(--r-pill);padding:2px 8px;position:absolute;top:10px;right:11px}.swatchgrid{grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:14px;display:grid}.swatch{font-size:var(--t-sm);align-items:center;gap:10px;display:flex}.swatch input[type=color]{border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer;background:0 0;width:40px;height:30px;padding:0}.slider{font-size:var(--t-md);flex-wrap:wrap;align-items:center;gap:14px;display:flex}.slider span{min-width:160px;color:var(--dim)}.slider input[type=range]{max-width:280px;accent-color:var(--accent);flex:1}.bgpreview{border-radius:var(--r-md);border:1px solid var(--line);background-position:50%;background-size:cover;height:150px;margin:14px 0}.mapshell{height:calc(100vh - var(--bar-h));grid-template-columns:380px 1fr;display:grid}.mapside{background:var(--panel);border-right:1px solid var(--line);flex-direction:column;display:flex;overflow:hidden}.maptabs{border-bottom:1px solid var(--line);background:var(--paper);gap:6px;padding:14px 16px;display:flex}.maptab{font-size:var(--t-md);border-radius:var(--r-pill);border:1px solid var(--line);background:var(--paper);color:var(--dim);cursor:pointer;flex:1;padding:10px 8px;font-weight:640}.maptab:hover{background:var(--hover)}.maptab.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.mapscroll{flex:1;padding:18px 20px 26px;overflow-y:auto}.mapfoot{border-top:1px solid var(--line);background:var(--paper);padding:14px 18px}.mapcanvas{background:var(--bg);touch-action:none;position:relative;overflow:hidden}.mapcanvas svg{cursor:grab;width:100%;height:100%;display:block}.mapcanvas svg.dragging{cursor:grabbing}.mapctl{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--sh-2);flex-direction:column;gap:6px;display:flex;position:absolute;top:16px;right:16px;overflow:hidden}.mapctl button{background:var(--paper);cursor:pointer;width:42px;height:40px;color:var(--dim);border:0;border-bottom:1px solid var(--line);justify-content:center;align-items:center;font-size:19px;display:flex}.mapctl button:last-child{border-bottom:0}.mapctl button:hover{background:var(--hover);color:var(--ink)}.mapsearch{z-index:5;width:min(340px,100% - 96px);position:absolute;top:16px;left:16px}.mapsearch input{width:100%;font-size:var(--t-md);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--paper);box-shadow:var(--sh-2);padding:12px 16px}.mapsearch input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft), var(--sh-2);outline:none}.mapresults{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--sh-3);max-height:320px;margin-top:7px;padding:6px;overflow-y:auto}.mapresults button{text-align:left;border-radius:var(--r-sm);cursor:pointer;width:100%;font-size:var(--t-md);background:0 0;border:0;padding:10px 12px;display:block}.mapresults button:hover{background:var(--hover)}.mapresults .hint{font-size:var(--t-sm);color:var(--faint);display:block}.mapbadge{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--sh-2);max-width:320px;padding:12px 16px;position:absolute;bottom:44px;left:16px}.mapbadge b{font-size:var(--t-lg);letter-spacing:-.3px;font-weight:700;display:block}.p,.b,.bk,.route,.walker,.pin{vector-effect:non-scaling-stroke}.p{fill:none;stroke:var(--road);stroke-width:2.4px;stroke-linecap:round}.p.hi{stroke:color-mix(in srgb, var(--road) 60%, var(--ink))}.b{fill:var(--bldg);stroke:var(--bldgline);stroke-width:1px}.b.clickable{cursor:pointer}.b.clickable:hover{fill:color-mix(in srgb, var(--accent) 22%, var(--bldg))}.bk{fill:color-mix(in srgb, var(--accent) 26%, var(--bldg));stroke:var(--accent);stroke-width:1.4px;cursor:pointer}.bk.act{fill:color-mix(in srgb, var(--accent) 52%, var(--bldg));stroke:var(--accent);stroke-width:2.6px}.bk.sel{fill:color-mix(in srgb, var(--amber) 45%, var(--bldg));stroke:var(--amber);stroke-width:2.6px}.threed .wall{fill:color-mix(in srgb, var(--bldgline) 72%, var(--dim));stroke:none}.threed .roof{fill:color-mix(in srgb, var(--paper) 82%, var(--bldg));stroke:color-mix(in srgb, var(--bldgline) 70%, var(--dim));stroke-width:1px;vector-effect:non-scaling-stroke}.threed .roof.clickable{cursor:pointer}.threed .roof.clickable:hover{fill:color-mix(in srgb, var(--accent) 26%, var(--bldg))}.threed .guessed .wall{opacity:.6}.threed .guessed .roof{opacity:.9}.threed .wall.mine{fill:color-mix(in srgb, var(--accent) 58%, var(--bldgline))}.threed .roof.mine{fill:color-mix(in srgb, var(--accent) 30%, var(--paper));stroke:var(--accent);stroke-width:1.6px}.threed .wall.act{fill:color-mix(in srgb, var(--accent) 78%, var(--ink))}.threed .roof.act{fill:color-mix(in srgb, var(--accent) 60%, var(--paper));stroke-width:2.4px}.threed .wall.sel{fill:color-mix(in srgb, var(--amber) 62%, var(--bldgline))}.threed .roof.sel{fill:color-mix(in srgb, var(--amber) 45%, var(--paper));stroke:var(--amber);stroke-width:2.4px}.mapnote{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-pill);box-shadow:var(--sh-1);color:var(--dim);max-width:min(420px,100% - 110px);padding:7px 15px;font-size:12.5px;position:absolute;top:78px;left:16px}.mapctl button.on{background:var(--accent);color:var(--accent-ink)}.me .acc{fill:color-mix(in srgb, var(--accent) 16%, transparent);stroke:color-mix(in srgb, var(--accent) 42%, transparent);stroke-width:1.5px;vector-effect:non-scaling-stroke}.me .dot{fill:var(--accent);stroke:#fff;stroke-width:3px;vector-effect:non-scaling-stroke}.me .heading{fill:var(--accent);opacity:.85}@media (prefers-reduced-motion:no-preference){.me .acc{animation:2.4s ease-in-out infinite pulse}}@keyframes pulse{50%{opacity:.45}}.route{fill:none;stroke:var(--accent);stroke-width:7px;stroke-linecap:round;stroke-linejoin:round;opacity:.92}.route.nav{stroke-width:9px;opacity:1}.route.tight{stroke:var(--warn)}.route.ghost{stroke-width:4px;opacity:.34;stroke-dasharray:2 9}.walker{fill:var(--paper);stroke:var(--accent);stroke-width:4px}.walker.tight{stroke:var(--warn)}.pin{fill:var(--paper);stroke-width:4px}.lbl{font-family:var(--font);fill:var(--ink);paint-order:stroke;stroke:var(--bg);stroke-width:4.5px;stroke-linejoin:round;pointer-events:none;vector-effect:non-scaling-stroke;font-weight:650}.lbl.dim{fill:var(--dim);opacity:.85;font-weight:550}.scalebar{font:650 11.5px var(--mono);color:var(--dim);position:absolute;bottom:14px;left:16px}.scalebar div{border:1.5px solid var(--dim);border-top:none;height:6px;margin-bottom:4px}.attr{color:var(--faint);font-size:11px;position:absolute;bottom:12px;right:14px}.big{font:740 42px/1 var(--mono);letter-spacing:-2px;margin:4px 0 2px}.big small{font:640 15px/1 var(--font);color:var(--dim);letter-spacing:0;margin-left:6px}.steprow{text-align:left;border-radius:var(--r-sm);cursor:pointer;width:100%;font:inherit;background:0 0;border:0;align-items:flex-start;gap:12px;padding:11px 12px;display:flex}.steprow:hover{background:var(--hover)}.steprow.on{background:var(--accent-soft)}.steprow .tick{border-radius:50%;flex:none;width:10px;height:10px;margin-top:7px}.steprow .lab{font-size:var(--t-md);font-weight:640;display:block}.steprow .sub2{font-size:var(--t-sm);color:var(--dim);margin-top:2px;display:block}@media (max-width:1080px){.three{grid-template-columns:clamp(330px,40vw,440px) minmax(300px,1fr)}.pane.rail{display:none}}@media (max-width:980px){.mapshell{grid-template-columns:1fr;height:auto}.mapcanvas{height:62vh}.mapside{border-right:0;border-bottom:1px solid var(--line);max-height:52vh}}@media (max-width:900px){.three{grid-template-columns:1fr;height:auto}.pane.list{border-right:0;border-bottom:1px solid var(--line)}.inlinedetail{border-top:1px solid var(--accent-line);border-bottom:1px solid var(--line);background:var(--paper)}.inlinedetail .pane.detail{height:auto;display:block;overflow:visible}.inlinedetail .detailhead{padding:14px 16px 10px}.inlinedetail .detailkey,.inlinedetail .detailtitle{display:none}.inlinedetail .detailbody{padding:14px 16px 26px}.inlinedetail .detailtitle{font-size:calc(22px * var(--scale))}.listscroll{overflow:visible}.topbar{gap:10px;padding:0 12px}.topbar .nav,.brand .wordmark{display:none}h1{font-size:25px}.detailtitle{font-size:28px}.detailhead,.detailbody{padding-left:20px;padding-right:20px}.wrap{padding:24px 16px 70px}}.simbar{border:1px dashed color-mix(in srgb, var(--accent) 45%, transparent);background:color-mix(in srgb, var(--accent) 6%, transparent);border-radius:var(--r-md);margin-bottom:20px;padding:14px 16px}.simbar.on{background:color-mix(in srgb, var(--accent) 9%, transparent)}.devtag{font:700 10px var(--mono);letter-spacing:.8px;text-transform:uppercase;background:var(--accent);color:var(--accent-ink);border-radius:var(--r-pill);flex:none;padding:2px 7px}.simbar label.tiny{display:block}.simbar label.tiny .select{margin-top:5px}.simtrack{border-radius:var(--r-pill);background:color-mix(in srgb, var(--ink) 10%, transparent);height:8px;overflow:hidden}.simtrack i{background:var(--accent);border-radius:var(--r-pill);height:100%;display:block}.calbox{border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);box-shadow:var(--sh-1);overflow:hidden}.calbar{border-bottom:1px solid var(--line);background:var(--panel);align-items:center;gap:8px;padding:11px 14px;display:flex}.calhead{background:var(--panel);border-bottom:1px solid var(--line);display:grid}.calhead .corner{background:var(--panel)}.calhead .dayhead{font-weight:680;font-size:var(--t-sm);text-align:center;border-left:1px solid var(--line);letter-spacing:.4px;color:var(--dim);padding:11px 8px}.calhead .dayhead.today{color:var(--accent);background:var(--accent-soft);font-weight:750}.calscroll{overscroll-behavior:contain;max-height:min(66vh,760px);overflow-y:auto}.cal{box-shadow:none;background:var(--paper);border:0;border-radius:0;display:grid}.cal .hr.major{border-top-color:var(--line)}.cal .hrlab{font:600 11.5px var(--mono)}.cal .hrlab .ap{opacity:.75;margin-left:1px;font-size:9.5px}.nowline{z-index:2;border-top:2px solid var(--warn);position:absolute;left:0;right:0}.nowline i{background:var(--warn);border-radius:50%;width:8px;height:8px;position:absolute;top:-5px;left:-1px}.ev.squat{padding:2px 6px}.ev.squat .r{display:none}.ev.squat .t{font-size:10.5px}.field{margin-bottom:18px;display:block}.field>span:first-child{font-size:var(--t-sm);color:var(--dim);margin-bottom:7px;font-weight:640;display:block}.field>span:first-child em{margin-left:4px;font-style:normal;font-weight:500;display:inline}.field .tiny{margin-top:6px;display:block}.field input[type=time]{font-variant-numeric:tabular-nums}.home{max-width:1080px}.hero{flex-wrap:wrap;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.herotext{flex:1;min-width:260px}.herotext h1{letter-spacing:-1px;margin-bottom:8px;font-size:38px}.clock{text-align:right}.clock b{font:740 34px var(--mono);letter-spacing:-1.5px;font-variant-numeric:tabular-nums;line-height:1;display:block}.clock span{font-size:var(--t-sm);color:var(--faint);margin-top:6px;display:block}.signincard{border-color:var(--accent-line);background:var(--accent-soft);flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:22px;display:flex}.signincard .grow{min-width:220px}@media (max-width:560px){.signincard{flex-direction:column;align-items:flex-start;gap:14px}.signincard .btn{justify-content:center;width:100%}}.todaycard{padding:26px 28px}.upnext{letter-spacing:1.1px;text-transform:uppercase;color:var(--accent);font-weight:750}:root[data-dark=true] .upnext{color:color-mix(in srgb, var(--accent) 80%, var(--ink))}.nexttitle{letter-spacing:-.8px;margin:6px 0 4px;font-size:30px;font-weight:740;line-height:1.15}.nextmeta{font-size:var(--t-lg);color:var(--dim)}.countdown{text-align:right;flex:none}.countdown b{font:740 44px var(--mono);letter-spacing:-2px;color:var(--accent);font-variant-numeric:tabular-nums;line-height:1;display:block}:root[data-dark=true] .countdown b{color:color-mix(in srgb, var(--accent) 85%, var(--ink))}.countdown span{font-size:var(--t-sm);color:var(--faint);margin-top:5px;display:block}.todaylist{border-top:1px solid var(--line)}.todayrow{border-bottom:1px solid var(--line);font-size:var(--t-md);align-items:center;gap:13px;padding:13px 2px;display:flex}.todayrow:last-child{border-bottom:0}.todayrow .tick{border-radius:50%;flex:none;width:9px;height:9px}.todayrow .when{width:72px;color:var(--dim);font-variant-numeric:tabular-nums;flex:none}.todayrow.done{opacity:.45}.todayrow.live{background:var(--accent-soft);border-radius:var(--r-sm);padding-left:10px;padding-right:10px}.tilegrid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-top:22px;display:grid}.tile{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--sh-1);flex-direction:column;gap:3px;padding:18px 20px;text-decoration:none;transition:border-color .14s,transform 80ms,box-shadow .14s;display:flex}.tile:hover{border-color:var(--line-strong);background:var(--hover)}.tile>svg{color:var(--faint);margin-bottom:8px}.tile b{font:740 30px var(--mono);letter-spacing:-1.4px;line-height:1}.tile b small{color:var(--faint);letter-spacing:-.5px;font-size:17px}.tile span{font-size:var(--t-sm);color:var(--dim)}.tile em{letter-spacing:.7px;text-transform:uppercase;color:var(--faint);margin-top:10px;font-size:12px;font-style:normal;font-weight:700}.wall{text-align:left;padding:40px 42px}.wall h1{font-size:calc(29px * var(--scale))}.avatar{object-fit:cover;border-radius:50%;flex:none;width:22px;height:22px}@media (max-width:700px){.herotext h1{font-size:29px}.clock{text-align:left}.clock b{font-size:27px}.nexttitle{font-size:24px}.countdown b{font-size:34px}.todaycard{padding:20px}}.filters .ctl{font-size:var(--t-sm);padding:6px 10px}@media (max-width:1260px){.topbar{gap:12px;padding:0 15px}.nav{gap:2px}.nav a{gap:6px;padding:9px 11px}}@media (max-width:1130px){.nav .navlabel{display:none}.nav a{padding:9px 10px}}@media (max-width:980px){.brand .wordmark{display:none}}.res{max-width:1000px}.chip .tabcount{font:700 11px var(--mono);opacity:.7;font-variant-numeric:tabular-nums;margin-left:6px}.sortsel{width:auto;font-size:var(--t-sm);padding:8px 12px}.reslist{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px;margin-top:18px;display:grid}.rescard{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--sh-1);align-items:center;gap:12px;padding:14px 16px;text-decoration:none;transition:border-color .14s,transform 80ms,box-shadow .14s;display:flex}.rescard:hover{border-color:var(--accent-line);background:var(--hover)}.rescard>svg{color:var(--faint);flex:none}.rescard:hover>svg{color:var(--accent)}.rescard.hub{border-color:var(--accent-line);background:color-mix(in srgb, var(--accent) 4%, var(--paper))}.rescard.hub .restitle{font-weight:720}.restitle{font-size:var(--t-md);font-weight:600;line-height:1.35;display:block}.resmeta{color:var(--faint);flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;font-size:12.5px;display:flex}.reshost{font-family:var(--mono);opacity:.85;font-size:11.5px}@media (max-width:720px){.reslist{grid-template-columns:1fr}}.pill.ext{background:color-mix(in srgb, var(--amber) 16%, transparent);color:var(--amber)}.rescard.ext{border-left:3px solid color-mix(in srgb, var(--amber) 55%, transparent)}.log{margin:26px 0 0;padding:0;list-style:none}.logentry{border-top:1px solid var(--line);grid-template-columns:158px 1fr;gap:22px;padding:22px 0;display:grid}.logentry:first-child{border-top:0;padding-top:6px}.logwhen{font-size:var(--t-sm);color:var(--faint);white-space:nowrap;padding-top:3px;font-weight:600}.loginner h2{font-size:var(--t-lg);letter-spacing:-.2px;text-transform:none;color:var(--ink);margin:0 0 4px;font-weight:680}.lognote{color:var(--dim);font-size:var(--t-sm);margin:0 0 12px}.logitems{flex-direction:column;gap:11px;margin:0;padding:0;list-style:none;display:flex}.logitems li{font-size:var(--t-sm);color:var(--dim);grid-template-columns:74px 1fr;gap:12px;line-height:1.62;display:grid}.logkind{text-transform:uppercase;letter-spacing:.6px;color:var(--faint);padding:3px 0;font-size:11px;font-weight:700}.logkind.new{color:var(--ok)}.logkind.fixed{color:var(--accent)}.logkind.changed{color:var(--amber)}@media (max-width:640px){.logentry{grid-template-columns:1fr;gap:8px}.logitems li{grid-template-columns:1fr;gap:2px}}.tabbar{display:none}@media (max-width:900px){.tabbar{z-index:60;background:var(--panel);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{min-height:52px;color:var(--faint);letter-spacing:.1px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:9px 4px 8px;font-size:11px;font-weight:620;text-decoration:none;display:flex;position:relative}.tabbar a.on{color:var(--accent)}.tabbar a:active{background:var(--hover)}.tabdot{background:var(--accent);border-radius:50%;width:6px;height:6px;margin-left:7px;position:absolute;top:7px;left:50%}body{padding-bottom:calc(52px + env(safe-area-inset-bottom,0px))}.three{height:auto}}.detailwalk{border-bottom:1px solid var(--line);background:var(--panel)}.detailwalk .minimapwrap{border-bottom:0}:root{--dur-fast:.1s;--dur:.16s;--dur-slow:.24s;--ease-in:cubic-bezier(.2, 0, 0, 1)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}@keyframes rise{0%{opacity:0;transform:none}}.modal{animation:fade var(--dur) ease-out}}.fdrop{cursor:pointer;font-size:calc(12.5px * var(--scale));border:1px solid var(--line);border-radius:var(--r-sm);background:var(--paper);color:var(--dim);white-space:nowrap;align-items:center;gap:4px;padding:5px 9px;font-weight:600;display:inline-flex}.fdrop:hover{border-color:var(--line-strong);color:var(--ink)}.fdrop.on{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.controlrow .countline{margin-left:auto}.dayahead{border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);margin-top:14px;padding:12px 14px 8px}.dahead{text-transform:uppercase;letter-spacing:.7px;color:var(--faint);margin-bottom:8px;font-size:11px;font-weight:700}.darow{border-top:1px solid var(--line);align-items:baseline;gap:10px;padding:6px 0;display:flex}.darow:first-of-type{border-top:0}.datick{border-radius:2px;flex:none;align-self:stretch;width:3px}.datime{font-size:var(--t-sm);color:var(--dim);min-width:62px}.daname{font-size:var(--t-sm);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:620;overflow:hidden}.dawhere{flex:none}@media (max-width:560px){.dawhere{display:none}}.homegrid{flex-wrap:wrap;gap:7px;margin-bottom:26px;display:flex}.homeopt{font-size:var(--t-sm);cursor:pointer;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--paper);color:var(--dim);padding:8px 14px;font-weight:600}.homeopt:hover{border-color:var(--line-strong);color:var(--ink)}.homeopt.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.commute{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--r-md);background:var(--panel);margin-bottom:16px;padding:12px 14px}.commutehead{text-transform:uppercase;letter-spacing:.7px;color:var(--faint);margin-bottom:9px;font-size:11px;font-weight:700}.commuterow{font-size:var(--t-sm);flex-wrap:wrap;align-items:baseline;gap:10px;padding:4px 0;display:flex}.cday{min-width:78px;font-weight:660}.cleave{color:var(--accent);font-weight:700}.cwalk{color:var(--dim)}.cfor{margin-left:auto}@media (max-width:560px){.cfor{margin-left:0}}.railwalk{border-top:1px solid var(--line);margin-top:auto}.pane.rail{flex-direction:column;display:flex}.railwalk .minimapwrap{border-bottom:0}.daytotal{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--r-sm);background:var(--panel);margin-bottom:14px;padding:9px 11px}.dtline{font-size:var(--t-sm)}.dtline b{font-size:var(--t-base);font-weight:730}.dtsub{color:var(--dim);margin-top:3px;display:block}.dtsub.link{color:var(--accent);font-weight:620;text-decoration:none}.dtsub.link:hover{text-decoration:underline}.mapside table td{font-size:var(--t-sm);padding:6px 8px}.mapside .steprow .lab{font-size:var(--t-sm)}.topbar .nav a{gap:5px;padding:8px 9px}.topbar .nav a svg{width:16px;height:16px}@media (max-width:1340px){.topbar .nav a .navlabel{display:none}.topbar .nav a{padding:8px 10px}}
