@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/baloo-2-devanagari-500-normal-Ddzk8H1G.woff2)format("woff2"),url(/assets/baloo-2-devanagari-500-normal-BGpOhOmM.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/baloo-2-vietnamese-500-normal-Cj5RGu3k.woff2)format("woff2"),url(/assets/baloo-2-vietnamese-500-normal-ClyrcyJC.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/baloo-2-latin-ext-500-normal-Ba7mhTsk.woff2)format("woff2"),url(/assets/baloo-2-latin-ext-500-normal-D1XZow3C.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:"Baloo 2";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/baloo-2-latin-500-normal-CmLZ27r7.woff2)format("woff2"),url(/assets/baloo-2-latin-500-normal-BSdEhq8m.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/baloo-2-devanagari-600-normal-CuT_xCk5.woff2)format("woff2"),url(/assets/baloo-2-devanagari-600-normal-Cnn1WFYO.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/baloo-2-vietnamese-600-normal-C5EqHgu0.woff2)format("woff2"),url(/assets/baloo-2-vietnamese-600-normal-CGkk4Wtx.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/baloo-2-latin-ext-600-normal-DiVeaYrH.woff2)format("woff2"),url(/assets/baloo-2-latin-ext-600-normal-CFaB2nBN.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:"Baloo 2";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/baloo-2-latin-600-normal-tIfxVoAe.woff2)format("woff2"),url(/assets/baloo-2-latin-600-normal-B4tNaogw.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-devanagari-700-normal-D37Te3iF.woff2)format("woff2"),url(/assets/baloo-2-devanagari-700-normal-CEIF4sJg.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-vietnamese-700-normal-h4tlcePq.woff2)format("woff2"),url(/assets/baloo-2-vietnamese-700-normal-DoF59Mjc.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-latin-ext-700-normal-Mlh7kdab.woff2)format("woff2"),url(/assets/baloo-2-latin-ext-700-normal-D6LeXASg.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-latin-700-normal-CqTg7A15.woff2)format("woff2"),url(/assets/baloo-2-latin-700-normal-Ld3Zm3l2.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/baloo-2-devanagari-800-normal-BURIY0wZ.woff2)format("woff2"),url(/assets/baloo-2-devanagari-800-normal-YLp1oUqR.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/baloo-2-vietnamese-800-normal-ConLnEgt.woff2)format("woff2"),url(/assets/baloo-2-vietnamese-800-normal-GQACmpuv.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/baloo-2-latin-ext-800-normal-C_Iwmf1s.woff2)format("woff2"),url(/assets/baloo-2-latin-ext-800-normal-D-iCxxqE.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/baloo-2-latin-800-normal-BbF3Etk1.woff2)format("woff2"),url(/assets/baloo-2-latin-800-normal-B8BXfZF7.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-cyrillic-ext-400-normal-CuPM9foi.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-400-normal-xaE7D4Sw.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-cyrillic-400-normal-xAOo5cBP.woff2)format("woff2"),url(/assets/nunito-cyrillic-400-normal-D1j0u8EH.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-vietnamese-400-normal-BHkVbP3T.woff2)format("woff2"),url(/assets/nunito-vietnamese-400-normal-DtOtW02z.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-ext-400-normal-i-8OOpdj.woff2)format("woff2"),url(/assets/nunito-latin-ext-400-normal-CjMJVfGn.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-400-normal-r8SDr6Up.woff2)format("woff2"),url(/assets/nunito-latin-400-normal-DKg4f3fz.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-cyrillic-ext-600-normal-CWPPjBOD.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-600-normal-vnfu4DTE.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-cyrillic-600-normal-DJGQ2h05.woff2)format("woff2"),url(/assets/nunito-cyrillic-600-normal-BUjmtIuu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-vietnamese-600-normal-BY8O6Cug.woff2)format("woff2"),url(/assets/nunito-vietnamese-600-normal-DO1RqFw5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-ext-600-normal-Dd9Zuxh1.woff2)format("woff2"),url(/assets/nunito-latin-ext-600-normal-BKUpuB78.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-600-normal-Br8yIETf.woff2)format("woff2"),url(/assets/nunito-latin-600-normal-Cd0eNu1l.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-ext-700-normal-BuR0mlCG.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-700-normal-DfoqN4Gs.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-700-normal-DP36NgGt.woff2)format("woff2"),url(/assets/nunito-cyrillic-700-normal-DfHRUDv-.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-vietnamese-700-normal-Ch8EUCfz.woff2)format("woff2"),url(/assets/nunito-vietnamese-700-normal-C9SQsXvj.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-ext-700-normal-BWeMsAzO.woff2)format("woff2"),url(/assets/nunito-latin-ext-700-normal-D4woHhbd.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(/assets/nunito-latin-700-normal-OcDqTBcA.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-ext-800-normal-B-cvGohL.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-800-normal-pjRatrRO.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-800-normal-D3igD7Kl.woff2)format("woff2"),url(/assets/nunito-cyrillic-800-normal-DymMgApb.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-vietnamese-800-normal-D_CZYdm9.woff2)format("woff2"),url(/assets/nunito-vietnamese-800-normal-Dz0hZPb5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-ext-800-normal-CtU8tJOV.woff2)format("woff2"),url(/assets/nunito-latin-ext-800-normal-CDcxIxx8.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(/assets/nunito-latin-800-normal-D-J0wlBY.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f4eeff;--bg-dot:#895cd629;--bg-grid:#966ed20f;--surface:#fffdff;--surface-2:#f6eefe;--surface-3:#ece0fb;--ink:#34155f;--ink-soft:#6b5090;--ink-mute:#947fb8;--line:#e7d9f7;--edge:#d7c3f0;--accent:#7b3fe4;--accent-deep:#5a24b0;--accent-soft:#ecdcfb;--accent-ink:#fff;--sun:#ffcf33;--sun-deep:#e6a412;--sun-ink:#4a2b08;--teal:#2fc2c2;--glow:#7b3fe447;--danger:#ec4f6b;--danger-soft:#fde0e6;--ok:#2fc27a;--chip:#fff;--chip-ink:#7b3fe4;--grad-classic:linear-gradient(145deg, #efd9ff, #d9b3f7);--grad-classic-edge:#cf9eec;--grad-classic-ink:#4b1a67;--grad-daily:linear-gradient(145deg, #ffe066, #ffc61f);--grad-daily-edge:#e6ab17;--grad-daily-ink:#5a3405;--badge-bg:linear-gradient(160deg, #ffdb4d, #ffc61f);--badge-edge:#e9ab16;--badge-ink:#5a3405;--board-frame:#2fc2c2;--board-bg:#fff;--crown:#ffb020;--crown-stroke:#7a4a08;--mark-ink:#4a285a66;--cell-edge:#4a285a33;--cell-bad:#ec4f6b;--region-1:#ff9fb0;--region-2:#ffbb7a;--region-3:#ffe06b;--region-4:#a6e0a0;--region-5:#74d5da;--region-6:#8ec5f6;--region-7:#b3a8f5;--region-8:#d7a4ec;--region-9:#ff9ed8;--r-xl:34px;--r-lg:26px;--r-md:18px;--r-sm:12px;--bw:3px;--bw-thick:4px;--shadow-card:0 12px 0 #5d2d9617, 0 22px 40px #5528821f;--shadow-hard:0 6px 0 #5d2d961f;--shadow-press:0 3px 0 #5d2d961f;--shadow-glow:0 0 0 var(--bw) var(--sun), 0 12px 0 #966e0024, 0 22px 40px var(--glow);--font-display:"Baloo 2", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, sans-serif;--font-body:"Nunito", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, sans-serif;--ease-spring:cubic-bezier(.2, .9, .25, 1.35);--ease-out:cubic-bezier(.22, 1, .36, 1);--dur-quick:.12s;--dur-base:.23s}[data-theme=royal]{--bg:#0c1226;--bg-dot:#e8c8781a;--bg-grid:#ffffff09;--surface:#182541;--surface-2:#1f2c4d;--surface-3:#273657;--ink:#f5ecd6;--ink-soft:#b3bbd6;--ink-mute:#8b95bb;--line:#ffffff1a;--edge:#ffffff24;--accent:#e7c368;--accent-deep:#b98f34;--accent-soft:#35406a;--accent-ink:#241a06;--sun:#e7c368;--sun-deep:#b98f34;--sun-ink:#241a06;--teal:#5fd0c4;--glow:#e7c36866;--danger:#ef6f6f;--danger-soft:#ef6f6f2e;--chip:#26324f;--chip-ink:#e7c368;--grad-classic:linear-gradient(145deg, #26355c, #1c2a4c);--grad-classic-edge:#3a4a78;--grad-classic-ink:#eaf0ff;--grad-daily:linear-gradient(145deg, #f4d888, #e0b143);--grad-daily-edge:#b98f34;--grad-daily-ink:#2a1e06;--badge-bg:linear-gradient(160deg, #f4d888, #e0b143);--badge-edge:#b98f34;--badge-ink:#2a1e06;--board-frame:#35406a;--board-bg:#0f1730;--crown:#f2c862;--crown-stroke:#4a3308;--mark-ink:#bec8e66b;--cell-edge:#00000052;--cell-bad:#ef5a5a;--region-1:#eda3a3;--region-2:#f0b177;--region-3:#e4d75f;--region-4:#a9d4ad;--region-5:#77c6d6;--region-6:#95c2e8;--region-7:#b3b6ea;--region-8:#cdb1de;--region-9:#e8b0d3;--shadow-card:0 12px 0 #0000004d, 0 22px 44px #0006;--shadow-hard:0 6px 0 #0000004d;--shadow-press:0 3px 0 #0000004d;--shadow-glow:0 0 0 var(--bw) var(--sun), 0 12px 0 #0000004d, 0 22px 40px var(--glow)}[data-theme=aurora]{--bg:#0a0f22;--bg-dot:#78e6dc1f;--bg-grid:#b482ff0d;--surface:#121c3a;--surface-2:#182a52;--surface-3:#21356a;--ink:#eaf3ff;--ink-soft:#a2b6df;--ink-mute:#8092bc;--line:#8cdcff24;--edge:#78dcff38;--accent:#35e6cf;--accent-deep:#17a99a;--accent-soft:#143a52;--accent-ink:#04211d;--sun:#ff5fb0;--sun-deep:#d43587;--sun-ink:#2a0518;--teal:#35e6cf;--glow:#35e6cf66;--danger:#ff6b8a;--danger-soft:#ff6b8a33;--chip:#1b2c54;--chip-ink:#35e6cf;--grad-classic:linear-gradient(145deg, #7b5cff, #5a35d4);--grad-classic-edge:#4a2ab0;--grad-classic-ink:#f2ecff;--grad-daily:linear-gradient(145deg, #ff77c0, #ff3f97);--grad-daily-edge:#d43587;--grad-daily-ink:#2a0518;--badge-bg:linear-gradient(160deg, #46f0da, #22c0b0);--badge-edge:#17a99a;--badge-ink:#04211d;--board-frame:#21356a;--board-bg:#0b1430;--crown:#ffe066;--crown-stroke:#4a3308;--mark-ink:#96c8f073;--cell-edge:#0006;--cell-bad:#ff5470;--region-1:#ff8fa3;--region-2:#ffb27a;--region-3:#ffe066;--region-4:#7ee6a0;--region-5:#56e0d6;--region-6:#5cb8ff;--region-7:#9d8cff;--region-8:#cf85f0;--region-9:#ff8fd8;--shadow-card:0 12px 0 #00000052, 0 22px 44px #00000073;--shadow-hard:0 6px 0 #00000052;--shadow-press:0 3px 0 #00000052;--shadow-glow:0 0 0 var(--bw) var(--sun), 0 12px 0 #00000052, 0 22px 40px var(--glow)}*,:before,:after{box-sizing:border-box;margin:0}html,body,#root{height:100%}body{font-family:var(--font-body);color:var(--ink);background-color:var(--bg);background-image:radial-gradient(circle at 1px 1px, var(--bg-dot) 1.5px, transparent 1.7px), linear-gradient(var(--bg-grid) 1px, transparent 1px), linear-gradient(90deg, var(--bg-grid) 1px, transparent 1px);-webkit-font-smoothing:antialiased;touch-action:manipulation;-webkit-user-select:none;user-select:none;background-size:26px 26px,78px 78px,78px 78px;font-weight:700}img,svg,canvas{max-width:100%;display:block}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}:focus-visible{outline:4px solid var(--accent);outline-offset:3px}.screen{width:min(100%,860px);height:100dvh;padding:clamp(16px,4vw,40px);padding-top:max(clamp(16px, 4vw, 40px), env(safe-area-inset-top));padding-bottom:max(clamp(16px, 4vw, 40px), env(safe-area-inset-bottom));padding-left:max(clamp(16px, 4vw, 40px), env(safe-area-inset-left));padding-right:max(clamp(16px, 4vw, 40px), env(safe-area-inset-right));flex-direction:column;margin:0 auto;display:flex;overflow:clip}.page-body{gap:inherit;flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.board-wrap{flex:1;justify-content:center;align-items:center;min-height:0;display:flex;container-type:size}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.tnum{font-variant-numeric:tabular-nums}.btn{border-radius:var(--r-md);border:var(--bw) solid transparent;min-height:56px;font-family:var(--font-display);letter-spacing:.01em;transition:transform var(--dur-quick) var(--ease-out), box-shadow var(--dur-quick), filter var(--dur-quick);justify-content:center;align-items:center;gap:8px;padding:0 24px;font-size:17px;font-weight:700;display:inline-flex}.btn--primary{background:var(--accent);border-color:var(--accent-deep);color:var(--accent-ink);box-shadow:var(--shadow-hard)}.btn--ghost{background:var(--surface);border-color:var(--edge);color:var(--accent-deep);box-shadow:var(--shadow-press)}.btn:active{transform:translateY(3px);box-shadow:0 0 #0000}@media (hover:hover){.btn--primary:hover{filter:brightness(1.06)}.btn--ghost:hover{background:var(--surface-2)}}.iconbtn{background:var(--surface);width:52px;height:52px;color:var(--accent-deep);border:var(--bw) solid var(--edge);box-shadow:var(--shadow-press);transition:transform var(--dur-quick) var(--ease-out), box-shadow var(--dur-quick), background var(--dur-quick);border-radius:50%;flex:0 0 52px;place-items:center;display:grid}.iconbtn:active{transform:translateY(3px);box-shadow:0 0 #0000}@media (hover:hover){.iconbtn:hover{background:var(--surface-2)}}.menu{flex-direction:column;flex:1;gap:clamp(12px,2.4dvh,22px);min-height:0;display:flex}.hero{text-align:center;flex-direction:column;align-items:center;padding-top:clamp(4px,2.5dvh,26px);display:flex}.brand{flex-direction:column;align-items:center;display:flex}.brand__badge{aspect-ratio:1;background:var(--badge-bg);border:var(--bw-thick) solid var(--badge-edge);width:clamp(84px,15dvh,128px);color:var(--badge-ink);box-shadow:var(--shadow-hard), 0 22px 34px var(--glow);border-radius:28%;place-items:center;display:grid;transform:rotate(-3deg)}.brand__crown{width:62%;transform:rotate(3deg)}.brand__text{flex-direction:column;align-items:center;margin-top:clamp(8px,1.6dvh,16px);display:flex}.brand__eyebrow{color:var(--accent-deep);font-family:var(--font-display);letter-spacing:.2em;padding-left:.2em;font-size:clamp(12px,1.8dvh,15px);font-weight:700}.brand__name{font-family:var(--font-display);letter-spacing:.005em;color:var(--accent);text-shadow:0 4px 0 var(--glow);font-size:clamp(40px,8.2dvh,62px);font-weight:800;line-height:.98}.hero__tagline{letter-spacing:.08em;color:var(--ink-soft);margin-top:clamp(8px,1.6dvh,16px);font-size:clamp(12px,1.9dvh,15px);font-weight:800}.menu__cards{flex-direction:column;gap:clamp(10px,1.8dvh,16px);margin-top:clamp(6px,1.6dvh,16px);display:flex}.card{border-radius:var(--r-xl);border:var(--bw-thick) solid var(--edge);background:var(--surface);width:100%;color:var(--ink);box-shadow:var(--shadow-card);text-align:left;transition:transform var(--dur-base) var(--ease-out), filter var(--dur-base);align-items:center;gap:clamp(12px,3vw,18px);padding:clamp(14px,2.2dvh,20px) 20px;display:flex;position:relative;overflow:hidden}.card:after{content:"";pointer-events:none;border:20px solid #ffffff2e;border-radius:50%;width:160px;height:160px;position:absolute;bottom:-84px;right:-70px}.card:active{transform:translateY(3px)}@media (hover:hover){.card:hover{filter:saturate(1.05);transform:translateY(-3px)rotate(-.3deg)}}.card--daily{background:var(--grad-daily);border-color:var(--grad-daily-edge);color:var(--grad-daily-ink)}.card--classic{background:var(--grad-classic);border-color:var(--grad-classic-edge);color:var(--grad-classic-ink)}.card__chip{z-index:1;aspect-ratio:1;background:var(--chip);width:clamp(52px,13vw,62px);color:var(--chip-ink);box-shadow:var(--shadow-press);border-radius:24%;flex:none;place-items:center;display:grid;position:relative;transform:rotate(-3deg)}.card__text{z-index:1;flex-direction:column;flex:1;gap:3px;min-width:0;display:flex;position:relative}.card__title{font-family:var(--font-display);color:inherit;font-size:clamp(22px,3.4dvh,28px);font-weight:700;line-height:1.05}.card__sub{opacity:.86;color:inherit;font-size:clamp(12px,1.8dvh,14px);font-weight:700}.card__arrow{z-index:1;color:inherit;opacity:.7;flex:none;position:relative}.card--resume{background:var(--surface);border-color:var(--edge);color:var(--ink)}.card--resume .card__chip{color:var(--accent)}.menu__streak{flex-direction:column;gap:9px;margin-top:auto;display:flex}.streak__row{justify-content:space-between;align-items:center;font-size:13.5px;font-weight:800;display:flex}.streak__label{color:var(--ink-soft);align-items:center;gap:6px;display:inline-flex}.streak__label svg{color:var(--sun-deep)}.streak__count{color:var(--accent-deep);align-items:center;gap:5px;display:inline-flex}.streak__bar{background:var(--surface);border:var(--bw) solid var(--edge);border-radius:999px;height:14px;padding:3px}.streak__fill{background:linear-gradient(90deg, var(--accent-deep), var(--accent));min-width:8px;height:100%;transition:width var(--dur-base) var(--ease-out);border-radius:999px}.tabbar{grid-template-columns:repeat(3,1fr);gap:8px;padding-top:clamp(2px,.8dvh,8px);display:grid}.tab{color:var(--ink-soft);transition:transform var(--dur-quick) var(--ease-out), color var(--dur-quick);flex-direction:column;align-items:center;gap:7px;padding:4px;font-size:12.5px;font-weight:800;display:flex}.tab__chip{background:var(--surface);width:52px;height:52px;color:var(--accent-deep);border:var(--bw) solid var(--edge);box-shadow:var(--shadow-press);transition:transform var(--dur-quick) var(--ease-out), box-shadow var(--dur-quick), background var(--dur-quick);border-radius:50%;place-items:center;display:grid}.tab:active .tab__chip{transform:translateY(3px);box-shadow:0 0 #0000}@media (hover:hover){.tab:hover{color:var(--ink)}.tab:hover .tab__chip{background:var(--surface-2)}}.game{flex-direction:column;flex:1;gap:clamp(8px,1.6dvh,14px);min-height:0;display:flex}.gamebar{align-items:center;gap:12px;display:flex}.gamebar__title{flex-direction:column;flex:1;align-items:center;gap:3px;display:flex}.gamebar__name{font-family:var(--font-display);color:var(--ink);font-size:clamp(19px,3dvh,24px);font-weight:700}.gamebar__timer{color:var(--ink-soft);align-items:center;gap:5px;font-size:13px;font-weight:800;display:inline-flex}.crowncount{background:var(--surface);border:var(--bw) solid var(--edge);height:52px;box-shadow:var(--shadow-press);color:var(--sun-deep);font-family:var(--font-display);border-radius:999px;align-items:center;gap:7px;padding:0 16px;font-size:17px;font-weight:700;display:inline-flex}.board{aspect-ratio:1;border-radius:var(--r-lg);border:clamp(4px, 1.2cqw, 7px) solid var(--board-frame);background:var(--board-bg);width:min(100cqw,100cqh);box-shadow:var(--shadow-card);padding:clamp(5px,1.4cqw,8px)}.board--shake{animation:shake .4s var(--ease-out)}.board__grid{gap:clamp(2px,.7cqw,5px);width:100%;height:100%;display:grid}.cell{min-width:0;min-height:0;transition:transform var(--dur-quick) var(--ease-out), filter var(--dur-quick);border-radius:clamp(5px,1.4cqw,11px);justify-content:center;align-items:center;display:flex;position:relative}.cell:active{filter:brightness(.96);transform:scale(.9)}.cell__crown{width:70%;height:70%;color:var(--crown);filter:drop-shadow(0 2px #0000002e)}.cell--bad .cell__crown{color:var(--cell-bad);animation:1s ease-in-out infinite badpulse}.cell__mark{width:42%;height:42%;color:var(--mark-ink)}.cell--pulse .cell__crown{animation:pop var(--dur-base) var(--ease-spring)}.cell--pulse .cell__mark{animation:popmark var(--dur-quick) var(--ease-out)}.coach{text-align:center;max-width:100%;color:var(--accent-deep);background:var(--accent-soft);border:var(--bw) solid transparent;border-radius:999px;justify-content:center;align-self:center;align-items:center;gap:8px;min-height:44px;padding:10px 18px;font-size:12.5px;font-weight:800;line-height:1.4;display:flex}.coach svg{flex:none}.coach--warn{color:var(--danger);background:var(--danger-soft)}.toolbar{justify-content:center;align-items:flex-start;gap:clamp(14px,6vw,40px);display:flex}.tool{color:var(--ink-soft);transition:transform var(--dur-quick) var(--ease-out);flex-direction:column;align-items:center;gap:7px;font-size:12.5px;font-weight:800;display:flex}.tool svg{box-sizing:content-box;background:var(--surface);width:24px;height:24px;color:var(--accent-deep);border:var(--bw) solid var(--edge);box-shadow:var(--shadow-press);transition:box-shadow var(--dur-quick), background var(--dur-quick);border-radius:50%;padding:13px}.tool:active{transform:translateY(3px)}.tool:active svg{box-shadow:0 0 #0000}.tool:disabled{opacity:.42}@media (hover:hover){.tool:not(:disabled):hover svg{background:var(--surface-2)}}.overlay{z-index:20;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade var(--dur-base) var(--ease-out);background:#1e083280;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.wincard,.sheet{border-radius:var(--r-xl);background:var(--surface);border:var(--bw-thick) solid var(--edge);width:min(100%,400px);box-shadow:var(--shadow-card);text-align:center;animation:pop-in var(--dur-base) var(--ease-spring);padding:clamp(28px,5dvh,38px) 26px 26px;position:relative}.wincard__crown,.sheet__crown{width:60px;color:var(--sun);filter:drop-shadow(0 4px 0 var(--glow));margin:0 auto 12px}.wincard__title{font-family:var(--font-display);color:var(--ink);font-size:30px;font-weight:800}.wincard__sub{color:var(--ink-soft);margin-top:4px;font-size:14px;font-weight:700}.wincard__stats{justify-content:center;gap:10px;margin:22px 0;display:flex}.wincard__stats>div{border-radius:var(--r-md);background:var(--surface-2);border:var(--bw) solid var(--edge);flex-direction:column;flex:1;gap:4px;padding:13px 6px;display:flex}.stat__k{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-mute);font-size:11px;font-weight:800}.stat__v{font-family:var(--font-display);color:var(--accent);font-size:21px;font-weight:700}.wincard__actions{gap:10px;display:flex}.wincard__actions .btn{flex:1}.wincard__close,.sheet__close{background:var(--surface-2);width:44px;height:44px;color:var(--ink-soft);border:var(--bw) solid var(--edge);border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;right:14px}.sheet{text-align:left}.sheet__crown{margin:0 0 12px}.sheet__title{font-family:var(--font-display);color:var(--ink);font-size:26px;font-weight:800}.rules{flex-direction:column;gap:13px;margin:18px 0 22px;list-style:none;display:flex}.rules li{color:var(--ink-soft);align-items:flex-start;gap:12px;font-size:14px;font-weight:700;line-height:1.5;display:flex}.rules__n{background:var(--accent-soft);width:26px;height:26px;color:var(--accent-deep);font-family:var(--font-display);border-radius:50%;flex:0 0 26px;place-items:center;font-size:13px;font-weight:700;display:grid}.sheet__cta{width:100%}.toast{bottom:max(28px, env(safe-area-inset-bottom));z-index:30;background:var(--surface);color:var(--ink);border:var(--bw) solid var(--edge);box-shadow:var(--shadow-hard);animation:pop-in var(--dur-base) var(--ease-spring);border-radius:999px;padding:13px 22px;font-size:13px;font-weight:800;position:fixed;left:50%;transform:translate(-50%)}.subscreen{flex-direction:column;flex:1;gap:clamp(12px,2dvh,18px);min-height:0;display:flex}.subbar{align-items:center;gap:12px;display:flex}.subbar__title{font-family:var(--font-display);color:var(--ink);flex:1;font-size:clamp(22px,3.2dvh,27px);font-weight:800}.subbar__meta{color:var(--accent-deep);font-family:var(--font-display);text-align:right;min-width:44px;font-size:15px;font-weight:700}.levels__grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:13px;padding-bottom:14px;display:grid}.lvl{aspect-ratio:1;border-radius:var(--r-md);background:var(--surface);border:var(--bw) solid var(--edge);box-shadow:var(--shadow-press);transition:transform var(--dur-quick) var(--ease-out), border-color var(--dur-quick);flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex;position:relative;overflow:hidden}.lvl:before{content:"";background:var(--tile);opacity:.2;position:absolute;inset:0}.lvl__id{z-index:1;font-family:var(--font-display);color:var(--ink);font-size:28px;font-weight:800;position:relative}.lvl__size{z-index:1;color:var(--ink-soft);font-size:11px;font-weight:800;position:relative}.lvl:not(:disabled):active{transform:translateY(3px);box-shadow:0 0 #0000}@media (hover:hover){.lvl:not(:disabled):hover{border-color:var(--accent);transform:translateY(-3px)}}.lvl--locked .lvl__id,.lvl--locked .lvl__size{opacity:.4}.lvl--locked{box-shadow:none}.lvl__lock{z-index:1;color:var(--ink-mute);position:absolute;top:8px;right:8px}.lvl--done{border-color:var(--accent)}.lvl__done{z-index:1;color:var(--accent-deep);align-items:center;gap:3px;font-size:10.5px;font-weight:800;display:inline-flex;position:absolute;bottom:7px}.settings__body{gap:13px}.setrow{border-radius:var(--r-md);background:var(--surface);border:var(--bw) solid var(--edge);box-shadow:var(--shadow-press);justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;display:flex}.setrow--stack{flex-direction:column;align-items:stretch;gap:15px}.setrow__label{color:var(--ink);align-items:center;gap:10px;font-size:16px;font-weight:800;display:inline-flex}.setrow__label svg{color:var(--accent)}.toggle{background:var(--surface-3);border:var(--bw) solid var(--edge);width:68px;height:44px;transition:background var(--dur-base);border-radius:999px;align-items:center;display:flex;position:relative}.toggle--on{background:var(--accent);border-color:var(--accent-deep)}.toggle__knob{background:var(--surface);width:30px;height:30px;transition:transform var(--dur-base) var(--ease-spring);border-radius:50%;position:absolute;left:4px;box-shadow:0 2px 5px #00000040}.toggle--on .toggle__knob{transform:translate(24px)}.toggle__txt{font-size:0;position:absolute;right:9px}.toggle--on .toggle__txt{left:9px;right:auto}.seg{border-radius:var(--r-sm);background:var(--surface-3);gap:5px;padding:5px;display:flex}.seg__btn{border-radius:calc(var(--r-sm) - 3px);font-family:var(--font-display);color:var(--ink-soft);border:var(--bw) solid transparent;min-width:44px;min-height:44px;padding:8px 16px;font-size:15px;font-weight:700}.seg__btn--on{background:var(--accent);border-color:var(--accent-deep);color:var(--accent-ink)}.themes{grid-template-columns:repeat(3,1fr);gap:11px;display:grid}.themecard{border-radius:var(--r-md);background:var(--surface-2);border:var(--bw-thick) solid transparent;transition:transform var(--dur-quick) var(--ease-out), border-color var(--dur-quick);flex-direction:column;align-items:center;gap:10px;padding:15px 6px;display:flex}.themecard:active{transform:translateY(2px)}.themecard--on{border-color:var(--accent)}.themecard__swatch{gap:4px;display:flex}.themecard__swatch i{border:1.5px solid #00000014;border-radius:50%;width:16px;height:16px;display:block}.themecard--cartoon .themecard__swatch i:first-child{background:#f4eeff}.themecard--cartoon .themecard__swatch i:nth-child(2){background:#7b3fe4}.themecard--cartoon .themecard__swatch i:nth-child(3){background:#ffcf33}.themecard--royal .themecard__swatch i:first-child{background:#0c1226}.themecard--royal .themecard__swatch i:nth-child(2){background:#e7c368}.themecard--royal .themecard__swatch i:nth-child(3){background:#95c2e8}.themecard--aurora .themecard__swatch i:first-child{background:#0a0f22}.themecard--aurora .themecard__swatch i:nth-child(2){background:#35e6cf}.themecard--aurora .themecard__swatch i:nth-child(3){background:#ff5fb0}.themecard__label{color:var(--ink);text-align:center;font-size:11.5px;font-weight:800;line-height:1.3}.dangerbtn{border-radius:var(--r-md);background:var(--danger-soft);min-height:54px;color:var(--danger);font-family:var(--font-display);border:var(--bw) solid transparent;margin-top:6px;font-size:15px;font-weight:700}@media (hover:hover){.dangerbtn:hover{border-color:var(--danger)}}.settings__about{text-align:center;color:var(--ink-mute);padding:8px 0 4px;font-size:12px;font-weight:700}@keyframes pop{0%{opacity:.4;transform:scale(.4)rotate(-8deg)}55%{transform:scale(1.18,.86)rotate(2deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes popmark{0%{opacity:.3;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes badpulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-7px)rotate(-1deg)}50%{transform:translate(7px)rotate(1deg)}75%{transform:translate(-4px)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pop-in{0%{opacity:0;transform:scale(.9)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}
