:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d1117;--surface:#161b22;--surface-2:#21262d;--border:#30363d;--text:#e6edf3;--muted:#8b949e;--accent:#1f6feb;--green:#238636;--green-hi:#2ea043;--red:#da3633;--amber:#d29922;--good:#3fb950;--bad:#f85149}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;overscroll-behavior:none;font:15px/1.4 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.app{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}.header{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:10px 16px;display:flex}.header h1{margin:0;font-size:17px}.logo{border-radius:6px;width:28px;height:28px}.tag{color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:2px 10px;font-size:12px}.screen{flex-direction:column;flex:1;min-height:0;display:flex}.screen.pad{gap:12px;padding:16px}.screen.scroll{overflow-y:auto}.section{color:var(--muted);letter-spacing:.04em;margin:4px 0 0;font-size:15px}h2.section{color:var(--text);letter-spacing:0;font-size:18px}.muted{color:var(--muted)}.small{font-size:13px}.error{color:var(--bad)}.good{color:var(--good)}.warn{color:var(--amber)}.bad{color:var(--bad)}.search{border:1px solid var(--border);background:var(--surface);width:100%;min-height:44px;color:var(--text);font:inherit;border-radius:8px;padding:10px 14px;font-size:16px}.search:focus{border-color:var(--accent);outline:none}.tiles{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.tile{border:1px solid var(--border);background:var(--surface);height:68px;color:var(--text);font:inherit;text-align:center;border-radius:10px;justify-content:center;align-items:center;padding:6px 10px;font-weight:600;line-height:1.2;display:flex;overflow:hidden}.tile-l{font-size:16px}.tile-m{font-size:14px}.tile-s{font-size:12.5px}.tile:active{border-color:var(--accent);background:var(--surface-2)}.stage{background:#000;flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative;overflow:hidden}.frame{max-width:100%;max-height:100%}.frame.hidden{display:none}.video-host{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.placeholder{text-align:center;max-width:340px;color:var(--muted);flex-direction:column;align-items:center;gap:12px;padding:16px;display:flex}.banner{border:1px solid var(--border);text-align:center;background:#0d1117cc;border-radius:8px;padding:8px 12px;font-weight:600;position:absolute;top:10px;left:10px;right:10px}.banner.warning{border-color:var(--amber);color:#111;background:#d29922e6}.hud{gap:8px;display:flex;position:absolute;top:60px;left:10px}.hud-box{border:1px solid var(--border);background:#0d1117cc;border-radius:10px;flex-direction:column;align-items:center;min-width:76px;padding:6px 12px;display:flex}.caption{color:var(--muted);letter-spacing:.06em;font-size:11px}.big{font-variant-numeric:tabular-nums;font-size:40px;font-weight:700;line-height:1.1}.mid{font-variant-numeric:tabular-nums;font-size:24px;font-weight:600;line-height:1.6}.feedback{color:#fff;border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;display:flex;position:absolute;bottom:10px;left:10px;right:10px}.feedback.good{background:#238636e6}.feedback.bad{background:#da3633e6}.fps{color:var(--muted);background:#0d1117b3;border-radius:999px;padding:2px 8px;font-size:12px;position:absolute;top:60px;right:10px}.controls{border-top:1px solid var(--border);background:var(--bg);flex-direction:column;gap:10px;padding:12px 16px 16px;display:flex}.controls-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.view-help{white-space:pre-line;color:var(--muted);margin:0;font-size:13px}.row{gap:10px;display:flex}.grow{flex:1}.actions{flex-wrap:wrap;margin-top:8px}.link{color:var(--accent);font:inherit;background:0 0;border:none;padding:6px 0;font-size:14px}.button{border:1px solid var(--border);min-height:48px;font:inherit;color:#fff;border-radius:10px;padding:0 18px;font-weight:700}.button.primary{background:var(--green);border-color:var(--green-hi)}.button.danger{background:var(--red);border-color:var(--bad)}.button.secondary{background:var(--surface-2)}.button:disabled{background:var(--surface);border-color:var(--border);color:var(--muted)}.totals{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.total{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;align-items:center;padding:10px 4px;display:flex}.total>span:first-child{font-size:24px;font-weight:700}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:6px;padding:12px;display:flex}.card p{color:var(--muted);margin:0;font-size:14px}.reps{border-collapse:collapse;width:100%;font-size:14px}.reps th{text-align:left;color:var(--muted);padding:6px 4px;font-weight:600}.reps td{border-top:1px solid var(--border);vertical-align:top;padding:8px 4px}.reps td:first-child,.reps td:nth-child(2){white-space:nowrap}@media (orientation:landscape) and (height<=560px){.header,.tabs.locked{display:none}.screen.train{flex-direction:row}.screen.train .controls{border-top:none;border-left:1px solid var(--border);flex-shrink:0;justify-content:flex-end;width:260px;overflow-y:auto}}.tab-page{flex-direction:column;flex:1;min-height:0;display:flex}.tab-page.hidden{display:none}.tabs{border-top:1px solid var(--border);background:var(--surface);display:flex}.tab{min-height:50px;color:var(--muted);font:inherit;background:0 0;border:none;flex:1;font-weight:600}.tab.selected{color:var(--text);box-shadow:inset 0 2px 0 var(--accent)}.tab:disabled{opacity:.4}.field{border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);font:inherit;border-radius:8px;min-width:0;padding:8px 12px;font-size:16px}.field.narrow{width:84px}.field:focus{border-color:var(--accent);outline:none}.list{flex-direction:column;gap:8px;display:flex}.list-row{text-align:left;border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;border-radius:10px;flex-direction:column;gap:2px;padding:12px;display:flex}.back{align-self:flex-start}.save-row{gap:10px;display:flex}.save-row label{flex-direction:column;flex:1;gap:4px;display:flex}.save-row label:last-child{flex:none}.toggles{flex-wrap:wrap;gap:16px;font-size:14px;display:flex}.toggles input{vertical-align:middle;width:18px;height:18px}.snapshot{background:#000;border-radius:8px;width:100%;height:auto}.ghost-key{color:#00e5ff}.charts{flex-direction:column;gap:10px;display:flex}.chart{background:var(--bg);border:1px solid var(--border);border-radius:10px;position:relative;overflow:hidden}.chart-scroll{overflow-x:auto}.chart-pinned{pointer-events:none;position:absolute;top:0;left:0}.chart-title{pointer-events:none;font-size:13px;font-weight:700;position:absolute;top:8px;left:8px}.chart .grid{stroke:var(--border);stroke-width:1px}.chart .value{fill:var(--text);text-anchor:middle;font-size:11px}.chart .date{fill:var(--muted);text-anchor:middle;font-size:11px}.chart .tick{fill:var(--muted);text-anchor:end;font-size:11px}.chart .pinned-bg{fill:var(--bg)}.user-chip{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;border-radius:999px;margin-left:auto;padding:6px 12px;font-size:13px}.icon{border:1px solid var(--border);background:var(--surface);min-width:40px;min-height:40px;color:var(--text);font:inherit;border-radius:8px;font-size:16px}.icon:disabled,.user-chip:disabled{opacity:.4}.gear{font-size:18px}.chip{background:var(--accent);color:#fff;font:inherit;border:none;border-radius:8px;align-self:flex-start;padding:8px 14px;font-weight:600}.stack{flex-direction:column;gap:4px;display:flex}.ordered{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.ordered li{border:1px solid var(--border);background:var(--surface);border-radius:8px;align-items:center;gap:6px;padding:6px 6px 6px 12px;display:flex}.picker{text-align:center;justify-content:center;align-items:center}.picker-title{margin:0 0 16px;font-size:28px}.people{flex-wrap:wrap;justify-content:center;gap:18px;display:flex}.person{font:inherit;background:0 0;border:none;flex-direction:column;align-items:center;gap:6px;display:flex}.avatar{color:#fff;border:3px solid #0000;border-radius:14px;justify-content:center;align-items:center;width:96px;height:96px;font-size:40px;display:flex}.avatar.current{border-color:#fff}.avatar.add{background:var(--surface);border:2px dashed var(--border);color:var(--muted)}.add-user{width:100%;max-width:380px;margin-top:16px}.problems,.status{white-space:pre-wrap;margin:0;font:12px/1.5 ui-monospace,Menlo,monospace}.problems{color:var(--bad)}.effective{max-height:50vh;color:var(--muted);background:var(--bg);border-radius:8px;margin:0;padding:8px;font:11px/1.5 ui-monospace,Menlo,monospace;overflow:auto}.changes{margin:0;padding-left:18px;font-size:13px}.card .button{width:100%}
