:root{--bg: #0b0d12;--card: #141821;--line: #232938;--ink: #e8ecf3;--dim: #8b93a7;--yes: #38d39f;--no: #ff5c6c;--skip: #8b93a7;--mark: #f472b6;--emitted: #5aa9ff;--likely: #ffb648;--weak: #8b93a7;--left: #c084fc;--right: #67e8f9;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--side-w: 360px;--im-ground: var(--yes);--im-wall: var(--likely);--im-net: var(--no);--im-racket: var(--emitted);color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;touch-action:manipulation}[hidden]{display:none!important}html,body{margin:0;height:100%;background:var(--bg);color:var(--ink);font:15px/1.35 -apple-system,SF Pro Text,system-ui,sans-serif;overscroll-behavior:none}body{display:flex;flex-direction:column;height:100dvh;padding-top:var(--safe-top)}#app{flex:1;min-height:0;display:flex;flex-direction:column}#page{flex:1 1 0;min-height:0;display:flex;flex-direction:column}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}button[disabled]{cursor:default}a{color:inherit}kbd{font:inherit;font-size:10.5px;opacity:.7}.dim{color:var(--dim)}.LEFT{color:var(--left)}.RIGHT{color:var(--right)}.fam.ground{color:var(--im-ground)}.fam.wall{color:var(--im-wall)}.fam.net{color:var(--im-net)}.fam.racket{color:var(--im-racket)}.ic{width:18px;height:18px;display:block;margin:0 auto;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.ic .f{fill:currentColor}.ic .bars{stroke-width:3.4}.view{flex:1 1 0;min-height:0;display:flex;flex-direction:column;width:100%}.view.scroll{overflow-y:auto}.tabbar{flex:none;display:flex;border-top:1px solid var(--line);background:#0e1117;padding:3px 0 calc(var(--safe-bottom) + 2px)}.tabbar button{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:1px;padding:5px 0 3px;color:var(--dim);font-size:11px;letter-spacing:.02em}.tabbar button[disabled]{opacity:.35}.tabbar svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.tabbar button.on{color:var(--emitted)}.tabbar .ds-tab span,.tabbar .me-tab span{max-width:100%;padding:0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tabbar .ds-tab.open{color:var(--ink)}.sheet{position:fixed;left:8px;right:8px;bottom:calc(var(--safe-bottom) + 62px);z-index:25;background:#1a1f2b;border:1px solid #2e3546;border-radius:16px;padding:9px 12px 10px;box-shadow:0 10px 30px #00000080;max-width:544px;margin:0 auto}.sheet-head{display:flex;align-items:flex-start;gap:10px}.sheet-title{flex:1;font-weight:700;font-size:14px}.sheet-close{width:26px;height:26px;border-radius:50%;border:1px solid var(--line);color:var(--dim);flex:none}.sheet-sub{color:var(--dim);font-size:12px;margin-top:2px;line-height:1.35}.sheet-actions{display:flex;gap:8px;margin-top:8px}.sheet-actions button{flex:1;padding:8px 6px;border-radius:12px;border:2px solid var(--line);font-weight:700;font-size:14px}.sheet-actions .no{color:var(--no);border-color:#ff5c6c80}.sheet-people{display:flex;flex-direction:column;gap:4px;margin-top:8px}.sheet-people .person{display:flex;align-items:center;gap:8px;font-size:13px}.sheet-people .person span:last-child{color:var(--dim);font-size:12px;margin-left:auto}@media (min-width: 1100px) and (min-height: 600px){.tabbar{position:relative;justify-content:center}.tabbar>button{flex:0 0 140px}.tabbar .ds-tab,.tabbar .me-tab{position:absolute;top:0;bottom:0;flex-direction:row;gap:8px;width:auto;max-width:340px;font-size:13px}.tabbar .ds-tab{left:16px}.tabbar .me-tab{right:16px}.tabbar .ds-tab svg,.tabbar .me-tab svg{width:20px;height:20px}.sheet.me-sheet{left:auto;right:16px;width:360px;margin:0}}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{padding:4px 9px;border-radius:999px;border:1px solid var(--line);color:var(--dim);font-size:12px;white-space:nowrap}.chip.on{color:var(--ink);border-color:currentColor}.chip.open.on{color:var(--likely)}.chip.reviewed.on{color:var(--yes)}.chip.all.on{color:var(--emitted)}.seg{display:flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}.seg button{padding:5px 8px;font-size:12px;color:var(--dim);white-space:nowrap}.seg button.on{background:var(--line);color:var(--ink)}.empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:24px;color:var(--dim)}.empty h2{margin:0;color:var(--ink);font-size:22px}.empty p{margin:0;max-width:420px}.empty table{border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:14px}.empty td,.empty th{padding:3px 7px;text-align:right}.empty th{color:var(--dim);font-weight:500}.empty td:first-child,.empty th:first-child{text-align:left}.empty .error,.error{color:var(--no)}.go-btn{padding:10px 18px;border-radius:12px;border:2px solid var(--emitted);background:#5aa9ff1f;color:var(--emitted);font-weight:800;font-size:15px}.go-btn:active{transform:scale(.98)}.avatar{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex:none;border-radius:50%;border:1px solid var(--line);background:#1c2230;color:var(--ink);font-size:9.5px;font-weight:800;letter-spacing:.02em}.avatars{display:flex;gap:3px}.desk-side{display:flex;flex-direction:column;min-height:0;background:#0f1219;border:1px solid var(--line);border-radius:12px;overflow:hidden}.desk-head{display:flex;align-items:center;gap:8px;padding:10px 12px 8px}.desk-side>*+.desk-head{margin-top:8px;border-top:1px solid var(--line)}.desk-head b{flex:1;font-size:14px}.desk-count{color:var(--dim);font-size:12px}.desk-head .link{color:var(--dim);font-size:11.5px;text-decoration:underline}.desk-head .link:hover{color:var(--ink)}.desk-rows{flex:1;min-height:0;overflow-y:auto;border-top:1px solid var(--line)}.desk-row{display:grid;grid-template-columns:28px 58px 18px minmax(0,1fr);column-gap:6px;align-items:center;width:100%;height:30px;padding:0 12px 0 9px;text-align:left;font-size:12px;font-variant-numeric:tabular-nums;border-left:3px solid transparent;color:var(--ink);cursor:pointer}.desk-row:hover{background:#151a24}.desk-row.on{background:#1f2636}.desk-row .n{color:var(--dim)}.desk-row .what{color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.desk-row .what b{font-weight:700}.desk-row .who{color:var(--dim);text-align:right;white-space:nowrap}.desk-row.tracker,.desk-row.live{opacity:.8}.desk-row.mk{grid-template-columns:28px 58px 18px minmax(0,1fr) 52px}.desk-row.im{grid-template-columns:28px 58px minmax(0,1fr) 46px 40px minmax(22px,auto)}.desk-row.im .cam{color:var(--dim);text-align:right}.desk-row.im .cam.needs{color:var(--likely)}.desk-row.im.tracker .what b{opacity:.75}.desk-row .x{width:22px;height:22px;border-radius:5px;color:var(--dim)}.desk-row .x:hover{color:var(--ink);background:var(--line)}.desk-row .take{height:22px;padding:0 6px;border-radius:5px;color:var(--emitted);font-size:11.5px;font-weight:700}.desk-row .take:hover{background:var(--line)}.acts2{display:flex;gap:2px;justify-content:flex-end}:is(.desk-row,.im-row) .drop{width:auto;height:22px;padding:0 6px;border-radius:5px;color:var(--dim);font-size:11.5px;font-weight:700}:is(.desk-row,.im-row) .drop:hover{color:var(--no);background:var(--line)}.desk-row.im.dismissed{opacity:.55}.desk-row.im.dismissed .what b{text-decoration:line-through}.desk-empty,.im-empty{padding:6px 12px 8px;color:var(--dim);font-size:12px}.ds-list{display:flex;flex-direction:column;gap:6px;padding:8px 12px 12px;overflow-y:auto;min-height:0;flex:1}.ds-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:baseline;width:100%;padding:8px 10px;text-align:left;border:1px solid var(--line);border-radius:10px;background:#141821;text-decoration:none;color:var(--ink)}a.ds-row:hover{background:#19202c}.ds-row.on{border-color:var(--emitted);background:#16202f}.ds-row b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-row .st{font-size:11px;font-weight:700;letter-spacing:.02em}.ds-row .st.new{color:var(--likely)}.ds-row .st.in-review{color:var(--emitted)}.ds-row .st.reviewed{color:var(--yes)}.ds-row .meta{grid-column:1;font-size:12px;color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-row .meta .differs{color:var(--likely)}.ds-row .meta .unchecked{color:var(--dim);font-style:italic}.ds-row .avatars{grid-column:2;justify-self:end}.list-filters{display:flex;gap:6px;padding:0 14px 4px}dialog.cases{padding:0;margin:auto;width:min(560px,calc(100vw - 24px));max-width:none;max-height:min(80dvh,760px);border-radius:16px;border:1px solid #2e3546;background:#1a1f2b;color:var(--ink);box-shadow:0 18px 48px #0000008c;overflow:hidden}dialog.cases[open]{display:flex;flex-direction:column}dialog.cases::backdrop{background:#0b0d1273;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}dialog.cases:focus{outline:none}.cd-head{display:flex;align-items:center;gap:8px;padding:12px 12px 8px 14px;flex:none}.cd-head b{flex:1;font-size:15px}dialog.cases .ds-list{flex:0 1 auto;padding:0 14px 14px}.cd-day{position:sticky;top:0;z-index:1;display:flex;align-items:baseline;gap:8px;margin:0 -14px;padding:10px 14px 4px;background:#1a1f2b;border-bottom:1px solid var(--line);font-size:11px;color:var(--dim)}.cd-day b{color:var(--ink);font-size:12px}.cd-day span{margin-left:auto}dialog.cases .ds-row:focus-visible{outline:1px solid var(--emitted);outline-offset:1px}.home .go-btn{margin-top:4px}.oc-head{display:flex;align-items:center;gap:8px;margin:0 8px;padding:6px 4px;border-radius:14px;flex:none}.oc-nav{width:44px;height:36px;border-radius:12px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex:none;color:var(--ink)}.oc-nav[disabled]{opacity:.35}.oc-title{flex:1;min-width:0;text-align:center}.oc-title .title{font-weight:700;font-size:15px}.oc-title .st{font-size:11px;font-weight:700;letter-spacing:.02em;margin-left:6px}.oc-title .st.new{color:var(--likely)}.oc-title .st.in-review{color:var(--emitted)}.oc-title .st.reviewed{color:var(--yes)}.oc-sub{font-size:12px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.oc-sub .differs{color:var(--likely)}.oc-head .avatars{flex:none}.stage{position:relative;flex:none}.im-grid{display:grid;grid-template-columns:repeat(var(--cols, 2),var(--tile-w, 420px));gap:6px;justify-content:center}.im-tile{position:relative;width:var(--tile-w, 420px);aspect-ratio:4 / 3;background:#000;overflow:hidden;border-radius:4px}.im-tile video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain}.im-tile.failed:after{content:"this eye did not load";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--dim);font-size:13px}.eye{position:absolute;left:8px;top:6px;font-size:11px;padding:2px 6px;border-radius:6px;background:#0000008c;color:#fff;letter-spacing:.02em;pointer-events:none;z-index:3}.eye b{font-weight:700}.eyes-btn{position:absolute;right:8px;top:6px;z-index:3;font-size:11px;padding:3px 8px;border-radius:6px;background:#0000008c;color:#fff;border:1px solid rgba(255,255,255,.35);letter-spacing:.02em;opacity:0}.im-tile:hover .eyes-btn,.eyes-btn.on{opacity:1}.eyes-btn.on{border-color:var(--likely);color:var(--likely)}.oc-clock{position:absolute;left:8px;bottom:6px;z-index:4;font-size:12px;padding:3px 7px;border-radius:6px;background:#0009;color:#fff;font-variant-numeric:tabular-nums;pointer-events:none}.oc-clock b{font-size:14px}.oc-clock .end{display:block;color:var(--dim)}.oc-clock .end b{color:#fff;font-weight:600;font-size:12px}.loading-badge{position:absolute;right:8px;bottom:6px;z-index:4;font-size:11px;font-weight:700;padding:3px 7px;border-radius:6px;background:#0009;color:var(--dim);pointer-events:none}.no-video{margin:24px 16px;padding:16px;border:1px solid var(--line);border-radius:12px;color:var(--dim);font-size:14px;line-height:1.45;text-align:center}.eye-bar{display:flex;align-items:center;gap:8px;padding:8px 12px 0;min-width:0;flex:none}.eye-bar .seg{flex:1;min-width:0;overflow-x:auto}.im-clock{color:var(--dim);font-size:12.5px;font-variant-numeric:tabular-nums;white-space:nowrap}.im-clock b{color:var(--ink)}.im-tile svg.im-over{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;z-index:2}.im-tile svg.im-over *{pointer-events:none}.im-tile.placing,.im-tile.placing *{cursor:none}.im-over .mk{stroke:#000000b3}.im-over .mk.ground{fill:var(--im-ground)}.im-over .mk.wall{fill:var(--im-wall)}.im-over .mk.net{fill:var(--im-net)}.im-over .mk.racket{fill:var(--im-racket)}.im-over .mk.tracker{fill-opacity:.45;stroke-dasharray:2 1.5}.im-over .mk .ring{fill:#ffffff1a;stroke:#fff}.im-over .pv{fill:none}.im-over .pv .halo{stroke:#0009}.im-over .pv.ground .line{stroke:var(--im-ground)}.im-over .pv.wall .line{stroke:var(--im-wall)}.im-over .pv.net .line{stroke:var(--im-net)}.im-over .pv.racket .line{stroke:var(--im-racket)}.im-over .pv .dot{fill:#fff;stroke:#0009}.im-tags{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:3}.im-tag{position:absolute;transform:translate(12px,-50%);font-size:11px;padding:2px 6px;border-radius:6px;background:#0009;color:#fff;letter-spacing:.02em;white-space:nowrap}.im-tag.flip{transform:translate(calc(-100% - 12px),-50%)}.im-tag b{font-weight:700}.im-tag.ground b{color:var(--im-ground)}.im-tag.wall b{color:var(--im-wall)}.im-tag.net b{color:var(--im-net)}.im-tag.racket b{color:var(--im-racket)}.im-tag.on{background:#000c;box-shadow:inset 0 0 0 1px #fff}.im-tag.pointer{transform:translate(18px,-50%);background:#000000b8}.im-tag.pointer.flip{transform:translate(calc(-100% - 18px),-50%)}.im-tag .note{color:var(--dim)}.tl{display:block;width:100%;touch-action:none;user-select:none;-webkit-user-select:none;flex:none}.tl.overview{height:46px;margin:8px 12px 0;width:calc(100% - 24px)}.tl-detail{position:relative;height:58px;margin-top:2px;background:#0f1219;flex:none}.tl-scroll{height:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;user-select:none;-webkit-user-select:none}.tl-scroll::-webkit-scrollbar{display:none}.tl-scroll svg{display:block;height:58px}@media (pointer: fine){.tl-scroll{cursor:grab}.tl-scroll.dragging{cursor:grabbing}}.tl-detail .playhead{position:absolute;left:50%;top:0;bottom:13px;width:2px;margin-left:-1px;background:#fff;pointer-events:none}.marks text{font-size:10px;fill:var(--dim)}.marks .grid{stroke:var(--line);stroke-width:1}.marks .grid.minor{stroke:#1a1f2b}.marks .tk{stroke-width:1.5}.marks .dot{stroke:none}.marks .emitted{stroke:var(--emitted);fill:var(--emitted)}.marks .likely{stroke:var(--likely);fill:var(--likely)}.marks .head{stroke:#fff;stroke-width:2}.marks .window{fill:#ffffff0f}.marks .ct{stroke:none}.marks .ct.LEFT{fill:var(--left)}.marks .ct.RIGHT{fill:var(--right)}.marks .ct.live{fill:none;stroke:var(--likely);stroke-width:1.2}.marks .mine{fill:none;stroke:#fff;stroke-width:1.2}.marks .tk.mine{stroke:#fff;stroke-width:2}.marks .tk.fam.ground{stroke:var(--im-ground)}.marks .tk.fam.wall{stroke:var(--im-wall)}.marks .tk.fam.net{stroke:var(--im-net)}.marks .tk.fam.racket{stroke:var(--im-racket)}.marks .oc-endmark{stroke-width:2.5}.marks .oc-endmark.fault{stroke:var(--no)}.marks .oc-endmark.left{stroke:var(--left)}.marks .oc-endmark.right{stroke:var(--right)}.marks .oc-endmark.none,.marks .oc-endmark.no-rally{stroke:var(--likely);stroke-dasharray:3 3}.marks .oc-endmark.tracker{stroke:var(--skip);stroke-dasharray:3 3;stroke-width:1.5}.marks .oc-endmark.live{stroke:var(--likely);stroke-dasharray:2 3;stroke-width:1.5}.marks .oc-play{fill-opacity:.1}.marks .oc-play.tracker{fill-opacity:.06}.marks .oc-play.fault,.marks .oc-bar.fault{fill:var(--no)}.marks .oc-play.left,.marks .oc-bar.left{fill:var(--left)}.marks .oc-play.right,.marks .oc-bar.right{fill:var(--right)}.marks .oc-play.none,.marks .oc-bar.none,.marks .oc-play.no-rally,.marks .oc-bar.no-rally{fill:var(--likely)}.marks .oc-play.tracker{fill:var(--skip)}.marks .oc-bar.tracker{fill:#6b7385}.marks .oc-tk.fault{stroke:var(--no)}.marks .oc-tk.left{stroke:var(--left)}.marks .oc-tk.right{stroke:var(--right)}.marks .oc-tk.none,.marks .oc-tk.no-rally{stroke:var(--likely)}.marks .oc-tk.tracker{stroke:var(--skip)}.marks .serve{fill:var(--emitted)}.marks .serve.mine{fill:none;stroke:#fff;stroke-width:1.5}.marks .serve.live{fill:none;stroke:var(--likely);stroke-width:1.2}.marks [data-frame]{cursor:pointer}.tl-legend{font-size:11px;color:var(--dim);padding:3px 12px 0;display:flex;gap:10px;flex-wrap:wrap}.serves-controls{display:flex;gap:8px;padding:8px 12px 10px;flex:none}.serves-controls .seg{display:flex;height:40px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.serves-controls .rates{flex:4 1 0}.serves-controls .moves{flex:3 1 0}.serves-controls.acts-row{padding-top:0}.serves-controls.acts-row .acts{flex:1 1 0}.serves-controls .seg button{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:0;font-size:13px}.serves-controls .seg button+button{border-left:1px solid var(--line)}.serves-controls .moves button{color:var(--ink)}.serves-controls .rates button{color:var(--dim)}.serves-controls .rates button.on{background:var(--line);color:var(--likely)}.serves-controls .acts button{color:var(--ink);font-weight:800;font-size:13px;white-space:nowrap}.serves-controls .acts .ended{color:var(--likely);background:#ffb64824}.serves-controls .acts .served{color:var(--emitted);background:#5aa9ff1f}.serves-controls .acts button[disabled]{color:var(--dim);opacity:.45}.oc-outcomes{display:flex;gap:8px;padding:0 12px 10px;flex:none}.oc-outcomes button{flex:1 1 0;height:48px;border-radius:12px;border:2px solid var(--line);font-weight:800;font-size:15px}.oc-outcomes [data-outcome=fault]{color:var(--no)}.oc-outcomes [data-outcome=left]{color:var(--left)}.oc-outcomes [data-outcome=right]{color:var(--right)}.oc-outcomes [data-outcome=no-rally]{color:var(--dim);font-size:13px}.oc-outcomes [data-outcome=fault].on{border-color:var(--no);background:#ff5c6c29}.oc-outcomes [data-outcome=left].on{border-color:var(--left);background:#c084fc29}.oc-outcomes [data-outcome=right].on{border-color:var(--right);background:#67e8f929}.oc-outcomes [data-outcome=no-rally].on{border-color:var(--likely);color:var(--likely);background:#ffb64824}.oc-outcomes button.tracker{border-style:dashed}.oc-outcomes [data-outcome=fault].tracker{border-color:var(--no);background:#ff5c6c12}.oc-outcomes [data-outcome=left].tracker{border-color:var(--left);background:#c084fc12}.oc-outcomes [data-outcome=right].tracker{border-color:var(--right);background:#67e8f912}.oc-outcomes button.tracker:after{content:"tracker";display:block;font-size:10px;font-weight:600;letter-spacing:.04em;opacity:.75}.oc-outcomes button[disabled]{opacity:.4}.panel{margin:10px 12px 12px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--card);display:flex;flex-direction:column;gap:8px;flex:none}.an-cells{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1.2fr) minmax(0,1fr);gap:6px}.an-cells>button{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:4px 7px;border-radius:6px;background:#151a24;text-align:left}.an-cells>button:hover:not([disabled]){background:#1c2230}.an-cells i{font-style:normal;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--dim)}.an-cells b{color:var(--ink);font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.an-cells b.none{color:var(--dim);font-weight:400}.an-cells b.fault{color:var(--no)}.an-cells b.left{color:var(--left)}.an-cells b.right{color:var(--right)}.an-cells b.no-rally{color:var(--likely)}.an-cells .by{font-size:10.5px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.an-row{display:flex;gap:8px;align-items:center}.an-row .lbl{font-size:11px;color:var(--dim)}.an-row .seg button{padding:5px 12px;font-weight:700}.an-row .seg button[data-side=LEFT]{color:var(--left)}.an-row .seg button[data-side=RIGHT]{color:var(--right)}.an-row .seg button.on{background:var(--line)}.an-row .seg button.suggested{box-shadow:inset 0 0 0 1px currentColor;border-radius:9px}.an-row .clear{padding:4px 8px;border-radius:8px;border:1px solid var(--line);color:var(--dim);font-size:12px}.an-row .clear:hover:not([disabled]){color:var(--ink)}.an-note{font:inherit;font-size:13px;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:7px 9px;resize:vertical;min-height:54px;outline:none}.an-note:focus{border-color:var(--likely)}.an-note[readonly]{color:var(--dim)}.mark-btn{padding:12px;border-radius:12px;background:#38d39f1f;border:2px solid var(--yes);color:var(--yes);font-weight:800;font-size:16px}.mark-btn:active{transform:scale(.98)}.mark-btn[disabled]{opacity:.4}.mark-btn.end{background:#c7cddb14;border-color:#8b93a7;color:var(--ink);font-size:14px;padding:9px}.an-hint{font-size:12px;color:var(--dim)}.an-hint b{color:var(--ink)}.an-error{font-size:12px;color:var(--no)}.an-claim{font-size:12px;color:var(--dim);line-height:1.45}.an-claim b{color:var(--ink)}.an-claim .differs{color:var(--likely)}.im-fams{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:0 12px}.im-fams button{height:34px;border-radius:8px;border:1.5px solid var(--line);color:var(--dim);font-size:12.5px;font-weight:700;white-space:nowrap}.im-fams button.on{color:var(--ink);background:#1c2230}.im-fams button.on.ground{border-color:var(--im-ground);color:var(--im-ground)}.im-fams button.on.wall{border-color:var(--im-wall);color:var(--im-wall)}.im-fams button.on.net{border-color:var(--im-net);color:var(--im-net)}.im-fams button.on.racket{border-color:var(--im-racket);color:var(--im-racket)}.im-readout{margin:8px 12px 4px;padding:7px 9px;border-radius:8px;background:var(--bg);color:var(--dim);font-size:12px;line-height:1.35;font-variant-numeric:tabular-nums}.im-hint{height:1.35em;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.im-coords{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:6px;margin-top:6px}.im-coords>span{display:flex;flex-direction:column;min-width:0;padding:3px 6px;border-radius:6px;background:#151a24}.im-coords i{font-style:normal;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--dim)}.im-coords b{color:var(--ink);font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.im-coords b.none{color:var(--dim);font-weight:400}.im-coords b .fam{font-weight:700}.im-note{height:1.35em;margin-top:5px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.im-here{padding:0 12px 4px}.im-row{display:grid;grid-template-columns:minmax(0,1fr) 46px 118px minmax(22px,auto);column-gap:6px;align-items:center;height:26px;font-size:12px;font-variant-numeric:tabular-nums}.im-row>span{color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.im-row>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.im-row>button{width:22px;height:22px;border-radius:5px;color:var(--dim)}.im-row>button:hover{color:var(--ink);background:var(--line)}:is(.im-row>button,.im-row .acts2>button).take{width:auto;height:22px;padding:0 6px;border-radius:5px;color:var(--emitted);font-size:11.5px;font-weight:700}.im-legend{padding:0 12px 8px;font-size:11.5px;line-height:1.4;color:var(--dim)}.im-phone{margin:4px 12px 8px;color:var(--dim);font-size:11px}.im-error{margin:4px 12px;font-size:12px;color:var(--no)}.toast{position:fixed;left:50%;bottom:calc(96px + var(--safe-bottom));transform:translate(-50%);z-index:30;background:#1d2330;color:var(--ink);border:1px solid var(--line);padding:8px 14px;border-radius:10px;font-size:13px;opacity:0;transition:opacity .2s;pointer-events:none;max-width:90vw;text-align:center}.toast.error{background:#2a1f24;color:#ffb4bd;border-color:var(--no)}.toast.show{opacity:1}.case.phone .oc-head{margin-top:2px}.case.phone .stage{margin:6px 12px 0}.case.phone .im-grid{grid-template-columns:1fr}.case.phone .im-tile{width:100%}.case.phone .desk-side{margin:6px 12px 12px;flex:none}.case.phone .desk-side .desk-rows{flex:0 1 auto;max-height:46vh}@media (min-width: 1100px) and (min-height: 600px){.desk-view{max-width:none;margin:0;padding:0 16px;display:grid;grid-template-columns:var(--side-w) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto minmax(0,1fr) max-content;column-gap:16px;overflow:hidden}.desk-view>*{grid-column:2}.desk-view>.desk-side{grid-column:1;grid-row:1 / -1;margin:6px 0 12px}.desk-view>.oc-head{grid-row:1;margin:6px 0 0;padding:6px 8px;background:#0f1219;border-radius:12px;box-shadow:inset 0 0 0 1px var(--line)}.desk-view>.stage{grid-row:3;margin-top:6px;min-width:0}.desk-view>.empty{grid-row:1 / -1}.desk-view>.dock{grid-row:5;display:flex;flex-direction:column;margin:6px 0 12px;background:#0f1219;border:1px solid var(--line);border-radius:12px;overflow:hidden}.dock>.tl.overview{order:1;margin:8px 12px 0;width:calc(100% - 24px)}.dock>.tl-detail{order:2;margin-top:6px;background:var(--bg);border-top:1px solid var(--line)}.dock>.tl-detail .playhead:before{content:"";position:absolute;top:0;left:-4px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid #fff}.dock>.toolbar{order:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;column-gap:12px;min-height:48px;padding:7px 10px;background:#141925;border-bottom:1px solid var(--line)}.toolbar .rates{grid-column:1;justify-self:start}.toolbar .moves{grid-column:2}.toolbar .right{grid-column:3;justify-self:end;display:flex;align-items:center;gap:8px}.toolbar :is(.seg,.acts,.moves,.rates){grid-row:1;display:flex;align-items:center;gap:2px;height:34px;padding:0;margin:0;border:0;border-radius:0;background:none;overflow:visible;flex-wrap:nowrap}.toolbar :is(.seg,.acts,.moves,.rates)>button{flex:none;display:flex;align-items:center;justify-content:center;height:34px;min-width:34px;padding:0 9px;border:0;border-radius:7px;background:none;color:var(--ink);font-size:13px}.toolbar :is(.seg,.acts,.moves,.rates)>button:hover:where(:not([disabled],.on)){background:#222838}.toolbar :is(.seg,.acts,.moves,.rates)>button[disabled]{color:var(--dim);opacity:.45;background:none;cursor:default}.toolbar .moves>.play{width:44px;background:var(--ink);color:var(--bg)}.toolbar .moves>.play:hover{background:#fff}.toolbar .rates{gap:0;padding:2px;background:var(--bg);border:1px solid var(--line);border-radius:9px}.toolbar .rates>button{height:28px;min-width:38px;padding:0 8px;border-radius:6px;color:var(--dim);font-size:12px}.toolbar .rates>button.on{background:#262d3d;color:var(--likely)}.toolbar .acts>.ended{padding:0 10px;font-size:12px;font-weight:800;color:var(--likely);background:#ffb64824}.toolbar .acts>.ended:hover{background:#ffb6483d!important}.toolbar .acts>.served{padding:0 10px;font-size:12px;font-weight:800;color:var(--emitted);background:#5aa9ff1f}.toolbar .acts>.served:hover{background:#5aa9ff38!important}.toolbar .acts>.take{padding:0 12px;font-size:12px;font-weight:800;color:var(--emitted);background:#5aa9ff1f}.toolbar .oc-outcomes{display:flex;align-items:center;gap:5px;height:34px;padding:0 0 0 8px;border-left:1px solid var(--line)}.toolbar .oc-outcomes>button{position:relative;flex:none;height:34px;padding:0 10px;border-width:1.5px;border-radius:8px;font-size:13px;white-space:nowrap}.toolbar .oc-outcomes>button:not(.on,.tracker):hover{background:#ffffff0d}.toolbar .oc-outcomes>button.tracker:after{position:absolute;top:-7px;left:50%;transform:translate(-50%);margin:0;padding:0 4px;font-size:9.5px;line-height:12px;background:#141925}.desk-side .panel{margin:0 12px 4px}}@media (min-width: 1280px) and (min-height: 600px){:root{--side-w: 440px}}@media (min-width: 1100px) and (max-width: 1439px) and (min-height: 600px){.dock>.toolbar.wide{row-gap:6px}.toolbar.wide .right{grid-row:2;grid-column:1 / -1}}@media (min-width: 1100px) and (max-width: 1359px) and (min-height: 600px){.dock>.toolbar{column-gap:8px;padding:7px 8px}.toolbar :is(.seg,.acts,.moves,.rates)>button{min-width:30px;padding:0 7px}.toolbar .rates>button{min-width:30px;padding:0 5px}.toolbar .right{gap:7px}.toolbar .oc-outcomes{padding-left:7px}.toolbar .acts>:is(.ended,.served){padding:0 9px}.toolbar .oc-outcomes>button{padding:0 6px;font-size:12.5px}}
