:root{color-scheme:dark;--bg:#0b1522;--card:#111f2e;--card2:#172738;--border:#294055;--txt:#eaf1f5;--muted:#91a3b5;--teal:#47ddba;--teal2:#0ca785;--shadow:0 14px 50px #07101b66}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--txt)}body{background-image:radial-gradient(ellipse 70% 30% at 50% -20%,#123a47 0%,transparent 70%)}button,input{font:inherit}button,.button{cursor:pointer;border-radius:9px;padding:12px 16px;border:1px solid var(--border);color:var(--txt);background:#23384b;font-size:13px;font-weight:650;transition:filter .15s,background .15s;display:inline-flex;justify-content:center;align-items:center;text-decoration:none;gap:4px}button:hover:not(:disabled),.button:hover{filter:brightness(1.14)}button:disabled{opacity:.36;cursor:not-allowed}button.primary{background:var(--teal);color:#09251f;border-color:var(--teal)}button.primary.muted{background:#113c39;color:#b4fff0;border-color:#286961}button.secondary,.button.secondary{background:#1b2f41}button.full{width:100%}small{font-size:11px;color:var(--muted)}h1,h2,p{margin-top:0}.topbar{height:70px;border-bottom:1px solid #263746;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1220px)/2));background:#0d1925da}.brand{display:flex;gap:11px;align-items:center}.brand-icon{width:38px;height:38px;border-radius:10px;background:#173e3a;color:var(--teal);font-size:27px;display:grid;place-items:center}.brand strong,.brand small{display:block}.brand strong{font-size:19px;letter-spacing:-.7px}.brand small{font-size:9px;letter-spacing:2px;margin-top:3px}.topright{display:flex;align-items:center;gap:9px;color:#b5c4cc;font-size:12px}.topright .version{border-left:1px solid var(--border);margin-left:14px;padding-left:14px;color:var(--muted)}.pulse-dot{width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 12px var(--teal)}.layout{max-width:1220px;margin:0 auto;padding:32px 24px 70px}.hero{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:30px}.eyebrow{color:var(--teal);font-size:10px;font-weight:800;letter-spacing:2px;margin-bottom:9px}.hero h1{font-size:clamp(32px,4vw,46px);letter-spacing:-1.8px;margin:0 0 10px;font-weight:800}.hero h1 span{color:var(--teal)}.hero p{max-width:680px;font-size:14px;line-height:1.7;color:var(--muted);margin:0}.privacy{background:#102c2d;border:1px solid #24564d;padding:13px 16px;border-radius:12px;display:flex;gap:10px;align-items:center;max-width:285px;flex-shrink:0}.privacy-icon{color:var(--teal);font-size:21px}.privacy strong{display:block;font-size:12px;margin-bottom:3px}.privacy small{line-height:1.4;display:block}.workspace{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(330px,.9fr);gap:20px;align-items:start}.main-panel,.sidepanel{background:var(--card);border:1px solid #274057;border-radius:16px;padding:20px;box-shadow:var(--shadow)}.panel-head{display:flex;justify-content:space-between;align-items:start;gap:10px;margin-bottom:17px}.panel-head h2,.side-head h2{font-size:16px;letter-spacing:-.3px;display:flex;align-items:center;gap:9px;margin:0 0 5px}.panel-head p{font-size:12px;line-height:1.5;margin:0;color:var(--muted)}.step{width:25px;height:25px;display:inline-grid;place-items:center;border-radius:7px;font-size:11px;background:#1e4b46;color:var(--teal);letter-spacing:0}.tag{font-size:10px;color:#b2d6d0;border:1px solid #2b5c54;padding:5px 8px;border-radius:30px;white-space:nowrap;background:#17342f}.preview-wrap{position:relative;border-radius:11px;overflow:hidden;background:#081019;border:1px solid #2a4052;min-height:240px}.preview-wrap canvas{display:block;width:100%;height:auto;touch-action:manipulation;cursor:crosshair}.preview-empty{position:absolute;inset:0 0 26px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;background:#101c29ed;pointer-events:none;text-align:center;padding:20px}.preview-empty .preview-graphic{color:#53dabc;font-size:48px;font-weight:300}.preview-empty strong{font-size:14px}.preview-empty span{font-size:12px;color:var(--muted)}.preview-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;position:absolute;bottom:0;left:0;right:0;background:#071019e6;padding:8px 13px;font-size:11px;color:#d4e4e4;pointer-events:none}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.actions button,.actions label{flex:1;white-space:nowrap}.setup-box{margin-top:21px;background:#162839;border:1px solid #2c465a;border-radius:12px;padding:15px}.setup-line{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;margin-bottom:12px;font-size:12px}.setup-line span{color:var(--muted)}.setup-line strong{color:#d1eee4;font-weight:550}.corner-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.corner-step{background:#23384a;border:1px solid #3a5263;border-radius:7px;text-align:center;font-size:10px;color:#9fb6c5;padding:8px 2px}.corner-step.active{background:#195348;color:#b8fff0;border-color:#37ac94}.corner-step.done{background:#19413e;color:var(--teal)}.seg-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;margin:16px 0;color:#c6d8e4}.toggle{display:flex;background:#0c1925;border-radius:9px;border:1px solid #315263;padding:3px}.toggle button{border:0;padding:7px 13px;background:transparent;font-size:11px}.toggle button.selected{background:#206052;color:#defff5}.hint{font-size:11px;color:var(--muted);line-height:1.5;margin:10px 0 0}.split-head{margin:25px 0 14px;border-top:1px solid var(--border);padding-top:22px}.scan-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.scan-actions button{flex:1}.switchlabel{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:11px;color:#c6d5db;cursor:pointer}.switchlabel input{position:absolute;opacity:0}.slider-switch{width:32px;height:19px;background:#52677a;border-radius:40px;position:relative}.slider-switch:after{content:"";position:absolute;left:3px;top:3px;width:13px;height:13px;border-radius:50%;background:white;transition:transform .18s}.switchlabel input:checked+.slider-switch{background:#249e88}.switchlabel input:checked+.slider-switch:after{transform:translateX(13px)}.switchlabel input:disabled+.slider-switch{opacity:.45}.scan-status{background:#0f2332;border-left:3px solid #3a9f8f;padding:12px;margin-top:14px;border-radius:0 7px 7px 0;color:#b8d3d9;font-size:12px;line-height:1.5}.scan-status.warning{border-color:#eca24e;color:#e9c99c}.scan-status.error{border-color:#e7797a;color:#ffc2c2}.candidates{margin-top:12px;border:1px solid var(--border);border-radius:10px;padding:12px}.candidates-head{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:700}.candidate-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #26394b;gap:10px}.candidate-row:last-child{border:0}.candidate-row span{font-size:12px}.candidate-row button{padding:7px 10px;font-size:11px;background:#245448;color:#d5fff3}.side-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.chess-board{display:grid;grid-template-columns:repeat(8,1fr);aspect-ratio:1;border:4px solid #344353;border-radius:5px;overflow:hidden;max-width:460px;margin:auto}.square{display:grid;place-items:center;min-width:0;position:relative;font-family:"DejaVu Sans","Segoe UI Symbol",serif;font-size:clamp(21px,3.2vw,37px);line-height:1}.square.light{background:#e8e0cd}.square.dark{background:#8fa79c}.square .piece{color:#182632;text-shadow:0 1px 1px #fff9}.square .piece.white-piece{color:#fffaf0;-webkit-text-stroke:.6px #293c44;text-shadow:1px 1px 1px #263b44}.square.highlight{box-shadow:inset 0 0 0 4px #f4d26ca6}.square small{position:absolute;bottom:2px;right:3px;color:#3e5357;font-size:9px}.live-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:13px}.live-strip>div{background:#192d3d;border:1px solid #2b4354;border-radius:8px;padding:10px}.live-strip small{display:block;font-size:9px;letter-spacing:1px;margin-bottom:6px}.live-strip strong{font-size:14px;color:#e1f6ef;white-space:nowrap}.move-panel{margin-top:17px;background:#0e1d2a;border:1px solid var(--border);border-radius:10px;overflow:hidden}.move-heading{display:flex;justify-content:space-between;padding:12px 13px;font-size:12px;font-weight:700;border-bottom:1px solid var(--border)}.move-list{min-height:85px;max-height:164px;overflow-y:auto;padding:11px 13px;display:grid;grid-template-columns:repeat(3,1fr);align-content:start;gap:9px 12px;font-size:12px}.moves-placeholder{grid-column:1/-1;color:var(--muted);font-size:12px}.move-item{padding:4px;color:#d4dfeb}.move-item b{color:var(--teal);margin-right:7px}.manual{margin-top:18px}.manual label{font-size:11px;color:var(--muted)}.manual-row{display:flex;gap:8px;margin-top:7px}.manual input{min-width:0;flex:1;padding:10px;background:#0b1724;border:1px solid #30475a;border-radius:7px;color:white;font-size:13px}.manual-row button{padding:9px}.game-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:13px}.game-actions button{font-size:11px;padding:10px 5px}.model-panel{margin-top:22px;border-top:1px solid var(--border);padding-top:18px}.model-title{display:flex;justify-content:space-between;align-items:center;font-weight:800;font-size:13px}.model-panel p{color:#b0c4d1;font-size:12px;line-height:1.6;margin:9px 0 14px}.model-panel details{padding:10px 0}.model-panel summary{color:var(--muted);font-size:11px;cursor:pointer}.model-panel details label{display:block;color:#adc0cb;font-size:11px;margin:12px 0}.model-panel details input{display:block;width:100%;font-size:11px;margin:5px 0}.model-panel a{display:block;font-size:11px;color:var(--teal);margin:10px 0}.model-message{font-size:11px;color:#a7bac8;line-height:1.5;margin-top:10px}.footnotes{display:flex;justify-content:space-between;gap:20px;color:#90a2ad;font-size:11px;line-height:1.6;margin-top:22px}.footnotes>div{max-width:620px}.footnotes a{color:#9ddccf}@media(max-width:880px){.hero{display:block}.privacy{margin-top:20px;max-width:100%}.workspace{grid-template-columns:1fr}.layout{padding:24px 14px 50px}.topbar{padding:0 17px}.main-panel,.sidepanel{padding:16px}.footnotes{display:block}.footnotes div+div{margin-top:8px}.square{font-size:clamp(22px,7vw,40px)}}@media(max-width:480px){.corner-steps{grid-template-columns:repeat(2,1fr)}.actions{display:grid;grid-template-columns:1fr 1fr}.actions #reset-calibration{grid-column:1/-1}.scan-actions{flex-wrap:wrap}.scan-actions button{min-width:100%}.scan-actions .switchlabel{margin:4px 0}.topright .version{display:none}.hero h1{font-size:34px}.preview-wrap{min-height:210px}}

.camera-config{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:12px}.camera-config label{color:var(--muted);font-size:11px}.camera-config select{flex:1;min-width:155px;border:1px solid var(--border);border-radius:9px;background:#172c3d;color:var(--txt);padding:10px;font:inherit;font-size:12px}.camera-config button{padding:9px 11px;font-size:11px}.preview-wrap video{display:none}.chess-board .square{aspect-ratio:1}.model-panel details input{color:var(--txt)}.status-good{color:var(--teal)}@media(max-width:560px){.camera-config label{width:100%}.camera-config button{flex:0 0 auto}.preview-bottom{font-size:10px}.model-panel{margin-top:20px}.sidepanel{margin-top:0}}
[hidden]{display:none!important}
