.lab-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:44px 0 28px}.lab-intro h1{font-size:clamp(2.6rem,6vw,4.5rem)}.lab-intro .eyebrow{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}.lab-intro p:last-child{max-width:62ch;color:var(--muted);line-height:1.8;margin-bottom:0}.lab-intro svg{width:120px;height:90px;flex-shrink:0;color:var(--lab-accent)}body{--lab-accent:#bbd2d1}body[data-lab-game=tovor]{--lab-accent:#dec191}body[data-lab-game=neboticniki]{--lab-accent:#b5c4e0}
.lab-rules{border-block:1px solid var(--line);margin:8px 0 24px;padding:16px 0}.lab-rules summary{cursor:pointer;color:var(--lab-accent);font-weight:500;padding:4px}.lab-rules ol{max-width:85ch;padding-left:25px;color:#c3cbd1}.lab-rules li{padding:6px 0;line-height:1.8}.lab-collection{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:26px 0 10px}.lab-collection label{display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:.9rem}.lab-collection select{max-width:100%;min-height:46px;padding:10px 32px 10px 12px;color:var(--ink);background:#24282c;border:1px solid #6b757e;border-radius:5px;font:inherit}.collection-count{display:flex;flex-direction:column;align-items:flex-end;white-space:nowrap}.collection-count b{font-size:1.1rem;font-weight:500}.collection-count span,.collection-summary{font-size:.8rem;color:var(--muted)}.collection-summary{margin:0 0 20px}
.lab-panel{background:#1c2024;border:1px solid #3e464e;border-radius:8px;padding:24px;margin:18px 0}.lab-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;border-bottom:1px solid #363d44;padding-bottom:18px;margin-bottom:16px}.lab-panel-heading h2{font-size:1.5rem;letter-spacing:-.025em}.lab-panel-heading .eyebrow{font-size:.7rem;letter-spacing:.08em;margin-bottom:8px;color:var(--lab-accent)}.lab-stats{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:center;color:var(--muted);font-size:.8rem;margin:20px 0}.lab-stats b{color:#dbe4ed;font-weight:500;font-variant-numeric:tabular-nums}.lab-stats>span{margin-left:12px}.lab-scroll{overflow:auto;max-width:100%;padding:5px 3px;overscroll-behavior:contain}.lab-grid{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));width:min(100%,540px);margin-inline:auto;gap:4px}.lab-grid.enlarged{min-width:calc(var(--columns)*50px);width:calc(var(--columns)*56px)}.lab-cell,.signal-port,.cargo-cell,.skyline-clue{aspect-ratio:1;min-width:0;position:relative;display:grid;place-items:center;touch-action:manipulation}.lab-cell{border:1px solid #54616b;border-radius:5px;background:#252d34;color:#dce8eb;font:500 clamp(1rem,3vw,1.65rem)/1 monospace;padding:0;cursor:pointer}.lab-cell:hover{background:#34424d}.lab-cell:disabled{cursor:default;opacity:1}.lab-cell:focus-visible,.signal-port:focus-visible,.cargo-cell:focus-visible{z-index:2;outline-offset:1px}.board-key{color:var(--muted);font-size:.8rem;text-align:center;margin:18px 0 6px;line-height:1.7}
.signal-board{--columns:7}.signal-port{border:1px solid transparent;border-radius:50%;background:#252b30;color:#a3b6c6;font:500 .8rem monospace;cursor:pointer;padding:0}.signal-port:hover,.signal-port.used{border-color:#607886;color:#e2f0ec}.signal-port.lit{background:#d1bd87;border-color:#f0deb0;color:#182029}.signal-cell.mark-1{color:#e1c791;background:#3a3b31;border-color:#a28f63}.signal-cell.mark-2{color:#8294a4;background:#1e252b}.signal-dot{width:3px;height:3px;background:#5a6974;border-radius:50%}.probe-log{margin:24px auto 0;border-top:1px solid var(--line);padding-top:20px;max-width:700px}.probe-log h3{font-size:.9rem;margin:0}.probe-log p{color:var(--muted);font-size:.78rem;margin:8px 0 12px}.probe-log>div{display:flex;flex-wrap:wrap;gap:8px}.probe-log button{font-size:.75rem;padding:8px 12px;min-height:40px}.probe-log [aria-pressed=true]{border-color:#deca91;color:#e8d9ab}
.cargo-board{gap:3px;max-width:480px}.cargo-cell{border:0;border-radius:3px;padding:0;background:#263039;font-size:1.5rem;color:#cedbe8;cursor:pointer}.cargo-cell.wall{background:repeating-linear-gradient(135deg,#3e4851,#3e4851 4px,#39434c 4px,#39434c 8px);border:1px solid #4e5b65;opacity:1}.cargo-cell.floor:hover{background:#334352}.crate{display:grid;place-items:center;width:76%;height:76%;background:#a48050;border:2px solid #dfb97b;border-radius:4px;color:#eccb96;font:500 1.65rem/1 monospace;box-shadow:inset 0 0 0 3px #805f36}.goal .crate{background:#466957;border-color:#a3c9ad;color:#e1f2e2;box-shadow:inset 0 0 0 3px #36533f}.player-dot{display:grid;place-items:center;width:65%;height:65%;border:2px solid #e3dfcf;border-radius:50%;background:#bdcddb;color:#273847;font-size:1rem}.goal-dot{font-size:1.8rem;color:#a8c0a8;line-height:1}.cargo-cell.player.goal{box-shadow:inset 0 0 0 3px #9ab99a}.direction-pad{display:grid;grid-template-columns:repeat(3,54px);gap:7px;justify-content:center;margin:20px 0 4px}.direction-pad button{font-size:1.3rem;padding:6px;min-height:48px}.direction-pad [data-move=up]{grid-column:2}.direction-pad [data-move=left]{grid-column:1}
.skyline-board{gap:3px;max-width:540px}.skyline-clue{font:500 1rem monospace;color:#b3c5dc}.skyline-cell{background:#242e3c;overflow:hidden}.skyline-cell.selected{border:2px solid #d1c28b;background:#36435a}.skyline-cell.given{background:#3d4853}.skyline-cell b{position:relative;z-index:1;font-weight:500;text-shadow:0 1px 4px #13202f}.tower{position:absolute;bottom:4px;width:60%;height:calc(var(--height)*75%);background:#6f8cab;border:1px solid #9ab6d0;border-radius:2px 2px 0 0;opacity:.65}.skyline-cell.given .tower{background:#ad9f79}.pencil-notes{display:grid;grid-template-columns:repeat(3,1fr);width:90%;height:85%;align-items:center;justify-items:center}.pencil-notes small{font:400 .67rem monospace;min-height:1em;color:#bccbde}.skyline-cell.conflict,.skyline-clue.conflict{border:2px solid #e69c9b;color:#ffc6c3}.height-pad{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin:18px 0 4px}.height-pad button{min-width:44px;padding:8px 12px}.height-pad [aria-pressed=true]{border-color:#d5c38c;background:#4a4536;color:#f0e5c6}
button{font-family:inherit}button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #e4d29d;outline-offset:3px}button:disabled{opacity:.45;cursor:default}.lab-actions{display:flex;flex-wrap:wrap;gap:10px}.lab-actions button,.probe-log button,.height-pad button,.direction-pad button,.zoom-control,.lab-notice button,.lab-success button{border:1px solid #65737d;border-radius:5px;background:#252d33;color:#e3eaf0;min-height:44px;font-family:inherit;cursor:pointer}.lab-actions button,.lab-notice button,.lab-success button{padding:11px 18px;font-size:.9rem}.zoom-control{font-size:.75rem;padding:8px 12px;white-space:nowrap}.lab-actions button:hover:not(:disabled),.height-pad button:hover:not(:disabled),.direction-pad button:hover:not(:disabled){background:#39454f;border-color:#a8b6c0}.lab-notice{color:#e0cc99;font-size:.9rem;line-height:1.8;margin:18px 0;min-height:32px;max-width:85ch}.lab-notice button{display:block;margin-top:12px;border-color:#cbb57d}.lab-success{display:flex;align-items:center;flex-wrap:wrap;gap:20px;border:1px solid #84a891;border-radius:6px;padding:22px;background:#22342a;margin:20px 0}.lab-success h2{font-size:1.35rem}.lab-success p{font-size:.85rem;margin:6px 0 0;color:#bed4c6}.success-symbol{font-size:2rem;color:#bddfc8}.lab-success button{margin-left:auto}.lab-save{font-size:.78rem;color:var(--muted);line-height:1.8;margin:22px 0 36px}.muted{color:var(--muted);font-size:.8rem}[hidden]{display:none!important}
@media(min-width:1000px){.lab-panel{padding:28px 40px}.lab-intro{padding-top:55px}.lab-panel-heading h2{font-size:1.8rem}}@media(max-width:600px){.page{width:calc(100% - 28px)}.lab-intro{padding:28px 0 20px}.lab-intro svg{width:70px;height:64px}.lab-intro h1{font-size:2.5rem}.lab-intro p:last-child{font-size:.9rem}.lab-intro .eyebrow{font-size:.65rem}.lab-panel{padding:14px 10px}.lab-panel-heading{padding:2px 4px 14px;gap:8px}.lab-panel-heading h2{font-size:1.2rem}.lab-panel-heading .eyebrow{font-size:.65rem}.lab-collection{gap:10px}.lab-collection label{display:block;min-width:0;max-width:calc(100% - 58px)}.lab-collection select{display:block;margin-top:7px;width:100%;font-size:.85rem}.collection-count{font-size:.8rem}.lab-grid{gap:3px}.lab-stats{font-size:.73rem;gap:3px}.lab-stats>span{margin-left:7px}.signal-port{font-size:.68rem}.lab-actions button{flex:1;padding:10px 12px}.skyline-clue{font-size:.85rem}.height-pad{gap:5px}.height-pad button{min-width:42px}.pencil-notes small{font-size:.58rem}.board-key{font-size:.72rem}.lab-success{padding:16px;gap:12px}.lab-success button{margin-left:0}.lab-rules li{font-size:.88rem}.lab-intro h1[data-game-heading]{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
