@charset "UTF-8";
.language-modal{width:min(360px,calc(100% - 30px));border:1px solid var(--modal-border);border-radius:20px;background:var(--modal-surface);color:var(--modal-ink);padding:20px}.language-options{display:grid;gap:10px}.language-choice{display:flex;align-items:center;justify-content:space-between;width:100%;padding:15px 17px;border:1px solid var(--modal-control-border);border-radius:12px;background:var(--modal-control);color:var(--modal-ink);text-align:left;font-size:16px}.language-choice[aria-pressed=true]{border-color:var(--modal-accent);box-shadow:0 0 0 1px var(--modal-accent)}.language-choice[aria-pressed=true]::after{content:'✓';color:var(--modal-accent)}
.tutorial-modal{width:min(440px,calc(100% - 24px));padding:18px;border:1px solid var(--modal-border);border-radius:22px;background:var(--modal-surface);color:var(--modal-ink);max-height:calc(100dvh - 24px);overflow:auto}.tutorial-modal::backdrop,.language-modal::backdrop{background:#33273d66;backdrop-filter:blur(3px)}.tutorial-modal .modal-head h2{font-size:20px;margin:0}.tutorial-skip{border:0;background:transparent;color:var(--modal-muted);font-size:12px;padding:8px}.tutorial-progress{display:flex;gap:5px;margin:15px 0 12px}.tutorial-progress span{height:4px;flex:1;background:var(--modal-control-border);border-radius:4px}.tutorial-progress span.done{background:#97bbaa}.tutorial-progress span.active{background:var(--modal-accent)}.tutorial-cue{font-size:14px;line-height:1.6;min-height:46px;margin:12px 0 15px;color:var(--modal-ink)}.tutorial-board-wrap{padding:6px;border-radius:15px;background:var(--modal-control)}.tutorial-board{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.tutorial-board-cell{position:relative;aspect-ratio:1;min-width:0;min-height:0;padding:3px;border:0;border-radius:8px;display:grid;place-items:center;opacity:.5;touch-action:manipulation;cursor:pointer}.tutorial-board-cell svg{width:92%;height:92%;display:block;pointer-events:none}.tutorial-board-cell.marked svg{width:65%;height:65%}.tutorial-board-cell.tutorial-scope,.tutorial-board-cell.has-bobo{opacity:1}.tutorial-board-cell.tutorial-scope{box-shadow:inset 0 0 0 2px #fff9}.tutorial-board-cell.tutorial-target{opacity:1;z-index:2;outline:3px solid var(--modal-accent);outline-offset:1px;box-shadow:0 0 0 5px var(--modal-surface)}.tutorial-pointer{position:absolute;font-size:27px;right:-5px;bottom:-12px;line-height:1;filter:drop-shadow(0 1px 2px #65547766);pointer-events:none}.tutorial-gesture{height:32px;display:flex;align-items:center;justify-content:center;gap:12px;margin:15px 0 0;font-size:21px;color:var(--modal-accent)}.tutorial-gesture svg{width:28px;height:28px}.tutorial-board-cell:disabled{opacity:1;cursor:default}.tutorial-modal .modal-primary{width:100%;margin-top:15px}
@keyframes tutorial-tap{0%,100%{transform:translate(3px,5px)}50%{transform:translate(0,0)}}@keyframes tutorial-target{0%,100%{outline-offset:1px}50%{outline-offset:4px}}@keyframes tutorial-nudge{0%,100%{transform:translateX(0)}30%{transform:translateX(-3px)}70%{transform:translateX(3px)}}html.rabbit-animations .tutorial-pointer{animation:tutorial-tap 1.4s ease-in-out infinite}html.rabbit-animations .tutorial-target{animation:tutorial-target 1.4s ease-in-out infinite}html.rabbit-animations .tutorial-nudge{animation:tutorial-nudge .3s ease-in-out}
@media(max-height:640px){.tutorial-modal{width:min(360px,calc(100% - 24px));padding:14px}.tutorial-cue{font-size:13px;margin:7px 0 10px;min-height:40px}.tutorial-progress{margin:10px 0 7px}.tutorial-gesture{margin-top:9px;height:25px}}
/* Browser edition: keep the play area immediate and preserve the star-garden art. */
.web-brand{font-size:13px;line-height:1.3;color:#89729f;letter-spacing:.08em;font-weight:600}
.web-toolbar{display:flex;justify-content:flex-end;gap:8px;margin-bottom:12px}.web-toolbar button{border:1px solid var(--line);background:transparent;border-radius:10px;padding:6px 12px;min-height:34px;font-size:13px}.tutorial-step{color:var(--muted);font-size:13px}.tutorial-cell{width:80px;height:80px;display:grid;place-items:center;margin:20px auto;border:0;background:#f5d06f;border-radius:15px}.tutorial-cell svg{width:88%;height:88%}html[lang=en] h1{font-size:21px}html[lang=en] .rule-three{gap:7px}html[lang=en] .rule-three figcaption{font-size:12px;min-height:34px}
.web-footer{text-align:center;color:var(--muted);font-size:12px;line-height:1.6;margin:12px 0 0}
.save-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}
.save-controls .modal-secondary{margin:0}
/* Reward motion follows the animation preference and OS reduced-motion setting. */
@keyframes checkin-ring{0%{transform:scale(.4);opacity:0}20%{opacity:.75}100%{transform:scale(1.3);opacity:0}}
@keyframes checkin-day{0%{transform:scale(.85)}55%{transform:scale(1.1)}100%{transform:scale(1)}}
@keyframes chest-open{0%{transform:scale(.65) rotate(-8deg)}45%{transform:scale(1.25) rotate(6deg)}70%{transform:scale(.98) rotate(-3deg)}100%{transform:scale(1) rotate(0)}}
@keyframes reward-appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
html.rabbit-animations .sign-hero.just-signed .sign-orb:after{content:'';position:absolute;inset:15px;border:2px solid #dbbf82;border-radius:50%;pointer-events:none;animation:checkin-ring .85s ease-out both}
html.rabbit-animations .season-day.just-claimed{animation:checkin-day .6s ease-out both}
html.rabbit-animations .season-day.just-claimed .chest-icon{animation:chest-open .85s ease-out both}
html.rabbit-animations .reward-result{animation:reward-appear .45s ease-out both}
html.rabbit-animations .tutorial-step,html.rabbit-animations .tutorial-cell{animation:reward-appear .25s ease-out both}
.web-toolbar button{transition:background .18s,color .18s}.web-toolbar button:hover{background:#a994c415}
.storage-warning{margin:12px auto;padding:12px;border:1px solid #d9af68;border-radius:10px;font-size:14px;line-height:1.6;background:#fff3d8;color:#624a22;max-width:440px}
@media(min-width:760px){.game-shell{margin-top:24px;margin-bottom:24px;padding:24px;background:var(--modal-surface,#ffffff80);border-radius:28px;box-shadow:0 18px 65px #4230570b}}
:root{color-scheme:light;--ink:#51465f;--muted:#7e6d8f;--blue:#81649f;--line:#e9e3ef;font-family:"Segoe UI","Microsoft JhengHei",sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:#f8f6fc;color:var(--ink);min-height:100vh}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default;opacity:.4}button:focus-visible{outline:3px solid #baa5df;outline-offset:3px}[hidden]{display:none!important}
.game-shell{width:min(100%,480px);margin:auto;padding:20px 18px 12px;padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom))}
.game-header{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:18px}.brand-mark{width:44px;height:44px;display:grid;place-items:center}.brand-mark svg{width:100%;height:100%}.game-heading{text-align:left;min-width:0}.eyebrow{font-size:11px;color:var(--muted);line-height:1.4}h1{font-size:23px;font-weight:700;margin:3px 0 0;line-height:1.25;white-space:nowrap}.header-actions{display:flex;align-items:center;gap:6px}.icon-button{width:38px;height:38px;border:1px solid #ede7f3;border-radius:13px;background:#fff;color:#9485a6;display:grid;place-items:center;flex-shrink:0;font-size:23px;box-shadow:0 3px 9px #6d568b05}.help-button{font-size:21px;font-weight:700;color:#81649f}.chest-button{position:relative}.chest-button>span{display:block;width:26px;height:26px}.chest-icon,.brush-icon{display:block;width:100%;height:100%}.chest-button b{position:absolute;right:-1px;top:-2px;width:9px;height:9px;border-radius:50%;background:#dab378;border:2px solid #f8f6fc}
.status-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:8px;margin-bottom:12px;font-size:14px;font-variant-numeric:tabular-nums}.status-strip>span{background:#fff;border:1px solid #eee8f3;border-radius:13px;min-height:41px;display:flex;align-items:center;justify-content:center}.rabbit-progress{gap:6px}.rabbit-progress>span:first-child{width:26px;height:28px;display:block}.rabbit-progress svg{width:100%;height:100%}.lives{gap:3px}.lives>span{display:block;width:21px;height:25px}.health-icon{display:block;width:100%;height:100%}.lost{filter:grayscale(1);opacity:.3}.status-strip #timer{color:#7c6b8b;font-size:14px;letter-spacing:1px}
.puzzle-label{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#7c6e88;min-height:25px;padding:0 2px;margin-bottom:4px}.puzzle-label #trial-note{background:#ede3f5;color:#9476b0;border-radius:7px;padding:3px 8px;font-weight:600}.starter-note{font-size:11px;color:#7d6d8c;line-height:1.5;margin:0 2px 10px;min-height:17px;text-align:left}
.board-wrap{position:relative;width:100%;margin:0 auto;background:#fff;padding:6px;border-radius:16px;box-shadow:0 6px 25px #8c76a611}.board{display:grid;gap:4px;aspect-ratio:1;touch-action:none;user-select:none;-webkit-user-select:none;border-radius:10px;overflow:hidden}.cell{position:relative;aspect-ratio:1;min-width:0;border:0;border-radius:7px;padding:0;display:grid;place-items:center;font-size:clamp(23px,6vw,37px);color:#65596f;isolation:isolate}.cell:hover{filter:brightness(1.035)}.cell .symbol{font-size:1.08em;line-height:1;display:grid;place-items:center}.cell.marked .symbol{font-family:"Segoe UI",sans-serif;font-weight:400;opacity:.6;font-size:1.13em}.cell.has-rabbit .symbol{width:91%;height:91%}.cell.has-rabbit svg{width:100%;height:100%;display:block}.cell .letter{display:none;position:absolute;top:4px;left:4px;font-size:9px;font-weight:600;color:#635476;opacity:.8;line-height:1;z-index:1}.board.show-letters .letter{display:block}.cell.given .lock{position:absolute;background:#fff9f0;border-radius:50%;width:8px;height:8px;display:grid;place-items:center;right:3px;bottom:3px;font-size:5px;color:#8c739f}.cell.hint:after,.cell.starter:after{content:'';position:absolute;inset:2px;border:2px solid #fff;border-radius:5px;box-shadow:inset 0 0 0 1px #ba925e;pointer-events:none}.cell.hint:after{border-width:3px;box-shadow:0 0 0 1px #d5a331}.cell.invalid{background:#e88996!important}.board.blocked{opacity:.65}.play-panel.boss .board-wrap{box-shadow:0 0 0 2px #d8c5e9,0 6px 25px #8c76a611}
.tools{display:flex;align-items:center;justify-content:center;gap:18px;margin:10px 0 12px}.tools button{display:flex;align-items:center;justify-content:center;gap:6px;border:0;background:transparent;color:#877194;font-size:12px;padding:3px 9px;min-height:36px}.tools button>span{font-size:24px;line-height:1}.tools button:disabled{opacity:.3}
.items-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0 2px 9px;font-size:11px}.items-heading small{font-size:10px;color:#857291}.items-shop-button{border:0;background:transparent;padding:0;color:#7b658f;font-size:11px;text-decoration:underline;text-underline-offset:3px;min-height:23px}.items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.items button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:78px;padding:12px 2px 7px;border:1px solid #e9e2f1;border-radius:16px;background:#fff;font-size:11px;color:#7b658e;touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.items .item-icon{width:34px;height:34px;display:grid;place-items:center}.items .item-icon svg{width:100%;height:100%}.items .item-icon .health-icon{width:28px;height:32px}.items b{position:absolute;right:5px;top:4px;display:grid;place-items:center;font-size:10px;font-weight:600;min-width:18px;height:18px;border-radius:7px;background:#f0eaf7;color:#9b83b3}.items button.unavailable{background:#f3f0f7;color:#aaa0b4;border-color:#eae4f0}.items button.unavailable .item-icon{opacity:.45}.items button.unavailable b{background:#e9e3ef;color:#afa2bb}.items button.is-pressing{transform:scale(.95);border-color:#bcacce;box-shadow:0 0 0 3px #eee6f6}.message{font-size:11px;text-align:center;color:#857291;line-height:1.7;min-height:35px;margin:11px 3px 4px}
.bottom-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px;padding:11px 2px 2px;border-top:1px solid var(--line)}.bottom-nav button{border:0;background:transparent;color:#8c7e9c;font-size:12px;display:flex;align-items:center;gap:5px;padding:5px 0}.bottom-nav button>span{font-size:19px}.app-name{color:#aaa0b5;font-size:11px}.progress-note{font-size:11px;color:#a397ae}.prototype{font-size:10px;text-align:center;color:#b7adc1;margin-top:5px}
.win-panel{text-align:center;background:#f0eaf8;border-radius:17px;padding:17px;margin:12px 0}.win-stars{color:#d9b774;font-size:24px;letter-spacing:6px}.win-panel h2{font-size:20px;margin:7px 0}.win-panel p{font-size:12px;color:#9582a7;line-height:1.8;white-space:pre-line}.next-button{width:100%;border:0;border-radius:12px;padding:13px;background:var(--blue);color:#fff;font-weight:600}
dialog{background:#fff;border:1px solid #eee7f3;border-radius:25px;padding:22px;width:min(420px,calc(100% - 28px));max-height:88dvh;overflow:auto;color:var(--ink);box-shadow:0 24px 90px #58437030}dialog::backdrop{background:#41314f69;backdrop-filter:blur(5px)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}.modal-head h2{font-size:21px;font-weight:600;margin:0;line-height:1.4}.modal-head .icon-button{background:#f5f1fa;box-shadow:none;width:32px;height:32px;border:0;font-size:21px}dialog p,dialog li{font-size:14px;line-height:1.8}dialog ol{padding-left:22px}dialog li+li{margin-top:9px}.modal-primary{display:block;width:100%;background:var(--blue);color:#fff;border:0;border-radius:13px;padding:13px;margin-top:12px;font-size:14px;font-weight:600}.modal-secondary{display:block;width:100%;background:#f7f3fb;color:#846b9a;border:1px solid #ece4f4;border-radius:12px;padding:12px;margin-top:10px;font-size:13px}.modal-note{font-size:12px!important;color:#8a749b;line-height:1.7;margin:9px 0}.shop-badge{width:86px;height:86px;margin:18px auto 12px}.shop-badge svg{width:100%;height:100%}.warning{background:#fbf6ea;border-radius:12px;padding:12px;font-size:12px!important;color:#a38d65}.ad-preview{border:1px dashed #d7ccE2;border-radius:14px;text-align:center;padding:24px 16px;margin:20px 0;color:#9784ab}.ad-preview strong{display:block;margin:10px 0}.ad-preview small{font-size:12px}
.setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:17px 0;font-size:14px}.setting-row small{display:block;color:#937da5;font-size:12px;margin-top:4px;line-height:1.5}.setting-row input{appearance:none;width:41px;height:24px;flex-shrink:0;border-radius:20px;background:#e8e0ef;position:relative;cursor:pointer}.setting-row input:after{content:'';position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s}.setting-row input:checked{background:#ae99ca}.setting-row input:checked:after{transform:translateX(17px)}.volume-row{display:flex;align-items:center;gap:14px;font-size:12px;color:#8a6f9e;margin:-7px 0 18px}.volume-row input{min-width:0;flex:1;accent-color:#ae99ca}.audio-settings{padding-bottom:14px;border-bottom:1px solid var(--line)}.failed-icon{width:50px;height:60px;margin:18px auto;filter:grayscale(1);opacity:.5}.item-info-icon{width:90px;height:90px;margin:18px auto 8px;display:grid;place-items:center}.item-info-icon svg{width:100%;height:100%}.item-info-icon .health-icon{width:70px;height:80px}.item-stock{display:inline-block;background:#f2ecf9;padding:5px 12px;border-radius:8px;color:#9a82b2;font-size:13px!important;margin:0 0 8px}
.wallet{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 0 8px;color:#a98a65}.wallet>span:first-child{width:29px;height:35px;display:block}.wallet svg{width:100%;height:100%}.wallet strong{font-size:27px}.wallet>span:last-child{font-size:13px}.coin-items{display:grid;gap:8px;margin:14px 0}.coin-item{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:13px;padding:10px}.coin-item.focused{background:#fffaef;border-color:#e3cca5}.coin-item-art{width:40px;height:43px;display:grid;place-items:center;flex-shrink:0}.coin-item-art svg{width:100%;height:100%}.coin-item>div:nth-child(2){flex:1;font-size:12px;min-width:0}.coin-item small{display:block;font-size:10px;color:#a297ae;margin-top:4px}.coin-actions{display:flex;flex-direction:column;gap:5px}.coin-actions button{font-size:11px;background:#f3edf9;border:0;border-radius:8px;padding:7px;color:#9a85b1;white-space:nowrap}.coin-bundles{display:grid;grid-template-columns:1fr 1fr;gap:10px}.coin-bundles>div{border:1px solid var(--line);border-radius:12px;padding:12px 10px}.coin-bundles strong{font-size:12px}.coin-bundles small{display:block;font-size:10px;color:#a497b1;margin:8px 0}.coin-bundles button{font-size:12px;padding:10px 5px}.sign-heading{font-size:15px;margin:20px 0 10px;color:#8d7aA3}
.season-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#f5f0f9;border-radius:12px;padding:4px}.season-tabs button{border:0;background:transparent;border-radius:9px;color:#a697b5;padding:9px;font-size:13px}.season-tabs button.selected{background:#fff;color:#8d75a9;box-shadow:0 2px 6px #7059900b}.sign-hero{text-align:center;margin:20px 0}.sign-orb{position:relative;display:block;width:148px;height:130px;margin:auto;border:0;background:radial-gradient(ellipse,#fff6d977,transparent 70%);border-radius:50%;padding:9px 27px;opacity:1!important}.sign-orb>.health-icon{width:100%;height:100%;filter:grayscale(.5);opacity:.4}.sign-hero.lit .sign-orb>.health-icon{filter:none;opacity:1}.sign-orb:not(:disabled)>.health-icon{filter:none;opacity:.75}.sign-spark{position:absolute;font-size:22px;color:#e3c181;opacity:.35}.lit .sign-spark{opacity:1}.sign-spark-a{top:24px;left:14px}.sign-spark-b{bottom:24px;right:14px}.sign-instruction{font-size:12px!important;color:#8d71a0;margin:0 0 12px!important}.sign-run{font-size:38px;font-weight:700;color:#9174ae;line-height:1}.sign-run small{font-size:14px;font-weight:400}.sign-caption{font-size:12px!important;color:#8b749d;margin:5px 0 10px!important}.sign-record{display:inline-block;font-size:11px;color:#8c74a0;background:#f5f0fa;border-radius:30px;padding:6px 13px}.sign-week-title{display:flex;align-items:center;justify-content:space-between;gap:6px;margin:15px 0 10px}.sign-week-title strong{font-size:13px;font-weight:600;color:#957fAb}.sign-week-title small{font-size:11px;color:#917aaa}.season-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:10px 0 12px}.season-day{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border-radius:10px;padding:8px 2px;background:#f5f0fa;font-size:11px;color:#b5a9c2}.season-day small{font-size:10px;white-space:nowrap}.season-day>span{display:grid;place-items:center;width:26px;height:26px;font-size:21px}.season-day.today{box-shadow:inset 0 0 0 1.5px #d2c0e6;color:#ac94c5;background:#f3ebfa}.season-day.claimed{background:#ecf6f0;color:#8bb09f}.season-day b{position:absolute;right:0;bottom:2px;color:#85ac97;font-size:13px}.reward-result{padding:12px;border-radius:12px;background:#edf6f0;color:#617c6b;font-size:12px;text-align:center;line-height:1.7}.season-hero{margin:18px 0 12px;padding:22px 16px;border-radius:17px;background:#f4edfA;text-align:center;color:#8d71a0;font-size:12px}.season-hero strong{display:block;font-size:17px;color:#927aa9}.season-hero small{display:block;color:#917aaa;margin-top:7px}.season-score{font-size:38px!important;line-height:1.3!important;margin:20px 0;color:#9f85ba}.season-score small{display:inline;font-size:12px}
.celebration{position:absolute;inset:0;z-index:5;pointer-events:none;display:grid;place-items:center}.celebration-banner{background:#fffaf2f5;color:#b49666;padding:12px 18px;border:1px solid #efddbc;border-radius:18px;font-size:16px;font-weight:600;box-shadow:0 8px 30px #77648122}.celebration-banner>span{color:#debf79}
.result-modal{position:relative;text-align:center;padding:28px 24px 24px;background:linear-gradient(155deg,#f9f4ff,#fffdf6 55%,#f0faf5);width:min(420px,calc(100% - 28px));overflow-x:hidden}.result-close{position:absolute;right:12px;top:12px;width:30px;height:30px;border:0;background:#fff9;font-size:20px}.result-kicker{font-size:9px;letter-spacing:2px;color:#b7a5c9;margin:8px 0 10px}.result-modal h2{font-size:27px;color:#9275b0;margin:0}.result-modal #result-subtitle{font-size:12px;color:#927aa5;margin:8px 0 0}.result-stage{position:relative;height:268px;width:100%;display:grid;place-items:center;isolation:isolate;margin:3px auto 6px;overflow:hidden}.party-art{position:relative;width:238px;height:260px;max-width:100%;z-index:1;overflow:visible}.party-halo{position:absolute;width:225px;height:225px;border-radius:50%;background:radial-gradient(circle,#fff4cb 0%,#f6eaf650 58%,transparent 70%);top:26px}.party-confetti{position:absolute;left:var(--confetti-x);top:0;width:6px;height:10px;border-radius:2px;background:var(--confetti-color);opacity:0;z-index:2;pointer-events:none}.result-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.result-stats>div{background:#fff9;border:1px solid #eee7f3;border-radius:13px;padding:11px 6px;min-height:67px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px}.result-stats small{font-size:10px;color:#947aa6}.result-stats strong{font-size:21px;color:#9d85b5;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:1px}#result-lives{display:flex;align-items:center;gap:5px}#result-lives>span{display:block;width:22px;height:25px}.result-reward{font-size:12px!important;color:#92774f;line-height:1.8!important;margin:14px 0 16px}.result-modal .modal-primary{background:#8864a7;box-shadow:0 4px 12px #ad8ac326}
@keyframes board-enter{0%{opacity:0;transform:translateY(12px) scale(.88)}70%{opacity:1}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes banner-pop{from{opacity:0;transform:translateY(12px) scale(.9)}to{opacity:1;transform:none}}
@keyframes party-hop{0%,100%{transform:translateY(0) scale(1)}15%{transform:translateY(2px) scale(1.03,.97)}38%{transform:translateY(-13px) scale(.98,1.02) rotate(-3deg)}58%{transform:translateY(-3px) rotate(3deg)}72%{transform:translateY(2px) scale(1.02,.98)}}
@keyframes star-lift{0%,100%{translate:0 0;rotate:-5deg}45%{translate:0 -9px;rotate:6deg}}
@keyframes party-wave{0%,100%{rotate:0deg}45%{rotate:-9deg}70%{rotate:5deg}}
@keyframes party-shadow{0%,100%{opacity:.22;transform:scaleX(1)}40%{opacity:.12;transform:scaleX(.8)}}
@keyframes party-twinkle{0%,100%{opacity:.3}50%{opacity:1}}
@keyframes confetti-fall{0%{opacity:0;transform:translateY(-15px) rotate(0)}15%,75%{opacity:.8}100%{opacity:0;transform:translateY(250px) rotate(var(--confetti-turn))}}
@keyframes sign-light{0%{transform:scale(.6);opacity:.2}45%{transform:scale(1.15);opacity:1}70%{transform:scale(.96)}100%{transform:scale(1);opacity:1}}
@keyframes item-use{50%{transform:scale(.95);border-color:#b4d3c2;background:#f0faf6}}
@keyframes energy-pulse{50%{transform:scale(1.1)}}@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}
html.rabbit-animations .board.entering .cell{animation:board-enter .4s cubic-bezier(.2,.8,.3,1) both!important;animation-delay:var(--enter-delay)!important}
html.rabbit-animations .celebration-banner{animation:banner-pop .3s ease-out both!important}
html.rabbit-animations .party-mascot{transform-origin:110px 210px;animation:party-hop 2.3s ease-in-out infinite!important}html.rabbit-animations .party-star{transform-origin:22px 32px;animation:star-lift 2.3s ease-in-out infinite!important}html.rabbit-animations .party-left-arm{transform-origin:74px 139px;animation:party-wave 2.3s ease-in-out infinite!important}html.rabbit-animations .party-right-arm{transform-origin:163px 142px;animation:party-wave 2.3s ease-in-out infinite reverse!important}html.rabbit-animations .party-shadow{transform-origin:center;animation:party-shadow 2.3s ease-in-out infinite!important}html.rabbit-animations .party-twinkles{animation:party-twinkle 1.8s ease-in-out infinite!important}html.rabbit-animations .party-confetti{animation:confetti-fall 2.6s linear infinite!important;animation-delay:var(--confetti-delay)!important}
html.rabbit-animations .sign-hero.just-signed .health-icon{animation:sign-light .9s cubic-bezier(.2,.8,.3,1) both!important}html.rabbit-animations .sign-hero.just-signed .sign-spark{animation:party-twinkle .9s 2!important}html.rabbit-animations .items button.item-used{animation:item-use .38s ease-out!important}html.rabbit-animations .cell.invalid{animation:shake .24s 2!important}html.rabbit-animations .energy-pulse{animation:energy-pulse .45s!important}
html.rabbit-animations .rabbit-sprite .bunny-body{animation:bunny-breathe 5.7s ease-in-out infinite!important;animation-delay:var(--rabbit-phase,0s)!important}html.rabbit-animations .rabbit-sprite .eyes{animation:bunny-blink 5.3s linear infinite!important;animation-delay:var(--rabbit-phase,0s)!important}html.rabbit-animations .rabbit-sprite.arriving{animation:bunny-arrive .5s cubic-bezier(.24,.8,.3,1) both!important}html.rabbit-animations .rabbit-sprite.happy .bunny-body{animation:bunny-happy 1.6s ease-in-out infinite!important;animation-delay:var(--rabbit-phase,0s)!important}
html.rabbit-still *,html.rabbit-still .rabbit-sprite *{animation:none!important;transition:none!important}html.paused *{animation-play-state:paused!important}
@media(min-width:700px){.game-shell{margin:20px auto;background:#fffafa;border-radius:28px;box-shadow:0 20px 70px #9e80b50b;padding:25px 28px 20px}}
@media(max-width:350px){.game-shell{padding-left:14px;padding-right:14px}.game-header{grid-template-columns:36px minmax(0,1fr) auto;gap:7px}.brand-mark{width:36px;height:36px}.header-actions{gap:5px}.header-actions .icon-button{width:34px;height:34px;border-radius:11px}h1{font-size:21px}.items{gap:6px}.items button{font-size:10px}.items-heading small{font-size:9px}.season-calendar{gap:3px}.result-modal{padding-left:18px;padding-right:18px}}
@media(max-height:740px){.game-shell{padding-top:max(12px,env(safe-area-inset-top))}.game-header{margin-bottom:12px}.status-strip{margin-bottom:8px}.tools{margin:6px 0}.items button{min-height:69px}.message{min-height:25px}.result-stage{height:220px}.party-art{width:205px;height:224px}.result-modal{padding-top:23px;padding-bottom:18px}.result-modal h2{font-size:25px}.party-halo{width:200px;height:200px;top:10px}.sign-hero{margin:14px 0}.sign-orb{height:112px;width:134px}.sign-run{font-size:33px}}
@media(prefers-reduced-motion:reduce){html:not(.rabbit-force-motion) *{animation:none!important;transition:none!important}}
html.rabbit-animations .rank-avatar .rabbit-sprite,html.rabbit-animations .rank-avatar .rabbit-sprite *{animation:none!important}
.result-stage{height:245px;pointer-events:none}.result-stage .party-art{width:235px;height:220px}.result-stage .party-halo{width:240px;height:220px;top:15px;background:radial-gradient(ellipse,#fff4d270,transparent 70%)}
.orbit-plane{position:absolute;left:50%;top:53%;width:min(var(--orbit-size),calc(100% - 48px));aspect-ratio:1;height:auto;transform:translate(-50%,-50%) rotate(var(--orbit-tilt)) scaleY(var(--orbit-flat));z-index:2}.orbit-drift,.orbit-track{position:absolute;inset:0}.orbit-track{transform:rotate(var(--orbit-angle))}.orbit-counter{position:absolute;left:calc(50% - 17px);top:-20px;width:34px;height:40px;transform:rotate(calc(-1 * var(--orbit-angle)))}.orbit-upright{display:block;width:100%;height:100%;transform:scaleY(var(--orbit-unflatten)) rotate(calc(-1 * var(--orbit-tilt)))}.orbit-depth-icon{display:block;width:100%;height:100%;filter:drop-shadow(0 3px 4px #bb965720)}
@keyframes orbit-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes orbit-counterspin{from{transform:rotate(0deg)}to{transform:rotate(-360deg)}}
@keyframes orbit-depth{0%,24.99%{z-index:0}25%,74.99%{z-index:2}75%,100%{z-index:0}}
@keyframes star-depth{0%,100%{transform:scale(.82);opacity:.8}50%{transform:scale(1);opacity:1}}
@keyframes bobo-celebrate{0%,100%{transform:translateY(2px) rotate(-1.5deg) scale(1.01,.99)}25%{transform:translateY(-9px) rotate(1.8deg) scale(.99,1.02)}50%{transform:translateY(1px) rotate(-1.3deg) scale(1.01,.99)}75%{transform:translateY(-7px) rotate(1.4deg) scale(.99,1.02)}}
@keyframes party-blink{0%,89%,95%,100%{transform:scaleY(1)}92%{transform:scaleY(.08)}}
@keyframes party-foot{0%,50%,100%{transform:rotate(0)}25%{transform:rotate(-7deg)}75%{transform:rotate(5deg)}}
@keyframes party-smile{0%,50%,100%{transform:scale(1)}25%,75%{transform:scale(1.04,1.08)}}
@keyframes orbit-drift{0%,100%{transform:translate(0,0)}33%{transform:translate(3px,-4px)}67%{transform:translate(-2px,3px)}}
html.rabbit-animations .result-stage .party-mascot{animation:bobo-celebrate 4.8s ease-in-out infinite!important}html.rabbit-animations .result-stage .party-shadow{animation:party-shadow 2.4s ease-in-out infinite!important}
.party-eyes,.party-smile,.party-foot-left,.party-foot-right{transform-box:fill-box;transform-origin:center}
html.rabbit-animations .result-stage .party-eyes{animation:party-blink 4.9s ease-in-out infinite!important}html.rabbit-animations .result-stage .party-smile{animation:party-smile 4.8s ease-in-out infinite!important}html.rabbit-animations .result-stage .party-foot-left{animation:party-foot 4.8s ease-in-out infinite!important}html.rabbit-animations .result-stage .party-foot-right{animation:party-foot 4.8s ease-in-out infinite reverse!important}
html.rabbit-animations .orbit-plane{animation:orbit-depth var(--orbit-duration) steps(1,end) infinite!important;animation-delay:var(--depth-phase)!important;animation-direction:var(--orbit-direction)!important}html.rabbit-animations .orbit-track{animation:orbit-spin var(--orbit-duration) linear infinite!important;animation-delay:var(--orbit-phase)!important;animation-direction:var(--orbit-direction)!important}html.rabbit-animations .orbit-counter{animation:orbit-counterspin var(--orbit-duration) linear infinite!important;animation-delay:var(--orbit-phase)!important;animation-direction:var(--orbit-direction)!important}html.rabbit-animations .orbit-depth-icon{animation:star-depth var(--orbit-duration) ease-in-out infinite!important;animation-delay:var(--depth-phase)!important;animation-direction:var(--orbit-direction)!important}html.rabbit-animations .orbit-drift{animation:orbit-drift var(--drift-duration) ease-in-out infinite!important;animation-delay:var(--orbit-phase)!important}
@media(max-height:740px){.result-stage{height:215px}.result-stage .party-art{width:210px;height:195px}.orbit-counter{width:30px;height:36px;left:calc(50% - 15px);top:-18px}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.game-header{margin-bottom:14px}.game-heading h1{margin:0}.status-strip{margin-bottom:14px}.puzzle-label{min-height:0;margin:0}.puzzle-label:has(#trial-note:not([hidden])){min-height:27px;margin-bottom:8px;justify-content:flex-end}
.tools{justify-content:flex-start;gap:13px;margin:9px 0 10px}.tools button{min-height:36px;padding:3px 5px}.tools .coin-wallet{margin-left:auto;display:flex;align-items:center;gap:5px;color:#ad8d60;font-size:12px}.coin-wallet>span:first-child{display:block;width:23px;height:28px}.coin-wallet .carrot-icon{width:100%;height:100%}.tools .coin-wallet>span:last-child{font-size:12px;font-variant-numeric:tabular-nums}
.items button{min-height:60px;padding:10px 2px}.items .item-icon{width:34px;height:34px}.items b{right:6px;top:5px}.message{min-height:0;margin:10px 3px 3px}.message:empty{display:none}.bottom-nav{border:0;justify-content:space-between;padding:9px 3px 0;margin-top:8px}.bottom-nav button{color:#9c87ae;font-size:12px}.nav-season{gap:6px!important}.nav-season small{font-size:10px;color:#b4a1c4;padding-left:2px}.bottom-nav #shop-button{font-size:11px}.win-panel{background:transparent!important;padding:0;margin:16px 0 8px}.win-panel h2,.win-panel p,.win-panel .win-stars{display:none}.win-panel .next-button{background:#af98ca;color:#fff}
html[data-theme=night] .tools .coin-wallet{color:#d7b781}html[data-theme=night] .nav-season small{color:#ac94c3}html[data-theme=night] .next-button{color:#272033}

.season-entry{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) 10px;align-items:center;gap:10px;margin:0 0 11px;padding:10px 12px;border:1px solid #e8e0f0;border-radius:12px;background:#f1ecf8;color:#847092;text-align:left;font-size:11px}.season-entry>span:first-child{font-weight:600;white-space:nowrap}.season-entry b{color:#c4a273;font-size:13px}.season-entry small{text-align:right;color:#8f7bA2;font-size:10px}.season-arrow{font-size:17px;color:#b4a0c6}
.rank-group{padding:16px;background:#f4eef9;border-radius:14px;text-align:center}.rank-group>strong{display:block;font-size:17px;color:#836498}.local-rank-badge{display:inline-block;margin:8px 0 0;padding:4px 9px;border-radius:7px;background:#fff8;font-size:10px;color:#897498}.rank-group p{font-size:11px!important;color:#8f7bA2;margin:8px 0 0}.rank-self{display:flex;align-items:center;gap:10px;margin:14px 0 16px;border:1px solid #cfe3d7;border-radius:13px;padding:12px 10px;background:#f1f8f4}.rank-self>div{flex:1;min-width:0}.rank-self strong{font-size:14px;color:#60826d}.rank-self small{display:block;margin-top:5px;font-size:10px;color:#63826f}.rank-estimate{text-align:right;font-size:23px;color:#60826d;line-height:1}.rank-estimate small{font-size:9px;font-weight:400}.rank-list-head{display:flex;align-items:center;justify-content:space-between;margin:0 2px 9px;color:#847092;font-size:12px}.rank-list-head small{font-size:10px;color:#9b87ad}.rank-list{list-style:none;padding:0;max-height:265px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;margin:0 0 14px;border:1px solid #ede5f4;border-radius:13px;background:#fff}.rank-list .rank-row{display:grid;grid-template-columns:20px 30px minmax(0,1fr) 29px 49px;gap:7px;align-items:center;min-height:59px;padding:10px 9px;border-bottom:1px solid #f1ebf6;margin:0;font-size:12px}.rank-row:last-child{border:0}.rank-row.is-you{background:#eef7f1}.rank-row.is-top{background:#fdf8ed}.rank-number{text-align:center;font-size:13px;font-weight:600;color:#8b71a0}.is-top .rank-number{color:#b39968}.rank-avatar{display:block;width:31px;height:33px;flex-shrink:0}.rank-avatar svg{display:block;width:100%;height:100%}.rank-avatar .rabbit-sprite,.rank-avatar .rabbit-sprite *{animation:none!important}.rank-name{min-width:0}.rank-name strong{font-size:12px;font-weight:600;white-space:nowrap}.rank-name small{display:block;margin-top:3px;font-size:9px;color:#8e76a0}.rank-score,.rank-bonus{text-align:right;font-variant-numeric:tabular-nums}.rank-score{color:#947aa9}.rank-bonus{color:#95754d;font-size:12px}.rank-score small,.rank-bonus small{display:block;font-size:8px;line-height:1.4;margin-top:3px;color:#8c74a0}.rank-bonus small{color:#957c58}.rank-rewards{border-radius:12px;background:#fcf8ef;padding:12px;color:#957c58}.rank-rewards strong{font-size:12px;color:#9f835b}.rank-rewards p{font-size:11px!important;line-height:1.8;margin:6px 0}.rank-rewards>small{display:block;font-size:10px;line-height:1.8;color:#957c58}
.profile-button{width:44px;height:44px;border:0;background:transparent;padding:0;display:grid;place-items:center}.profile-button>span{width:44px;height:44px}.avatar-frame{position:relative;display:grid;place-items:center;width:100%;height:100%;border:2px solid #ddd1e7;border-radius:13px;background:#fffaf8;padding:2px}.avatar-frame svg{width:100%;height:100%;display:block}.frame-mint{border-color:#9ecbb6;background:#f0faf4}.frame-petal{border-color:#e0b0c3;background:#fff3f8}.frame-crown{border-color:#e6c27f;background:#fffae9}.frame-aurora{border:3px solid transparent;background:linear-gradient(#faf6ff,#faf6ff) padding-box,linear-gradient(135deg,#c49cdd,#addac7,#e6c781) border-box}.frame-mint:after,.frame-petal:after,.frame-crown:after,.frame-aurora:after{position:absolute;right:-4px;bottom:-5px;font-size:13px;line-height:1;color:#89b49c;content:'✦';text-shadow:0 1px #fff}.frame-petal:after{content:'✿';color:#cd94b0}.frame-crown:after{content:'✦';color:#d8ae63;top:-8px;bottom:auto;left:0;right:0;text-align:center;font-size:17px}.frame-aurora:after{color:#ae88cb}.profile-hero{text-align:center;margin:5px 0 19px}.profile-hero>span{display:block;width:86px;height:86px;margin:0 auto 13px}.profile-hero strong,.profile-hero small{display:block}.profile-hero strong{font-size:18px;color:#89729e}.profile-hero small{font-size:11px;color:#aa94bc;margin-top:4px}.avatar-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.avatar-choice{display:flex;flex-direction:column;align-items:center;gap:5px;border:1px solid #ebe3f2;background:#f9f6fc;border-radius:13px;padding:8px 3px;min-width:0}.avatar-choice>span{width:53px;height:53px;max-width:100%;display:block}.avatar-choice svg{width:100%;height:100%}.avatar-choice small{font-size:11px;color:#9278a6}.avatar-choice.selected{border:2px solid #c2abd8;padding:7px 2px;background:#f2eaf9}.frame-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.frame-choice{display:flex;flex-direction:column;align-items:center;gap:7px;border:1px solid #eee6f4;background:#faf7fc;border-radius:13px;padding:12px 5px;font-size:11px}.frame-choice>span{display:block;width:49px;height:49px}.frame-choice strong{font-size:11px;font-weight:500;color:#937aaa}.frame-choice small{font-size:9px;line-height:1.5;color:#ae9cbd}.frame-choice.selected{border:2px solid #c2abd8;background:#f2eaf9;padding:11px 4px}.frame-choice:disabled{opacity:.6}.sign-heading>small{font-size:11px;color:#ae9cbd;margin-left:6px}.rank-frame-prizes{margin:12px 0;background:#f4eef9;padding:12px;border-radius:12px;color:#8e73a4}.rank-frame-prizes strong{font-size:12px}.rank-frame-prizes p{font-size:11px!important;margin:5px 0 0}.theme-fieldset{border:0;margin:0 0 19px;padding:0}.theme-fieldset legend{font-size:14px;color:#8a6e9f;margin-bottom:10px}.theme-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.theme-choice{display:flex;align-items:center;flex-direction:column;gap:7px;border:1px solid #eee5f5;border-radius:12px;background:transparent;padding:9px 3px;font-size:11px;color:#947ca8}.theme-choice>span{width:29px;height:29px;border-radius:50%;background:#f1e9f8;border:2px solid #dfd0ec}.theme-choice.theme-mint>span{background:#d9eee1;border-color:#b6d4c1}.theme-choice.theme-warm>span{background:#f6e8ce;border-color:#e7cfa8}.theme-choice.theme-night>span{background:#302b42;border-color:#776488}.theme-choice[aria-pressed=true]{border:2px solid #c2abd8;padding:8px 2px;background:#f5eefb}
:root{--page-background:#f8f6fc;--shell-background:#fffafa}body{background:var(--page-background)}
html[data-theme=mint]{--page-background:#eff7f2;--shell-background:#f9fefb}html[data-theme=warm]{--page-background:#fbf3e8;--shell-background:#fffbf3}
@media(min-width:700px){.game-shell{background:var(--shell-background)}}
html[data-theme=night]{color-scheme:dark;--page-background:#1e1b29;--shell-background:#272232;--ink:#e5dbef;--muted:#b5a4c6;--line:#443950;--blue:#b49bcf}
html[data-theme=night] .icon-button,html[data-theme=night] .status-strip>span{background:#302a3d;border-color:#443950;color:#d3c1e4}html[data-theme=night] .eyebrow,html[data-theme=night] .starter-note,html[data-theme=night] .puzzle-label,html[data-theme=night] #timer{color:#b5a4c6}html[data-theme=night] .board-wrap{background:#342c44}html[data-theme=night] .tools button,html[data-theme=night] .items-shop-button,html[data-theme=night] .items-heading small,html[data-theme=night] .message{color:#bba8ce}html[data-theme=night] .items button{background:#302a3d;border-color:#443950;color:#d0bcE2}html[data-theme=night] .items b{background:#4b3c5d;color:#dfc7ef}html[data-theme=night] .items button.unavailable{background:#292332;color:#a293b1}html[data-theme=night] .season-entry{background:#332c44;border-color:#4d3e61;color:#c9b0df}html[data-theme=night] .season-entry small{color:#b5a0c9}html[data-theme=night] .bottom-nav button,html[data-theme=night] .progress-note{color:#b6a3cb}html[data-theme=night] .app-name,html[data-theme=night] .prototype{color:#9986ad}html[data-theme=night] dialog{background:#292333;border-color:#4a3b58;color:#e5dbef}html[data-theme=night] .modal-primary,html[data-theme=night] .next-button{background:#b49bcf;color:#282031}html[data-theme=night] .modal-secondary{background:#382d47;border-color:#4a3b58;color:#c6aeda}html[data-theme=night] .modal-note,html[data-theme=night] .setting-row small,html[data-theme=night] .volume-row{color:#b8a2cb}html[data-theme=night] .setting-row input{background:#534461}html[data-theme=night] .setting-row input:checked{background:#b39acc}html[data-theme=night] .sign-heading,html[data-theme=night] .theme-fieldset legend,html[data-theme=night] .theme-choice,html[data-theme=night] .sign-instruction,html[data-theme=night] .sign-caption{color:#c0a6d5}html[data-theme=night] .theme-choice,html[data-theme=night] .avatar-choice,html[data-theme=night] .frame-choice{background:#342b43;border-color:#4e3d61}html[data-theme=night] .theme-choice[aria-pressed=true],html[data-theme=night] .avatar-choice.selected,html[data-theme=night] .frame-choice.selected{background:#483456;border-color:#b49bcf}html[data-theme=night] .avatar-choice small,html[data-theme=night] .frame-choice strong,html[data-theme=night] .frame-choice small,html[data-theme=night] .profile-hero strong,html[data-theme=night] .profile-hero small{color:#c5a9d9}html[data-theme=night] .sign-record,html[data-theme=night] .season-day{background:#3a2e48;color:#baa2cf}html[data-theme=night] .season-day.claimed,html[data-theme=night] .reward-result{background:#283c33;color:#a7ccb7}html[data-theme=night] .sign-run,html[data-theme=night] .sign-week-title strong,html[data-theme=night] .sign-week-title small{color:#c2a4d8}html[data-theme=night] .rank-group,html[data-theme=night] .rank-frame-prizes{background:#3b2d49;color:#c8abdE}html[data-theme=night] .rank-group strong,html[data-theme=night] .rank-group p,html[data-theme=night] .rank-list-head,html[data-theme=night] .rank-list-head small{color:#c5a9da}html[data-theme=night] .local-rank-badge{background:#453453;color:#c8abdf}html[data-theme=night] .rank-list{background:#2d2538;border-color:#4d3c5c}html[data-theme=night] .rank-row{border-color:#43344f}html[data-theme=night] .rank-row.is-top,html[data-theme=night] .rank-rewards{background:#3d322b;color:#d2b48b}html[data-theme=night] .rank-rewards strong,html[data-theme=night] .rank-rewards small,html[data-theme=night] .rank-bonus,html[data-theme=night] .rank-bonus small{color:#d2b48b}html[data-theme=night] .rank-self,html[data-theme=night] .rank-row.is-you{background:#283d35;border-color:#426052}html[data-theme=night] .rank-self strong,html[data-theme=night] .rank-self small,html[data-theme=night] .rank-estimate{color:#a7ccb7}html[data-theme=night] .rank-name small,html[data-theme=night] .rank-number,html[data-theme=night] .rank-score,html[data-theme=night] .rank-score small{color:#c0a4d5}html[data-theme=night] .coin-item{border-color:#4d3b5d}html[data-theme=night] .coin-item.focused{background:#3b322a}html[data-theme=night] .coin-actions button,html[data-theme=night] .item-stock{background:#41304f;color:#c4a2dd}html[data-theme=night] .coin-bundles>div{border-color:#4e3b5f}html[data-theme=night] .coin-item small,html[data-theme=night] .coin-bundles small{color:#b89bcc}html[data-theme=night] .result-modal{background:linear-gradient(145deg,#32253e,#2b2532 60%,#24362f)}html[data-theme=night] .result-modal h2,html[data-theme=night] #result-subtitle,html[data-theme=night] .result-kicker{color:#c4a4dd}html[data-theme=night] .result-stats>div{background:#362b43;border-color:#4d3a61}html[data-theme=night] .result-stats strong,html[data-theme=night] .result-stats small{color:#c3a5d7}html[data-theme=night] .result-reward{color:#dec192}html[data-theme=night] .party-halo{opacity:.4}html[data-theme=night] .win-panel{background:#382a46}html[data-theme=night] .win-panel p{color:#c0a0d7}

.orbit-plane{width:34px;height:40px;aspect-ratio:auto;transform:translate(-50%,-50%);opacity:0;will-change:transform}.orbit-depth-icon{transform:none}
html.rabbit-animations .result-stage .orbit-plane,html.rabbit-animations .result-stage .orbit-depth-icon{animation:none!important}
@keyframes bobo-jump{0%,100%{transform:translateY(3px) rotate(-3deg) scale(1.035,.965)}22%{transform:translateY(-22px) rotate(4deg) scale(.98,1.025)}43%{transform:translateY(2px) rotate(-2deg) scale(1.04,.96)}67%{transform:translateY(-16px) rotate(2.5deg) scale(.99,1.02)}88%{transform:translateY(-3px) rotate(-1deg) scale(1)}}
@keyframes bobo-smile{0%,43%,100%{transform:scale(1,.9)}22%,67%{transform:translateY(-1px) scale(1.09,1.16)}88%{transform:scale(1.03,1.04)}}
@keyframes bobo-look{0%,100%{transform:translate(0,0)}24%{transform:translate(-1.5px,-.5px)}48%{transform:translate(.5px,.4px)}72%{transform:translate(1.5px,-.4px)}}
@keyframes bobo-wink{0%,49%,58%,100%{transform:scaleY(1)}53%,55%{transform:scaleY(.13)}}
@keyframes bobo-tongue{0%,43%,100%{transform:translateY(1px) scaleX(.95)}22%,67%{transform:translateY(-1px) scaleX(1.05)}}
.party-eye-left,.party-eye-right,.party-tongue{transform-box:fill-box;transform-origin:center}
html.rabbit-animations .result-stage .party-mascot{animation:bobo-jump 3.8s ease-in-out infinite!important}html.rabbit-animations .result-stage .party-shadow{animation:party-shadow 1.9s ease-in-out infinite!important}html.rabbit-animations .result-stage .party-smile{animation:bobo-smile 3.8s ease-in-out infinite!important}html.rabbit-animations .result-stage .party-gaze{animation:bobo-look 5.8s ease-in-out infinite!important}html.rabbit-animations .result-stage .party-eye-right{animation:bobo-wink 7.3s ease-in-out infinite!important}html.rabbit-animations .result-stage .party-tongue{animation:bobo-tongue 3.8s ease-in-out infinite!important}
@keyframes soft-confetti{0%{opacity:0;transform:translate(0,-16px) rotate(0)}12%,78%{opacity:.7}100%{opacity:0;transform:translate(var(--confetti-drift),270px) rotate(var(--confetti-turn))}}
html.rabbit-animations .result-stage .party-confetti{animation:soft-confetti var(--confetti-duration) linear infinite!important;animation-delay:var(--confetti-delay)!important;z-index:3;background:var(--confetti-color)}html.rabbit-still .party-confetti{display:none}
.result-rank{margin:5px 0 12px;padding:9px 10px;background:#eaf5efb0;border:1px solid #dbeee2;border-radius:13px;color:#58806b}.result-rank>small{display:block;font-size:11px;margin-bottom:5px}.rank-transition{display:flex;justify-content:center;align-items:center;gap:13px;font-size:12px}.rank-before{color:#7d9588}.rank-after{font-size:18px;font-weight:700;display:inline-block}.rank-arrow{font-size:18px}
@keyframes rank-rise{0%{opacity:0;transform:translateY(17px) scale(.92)}60%{opacity:1;transform:translateY(-3px) scale(1.06)}100%{opacity:1;transform:none}}@keyframes rank-glow{0%,100%{box-shadow:0 0 0 0 #a9d4ba00}50%{box-shadow:0 0 0 5px #a9d4ba30}}
html.rabbit-animations .rank-gained .rank-after{animation:rank-rise .8s cubic-bezier(.2,.7,.3,1) both!important}html.rabbit-animations .rank-gained{animation:rank-glow 1.2s 2!important}
.item-effects{position:fixed;inset:0;pointer-events:none;z-index:20}.item-flight{position:absolute;width:34px;height:38px;display:block;transform:translate(-50%,-50%);filter:drop-shadow(0 3px 6px #a390b34a)}.item-flight svg{width:100%;height:100%}.item-ring{position:absolute;border:3px solid #a7d4be;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 12px #fff4bf88}
@keyframes item-flight{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}12%{opacity:1}55%{opacity:1;transform:translate(calc(-50% + var(--flight-mid-x)),calc(-50% + var(--flight-mid-y))) scale(1.12) rotate(-8deg)}85%{opacity:1;transform:translate(calc(-50% + var(--flight-x)),calc(-50% + var(--flight-y))) scale(1.2)}100%{opacity:0;transform:translate(calc(-50% + var(--flight-x)),calc(-50% + var(--flight-y))) scale(.6)}}
@keyframes item-ring{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}30%{opacity:.85}100%{opacity:0;transform:translate(-50%,-50%) scale(1.45)}}
html.rabbit-animations .item-flight{animation:item-flight .7s cubic-bezier(.25,.6,.3,1) both!important}html.rabbit-animations .item-ring{animation:item-ring .75s ease-out both!important;animation-delay:var(--effect-delay)!important}
html[data-theme=night] .result-rank{background:#293d34;border-color:#416253;color:#b5dfc5}html[data-theme=night] .rank-before{color:#8cb29c}
.result-modal{max-height:calc(100dvh - 28px)}
@media(max-height:740px){.result-stage{height:190px}.result-stage .party-art{width:210px;height:195px}.result-rank{padding:7px 9px;margin:2px 0 8px}.result-stats>div{min-height:59px;padding:8px 4px}.result-reward{margin:9px 0!important}.result-kicker{margin-top:0}.orbit-plane{width:30px;height:36px}}

.profile-name-editor{margin:0 0 20px;text-align:left}.profile-name-editor>label{display:block;font-size:11px;color:var(--muted);margin-bottom:6px}.profile-name-editor>div{display:flex;gap:7px}.profile-name-editor input{min-width:0;flex:1;border:1px solid var(--line);border-radius:10px;padding:10px;font:inherit;font-size:13px;background:transparent;color:var(--ink)}.profile-name-editor button{border:0;border-radius:10px;background:#ece2f5;color:#856b9c;padding:8px 13px;font-size:12px}
.result-rank{background:transparent!important;border:0!important;padding:0!important;margin:0 0 10px}.rank-panel-heading{display:flex;align-items:center;justify-content:space-between;padding:0 3px;font-size:10px;color:#799586}.rank-panel-heading>span{font-size:11px;font-weight:600;color:#66937b}.rank-lift-window{height:91px;position:relative;overflow:hidden;padding:12px 2px 7px;isolation:isolate}.rank-lift-trail{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 28px,#accfb72b 28px 29px);border-radius:14px;opacity:0}.rank-player-card{position:relative;display:grid;grid-template-columns:43px minmax(0,1fr) 41px 40px;align-items:center;gap:8px;height:72px;padding:10px 11px;border:1px solid #cde4d5;border-radius:15px;background:#f0f8f3;box-shadow:0 4px 12px #75a78c14;text-align:left;z-index:1}.rank-player-avatar{display:block;width:43px;height:43px}.rank-player-name{min-width:0}.rank-player-name>strong{display:block;font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#5a7b68}.rank-player-name>small{display:block;font-size:9px;color:#95ac9e;margin-top:5px}.rank-player-position,.rank-player-points{text-align:center;line-height:1.2}.rank-player-position>small,.rank-player-points>small{font-size:8px;display:block;color:#8ba596}.rank-number-swap{position:relative;display:block;height:25px;line-height:25px;margin-top:3px}.rank-number-swap>b{font-size:20px;font-weight:700;color:#628871}.rank-new-number small{font-size:8px;font-weight:400;padding-left:2px}.rank-old-number{position:absolute;inset:0;display:none;font-variant-numeric:tabular-nums}.rank-player-points>strong{display:block;font-size:17px;font-variant-numeric:tabular-nums;color:#628871;margin-top:3px}.rank-player-points>em{display:block;font-style:normal;font-size:8px;color:#83b196;margin-top:2px}.rank-change-note{text-align:center;font-size:9px;line-height:1.3;color:#8ca497;margin-top:1px}
@keyframes rank-card-lift{0%{opacity:0;transform:translateY(46px) scale(.97)}18%{opacity:1;transform:translateY(31px) scale(.99)}72%{opacity:1;transform:translateY(-5px) scale(1.012)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes rank-old-leaves{0%,35%{opacity:1;transform:translateY(0)}65%,100%{opacity:0;transform:translateY(-19px)}}
@keyframes rank-new-arrives{0%,40%{opacity:0;transform:translateY(19px)}78%{opacity:1;transform:translateY(-2px)}100%{opacity:1;transform:none}}
@keyframes rank-track-moves{0%{opacity:0;transform:translateY(0)}20%,70%{opacity:.8}100%{opacity:0;transform:translateY(46px)}}
@keyframes rank-points-pop{0%,42%{transform:scale(1)}67%{transform:scale(1.12)}100%{transform:scale(1)}}
html.rabbit-animations .result-rank.rank-gained{animation:none!important}html.rabbit-animations .rank-gained .rank-player-card{animation:rank-card-lift 1.65s cubic-bezier(.22,.61,.36,1) both!important}html.rabbit-animations .rank-gained .rank-old-number{display:block;animation:rank-old-leaves 1.65s ease-in-out both!important}html.rabbit-animations .rank-gained .rank-new-number{display:block;animation:rank-new-arrives 1.65s ease-in-out both!important}html.rabbit-animations .rank-gained .rank-lift-trail{animation:rank-track-moves 1.65s ease-out both!important}html.rabbit-animations .rank-gained .rank-player-points>strong{animation:rank-points-pop 1.65s ease-out both!important}
html[data-theme=night] .rank-player-card{background:#2b4036;border-color:#416454;box-shadow:0 4px 12px #141e1940}html[data-theme=night] .rank-player-name>strong,html[data-theme=night] .rank-number-swap>b,html[data-theme=night] .rank-player-points>strong{color:#bbdec8}html[data-theme=night] .rank-panel-heading>span,html[data-theme=night] .rank-player-points>em{color:#a6d2b6}html[data-theme=night] .rank-player-name>small,html[data-theme=night] .rank-player-position>small,html[data-theme=night] .rank-player-points>small,html[data-theme=night] .rank-panel-heading,html[data-theme=night] .rank-change-note{color:#8cb69c}html[data-theme=night] .profile-name-editor button{background:#493451;color:#d5b6e6}
@media(max-width:350px){.rank-player-card{padding:10px 8px;gap:6px;grid-template-columns:39px minmax(0,1fr) 37px 35px}.rank-player-avatar{width:39px;height:39px}.rank-player-name>strong{font-size:11px}}
.rank-first-entry .rank-old-number{font-size:9px;white-space:nowrap}
.cell.marked .symbol{width:70%;height:70%;opacity:1;transform:rotate(-4deg);filter:drop-shadow(0 1px 1px #70528e20)}.cell.marked .mark-icon{display:block;width:100%;height:100%}

/* A shared motion language: press, light, travel, settle, reveal. */
.tap-guide{position:relative;display:block;width:40px;height:47px;filter:drop-shadow(0 2px 2px #5e41621a)}.tap-hand{display:block;width:100%!important;height:100%!important;overflow:visible}.tap-palm{transform-origin:21px 12px}.tap-ring{transform-origin:21px 12px;opacity:0}.tap-dots{position:absolute;display:flex;gap:3px;left:2px;bottom:0}.tap-dots i{display:block;width:4px;height:4px;border-radius:50%;background:#a88cbd}.tutorial-pointer{right:-13px;bottom:-19px;width:38px;height:44px;font-size:inherit;filter:none}.tutorial-gesture{height:46px;margin:12px 0 0;gap:15px}.tutorial-gesture .gesture-result{display:grid;place-items:center;width:30px;height:30px;font-size:24px}.tutorial-gesture .gesture-result svg{width:30px;height:30px}.tutorial-gesture>.tap-guide{width:33px;height:39px}
@keyframes hand-single{0%,15%,65%,100%{transform:translate(3px,5px) rotate(-3deg)}30%,40%{transform:translate(0,0) rotate(0)}}@keyframes hand-double{0%,12%,75%,100%{transform:translate(3px,5px) rotate(-3deg)}23%,28%,45%,50%{transform:translate(0,0) rotate(0)}36%{transform:translate(2px,4px) rotate(-2deg)}}@keyframes tap-wave-one{0%,28%,65%,100%{opacity:0;transform:scale(.45)}35%{opacity:.8;transform:scale(.55)}55%{opacity:0;transform:scale(1.55)}}@keyframes tap-wave-two{0%,45%,80%,100%{opacity:0;transform:scale(.45)}52%{opacity:.8;transform:scale(.55)}72%{opacity:0;transform:scale(1.55)}}
html.rabbit-animations .tutorial-pointer{animation:none}html.rabbit-animations .single-tap .tap-palm{animation:hand-single 2s ease-in-out infinite}html.rabbit-animations .double-tap .tap-palm{animation:hand-double 2s ease-in-out infinite}html.rabbit-animations .tap-ring.first{animation:tap-wave-one 2s ease-out infinite}html.rabbit-animations .double-tap .tap-ring.second{animation:tap-wave-two 2s ease-out infinite}
.checkin-motion-layer{position:fixed;inset:0;pointer-events:none;z-index:8;overflow:visible}.checkin-flight{position:absolute;width:52px;height:56px;filter:drop-shadow(0 3px 7px #e3c77555);will-change:transform}.checkin-flight svg{width:100%;height:100%;display:block}.checkin-spark{position:absolute;width:12px;height:12px}.checkin-spark svg{display:block;width:100%;height:100%}
.checkin-rewards{margin:0 0 14px}.chest-reveal{position:relative;display:grid;place-items:center;height:112px;isolation:isolate}.chest-reveal .reward-chest{position:relative;width:108px;height:108px;z-index:1;overflow:visible}.chest-aura{position:absolute;width:180px;height:105px;background:radial-gradient(ellipse,#f3dca159,transparent 68%);z-index:0}.reward-chest.is-open .chest-lid{transform:translateY(-12px) rotate(-12deg);transform-box:fill-box;transform-origin:3% 95%}.checkin-reward-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.checkin-reward-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px;padding:10px 7px;border:1px solid var(--modal-control-border);border-radius:13px;background:var(--modal-control);text-align:left}.checkin-reward-card>span{grid-column:1/-1;width:35px;height:35px;display:block;margin:0 auto 3px}.checkin-reward-card svg{display:block;width:100%;height:100%}.checkin-reward-card strong{font-size:10px;font-weight:500;color:var(--modal-muted);line-height:1.4}.checkin-reward-card b{font-size:15px;color:var(--modal-accent)}
@keyframes day-settle{0%{transform:translateY(2px) scale(.97);box-shadow:0 0 0 0 #cfdfd600}40%{transform:translateY(-2px) scale(1.035);box-shadow:0 0 0 4px #cfdfd655}100%{transform:none;box-shadow:0 0 0 7px #cfdfd600}}@keyframes lid-open{0%,20%{transform:none}40%{transform:translateY(1px) rotate(2deg)}100%{transform:translateY(-12px) rotate(-12deg)}}@keyframes chest-glow{0%,55%{opacity:0;transform:scale(.6)}100%{opacity:1;transform:scale(1)}}@keyframes prize-arrive{from{opacity:0;transform:translateY(9px) scale(.98)}to{opacity:1;transform:none}}@keyframes chest-sparkle{0%,45%{opacity:0;transform:translateY(8px) scale(.6)}80%,100%{opacity:1;transform:none}}
html.rabbit-animations #modal .sign-hero.just-signed .health-icon,html.rabbit-animations #modal .sign-hero.just-signed .sign-spark{animation:none!important}html.rabbit-animations #modal .sign-hero.just-signed .sign-orb:after{display:none}html.rabbit-animations #modal .season-day.just-claimed{animation:day-settle .5s .78s cubic-bezier(.22,.61,.36,1) both}html.rabbit-animations #modal .season-day.just-claimed .chest-icon{animation:none}html.rabbit-animations .chest-reveal .chest-lid{animation:lid-open .7s .88s cubic-bezier(.22,.61,.36,1) both}html.rabbit-animations .chest-aura{animation:chest-glow .7s .88s ease-out both}html.rabbit-animations .chest-stars{transform-origin:center;animation:chest-sparkle .7s 1.08s ease-out both}html.rabbit-animations .checkin-reward-card{animation:prize-arrive .42s cubic-bezier(.22,.61,.36,1) both;animation-delay:calc(1.36s + var(--reward-order)*.12s)}
html[lang=en] .checkin-reward-card{grid-template-columns:1fr;text-align:center}html[lang=en] .checkin-reward-card strong{min-height:28px}.checkin-rewards+.reward-result{background:transparent;padding:0 5px 8px}html.rabbit-still .tap-ring{opacity:.35}.tutorial-board-cell .tap-guide{pointer-events:none}
.brush-body{transform-origin:30px 35px}.brush-bristles{transform-origin:23px 37px}.star-leaves{transform-origin:22px 15px}.star-eye{transform-box:fill-box;transform-origin:center}.tool-motion-layer{position:fixed;inset:0;pointer-events:none;z-index:25}.tool-traveler,.brush-sweep{position:absolute;display:block;width:48px;height:48px;margin:-24px 0 0 -24px;filter:drop-shadow(0 3px 5px #8c74a329);will-change:transform}.brush-sweep{width:55px;height:55px;margin:-28px 0 0 -28px}.tool-traveler svg,.brush-sweep svg{display:block;width:100%;height:100%}.tool-landing-halo{position:absolute;border-radius:50%;background:radial-gradient(circle,#f3dfa977 0,#c9c1e844 45%,transparent 72%)}.brush-sweep .brush-body{transform:none}.items .item-icon svg{overflow:visible}
@keyframes brush-idle{0%,35%,100%{transform:rotate(0)}43%{transform:rotate(-5deg)}54%{transform:rotate(3deg)}65%{transform:rotate(0)}}@keyframes bristles-idle{0%,43%,75%,100%{transform:scale(1)}52%{transform:scale(1.06,.96)}64%{transform:scale(1)}}@keyframes brush-gleam{0%,40%,77%,100%{opacity:.35}57%{opacity:1}}@keyframes star-idle{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-1.5px) rotate(-2deg)}}@keyframes leaf-idle{0%,100%{transform:rotate(-1deg) scale(1)}50%{transform:rotate(3deg) scale(1.045)}}@keyframes star-blink{0%,83%,89%,100%{transform:scaleY(1)}86%{transform:scaleY(.15)}}
html.rabbit-animations #eliminate-item:not(.unavailable) .brush-body{animation:brush-idle 5.7s -.8s ease-in-out infinite}html.rabbit-animations #eliminate-item:not(.unavailable) .brush-bristles{animation:bristles-idle 5.7s -.8s ease-in-out infinite}html.rabbit-animations #eliminate-item:not(.unavailable) .brush-shine{animation:brush-gleam 5.7s -.8s ease-in-out infinite}html.rabbit-animations #heart-item:not(.unavailable) .health-icon{animation:star-idle 5.7s -1.8s ease-in-out infinite}html.rabbit-animations #heart-item .star-leaves{animation:leaf-idle 5.7s -1.8s ease-in-out infinite}html.rabbit-animations #heart-item .star-eye{animation:star-blink 5.7s -1.8s ease-in-out infinite}
.item-explanation{margin:10px 0 2px;border:1px solid #e7dccb;border-radius:13px;padding:10px 12px;background:#fff9ee;color:#977d59}.item-explanation>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.item-explanation strong{font-size:12px;font-weight:600}.item-explanation button{border:0;background:transparent;color:inherit;font-size:21px;padding:0 3px;line-height:1}.item-explanation>p{font-size:11px;line-height:1.8;margin:5px 0}.item-explanation summary{cursor:pointer;font-size:10px;color:#ab946f}.item-explanation ol{max-height:140px;overflow:auto;padding-left:18px;margin:9px 0 0;font-size:10px;line-height:1.8}.item-explanation li+li{margin-top:5px}html[data-theme=night] .item-explanation{background:#3b3229;border-color:#67523d;color:#dcc19b}html[data-theme=night] .item-explanation summary{color:#c2a377}



.volume-caption{display:flex;justify-content:space-between;align-items:center;gap:12px}.volume-caption output{font-size:12px;font-variant-numeric:tabular-nums;min-width:34px;text-align:right;color:var(--blue);font-weight:600}
:root{--modal-surface:#fdfbff;--modal-border:#e6dcec;--modal-ink:#51465f;--modal-muted:#80698f;--modal-control:#f3edf9;--modal-control-border:#e3d7ed;--modal-accent:#8e72b0;--modal-toggle:#dfd3eb;--modal-toggle-on:#a68bbe}
html[data-theme=mint]{--modal-surface:#f2faf5;--modal-border:#cddfd5;--modal-ink:#355749;--modal-muted:#617e6e;--modal-control:#e5f3e9;--modal-control-border:#c7dfd0;--modal-accent:#3c886b;--modal-toggle:#cde1d4;--modal-toggle-on:#6baf8b}
html[data-theme=warm]{--modal-surface:#fff8ee;--modal-border:#e7d9c4;--modal-ink:#635040;--modal-muted:#8d7764;--modal-control:#f8ecd9;--modal-control-border:#e7d6bc;--modal-accent:#a67745;--modal-toggle:#e8d8c0;--modal-toggle-on:#a98b66}
html[data-theme=night]{--modal-surface:#292333;--modal-border:#4a3b58;--modal-ink:#e5dbef;--modal-muted:#b8a2cb;--modal-control:#382d47;--modal-control-border:#4a3b58;--modal-accent:#c6aeda;--modal-toggle:#534461;--modal-toggle-on:#b39acc}
#modal{background:var(--modal-surface);border-color:var(--modal-border);color:var(--modal-ink);transition:background-color .18s,border-color .18s,color .18s}#modal .modal-head .icon-button,#modal .modal-secondary{background:var(--modal-control);border-color:var(--modal-control-border);color:var(--modal-accent)}#modal .theme-fieldset legend{color:var(--modal-accent)}#modal .theme-choice{background:var(--modal-control);border-color:var(--modal-control-border);color:var(--modal-muted)}#modal .theme-choice[aria-pressed=true]{border-color:var(--modal-accent);box-shadow:0 0 0 1px var(--modal-accent)}#modal .audio-settings{border-color:var(--modal-border)}#modal .setting-row small,#modal .volume-row,#modal .modal-note{color:var(--modal-muted)}#modal .volume-caption output{color:var(--modal-accent)}#modal .setting-row input{background:var(--modal-toggle)}#modal .setting-row input:checked{background:var(--modal-toggle-on)}#modal .volume-row input{accent-color:var(--modal-toggle-on)}


/* A clear invitation to each tenth-level trial. */
.result-modal #result-next.trial-next{display:flex;align-items:center;justify-content:center;gap:14px;padding:12px 16px;border:1px solid #e0be76;background:linear-gradient(120deg,#ffedb8,#f6d486);color:#795727;box-shadow:0 4px 16px #c7a44b22;text-align:left;min-height:74px}
.trial-next-icon{width:40px;height:44px;flex-shrink:0;display:block}.trial-next-icon svg{width:100%;height:100%;display:block}.trial-next-copy{display:flex;flex-direction:column;gap:4px;flex:1}.trial-next-copy small{font-size:11px;font-weight:500;color:#8b6c3c}.trial-next-copy strong{font-size:17px;font-weight:700;letter-spacing:.5px;line-height:1.3}.trial-next-arrow{font-size:30px;color:#ad8647;font-weight:400;line-height:1}
.trial-level #trial-note{background:#f8e8c5;color:#92703b;border:1px solid #ead39e;border-radius:8px;padding:4px 9px;font-size:10px;letter-spacing:.2px}.trial-level .board-wrap{background:#fff7df;box-shadow:0 0 0 2px #dfc27f,0 6px 25px #b3985518}
@keyframes trial-invite{0%,100%{transform:translateY(1px) rotate(-5deg)}50%{transform:translateY(-3px) rotate(5deg)}}html.rabbit-animations .trial-next-icon{animation:trial-invite 3.8s ease-in-out infinite}
html[data-theme=night] .result-modal #result-next.trial-next{background:linear-gradient(120deg,#604c32,#493c2c);border-color:#9b7b49;color:#ffe3a6;box-shadow:0 4px 16px #18120c33}html[data-theme=night] .trial-next-copy small,html[data-theme=night] .trial-next-arrow{color:#ddbb7b}html[data-theme=night] .trial-level #trial-note{background:#453b2b;color:#e3c58b;border-color:#79623c}html[data-theme=night] .trial-level .board-wrap{background:#483d2e;box-shadow:0 0 0 2px #9d804c,0 6px 25px #0d0b0922}
/* Original diagrams keep the rules short and legible. */
.visual-rules figure{margin:0;text-align:center}.visual-rules figcaption{font-size:12px;font-weight:600;line-height:1.4;margin-top:8px;color:var(--modal-ink)}.rule-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.rule-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;padding:4px;border-radius:10px;background:var(--modal-control)}.rule-cell{min-width:0;aspect-ratio:1;border-radius:4px;display:grid;place-items:center;position:relative}.rule-cell svg{width:94%;height:94%;display:block}.rule-grid .rule-cell{opacity:.4}.rule-grid-row .rule-cell:nth-child(-n+4),.rule-grid-column .rule-cell:nth-child(4n+2),.rule-grid-area .area-0{opacity:1;box-shadow:inset 0 0 0 1.5px #fff9}
.rule-neighbor-card{display:flex;align-items:center;justify-content:center;gap:24px;background:var(--modal-control);border-radius:13px;padding:12px;margin-top:17px}.rule-neighbors{width:80px;display:grid;grid-template-columns:repeat(3,1fr);gap:3px}.rule-neighbors .rule-cell{background:#dbcbe8}.rule-neighbors .mark-icon{width:67%;height:67%}.rule-neighbor-card strong{display:block;font-size:14px}.rule-neighbor-card small{display:block;font-size:11px;color:var(--modal-muted);margin-top:5px}
.rule-taps{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:17px 0 14px}.rule-tap-cell{position:relative;width:49px;height:49px;border-radius:12px;background:#f0c1ad;display:block;margin:auto}.rule-tap-cell svg{width:100%;height:100%;display:block}.rule-tap-cell .mark-icon{width:70%;height:70%;position:absolute;inset:15%}.rule-tap-cell b{position:absolute;right:-8px;bottom:-3px;display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:var(--modal-accent);color:var(--modal-surface);font-size:11px;border:2px solid var(--modal-surface)}
.rule-drag{text-align:center;background:var(--modal-control);border-radius:12px;padding:12px}.rule-drag>div{display:flex;justify-content:center;align-items:center;gap:5px;margin-bottom:9px}.rule-drag span{display:block;width:27px;height:27px;background:#bad6c9;border-radius:6px;padding:4px}.rule-drag svg{width:100%;height:100%;display:block}.rule-drag i{font-size:25px;font-style:normal;color:var(--modal-accent);margin-left:5px}.rule-drag strong{font-size:12px;display:block}.rule-drag small{font-size:10px;display:block;color:var(--modal-muted);margin-top:5px}.rule-life{display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px!important;line-height:1.4!important;color:var(--modal-muted);margin:14px 0}.rule-life>span{display:block;width:19px;height:22px}.rule-life svg{display:block;width:100%;height:100%}.rule-quick-notes{display:flex;justify-content:center;flex-wrap:wrap;gap:6px}.rule-quick-notes>span{font-size:10px;border:1px solid var(--modal-control-border);padding:5px 8px;border-radius:7px;color:var(--modal-muted)}.rule-fixed-note{font-size:10px!important;text-align:center;color:var(--modal-muted);margin:12px 0 0;line-height:1.5!important}html[data-theme=night] .rule-neighbors .rule-cell{background:#5c4a72}
/* Fade the halo entirely inside the stage, including shorter phone layouts. */
.result-stage .party-halo{left:0;top:0;width:100%;height:100%;border-radius:0;background:radial-gradient(ellipse 48% 44% at 50% 47%,rgba(255,244,210,.4) 0%,rgba(255,244,210,.22) 40%,rgba(255,244,210,.08) 68%,rgba(255,244,210,0) 100%);pointer-events:none}

/* Visible, unhurried idle gestures, separate from each tool's journey. */
.board-wrap>.board-motion-layer{position:absolute;inset:0;z-index:25}
@keyframes brush-awake{0%,100%{transform:translateY(2px) rotate(-5deg)}35%{transform:translateY(-3px) rotate(7deg)}65%{transform:translateY(-1px) rotate(-2deg)}}
@keyframes bristles-awake{0%,100%{transform:scale(1)}40%{transform:scale(1.13,.92)}70%{transform:scale(.97,1.05)}}
@keyframes star-awake{0%,100%{transform:translateY(2px) rotate(3deg)}50%{transform:translateY(-4px) rotate(-5deg)}}
@keyframes sign-awake{0%,100%{transform:translateY(3px) rotate(-2deg)}50%{transform:translateY(-5px) rotate(3deg)}}
html.rabbit-animations #eliminate-item:not(.unavailable) .brush-body{animation:brush-awake 4.2s -.6s ease-in-out infinite}html.rabbit-animations #eliminate-item:not(.unavailable) .brush-bristles{animation:bristles-awake 4.2s -.6s ease-in-out infinite}html.rabbit-animations #heart-item .health-icon{animation:star-awake 4.1s -1.4s ease-in-out infinite}html.rabbit-animations .sign-hero:not(.just-signed) .sign-orb>.health-icon{animation:sign-awake 3.8s ease-in-out infinite}html.rabbit-animations .sign-orb .star-leaves{animation:leaf-idle 3.8s ease-in-out infinite}html.rabbit-animations .sign-orb .star-eye{animation:star-blink 4.8s ease-in-out infinite}html.rabbit-animations #modal .season-day.just-claimed{animation:day-settle .65s 1.26s cubic-bezier(.22,.61,.36,1) both}
