@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:400;src:url(./vazirmatn-arabic-400-normal-DMZFCm7K.woff2) format("woff2"),url(./vazirmatn-arabic-400-normal-C4W5XURk.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:400;src:url(./vazirmatn-latin-ext-400-normal-BdGhO0lm.woff2) format("woff2"),url(./vazirmatn-latin-ext-400-normal-DPxMaNjI.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:400;src:url(./vazirmatn-latin-400-normal-BT_DHTc7.woff2) format("woff2"),url(./vazirmatn-latin-400-normal-GKyMcI03.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:700;src:url(./vazirmatn-arabic-700-normal-Dge_DOjm.woff2) format("woff2"),url(./vazirmatn-arabic-700-normal-B5nPuCFv.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:700;src:url(./vazirmatn-latin-ext-700-normal-BfoXmNMx.woff2) format("woff2"),url(./vazirmatn-latin-ext-700-normal-DMYLqBto.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:700;src:url(./vazirmatn-latin-700-normal-9BlbvDRV.woff2) format("woff2"),url(./vazirmatn-latin-700-normal-DrB0PBU6.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:800;src:url(./vazirmatn-arabic-800-normal-Bwnt96zj.woff2) format("woff2"),url(./vazirmatn-arabic-800-normal-BH12s3-y.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:800;src:url(./vazirmatn-latin-ext-800-normal-BzH3Tiwu.woff2) format("woff2"),url(./vazirmatn-latin-ext-800-normal-HbVXW2Kv.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:800;src:url(./vazirmatn-latin-800-normal-e0EQwLmk.woff2) format("woff2"),url(./vazirmatn-latin-800-normal-fM8Xz9cI.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:900;src:url(./vazirmatn-arabic-900-normal-BVDx3pOU.woff2) format("woff2"),url(./vazirmatn-arabic-900-normal-DxDkRnCr.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:900;src:url(./vazirmatn-latin-ext-900-normal-DFoB6cWj.woff2) format("woff2"),url(./vazirmatn-latin-ext-900-normal-5ssG3_7O.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:900;src:url(./vazirmatn-latin-900-normal-DUUbkNfs.woff2) format("woff2"),url(./vazirmatn-latin-900-normal-BGmAvq1S.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lalezar;font-style:normal;font-display:swap;font-weight:400;src:url(./lalezar-arabic-400-normal-D6_F3AeY.woff2) format("woff2"),url(./lalezar-arabic-400-normal-BT7j_n2X.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Lalezar;font-style:normal;font-display:swap;font-weight:400;src:url(./lalezar-vietnamese-400-normal-ScipispP.woff2) format("woff2"),url(./lalezar-vietnamese-400-normal-DXhD3tbU.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lalezar;font-style:normal;font-display:swap;font-weight:400;src:url(./lalezar-latin-ext-400-normal-Boaamuqr.woff2) format("woff2"),url(./lalezar-latin-ext-400-normal-Dq4DC2QX.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lalezar;font-style:normal;font-display:swap;font-weight:400;src:url(./lalezar-latin-400-normal-CsH8Qv7g.woff2) format("woff2"),url(./lalezar-latin-400-normal-Bm4W26Zi.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--display: "Lalezar", "Vazirmatn", Tahoma, sans-serif;--body: "Vazirmatn", Tahoma, system-ui, sans-serif;--turq: #19b5c8;--turq-d: #0d7f97;--lapis: #1f4fb8;--lapis-d: #173a8a;--gold: #f5b82e;--gold-d: #c98612;--saffron: #f28a1b;--pom: #d8323c;--pom-d: #a01f28;--cream: #fff6e3;--ink: #18324a;--green: #35c25a;--green-d: #1f8f3d;--purple: #8b4dff;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}html,body{margin:0;height:100%;overflow:hidden;background:#0f6f86;font-family:var(--body);color:var(--ink);overscroll-behavior:none;touch-action:none}#app{position:fixed;inset:0;overflow:hidden;max-width:560px;margin:0 auto}#bg{position:absolute;inset:0;background:url(../assets/bg_home.jpg) center / cover no-repeat,linear-gradient(180deg,#23c3d3,#1690b3 55%,#1f4fb8)}#bg.game{background:url(../assets/bg_game.jpg) center / cover no-repeat,radial-gradient(120% 80% at 50% 40%,#5fc1c6,#2b8f9e 60%,#1c6b80)}#gl{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity .35s}#gl.on{opacity:1}#ui{position:absolute;inset:0;pointer-events:none}#ui>*{pointer-events:auto}#ui>.hand,#ui>.toast,#ui>.float-text,#ui>.banner,#ui>.fly-coin{pointer-events:none}#boot{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;background:linear-gradient(180deg,#23c3d3,#1f4fb8);z-index:50;transition:opacity .4s}#boot.gone{opacity:0;pointer-events:none}.boot-bar{width:58%;height:16px;border-radius:10px;background:#00000040;overflow:hidden;box-shadow:inset 0 2px 4px #0000004d}.boot-bar i{display:block;height:100%;width:8%;border-radius:10px;background:linear-gradient(180deg,#ffe082,var(--gold));transition:width .3s}.logo{display:flex;flex-direction:column;align-items:center}.logo img{width:62%;max-width:300px;filter:drop-shadow(0 8px 10px rgba(0,0,0,.25))}.logo-word{font-family:var(--display);font-size:64px;line-height:1.1;color:#fff;-webkit-text-stroke:3px #0b4f7a;paint-order:stroke fill;text-shadow:0 5px 0 #0b4f7a,0 10px 16px rgba(0,0,0,.35);letter-spacing:0}.logo-word b{color:var(--gold);font-weight:400}.screen{position:absolute;inset:0;display:flex;flex-direction:column}.screen.hidden{display:none}.btn{font-family:var(--display);font-size:26px;color:#fff;border:0;border-radius:18px;padding:12px 22px 14px;cursor:pointer;position:relative;background:linear-gradient(180deg,#ffd35a 0%,var(--gold) 55%,#eaa21b 100%);box-shadow:0 6px 0 var(--gold-d),0 10px 16px #00000040,inset 0 2px #fff9;text-shadow:0 2px 0 rgba(120,70,0,.55);transition:transform .08s;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.btn:active{transform:translateY(4px);box-shadow:0 2px 0 var(--gold-d),0 4px 8px #00000040,inset 0 2px #fff9}.btn.green{background:linear-gradient(180deg,#6ee27f 0%,var(--green) 60%,#2aa84c 100%);box-shadow:0 6px 0 var(--green-d),0 10px 16px #00000040,inset 0 2px #ffffff80;text-shadow:0 2px 0 rgba(0,80,20,.5)}.btn.blue{background:linear-gradient(180deg,#4ed8e6 0%,var(--turq) 60%,#129fb4 100%);box-shadow:0 6px 0 var(--turq-d),0 10px 16px #00000040,inset 0 2px #ffffff80;text-shadow:0 2px 0 rgba(0,60,80,.5)}.btn.red{background:linear-gradient(180deg,#ff6a6f 0%,var(--pom) 60%,#c3242d 100%);box-shadow:0 6px 0 var(--pom-d),0 10px 16px #00000040,inset 0 2px #ffffff73;text-shadow:0 2px 0 rgba(90,0,0,.5)}.btn.ghost{background:#fff3;box-shadow:none;text-shadow:none;color:#fff;font-size:20px}.btn[disabled]{filter:grayscale(.8) brightness(.9);pointer-events:none}.btn img{width:30px;height:30px;object-fit:contain}.pill{display:flex;align-items:center;gap:6px;height:44px;padding:0 14px 0 8px;border-radius:14px;background:linear-gradient(180deg,#8a6cff,#6a4ad8);box-shadow:inset 0 2px #ffffff59,0 4px #4a2fa8;color:#fff;font-family:var(--display);font-size:22px;text-shadow:0 2px 0 rgba(0,0,0,.3);position:relative}.pill.teal{background:linear-gradient(180deg,#2fd0de,#1497b0);box-shadow:inset 0 2px #ffffff59,0 4px #0b6c80}.pill img{width:34px;height:34px;object-fit:contain;margin-inline-start:-14px;filter:drop-shadow(0 2px 2px rgba(0,0,0,.25))}.pill .plus{width:32px;height:32px;border-radius:10px;background:linear-gradient(180deg,#ffd35a,var(--gold));box-shadow:0 3px 0 var(--gold-d),inset 0 1px #fff9;display:grid;place-items:center;font-size:28px;line-height:1;margin-inline-end:-8px;margin-inline-start:4px;cursor:pointer;padding-bottom:3px}.pill small{font-family:var(--body);font-weight:800;font-size:13px;opacity:.95}.icon-btn{width:52px;height:52px;border-radius:16px;border:0;background:linear-gradient(180deg,#8a6cff,#6a4ad8);box-shadow:inset 0 2px #ffffff59,0 4px #4a2fa8;display:grid;place-items:center;cursor:pointer;padding:0}.icon-btn img{width:38px;height:38px;object-fit:contain}.icon-btn:active{transform:translateY(3px);box-shadow:inset 0 2px #ffffff59,0 1px #4a2fa8}.topbar{display:flex;align-items:center;gap:10px;padding:calc(10px + var(--safe-top)) 12px 8px}.topbar .spacer{flex:1}.avatar{width:56px;height:56px;border-radius:16px;background:linear-gradient(180deg,#8a6cff,#5b3fd0);box-shadow:0 4px #3f2a9a,inset 0 2px #ffffff59;padding:4px}.avatar img{width:100%;height:100%;border-radius:12px;background:#b9e8f0;object-fit:cover}.badge{position:absolute;top:-6px;inset-inline-end:-6px;min-width:26px;height:26px;border-radius:13px;background:var(--pom);color:#fff;font-family:var(--display);font-size:17px;display:grid;place-items:center;padding:0 6px;box-shadow:0 2px 0 var(--pom-d);border:2px solid #fff;line-height:1}.badge.low{top:auto;bottom:-8px}.heart-num{position:relative;width:44px;height:40px;margin-inline-start:-16px;display:grid;place-items:center}.heart-num img{width:46px;height:46px;margin:0;position:absolute}.heart-num b{position:relative;font-weight:400;font-size:22px;color:#fff;-webkit-text-stroke:1.5px #7a0d14;paint-order:stroke fill}.pill.hearts .when{font-size:20px;min-width:44px;text-align:center}.badge.plus{background:var(--green);box-shadow:0 2px 0 var(--green-d);font-size:22px;padding-bottom:2px}.badge.dot{min-width:18px;width:18px;height:18px;padding:0}.home .path{flex:1 1 0;min-height:0;overflow:hidden;position:relative;display:flex;flex-direction:column-reverse;align-items:center;justify-content:flex-start;padding:10px 0 clamp(10px,2.2vh,20px);gap:clamp(8px,2vh,18px)}.home .path:before{content:"";position:absolute;top:0;bottom:70px;width:16px;border-radius:8px;background:linear-gradient(180deg,#ffd25a00,#f5b82e 30%);left:50%;transform:translate(-50%);opacity:.85}.node{position:relative;flex:none;width:clamp(64px,11.5vh,108px);height:clamp(64px,11.5vh,108px);border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-size:clamp(26px,4.6vh,44px);color:#fff;-webkit-text-stroke:2px #6b3d00;paint-order:stroke fill;text-shadow:0 3px 0 rgba(90,50,0,.6);background:radial-gradient(circle at 50% 35%,#ffe27a,#f5b82e 55%,#e09516);box-shadow:0 6px #b87508,0 10px 18px #00000040,inset 0 3px #ffffff8c;border:5px solid #8a5200;transform:scale(var(--s, 1));filter:brightness(var(--b, 1));z-index:1}.node.current{box-shadow:0 6px #b87508,0 0 0 10px #ffffff47,0 0 36px 10px #ffffff73,inset 0 3px #ffffff8c;animation:nodePulse 1.6s ease-in-out infinite}@keyframes nodePulse{50%{transform:scale(calc(var(--s, 1) * 1.06))}}.node.hard{background:radial-gradient(circle at 50% 35%,#ff8a8e,#e23b43 55%,#b51f28);border-color:#6d0d13;box-shadow:0 6px #861219,0 10px 18px #00000040,inset 0 3px #ffffff73;-webkit-text-stroke-color:#5a0a10}.node.super{background:radial-gradient(circle at 50% 35%,#c49aff,#8b4dff 55%,#5d26c4);border-color:#33106f;box-shadow:0 6px #3e168c,0 10px 18px #00000040,inset 0 3px #ffffff73;-webkit-text-stroke-color:#2a0b5e}.node .tag{position:absolute;bottom:-14px;font-family:var(--display);font-size:15px;-webkit-text-stroke:0;text-shadow:none;background:#fff;color:var(--pom);padding:1px 10px 2px;border-radius:10px;box-shadow:0 2px #0003;white-space:nowrap;display:flex;align-items:center;gap:3px}.node .tag img{width:20px;height:20px}.node.super .tag{color:var(--purple)}.node .new{position:absolute;top:-12px;inset-inline-start:-16px;width:52px;height:52px;filter:drop-shadow(0 3px 3px rgba(0,0,0,.3))}.home .side{position:absolute;top:calc(96px + var(--safe-top));display:flex;flex-direction:column;gap:14px}.home .side.start{inset-inline-start:10px}.home .side.end{inset-inline-end:10px}.widget{width:84px;display:flex;flex-direction:column;align-items:center;position:relative;cursor:pointer}.widget .disc{width:76px;height:76px;border-radius:50%;background:radial-gradient(circle at 50% 35%,#ffffff8c,#ffffff26);box-shadow:inset 0 0 0 3px #fff9,0 4px 10px #0003;display:grid;place-items:center}.widget img{width:64px;height:64px;object-fit:contain;filter:drop-shadow(0 3px 3px rgba(0,0,0,.25))}.widget .cap{margin-top:-12px;font-family:var(--display);font-size:15px;color:#fff;background:linear-gradient(180deg,#8a6cff,#6a4ad8);border-radius:10px;padding:1px 10px 3px;box-shadow:0 3px #4a2fa8;white-space:nowrap;position:relative}.widget .cap.gold{background:linear-gradient(180deg,#ffd35a,var(--gold));box-shadow:0 3px 0 var(--gold-d);color:#6b3d00}.widget.locked img{filter:grayscale(1) brightness(1.1) opacity(.75)}.widget .meter{width:70px;height:10px;margin-top:4px;border-radius:6px;background:#00000040;overflow:hidden}.widget .meter i{display:block;height:100%;background:linear-gradient(90deg,#ffe082,var(--gold))}.home .play-wrap{flex:none;display:flex;justify-content:center;padding:6px 0 18px}.node.current{cursor:pointer}.home .navbar,.home .topbar{flex:none}.home .play{font-size:38px;min-width:62%;padding:14px 30px 18px;border-radius:24px}.navbar{display:flex;align-items:stretch;justify-content:space-around;background:#1e2c46eb;padding:8px 10px calc(8px + var(--safe-bottom));gap:8px}.navbar button{flex:1;border:0;background:transparent;display:grid;place-items:center;padding:4px;border-radius:16px;cursor:pointer;position:relative}.navbar button img{width:56px;height:56px;object-fit:contain}.navbar button.on{background:linear-gradient(180deg,#c26bff,#9a3df0);box-shadow:0 -6px #b25cff inset,0 4px #6d22b5;margin-top:-16px}.hud .topbar{gap:8px}.level-pill{flex:1;height:46px;border-radius:14px;background:linear-gradient(180deg,#8a6cff,#6a4ad8);box-shadow:inset 0 2px #ffffff59,0 4px #4a2fa8;color:#fff;font-family:var(--display);font-size:24px;display:flex;align-items:center;justify-content:center;gap:8px;text-shadow:0 2px 0 rgba(0,0,0,.3)}.level-pill.hard{background:linear-gradient(180deg,#ff6a6f,var(--pom));box-shadow:inset 0 2px #ffffff59,0 4px 0 var(--pom-d)}.level-pill.super{background:linear-gradient(180deg,#b98aff,#7a3ff0);box-shadow:inset 0 2px #ffffff59,0 4px #4b1fa6}.level-pill img{width:30px;height:30px}.powers{display:flex;justify-content:center;gap:18px;padding:6px 12px 0}.power{width:84px;height:84px;border-radius:20px;border:0;position:relative;background:linear-gradient(180deg,#74e08a,#3fbf5a 60%,#33a84d);box-shadow:0 6px #22803a,0 8px 12px #00000040,inset 0 2px #ffffff80;display:grid;place-items:center;cursor:pointer;padding:0;transition:transform .08s}.power img{width:64px;height:64px;object-fit:contain;filter:drop-shadow(0 3px 2px rgba(0,0,0,.25))}.power:active{transform:translateY(4px)}.power.locked{background:linear-gradient(180deg,#9aa6b4,#7b8796);box-shadow:0 6px #56606c,inset 0 2px #fff6}.power.locked img.main{filter:grayscale(1) opacity(.45)}.power .lock{position:absolute;width:40px;height:40px}.power .lvl{position:absolute;bottom:-10px;font-family:var(--display);font-size:14px;color:#fff;background:#56606c;border-radius:8px;padding:0 8px 2px;white-space:nowrap}.power.aiming{animation:aim .8s ease-in-out infinite;background:linear-gradient(180deg,#ffe07a,var(--gold));box-shadow:0 6px 0 var(--gold-d),0 0 0 6px #ffffff80}@keyframes aim{50%{transform:scale(1.07)}}.aim-hint{margin:10px auto 0;background:#141e32bf;color:#fff;font-weight:800;font-size:16px;border-radius:14px;padding:6px 14px;width:fit-content}.banner{position:absolute;left:0;right:0;top:38%;display:flex;justify-content:center;pointer-events:none;animation:bannerIn 1.9s ease forwards}.banner div{font-family:var(--display);font-size:40px;color:#fff;padding:10px 40px 14px;background:linear-gradient(180deg,#ff6a6f,var(--pom));border-radius:20px;box-shadow:0 6px 0 var(--pom-d),0 12px 30px #00000059;display:flex;align-items:center;gap:10px;text-shadow:0 3px 0 rgba(90,0,0,.5)}.banner.super div{background:linear-gradient(180deg,#b98aff,#7a3ff0);box-shadow:0 6px #4b1fa6,0 12px 30px #00000059}.banner img{width:50px;height:50px}@keyframes bannerIn{0%{transform:scale(.3);opacity:0}14%{transform:scale(1.08);opacity:1}22%,78%{transform:scale(1);opacity:1}to{transform:scale(1.1);opacity:0}}.toast{position:absolute;left:50%;bottom:calc(26% + var(--safe-bottom));transform:translate(-50%);background:#141e32d9;color:#fff;font-weight:800;font-size:16px;padding:9px 18px;border-radius:16px;white-space:nowrap;pointer-events:none;animation:toast 2.6s ease forwards;z-index:40}@keyframes toast{0%{opacity:0;transform:translate(-50%,10px)}10%,85%{opacity:1;transform:translate(-50%)}to{opacity:0}}.hand{position:absolute;width:64px;height:80px;pointer-events:none;z-index:30;transform:translate(-50%,4px);animation:tapHand 1.1s ease-in-out infinite}.hand img{width:100%;height:100%;object-fit:contain;object-position:top center;filter:drop-shadow(0 4px 4px rgba(0,0,0,.35));pointer-events:none}.hand:before{content:"";position:absolute;left:50%;top:-4px;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:50%;border:4px solid rgba(255,255,255,.9);animation:ring 1.1s ease-out infinite}@keyframes tapHand{0%,to{transform:translate(-50%,14px)}50%{transform:translate(-50%,2px) scale(.94)}}@keyframes ring{0%{transform:scale(.3);opacity:1}to{transform:scale(1.6);opacity:0}}.float-text{position:absolute;transform:translate(-50%,-50%);font-family:var(--display);font-size:34px;color:#fff;-webkit-text-stroke:2.5px var(--pom-d);paint-order:stroke fill;text-shadow:0 3px 0 rgba(90,0,0,.45);white-space:nowrap;pointer-events:none;z-index:45;animation:floatUp 1.05s ease-out forwards}@keyframes floatUp{0%{transform:translate(-50%,-30%) scale(.5);opacity:0}15%{transform:translate(-50%,-60%) scale(1.15);opacity:1}30%{transform:translate(-50%,-70%) scale(1)}to{transform:translate(-50%,-190%) scale(1);opacity:0}}.fly-coin{position:absolute;width:38px;height:38px;z-index:80;pointer-events:none;transition:transform .7s cubic-bezier(.5,-.3,.6,1),opacity .2s .6s}.modal-layer{position:absolute;inset:0;display:grid;place-items:center;background:#0814288c;z-index:20;animation:fade .2s ease;padding:16px;backdrop-filter:blur(2px)}@keyframes fade{0%{opacity:0}}.modal{width:min(92vw,420px);max-height:calc(100% - 20px);background:linear-gradient(180deg,#fffaf0,#ffeccc);border-radius:28px;padding:46px 18px 22px;position:relative;box-shadow:0 10px #d9a85a,0 18px 40px #0006;border:4px solid #fff;display:flex;flex-direction:column;align-items:center;gap:12px;animation:pop .32s cubic-bezier(.3,1.5,.6,1);overflow:visible}.modal .scroll{width:100%;overflow-y:auto;max-height:60vh;display:flex;flex-direction:column;gap:10px;padding:4px 2px;touch-action:pan-y}@keyframes pop{0%{transform:scale(.6);opacity:0}}.modal .ribbon{position:absolute;top:-30px;left:50%;transform:translate(-50%);min-width:72%;text-align:center;font-family:var(--display);font-size:32px;color:#fff;padding:8px 26px 12px;border-radius:18px;background:linear-gradient(180deg,#4ed8e6,var(--turq) 60%,#129fb4);box-shadow:0 6px 0 var(--turq-d),0 10px 16px #00000040;text-shadow:0 3px 0 rgba(0,60,80,.5);white-space:nowrap}.modal .ribbon.red{background:linear-gradient(180deg,#ff6a6f,var(--pom));box-shadow:0 6px 0 var(--pom-d),0 10px 16px #00000040}.modal .ribbon.gold{background:linear-gradient(180deg,#ffd35a,var(--gold));box-shadow:0 6px 0 var(--gold-d),0 10px 16px #00000040;text-shadow:0 3px 0 rgba(120,70,0,.5)}.modal .close{position:absolute;top:-14px;inset-inline-start:-10px;width:46px;height:46px;border-radius:50%;border:3px solid #fff;background:linear-gradient(180deg,#ff6a6f,var(--pom));color:#fff;font-size:26px;font-weight:900;box-shadow:0 4px 0 var(--pom-d);cursor:pointer;display:grid;place-items:center;line-height:1;padding-bottom:4px;z-index:2}.modal .art{width:56%;max-width:220px;filter:drop-shadow(0 8px 8px rgba(0,0,0,.18))}.modal .art.small{width:34%}.modal h3{margin:0;font-family:var(--display);font-size:26px;font-weight:400;color:var(--ink)}.modal p{margin:0;text-align:center;font-size:17px;line-height:1.8;font-weight:600;color:#4a5a6c}.modal .row{display:flex;gap:12px;width:100%;justify-content:center;flex-wrap:wrap}.modal .row .btn{flex:1;min-width:40%}.modal .reward{display:flex;align-items:center;gap:8px;font-family:var(--display);font-size:40px;color:var(--gold-d)}.modal .reward img{width:54px;height:54px}.modal .cost img{width:28px;height:28px}.toggle-row{width:100%;display:flex;align-items:center;justify-content:space-between;background:#ffffffb3;border-radius:16px;padding:10px 14px;font-weight:800;font-size:18px}.switch{width:64px;height:34px;border-radius:17px;background:#b8c2cc;position:relative;cursor:pointer;transition:background .2s;flex:none}.switch:after{content:"";position:absolute;top:3px;right:3px;width:28px;height:28px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #00000040;transition:right .2s}.switch.on{background:var(--green)}.switch.on:after{right:33px}.shop-item{width:100%;display:flex;align-items:center;gap:10px;background:#fff;border-radius:18px;padding:10px 12px;box-shadow:0 4px #e6c896;position:relative}.shop-item img.ic{width:56px;height:56px;object-fit:contain}.shop-item .info{flex:1;display:flex;flex-direction:column}.shop-item .info b{font-family:var(--display);font-weight:400;font-size:24px;color:var(--ink)}.shop-item .info span{font-size:13px;font-weight:700;color:#6b7a8c}.shop-item .btn{font-size:18px;padding:8px 12px 10px;border-radius:14px;min-width:112px}.shop-item .tag{position:absolute;top:-10px;inset-inline-start:12px;background:var(--pom);color:#fff;font-size:12px;font-weight:900;padding:2px 10px;border-radius:10px}.section-title{font-family:var(--display);font-size:20px;color:var(--turq-d);align-self:flex-start;margin:6px 4px -2px}.days{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%}.day{background:#fff;border-radius:14px;padding:6px 4px;display:flex;flex-direction:column;align-items:center;font-weight:800;font-size:13px;box-shadow:0 3px #e6c896;opacity:.75}.day img{width:34px;height:34px}.day.today{opacity:1;outline:3px solid var(--gold);transform:scale(1.04)}.day.done{opacity:.45}.day.big{grid-column:span 2}.progress{width:100%;height:20px;border-radius:12px;background:#0000001f;overflow:hidden;position:relative}.progress i{display:block;height:100%;background:linear-gradient(180deg,#ffe082,var(--gold));border-radius:12px;transition:width .8s ease}.progress span{position:absolute;inset:0;display:grid;place-items:center;font-weight:900;font-size:13px;color:#6b3d00}.hearts-big{display:flex;gap:6px;justify-content:center}.hearts-big img{width:44px;height:44px}.hearts-big img.empty{filter:grayscale(1) opacity(.35)}.timer{font-family:var(--display);font-size:30px;color:var(--pom)}@media(max-height:700px){.power{width:72px;height:72px}.power img{width:54px;height:54px}.home .play{font-size:32px}.logo-word{font-size:52px}}
