@font-face{font-family:Montserrat;src:url('./assets/montserrat-400.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Montserrat;src:url('./assets/montserrat-600.ttf') format('truetype');font-weight:500 600;font-display:swap}@font-face{font-family:Montserrat;src:url('./assets/montserrat-700.ttf') format('truetype');font-weight:700 900;font-display:swap}
:root{--blue:#1327f5;--ivory:#f7f6f2;--navy:#16205b;--muted:#85828b;--line:#dedbd3;--mint:#86d7b4;--gold:#e6b85a;--shadow:0 12px 32px #2c265410}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Montserrat,Arial,sans-serif;background:var(--ivory);color:var(--navy);-webkit-font-smoothing:antialiased;min-height:100dvh;transition:background .35s}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.38}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #7d87ff;outline-offset:4px}button{color:inherit}a{color:inherit}svg{display:block}button svg{pointer-events:none}input[type=checkbox]{accent-color:var(--blue)}.app-shell{max-width:1280px;margin:auto;padding:0 48px}.app-header{display:flex;align-items:center;justify-content:space-between;min-height:104px;gap:15px}.header-brand,.header-actions{display:flex;align-items:center;gap:12px}.header-brand{gap:18px}.wordmark-button{border:0;background:none;color:var(--blue);padding:8px 0}.mini-wordmark{font-size:27px;line-height:.77;font-weight:700;letter-spacing:-.09em;display:flex;flex-direction:column;text-align:left}.brand-credit{font-size:7px;line-height:1.6;letter-spacing:.19em;color:var(--muted);font-weight:600}.icon-btn{width:48px;height:48px;min-width:48px;display:inline-grid;place-items:center;background:#ffffff80;border:1px solid #e6e3dc;border-radius:50%;color:var(--blue);font-size:23px;line-height:1}.account-btn{border:1px solid #e6e3dc;background:#ffffff80;border-radius:30px;display:flex;align-items:center;gap:9px;min-height:48px;padding:5px 16px 5px 6px;font-size:11px;font-weight:600;max-width:180px}.account-btn>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar-dot{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e7e9ff;color:var(--blue);font-weight:700}.footer-meta{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:28px 0 24px;font-size:7px;letter-spacing:.14em;color:var(--muted);margin-top:30px}.footer-meta nav{display:flex;gap:18px;letter-spacing:0;font-size:9px}.footer-meta a{text-decoration:none}.footer-meta a:hover{text-decoration:underline}main{min-height:calc(100dvh - 210px);padding-top:22px;padding-bottom:10px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:.2em;line-height:1.6;color:var(--blue);text-transform:uppercase}.micro-label{font-size:8px;font-weight:600;letter-spacing:.16em;color:var(--muted)}.btn{min-height:53px;border-radius:30px;border:1px solid transparent;display:inline-flex;justify-content:center;align-items:center;gap:10px;padding:14px 25px;font-size:12px;font-weight:600;line-height:1.5;transition:transform .18s,background .2s,box-shadow .2s;text-decoration:none}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0) scale(.98)}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 8px 18px #1327f51c}.btn-secondary{background:transparent;color:var(--blue);border-color:#1327f575}.btn-cream{background:var(--ivory);color:var(--blue);box-shadow:0 12px 26px #00000010}.btn-glass{background:#ffffff0a;border-color:#ffffff4a;color:#fff}.btn-text,.text-btn{background:none;border:0;box-shadow:none;color:var(--blue);font-size:11px;padding:10px 0;min-height:44px}.btn-danger{background:#a93147;color:#fff}.danger{color:#a93147}.fine-print{font-size:10px;line-height:1.7;color:var(--muted)}.pill{font-size:8px;letter-spacing:.13em;font-weight:600;padding:7px 10px;border-radius:20px;background:#ffffff15;border:1px solid #ffffff30}.sweet{width:100%;height:100%;pointer-events:none;overflow:visible}.hero-art{width:100%;height:auto;overflow:visible}.blue-screen{background:var(--blue);color:#fff}.blue-screen .wordmark-button,.blue-screen .eyebrow,.blue-screen .footer-meta,.blue-screen .brand-credit{color:#fff}.blue-screen .icon-btn,.blue-screen .account-btn{color:#fff;border-color:#ffffff38;background:#ffffff0a}.blue-screen .avatar-dot{background:#ffffff20;color:#fff}.blue-screen .footer-meta{opacity:.65}
/* Welcome and collection home */
.premium-welcome{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;min-height:630px;gap:50px}.hero-copy h1{font-size:clamp(52px,5.6vw,82px);line-height:.99;letter-spacing:-.07em;margin:25px 0}.hero-lead{font-size:15px;line-height:1.9;color:#d5d9ff}.hero-cta{display:flex;gap:13px;margin-top:35px;flex-wrap:wrap}.hero-cta .btn{min-width:200px;justify-content:space-between}.hero-facts{display:flex;align-items:center;gap:13px;color:#d5d9ff;font-size:10px;margin-top:30px}.hero-facts i{width:3px;height:3px;background:#fff;border-radius:50%}.hero-facts.minor{margin-top:12px;font-size:9px;opacity:.7}.hero-visual{position:relative;aspect-ratio:1;display:grid;place-items:center}.hero-visual>.hero-art{width:115%;z-index:1;animation:box-float 7s ease-in-out infinite}.orbital-ring{position:absolute;width:105%;aspect-ratio:1;border:1px solid #ffffff15;border-radius:50%;box-shadow:0 0 0 45px #ffffff03,0 0 0 90px #ffffff02}.float-candy{position:absolute;width:80px;height:80px;z-index:2;animation:box-float 5s ease-in-out infinite}.c1{top:3%;left:17%;transform:rotate(-14deg)}.c2{top:15%;right:0;animation-delay:-1s}.c3{left:2%;bottom:12%;animation-delay:-2s}.art-caption{position:absolute;bottom:-20px;font-size:7px;letter-spacing:.3em;color:#c2caff}.premium-home{max-width:1080px;margin:auto}.home-top{display:flex;align-items:center;justify-content:space-between}.home-top h1{font-size:clamp(40px,5vw,66px);line-height:1;letter-spacing:-.065em;margin-top:15px}.home-gift{width:320px}.collection-overview{display:grid;grid-template-columns:repeat(3,1fr);padding:30px 0;border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30;margin:15px 0 32px}.collection-overview>div{padding:0 30px;border-right:1px solid #ffffff30}.collection-overview>div:first-child{padding-left:0}.collection-overview>div:last-child{border:0}.collection-overview .micro-label{color:#d0d6ff}.collection-overview strong{display:block;font-size:41px;letter-spacing:-.055em;margin:12px 0 5px;line-height:1}.collection-overview strong small{font-size:20px;font-weight:500;color:#9ca9ff;margin-left:4px}.collection-overview p{font-size:9px;color:#c3cbff}.home-bottom{display:grid;grid-template-columns:1.3fr 1fr;gap:30px}.next-card{background:#ffffff0b;border:1px solid #ffffff32;border-radius:24px;padding:24px 28px}.next-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.next-heading>span:last-child{font-size:8px;letter-spacing:.12em;color:#c3cbff}.next-card h2{font-size:23px;line-height:1.2;letter-spacing:-.04em;margin:20px 0 9px}.flavour-preview{display:flex;align-items:center;gap:4px}.flavour-preview .sweet{width:40px;height:40px}.next-card .btn{width:100%;justify-content:space-between;margin-top:17px}.home-nav{display:grid;gap:12px}.home-nav .btn{display:grid;grid-template-columns:1fr auto;text-align:left;justify-content:stretch;border-radius:18px;padding:16px 24px}.home-nav .btn span{font-size:7px;letter-spacing:.16em;opacity:.6;grid-column:1}.home-nav .btn strong{font-size:17px;letter-spacing:-.03em;grid-column:1}.home-nav .btn b{grid-column:2;grid-row:1/3;font-size:23px;font-weight:400}
/* Collection and game */
.page-title{margin:10px 0 32px}.page-title h1{font-size:clamp(36px,4.6vw,58px);line-height:1.04;letter-spacing:-.065em;color:var(--blue);margin:14px 0}.page-title>p:last-child{font-size:12px;line-height:1.8;color:var(--muted)}.chapter-tabs{display:flex;overflow:auto;gap:8px;padding:4px 2px 18px;scrollbar-width:thin}.chapter-tabs button{flex:0 0 auto;padding:10px 15px;border:1px solid var(--line);border-radius:24px;background:transparent;font-size:10px;color:var(--muted);display:flex;gap:8px;align-items:center;min-height:44px}.chapter-tabs button[aria-selected=true]{background:var(--blue);border-color:var(--blue);color:#fff}.chapter-tabs button span{font-size:8px;opacity:.65}.chapter-intro{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:25px 0}.chapter-intro h2{font-size:27px;letter-spacing:-.045em;color:var(--blue);margin-top:7px}.level-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 25px}.level-card{position:relative;min-height:155px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:22px;border:1px solid var(--line);background:#fffdf8;border-radius:20px;text-align:left;box-shadow:0 5px 0 #e3dfd5;transition:transform .2s,border-color .2s}.level-card:hover{transform:translateY(-3px);border-color:#1327f566}.level-num{font-size:34px;line-height:1;letter-spacing:-.06em;font-weight:700;color:var(--blue)}.level-caption{font-size:10px;line-height:1.4;margin:10px 0}.level-card.locked{opacity:.5;background:transparent;box-shadow:none}.level-lock{font-size:21px;color:var(--muted)}.stars{display:inline-flex;gap:3px;font-size:15px}.stars i{font-style:normal;color:#dcd7cc}.stars i.earned{color:var(--gold)}.tray-game{display:grid;grid-template-columns:1fr 1.15fr;gap:70px;align-items:start;max-width:1050px;margin:auto}.game-story{position:sticky;top:30px;padding-top:60px}.game-story h2{font-size:52px;line-height:.98;letter-spacing:-.065em;color:var(--blue);margin:24px 0}.game-story>p:not(.eyebrow){font-size:12px;line-height:1.8;color:var(--muted);margin:18px 0}.game-story>.btn{display:flex;justify-content:flex-start}.small-gift{width:280px;margin:10px 0}.game-panel{max-width:510px;width:100%;margin:auto}.game-heading{display:flex;align-items:center;justify-content:space-between}.game-heading h1{font-size:40px;color:var(--blue);letter-spacing:-.055em;line-height:1.1;margin-top:8px}.game-progress{font-size:12px;color:var(--blue);border:1px solid #1327f52b;padding:10px 13px;border-radius:25px}.game-progress i{font-style:normal;color:#a5a1af;font-size:9px}.level-description{font-size:12px;color:var(--muted);margin:9px 0 20px;line-height:1.5}.level-description span{font-size:10px;color:#a19da6}.game-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.game-stats>div{display:flex;align-items:center;justify-content:center;gap:10px;border-radius:22px;background:#eae7df;padding:10px 8px}.game-stats span{font-size:7px;letter-spacing:.1em;color:#736f7f;font-weight:600}.game-stats strong{font-size:21px;color:var(--blue);line-height:1}.game-stats strong b{font-weight:700}.game-stats strong small{font-size:11px;font-weight:400;color:var(--muted)}.tray-board{display:grid;gap:12px;padding:0 0 5px}.tray{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:center;justify-items:center;padding:7px 16px 7px 22px;height:78px;background:linear-gradient(145deg,#fffef9,#f0ecdf);border:1px solid #d8d2c4;border-radius:15px;box-shadow:0 5px 0 #d6d0c0,0 8px 15px -4px #5041251a;transition:background .2s,border-color .15s;isolation:isolate;touch-action:pan-y}.slot{width:64px;height:64px;max-width:100%;position:relative;border-radius:50%;background:radial-gradient(circle at 65% 70%,#fffef4 0%,#f3f0df 45%,#ddd9c6 80%,#ccc6b0 100%);box-shadow:inset 1px 2px 5px #7d725125;display:grid;place-items:center}.slot>.sweet{position:absolute;width:100%;height:100%;will-change:transform}.slot[data-draggable]{touch-action:none;cursor:grab;-webkit-touch-callout:none}.slot[data-draggable]:active{cursor:grabbing}.tray-letter{position:absolute;left:7px;top:8px;font-size:7px;color:#a7a08c;pointer-events:none}.tray.selected{border:2px solid var(--blue);padding:6px 15px 6px 21px;box-shadow:0 5px 0 #b4bcff,0 0 0 3px #1327f514}.tray.selected .slot:last-of-type{background:#e6e9ff}.packed-mark{display:none;position:absolute;right:-7px;top:-6px;width:22px;height:22px;border-radius:50%;background:#e0f6e8;border:1px solid #a4cdb2;color:#377d55;place-items:center;font-size:12px}.tray.packed{border-color:#9ccab0;background:linear-gradient(145deg,#f5fff7,#e1f0e2)}.tray.packed .packed-mark{display:grid}.tray.drop-target,.tray.hint-destination{border-color:var(--blue);box-shadow:0 5px 0 #acb7ff,0 0 0 4px #1327f51d;background:#eff0ff}.tray.drop-invalid{border-color:#dc8f93}.tray.drag-origin{opacity:.85}.tray.hint-source{outline:2px solid #9b8af5;outline-offset:3px}.newly-packed{animation:packed-glow 1.1s ease-out}.drag-ghost{position:fixed;z-index:1000;pointer-events:none;will-change:transform;overflow:visible;filter:drop-shadow(0 10px 7px #3b2b4726)}.game-instruction{font-size:10px;text-align:center;color:var(--muted);line-height:1.6;margin:20px 0 15px}.board-actions{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:10px}.board-actions .btn{padding:12px 8px;font-size:17px}.board-actions .btn span{font-size:11px}.save-note{font-size:8px;line-height:1.7;text-align:center;color:var(--muted);margin:15px 0}.save-note button{background:none;border:0;font-size:8px;color:var(--blue);padding:4px}.tutorial-banner{border:1px solid #1327f52b;background:#e9ecff;border-radius:16px;padding:14px 18px;margin:17px 0}.tutorial-banner strong{font-size:12px;color:var(--blue)}.tutorial-banner p{font-size:10px;line-height:1.7;color:#6e74a6;margin-top:5px}.hint-button{animation:hint-pulse 1.2s ease-in-out infinite}
/* Scores and shared ranking */
.score-page,.leaderboard-page{max-width:950px;margin:auto}.score-overview{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:22px;padding:25px;margin:30px 0 40px;background:#ffffff55}.score-overview>div{padding:0 20px;border-right:1px solid var(--line)}.score-overview>div:last-child{border:0}.score-overview span{font-size:8px;letter-spacing:.12em;color:var(--muted);display:block}.score-overview strong{display:block;font-size:34px;color:var(--blue);letter-spacing:-.05em;margin-top:10px}.score-overview small{font-size:17px;font-weight:400;color:#aaa4ad}.section-label{font-size:18px;letter-spacing:-.04em;color:var(--blue);margin:12px 0 20px}.achievement-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:40px}.achievement{display:flex;gap:15px;align-items:center;border:1px solid var(--line);border-radius:17px;padding:18px;opacity:.5}.achievement.unlocked{opacity:1;background:#fffdf9;border-color:#d7ceb7}.achievement>span{font-size:28px;color:#b59b5f}.achievement h3{font-size:12px;letter-spacing:-.025em}.achievement p{font-size:9px;color:var(--muted);line-height:1.6;margin-top:5px}.achievement>b{margin-left:auto;color:var(--blue);font-size:9px;white-space:nowrap}.section-line{display:flex;align-items:center;justify-content:space-between;gap:20px}.score-table{border:1px solid var(--line);border-radius:20px;overflow:hidden}.score-table-head,.score-table-row{display:grid;grid-template-columns:1.5fr 1fr 1.2fr .6fr;align-items:center;gap:15px;padding:15px 25px}.score-table-head{font-size:7px;letter-spacing:.15em;background:#ebe8e0;color:var(--muted)}.score-table-row{border-top:1px solid var(--line);font-size:12px}.score-table-row>span:first-child{display:flex;align-items:center;gap:18px}.score-table-row .stars{font-size:10px}.score-table-row>strong{color:var(--blue)}.score-table-row .icon-btn{width:40px;height:40px;min-width:40px;font-size:19px}.leaderboard-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px;border-radius:22px;background:#e9eaff;margin-bottom:16px}.leaderboard-summary span{display:block;font-size:8px;letter-spacing:.15em;color:#777dba}.leaderboard-summary strong{display:block;font-size:32px;letter-spacing:-.04em;color:var(--blue);margin-top:8px}.leaderboard-summary small{font-size:12px;font-weight:400}.ranking-note{font-size:10px;color:var(--muted);line-height:1.8;margin:20px 0}.ranking-table{border:1px solid var(--line);border-radius:20px;overflow:hidden}.ranking-head{display:flex;justify-content:space-between;background:#eae7df;padding:17px 30px;font-size:7px;letter-spacing:.15em;color:var(--muted)}.ranking-row{position:relative;display:flex;align-items:center;gap:20px;padding:22px 26px;border-bottom:1px solid var(--line)}.ranking-row:last-child{border:0}.ranking-row.is-you{background:#eaedff}.rank{font-size:23px;font-weight:700;color:#b79a58;min-width:36px;letter-spacing:-.04em}.rank-player strong{font-size:12px;display:block}.rank-player i{font-size:6px;background:var(--blue);color:#fff;padding:4px 5px;font-style:normal;border-radius:8px;margin-left:6px}.rank-player>span{display:block;margin-top:7px;font-size:9px;color:var(--muted)}.rank-score{margin-left:auto;font-size:21px;letter-spacing:-.03em;color:var(--blue)}.rank-menu{width:34px;height:34px;min-width:34px;font-size:20px}.leaderboard-foot{display:flex;justify-content:space-between;gap:20px;font-size:9px;color:var(--muted);line-height:1.8;margin-top:22px}.leaderboard-foot a{color:var(--blue);white-space:nowrap}.empty-card{text-align:center;padding:45px 25px;border:1px dashed #d0ccbf;border-radius:22px;margin:25px 0}.empty-card>span{font-size:36px;color:var(--blue)}.empty-card h3{font-size:23px;color:var(--blue);letter-spacing:-.04em;margin:15px 0}.empty-card p{font-size:12px;color:var(--muted);line-height:1.9;max-width:390px;margin:0 auto 23px}
/* Dialogs, policies and share cards */
body.has-modal{overflow:hidden}.modal-backdrop{position:fixed;inset:0;background:#11175055;backdrop-filter:blur(7px);z-index:100;display:flex;align-items:center;justify-content:center;padding:28px;overflow:auto}.modal{position:relative;max-height:calc(100dvh - 56px);overflow:auto;width:100%;max-width:490px;border-radius:30px;background:var(--ivory);padding:43px 40px 30px;text-align:center;box-shadow:0 24px 100px #08104f30;color:var(--navy);animation:modal-in .24s ease-out}.modal-wide{max-width:760px}.modal-close{position:absolute;right:10px;top:10px;border:0;background:none;font-size:29px}.modal-eyebrow{font-size:7px;letter-spacing:.2em;color:var(--muted);margin-bottom:17px}.modal-title{font-size:36px;line-height:1.04;letter-spacing:-.06em;color:var(--blue);font-weight:700}.modal-copy{font-size:11px;color:var(--muted);line-height:1.8;margin:16px 0 24px}.modal-actions{display:grid;gap:10px;margin-top:25px}.modal-actions .btn{width:100%}.modal .hero-art{max-width:240px;margin:auto}.win-stars{margin:8px 0 20px}.win-stars .stars{font-size:35px;gap:10px}.win-score>strong{display:block;font-size:61px;letter-spacing:-.065em;line-height:1;color:var(--blue);margin:15px 0 10px}.win-score>span{font-size:8px;letter-spacing:.2em;color:var(--muted)}.win-details{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:19px 0;margin:24px 0 18px}.win-details strong{display:block;font-size:21px;color:var(--blue);letter-spacing:-.04em}.win-details span{font-size:6px;letter-spacing:.13em;color:var(--muted);display:block;margin-top:6px}.win-modal:before{content:'';position:absolute;left:20%;right:20%;top:0;height:3px;background:var(--blue);box-shadow:0 0 30px #1327f566}.settings-list{border-top:1px solid var(--line);margin-top:20px}.setting-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:62px;border:0;border-bottom:1px solid var(--line);background:none;font-size:12px;text-align:left}.switch{position:relative;width:42px;height:24px;border-radius:20px;background:#d8d5cd;flex-shrink:0}.switch:after{content:'';position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0002;transition:transform .2s}.setting-row[aria-checked=true] .switch{background:var(--blue)}.setting-row[aria-checked=true] .switch:after{transform:translateX(18px)}.settings-list+.fine-print{margin-top:14px}.settings-links{display:grid;justify-items:start;margin:20px 0}.settings-links .btn{font-size:10px;min-height:36px}.form-label{display:block;font-size:8px;letter-spacing:.15em;text-align:left;color:var(--muted);margin-bottom:9px}.username-field{display:flex;align-items:center;gap:10px;background:#fffdf9;border:1px solid var(--line);border-radius:14px;padding:5px 17px;min-height:55px;color:var(--blue)}.username-field input{width:100%;background:none;border:0;padding:10px 0;color:var(--blue);font-size:15px;font-weight:600;min-width:0;outline:none}.username-field+.fine-print{text-align:left;font-size:8px;margin-top:9px}.check-row{display:flex;align-items:flex-start;gap:11px;text-align:left;font-size:10px;line-height:1.8;color:#77717d;margin:22px 0 13px}.check-row input{margin-top:3px;width:17px;height:17px;flex-shrink:0}.check-row a{color:var(--blue)}#profile-form>.btn{margin-top:20px;width:100%}.profile-links{display:grid;margin-top:18px}.profile-links .btn{font-size:9px;min-height:35px}.help-steps{text-align:left;display:grid;gap:18px;margin:25px 0}.help-steps>div{display:flex;align-items:flex-start;gap:15px}.help-steps b{font-size:8px;color:var(--blue);border:1px solid #1327f533;border-radius:20px;padding:8px}.help-steps h3{font-size:12px;color:var(--blue);margin-bottom:6px}.help-steps p{font-size:11px;line-height:1.8;color:var(--muted)}.modal-sweets{display:flex;justify-content:center;gap:12px;margin:18px 0}.modal-sweets .sweet{width:60px;height:60px}.scoring-copy{text-align:left;font-size:11px;color:#7d7783;line-height:1.9}.scoring-copy p+p{margin-top:18px}.scoring-copy strong{color:var(--blue)}.provider-buttons{display:grid;gap:11px}.format-picker{display:flex;gap:8px}.format-picker .btn{flex:1;font-size:10px;min-height:43px;padding:9px}.share-preview{display:grid;place-items:center;border-radius:17px;background:#e6e4dd;margin:18px auto;overflow:hidden;min-height:180px;width:100%}.share-preview.story{width:180px;min-height:320px}.share-preview.post{width:270px;min-height:270px}.share-preview img{display:block;width:100%;height:auto}.share-actions{display:flex;gap:10px}.share-actions .btn{flex:1;padding:12px 10px;font-size:10px}.policy-list{text-align:left;display:grid}.policy-list a{display:flex;justify-content:space-between;gap:15px;padding:16px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:11px;color:var(--blue)}.policy-list+.fine-print{margin-top:20px}.policy-copy{text-align:left;font-size:11px;line-height:1.9;color:#79737f}.policy-copy section{margin:25px 0}.policy-copy h3{font-size:14px;color:var(--blue);margin-bottom:9px}.policy-copy p+p{margin-top:10px}.policy-status{padding:14px;border:1px solid #d4c3a8;background:#f0eadf;border-radius:12px;font-size:10px}.policy-status+.fine-print{margin-top:12px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,15px);opacity:0;background:var(--navy);color:#fff;max-width:calc(100vw - 40px);width:max-content;padding:14px 22px;border-radius:25px;font-size:11px;line-height:1.7;z-index:2000;box-shadow:var(--shadow);transition:opacity .2s,transform .2s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}.confetti-layer{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:150}.confetti-piece{position:absolute;top:-20px;width:8px;height:13px;border-radius:2px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loading-state,.error-state{min-height:60vh;display:flex;flex-direction:column;gap:20px;justify-content:center;align-items:center;text-align:center;color:var(--blue)}.loading-state p,.error-state p{font-size:12px}.loading-orbit{display:inline-block;width:28px;height:28px;border:2px solid #1327f522;border-top-color:var(--blue);border-radius:50%;animation:spin 1s linear infinite}.error-state h1{font-size:40px;letter-spacing:-.06em}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes box-float{50%{translate:0 -10px}}@keyframes modal-in{from{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes packed-glow{0%{box-shadow:0 5px 0 #a7c9b2,0 0 0 0 #86d7b488}45%{box-shadow:0 5px 0 #a7c9b2,0 0 25px 8px #86d7b466}100%{box-shadow:0 5px 0 #d6d0c0,0 0 0 0 #86d7b400}}@keyframes hint-pulse{50%{box-shadow:0 0 0 5px #1327f522}}
/* Tablet / phone */
@media(max-width:960px){.app-shell{padding:0 30px}.tray-game{grid-template-columns:.8fr 1.2fr;gap:35px}.game-story h2{font-size:40px}.small-gift{width:220px}.hero-copy h1{font-size:57px}.premium-welcome{gap:20px;min-height:580px}.hero-cta{display:grid}.hero-visual>.hero-art{width:115%}.home-gift{width:250px}.level-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.chapter-intro .flavour-preview .sweet{width:32px;height:32px}.game-stats>div{gap:7px}.game-stats span{font-size:6px}.slot{height:56px;width:56px}.tray{height:70px;gap:7px}.game-panel{max-width:460px}.modal{padding:40px 30px 27px}}
@media(max-width:760px){.app-shell{padding:0 20px}.app-header{min-height:75px;gap:9px}.header-brand{gap:8px}.brand-credit{display:none}.header-actions{gap:6px}.mini-wordmark{font-size:24px}.icon-btn{width:44px;height:44px;min-width:44px;font-size:21px}.account-btn{max-width:135px;min-height:44px;padding:4px 11px 4px 5px;font-size:9px;gap:6px}.avatar-dot{width:32px;height:32px}.footer-meta{padding:20px 0;flex-direction:column;align-items:center;gap:13px;margin-top:20px;font-size:6px}.footer-meta nav{font-size:8px;gap:14px}main{padding-top:17px;min-height:calc(100dvh - 180px)}.btn{min-height:49px;font-size:11px}.premium-welcome{display:flex;flex-direction:column-reverse;min-height:0;gap:25px;padding-bottom:20px}.hero-visual{width:260px;max-width:80vw;aspect-ratio:1.35}.hero-visual>.hero-art{width:110%}.orbital-ring{width:85%;box-shadow:0 0 0 20px #ffffff03,0 0 0 40px #ffffff02}.float-candy{width:47px;height:47px}.c1{top:-1%;left:5%}.c2{top:1%;right:0}.c3{left:-5%;bottom:3%}.art-caption{display:none}.hero-copy{width:100%;text-align:center}.hero-copy h1{font-size:44px;margin:16px 0 18px}.hero-copy>.eyebrow{font-size:7px;letter-spacing:.15em}.hero-lead{font-size:12px;line-height:1.7}.hero-cta{display:grid;grid-template-columns:1fr;gap:10px;max-width:360px;margin:24px auto 0}.hero-cta .btn{min-width:0;justify-content:center}.hero-cta .btn>span{margin-left:auto}.hero-facts{justify-content:center;margin-top:20px;font-size:8px;gap:10px}.hero-facts.minor{font-size:7px}.home-top{gap:10px}.home-top h1{font-size:36px;margin-top:12px}.home-top .eyebrow{font-size:7px}.home-gift{width:145px;min-width:130px;margin-right:-12px}.collection-overview{padding:20px 0;margin:22px 0}.collection-overview>div{padding:0 12px}.collection-overview .micro-label{font-size:6px;letter-spacing:.08em}.collection-overview strong{font-size:25px;margin-top:12px}.collection-overview strong small{font-size:13px;margin-left:2px}.collection-overview p{font-size:7px;line-height:1.6}.home-bottom{display:flex;flex-direction:column;gap:15px}.next-card{padding:20px;border-radius:20px}.next-heading .pill{font-size:6px;padding:6px 8px}.next-heading>span:last-child{font-size:7px}.next-card h2{font-size:21px;margin-top:16px}.next-card .flavour-preview .sweet{width:35px;height:35px}.next-card .btn{margin-top:13px}.home-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.home-nav .btn{padding:15px 12px;min-height:92px;border-radius:15px}.home-nav .btn span{font-size:5px;line-height:1.7;letter-spacing:.08em}.home-nav .btn strong{font-size:11px;line-height:1.4;margin-top:7px}.home-nav .btn b{display:none}.page-title{margin:6px 0 26px}.page-title h1{font-size:36px;margin:12px 0}.page-title>p:last-child{font-size:10px}.page-title>.eyebrow{font-size:7px}.chapter-tabs{gap:6px;padding-bottom:12px}.chapter-tabs button{font-size:8px;padding:9px 11px;min-height:42px}.chapter-intro{padding:20px 0;align-items:flex-start}.chapter-intro h2{font-size:21px}.chapter-intro .micro-label{font-size:6px}.chapter-intro .flavour-preview{max-width:135px;flex-wrap:wrap;justify-content:flex-end;gap:0}.chapter-intro .flavour-preview .sweet{width:30px;height:30px}.level-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.level-card{min-height:135px;padding:16px 13px;border-radius:16px}.level-num{font-size:29px}.level-caption{font-size:8px;line-height:1.5}.level-card .stars{font-size:11px;gap:1px}.tray-game{display:block}.game-story{display:none}.game-panel{max-width:480px}.game-heading h1{font-size:32px}.game-heading .eyebrow{font-size:7px}.game-progress{font-size:10px;padding:8px 11px}.level-description{font-size:10px;margin:7px 0 14px}.level-description span{font-size:8px}.game-stats{gap:7px;margin:14px 0}.game-stats>div{padding:9px 6px;gap:8px}.game-stats strong{font-size:19px}.game-stats span{font-size:6px;letter-spacing:.04em}.tray-board{gap:10px}.tray{height:65px;padding:5px 10px 5px 19px;gap:9px;border-radius:12px;box-shadow:0 4px 0 #d6d0c0,0 7px 12px -4px #5041251a}.tray.selected{padding:4px 9px 4px 18px}.slot{width:54px;height:54px}.tray-letter{left:6px;top:6px;font-size:6px}.packed-mark{width:18px;height:18px;font-size:10px;right:-5px;top:-5px}.game-instruction{font-size:8px;margin:18px 0 13px}.board-actions{position:sticky;bottom:10px;z-index:10;gap:8px;background:var(--ivory);padding:6px 0;border-radius:25px}.board-actions .btn{min-height:48px;font-size:17px}.board-actions .btn span{font-size:10px}.save-note{font-size:7px;margin-top:10px}.save-note button{font-size:7px}.tutorial-banner{padding:12px 15px;margin:14px 0}.tutorial-banner strong{font-size:11px}.tutorial-banner p{font-size:9px}.score-overview{padding:20px 10px;margin:23px 0 30px;border-radius:18px}.score-overview>div{padding:0 10px}.score-overview span{font-size:6px;letter-spacing:.07em}.score-overview strong{font-size:25px}.score-overview small{font-size:13px}.section-label{font-size:17px;margin-bottom:15px}.achievement-list{display:flex;flex-direction:column;margin-bottom:28px;gap:9px}.achievement{padding:14px;border-radius:14px;gap:13px}.achievement>span{font-size:25px}.achievement h3{font-size:11px}.achievement p{font-size:8px}.achievement>b{font-size:8px}.section-line .text-btn{font-size:8px}.score-table-head,.score-table-row{padding:12px 15px;gap:8px}.score-table-head{font-size:6px}.score-table-row{font-size:10px}.score-table-row>span:first-child{gap:8px}.score-table-row .stars{font-size:8px;gap:1px}.score-table-row .icon-btn{width:36px;height:36px;min-width:36px}.leaderboard-summary{padding:20px;gap:12px}.leaderboard-summary strong{font-size:26px}.leaderboard-summary span{font-size:7px}.leaderboard-summary small{font-size:9px}.leaderboard-summary .btn{padding:10px 15px;font-size:9px}.ranking-note{font-size:8px}.ranking-head{padding:14px 18px;font-size:6px}.ranking-row{padding:18px 15px;gap:12px}.rank{font-size:20px;min-width:25px}.rank-player strong{font-size:10px}.rank-player>span{font-size:7px}.rank-score{font-size:17px}.rank-menu{min-width:29px;width:29px;height:29px;font-size:17px}.leaderboard-foot{font-size:8px;gap:12px}.empty-card{padding:30px 18px}.empty-card h3{font-size:20px}.empty-card p{font-size:10px}.modal-backdrop{padding:18px}.modal{padding:37px 24px 25px;border-radius:24px;max-height:calc(100dvh - 36px)}.modal-title{font-size:31px}.modal-copy{font-size:10px;margin:14px 0 20px}.modal-eyebrow{font-size:6px}.modal-close{right:6px;top:6px}.modal-actions{margin-top:21px}.modal .fine-print{font-size:9px}.win-stars .stars{font-size:29px;gap:8px}.win-score>strong{font-size:52px}.win-score>span{font-size:7px}.win-details{padding:17px 0;margin:20px 0 15px}.win-details strong{font-size:19px}.win-details span{font-size:5px}.setting-row{min-height:58px;font-size:11px}.help-steps p{font-size:10px}.help-steps h3{font-size:11px}.help-steps b{font-size:7px}.scoring-copy{font-size:10px}.username-field input{font-size:13px}.check-row{font-size:9px}.share-preview.story{width:155px;min-height:275px}.share-preview.post{width:230px;min-height:230px}.policy-copy{font-size:10px}.policy-copy h3{font-size:12px}.policy-list a{font-size:10px}.toast{font-size:10px;padding:12px 18px;bottom:18px;max-width:calc(100vw - 30px)}.loading-state{min-height:55vh}}
@media(max-width:370px){.app-shell{padding:0 16px}.account-btn>span:last-child{display:none}.account-btn{width:44px;padding:5px;justify-content:center}.header-actions{gap:4px}.hero-copy h1{font-size:39px}.home-top h1{font-size:32px}.home-gift{width:120px;min-width:105px}.home-top .eyebrow{font-size:6px}.collection-overview strong{font-size:22px}.next-card h2{font-size:19px}.slot{width:49px;height:49px}.tray{height:60px;gap:7px}.modal{padding-left:20px;padding-right:20px}.modal-title{font-size:28px}}
@media(max-width:760px) and (max-height:740px){.app-header{min-height:62px}main{padding-top:10px}.premium-welcome{gap:12px}.hero-visual{width:205px;aspect-ratio:1.5}.hero-copy h1{font-size:36px;margin:12px 0}.hero-lead{font-size:10px}.hero-cta{margin-top:18px}.hero-facts{margin-top:15px}.hero-facts.minor{display:none}.premium-home .home-gift{width:120px;min-width:110px}.home-top h1{font-size:31px}.collection-overview{margin:16px 0;padding:17px 0}.next-card{padding:17px}.next-card h2{font-size:19px;margin-top:13px}.home-nav .btn{min-height:80px}.home-nav .btn strong{font-size:10px}.game-heading h1{font-size:29px}.game-heading .eyebrow{display:none}.level-description{margin:6px 0 12px}.game-stats{margin:12px 0}.game-stats>div{padding:8px 5px}.game-stats strong{font-size:18px}.tray{height:55px;padding:3px 10px 3px 19px}.tray.selected{padding:2px 9px 2px 18px}.slot{width:47px;height:47px}.tray-board{gap:9px}.game-instruction{font-size:7px;margin:15px 0 9px}.save-note{font-size:6px}.footer-meta{margin-top:15px}.tutorial-banner{padding:9px 12px}.tutorial-banner strong{font-size:10px}.tutorial-banner p{font-size:8px}.board-actions .btn{min-height:46px}}
@media(min-width:600px) and (max-height:500px){.app-shell{padding:0 25px}.app-header{min-height:56px}.brand-credit{display:none}main{padding-top:5px}.premium-welcome{display:grid;grid-template-columns:1fr 1fr;min-height:0;gap:45px}.hero-visual{grid-column:2;grid-row:1;width:260px;justify-self:center}.hero-copy{grid-column:1;grid-row:1;text-align:left}.hero-copy h1{font-size:39px}.hero-lead{font-size:10px}.hero-copy>.eyebrow{display:none}.hero-cta{margin-top:18px}.hero-facts{justify-content:flex-start;font-size:7px}.footer-meta{display:none}.tray-game{display:block;max-width:600px}.game-story{display:none}.game-panel{max-width:600px}.game-heading{float:left;width:35%;padding:20px 15px 0 0}.game-heading h1{font-size:27px}.game-heading .eyebrow,.game-progress{display:none}.level-description{position:absolute;width:180px;top:130px;font-size:9px}.game-stats{float:left;clear:left;width:35%;grid-template-columns:1fr;margin-top:55px;padding-right:22px;gap:5px}.game-stats>div{padding:8px}.tray-board{margin-left:35%;gap:8px}.tray{height:48px;padding:2px 8px 2px 18px}.tray.selected{padding:1px 7px 1px 17px}.slot{width:40px;height:40px}.game-instruction{margin-left:35%;font-size:7px}.board-actions{position:static;clear:both;padding-top:15px}.save-note{display:none}.modal-backdrop{padding:16px}.modal{max-height:calc(100dvh - 32px);padding:30px 30px 23px;max-width:470px}.modal-title{font-size:27px}.modal-eyebrow{margin-bottom:12px}.modal-copy{margin:10px 0 18px}.win-stars .stars{font-size:24px}.win-score>strong{font-size:42px}.modal-actions{margin-top:18px}.share-preview.story{width:125px;min-height:222px}.share-preview.post{width:190px;min-height:190px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.confetti-layer{display:none}}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation:none!important;transition:none!important}.reduce-motion .confetti-layer{display:none}
.flavour-intro{display:flex;align-items:center;gap:12px;border:1px solid #dcd1ec;background:#f0eaf8;border-radius:15px;padding:8px 14px;margin-top:16px}.flavour-intro .sweet{width:44px;height:44px;flex-shrink:0}.flavour-intro span{font-size:6px;letter-spacing:.14em;color:#9884ac;display:block}.flavour-intro strong{font-size:12px;color:#77568e;display:block;margin-top:5px}.flavour-intro>b{margin-left:auto;font-size:25px;color:#a784bf}.win-stars i.earned{animation:star-reveal .55s cubic-bezier(.15,.8,.3,1.2) both}.win-stars i:nth-child(2){animation-delay:.1s}.win-stars i:nth-child(3){animation-delay:.2s}@keyframes star-reveal{from{opacity:0;transform:translateY(12px) scale(.3) rotate(-15deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}
/* Clear navigation and a distinctly lifted selection. */
.quick-nav{display:flex;justify-content:flex-end;align-items:center;gap:9px;padding:0 0 14px;border-bottom:1px solid #dedbd388;margin-bottom:6px}
.quick-nav :is(a,button){display:inline-flex;gap:7px;align-items:center;justify-content:center;min-height:42px;padding:8px 17px;border:1px solid #d7d4cc;border-radius:24px;background:#ffffff70;color:var(--blue);font-size:11px;font-weight:600}
.quick-nav :is(a,button)[aria-current=page]{background:var(--blue);color:#fff;border-color:var(--blue)}
.blue-screen .quick-nav{border-color:#ffffff25}.blue-screen .quick-nav :is(a,button){background:#ffffff0d;color:#fff;border-color:#ffffff48}.blue-screen .quick-nav :is(a,button):last-child{background:var(--ivory);color:var(--blue);border-color:var(--ivory)}
.tray.selected{z-index:8;overflow:visible}.slot.candy-ready{z-index:10;overflow:visible;background:#dde4ff;box-shadow:inset 0 0 0 2px #1327f54d,0 0 0 4px #1327f514}
.sweet.candy-floating{position:absolute;transform:translate3d(0,-34px,0) scale(1.22);transform-origin:center;animation:candy-hover-obvious 1.5s ease-in-out infinite;filter:drop-shadow(0 13px 5px #1327f53c);z-index:10}
.slot.candy-ready:after{content:'MOVE ME';position:absolute;left:50%;top:calc(100% + 4px);transform:translateX(-50%);font-size:6px;font-weight:700;letter-spacing:.08em;white-space:nowrap;color:var(--blue);background:#f7f6f2;border-radius:10px;padding:3px 6px;pointer-events:none}
.tray.can-receive{border-color:#1327f5;background:#ecefff;box-shadow:0 4px 0 #b3bdff,0 0 0 3px #1327f51b}
.tray.can-receive:after{content:'TAP HERE';position:absolute;right:7px;top:4px;color:var(--blue);font-size:6px;font-weight:700;letter-spacing:.08em;pointer-events:none}
.tray .slot .sweet{backface-visibility:hidden}.drag-ghost{transform-origin:50% 50%;animation:none!important}.tutorial-banner button{display:inline-block;min-height:40px;border:0;background:none;color:var(--blue);font-size:10px;font-weight:600;padding:8px 0 0}
.profile-error{font-size:11px;line-height:1.7;color:#a93147;margin-top:14px;text-align:left}.profile-error:empty{display:none}.leaderboard-join{display:flex;flex-direction:column;align-items:flex-start;gap:10px;background:#eeefff;border:1px solid #ced3ff;padding:20px 23px;border-radius:18px;margin:20px 0}.leaderboard-join strong{color:var(--blue);font-size:14px}.leaderboard-join p{font-size:11px;color:#777caa;line-height:1.8;max-width:650px}.leaderboard-join .btn{min-height:44px;font-size:10px}
@keyframes candy-hover-obvious{0%,100%{transform:translate3d(0,-34px,0) scale(1.22) rotate(-3deg)}50%{transform:translate3d(0,-43px,0) scale(1.25) rotate(3deg)}}
@media(max-width:760px){.quick-nav{justify-content:stretch;gap:6px;padding:2px 0 12px;margin-bottom:3px}.quick-nav :is(a,button){flex:1;min-height:42px;padding:8px 5px;font-size:9px}.quick-nav :is(a,button):last-child{flex:1.25}.sweet.candy-floating{transform:translate3d(0,-31px,0) scale(1.22)}.slot.candy-ready:after{font-size:5px;padding:3px 5px;top:calc(100% + 2px)}.tray.can-receive:after{font-size:5px;right:5px;top:3px}.leaderboard-join{padding:17px 18px}.leaderboard-join strong{font-size:12px}.leaderboard-join p{font-size:9px}}
.reduce-motion .candy-floating{animation:none!important;transform:translate3d(0,-34px,0) scale(1.22)}
@media(prefers-reduced-motion:reduce){.candy-floating{animation:none!important;transform:translate3d(0,-34px,0) scale(1.22)}}
.sweet.candy-floating{pointer-events:auto;cursor:grab}
.modal .modal-close.icon-btn{color:var(--blue);background:transparent;border-color:transparent}
/* One task per screen. A separate practice board never changes real progress. */
.tutorial-backdrop{background:#101747b8;backdrop-filter:blur(9px);padding:20px}
.walkthrough-modal{display:flex;flex-direction:column;width:100%;max-width:580px;height:min(810px,94dvh);max-height:94dvh;padding:24px 30px 18px;border-radius:28px;text-align:left;overflow-y:auto;overscroll-behavior:contain;color:var(--navy)}
.tutorial-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-shrink:0}.tutorial-topline>span{font-size:10px;letter-spacing:.13em;color:var(--blue);font-weight:700}.tutorial-topline>div{display:flex;gap:8px}.tutorial-topline button{min-height:40px;padding:7px 10px;background:transparent;border:0;border-radius:20px;color:#525778;font-size:12px}.tutorial-topline button:last-child{background:#ececf4;color:var(--blue)}
.tutorial-lessons{display:flex;gap:7px;margin:12px 0 24px;flex-shrink:0}.tutorial-lessons>span{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;padding:8px 4px;border-bottom:3px solid #dedee8;color:#64667a;font-size:11px;white-space:nowrap}.tutorial-lessons b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#e7e6ec;font-size:10px}.tutorial-lessons .current{border-color:var(--blue);color:var(--blue);font-weight:600}.tutorial-lessons .current b{background:var(--blue);color:white}.tutorial-lessons .complete{color:#28734f;border-color:#8bba9f}.tutorial-lessons .complete b{background:#deeee3;color:#28734f}
.tutorial-heading{flex-shrink:0;min-height:94px}.walkthrough-modal .modal-title{font-size:29px;line-height:1.12;letter-spacing:-.055em;color:var(--blue);text-align:left;margin:0 0 12px}.tutorial-heading>p{font-size:14px;line-height:1.6;color:#555c77;max-width:460px}
.tutorial-stage{flex:1;display:flex;flex-direction:column;justify-content:center;position:relative;min-height:345px;padding:23px 0 8px}.tutorial-watch-label{font-size:9px;line-height:1.4;letter-spacing:.12em;color:var(--blue);font-weight:700;background:#e9ebff;align-self:flex-start;padding:6px 9px;border-radius:7px;position:absolute;top:3px;left:0}.tutorial-win-label{background:#e1f1e7;color:#2b7952}
.walkthrough-trays{display:grid;gap:34px;padding:14px 6px 24px;position:relative;isolation:isolate}.walkthrough-trays .tray{height:64px;padding:5px 13px 5px 30px;gap:12px;box-shadow:0 4px 0 #d6d0c0;border-radius:15px;opacity:1;transition:opacity .25s,background .2s,border-color .2s;touch-action:manipulation}.walkthrough-trays .tray.selected{padding:4px 12px 4px 29px;z-index:2}.walkthrough-trays .slot{width:52px;height:52px}.walkthrough-trays .tray-letter{font-size:11px;left:10px;top:10px;color:#676576;font-weight:600}.walkthrough-trays .demo-quiet{opacity:.52}.walkthrough-trays .demo-destination{border-color:var(--blue);background:#e9edff;box-shadow:0 4px 0 #b0baff,0 0 0 2px #1327f522;z-index:1}.walkthrough-trays .packed-mark{width:24px;height:24px;right:-3px;top:-9px;font-size:14px}.walkthrough-trays .tutorial-focus{outline:3px solid var(--blue);outline-offset:3px;z-index:4}.walkthrough-trays .tutorial-drop{outline:3px dashed var(--blue);background:#dce1ff;box-shadow:none}.tutorial-place-mark{font-size:27px;line-height:1;color:var(--blue)}
.walkthrough-trays .candy-ready:after{display:none}.walkthrough-trays .sweet.candy-floating{animation:tutorial-candy-float 1.4s ease-in-out infinite;transform:translateY(-23px) scale(1.13);filter:drop-shadow(0 10px 5px #1327f54a)}.walkthrough-trays .candy-ready:before{opacity:.6}
.tutorial-hand{position:absolute;width:48px;height:69px;z-index:20;pointer-events:none;filter:drop-shadow(0 3px 3px #17215830)}.tutorial-hand-inner{display:block;position:relative;animation:tutorial-hand-tap 1.35s ease-in-out infinite;transform-origin:15px 5px}.tutorial-hand svg{width:42px;height:51px}.tutorial-hand b{display:block;margin:-1px 0 0 9px;background:var(--blue);color:#fff;border-radius:8px;padding:3px 7px;width:max-content;font-size:10px}.tutorial-hand-inner:before{content:'';position:absolute;left:6px;top:-9px;width:24px;height:24px;border:2px solid var(--blue);border-radius:50%;animation:tutorial-tap-ring 1.35s ease-out infinite;z-index:-1}.tutorial-hand-hidden{visibility:hidden}
.tutorial-feedback{font-size:13px;line-height:1.55;min-height:45px;margin:8px 0 10px;padding:10px 12px;border-radius:11px;background:#e9ecff;color:#222f9b;flex-shrink:0}.tutorial-error{color:#8f3240;background:#ffebeb}.tutorial-positive{color:#246749;background:#e1f1e7}.tutorial-footer{flex-shrink:0;padding-top:1px}.tutorial-buttons{display:flex;gap:8px;align-items:center}.tutorial-buttons .btn{flex:1;font-size:13px;min-height:49px;padding:11px 15px;line-height:1.4}.tutorial-buttons .btn-text{flex:0 0 auto;font-size:11px;padding:10px}.tutorial-save-note{font-size:10px;line-height:1.5;color:#63677a;text-align:center;margin:12px 0 0}
.tutorial-finish-visual{width:100%;padding:8px 0}.tutorial-medal{display:grid;place-items:center;width:74px;height:74px;background:linear-gradient(135deg,#fff2bf,#f3c764);color:#b27b20;border:4px solid #ffedbb;box-shadow:0 5px 0 #e3b75b;border-radius:50%;font-size:40px;margin:0 auto 28px}.tutorial-reminders{display:grid;gap:13px}.tutorial-reminders p{display:flex;align-items:center;gap:12px;padding:12px;background:#fffefa;border:1px solid #e0ddcf;border-radius:13px;font-size:13px;line-height:1.5}.tutorial-reminders b{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:#e9ecff;color:var(--blue);font-size:12px}.tutorial-score-tip{font-size:13px;color:var(--blue);margin:18px 0 10px;text-align:center;font-weight:600}.tutorial-leaderboard-tip{font-size:12px;color:#555c77;line-height:1.6;text-align:center}
@keyframes tutorial-candy-float{0%,100%{transform:translateY(-23px) scale(1.13)}50%{transform:translateY(-28px) scale(1.15)}}
@keyframes tutorial-hand-tap{0%,35%,100%{transform:translateY(3px) rotate(-10deg)}55%{transform:translateY(-3px) rotate(-6deg)}75%{transform:translateY(1px) rotate(-10deg)}}
@keyframes tutorial-tap-ring{0%,35%{transform:scale(.5);opacity:0}45%{opacity:.7}85%,100%{transform:scale(1.55);opacity:0}}
@media(max-width:760px){.tutorial-backdrop{padding:0;background:var(--ivory)}.walkthrough-modal{width:100%;max-width:none;height:100dvh;max-height:100dvh;padding:calc(10px + env(safe-area-inset-top)) 22px calc(12px + env(safe-area-inset-bottom));border-radius:0;box-shadow:none}.tutorial-topline>span{font-size:9px}.tutorial-topline button{font-size:12px;padding:8px}.tutorial-lessons{margin:7px 0 22px;gap:5px}.tutorial-lessons>span{font-size:11px;padding:8px 2px;gap:5px}.walkthrough-modal .modal-title{font-size:27px}.tutorial-heading{min-height:92px}.tutorial-heading>p{font-size:14px;line-height:1.55}.tutorial-stage{min-height:320px;padding:30px 0 6px}.walkthrough-trays{gap:34px;padding:12px 4px 27px}.walkthrough-trays .tray{height:62px;padding:5px 10px 5px 25px;gap:7px}.walkthrough-trays .tray.selected{padding:4px 9px 4px 24px}.walkthrough-trays .slot{width:50px;height:50px}.walkthrough-trays .tray-letter{font-size:10px;left:7px;top:8px}.tutorial-feedback{font-size:13px;margin:7px 0 12px;min-height:43px}.tutorial-save-note{font-size:10px;margin-top:11px}.tutorial-buttons{flex-wrap:wrap;gap:4px}.tutorial-buttons .btn{min-height:48px;font-size:13px}.tutorial-buttons .btn-text{font-size:11px}.tutorial-done{min-height:320px}}
@media(max-height:700px){.walkthrough-modal{padding-top:8px;padding-bottom:8px}.tutorial-topline button{min-height:36px}.tutorial-lessons{margin:2px 0 13px}.tutorial-lessons>span{padding:6px 2px}.tutorial-heading{min-height:82px}.walkthrough-modal .modal-title{font-size:24px;margin-bottom:9px}.tutorial-heading>p{font-size:13px}.tutorial-stage{min-height:285px;padding:21px 0 2px}.tutorial-watch-label{font-size:8px;top:0}.walkthrough-trays{gap:32px;padding:12px 4px 20px}.walkthrough-trays .tray{height:50px;padding-top:3px;padding-bottom:3px}.walkthrough-trays .tray.selected{padding-top:2px;padding-bottom:2px}.walkthrough-trays .slot{width:42px;height:42px}.tutorial-feedback{font-size:12px;min-height:39px;padding:9px 11px;margin:5px 0 8px}.tutorial-buttons .btn{min-height:44px;font-size:12px;padding:10px 13px}.tutorial-save-note{font-size:9px;margin-top:7px}.tutorial-medal{width:56px;height:56px;font-size:30px;margin-bottom:17px}.tutorial-reminders{gap:9px}.tutorial-reminders p{font-size:12px;padding:9px}.tutorial-score-tip{font-size:12px;margin-top:13px}.tutorial-leaderboard-tip{font-size:11px}.tutorial-done{min-height:290px}}
.reduce-motion .tutorial-hand-inner,.reduce-motion .tutorial-hand-inner:before,.reduce-motion .walkthrough-trays .sweet.candy-floating{animation:none!important}.reduce-motion .walkthrough-trays .sweet.candy-floating{transform:translateY(-24px) scale(1.13)}
@media(prefers-reduced-motion:reduce){.tutorial-hand-inner,.tutorial-hand-inner:before,.walkthrough-trays .sweet.candy-floating{animation:none!important}.walkthrough-trays .sweet.candy-floating{transform:translateY(-24px) scale(1.13)}}
.share-caption-label{display:block;text-align:left;font-size:10px;letter-spacing:.08em;font-weight:600;color:var(--blue);margin:18px 0 8px}.share-caption{display:block;width:100%;resize:vertical;padding:13px;border:1px solid #d5d9f5;background:#fffef9;border-radius:13px;font:12px/1.7 Montserrat,Arial,sans-serif;color:var(--navy);text-align:left;min-height:130px}.share-copy-status{text-align:left;font-size:11px;line-height:1.6;color:#3f588a;margin:8px 0 14px}
.btn-apple{background:#171717;color:#fff;border:1px solid #171717;box-shadow:none}.account-sync-status{font-size:12px;line-height:1.6;padding:14px;border-radius:12px;background:#e9ecff;color:#30428c;text-align:left;margin-bottom:18px}
.license-copy{font:11px/1.65 Montserrat,Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;text-align:left;max-height:52dvh;overflow:auto;color:#56596e;padding:15px;border:1px solid #dedbd3;border-radius:12px;background:#fffdfa}

/* Browser publisher navigation; the shared game rules and input remain unchanged. */
.publisher-return{display:block;max-width:1120px;margin:0 auto;padding:14px 28px 0;font-size:10px;font-weight:600;color:#586078;text-decoration:none;position:relative;z-index:2}.blue-screen .publisher-return{color:#d9ddff}.publisher-return:hover{text-decoration:underline}.publisher-return:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media(max-width:600px){.publisher-return{padding:12px 20px 0}}

.quick-nav a{text-decoration:none}.quick-nav a:focus-visible{outline:3px solid currentColor;outline-offset:3px}

/* Expansion assortments wrap their preview without widening compact screens. */
.flavour-preview{flex-wrap:wrap}

.entry-options{display:grid;gap:10px;max-width:340px;margin-top:25px}.entry-options .btn{width:100%;min-height:50px;justify-content:center}.entry-options .btn-secondary{background:#fff;color:#262626;border-color:#fff}.entry-options .provider-letter{font-weight:700;font-size:18px}.entry-explainer{font-size:12px;line-height:1.8;max-width:340px;color:#e0e4ff}.entry-connection{font-size:10px;line-height:1.7;max-width:340px;min-height:34px;color:#c8cfff}.entry-policy{display:flex;gap:20px;align-items:center;font-size:10px}.entry-policy a{color:inherit;text-underline-offset:4px}.entry-policy .btn{padding:0;min-height:38px;font-size:10px}.quick-nav.is-signed-in{grid-template-columns:repeat(4,minmax(0,1fr))}.quick-nav>button{border:1px solid #1327f525;border-radius:99px;background:transparent;color:inherit;font:600 11px Montserrat,Arial,sans-serif;cursor:pointer;min-height:42px}@media(max-width:700px){.entry-welcome .hero-visual{display:none}.entry-welcome .hero-copy{width:100%;padding-block:24px}.entry-welcome h1{font-size:44px}.entry-options,.entry-explainer,.entry-connection{max-width:none}.entry-welcome .hero-facts{margin-top:20px}.quick-nav.is-signed-in a,.quick-nav.is-signed-in button{font-size:9px;padding-inline:5px}}
