:root{--table:#17110d;--table-2:#21180f;--parchment:#efe3c8;--parchment-2:#e2d2ae;--ink:#2b2118;--ink-soft:#5d4b3a;--brass:#c9a227;--brass-dim:#8a6f1d;--line:#2b21182e;--good:#3f7a45;--bad:#a23b2c;--font-display:"IM Fell English SC", Georgia, serif;--font-body:"Alegreya Sans", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box}[hidden]{display:none!important}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:radial-gradient(ellipse at 50% 0%, #c9a2271f, transparent 60%), repeating-linear-gradient(92deg, #ffffff04 0 2px, transparent 2px 9px), var(--table);color:var(--parchment);font-family:var(--font-body);min-height:100vh;margin:0;font-size:16px;line-height:1.45}a{color:var(--brass)}h1,h2{font-family:var(--font-display);letter-spacing:.02em;margin:0;font-weight:400}.masthead{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px 32px;padding:24px clamp(16px,4vw,40px) 12px;display:flex}.brand h1{color:var(--brass);font-size:clamp(2rem,5vw,3rem);line-height:1}.tagline{color:#cdbfa2;max-width:56ch;margin:8px 0 0}.controls{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.controls label{color:#cdbfa2;gap:4px;font-size:.85rem;display:grid}input,select,button{font:inherit;color:var(--parchment);background:var(--table-2);border:1px solid #c9a22759;border-radius:6px;padding:7px 10px}input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--brass);outline-offset:2px}#seed{width:12ch}button{cursor:pointer}button:hover{border-color:var(--brass)}button.primary{background:var(--brass);color:var(--table);border-color:var(--brass);font-weight:700}button.primary:hover{background:#dbb53a}.layout{grid-template-columns:minmax(0,1fr) 360px;gap:20px;padding:8px clamp(16px,4vw,40px) 20px;display:grid}@media (max-width:960px){.layout{grid-template-columns:1fr}}.board-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.board-head h2{font-size:1.5rem}.timeline{flex:260px;justify-content:flex-end;align-items:center;gap:6px;display:flex}.timeline button{padding:4px 10px}#scrub{max-width:320px;accent-color:var(--brass);background:0 0;border:0;flex:1;padding:0}.map-wrap{background:radial-gradient(at 50% 40%,#2c3d43,#182328 75%);border:10px solid #3a2a1c;border-image:linear-gradient(135deg,#5a4129,#2b1e14 40%,#4d3823) 1;position:relative;box-shadow:0 20px 50px #0009,inset 0 0 40px #00000080}#map{width:100%;height:auto;min-height:320px;max-height:calc(100vh - 190px);display:block}#map .province{cursor:pointer}#map .province:hover .owner{fill-opacity:.6}.tip{pointer-events:none;background:var(--parchment);color:var(--ink);border-radius:6px;max-width:240px;padding:8px 10px;font-size:.85rem;position:absolute;box-shadow:0 6px 18px #00000073}.tip strong{font-family:var(--font-display);font-size:1.05rem;font-weight:400}.legend{color:#cdbfa2;flex-wrap:wrap;gap:14px;margin:8px 0 0;font-size:.85rem;display:flex}.sw{vertical-align:-1px;width:10px;height:10px;margin-right:5px;display:inline-block}.sw.town{background:var(--parchment);border:1px solid var(--ink)}.sw.fort{border:2px solid var(--brass);border-radius:50%}.sw.army{border:1px solid var(--parchment);background:#b23a3a;border-radius:50%}.sw.river{vertical-align:3px;background:#4f8fa8;height:3px}.side{align-content:start;gap:16px;display:grid}.panel{background:linear-gradient(180deg, var(--parchment), var(--parchment-2));color:var(--ink);border-radius:8px;padding:14px 16px;box-shadow:0 10px 30px #00000073}.panel h2{color:var(--ink);margin-bottom:8px;font-size:1.3rem}.panel a{color:#7a5a12}.realms{gap:8px;margin:0;padding:0;list-style:none;display:grid}.realms li{border-bottom:1px solid var(--line);grid-template-columns:14px 1fr auto;align-items:baseline;gap:4px 10px;padding-bottom:8px;display:grid}.realms li:last-child{border-bottom:0;padding-bottom:0}.realms .dot{border:1px solid var(--ink);border-radius:50%;align-self:center;width:12px;height:12px}.realms .name{font-weight:700}.realms .score{font-family:var(--font-mono);font-size:.85rem}.realms .meta{color:var(--ink-soft);grid-column:2/-1;font-size:.82rem}.realms li.fallen{opacity:.45}.realms li.fallen .name{text-decoration:line-through}.realms .agenda{font-style:italic}.chronicle{gap:4px;max-height:300px;margin:0;padding:0;font-size:.9rem;list-style:none;display:grid;overflow:auto}.chronicle li{padding-left:14px;position:relative}.chronicle li:before{content:"•";color:var(--brass-dim);position:absolute;left:2px}.chronicle .big{font-weight:700}.chronicle .quiet{color:var(--ink-soft)}.market{border-collapse:collapse;width:100%;font-size:.9rem}.market th,.market td{text-align:left;border-bottom:1px solid var(--line);padding:3px 4px}.market td.num{font-family:var(--font-mono);text-align:right}.market .up{color:var(--bad)}.market .down{color:var(--good)}.market .why{color:var(--ink-soft);font-size:.78rem}.proof{grid-template-columns:1fr 1fr;gap:20px;padding:0 clamp(16px,4vw,40px) 20px;display:grid}@media (max-width:960px){.proof{grid-template-columns:1fr}}.mono{font-family:var(--font-mono);word-break:break-all;background:#2b211814;border-radius:4px;padding:6px 8px;font-size:.8rem}.check.ok{color:var(--good);font-weight:700}.check.bad{color:var(--bad);font-weight:700}#chain dl{grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:.9rem;display:grid}#chain dt{color:var(--ink-soft)}#chain dd{overflow-wrap:anywhere;margin:0}.foot{color:#a8987a;padding:8px clamp(16px,4vw,40px) 32px;font-size:.85rem}.home{color:inherit;text-decoration:none}.status{color:#e6d9b8;max-width:60ch;margin:0;font-size:.9rem}.status.error{color:#ff9a85}body.busy .map-wrap{opacity:.85}body.busy .status:after{content:" ⏳"}.selection{margin-bottom:8px;font-size:.9rem}.selection p{margin:0 0 6px}.panel button{color:var(--ink);background:#ffffff8c;border-color:#2b21184d;padding:5px 9px;font-size:.88rem}.panel button:hover{border-color:var(--ink)}.panel button.primary{color:var(--parchment);background:#7a1f16;border-color:#7a1f16;font-weight:700}.panel button.primary:hover{background:#962a1f}.panel button:disabled{opacity:.5;cursor:not-allowed}.panel input,.panel select,.panel textarea{color:var(--ink);font:inherit;background:#fff9;border-color:#2b21184d;border-radius:6px;padding:5px 8px;font-size:.9rem}.actions{flex-wrap:wrap;gap:6px;display:flex}.orders{gap:3px;margin:6px 0;padding-left:20px;font-size:.9rem;display:grid}.orders .x{margin-left:4px;padding:0 6px;font-size:.75rem}.trade{flex-wrap:wrap;gap:6px;margin:8px 0;display:flex}.trade input{width:4.5em}.purse{color:var(--ink-soft);margin:6px 0;font-size:.85rem}.wide{width:100%;padding:9px;font-size:1rem}.fine{color:var(--ink-soft);margin:6px 0 0;font-size:.8rem}.envoy{gap:6px;display:grid}.envoy textarea{resize:vertical}.envoy .row{flex-wrap:wrap;gap:6px;display:flex}.envoy input[type=number]{width:4.5em}.envoys{gap:10px;max-height:340px;margin:10px 0 0;padding:0;list-style:none;display:grid;overflow:auto}.envoys li{border-top:1px solid var(--line);padding-top:8px;font-size:.9rem}.envoys .who{font-weight:700}.envoys .said{color:var(--ink-soft);margin:4px 0;font-style:italic}.envoys .reply{margin:4px 0 0}.tag{border:1px solid;border-radius:999px;margin-left:4px;padding:1px 6px;font-size:.72rem;display:inline-block}.tag.yes{color:var(--good)}.tag.no{color:var(--bad)}.tag.tee{color:#6a4b9a}#proof dl{grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:.9rem;display:grid}#proof dt{color:var(--ink-soft)}#proof dd{overflow-wrap:anywhere;margin:0}#proof code{font-family:var(--font-mono);font-size:.78rem}.inline{align-items:center;gap:6px;font-size:.9rem;display:inline-flex}.inline input{width:5em}h3.sub{font-family:var(--font-display);margin:12px 0 4px;font-size:1.05rem;font-weight:400}.steps{gap:3px;margin:6px 0 0;padding-left:18px;font-size:.86rem;display:grid}.advice{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.receipts{gap:6px;margin:0;padding:0;font-size:.86rem;list-style:none;display:grid}.receipts li{border-top:1px solid var(--line);padding-top:5px}.tag.wait{color:#8a6f1d}.table3d{position:relative}.table3d canvas{cursor:pointer}.view-toggle{white-space:nowrap}.header-right{justify-items:end;gap:10px;display:grid}.account{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.who-am-i{font-family:var(--font-mono);color:var(--brass);font-size:.85rem}.stale-key{max-width:320px;margin-top:4px;display:block}.account .guest{color:#a8987a;margin:0}.cta{background:var(--brass);color:var(--table);border-radius:6px;margin-top:10px;padding:8px 14px;font-weight:700;text-decoration:none;display:inline-block}.map-wrap.empty{place-items:center;min-height:320px;display:grid}.continue{width:min(520px,100% - 32px);margin:24px 0}.continue ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.continue li{border-bottom:1px solid var(--line);padding-bottom:6px}.continue .meta{color:var(--ink-soft);font-size:.82rem}.notfound{text-align:center;max-width:40rem;margin:15vh auto;padding:0 16px}.header-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.ob-help-btn{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.ob-help-btn span{border:1px solid var(--brass);width:1.3em;height:1.3em;color:var(--brass);border-radius:50%;place-items:center;font-size:.85em;font-weight:700;display:inline-grid}.ob-scrim{z-index:50;background:#0a0705b8;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.ob-card{background:linear-gradient(180deg, var(--parchment), var(--parchment-2));color:var(--ink);border:1px solid var(--brass-dim);border-radius:10px;outline:none;padding:18px 20px 16px;box-shadow:0 24px 60px #0009}.ob-card h2{color:var(--ink);margin-bottom:6px;font-size:1.55rem}.ob-card h3{font-family:var(--font-display);margin:14px 0 4px;font-size:1.1rem;font-weight:400}.ob-card p{margin:0 0 8px}.ob-card code{font-family:var(--font-mono);font-size:.82rem}.ob-card .red{color:#a52a1f}.ob-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--brass-dim);font-size:.75rem;margin:0 0 4px!important}.ob-body{font-size:.95rem}.ob-beats,.ob-list{gap:5px;margin:0 0 8px;padding-left:20px;font-size:.93rem;display:grid}.ob-note,.ob-hint{color:var(--ink-soft);font-size:.85rem}.ob-hint{font-style:italic}.ob-card button{color:var(--ink);background:#ffffff8c;border-color:#2b21184d;padding:6px 12px;font-size:.92rem}.ob-card button:hover{border-color:var(--ink)}.ob-card button.primary{color:var(--parchment);background:#7a1f16;border-color:#7a1f16;font-weight:700}.ob-card button.primary:hover{background:#962a1f}.ob-card .ob-skip{color:var(--ink-soft);background:0 0;border-color:#0000;padding-left:4px}.ob-card .ob-skip:hover{border-color:#0000;text-decoration:underline}.ob-nav{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.ob-grow{flex:1}.ob-welcome{width:min(520px,100%);max-height:calc(100vh - 32px);overflow:auto}.ob-welcome .ob-body{min-height:11.5em}.ob-dots{justify-content:center;gap:8px;margin-top:6px;display:flex}.ob-card .ob-dots button{border:1px solid var(--brass-dim);background:0 0;border-radius:50%;width:10px;height:10px;padding:0}.ob-card .ob-dots button.on{background:var(--brass-dim)}.ob-help{width:min(620px,100%);max-height:calc(100vh - 32px);overflow:auto}.ob-help-head{justify-content:space-between;align-items:center;display:flex}.ob-actions{flex-wrap:wrap;gap:8px;margin:6px 0 4px;display:flex}.ob-card .ob-close{padding:2px 9px}.ob-tour{z-index:40;pointer-events:none;position:fixed;inset:0}.ob-light{border:2px solid var(--brass);border-radius:8px;transition:top .2s,left .2s,width .2s,height .2s;position:fixed;box-shadow:0 0 0 9999px #0a07058c,0 0 24px #c9a22799}.ob-mark{pointer-events:auto;max-height:calc(100vh - 32px);position:fixed;overflow:auto}.ob-mark h2{font-size:1.3rem}@media (prefers-reduced-motion:reduce){.ob-light{transition:none}}@media (max-width:560px){.ob-card{padding:14px 14px 12px}.ob-welcome .ob-body{min-height:0}.header-right{justify-items:stretch}}
