:root{color-scheme:light;--ink:#292944;--muted:#79788e;--accent:#7161cf;--soft:#eeeafa;--line:#e6e2ee;--paper:#fbfaf7;font-family:Tahoma,"Segoe UI",Arial,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:#f5f4fb;color:var(--ink);min-width:300px;background-image:radial-gradient(ellipse at 85% 15%,#e9e1f5 0,transparent 36%),radial-gradient(ellipse at 12% 78%,#e1f0eb 0,transparent 34%)}button,a,input{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #7961d7;outline-offset:4px}button{border:0}a{color:inherit;text-decoration:none}button svg,a svg{width:20px;height:20px;vertical-align:middle;flex-shrink:0}.topbar{max-width:1320px;margin:auto;height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 40px;border-bottom:1px solid #dedbe680}.brand{display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:2px;direction:ltr}.brand-mark{display:grid;place-items:center;width:39px;height:39px;background:var(--accent);border-radius:14px;color:white;font-weight:800;font-size:20px;letter-spacing:-3px;padding-inline-end:3px}.brand b{font-weight:800}.topnav{display:flex;align-items:center;gap:8px}.topnav .language{font-size:12px;padding:12px 14px;border-radius:12px;background:transparent}.icon-button{display:grid;place-items:center;width:42px;height:42px;border:1px solid #dedbe7;background:#ffffff80;border-radius:50%}.page{max-width:1200px;margin:48px auto 32px;padding:0 32px;display:grid;grid-template-columns:310px minmax(0,1fr);gap:55px;align-items:start}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--accent);font-weight:700;display:flex;align-items:center;gap:8px}.eyebrow:before{content:'';width:6px;height:6px;border-radius:50%;background:#b5a3de}.intro h1{font-size:45px;line-height:1.3;font-weight:800;letter-spacing:-1.5px;margin:17px 0 10px}.intro .tagline{font-size:22px;font-weight:500;line-height:1.7;margin:0 0 12px}.intro p{font-size:13px;line-height:2;color:var(--muted);margin:0}.intro-art{height:85px;display:flex;align-items:center;gap:8px;margin:22px 0}.color-chip{height:43px;width:43px;border-radius:50%;box-shadow:inset 0 0 0 7px #ffffff60;transform:translateY(var(--offset))}.color-chip:nth-child(2){height:52px;width:52px}.journey-card{padding:22px;border:1px solid #fff;border-radius:23px;background:#ffffff85;box-shadow:0 10px 35px #4b416308}.section-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px}.section-title h2{margin:0;font-size:14px}.section-title span{font-size:12px;color:var(--accent)}.progress-track{height:5px;border-radius:10px;background:#e8e3f1;overflow:hidden}.progress-track i{display:block;height:100%;background:var(--accent);border-radius:10px}.journey-card p{font-size:11px;color:var(--muted);margin:10px 0 17px}.level-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;direction:ltr}.level-grid button{height:41px;background:#f0edf5;border-radius:11px;font-size:13px;position:relative}.level-grid button small{display:block;font-size:8px;color:#ad893f;line-height:9px}.level-grid .done{background:#e6eee7;color:#547262}.level-grid .current{background:var(--accent);color:white;box-shadow:0 4px 10px #7161cf30}.level-grid .current small{color:#ffdd85}.chapter-tabs{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px;gap:8px}.chapter-tabs button{border-radius:9px;background:var(--soft);width:30px;height:28px}.chapter-tabs span{font-size:11px;color:var(--muted)}.quiet-note{font-size:11px;color:var(--muted);line-height:1.9;display:flex;align-items:center;gap:10px;margin:20px 4px}.quiet-note svg{width:24px;min-width:24px;color:#a29ab4}.play{min-width:0}.play-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 18px;gap:12px}.play-heading h2{font-size:22px;margin:5px 0 0;line-height:1.5}.collection{font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:var(--muted)}.map-button{display:flex;align-items:center;gap:8px;padding:11px 15px;background:#fff9;border:1px solid #fff;border-radius:13px;font-size:12px;white-space:nowrap}.game-panel{background:var(--paper);border:1px solid #fff;border-radius:30px;padding:24px;box-shadow:0 18px 50px #5b527b0c;overflow:hidden}.scorebar{display:grid;grid-template-columns:1fr 1.3fr 1fr;align-items:center;text-align:center;padding:4px 0 20px;border-bottom:1px solid #eae6ef}.scorebar span{display:block;font-size:11px;color:var(--muted);margin-bottom:7px}.scorebar strong{font-size:23px;font-weight:600}.scorebar .star-target strong{font-size:18px;color:#ac883c}.scorebar .star-target strong small{font-size:12px;margin-inline-start:6px}.stage{position:relative;margin:22px 0 4px;padding:18px 0 2px;border-radius:24px;background:radial-gradient(ellipse at 50% 45%,#eee9f780,transparent 65%)}.stage-note{display:flex;justify-content:space-between;padding:0 9px;margin-bottom:23px;color:#aaa4b4;font-size:9px;text-transform:uppercase;letter-spacing:2px}.stage-note span:last-child{color:var(--accent)}.bottle-board{display:flex;flex-direction:column;gap:28px;align-items:center;direction:ltr;padding:8px 4px 18px;position:relative}.bottle-row{display:flex;justify-content:center;gap:17px;width:100%;position:relative;isolation:isolate}.bottle-row:after{content:'';position:absolute;height:12px;bottom:21px;left:6%;right:6%;background:linear-gradient(#e4dfea90,#e8e1ef20);border-radius:50%;filter:blur(5px);z-index:-1}.bottle-button{background:transparent;padding:0 4px;position:relative;display:flex;flex-direction:column;align-items:center;flex:0 1 67px;min-width:0;border-radius:18px;transition:transform .2s ease;outline-offset:0!important}.bottle-button:disabled{opacity:1}.bottle-button .glass{width:58px;height:137px;border:2px solid #bdb5ce;border-top:0;border-radius:7px 7px 23px 23px;position:relative;background:linear-gradient(100deg,#fff9,#ffffff10 45%,#ded3ec33);box-shadow:inset 3px 0 5px #fff,3px 6px 9px #85759e14;margin-top:6px;transform-origin:center 70%}.glass:before{content:'';position:absolute;z-index:5;left:-4px;right:-4px;top:-5px;height:8px;border:2px solid #bcb3cf;border-radius:5px;background:#f8f5fc}.glass:after{content:'';position:absolute;z-index:4;top:9px;bottom:18px;left:6px;width:5px;background:linear-gradient(#fff8,#fff1);border-radius:4px;pointer-events:none}.liquid{position:absolute;bottom:3px;left:3px;right:3px;height:122px;border-radius:0 0 18px 18px;overflow:hidden;display:flex;flex-direction:column-reverse;justify-content:flex-start}.layer{height:25%;flex-shrink:0;position:relative;background:var(--color);box-shadow:inset -6px 0 8px #00000008,inset 6px 0 8px #ffffff18;display:flex;justify-content:center;align-items:center}.layer:after{content:'';position:absolute;top:0;left:0;right:0;height:4px;border-radius:50%;background:#fff3}.layer span{font-family:Arial,sans-serif;color:#ffffffb0;text-shadow:0 1px 1px #0002;font-size:10px;font-weight:800}.no-patterns .layer span{visibility:hidden}.bottle-number{font-size:10px;color:#9690a6;height:24px;padding-top:10px;white-space:nowrap}.bottle-button.selected{transform:translateY(-12px)}.bottle-button.selected .glass{border-color:var(--accent);box-shadow:0 0 0 4px #b4a0e329,inset 3px 0 5px #fff}.bottle-button.valid:after{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:var(--accent);top:-14px}.bottle-button.sorted .bottle-number{color:#6a9a83}.bottle-button.hinted .glass{box-shadow:0 0 0 5px #e5c37480}.bottle-button.pouring .glass{animation:tip .36s ease-in-out}.bottle-button.receiving .liquid{animation:ripple .4s ease}.bottle-button.shake{animation:shake .25s ease}.feedback{min-height:42px;text-align:center;display:flex;align-items:center;justify-content:center;font-size:12px;color:#817691;line-height:1.7;margin:10px 0}.actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.action{background:#eeebf4;border:1px solid #e8e3f0;border-radius:15px;min-height:76px;padding:12px 5px;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:6px;font-size:11px}.action small{font-size:9px;line-height:1.4;color:var(--muted)}.action svg{width:21px;height:21px}.action.hint{background:#f4eddc;border-color:#eae1cd;color:#8c7135}.action.extra{background:#e8e2f5;color:#7960a6}.below-game{display:flex;align-items:center;justify-content:space-between;margin:18px 7px;gap:10px;color:var(--muted);font-size:10px}.save-button{font-size:10px;background:transparent;color:inherit;padding:4px;text-align:end}.wallet-strip{display:flex;align-items:center;justify-content:space-between;background:#ffffff85;border:1px solid #fff;border-radius:18px;padding:14px 20px;margin-top:16px;gap:10px}.wallet-value{display:flex;gap:9px;align-items:center;font-size:12px}.coin-icon{display:grid;place-items:center;width:27px;height:27px;background:#f0dfb9;color:#9b7937;border-radius:50%;box-shadow:inset 0 0 0 3px #f8edcf;font-size:15px;font-weight:bold}.wallet-strip a{font-size:11px;color:var(--accent);display:flex;align-items:center;gap:7px}.assist-pill{font-size:10px;background:#eee8f6;color:#8b739f;border-radius:20px;padding:6px 10px;margin-top:10px;display:inline-block}.assist-pill[hidden]{display:none}dialog{border:1px solid #fff;background:#fdfbf8;border-radius:28px;color:var(--ink);padding:36px 28px 26px;max-width:440px;width:calc(100% - 28px);max-height:calc(100dvh - 32px);overflow:auto;box-shadow:0 25px 110px #211a4333}dialog::backdrop{background:#3d35554d;backdrop-filter:blur(8px)}.dialog-close{position:absolute;top:14px;inset-inline-end:16px;background:transparent;font-size:25px;color:#9c92aa;width:30px;height:30px}.dialog-content{text-align:center}.dialog-content h2{font-size:25px;line-height:1.5;margin:10px 0}.dialog-content p{font-size:13px;line-height:1.9;color:var(--muted)}.dialog-content .symbol{display:grid;place-items:center;margin:6px auto 18px;width:64px;height:64px;border-radius:22px;background:var(--soft);color:var(--accent);font-size:30px}.primary,.secondary{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;border-radius:13px;font-size:13px;padding:12px 16px;margin-top:10px}.primary{background:var(--accent);color:white;box-shadow:0 4px 10px #7161cf15}.secondary{background:#ede9f3;color:#776789}.help-list{text-align:start;font-size:12px;line-height:1.9;padding-inline-start:21px;color:var(--muted)}.help-list li{margin:8px 0}.help-note{font-size:11px!important;background:#f0ecf7;padding:12px;border-radius:12px}.settings-box{padding:16px;border:1px solid var(--line);border-radius:16px;margin-top:17px;text-align:start}.settings-box label{display:flex;align-items:center;justify-content:space-between;font-size:12px;gap:10px}.settings-box input[type=range]{width:100%;accent-color:var(--accent);margin:10px 0;min-height:32px}.settings-box .check{padding:8px 0}.settings-box input[type=checkbox]{width:19px;height:19px;accent-color:var(--accent)}.settings-box p{font-size:10px;margin:4px 0}.win-stars{color:#d5b05b;font-size:44px;letter-spacing:9px;direction:ltr;margin:20px 0 10px}.win-stars .dim{color:#e6e0d5}.win-summary{display:flex;justify-content:center;gap:32px;padding:16px;background:#f0edf5;border-radius:16px;margin:18px 0}.win-summary span{font-size:11px;color:var(--muted)}.win-summary b{display:block;font-size:22px;color:var(--ink);margin:5px}.map-group{text-align:start;margin:20px 0 10px}.map-group h3{font-size:13px;color:var(--accent)}.map-group .level-grid{grid-template-columns:repeat(5,1fr)}.map-group .level-grid button{height:44px}.stream{position:fixed;height:4px;border-radius:3px;background:var(--stream);transform-origin:0 50%;z-index:10;pointer-events:none;opacity:.8}.footer-note{font-size:10px;text-align:center;color:#a29aaf;padding:0 20px 22px}.theme-1{--accent:#b57d69;--soft:#f4e8e0}.theme-2{--accent:#568fb2;--soft:#e3eff5}.theme-3{--accent:#9471b6;--soft:#efe5f6}.theme-4{--accent:#649981;--soft:#e4f1e8}.theme-5{--accent:#b87591;--soft:#f6e4ec}.theme-6{--accent:#6c70bb;--soft:#e8e8f6}@keyframes tip{40%{transform:translateY(-8px) rotate(-15deg)}}@keyframes ripple{50%{transform:scaleX(.96)}}@keyframes shake{25%,75%{transform:translateX(-3px)}50%{transform:translateX(3px)}}
@media(min-width:1450px){.page{margin-top:70px}}@media(max-width:1000px){.page{gap:28px;grid-template-columns:250px minmax(0,1fr);padding:0 24px}.intro h1{font-size:37px}.intro .tagline{font-size:20px}.game-panel{padding:20px}.bottle-row{gap:9px}.bottle-button{flex-basis:59px}.bottle-button .glass{width:52px}}@media(max-width:760px){.topbar{height:72px;padding:0 20px}.brand{font-size:10px;gap:8px;letter-spacing:1.5px}.brand-mark{width:33px;height:33px;border-radius:12px}.topnav{gap:5px}.topnav .language{padding:10px 7px}.icon-button{height:36px;width:36px}.page{display:flex;flex-direction:column;margin:24px auto;padding:0 16px;gap:22px;max-width:600px}.intro{width:100%}.intro .eyebrow{font-size:9px;letter-spacing:1.3px;justify-content:center}.intro h1{font-size:34px;text-align:center;margin:9px 0 3px}.intro .tagline{text-align:center;font-size:15px;line-height:1.6}.intro>p,.intro-art,.journey-card,.quiet-note{display:none}.play{width:100%}.play-heading{margin-bottom:13px}.play-heading h2{font-size:18px}.collection{font-size:9px}.game-panel{border-radius:25px;padding:20px 16px}.scorebar{padding-bottom:16px}.scorebar strong{font-size:21px}.scorebar span{font-size:10px}.stage{margin-top:15px;padding-top:12px}.stage-note{font-size:8px;margin-bottom:21px}.bottle-board{gap:24px;padding-bottom:8px}.bottle-row{gap:14px}.bottle-button{flex-basis:63px}.bottle-button .glass{width:54px;height:128px}.liquid{height:113px}.feedback{font-size:11px;margin:10px 0}.actions{gap:6px}.action{min-height:75px;font-size:10px;padding:10px 2px}.action small{font-size:9px}.wallet-strip{margin-top:13px;padding:12px 15px}.below-game{font-size:9px;margin:12px 4px}.save-button{font-size:9px}.footer-note{font-size:9px}.map-button{font-size:10px;padding:10px 12px}}@media(max-width:380px){.topbar{padding:0 13px}.page{padding:0 10px}.game-panel{padding:16px 11px}.bottle-row{gap:9px}.bottle-button{flex-basis:53px}.bottle-button .glass{width:46px;height:119px}.liquid{height:104px}.intro h1{font-size:30px}.brand span:last-child{font-size:9px}.topnav .language{font-size:10px}.action{font-size:9px}.action small{font-size:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.stream{display:none}}
@media(max-width:760px){.dense .page{margin-top:16px;gap:16px}.dense .intro .eyebrow,.dense .intro .tagline{display:none}.dense .intro h1{font-size:25px;margin:0}.dense .game-panel{padding-top:16px}.dense .bottle-row{gap:6px}.dense .bottle-button{flex-basis:46px;padding:0 4px}.dense .bottle-button .glass{width:38px;height:106px;border-radius:5px 5px 16px 16px}.dense .liquid{height:91px;border-radius:0 0 12px 12px}.dense .layer span{font-size:8px}.dense .bottle-board{gap:18px}.dense .stage-note{margin-bottom:16px}}
