:root{color-scheme:dark;--bg:#171611;--panel:#352b21;--well:#201b16;--text:#ead7a0;--dim:#bca77b;--gold:#a3884c;--light:#d1b86d;--dark:#251a0e;--red:#612820;--select:#5a4930;font-family:HeroesUI,Georgia,serif;font-size:16px;color:var(--text);background:var(--bg);font-variant-numeric:tabular-nums}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit;color:inherit}button,.button{display:inline-flex;justify-content:center;align-items:center;min-height:30px;padding:5px 12px;border:2px solid;border-color:var(--light) var(--dark) var(--dark) var(--light);background:var(--red);text-decoration:none;cursor:pointer;border-radius:0;line-height:1}button:hover,.button:hover{background:#7a3629;color:#ffefbb}button:active,.button:active{border-color:var(--dark) var(--light) var(--light) var(--dark)}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,tr:focus-visible{outline:2px solid #ffe39a;outline-offset:2px}input,select{background:var(--well);border:1px solid #8b7548;border-radius:0;min-width:0;min-height:30px;padding:5px 7px}input{width:100%}a{color:var(--text)}h1,h2,h3,p{margin:0}h1,h2{font-family:HeroesTitle,Georgia,serif;font-weight:normal}h3{font-size:16px;font-weight:normal}h1{font-size:32px}h2{font-size:24px}[hidden]{display:none!important}.notice,.status-note{font-size:14px;line-height:1.3;color:var(--dim)}.status-note:empty{display:none}.status-note{color:#f0c879;overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%)}
.entry-page{height:100dvh;overflow:hidden}.entry{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px}.entry h1{font-size:38px}.entry .button{width:168px;min-height:44px;font-size:20px}.github-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--dim)}.github-link:hover{color:var(--text)}.github-link svg{display:block}
#tavern{width:380px;max-width:96%;height:100%;background:var(--panel);border:3px solid;border-color:var(--light) var(--dark) var(--dark) var(--gold);display:flex;flex-direction:column;min-height:0;padding:9px;gap:8px}.tavern-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--gold);padding-bottom:7px;flex:none}.tavern-heading button{width:30px;padding:0;font:22px Georgia,serif}#game-sidebar{display:flex;flex-direction:column;gap:10px;min-height:0;flex:1;overflow:auto;overscroll-behavior:contain}.nickname{display:flex;gap:8px;align-items:center;flex:none}.nickname label{width:52px}.panel-title{display:flex;align-items:center;justify-content:space-between;min-height:26px;color:#f1d27d}.panel-title button{min-height:26px;width:30px;padding:0}.rooms-panel{display:flex;flex-direction:column;gap:6px;min-height:120px;flex:1}.room-filters{display:flex;gap:6px}.room-filters select{width:108px}.table-scroll{overflow:auto;overscroll-behavior:contain;border:1px solid #8b7548;background:var(--well);scrollbar-color:#8b7548 #201b16;scrollbar-width:thin}.room-scroll{flex:1;min-height:86px}table{border-collapse:separate;border-spacing:0;width:100%;table-layout:fixed;font-size:14px}th{position:sticky;top:0;z-index:1;text-align:left;font-weight:normal;color:#f1d27d;background:#403323;border-bottom:1px solid #8b7548}th,td{padding:5px 6px;vertical-align:top;line-height:1.1}td{border-bottom:1px solid #473a28}td+td,th+th{border-left:1px solid #473a28}.rooms-table th:first-child{width:52%}.rooms-table th:nth-child(2){width:20%}.rooms-table th:last-child{width:28%}.room-card{cursor:pointer}.room-card:hover{background:#413525}.room-card[aria-selected=true]{background:var(--select);color:#fff0ba}.room-card td:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-card[data-unavailable=true]{color:var(--dim)}.room-actions{display:flex;gap:6px;flex:none}.room-actions button{flex:1}.empty-cell{padding:16px 8px;color:var(--dim);line-height:1.4}#create-room{display:grid;gap:7px;padding:9px;border:1px solid var(--gold);background:var(--well);overflow:auto}#create-room>label{font-size:14px}.form-pair{display:grid;grid-template-columns:2fr 1fr;gap:8px}.form-pair label{display:grid;gap:5px;font-size:14px}#room-info{display:grid;gap:7px;flex:none}.players{list-style:none;padding:0;margin:0;background:var(--well);border:1px solid var(--gold)}.players li{display:flex;gap:7px;align-items:center;padding:5px 7px;border-bottom:1px solid #473a28;font-size:14px}.players li:last-child{border:0}.players small{margin-left:auto;color:var(--dim);font-size:13px}.flag{width:9px;height:12px;background:var(--flag);flex:none}.chat-panel{display:flex;flex-direction:column;gap:6px;flex:1;min-height:155px}.chat-log{flex:1;min-height:70px}.chat-table th:first-child{width:48px}.chat-table th:nth-child(2){width:76px}.chat-table td{overflow-wrap:anywhere}.chat-table td:first-child{font-size:12px;color:var(--dim);white-space:nowrap}.chat-table td:nth-child(2){color:#e3bd6c}.chat-form{display:flex;gap:5px;flex:none}.chat-form button{min-width:38px;padding:5px}.chat-form input{flex:1}#chat-help{display:flex;justify-content:space-between}#connection{font-size:13px;color:var(--dim);border-top:1px solid var(--gold);padding-top:6px;flex:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#invite-link{font-family:system-ui,sans-serif;font-size:12px}.landing{max-width:900px;margin:40px auto;padding:20px;line-height:1.6}.landing p{margin:16px 0}.site-header,footer{padding:20px}.nav,.actions{display:flex;gap:12px}
@media(pointer:coarse){button,.button{min-height:40px}input,select{min-height:40px;font-size:16px}th,td{padding:8px 6px}.tavern-heading button{min-width:40px;min-height:40px}.panel-title button{min-width:40px;min-height:40px}}
