@import url('/fonts.css');
:root{color-scheme:dark;--bg:#080d1d;--panel:#10182b;--line:#ffffff12;--muted:#8f9ab5;--ink:#e9edff;--violet:#c4afff;--cyan:#87e4d9;--amber:#f2d49a}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 35%,#1a2140 0,transparent 52%),var(--bg);color:var(--ink);font-family:Inter,system-ui,sans-serif;font-size:13px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer;border:1px solid #ffffff20;border-radius:8px;background:#ffffff08;color:var(--ink);padding:10px 12px;transition:background .15s,border-color .15s}button:hover{background:#ffffff15;border-color:#c4afff70}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,canvas:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}button:disabled{opacity:.4;cursor:default}.quiet{background:transparent}.primary{background:var(--violet);color:#151129;border:0;font-weight:650;display:flex;justify-content:space-between;align-items:center;width:100%;padding:14px}.primary:hover{background:#d6c7ff}.masthead{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:23px 4%;gap:20px}.brand{text-decoration:none;color:var(--ink);display:flex;gap:12px;align-items:center;font-size:15px;font-weight:700;letter-spacing:2px}.mark{display:grid;place-items:center;width:42px;height:42px;font-size:34px;font-weight:400;color:var(--violet);border:1px solid #c4afff45;border-radius:11px;background:#c4afff0c}.brand-sub{display:block;font-size:10px;letter-spacing:.6px;font-weight:400;color:var(--muted);margin-top:5px}.edition{font-size:10px;letter-spacing:1.7px;color:var(--muted);display:flex;gap:10px;align-items:center}.live-dot{display:inline-block;background:var(--cyan);width:5px;height:5px;border-radius:50%;box-shadow:0 0 8px #87e4d955;margin-right:5px}.masthead button{font-size:12px;border:0}main{max-width:1700px;margin:auto;padding:0 4%}.intro{display:flex;justify-content:space-between;align-items:end;padding:36px 0 30px}.eyebrow{font-size:9px;letter-spacing:1.8px;font-weight:600;color:var(--muted);margin:0}h1{font-size:clamp(30px,3vw,46px);line-height:1.14;font-weight:480;letter-spacing:-1.7px;margin:12px 0 0}h1 em{font-family:Georgia,serif;font-weight:400;color:var(--violet)}.intro-copy{line-height:1.9;color:var(--muted);font-size:12px;padding-bottom:1px}.flight-layout{display:grid;grid-template-columns:242px minmax(0,1fr) 250px;border:1px solid var(--line);border-radius:16px;overflow:hidden;min-height:580px;background:#0c1322}.panel{background:linear-gradient(140deg,#ffffff03,transparent);padding:22px 18px;z-index:2}.study-panel{border-right:1px solid var(--line)}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:5px}.pill{border:1px solid var(--line);padding:4px 7px;border-radius:5px;color:var(--cyan);font:9px monospace;white-space:nowrap}h2{font-size:17px;font-weight:500;letter-spacing:-.4px;margin:14px 0 20px}.board{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr));aspect-ratio:1;border:1px solid #fff3;border-radius:5px;overflow:hidden}.square{border:0;border-radius:0;padding:0;display:grid;place-items:center;position:relative;font-family:'DejaVu Sans',Arial,sans-serif;font-size:24px;line-height:1;min-width:0;min-height:0;background:#c9cadc;color:#141b32;aspect-ratio:auto}.square.dark{background:#656885}.square.white-piece{color:#fffaf0;text-shadow:0 1px 2px #111,1px 0 #111,-1px 0 #111,0 -1px #111}.square:hover{background:#a69acb;border:0}.square.selected{box-shadow:inset 0 0 0 3px var(--amber);background:#aa9470}.square.target::after{content:'';width:8px;height:8px;border-radius:50%;background:#243e36aa;position:absolute;box-shadow:0 0 0 2px #fff8}.square.target:not(:empty)::after{width:90%;height:90%;background:none;border:2px solid var(--cyan);box-shadow:none}.files{font-size:9px;color:var(--muted);text-align:center;margin-top:7px;letter-spacing:1px}.muted{color:var(--muted);font-size:11px;line-height:1.7}.button-row{display:flex;gap:6px;margin:17px 0 22px}.button-row button{font-size:10px;flex:1;padding:9px 6px;white-space:nowrap}.field-label{display:block;font-size:8px;letter-spacing:1.5px;color:var(--muted);margin:10px 0}select,input.search,textarea{width:100%;color:var(--ink);background:#0b1122;border:1px solid #ffffff20;border-radius:7px;padding:10px;outline:none}select{font-size:11px}.text-link{background:none;border:0;color:var(--violet);font-size:11px;padding:15px 0;width:100%;display:flex;justify-content:space-between}.export-row{display:flex;border-top:1px solid var(--line);padding-top:10px;gap:8px}.export-row button{padding:5px 0;border:0;font-size:10px;flex:1}.viewport{position:relative;min-width:0;overflow:hidden;background:radial-gradient(ellipse at 50% 45%,#22264355,transparent 75%)}#universe{display:block;width:100%;height:100%;position:absolute;inset:0;touch-action:none}.scene-header{position:absolute;top:22px;left:22px;right:22px;z-index:2;display:flex;justify-content:space-between;pointer-events:none}.scene-state{font:9px monospace;color:#c4afff88}.scene-tools{display:flex;gap:7px;position:absolute;bottom:65px;left:20px;z-index:5}.scene-tools button{background:#10182bdd;border-color:#ffffff14;font-size:15px;padding:9px}.scene-tools span{font-size:10px;margin-left:3px}.flight-guidance{position:absolute;bottom:23px;left:22px;color:#919bb0;font-size:9px;z-index:2;pointer-events:none}.keycap{border:1px solid #ffffff25;border-radius:3px;padding:2px 4px;font-size:10px;margin:0 2px 0 6px}.keycap:first-child{margin-left:0}.glass-control{position:absolute;right:20px;bottom:71px;display:flex;align-items:center;gap:7px;font-size:8px;color:var(--muted);z-index:5;letter-spacing:1px}.glass-control input{width:65px;accent-color:var(--violet)}.glass-control span{font:9px monospace}.scene-labels{position:absolute;inset:0;pointer-events:none;z-index:3}.scene-label{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;background:#10182bdc;border:1px solid #c4afff55;padding:6px 11px;border-radius:20px;font-size:10px;color:#eee6ff;white-space:nowrap}.scene-label.selected{border-color:var(--cyan);color:var(--cyan);background:#152c2cdd}.scene-label.small{font-size:8px;color:#9da6c0;border-color:#ffffff20}.branches-panel{border-left:1px solid var(--line);display:flex;flex-direction:column}.branches-panel h2{margin-bottom:6px}.branches-panel .muted{margin:0 0 15px}.search{margin-bottom:12px;font-size:11px}.moves{display:grid;grid-template-columns:1fr 1fr;gap:6px;overflow:auto;max-height:270px;min-height:115px;padding:2px 2px 4px;scrollbar-width:thin;scrollbar-color:#77739c transparent}.move{display:flex;align-items:center;justify-content:space-between;font-size:12px;padding:9px 10px;text-align:left}.move small{font:8px monospace;color:var(--muted)}.move.active{border-color:#c4afff75;background:#c4afff15;color:var(--violet)}.branch-footer{margin-top:auto;padding-top:18px}#selected-description{font-size:10px;color:var(--muted);margin-bottom:10px}.route-panel{display:flex;align-items:center;border:1px solid var(--line);border-radius:12px;margin-top:14px;padding:15px 18px;gap:25px;min-height:70px;background:#10182b66}.route-title{min-width:115px;display:flex;flex-direction:column;gap:7px}.route-title>span:last-child{color:var(--muted);font-size:10px}.route{display:flex;gap:8px;align-items:center;overflow:auto;scrollbar-width:thin;flex:1;padding:3px}.route button{font-size:11px;white-space:nowrap;padding:9px 13px}.route button.active{border-color:var(--violet);color:var(--violet)}.route-arrow{color:#676782;font-size:11px}footer{padding:21px 0 30px;display:flex;justify-content:space-between;color:#727d97;font-size:9px;letter-spacing:.5px}footer>span:last-child{letter-spacing:1.8px;font-size:8px}dialog{max-width:470px;width:calc(100% - 30px);padding:26px;border:1px solid #ffffff25;border-radius:15px;background:#121b30;color:var(--ink);box-shadow:0 20px 100px #0009}dialog::backdrop{background:#040717b8;backdrop-filter:blur(5px)}dialog p,dialog li{line-height:1.8;font-size:12px}dialog li{margin-bottom:6px}.dialog-heading{display:flex;justify-content:space-between;align-items:center}.dialog-heading h2{margin:0}.dialog-heading button{padding:4px 10px;font-size:22px;border:0}dialog label{display:block;margin:13px 0 7px;font-size:11px}textarea{resize:vertical;font-family:monospace;font-size:11px}.error{color:#ffb4b4;min-height:1em}.toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:#252b43;border:1px solid #c4afff55;padding:12px 18px;z-index:20;border-radius:9px;font-size:12px;max-width:90%;opacity:0;pointer-events:none;transition:opacity .15s}.toast.show{opacity:1}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.promotion{margin:12px 0;font-size:10px}.promotion button{font-size:10px;padding:6px;margin:3px}.fallback{position:absolute;top:45%;left:10%;right:10%;line-height:1.8;text-align:center;color:var(--muted)}[hidden]{display:none!important}@media(min-width:1550px){.flight-layout{min-height:660px;grid-template-columns:260px minmax(0,1fr) 270px}.square{font-size:27px}.moves{max-height:345px}}@media(max-width:1150px){main{padding:0 2%}.masthead{padding:20px 2%}.flight-layout{grid-template-columns:205px minmax(0,1fr) 205px}.panel{padding:20px 13px}.square{font-size:21px}.guidance-extra{display:none}.scene-header .eyebrow{font-size:8px}.scene-state{display:none}.scene-tools span{display:none}.glass-control{right:12px}.scene-header{left:15px}.intro{padding-top:25px}}@media(max-width:800px){.edition{display:none}.brand{font-size:12px}.brand-sub{font-size:8px}.intro-copy{display:none}.intro{padding:23px 10px}.intro h1{font-size:34px}.flight-layout{grid-template-columns:1fr 1fr;min-height:0}.viewport{grid-column:1/-1;grid-row:1;height:490px;border-bottom:1px solid var(--line)}.study-panel{grid-row:2;grid-column:1;padding:20px}.branches-panel{grid-row:2;grid-column:2;border-left:0;padding:20px}.board{max-width:250px;margin:auto}.square{font-size:clamp(22px,5vw,32px)}.moves{max-height:270px}.route-panel{gap:12px;padding:12px}.route-title{min-width:90px}footer{padding:20px 7px}footer>span:last-child{display:none}.scene-tools span{display:inline}.guidance-extra{display:inline}}@media(max-width:420px){.viewport{height:430px}.panel{padding:17px 12px}.branches-panel h2{font-size:15px}.square{font-size:22px}.move{padding:8px 6px}.move small{display:none}.guidance-extra{display:none}.brand-sub{display:none}.route-title{display:none}.primary{font-size:11px;padding:12px 8px}.masthead{padding:15px}.intro h1{font-size:30px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* The flight scene owns the full page width; study controls sit underneath. */
main{max-width:none;padding:0 16px}.masthead{padding:12px 20px}.mark{width:34px;height:34px;font-size:28px}.intro{padding:12px 4px 14px;align-items:center}.intro .eyebrow{display:none}.intro h1{font-size:24px;letter-spacing:-.7px;margin:0}.intro h1 br{display:none}.intro h1 em{margin-left:6px}.intro-copy{margin:0;font-size:10px;line-height:1.5}.flight-layout{grid-template-columns:1fr 1fr;min-height:0}.viewport{grid-column:1/-1;grid-row:1;height:max(620px,calc(100svh - 180px));border-bottom:1px solid var(--line)}.study-panel{grid-column:1;grid-row:2;display:grid;grid-template-columns:220px minmax(180px,1fr);column-gap:22px;align-content:start}.study-panel .board{grid-column:1;grid-row:3/9;width:220px;height:220px}.study-panel .panel-heading,.study-panel h2{grid-column:1/-1}.study-panel .files{grid-column:1;grid-row:9}.study-panel #board-hint{grid-column:1;grid-row:10}.study-panel .button-row,.study-panel .field-label,.study-panel select,.study-panel .text-link,.study-panel .export-row,.study-panel .promotion{grid-column:2}.branches-panel{grid-column:2;grid-row:2;border-left:0}.moves{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));max-height:190px}.branch-footer{max-width:300px}.scene-tools{top:62px;bottom:auto;left:20px;right:20px;flex-wrap:wrap;align-items:center;gap:8px}.scene-tools button{font-size:11px;padding:10px 13px}.scene-tools span{display:inline;font-size:11px}.scene-tools .primary{width:auto}.scene-tools #invert[aria-pressed=true]{background:#87e4d91c;border-color:var(--cyan);color:var(--cyan)}#expand-view{margin-left:auto}.glass-control{bottom:23px}.flight-expanded{overflow:hidden}.flight-expanded .viewport{position:fixed;inset:0;width:100vw;height:100svh;z-index:10;background:#0b1122;border:0}.flight-expanded .toast{z-index:20}@media(max-width:800px){main{padding:0 8px}.intro h1{font-size:20px}.viewport{height:max(570px,calc(100svh - 155px))}.study-panel{display:block;padding:17px 12px}.study-panel .board{width:100%;height:auto;max-width:220px}.branches-panel{padding:17px 12px}.scene-tools{top:48px;left:12px;right:12px;gap:5px}.scene-tools button{font-size:10px;padding:8px 9px}.scene-tools span{font-size:10px}.scene-header{top:17px;left:14px;right:14px}.scene-state{display:inline;font-size:8px}.scene-header .eyebrow{font-size:7px}.scene-tools #reset-view span,.scene-tools #overview span{display:none}.flight-guidance{left:12px;bottom:20px}.glass-control{bottom:50px}.guidance-extra{display:none}.moves{grid-template-columns:1fr 1fr;max-height:240px}.intro h1 em{margin-left:0}.intro h1 br{display:block}.intro{padding:10px 6px}.scene-tools #expand-view{margin-left:0}}@media(max-width:420px){.viewport{height:max(570px,calc(100svh - 160px))}.scene-tools{right:8px}.scene-tools button{padding:7px 8px}.scene-tools #reset-view{display:none}.intro h1{font-size:19px}}
.scene-tools .primary{background:var(--violet);color:#151129}.scene-tools .primary:hover{background:#d6c7ff}

/* Keep engine ranks and scores legible in the branch list, including phones. */
.move{flex-direction:column;align-items:flex-start;gap:5px}.move>span{font-size:11px;overflow-wrap:anywhere}.move small{display:block}#analysis-status{min-height:2.8em;color:var(--cyan)}#analysis-retry{margin-bottom:12px}dialog a{color:var(--cyan)}
