:root{color-scheme:light;--bg:#f4f1ea;--card:#fffcf6;--text:#3d3c48;--muted:#87838c;--soft:#b0aab3;--border:#e5e0da;--accent:#8270a5;--accent-dark:#6b568f;--accent-wash:#eae3f1;--a0:#8571b1;--a1:#65998d;--a2:#cc8b6b;--a3:#6f94b4;--wash:#e5dbef;--flower:#d9cfe6;--stem:#8f9d88;--shadow:rgba(91,73,70,.055);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-width:320px;min-height:100svh;background-image:radial-gradient(ellipse at 8% 80%,color-mix(in srgb,var(--wash) 22%,transparent),transparent 42%),radial-gradient(ellipse at 95% 0%,#e7ddce55,transparent 38%);-webkit-tap-highlight-color:transparent;transition:background-color .3s,color .3s}button,select,input{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer;color:inherit}button{border:0}button:disabled{cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:5px}svg{display:block}button svg,.header-right svg,.chapter-top svg,.level-counter svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.icon-library{position:absolute;width:0;height:0;overflow:hidden}.app-shell{max-width:1100px;margin:auto;padding:0 40px}.site-header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;text-decoration:none;color:var(--text);font-size:31px;font-weight:650;letter-spacing:-1.6px;gap:11px}.brand-mark{width:42px;height:42px;fill:none;stroke:var(--accent);stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.brand-dot{height:6px;width:6px;border-radius:50%;background:var(--a1);margin-left:-5px;margin-top:15px}.header-right{display:flex;gap:8px;align-items:center}.tagline{font-size:12px;letter-spacing:.1px;color:var(--muted);margin-right:25px}.icon-button{width:44px;height:44px;border-radius:50%;background:transparent;display:grid;place-items:center;color:var(--muted);transition:background .2s,color .2s}.icon-button:hover{background:var(--accent-wash);color:var(--accent-dark)}.game-layout{display:grid;grid-template-columns:310px minmax(0,500px);justify-content:space-between;gap:60px;padding:42px 0 30px;align-items:start}.story-panel{padding-top:64px}.eyebrow{display:flex;gap:9px;align-items:center;font-size:10px;letter-spacing:2px;color:var(--muted);font-weight:600}.tiny-spark{font-size:22px;color:var(--accent);line-height:1}h1{font-size:44px;letter-spacing:-1.9px;line-height:1.22;font-weight:500;margin:24px 0 20px}.story-copy{font-size:15px;line-height:1.85;color:var(--muted);margin:0}.chapter-card{margin-top:38px;border:1px solid var(--border);border-radius:18px;padding:20px 22px 17px;max-width:270px;background:#ffffff20}.chapter-top{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:1.8px;color:var(--muted)}.chapter-top svg{width:21px;height:21px;color:var(--accent)}.chapter-title{font-size:18px;font-weight:500;margin-top:10px}.chapter-progress{height:3px;background:var(--border);border-radius:4px;margin-top:21px;overflow:hidden}.chapter-progress span{display:block;width:0;height:100%;background:var(--accent);border-radius:4px;transition:width .4s}.chapter-card p{font-size:11px;color:var(--muted);margin:10px 0 0}.paper-flower{margin:18px 0 0 16px;width:220px;position:relative}.paper-flower svg{height:155px;width:190px;opacity:.84;transform:rotate(-9deg)}.flower-stem{fill:none;stroke:var(--stem);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.flower-petals{fill:var(--flower);stroke:var(--accent);stroke-opacity:.15;stroke-width:1}.flower-center{fill:var(--card);opacity:.85}.paper-flower span{display:block;font-size:10px;color:var(--muted);font-style:italic;letter-spacing:.2px;margin-top:5px}.play-panel{min-width:0}.mode-tabs{display:flex;align-items:center;gap:4px;background:color-mix(in srgb,var(--border) 52%,transparent);padding:5px;border-radius:16px;margin:0 0 28px;min-height:49px}.mode-tab{display:flex;gap:7px;align-items:center;justify-content:center;flex:1;border-radius:12px;min-height:39px;background:transparent;color:var(--muted);font-size:12px;position:relative;white-space:nowrap;transition:background .2s,color .2s,box-shadow .2s}.mode-tab svg{width:18px;height:18px;stroke-width:1.6}.mode-tab.active{background:var(--card);color:var(--accent-dark);box-shadow:0 2px 7px var(--shadow)}.new-dot{width:4px;height:4px;background:var(--a1);border-radius:50%;position:absolute;top:7px;right:12px}.puzzle-heading{display:flex;justify-content:space-between;align-items:center;padding:0 8px;margin-bottom:20px}.level-eyebrow{font-size:9px;letter-spacing:1.8px;color:var(--muted);font-weight:500}h2{font-size:25px;line-height:1.2;font-weight:500;letter-spacing:-.5px;margin:7px 0 0}.level-counter{display:flex;gap:8px;align-items:center;font-size:16px;font-variant-numeric:tabular-nums;color:var(--accent-dark)}.level-counter svg{width:18px;height:18px;stroke-width:1.4}.level-counter i{font-style:normal;color:var(--soft);font-size:13px;margin-left:3px}.board-card{position:relative;border-radius:30px;background:var(--card);border:1px solid color-mix(in srgb,var(--border) 75%,white);box-shadow:0 12px 40px -15px var(--shadow),0 2px 3px #ffffff50 inset;aspect-ratio:1;isolation:isolate;padding:15px;overflow:hidden}.board-wash{position:absolute;width:100%;height:100%;inset:0;background:radial-gradient(ellipse at 50% 42%,color-mix(in srgb,var(--wash) 11%,transparent),transparent 70%);pointer-events:none;z-index:-1}#board{width:100%;height:100%;overflow:visible;touch-action:manipulation;user-select:none;-webkit-user-select:none}.grid-dot{fill:var(--accent);opacity:.13}.arrow{cursor:pointer;outline:none}.arrow-line,.arrow-tip{fill:none;stroke:var(--arrow-color);stroke-width:12;stroke-linejoin:round;stroke-linecap:round;pointer-events:none}.arrow-hit{fill:none;stroke:transparent;stroke-width:48;stroke-linejoin:round;stroke-linecap:round;pointer-events:stroke}.arrow .arrow-line,.arrow .arrow-tip{transition:filter .15s,opacity .15s}.arrow:focus-visible .arrow-line,.arrow:focus-visible .arrow-tip{filter:drop-shadow(0 0 5px var(--arrow-color))}.arrow:hover .arrow-line,.arrow:hover .arrow-tip{filter:brightness(.92)}.arrow.hinted .arrow-line,.arrow.hinted .arrow-tip{filter:drop-shadow(0 0 6px color-mix(in srgb,var(--arrow-color) 65%,transparent));animation:breathe 1.8s ease-in-out infinite}.hint-ring{fill:var(--arrow-color);opacity:.12;pointer-events:none;animation:ring-breathe 1.8s ease-in-out infinite}.arrow.leaving{pointer-events:none}.arrow.blocked{animation:blocked .3s ease-out;--dx:0px;--dy:0px}.arrow.obstacle .arrow-line,.arrow.obstacle .arrow-tip{filter:drop-shadow(0 0 6px var(--a2));opacity:.7}.arrow.disabled{pointer-events:none}.board-corner{position:absolute;width:14px;height:14px;border-color:var(--border);border-style:solid;opacity:.6;pointer-events:none}.corner-tl{top:18px;left:18px;border-width:1px 0 0 1px;border-radius:4px 0 0 0}.corner-br{bottom:18px;right:18px;border-width:0 1px 1px 0;border-radius:0 0 4px 0}.game-message{min-height:60px;display:flex;gap:9px;align-items:center;justify-content:center;text-align:center;color:var(--muted);font-size:12px;line-height:1.5;padding:10px 4px}.message-dot{height:5px;width:5px;flex:0 0 5px;border-radius:50%;background:var(--a1)}.game-message.error .message-dot{background:var(--a2)}.game-message.error{color:var(--text)}.tools-bar{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.tool-button{border-radius:15px;min-height:58px;border:1px solid var(--border);background:color-mix(in srgb,var(--card) 45%,transparent);display:flex;align-items:center;justify-content:center;gap:8px;font-size:11px;transition:background .2s,transform .15s,color .2s;color:var(--text)}.tool-button svg{width:18px;height:18px;stroke-width:1.6;color:var(--accent)}.tool-button:hover:enabled{background:var(--card);transform:translateY(-2px)}.tool-button:active:enabled{transform:translateY(1px)}.tool-button:disabled{opacity:.36}.under-note{text-align:center;font-size:10px;letter-spacing:.5px;color:var(--muted);margin:18px 0 0}.site-footer{border-top:1px solid var(--border);padding:22px 0 28px;font-size:10px;color:var(--muted);display:flex;justify-content:space-between;gap:20px}.site-footer #save-status{display:flex;gap:6px;align-items:center}.save-dot{width:4px;height:4px;background:var(--a1);border-radius:50%}.win-panel{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:var(--card);padding:22px;z-index:5;animation:win-in .45s ease-out}.win-panel[hidden]{display:none}.success-flower{width:94px;height:94px;margin-bottom:22px;animation:flower-in .6s ease-out}.success-flower svg{width:100%;height:100%;overflow:visible}.success-flower path:first-child{fill:var(--flower)}.success-flower path:last-child{fill:none;stroke:var(--accent-dark);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.win-eyebrow{font-size:8px;letter-spacing:2px;color:var(--accent)}.win-panel h2{font-size:31px;letter-spacing:-1px;margin-top:12px}.win-panel p{font-size:12px;line-height:1.7;color:var(--muted);max-width:250px;margin:14px 0 23px}.primary-button{display:flex;gap:16px;justify-content:center;align-items:center;background:var(--accent-dark);color:var(--card);padding:16px 23px;border-radius:16px;font-size:12px;min-height:49px;transition:filter .15s,transform .15s}.primary-button:hover{filter:brightness(1.1);transform:translateY(-1px)}.primary-button svg{width:19px;height:19px}.text-button{background:transparent;color:var(--muted);font-size:11px;min-height:44px;margin-top:8px;padding:8px 14px}.text-button:hover{color:var(--accent-dark)}.settings-dialog{border:1px solid var(--border);border-radius:26px;background:var(--card);color:var(--text);width:min(440px,calc(100% - 32px));max-height:calc(100svh - 32px);padding:24px 28px 18px;box-shadow:0 30px 100px #3a304029}.settings-dialog::backdrop{background:#34303b33;backdrop-filter:blur(7px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.dialog-heading h2{font-size:21px;letter-spacing:-.6px;margin:0}.dialog-heading .icon-button{flex-shrink:0;margin-right:-12px}.settings-intro{font-size:12px;color:var(--muted);margin:10px 0 25px}fieldset{padding:0;border:0;margin:0 0 18px}legend{font-size:12px;margin-bottom:12px}.theme-options{display:flex;gap:10px}.theme-option{flex:1;min-width:0;display:flex;align-items:center;flex-direction:column;gap:8px;position:relative;border:1px solid var(--border);border-radius:14px;padding:10px 6px 12px;background:transparent;font-size:11px}.theme-option.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.theme-option>svg{width:13px;height:13px;position:absolute;top:6px;right:6px;color:var(--accent-dark);opacity:0}.theme-option.selected>svg{opacity:1}.theme-preview{height:37px;width:100%;border-radius:8px;display:flex;justify-content:center;align-items:center;gap:5px}.theme-preview i{height:23px;width:7px;border-radius:5px;transform:rotate(25deg)}.theme-preview.pearl{background:#f4f1ea}.pearl i:nth-child(1){background:#8571b1}.pearl i:nth-child(2){background:#65998d}.pearl i:nth-child(3){background:#cc8b6b}.theme-preview.lilac{background:#ece8f2}.lilac i:nth-child(1){background:#7965ad}.lilac i:nth-child(2){background:#799baa}.lilac i:nth-child(3){background:#b67f98}.theme-preview.dune{background:#f2e9da}.dune i:nth-child(1){background:#ae7952}.dune i:nth-child(2){background:#728a72}.dune i:nth-child(3){background:#a689aa}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px;border-top:1px solid var(--border);font-size:12px}.setting-row input{appearance:none;-webkit-appearance:none;flex:0 0 37px;height:23px;border-radius:20px;background:var(--border);padding:3px;cursor:pointer;margin:0;position:relative}.setting-row input:before{content:"";position:absolute;left:3px;top:3px;width:17px;height:17px;border-radius:50%;background:var(--card);box-shadow:0 1px 4px #0002;transition:transform .2s}.setting-row input:checked{background:var(--accent)}.setting-row input:checked:before{transform:translateX(14px)}.setting-row select{border:1px solid var(--border);border-radius:8px;padding:7px;background:var(--card);color:var(--text);font-size:12px}.how-to{border-radius:13px;background:var(--bg);padding:16px;margin:12px 0 0}.how-to h3{font-size:12px;font-weight:500;margin:0 0 8px}.how-to p{font-size:11px;line-height:1.8;margin:0;color:var(--muted)}.storage-note{font-size:10px;line-height:1.6;color:var(--muted);margin-top:16px}.paused #board{pointer-events:none;opacity:.4}.paused .board-card:after{content:attr(data-pause-label);position:absolute;inset:0;display:grid;place-items:center;font-size:18px;color:var(--accent-dark);background:color-mix(in srgb,var(--card) 75%,transparent);z-index:10}.storage-error .save-dot{background:var(--a2)}
body[data-theme="lilac"]{--bg:#eeebf3;--card:#fcfaff;--text:#443d51;--muted:#837b91;--soft:#aba1b5;--border:#dfd8e7;--accent:#8974ac;--accent-dark:#705c94;--accent-wash:#e1d9ed;--a0:#8064ae;--a1:#7397a9;--a2:#b88098;--a3:#85976b;--wash:#d6c6e9;--flower:#d2bfe6;--stem:#91998a}
body[data-theme="dune"]{--bg:#f2eadd;--card:#fffaf0;--text:#4d443d;--muted:#918272;--soft:#b1a595;--border:#e1d7c8;--accent:#aa805e;--accent-dark:#8f6346;--accent-wash:#ebdccb;--a0:#ad7855;--a1:#748e74;--a2:#a48aad;--a3:#6f94a4;--wash:#e9d5b7;--flower:#e7c7a5;--stem:#859275}
@keyframes breathe{0%,100%{opacity:1}50%{opacity:.62}}@keyframes ring-breathe{0%,100%{opacity:.08;transform:scale(1)}50%{opacity:.2;transform:scale(1.15)}}@keyframes blocked{0%,100%{transform:translate(0,0)}35%{transform:translate(var(--dx),var(--dy))}}@keyframes win-in{from{opacity:0}to{opacity:1}}@keyframes flower-in{from{transform:scale(.75) rotate(-18deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}
@media(min-width:1200px){.app-shell{padding:0 55px}.game-layout{gap:85px}}
@media(max-width:850px){.app-shell{padding:0 28px;max-width:650px}.site-header{height:86px}.tagline{display:none}.story-panel{display:none}.game-layout{display:block;padding:26px 0 25px}.play-panel{max-width:500px;margin:auto}.mode-tabs{margin-bottom:25px}.site-footer{padding-bottom:25px}}
@media(max-width:480px){.app-shell{padding:0 20px}.site-header{height:76px}.brand{font-size:27px;gap:7px}.brand-mark{width:35px;height:35px}.brand-dot{width:5px;height:5px;margin-top:12px}.header-right{gap:3px}.icon-button{width:40px;height:40px}.header-right svg{width:20px;height:20px}.game-layout{padding:21px 0 23px}.mode-tabs{border-radius:14px;min-height:46px;margin-bottom:24px;padding:4px;gap:2px}.mode-tab{min-height:38px;font-size:11px;border-radius:11px;gap:6px}.mode-tab svg{width:16px;height:16px}.new-dot{right:6px;top:6px}.puzzle-heading{margin-bottom:16px;padding:0 5px}.level-eyebrow{font-size:8px;letter-spacing:1.5px}h2{font-size:24px;margin-top:7px}.level-counter{font-size:15px}.board-card{padding:8px;border-radius:24px}.board-corner{width:10px;height:10px}.corner-tl{top:13px;left:13px}.corner-br{right:13px;bottom:13px}.game-message{min-height:62px;font-size:11px;gap:7px}.tools-bar{gap:8px}.tool-button{flex-direction:column;gap:6px;min-height:66px;border-radius:14px;font-size:10px}.tool-button svg{width:19px;height:19px}.under-note{font-size:9px;margin-top:18px}.site-footer{font-size:9px;gap:12px;line-height:1.6;padding-top:19px;padding-bottom:max(22px,env(safe-area-inset-bottom))}.win-panel{padding:16px}.success-flower{width:68px;height:68px;margin-bottom:16px}.win-panel h2{font-size:26px}.win-panel p{font-size:11px;margin:10px 0 17px}.win-eyebrow{font-size:7px}.primary-button{padding:13px 18px;min-height:45px;font-size:11px;border-radius:13px}.text-button{font-size:10px;margin-top:4px}.settings-dialog{padding:17px 20px}.dialog-heading h2{font-size:19px}}
@media(max-width:350px){.app-shell{padding:0 14px}.game-layout{padding-top:16px}.mode-tabs{margin-bottom:20px}.game-message{font-size:10px}.site-footer{font-size:8px}.level-eyebrow{font-size:7px}.board-card{padding:6px}.success-flower{width:55px;height:55px;margin-bottom:11px}.win-panel h2{font-size:23px}.win-panel p{font-size:10px;max-width:220px}.win-panel .primary-button{min-height:40px}.text-button{min-height:36px}}
@media(min-width:851px) and (max-height:830px){.site-header{height:86px}.game-layout{padding-top:26px;grid-template-columns:300px minmax(0,440px);padding-bottom:22px}.story-panel{padding-top:57px}.paper-flower{margin-top:5px}.paper-flower svg{height:120px}.mode-tabs{margin-bottom:20px}.puzzle-heading{margin-bottom:15px}.game-message{min-height:48px}.tool-button{min-height:50px}.under-note{margin-top:13px}.site-footer{padding:16px 0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
body.reduce-motion *,body.reduce-motion *:before,body.reduce-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
.pair-mark{fill:var(--card);stroke:var(--arrow-color);stroke-width:3.5;stroke-linejoin:round;pointer-events:none}.pair-mark .pair-center{fill:var(--arrow-color);stroke:none}.tool-button span{text-align:center;line-height:1.3;max-width:110px}.primary-button:disabled{opacity:.6;cursor:wait}.app-shell{padding-top:max(env(safe-area-inset-top),var(--vk-inset-top,0px))}body{padding-left:var(--vk-inset-left,0px);padding-right:var(--vk-inset-right,0px);padding-bottom:var(--vk-inset-bottom,0px)}
.postcard-preview{width:120px;aspect-ratio:320/224;margin-bottom:10px;transform:rotate(-3deg);box-shadow:0 4px 12px var(--shadow);border-radius:9px}.postcard-preview svg{width:100%;height:100%}.win-panel h2{font-size:27px;margin-top:9px}.win-panel p{font-size:11px;margin:9px 0 14px;max-width:280px}.win-secondary{display:flex;align-items:center;gap:7px;margin-top:3px}.win-secondary .text-button{font-size:10px;margin:0;min-height:36px;padding:7px}.setting-album{width:100%;display:flex;align-items:center;gap:12px;border-top:1px solid var(--border);background:transparent;min-height:54px;font-size:12px;text-align:left;padding:0}.setting-album span:first-child{flex:1}.setting-album span:nth-child(2){color:var(--muted);font-size:11px}.setting-album svg{width:17px;height:17px;stroke:var(--accent)}.album-dialog{width:min(680px,calc(100% - 32px))}.album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.album-card{padding:0;background:transparent;border-radius:13px;overflow:hidden;border:1px solid var(--border);transition:transform .15s}.album-card:hover{transform:rotate(-2deg)}.album-card svg{width:100%;height:auto}.album-empty{grid-column:1/-1;font-size:13px;color:var(--muted);line-height:1.7;padding:24px 0;text-align:center}
@media(max-width:480px){.board-card:has(.win-panel:not([hidden])){min-height:360px;aspect-ratio:auto}.postcard-preview{width:88px;margin-bottom:8px}.win-panel .win-eyebrow{display:none}.win-panel h2{font-size:24px;margin-top:4px}.win-panel p{font-size:10px;line-height:1.6;margin:7px 0 11px;max-width:270px}.win-secondary .text-button{font-size:9px;min-height:32px}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
.heading-status{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.lives{display:flex;gap:4px}.lives svg{width:15px;height:15px;fill:var(--a2);stroke:var(--a2);stroke-width:1.5;transition:opacity .2s,fill .2s}.lives .life-spent{fill:transparent;opacity:.32}.loss-flower{width:82px;height:82px;margin-bottom:16px}.loss-flower svg{width:100%;height:100%;fill:none;stroke:var(--stem);stroke-width:2;stroke-linecap:round}.loss-flower path:last-child{fill:var(--flower);stroke:var(--accent);stroke-opacity:.3;stroke-width:1}.loss-panel .retry-note{font-size:9px;color:var(--muted);margin-top:17px}.loss-panel h2{max-width:100%;text-align:center}.loss-panel .primary-button{margin-top:4px}.loss-panel p{max-width:260px}.loss-panel h2{font-size:26px}@media(max-width:480px){.lives svg{width:13px;height:13px}.heading-status{gap:7px}.loss-panel h2{font-size:24px}.loss-flower{width:68px;height:68px;margin-bottom:13px}.loss-panel p{font-size:11px;line-height:1.7}.loss-panel .retry-note{font-size:8px}}
.board-card{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.board-viewport{width:100%;height:100%;min-height:0;min-width:0;overflow:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.board-viewport:has(+.zoom-controls:not([hidden])){overflow:auto;cursor:grab}.board-viewport:active{cursor:grabbing}.zoom-controls{position:absolute;bottom:13px;right:13px;display:flex;gap:2px;background:var(--card);padding:4px;border:1px solid var(--border);border-radius:14px;box-shadow:0 3px 10px var(--shadow);z-index:4}.zoom-controls[hidden]{display:none}.zoom-controls button{background:transparent;border-radius:9px;min-height:36px;min-width:36px;font-size:20px;color:var(--accent-dark)}.zoom-controls button:disabled{opacity:.3}.zoom-controls #zoom-fit{font-size:10px;padding:0 8px;min-width:50px}.rank-strip{display:flex;justify-content:space-between;align-items:center;gap:14px;border:1px solid var(--border);padding:8px 13px;margin:-10px 0 18px;border-radius:13px;font-size:10px;color:var(--muted)}.rank-strip[hidden]{display:none}.rank-strip>div{display:flex;align-items:center;gap:10px}.rank-strip strong{color:var(--accent-dark);font-size:16px;font-weight:500}.rank-strip .text-button{margin:0;min-height:32px;color:var(--accent-dark);font-size:10px}.ranking-offline{font-size:14px;line-height:1.8;padding:15px 0}.ranking-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:10px;padding:13px 0;border-bottom:1px solid var(--border);font-size:12px}.ranking-row>span:first-child{color:var(--muted)}.ranking-row strong{color:var(--accent-dark)}
.postcard-preview{width:180px}@media(max-width:480px){.postcard-preview{width:158px}}
.postcard-preview{width:240px;flex-shrink:0}@media(max-width:480px){.win-panel{padding:12px}.postcard-preview{width:clamp(220px,62vw,240px);margin-bottom:6px}.win-panel h2{margin-top:3px}.win-panel p{margin:6px 0 9px}.win-secondary{margin-top:1px}}
.privacy-link{font-size:10px;color:var(--accent-dark);text-underline-offset:3px;display:inline-block;padding:4px 0 10px}
.pair-guide{display:flex;align-items:center;gap:10px;padding:10px 12px;margin:-4px 0 13px;border-radius:12px;background:var(--accent-wash);color:var(--accent-dark);font-size:10px;line-height:1.5}.pair-guide[hidden]{display:none}.pair-guide>span:first-child{white-space:nowrap;font-size:18px;letter-spacing:1px}.pair-connector{fill:none;stroke:var(--accent-dark);stroke-width:2.5;stroke-dasharray:5 7;stroke-linecap:round;opacity:.55;pointer-events:none}.pair-preview .arrow-line,.pair-preview .arrow-tip{filter:drop-shadow(0 0 6px var(--arrow-color))}.pair-preview .pair-mark{stroke-width:5}
@media(min-width:900px) and (max-height:650px){.app-shell{max-width:1100px;padding:0 34px}.site-header{height:58px}.brand{font-size:26px}.brand-mark{width:34px;height:34px}.game-layout{grid-template-columns:300px 535px;gap:50px;padding:20px 0 12px}.story-panel{padding-top:28px}.story-panel h1{font-size:38px;margin:17px 0}.story-copy{font-size:13px}.chapter-card{margin-top:24px;padding:15px 18px}.paper-flower{display:none}.play-panel{display:grid;grid-template-columns:380px 140px;column-gap:15px;grid-template-areas:'board tabs' 'board heading' 'board rank' 'board guide' 'board tools' 'message message' 'note note';align-items:center}.mode-tabs{grid-area:tabs;flex-direction:column;margin:0;padding:4px;gap:2px;width:140px}.mode-tab{width:100%;min-height:32px;flex:0 0 auto;font-size:10px}.mode-tab svg{width:15px;height:15px}.puzzle-heading{grid-area:heading;margin:7px 0;padding:0 5px;align-items:center;gap:6px}.puzzle-heading h2{font-size:20px}.level-eyebrow{font-size:7px;letter-spacing:.8px;max-width:78px}.heading-status{gap:5px}.lives{gap:2px}.lives svg{width:11px;height:11px}.level-counter{font-size:12px;gap:3px}.level-counter svg{width:13px;height:13px}.level-counter i{font-size:10px}.board-card{grid-area:board;width:380px;height:380px;aspect-ratio:1;padding:12px;border-radius:25px}.rank-strip{grid-area:rank;margin:3px 0;padding:5px 8px;font-size:8px;gap:5px;flex-wrap:wrap;min-height:32px}.rank-strip>div{gap:5px}.rank-strip .text-button{min-height:24px;padding:4px;font-size:9px}.rank-strip strong{font-size:13px}.pair-guide{grid-area:guide;margin:4px 0;font-size:8px;padding:6px;gap:6px}.pair-guide>span:first-child{font-size:12px;letter-spacing:0}.tools-bar{grid-area:tools;gap:5px;align-self:center}.tool-button{min-height:64px;gap:4px;flex-direction:column;font-size:8px;border-radius:10px;padding:3px}.tool-button svg{width:16px;height:16px}.tool-button span{max-width:40px;overflow-wrap:normal}.game-message{grid-area:message;min-height:36px;font-size:10px;padding:7px}.under-note{grid-area:note;margin:5px 0 0;font-size:9px}.site-footer{padding:13px 0 16px;font-size:9px}.postcard-preview{width:220px}.win-panel{padding:12px}.win-panel h2{font-size:24px;margin-top:4px}.win-eyebrow{display:none}.win-panel p{margin:6px 0 10px;font-size:10px}.win-secondary .text-button{font-size:9px;min-height:30px}.primary-button{min-height:43px;padding:12px 18px;font-size:11px}}
