:root{color-scheme:dark;--bg:#07111d;--ink:#f1e8d0;--muted:#9faeb7;--gold:#e5b769;--teal:#71d4cf;--line:#30414a}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 8% 0,#283446 0,transparent 50%),var(--bg);color:var(--ink);font:15px/1.6 system-ui,sans-serif}main{max-width:1320px;margin:auto;padding:36px 40px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}h1{font:76px/1 Georgia,serif;letter-spacing:-4px;margin:15px 0}h1 i{font-style:normal;color:var(--gold);font-size:48px}header p{color:var(--muted);margin:0}.eyebrow{font-size:10px;letter-spacing:2.3px;color:var(--gold);font-weight:700}.seal{display:grid;justify-items:center;font-size:9px;letter-spacing:3px;color:var(--gold)}.seal .mini{width:94px;height:94px}.toolbar{display:flex;gap:14px;align-items:center;flex-wrap:wrap;border-block:1px solid var(--line);padding:15px 0;margin-bottom:24px}label{font-size:12px;color:var(--muted)}select,button{font:inherit;color:var(--ink);border:1px solid #42515c;background:#142330;border-radius:7px;padding:9px 12px}select{margin-left:8px}button{cursor:pointer;transition:background .2s,border-color .2s}button:hover:enabled{background:#29404c;border-color:var(--gold)}button:disabled{opacity:.35;cursor:default}button:focus-visible,select:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:25px;align-items:start}.table{background:#0c1b27;padding:15px;border:1px solid #46515a;border-radius:10px;box-shadow:0 20px 60px #0005}.board-top,.board-bottom{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.7px;color:var(--muted);padding:2px 3px 14px}.board-top #turn{color:var(--gold)}.board-bottom{padding:14px 3px 0}.board-bottom b{color:var(--gold)}.board-bottom span:last-child b{color:var(--teal)}#board-wrap{position:relative}#board{display:grid;grid-template-columns:repeat(10,1fr);aspect-ratio:1;border:1px solid #43505a}.cell{padding:0;border:1px solid #27364277;border-radius:0;position:relative;aspect-ratio:1;min-width:0;background:#0b1724;display:flex;align-items:center;justify-content:center}.cell:nth-child(20n+2),.cell:nth-child(20n+4),.cell:nth-child(20n+6),.cell:nth-child(20n+8),.cell:nth-child(20n+10),.cell:nth-child(20n+11),.cell:nth-child(20n+13),.cell:nth-child(20n+15),.cell:nth-child(20n+17),.cell:nth-child(20n+19){background:#132330}.cell:hover:enabled{background:#263847;border-color:#617681}.cell.selected{outline:2px solid var(--gold);outline-offset:-3px;z-index:2}.cell.destination{background:#264b4b!important}.cell.destination:after{content:'';width:13px;height:13px;background:#89dcd4;border-radius:50%}.coord{position:absolute;left:3px;top:0;font-size:8px;line-height:1.3;color:#687782;pointer-events:none}.art{display:block;flex:none;width:85%;height:85%;background-image:url('court-pieces.webp');background-size:200% 200%;border-radius:7px;position:relative;pointer-events:none}.king{background-position:0 0}.shooter{background-position:100% 0}.mirror,.prism{background-position:0 100%}.shield{background-position:100% 100%}.prism{clip-path:polygon(0 0,100% 0,100% 100%)}.cell .art.teal{filter:hue-rotate(125deg) saturate(.65);box-shadow:inset 0 0 0 2px #6bd5d0}.cell .art.amber{box-shadow:inset 0 0 0 1px #ddaf6066}.art .face{position:absolute;background:#fff2a6;box-shadow:0 0 4px #ffc86c;left:25%;right:25%;top:5%;height:3px}.art.shield .face{left:8%;right:8%;height:4px}.team-dot{position:absolute;right:3px;bottom:3px;width:7px;height:7px;background:var(--gold);border-radius:50%;border:1px solid #06101b}.team-dot.teal{background:var(--teal)}#ray{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}#ray polyline{fill:none;stroke:#ffd479;stroke-width:5;stroke-linejoin:round;stroke-linecap:round;filter:drop-shadow(0 0 5px #ffbf55)}#ray.preview polyline{stroke-dasharray:9 12;stroke-width:3;opacity:.7}#ray.teal polyline{stroke:var(--teal)}aside{display:grid;gap:15px}.card{border:1px solid #34454e;background:#101e2a;border-radius:9px;padding:19px}h2{font:29px/1.2 Georgia,serif;margin:9px 0 12px}h3{font:20px/1.3 Georgia,serif;margin:9px 0}.card p{font-size:12px;color:#bcc6c9;margin:10px 0}.card strong{color:var(--ink)}#status{border-left:2px solid var(--gold);padding:8px 12px;background:#e2b9640b;font-size:13px;margin-top:15px}.rotations,.small-buttons{display:flex;gap:8px}.rotations button{flex:1}.fire{display:block;width:100%;background:#d7ac66;color:#14212b;font-weight:750;margin:12px 0;padding:13px}.fire:hover:enabled{background:#f5ce88;color:#14212b}.small-buttons{justify-content:space-between}.small-buttons button{padding:6px;font-size:10px}kbd{font-size:9px;opacity:.6;margin-left:8px}.check{display:flex;gap:7px;align-items:center;margin-top:13px}summary{cursor:pointer;font:18px Georgia,serif}.sub{color:var(--muted);font-size:11px!important}#next{width:100%;margin-top:14px;border-color:var(--gold)}.legend{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:30px 0;border-block:1px solid var(--line);padding:22px 0}.legend>div{display:grid;grid-template-columns:55px 1fr;column-gap:12px;align-items:center}.legend .art{grid-row:span 2;width:55px;height:55px}.legend b{font:16px Georgia,serif}.legend small{color:var(--muted);font-size:10px}footer{color:#83939f;font-size:11px}footer p{margin:5px 0}a{color:#b9ccd1}#saved{font-size:10px}@media(max-width:1000px){main{padding:25px 20px}.layout{grid-template-columns:1fr 280px;gap:15px}.table{padding:8px}.legend small{font-size:9px}}@media(max-width:720px){main{padding:20px 12px}h1{font-size:59px}header{align-items:center}.seal{display:none}header p{font-size:12px}.layout{grid-template-columns:1fr}.toolbar{gap:10px}select{max-width:225px;font-size:12px;padding:8px}aside{grid-template-columns:1fr}.board-top,.board-bottom{font-size:8px}.legend{grid-template-columns:1fr 1fr}.coord{font-size:6px}.team-dot{width:5px;height:5px}.card{padding:15px}h2{font-size:25px}.rotations button,.fire{min-height:44px}.small-buttons button{min-height:36px}}
