:root{color-scheme:dark;font-family:system-ui,sans-serif;background:#101413;color:#f2f5f1}
*{box-sizing:border-box}body{margin:0} [hidden]{display:none!important}
header,main{width:min(100%,620px);margin:auto;padding:1rem}
header{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid #35413a}
header a{color:#c7ef85;font-weight:750;text-decoration:none}
header span, #watch-pot,#rail-status{color:#c1cdc4;font-size:.85rem}
h1{font-size:clamp(1.5rem,6vw,2.3rem);margin:0 0 1rem}h2{font-size:1.1rem}
#watch-table{display:grid;gap:.8rem;background:radial-gradient(ellipse at top,#22342a,#18211d);border:1px solid #4b5d52;border-radius:14px;padding:1rem}
#watch-seats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
.watch-seat{padding:.6rem;background:#131b16;border:1px solid #546158;border-radius:8px;overflow-wrap:anywhere}
.watch-seat[data-acting=true]{border-color:#c7ef85}.watch-seat p{margin:.25rem 0;font-size:.8rem}
.watch-cards{display:flex;gap:.25rem;flex-wrap:wrap;margin:.35rem 0}
.watch-card{display:grid;place-items:center;background:#f8f5eb;color:#161b18;border-radius:4px;width:clamp(30px,9vw,48px);height:clamp(42px,13vw,64px);font-weight:750}
.watch-card[data-red=true]{color:#a61e3d}.watch-card[data-hidden=true]{background:#26382b;color:#c7ef85;border:1px solid #748865}
#watch-hands-label{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:1rem 0}
button,select,input{font:inherit;color:inherit;background:#232d27;border:1px solid #627167;border-radius:6px;min-height:44px;padding:.45rem .65rem}
button{cursor:pointer}button:disabled{opacity:.6} button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #c7ef85;outline-offset:2px}
#watch-events{list-style:none;padding:0;margin:.5rem 0;max-height:12rem;overflow:auto;overflow-wrap:anywhere}#watch-events li{padding:.35rem 0}
#rail-reactions,.rail-compose{display:flex;gap:.4rem;margin:.5rem 0}.rail-compose input{flex:1;min-width:0}
.replay-controls{display:flex;gap:.4rem;flex-wrap:wrap}#watch-replay{margin:1rem 0}.replay-note{font-size:.8rem;color:#c1cdc4}#replay-step{overflow-wrap:anywhere}
