:root{--bg:#181425;--panel:#262b44;--text:#ead4aa;--dim:#8b9bb4;--accent:#feae34;--accent-ink:#181425;--line:#3a4466;--frame:#733e39;--frame-deep:#3e2731;--error:#f6757a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-text-size-adjust:100%;font-family:ui-monospace,Cascadia Mono,Consolas,monospace}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}@supports (height:100dvh){html,body,#app{height:100dvh}}body{background:var(--bg);color:var(--text);overscroll-behavior:none;-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--text);outline-offset:2px}.screen{height:100%;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);flex-direction:column;display:flex}.bar{background:var(--panel);border-bottom:4px solid var(--frame);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 16px;display:flex}.bar .spacer{flex:1}.bar strong{overflow-wrap:anywhere;min-width:0}.map-host{touch-action:none;flex:1;min-height:0;position:relative;overflow:hidden}.map-host canvas{display:block}.dim{color:var(--dim)}.center{text-align:center;margin-top:30vh}.login{flex-direction:column;gap:12px;width:min(360px,100% - 32px);margin:12vh auto 0;display:flex}.login h1{color:var(--accent);margin:0 0 8px}.login label{color:var(--dim);flex-direction:column;gap:4px;display:flex}.login .row{gap:8px;display:flex}.notice{color:var(--accent);margin:0}input{min-height:44px;font:inherit;color:var(--text);background:var(--bg);border:2px solid var(--line);border-radius:0;padding:10px}input[type=checkbox]{width:22px;height:22px;min-height:0;accent-color:var(--accent)}button{min-height:44px;font:inherit;cursor:pointer;touch-action:manipulation;color:var(--accent-ink);background:var(--accent);border:2px solid var(--frame-deep);box-shadow:0 3px 0 var(--frame-deep);border-radius:0;padding:10px 14px;font-weight:700}button:active:not(:disabled){box-shadow:0 1px 0 var(--frame-deep);transform:translateY(2px)}button.secondary{color:var(--text);border:2px solid var(--dim);box-shadow:none;background:0 0}button.secondary:active:not(:disabled){background:var(--line);transform:none}button:disabled{opacity:.5;cursor:default}.admin{flex-direction:column;gap:16px;padding:16px;display:flex;overflow:auto}.admin-panel{background:var(--panel);border:2px solid var(--line);padding:12px 16px}.admin-panel h2{color:var(--accent);margin:0 0 8px;font-size:1.1em}.admin-panel button{margin-top:8px}.admin-list{flex-direction:column;gap:6px;margin:0;padding-left:18px;display:flex}.error{color:var(--error)}.dock{background:var(--panel);border-top:4px solid var(--frame);flex-direction:column;max-height:55vh;display:flex}@supports (height:100dvh){.dock{max-height:55dvh}}.tabs{flex-wrap:wrap;align-items:center;gap:4px 8px;padding:6px 12px;display:flex}.tablist{scrollbar-width:none;flex:0 auto;gap:4px;max-width:100%;padding-bottom:4px;display:flex;overflow-x:auto}.tablist::-webkit-scrollbar{display:none}.tabs .spacer{flex:1}.tab{color:var(--text);border:2px solid var(--dim);box-shadow:none;background:0 0;flex:none}.tab.on{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.stats{white-space:nowrap}.small{margin:2px 0 8px;font-size:.85em}.panel-body{overscroll-behavior:contain;flex-direction:column;gap:4px;padding:4px 16px 16px;display:flex;overflow:auto}.panel-body h2{color:var(--accent);margin:4px 0;font-size:1.1em}.panel-body h3{color:var(--accent);margin:12px 0 4px;font-size:1em}.panel-body p{margin:4px 0}.panel-body fieldset{border:0;flex-direction:column;gap:4px;min-width:0;margin:0;padding:0;display:flex}.panel-body label{color:var(--dim);flex-direction:column;gap:4px;display:flex}.panel-body label.check{flex-direction:row;align-items:center;gap:8px}.sentence{background:var(--bg);border:2px solid var(--line);padding:8px 10px;line-height:1.4}.rounds{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cards{grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:8px;display:grid}.card{background:var(--bg);border:2px solid var(--line);flex-direction:column;gap:6px;padding:10px;display:flex}.card input[type=number]{width:6em}.tag{color:var(--accent);border:1px solid var(--accent);padding:0 4px;font-size:.8em}select{min-height:44px;font:inherit;color:var(--text);touch-action:manipulation;background:var(--bg);border:2px solid var(--line);border-radius:0;padding:10px}.lines{flex-direction:column;gap:4px;margin:0;padding-left:20px;line-height:1.4;display:flex}.battle{background:var(--bg);border:2px solid var(--line);margin-bottom:6px;padding:8px 10px}.battle summary{cursor:pointer;align-items:center;min-height:32px;display:flex}.battle .card{background:var(--panel);margin-top:6px}.admin-form{flex-direction:column;gap:8px;max-width:420px;display:flex}.admin-form label{color:var(--dim);flex-direction:column;gap:4px;display:flex}.fleet-name{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.swatch{border:1px solid var(--text);width:14px;height:14px;display:inline-block}.replay{flex-direction:column;gap:4px;margin-top:8px;display:flex}.replay-host{background:var(--bg);justify-content:center;width:100%;display:flex}.replay-host canvas{image-rendering:pixelated;display:block}.legend{border-collapse:collapse;width:100%}.legend th{text-align:left;color:var(--dim);padding:2px 6px;font-weight:400}.legend td{border-top:1px solid var(--line);vertical-align:top;padding:6px}.legend .num{text-align:right;white-space:nowrap}.legend .me td{background:var(--bg)}.legend .marks{flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;display:flex}.legend .tag{white-space:nowrap}.legend .fleet-name{margin:0}@media (width<=640px){.bar{gap:6px 8px;padding:6px 10px}.bar button{min-height:40px;padding:6px 10px}.tabs{padding:6px 10px}.stats{white-space:normal;flex:1 0 100%;order:3}.tabs .spacer{display:none}.dock{max-height:50vh}.panel-body{padding:4px 10px 16px}.rounds{grid-template-columns:minmax(0,1fr)}.actions button{flex:140px}.legend{font-size:.9em}.login{margin-top:6vh}@supports (height:100dvh){.dock{max-height:50dvh}}}
