:root{--accent:0, 48, 94}*{box-sizing:border-box;margin:0;padding:0;font-family:Arial,sans-serif;font-size:18pt;line-height:1.5}html,body{height:100%}header{color:rgba(var(--accent), 1);z-index:10;font-family:monospace;position:fixed;top:1em;left:1em}button{background-color:rgb(var(--accent));color:#fff;cursor:pointer;border:0;border-radius:8px;padding:.5em 1em;font-size:.9em}button:disabled{background-color:rgba(var(--accent), .3);cursor:not-allowed}button.muted{background-color:rgba(var(--accent), .3)}small{font-size:.8em}input[type=text],input[type=password],input[type=number]{border:1px solid rgba(var(--accent), .2);border-radius:8px;padding:.5em;font-size:.9em}input[type=text]:focus,input[type=password]:focus,input[type=number]:focus{outline:2px solid rgba(var(--accent), .4);background-color:#fff}.hidden{display:none}p{white-space:pre-line}#app-root,#qm-root{width:100dvw;min-height:100dvh}.view{flex-flow:column;justify-content:flex-start;align-items:center;gap:1em;width:100dvw;min-height:100dvh;padding:4em 2em 2em;display:flex}.view h1{color:rgba(var(--accent), 1);font-size:1.6em}.view h2{color:rgba(var(--accent), 1);margin-top:.5em;font-size:1.2em}.error-msg{color:#b00020;font-size:.9em}.team-list,.scoreboard-list,.final-list{width:100%;max-width:600px;padding:0;list-style:none}.team-list li,.scoreboard-list li,.final-list li{border-bottom:1px solid rgba(var(--accent), .1);padding:.4em .6em}.team-list li.done{color:#006a23}.kicked{opacity:.5;text-decoration:line-through}.signup-form,.guess-form,.qm-login-form{flex-flow:wrap;justify-content:center;gap:.5em;width:100%;max-width:480px;display:flex}.signup-form input,.qm-login-form input{flex:240px}.view-round{width:100dvw;height:100dvh;padding:0;position:relative}.map-container{border:0;width:100%;height:100%;position:absolute;inset:0}.round-overlay{z-index:5;color:rgba(var(--accent), 1);background-color:#ffffffd9;border-radius:8px;flex-flow:column;gap:.2em;padding:.4em .8em;font-family:monospace;font-size:.8em;display:flex;position:fixed;top:1em;right:1em}.round-overlay .round-timer{font-weight:700}.round-reset{z-index:5;color:rgba(var(--accent), 1);cursor:pointer;background-color:#ffffffd9;border-radius:8px;padding:.4em .8em;font-family:monospace;font-size:.8em;position:fixed;top:1em;left:1em}.guess-form{z-index:5;background-color:#ffffffb3;border-radius:12px;width:min(90dvw,520px);padding:.4em;position:fixed;bottom:2em;left:50%;transform:translate(-50%)}.guess-form input{background-color:#ffffffe6;flex:200px}.view-round .error-msg{z-index:5;background-color:#ffffffe6;border-radius:8px;padding:.4em .8em;position:fixed;bottom:7em;left:50%;transform:translate(-50%)}.waiting-msg{font-size:1.1em}.waiting-progress{color:rgba(var(--accent), 1);font-family:monospace;font-size:1.1em}.waiting-timer{font-family:monospace}.scoreboard-meta{color:rgba(var(--accent), .7);font-size:.9em}.scoreboard-round-title{text-align:center}.scoreboard-hint{color:rgba(var(--accent), .7);margin-top:1em;font-size:.85em}.round-block{width:100%;max-width:600px;margin-top:1em}.round-block h3{color:rgba(var(--accent), 1);margin-bottom:.3em;font-size:1em}.round-block ol{padding-left:1.4em}#qm-root.qm-dashboard{background:rgba(var(--accent), .04);flex-flow:column;width:100%;height:100dvh;display:flex;overflow:hidden}.qm-dashboard h1{color:rgba(var(--accent), 1);font-size:1.1em}.qm-dashboard h2{color:rgba(var(--accent), 1);margin-bottom:.6rem;font-size:1.05em}.qm-dashboard h3{color:rgba(var(--accent), 1)}.qm-topbar{z-index:10;border-bottom:1px solid rgba(var(--accent), .15);background:#fff;flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 1.25rem;font-family:Arial,sans-serif;display:flex;position:sticky;top:0;left:auto;box-shadow:0 1px 4px #0000000f}.qm-topbar-title{flex-wrap:wrap;align-items:baseline;gap:.75rem;display:flex}.qm-topbar-brand{color:rgba(var(--accent), .6);font-family:monospace;font-size:.85em}.qm-grid{flex:1;grid-template:"status status""main side"minmax(0,1fr)/minmax(340px,1fr) minmax(340px,1.15fr);gap:.9rem;min-height:0;padding:.9rem;display:grid}.qm-card-status{grid-area:status}.qm-col-main{grid-area:main}.qm-col-side{grid-area:side}.qm-col{flex-flow:column;gap:.9rem;min-height:0;display:flex;overflow-y:auto}.qm-card{border:1px solid rgba(var(--accent), .12);background:#fff;border-radius:14px;padding:1.1rem 1.25rem;overflow-x:auto;box-shadow:0 1px 3px #0000000d}.qm-col .qm-instructions{background:#fff;border-radius:14px;margin-top:0}.qm-error{z-index:20;background:#fff;border:1px solid #b00020;border-radius:8px;margin:0;padding:.45em .9em;position:fixed;bottom:1rem;left:50%;transform:translate(-50%);box-shadow:0 2px 10px #0000002e}@media (width<=860px){#qm-root.qm-dashboard{height:auto;min-height:100dvh;overflow:visible}.qm-grid{flex-flow:column;padding:.75rem;display:flex}.qm-col{min-height:0;overflow-y:visible}}.qm-teams-table,.qm-round-table{border-collapse:collapse;width:100%;font-size:.9em}.qm-teams-table th,.qm-teams-table td,.qm-round-table th,.qm-round-table td{text-align:left;border-bottom:1px solid rgba(var(--accent), .1);padding:.4em .6em}.qm-teams-table th,.qm-round-table th{color:rgba(var(--accent), .7);text-transform:uppercase;letter-spacing:.03em;font-size:.85em;font-weight:700}.qm-teams-table td:last-child,.qm-round-table td:last-child{text-align:right}.qm-kick{background-color:#b00020;font-size:.8em}.muted-text{color:rgba(var(--accent), .5);font-style:italic}.qm-timer-live{color:#b00020;font-family:monospace;font-weight:700}.qm-instructions{border:1px solid rgba(var(--accent), .2);border-radius:8px;margin-top:1em;padding:.8em 1em;font-size:.85em}.qm-instructions summary{cursor:pointer;color:rgba(var(--accent), 1);-webkit-user-select:none;user-select:none;font-weight:700}.qm-instructions-body{flex-flow:column;gap:1.2em;margin-top:.8em;display:flex}.qm-instr-section h3{color:rgba(var(--accent), 1);margin-bottom:.4em;font-size:.95em}.qm-instr-section ol{margin:.3em 0;padding-left:1.5em}.qm-instr-section li{margin-bottom:.2em}.qm-verbal{background:rgba(var(--accent), .05);border-left:3px solid rgba(var(--accent), .35);border-radius:0 4px 4px 0;margin-top:.5em;padding:.4em .7em}.qm-verbal q{font-style:italic}.qm-answers{columns:2;column-gap:2em;padding-left:1.5em}
