:root{color-scheme:dark;--bg:#080e18;--surface:#111d2a;--raised:#1a2a39;--line:#38536a;--cyan:#58d4ff;--pale:#b7ecfa;--gold:#d8aa72;--text:#eef5f7;--muted:#9ab0bc;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#080e18;color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,'Helvetica Neue',sans-serif}body{overscroll-behavior:none}.app-shell{min-height:100dvh;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse 100% 58% at 50% -12%,#174267 0%,transparent 64%),linear-gradient(150deg,#0b1522,#080e18 56%,#0e1d27)}.app-shell:before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.19;background:repeating-linear-gradient(0deg,transparent 0 40px,#667a84 41px,transparent 42px),repeating-linear-gradient(90deg,transparent 0 40px,#667a84 41px,transparent 42px);mask-image:linear-gradient(transparent,#000 26%,transparent 90%)}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.4}h1,h2,h3,p{margin:0}.condensed,.eyebrow,.brand,.stage-number,.metric strong,.section-title{font-family:system-ui,'Arial Narrow',sans-serif}.screen{position:relative;z-index:1;max-width:560px;margin:0 auto;padding:calc(var(--safe-top) + 22px) 20px calc(var(--safe-bottom) + 26px);min-height:100dvh}.home{display:flex;flex-direction:column;justify-content:center;gap:18px}.topline{display:flex;justify-content:space-between;align-items:center;gap:10px}.eyebrow{font-size:13px;font-weight:700;letter-spacing:.23em;color:var(--gold)}.tiny-button{min-height:44px;padding:0 13px;border:1px solid #456076;border-radius:8px;background:#142535;color:#d1e0e6;font-size:13px}.hero-logo{display:block;width:min(100%,330px);aspect-ratio:1;margin:7px auto 0;object-fit:cover;border-radius:24%;box-shadow:0 18px 75px #000b,0 0 50px #146ec138;border:1px solid #779db35c}.hero-copy{text-align:center}.hero-copy h1{font:800 clamp(48px,13vw,78px)/.92 system-ui,sans-serif;letter-spacing:.09em;text-shadow:0 2px 28px #2fb6ed77}.hero-copy p{margin-top:11px;color:var(--muted);font-size:13px;line-height:1.7}.action{display:flex;align-items:center;justify-content:center;gap:9px;min-height:56px;padding:0 20px;border:1px solid #95d5ed9c;border-radius:10px;background:linear-gradient(120deg,#18415a,#236c8b 58%,#18506e);box-shadow:inset 0 1px #afe7ff7c,0 10px 30px #0a6ca02b;font-weight:700;letter-spacing:.05em}.action:active,.tiny-button:active,.stage-tile:active{transform:scale(.98)}.action.secondary{background:#172634;border-color:#40566a;box-shadow:none}.home-stats,.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.metric{padding:13px 8px;text-align:center;background:#101d2bbd;border:1px solid #324b5c;border-radius:9px}.metric strong{display:block;font-size:25px;line-height:1;color:#e6bd85}.metric span{display:block;margin-top:6px;font-size:10px;color:var(--muted);letter-spacing:.04em}.home-note{text-align:center;color:#79929e;font-size:11px;letter-spacing:.12em}.header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.back{width:45px;height:45px;flex:none;border:1px solid var(--line);border-radius:9px;background:#142330;font-size:24px;line-height:1}.header-title{flex:1;min-width:0}.header-title h1{font:700 26px/1 system-ui,sans-serif;letter-spacing:.11em}.header-title small{font-size:11px;color:var(--muted)}.section-title{font-size:29px;letter-spacing:.08em}.lead{margin:8px 0 22px;color:var(--muted);font-size:12px;line-height:1.8}.sector-card{position:relative;width:100%;min-height:124px;margin:0 0 11px;padding:16px 18px;display:flex;align-items:center;gap:17px;text-align:left;background:linear-gradient(115deg,#1b2e40,#10202e);border:1px solid #3a5367;border-radius:12px;overflow:hidden}.sector-card:before{content:'';position:absolute;right:-40px;top:-65px;width:180px;height:180px;border:1px solid #438cb74a;border-radius:50%;box-shadow:0 0 0 20px #3baed711,0 0 0 46px #3baed70b}.sector-card.locked{filter:saturate(.5)}.sector-icon{font:600 38px system-ui,sans-serif;color:var(--gold);width:52px;text-align:center;text-shadow:0 0 18px #f9c68a77}.sector-copy{position:relative;flex:1}.sector-copy small{color:var(--gold);font:700 11px system-ui,sans-serif;letter-spacing:.18em}.sector-copy h3{font:700 25px system-ui,sans-serif;letter-spacing:.06em}.sector-copy p{font-size:11px;color:var(--muted);margin-top:2px}.sector-status{position:relative;align-self:flex-end;white-space:nowrap;color:var(--pale);font:600 14px system-ui,sans-serif}.progress-track{height:4px;background:#203549;border-radius:5px;margin-top:9px;overflow:hidden}.progress-fill{display:block;height:100%;background:linear-gradient(90deg,#387da4,#78dfff)}.stage-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:23px 0}.stage-tile{aspect-ratio:.83;border:1px solid #456278;border-radius:10px;background:linear-gradient(#1b3041,#122333);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0}.stage-tile.locked{opacity:.45}.stage-number{font-weight:700;font-size:31px;line-height:1}.tile-stars{font-size:12px;letter-spacing:1px;color:var(--gold);white-space:nowrap}.tile-stars.empty{color:#7994a5}.stage-tile:not(.locked):first-child{border-color:#79bad7}.stage-hint{padding:14px;border:1px solid #3b5262;border-radius:9px;background:#152535;color:var(--muted);font-size:12px;line-height:1.65}.stage-hint strong{color:var(--gold)}.game-screen{display:flex;flex-direction:column;min-height:100dvh}.game-header{margin-bottom:11px}.game-meta{display:flex;justify-content:space-between;color:var(--gold);font:600 12px system-ui,sans-serif;letter-spacing:.14em}.game-heading{font:700 29px system-ui,sans-serif;letter-spacing:.07em;margin-top:4px}.game-instruction{color:var(--muted);font-size:12px;min-height:39px;line-height:1.65;margin:7px 0 11px}.game-stats{display:flex;gap:9px;margin:0 0 12px}.game-stats span{flex:1;border:1px solid #304758;border-radius:6px;background:#132433;padding:8px 5px;text-align:center;font:600 13px system-ui,sans-serif;color:#d2eaf2}.puzzle-frame{position:relative;min-height:330px;height:min(49dvh,480px);border:1px solid #496377;border-radius:14px;background:radial-gradient(circle at 50% 38%,#24374a,#101b29 72%);box-shadow:inset 0 0 0 5px #0d1722,inset 0 0 0 6px #405060,0 22px 35px #0005;overflow:hidden;touch-action:none}.puzzle-frame:before,.puzzle-frame:after{content:'✦';position:absolute;z-index:0;color:#b3926388;font-size:14px}.puzzle-frame:before{top:16px;left:18px}.puzzle-frame:after{right:18px;bottom:16px}.puzzle-inner{position:relative;z-index:1;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;touch-action:none}.puzzle-caption{font:600 12px system-ui,sans-serif;letter-spacing:.21em;color:#94aaba;text-align:center}.game-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:13px}.game-controls button{min-height:51px;background:#172a39;border:1px solid #496278;border-radius:8px;font-size:12px;font-weight:700}.game-controls button.hint-btn{color:#f2c98e;border-color:#9d7851}.hint-panel{border:1px solid #997549;border-radius:9px;background:#292b2d;padding:13px;margin-top:10px;color:#f0d9b6;font-size:12px;line-height:1.65}.hint-panel strong{display:block;margin-bottom:3px;color:#f2be77}.toast{position:fixed;z-index:10;left:50%;bottom:calc(var(--safe-bottom) + 27px);transform:translateX(-50%);width:max-content;max-width:calc(100vw - 36px);padding:11px 16px;background:#263b48;border:1px solid #7fbad1;border-radius:7px;box-shadow:0 9px 22px #0008;font-size:12px;text-align:center}.overlay{position:fixed;z-index:5;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:#020710e8;backdrop-filter:blur(10px)}.result-card{max-width:430px;width:100%;text-align:center;padding:32px 22px;border:1px solid #a58461;border-radius:16px;background:radial-gradient(circle at 50% 0%,#234d61,#152535 47%,#101923);box-shadow:0 0 70px #47baff24}.result-card .seal{font:700 14px system-ui,sans-serif;letter-spacing:.3em;color:var(--gold)}.result-card h2{font:800 52px system-ui,sans-serif;letter-spacing:.08em;margin:7px 0}.result-stars{font-size:43px;letter-spacing:5px;color:#e7b477;text-shadow:0 0 25px #e4a35480;margin:12px 0 23px}.result-card .action{width:100%;margin-top:13px}.result-card .secondary{margin-top:9px}.ring-board{width:100%;max-width:340px;aspect-ratio:1;position:relative;background:radial-gradient(circle,#243e50 0%,#142433 64%,transparent 68%);border-radius:50%;display:grid;place-items:center}.ring-board:before{content:'';position:absolute;inset:8%;border:1px solid #a2b6b250;border-radius:50%;box-shadow:inset 0 0 35px #000a}.ring-peg{width:18px;height:18px;border-radius:50%;background:#bb8f5e;box-shadow:0 0 0 7px #263e50,0 0 0 8px #a78257;z-index:3}.ring{position:absolute;border:15px solid #b8b8b0;border-radius:50%;background:transparent;box-shadow:inset 0 0 8px #0008,0 4px 7px #0009,0 0 1px 2px #e4c89a;touch-action:none;display:grid;place-items:center;user-select:none}.ring:after{content:'';position:absolute;top:-19px;left:calc(50% - 20px);width:40px;height:25px;background:#192b3b;transform-origin:20px calc(100% + var(--gap-offset, 0px));transform:rotate(var(--gap-angle));border-radius:6px}.ring.active{border-color:#72d7ed;filter:drop-shadow(0 0 9px #43d6fa);z-index:4!important}.ring.removed{opacity:0;pointer-events:none;transform:scale(1.4)!important;transition:transform .38s,opacity .38s}.ring-label{position:absolute;bottom:-36px;font:600 12px system-ui,sans-serif;color:#b3c9d0;letter-spacing:.09em;white-space:nowrap}.ring-arrows{position:absolute;top:11%;width:100%;display:flex;justify-content:space-between;pointer-events:none;color:#dcb37e;font-size:24px}.rope-svg,.gear-svg{width:100%;height:100%;overflow:visible;touch-action:none}.rope-line{stroke:#a9865d;stroke-width:9;stroke-linecap:round;filter:drop-shadow(0 2px 3px #0008)}.rope-line.crossed{stroke:#e39a70}.rope-node{fill:#3b7795;stroke:#bfe8f3;stroke-width:3;filter:drop-shadow(0 3px 4px #000);cursor:grab}.rope-node.selected{fill:#75d9ec}.rope-crossings{position:absolute;top:16px;left:50%;transform:translateX(-50%);font:700 16px system-ui,sans-serif;color:#f2bf8c;white-space:nowrap}.slide-board{width:min(100%,340px);aspect-ratio:1;display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:10px;background:#0b1621;border:2px solid #657687;border-radius:9px;box-shadow:0 15px 28px #0008}.slide-cell{display:grid;place-items:center;border:1px solid #6a8ca1;border-radius:7px;background:linear-gradient(150deg,#4c6679,#243d51 65%,#1c3040);font:700 clamp(31px,9vw,53px) system-ui,sans-serif;color:#e6dfcd;text-shadow:0 2px 4px #000}.slide-cell.empty{background:#0b1824;border:1px dashed #3c5363}.slide-cell.goal{border-color:#cba46f}.slide-cell.movable{box-shadow:inset 0 0 0 1px #a0e1ee70}.gear-socket{fill:#21384a;stroke:#718d9f;stroke-width:2;stroke-dasharray:4 3}.gear-socket.filled{fill:#356b80;stroke:#a8d7e2;stroke-dasharray:none}.gear-socket.fixed{fill:#9b744a;stroke:#f5c48b;stroke-dasharray:none}.gear-socket.connected{fill:#33a8bd;filter:drop-shadow(0 0 6px #43d4f5)}.gear-text{fill:#eff9f7;font:700 16px system-ui,sans-serif;text-anchor:middle;dominant-baseline:middle;pointer-events:none}.gear-tray{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:9px;color:#d3bd9b;font-size:12px}.gear-token{width:43px;height:43px;display:grid;place-items:center;border:2px solid #d0a875;border-radius:50%;font-size:25px;background:#273e4a}.pin-board{display:flex;flex-direction:column;gap:9px;width:100%;max-width:340px}.pin-row{height:48px;position:relative;display:flex;align-items:center;gap:8px;padding:0 12px;background:#20394a;border:1px solid #61798a;border-radius:7px;text-align:left}.pin-row:before{content:'';position:absolute;left:-10px;right:-10px;top:50%;height:5px;background:linear-gradient(90deg,#aa865d,#d5d3c1,#92704a);z-index:-1}.pin-row.done{opacity:.35;transform:translateX(18px)}.pin-symbol{width:32px;height:32px;display:grid;place-items:center;border:1px solid #d2ad76;border-radius:50%;font-size:17px;color:#efd2a2}.pin-label{flex:1;font:600 15px system-ui,sans-serif;letter-spacing:.08em}.pin-require{font-size:11px;color:#c3d2d6}.core-stage{width:100%;max-width:330px;perspective:500px;display:flex;align-items:center;flex-direction:column;gap:13px}.core-cube{position:relative;width:220px;height:218px;padding:14px;border:2px solid #c29a68;border-radius:17px;background:linear-gradient(135deg,#314459,#172332 52%,#34434f);box-shadow:12px 12px 0 #0e1a28,17px 17px 0 #8c734f,0 20px 35px #0009,inset 0 0 0 7px #162b39;transform:rotateX(5deg) rotateY(-7deg)}.core-cube:before{content:'';position:absolute;inset:24px;border:1px solid #897854;background:repeating-linear-gradient(45deg,#ffffff09 0 3px,transparent 3px 19px);pointer-events:none}.core-face-title{position:relative;text-align:center;color:#d6b586;font:700 13px system-ui,sans-serif;letter-spacing:.16em}.core-dials{position:relative;display:flex;justify-content:center;align-items:center;gap:5px;margin:18px 0 9px}.dial{width:54px;height:54px;border:3px solid #c19b68;border-radius:50%;background:radial-gradient(circle,#184966,#152c3b 70%);box-shadow:0 0 14px #1ba9ec77;display:grid;place-items:center;font-size:26px}.core-clue{position:relative;font-size:12px;color:#bcd2d5;text-align:center;line-height:1.65}.face-tabs{display:flex;gap:5px;justify-content:center;flex-wrap:wrap}.face-tab{min-width:45px;height:42px;border-radius:5px;border:1px solid #59778b;background:#182e3b;font:700 14px system-ui,sans-serif}.face-tab.current{border-color:#92d9ec;color:#94e4f9}.face-tab.solved{color:#d5b67f;border-color:#a58353}.core-caption{font-size:11px;color:var(--muted);text-align:center}.pause-card{max-width:380px;width:100%;padding:25px;background:#172939;border:1px solid #7798ac;border-radius:12px}.pause-card h2{font:700 37px system-ui,sans-serif;margin-bottom:15px}.pause-card .action{width:100%;margin-top:10px}@media(max-width:380px){.screen{padding-left:14px;padding-right:14px}.puzzle-frame{min-height:300px;height:43dvh}.game-instruction{font-size:11px}.sector-card{min-height:110px}.core-cube{transform:scale(.88);margin:-12px 0}.ring-board{max-width:280px}}@media(min-height:840px){.game-screen .puzzle-frame{height:min(52dvh,490px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.ring{border:0;box-shadow:none;padding:0}.ring:after{content:none}.ring.active{filter:drop-shadow(0 0 9px #43d6fa)}
/* Phase 1.1: compact play HUD, touch feedback and safe dialogs */
html,body{width:100%;overflow-x:clip;-webkit-text-size-adjust:100%}button,svg{-webkit-user-select:none;user-select:none}button{touch-action:manipulation}body.modal-open{position:fixed;inset:0;width:100%;height:100dvh;overflow:hidden}.screen{width:100%;overflow-x:clip}.game-screen{padding-top:calc(var(--safe-top) + 10px);padding-bottom:calc(var(--safe-bottom) + 20px);overscroll-behavior:contain}.game-screen .header{margin-bottom:9px}.game-screen .game-heading{font-size:clamp(22px,6vw,29px)}.game-screen .game-instruction{min-height:0;margin:4px 0 8px;line-height:1.4}.game-screen .game-stats{margin-bottom:8px}.game-screen .game-stats span{padding:6px 4px}.game-screen .puzzle-frame{height:clamp(300px,48dvh,460px);min-height:0;touch-action:none}.game-screen .puzzle-inner{padding:17px;touch-action:none}.game-controls{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:8px}.game-controls button{min-height:44px;padding:5px 2px;font-size:clamp(10px,2.7vw,12px);line-height:1.3}.tutorial-guide:empty{display:none}.tutorial-card{margin-top:9px;padding:8px 11px;border:1px solid #739db2;border-left:3px solid #55d7f7;border-radius:7px;background:#173044;color:#e3f3f5;line-height:1.3}.tutorial-kicker{display:block;color:#e7bb7c;font-size:9px;letter-spacing:.11em;font-weight:700}.tutorial-line{display:flex;align-items:center;gap:8px;margin-top:2px;font-size:12px;font-weight:600}.tutorial-finger{font-size:20px;color:#89e3ff;animation:indicate 1.3s ease-in-out infinite}.tutorial-focus{filter:drop-shadow(0 0 8px #58d4ff)!important;outline:2px solid #74dfff!important;outline-offset:2px;animation:focus-pulse 1.3s ease-in-out infinite}.rope-node.tutorial-focus{stroke-width:5}.gear-socket.tutorial-focus{stroke-width:4}.ring-target{position:absolute;top:5%;left:50%;transform:translateX(-50%);font-size:22px;color:#d4af77;z-index:6;filter:drop-shadow(0 0 4px #e3ad6e)}.ring-target.ready{color:#6adef8;filter:drop-shadow(0 0 9px #24bff6)}.ring.aligned{filter:drop-shadow(0 0 15px #36d7f8)!important}.rope-cross-point{fill:#f2be88;stroke:#fff0bb;stroke-width:2;filter:drop-shadow(0 0 8px #ffb16b);pointer-events:none}.rope-cross-point.last{fill:#fff;filter:drop-shadow(0 0 13px #ffd29d)}.rope-line.crossed{stroke:#e5a477}.slide-board,.slide-cell{touch-action:none}.slide-cell.pressed{transform:translateY(-4px);box-shadow:0 7px 12px #0009,inset 0 0 0 1px #b6eaf6}.slide-cell.movable{transition:transform .12s,box-shadow .12s}.gear-wheel{fill:#e4d3b1;font-size:28px;pointer-events:none;transform-box:fill-box;transform-origin:center}.gear-wheel.spinning{animation:gear-spin 2s linear infinite}.gear-wheel.stable{animation:gear-spin .72s linear infinite;fill:#b8f5ff}.energy-pulse{fill:none;stroke:#72e2ff;stroke-width:5;opacity:0;pointer-events:none;filter:drop-shadow(0 0 9px #48ccfc);animation:energy-flash .5s ease-out forwards}.pin-board{position:relative;gap:5px;isolation:isolate}.pin-links{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:visible}.pin-links path{fill:none;stroke:#ba966b;stroke-width:2}.pin-links path.released{stroke:#56d7f8;filter:drop-shadow(0 0 3px #5cdeff)}.pin-row{height:42px;min-height:42px;z-index:1;padding:0 8px 0 24px;gap:5px}.pin-row.locked{border-color:#686369;background:#283340}.pin-row.available{border-color:#5fc9e3;box-shadow:inset 0 0 14px #3bc3e51a}.pin-row.required-glow{box-shadow:0 0 0 2px #82e5fc,0 0 14px #63d9ff}.pin-symbol{width:29px;height:29px;font-size:15px;flex:none}.pin-require{font-size:10px;white-space:nowrap}.pin-label{font-size:12px}.core-plate{position:relative;display:block;width:100%;min-height:42px;border:1px solid #c29a68;border-radius:5px;background:linear-gradient(90deg,#324455,#1b2c3d);font-size:12px;letter-spacing:.03em;color:#f2dab4}.core-plate.revealed{background:#164a61;border-color:#7addf5;color:#d9f9ff}.core-cube{height:228px}.core-dials{margin:14px 0 9px}.core-clue{font-size:10px;margin-top:5px}.game-screen.cat-pin .puzzle-frame{min-height:360px}.overlay{padding:calc(var(--safe-top) + 12px) 12px calc(var(--safe-bottom) + 12px);overflow-y:auto;overscroll-behavior:contain;align-items:flex-start}.result-card,.pause-card,.howto-card{flex:none;width:min(100%,430px);max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 24px);overflow-y:auto;overscroll-behavior:contain;margin:auto;border:1px solid #a58461;border-radius:14px}.result-card{padding:clamp(16px,5vw,28px) clamp(14px,4vw,22px)}.result-card h2{font-size:clamp(30px,9vw,49px);letter-spacing:.015em;white-space:nowrap;max-width:100%;line-height:1.02;overflow:visible}.result-card .result-stars{font-size:clamp(27px,9vw,41px);margin:8px 0 14px}.result-card .action{min-height:48px;margin-top:9px}.result-stats .metric{padding:10px 3px}.result-card>p{font-size:12px}.howto-card{padding:22px;background:#142635;border-color:#617d92}.howto-card h2{font-size:24px;margin:5px 0 12px;letter-spacing:.05em}.howto-card ol{margin:0 0 15px;padding-left:24px}.howto-card li{margin:8px 0;font-size:13px;line-height:1.5}.howto-card .action{width:100%;min-height:49px;margin-top:8px}.gentle-shake{animation:short-shake .25s ease-in-out!important}@keyframes gear-spin{to{transform:rotate(360deg)}}@keyframes energy-flash{0%{opacity:0;transform:scale(.4)}30%{opacity:1}100%{opacity:0;transform:scale(1.25)}}@keyframes short-shake{25%{transform:translateX(-3px)}50%{transform:translateX(3px)}75%{transform:translateX(-2px)}}@keyframes focus-pulse{50%{filter:drop-shadow(0 0 13px #82eafa)}}@keyframes indicate{50%{transform:translateY(-4px)}}
@media(max-width:360px){.screen{padding-left:12px;padding-right:12px}.game-screen .puzzle-frame{height:clamp(285px,47dvh,430px)}.game-screen.cat-pin .puzzle-frame{min-height:355px}.game-screen .game-instruction{font-size:11px}.game-controls button{font-size:10px}.result-card{padding:17px 14px}.result-card h2{font-size:clamp(30px,9vw,37px)}}
@media(prefers-reduced-motion:reduce){.tutorial-finger,.tutorial-focus,.gear-wheel,.energy-pulse{animation:none}}
/* Keep every puzzle inside its own frame on narrow portrait screens. */
.ring-label{position:static;margin-top:7px;white-space:normal;text-align:center;line-height:1.3}.sector-card{gap:10px;padding:12px 14px}.sector-icon{width:40px;flex:none}.sector-copy h3{font-size:clamp(18px,5vw,25px);overflow-wrap:anywhere}.header-title h1{font-size:clamp(18px,5.5vw,26px);overflow-wrap:anywhere}.game-screen.cat-ring .puzzle-frame,.game-screen.cat-slide .puzzle-frame{min-height:340px}.game-screen.cat-gear .puzzle-frame{min-height:380px}.game-screen.cat-pin .puzzle-frame{height:max(390px,48dvh);min-height:390px}.game-screen.cat-core .puzzle-frame{min-height:360px}.pin-links{z-index:2}
