*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--font-ui: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: "Sora", system-ui, "Segoe UI", sans-serif;--font-num: "Sora", system-ui, "Segoe UI", sans-serif;--font-auth-display: "Space Grotesk", system-ui, sans-serif;--font-auth-mono: "Space Mono", ui-monospace, monospace;--app-bg: radial-gradient(1100px 620px at 12% -8%, rgba(99, 102, 241, .16), transparent 60%), radial-gradient(1000px 560px at 100% 4%, rgba(217, 70, 239, .12), transparent 55%), radial-gradient(900px 600px at 80% 105%, rgba(251, 113, 133, .1), transparent 60%), linear-gradient(180deg, #fbfbfe 0%, #f5f6fb 100%);--wordmark-grad: linear-gradient(90deg, #6366f1, #d946ef, #fb7185);--accent-1: #6366f1;--accent-2: #d946ef;--accent-3: #fb7185;--grad-create: #4f46e5;--grad-start: linear-gradient(90deg, #6366f1, #d946ef);--grad-share: linear-gradient(90deg, #d946ef, #fb7185);--grad-back: linear-gradient(90deg, #0ea5e9, #2563eb);--accent: #4f46e5;--frame-border: rgba(99, 102, 241, .22);--frame-border: color-mix(in srgb, var(--accent) 26%, transparent);--frame-shadow: 0 30px 64px -28px rgba(15, 23, 42, .32), 0 10px 24px -14px rgba(15, 23, 42, .16);--frame-inset: inset 0 2px 0 rgba(255, 255, 255, calc(var(--frost, 0) * .7)), inset 0 0 0 1px rgba(255, 255, 255, calc(var(--frost, 0) * .3));--frame-fill: rgba(255, 255, 255, calc(var(--frost, 0) * .6));--frame-blur: calc(var(--frost, 0) * 12px);--on-grad: #ffffff;--btn-radius: 9999px;--board-shadow: 0 24px 50px -24px rgba(76, 29, 149, .4), 0 8px 20px -12px rgba(99, 102, 241, .28);--board-line: #1e293b;--note-text: #64748b;--cell-bg: #ffffff;--cell-conflict: #ffe4e6;--cell-sel: #ccfbf1;--cell-sel-ring: #10b981;--cell-same: #eef2ff;--cell-peer: #f5f3ff;--cell-diag: #5eead4;--cell-solved: #d1fae5;--cell-solved-user: #a7f3d0;--cell-hint: #fde68a;--hint-ring: #f59e0b;--text-given: #0f172a;--text-input: #7c3aed;--text-conflict: #e11d48}html.dark{--app-bg: radial-gradient(1100px 620px at 12% -8%, rgba(124, 58, 237, .34), transparent 60%), radial-gradient(1000px 560px at 100% 4%, rgba(217, 70, 239, .2), transparent 55%), radial-gradient(900px 600px at 80% 105%, rgba(244, 63, 94, .16), transparent 60%), linear-gradient(180deg, #0a0e1a 0%, #0d1224 100%);--frame-border: rgba(148, 163, 184, .62);--frame-border: color-mix(in srgb, var(--accent) 65%, transparent);--frame-shadow: 0 34px 72px -28px rgba(0, 0, 0, .72), 0 10px 26px -16px rgba(0, 0, 0, .55);--frame-inset: inset 0 2px 0 rgba(255, 255, 255, calc(var(--frost, 0) * .28)), inset 0 0 0 1px rgba(255, 255, 255, calc(var(--frost, 0) * .1));--frame-fill: rgba(255, 255, 255, calc(var(--frost, 0) * .22));--board-line: #0b1020;--note-text: #94a3b8;--cell-bg: #1a2236;--cell-conflict: #4c1d2b;--cell-sel: #0f3d3a;--cell-sel-ring: #34d399;--cell-same: #3730a3;--cell-peer: #2a2350;--cell-diag: #0f766e;--cell-solved: #14532d;--cell-solved-user: #0e3d2e;--cell-hint: #854d0e;--hint-ring: #fbbf24;--text-given: #f1f5f9;--text-input: #c4b5fd;--text-conflict: #fb7185}[data-theme=nightsky]{--font-ui: "Inter", system-ui, sans-serif;--font-display: "Sora", system-ui, "Segoe UI", sans-serif;--font-num: "Sora", system-ui, "Segoe UI", sans-serif;--app-bg: radial-gradient(1100px 620px at 15% -8%, rgba(79, 107, 214, .14), transparent 60%), radial-gradient(900px 560px at 95% 2%, rgba(99, 102, 241, .1), transparent 55%), radial-gradient(800px 560px at 60% 108%, rgba(199, 154, 58, .08), transparent 60%), linear-gradient(180deg, #f5f7fd 0%, #eef1fa 100%);--wordmark-grad: linear-gradient(90deg, #b8860b, #4f6bd6, #1e3a8a);--accent-1: #4f6bd6;--accent-2: #6366f1;--accent-3: #c79a3a;--grad-create: #3b56b8;--grad-start: linear-gradient(90deg, #4f6bd6, #6d6bf0);--grad-share: linear-gradient(90deg, #6d6bf0, #c79a3a);--grad-back: linear-gradient(90deg, #2563eb, #1e3a8a);--accent: #3b56b8;--on-grad: #ffffff;--btn-radius: 9999px;--board-shadow: 0 24px 50px -24px rgba(30, 41, 99, .36), 0 8px 20px -12px rgba(79, 107, 214, .24);--board-line: #3a4a6b;--note-text: #a9863e;--cell-bg: #ffffff;--cell-conflict: #fbe3e6;--cell-sel: #dde7ff;--cell-sel-ring: #5a96ff;--cell-same: #e7edff;--cell-peer: #f1f4fc;--cell-diag: #f3f0fb;--cell-solved: #d6f5e3;--cell-hint: #fdeec2;--hint-ring: #d4af37;--text-given: #1e2a52;--text-input: #3b56b8;--text-conflict: #c0394b}html.dark[data-theme=nightsky]{--app-bg: radial-gradient(1000px 700px at 20% -10%, rgba(90, 150, 255, .1), transparent 60%), radial-gradient(900px 600px at 92% 0%, rgba(129, 140, 248, .08), transparent 55%), radial-gradient(760px 520px at 55% 112%, rgba(212, 175, 55, .06), transparent 60%), linear-gradient(160deg, #0b0e1a 0%, #141b33 100%);--board-shadow: 0 30px 60px -26px rgba(0, 0, 0, .7), 0 0 40px -10px rgba(90, 150, 255, .22);--board-line: #3a4a6b;--note-text: rgba(212, 175, 55, .62);--cell-bg: rgba(26, 35, 66, .7);--cell-conflict: #3f1622;--cell-sel: #21305c;--cell-sel-ring: #5a96ff;--cell-same: #25325c;--cell-peer: #161f3a;--cell-diag: #231f3e;--cell-solved: #133a2b;--cell-hint: #54451d;--hint-ring: #d4af37;--text-given: #d4af37;--text-input: #ffffff;--text-conflict: #e06b7a}[data-theme=vintage]{--font-ui: "Inter", system-ui, sans-serif;--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-num: "Fraunces", Georgia, "Times New Roman", serif;--app-bg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E"), linear-gradient(180deg, #f4ead7 0%, #efe2cb 100%);--wordmark-grad: linear-gradient(90deg, #3a2a1d, #7a5c3e, #a07d52);--accent-1: #7a5c3e;--accent-2: #4d4564;--accent-3: #a23b34;--grad-create: #5c4632;--grad-start: linear-gradient(90deg, #6b4f3a, #4d4564);--grad-share: linear-gradient(90deg, #4d4564, #8a3a33);--grad-back: linear-gradient(90deg, #5c4632, #3a2a1d);--accent: #6b4f3a;--on-grad: #f7efe0;--btn-radius: .45rem;--board-shadow: inset 0 2px 6px rgba(60, 40, 20, .18), inset 0 -1px 0 rgba(255, 255, 255, .5), 0 2px 4px rgba(60, 40, 20, .1);--board-line: #c4b5a0;--note-text: #9c8a72;--cell-bg: #fcf8f0;--cell-conflict: #f1ddd4;--cell-sel: #f7e98a;--cell-sel-ring: #b04a3f;--cell-same: #f0ead2;--cell-peer: #fbf3b8;--cell-diag: #efe2c8;--cell-solved: #d8e0c0;--cell-hint: #f3e09a;--hint-ring: #b8893a;--text-given: #1a1512;--text-input: #3b3a5a;--text-conflict: #a23b34}html.dark[data-theme=vintage]{--app-bg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E"), linear-gradient(180deg, #1f1810 0%, #271e14 100%);--board-shadow: inset 0 2px 6px rgba(0, 0, 0, .45), inset 0 -1px 0 rgba(255, 255, 255, .04), 0 2px 4px rgba(0, 0, 0, .5);--board-line: #5a4a38;--note-text: #a08a6c;--cell-bg: #2a2018;--cell-conflict: #3e1f1a;--cell-sel: #4a3a1e;--cell-sel-ring: #c25a4d;--cell-same: #352a1c;--cell-peer: #33281a;--cell-diag: #33291c;--cell-solved: #2c3a22;--cell-hint: #4a3a1c;--hint-ring: #d2a24a;--text-given: #f0e6d2;--text-input: #b6b4d8;--text-conflict: #e08a7e}[data-theme=elegance]{--font-ui: "Inter", system-ui, sans-serif;--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-num: "Inter", system-ui, sans-serif;--app-bg: radial-gradient(1100px 600px at 12% -8%, rgba(67, 56, 202, .12), transparent 60%), radial-gradient(1000px 560px at 100% 2%, rgba(180, 83, 9, .08), transparent 55%), linear-gradient(180deg, #fcfaf7 0%, #f4f1ec 100%);--wordmark-grad: linear-gradient(90deg, #4338ca, #7e22ce, #b45309);--accent-1: #4338ca;--accent-2: #9333ea;--accent-3: #b45309;--grad-create: #4338ca;--grad-start: linear-gradient(90deg, #4f46e5, #7e22ce);--grad-share: linear-gradient(90deg, #7e22ce, #b45309);--grad-back: linear-gradient(90deg, #4338ca, #6d28d9);--accent: #4338ca;--on-grad: #ffffff;--btn-radius: .6rem;--board-shadow: 0 24px 50px -24px rgba(67, 56, 202, .3), 0 8px 18px -12px rgba(0, 0, 0, .15);--board-line: #292524;--note-text: #78716c;--cell-bg: #fffdfa;--cell-conflict: #fde8e8;--cell-sel: #ede9fe;--cell-sel-ring: #6d28d9;--cell-same: #f3f0ff;--cell-peer: #faf8f4;--cell-diag: #fdf4ff;--cell-solved: #dcfce7;--cell-hint: #fef3c7;--hint-ring: #d97706;--text-given: #1c1917;--text-input: #6d28d9;--text-conflict: #b91c1c}html.dark[data-theme=elegance]{--app-bg: radial-gradient(1100px 600px at 12% -8%, rgba(109, 40, 217, .34), transparent 60%), radial-gradient(1000px 560px at 100% 2%, rgba(180, 83, 9, .16), transparent 55%), linear-gradient(180deg, #14101c 0%, #1a1424 100%);--board-line: #0f0a16;--note-text: #a8a29e;--cell-bg: #221a2e;--cell-conflict: #4c1d2b;--cell-sel: #4c1d95;--cell-sel-ring: #c4b5fd;--cell-same: #3b0764;--cell-peer: #2e2440;--cell-diag: #3a2150;--cell-solved: #14532d;--cell-hint: #78491a;--hint-ring: #fbbf24;--text-given: #faf5ff;--text-input: #d8b4fe;--text-conflict: #fda4af}[data-theme=calm]{--font-ui: "Plus Jakarta Sans", system-ui, sans-serif;--font-display: "Plus Jakarta Sans", system-ui, sans-serif;--font-num: "Plus Jakarta Sans", system-ui, sans-serif;--app-bg: radial-gradient(1100px 600px at 12% -8%, rgba(56, 189, 248, .14), transparent 60%), radial-gradient(1000px 560px at 100% 4%, rgba(52, 211, 153, .12), transparent 55%), radial-gradient(900px 600px at 80% 105%, rgba(196, 181, 253, .16), transparent 60%), linear-gradient(180deg, #fbfdff 0%, #f4faf8 100%);--wordmark-grad: linear-gradient(90deg, #38bdf8, #34d399, #a78bfa);--accent-1: #0ea5e9;--accent-2: #10b981;--accent-3: #8b5cf6;--grad-create: #0ea5e9;--grad-start: linear-gradient(90deg, #38bdf8, #34d399);--grad-share: linear-gradient(90deg, #34d399, #a78bfa);--grad-back: linear-gradient(90deg, #38bdf8, #0ea5e9);--accent: #0891b2;--on-grad: #ffffff;--btn-radius: 9999px;--board-shadow: 0 20px 45px -22px rgba(14, 165, 233, .28), 0 8px 18px -12px rgba(16, 185, 129, .2);--board-line: #334155;--note-text: #64748b;--cell-bg: #ffffff;--cell-conflict: #ffe4e6;--cell-sel: #cffafe;--cell-sel-ring: #06b6d4;--cell-same: #d1fae5;--cell-peer: #ecfeff;--cell-diag: #f0fdfa;--cell-solved: #bbf7d0;--cell-hint: #fef9c3;--hint-ring: #ca8a04;--text-given: #0f172a;--text-input: #0891b2;--text-conflict: #e11d48}html.dark[data-theme=calm]{--app-bg: radial-gradient(1100px 600px at 12% -8%, rgba(14, 165, 233, .24), transparent 60%), radial-gradient(1000px 560px at 100% 4%, rgba(16, 185, 129, .18), transparent 55%), radial-gradient(900px 600px at 80% 105%, rgba(139, 92, 246, .18), transparent 60%), linear-gradient(180deg, #07131a 0%, #0a1622 100%);--board-line: #0b1620;--note-text: #94a3b8;--cell-bg: #15212e;--cell-conflict: #4c1d2b;--cell-sel: #155e75;--cell-sel-ring: #67e8f9;--cell-same: #134e4a;--cell-peer: #143038;--cell-diag: #11302e;--cell-solved: #14532d;--cell-hint: #713f12;--hint-ring: #fde047;--text-given: #ecfeff;--text-input: #67e8f9;--text-conflict: #fb7185}[data-theme=fusion]{--font-display: "Fraunces", Georgia, "Times New Roman", serif}[data-theme=classical]{--font-ui: "Segoe UI", system-ui, -apple-system, sans-serif;--font-display: "Segoe UI", system-ui, sans-serif;--font-num: "Segoe UI", system-ui, sans-serif;--app-bg: linear-gradient(160deg, #f8fafc 0%, #eef2ff 55%, #e0e7ff 100%);--wordmark-grad: linear-gradient(90deg, #1e293b, #1e293b);--accent-1: #059669;--accent-2: #2563eb;--accent-3: #d97757;--grad-create: #2563eb;--grad-start: #16a34a;--grad-share: #d97757;--grad-back: #475569;--accent: #2563eb;--on-grad: #ffffff;--btn-radius: .5rem;--board-shadow: 0 10px 30px -8px rgba(30, 41, 59, .35), 0 2px 6px rgba(30, 41, 59, .12);--board-line: #0f172a;--note-text: #64748b;--cell-bg: #ffffff;--cell-conflict: #fee2e2;--cell-sel: #dbeafe;--cell-sel-ring: #2563eb;--cell-same: #e0e7ff;--cell-peer: #eff6ff;--cell-diag: #fff1e6;--cell-solved: #bbf7d0;--cell-hint: #fde68a;--hint-ring: #f59e0b;--text-given: #0f172a;--text-input: #2563eb;--text-conflict: #b91c1c}html.dark[data-theme=classical]{--app-bg: linear-gradient(160deg, #0b1120 0%, #1e1b4b 55%, #111827 100%);--wordmark-grad: linear-gradient(90deg, #f1f5f9, #f1f5f9);--board-line: #0f172a;--note-text: #94a3b8;--cell-bg: #1e293b;--cell-conflict: #7f1d1d;--cell-sel: #1e40af;--cell-sel-ring: #93c5fd;--cell-same: #3730a3;--cell-peer: #1e3a5f;--cell-diag: #4a3722;--cell-solved: #14532d;--cell-hint: #854d0e;--hint-ring: #fbbf24;--text-given: #f1f5f9;--text-input: #93c5fd;--text-conflict: #fca5a5}[data-theme=onyx]{--font-ui: "Inter", system-ui, sans-serif;--font-display: "Sora", system-ui, "Segoe UI", sans-serif;--font-num: "Sora", system-ui, "Segoe UI", sans-serif;--app-bg: radial-gradient(1100px 600px at 12% -8%, rgba(71, 85, 105, .1), transparent 60%), radial-gradient(1000px 560px at 100% 4%, rgba(15, 23, 42, .06), transparent 55%), linear-gradient(180deg, #f7f8fa 0%, #eceef2 100%);--wordmark-grad: linear-gradient(90deg, #334155, #0f172a);--accent-1: #334155;--accent-2: #475569;--accent-3: #64748b;--grad-create: linear-gradient(90deg, #475569, #1e293b);--grad-start: linear-gradient(90deg, #334155, #0f172a);--grad-share: linear-gradient(90deg, #64748b, #334155);--grad-back: linear-gradient(90deg, #475569, #334155);--accent: #334155;--on-grad: #ffffff;--btn-radius: .6rem;--board-shadow: 0 24px 50px -24px rgba(15, 23, 42, .35), 0 8px 18px -12px rgba(0, 0, 0, .15);--board-line: #1e293b;--note-text: #64748b;--cell-bg: #ffffff;--cell-conflict: #fce7e7;--cell-sel: #ccfbf1;--cell-sel-ring: #10b981;--cell-same: #eef2f6;--cell-peer: #f4f6f9;--cell-diag: #5eead4;--cell-solved: #d1fae5;--cell-hint: #fde68a;--hint-ring: #f59e0b;--text-given: #0f172a;--text-input: #475569;--text-conflict: #b91c1c}html.dark[data-theme=onyx]{--app-bg: radial-gradient(1100px 620px at 12% -8%, rgba(100, 116, 139, .22), transparent 60%), radial-gradient(1000px 560px at 100% 4%, rgba(148, 163, 184, .08), transparent 55%), linear-gradient(180deg, #08090b 0%, #111317 100%);--wordmark-grad: linear-gradient(90deg, #e2e8f0, #94a3b8);--accent-1: #e2e8f0;--accent-2: #cbd5e1;--accent-3: #94a3b8;--grad-create: linear-gradient(90deg, #64748b, #334155);--grad-start: linear-gradient(90deg, #94a3b8, #475569);--grad-share: linear-gradient(90deg, #cbd5e1, #64748b);--grad-back: linear-gradient(90deg, #94a3b8, #475569);--accent: #475569;--on-grad: #0f172a;--board-line: #050608;--note-text: #64748b;--cell-bg: #15171c;--cell-conflict: #4c1d1d;--cell-sel: #0f3d3a;--cell-sel-ring: #34d399;--cell-same: #3a3f4b;--cell-peer: #1e2129;--cell-diag: #0f766e;--cell-solved: #14532d;--cell-hint: #854d0e;--hint-ring: #fbbf24;--text-given: #f8fafc;--text-input: #cbd5e1;--text-conflict: #fca5a5}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0;overflow:hidden;overscroll-behavior:none}body{font-family:var(--font-ui);color:#0f172a;background:var(--app-bg);background-attachment:fixed;-webkit-tap-highlight-color:transparent}html.dark body{color:#e2e8f0}[data-theme=sudokusensei]{--font-ui: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: "Sora", system-ui, "Segoe UI", sans-serif;--font-num: "Sora", system-ui, "Segoe UI", sans-serif;--app-bg: #171226;--wordmark-grad: linear-gradient(90deg, #2dd4bf, #d4af37);--accent-1: #2dd4bf;--accent-2: #d4af37;--accent-3: #f472b6;--grad-create: linear-gradient(90deg, #14b8a6, #0f766e);--grad-start: linear-gradient(90deg, #2dd4bf, #d4af37);--grad-share: linear-gradient(90deg, #f59e0b, #d4af37);--grad-back: linear-gradient(90deg, #14b8a6, #0d9488);--accent: #14b8a6;--on-grad: #0b1020;--btn-radius: .9rem;--board-shadow: 0 28px 60px -22px rgba(0, 0, 0, .6), 0 10px 24px -14px rgba(0, 0, 0, .5);--board-line: #94a3b8;--note-text: #64748b;--cell-bg: rgba(255, 255, 255, .94);--cell-conflict: #fecaca;--cell-sel: #ccfbf1;--cell-sel-ring: #10b981;--cell-same: #e9e3ff;--cell-peer: rgba(255, 255, 255, .6);--cell-diag: #5eead4;--cell-solved: #d1fae5;--cell-hint: #fde68a;--hint-ring: #f59e0b;--text-given: #111827;--text-input: #4338ca;--text-conflict: #b91c1c}html.dark[data-theme=sudokusensei]{--app-bg: #0d0a1a;--board-line: #64748b;--cell-bg: rgba(248, 250, 252, .93);--cell-peer: rgba(255, 255, 255, .55);--cell-same: #e9e3ff;--text-given: #0f172a;--text-input: #4338ca}button{font-family:inherit}.app-shell{display:grid;position:relative;width:100vw;height:100dvh;grid-template-areas:"header header header" "rtop   rtop   rtop" "left   game   right" "rbot   rbot   rbot" "footer footer footer";grid-template-columns:20% 60% 20%;grid-template-rows:10% 1% 76% 1% 12%;overflow:hidden}.area-header{grid-area:header}.area-rtop{grid-area:rtop}.area-rbot{grid-area:rbot}.area-game{grid-area:game;min-height:0;min-width:0}.area-footer{grid-area:footer}.area-left{grid-area:left}.area-right{grid-area:right}@media(max-width:767px){.app-shell{grid-template-columns:100%;grid-template-areas:"header" "rtop" "game" "rbot" "footer"}.app-shell .area-left,.app-shell .area-right{display:none}}.app-shell.focus{grid-template-columns:20% 60% 20%;grid-template-rows:100%;grid-template-areas:"left game right"}@media(max-width:767px){.app-shell.focus{grid-template-columns:100%;grid-template-rows:100%;grid-template-areas:"game"}}.board{display:grid;grid-template-columns:repeat(9,1fr);grid-template-rows:repeat(9,1fr);font-family:var(--font-num);background:var(--board-line);gap:1px;border:3px solid var(--board-line);border-radius:0;overflow:hidden;box-shadow:var(--board-shadow)}.cell{display:flex;align-items:center;justify-content:center;background:var(--cell-bg);-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;position:relative;line-height:1}.cell[data-thick-right="1"]{margin-right:2px}.cell[data-thick-bottom="1"]{margin-bottom:2px}.cell.selected{z-index:4;box-shadow:inset 0 0 0 3px var(--cell-sel-ring)}[data-theme=aurora] .cell.selected,[data-theme=onyx] .cell.selected{box-shadow:inset 0 0 0 1.5px var(--cell-sel-ring)}.cell.solved-glow{z-index:3;box-shadow:inset 0 0 0 1.5px #10b9818c,inset 0 0 11px #10b98166;animation:solved-in .5s ease both}@keyframes solved-in{0%{box-shadow:inset 0 0 #10b98100,inset 0 0 #10b98100}to{box-shadow:inset 0 0 0 1.5px #10b9818c,inset 0 0 11px #10b98166}}@media(prefers-reduced-motion:reduce){.cell.solved-glow{animation:none}}.cell.x-victory{z-index:4;animation:x-victory-pulse 1.6s ease-in-out infinite}@keyframes x-victory-pulse{0%,to{box-shadow:inset 0 0 0 2px #fbbf24a6,inset 0 0 13px 2px #fbbf2480}50%{box-shadow:inset 0 0 0 3px #fde047,inset 0 0 22px 6px #fbbf24e6}}.cell.x-victory.x-fade{animation:none;box-shadow:none;transition:box-shadow .3s ease}@media(prefers-reduced-motion:reduce){.cell.x-victory{animation:none;box-shadow:inset 0 0 0 2.5px #fbbf24d9}}.cell.x-victory-post{z-index:4;box-shadow:inset 0 0 0 2px #fffdf6;transition:background-color .3s ease,box-shadow .3s ease,color .3s ease}.cell.invalid-clue{z-index:4;box-shadow:inset 0 0 0 2px #fffdf6}html.dark .board.x-victory-post-board{background:#34d399;border-color:#34d399;transition:background .3s ease,border-color .3s ease}html.dark[data-theme=nightsky] .cell{text-shadow:0 0 8px rgba(200,215,255,.28)}html.dark[data-theme=nightsky] .cell.selected{box-shadow:inset 0 0 0 2px var(--cell-sel-ring),0 0 24px #5a96ff54}[data-theme=vintage] .cell.selected{box-shadow:inset 0 -3px 0 var(--cell-sel-ring)}.cell.hint-glow{z-index:5;box-shadow:inset 0 0 0 1.5px #f59e0b99,inset 0 0 6px 1px #f59e0b38}.hint-bulb{color:#f59e0b;animation:hint-bulb-pulse 1.3s ease-in-out infinite}.hint-bulb-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:6}.hint-bulb-overlay.corner{align-items:flex-start;justify-content:flex-end;padding:1px 1px 0 0}.reveal-spark-cell{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:7}.reveal-spark{position:absolute;left:50%;top:50%;margin-left:-.3em;margin-top:-.5em;font-size:.7em;line-height:1;color:#f59e0b;text-shadow:0 0 4px rgba(251,191,36,.9)}.reveal-pop{display:inline-block;animation:reveal-pop .55s cubic-bezier(.34,1.56,.64,1) .15s both}@keyframes reveal-pop{0%{transform:scale(.2);opacity:0}60%{transform:scale(1.18);opacity:1}to{transform:scale(1);opacity:1}}@keyframes hint-bulb-pulse{0%,to{filter:drop-shadow(0 0 2px rgba(245,158,11,.75));transform:scale(1)}50%{filter:drop-shadow(0 0 8px rgba(251,191,36,.95));transform:scale(1.1)}}@media(prefers-reduced-motion:reduce){.hint-bulb{animation:none;filter:drop-shadow(0 0 4px rgba(245,158,11,.85))}.reveal-pop{animation:none}}.cell.hint-filled:after{content:"";position:absolute;left:26%;right:26%;bottom:.14em;height:.12em;border-radius:999px;background:linear-gradient(90deg,#f59e0b,#fcd34d,#f59e0b);box-shadow:0 0 5px -1px #f59e0ba6;pointer-events:none}.settings-glow{animation:settings-glow-pulse 1.4s ease-in-out infinite}@keyframes settings-glow-pulse{0%,to{box-shadow:0 0 0 2px #ffffffe6,0 0 0 4px color-mix(in srgb,var(--accent) 88%,white),0 0 14px 3px color-mix(in srgb,var(--accent) 50%,transparent)}50%{box-shadow:0 0 0 2px #ffffffe6,0 0 0 6px color-mix(in srgb,var(--accent) 95%,white),0 0 24px 7px color-mix(in srgb,var(--accent) 62%,transparent)}}@media(prefers-reduced-motion:reduce){.settings-glow{animation:none;box-shadow:0 0 0 2px #ffffffe6,0 0 0 4px color-mix(in srgb,var(--accent) 90%,white),0 0 14px 3px color-mix(in srgb,var(--accent) 50%,transparent)}}.peek-glow{animation:peek-glow-pulse 1.4s ease-in-out infinite}@keyframes peek-glow-pulse{0%,to{box-shadow:0 0 0 2px #fffafad9,0 0 9px 1px #fffafa99}50%{box-shadow:0 0 0 4px #fffafaf2,0 0 20px 6px #fffafab3}}@media(prefers-reduced-motion:reduce){.peek-glow{animation:none;box-shadow:0 0 0 3px #fffafacc}}.wordmark{font-family:var(--font-display);background:var(--wordmark-grad);-webkit-background-clip:text;background-clip:text;color:transparent}.font-num-token{font-family:var(--font-num)}.btn-pill{border-radius:var(--btn-radius)}.btn-create{background:var(--grad-create);color:var(--on-grad)}.btn-accent{background:var(--grad-start);color:var(--on-grad)}.btn-share{background:var(--grad-share);color:var(--on-grad)}@keyframes help-card-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.help-card{animation:help-card-in .28s ease}@keyframes msg-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.msg-chip{display:inline-flex;align-items:center;gap:.375rem;max-width:100%;border-radius:1rem;padding:.3rem .62rem;line-height:1.25;color:#1e293b;background:#ffffffd1;background:color-mix(in srgb,var(--accent) 12%,#ffffff);box-shadow:inset 0 0 0 1px #64748b4d,0 8px 20px -10px #0f172a40;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent),0 8px 22px -10px color-mix(in srgb,var(--accent) 45%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:msg-in .3s ease}.zen-stats-frame{position:relative;box-shadow:0 0 10px -3px #fb718573,0 0 14px -5px #a78bfa66,0 0 18px -7px #60a5fa5c,0 6px 16px -8px #0f172a4d}.zen-stats-frame:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1.5px;background:linear-gradient(135deg,#fb7185,#a78bfa,#60a5fa,#34d399,#fbbf24);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:1}html.dark .msg-chip{color:#e6ebf2;background:#0f1220b8;background:color-mix(in srgb,var(--accent) 24%,#0b1020)}.msg-chip.is-warn{color:#78350f;background:color-mix(in srgb,#f59e0b 14%,#ffffff);box-shadow:inset 0 0 0 1px color-mix(in srgb,#f59e0b 45%,transparent),0 8px 22px -10px color-mix(in srgb,#f59e0b 50%,transparent)}html.dark .msg-chip.is-warn{color:#fde68a;background:color-mix(in srgb,#f59e0b 28%,#0b1020)}.msg-tip{display:none;position:absolute;left:50%;top:calc(100% + 6px);transform:translate(-50%);z-index:50;width:-moz-max-content;width:max-content;max-width:min(80vw,22rem);white-space:normal;overflow-wrap:anywhere;text-align:center;font-size:.72rem;font-weight:500;line-height:1.3;border-radius:.6rem;padding:.4rem .7rem;color:#f8fafc;background:#0f172af5;box-shadow:0 10px 24px -10px #0000008c;pointer-events:none}html.dark .msg-tip{background:#1e293bfa}.share-card-wrap{border-radius:1.15rem;padding:2.5px;background:linear-gradient(135deg,#fb7185,#a78bfa,#60a5fa,#34d399,#fbbf24);box-shadow:0 0 24px -6px #fb718580,0 0 34px -10px #a78bfa73,0 0 46px -16px #60a5fa6b,0 0 54px -20px #34d3995c,0 24px 55px -24px #00000080}.share-card-wrap.is-animated{background:linear-gradient(135deg,#fb7185,#a78bfa,#60a5fa,#34d399,#fbbf24,#fb7185);background-size:300% 300%;animation:share-gradient-flow 9s ease-in-out infinite}@keyframes share-gradient-flow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@media(prefers-reduced-motion:reduce){.share-card-wrap.is-animated{animation:none}}.game-frame{z-index:-1;border:1.5px solid var(--frame-border);border-radius:1.75rem;box-shadow:var(--frame-shadow)}.game-frame.is-frosted{background:var(--frame-fill);box-shadow:var(--frame-shadow),var(--frame-inset);-webkit-backdrop-filter:blur(var(--frame-blur)) saturate(1.5);backdrop-filter:blur(var(--frame-blur)) saturate(1.5)}.msg-dot{flex:none;width:.45rem;height:.45rem;border-radius:9999px;background:var(--accent);box-shadow:0 0 0 3px #6366f12e;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}@media(prefers-reduced-motion:reduce){.help-card,.msg-chip{animation:none}}.auth-wordmark{font-family:var(--font-auth-display);font-weight:600;font-size:clamp(.85rem,2vw,1rem);letter-spacing:-.01em;color:var(--accent);text-align:center;margin-bottom:.85rem}.auth-title{font-family:var(--font-auth-display);font-weight:700;font-size:clamp(1.85rem,6vw,2.75rem);letter-spacing:-.02em;line-height:1.1;text-align:center;color:#0f172a;margin:0 0 1.5rem}html.dark .auth-title{color:#f1f5f9}.auth-banner{position:relative;z-index:0;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem;margin:0 auto -1.75rem;padding:.8rem 1.35rem 2.25rem;max-width:26rem;border-radius:1.15rem;text-align:center;background:linear-gradient(180deg,#dbeafe,#eff6ff 65%,#eff6ff);box-shadow:0 10px 24px -14px #2563eb66}html.dark .auth-banner{background:linear-gradient(180deg,#1e3a8a8c,#1e293b8c);box-shadow:0 10px 24px -14px #0000008c}.auth-banner-badge{flex:none;font-family:var(--font-auth-mono);font-size:.68rem;font-weight:700;letter-spacing:.02em;color:#1d4ed8;background:#fff;border-radius:9999px;padding:.22rem .65rem}html.dark .auth-banner-badge{color:#bfdbfe;background:#0f172aa6}.auth-banner-text{color:#1d4ed8;font-size:.85rem;font-weight:500}html.dark .auth-banner-text{color:#bfdbfe}.auth-card{position:relative;z-index:1;max-width:26rem;margin:0 auto;padding:1.85rem 1.5rem;border-radius:1.25rem;background:#fff;border:1px solid rgba(15,23,42,.06);box-shadow:0 30px 60px -32px #0f172a59,0 1px #0f172a0a}html.dark .auth-card{background:#0f172a;border-color:#94a3b824;box-shadow:0 30px 60px -32px #000000a6}.auth-pw-wrap{position:relative}.auth-pw-input{width:100%;border-radius:.65rem;border:1px solid rgba(15,23,42,.14);background:#f8fafc;padding:.65rem 2.5rem .65rem .85rem;font-size:.95rem;color:#0f172a;outline:none}.auth-pw-input:focus{border-color:var(--accent);background:#fff}html.dark .auth-pw-input{background:#0f172a99;border-color:#94a3b838;color:#f1f5f9}html.dark .auth-pw-input:focus{background:#0f172ad9}.auth-pw-eye{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;padding:.25rem;border-radius:9999px;color:#64748b;background:transparent}.auth-pw-eye:hover{color:#334155;background:#0f172a0f}html.dark .auth-pw-eye{color:#94a3b8}html.dark .auth-pw-eye:hover{color:#e2e8f0;background:#94a3b824}.auth-pw-checklist{list-style:none;margin:.9rem 0 0;padding:0;display:flex;flex-direction:column;gap:.4rem}.auth-pw-rule{display:flex;align-items:center;gap:.55rem;font-size:.85rem;color:#64748b}html.dark .auth-pw-rule{color:#94a3b8}.auth-pw-circle{flex:none;width:1rem;height:1rem;border-radius:9999px;border:1.5px solid #cbd5e1;background:transparent;transition:background-color .15s ease,border-color .15s ease}html.dark .auth-pw-circle{border-color:#475569}.auth-pw-rule.is-met{color:#0f172a}html.dark .auth-pw-rule.is-met{color:#e2e8f0}.auth-pw-rule.is-met .auth-pw-circle{background:#10b981;border-color:#10b981}.auth-field-label{display:block;font-size:.8rem;font-weight:600;color:#475569;margin:0 0 .35rem}html.dark .auth-field-label{color:#cbd5e1}.auth-field{width:100%;border-radius:.65rem;border:1px solid rgba(15,23,42,.14);background:#f8fafc;padding:.65rem .85rem;font-size:.95rem;color:#0f172a;outline:none}.auth-field:focus{border-color:var(--accent);background:#fff}html.dark .auth-field{background:#0f172a99;border-color:#94a3b838;color:#f1f5f9}html.dark .auth-field:focus{background:#0f172ad9}.auth-btn-primary{width:100%;border-radius:.65rem;padding:.75rem 1rem;font-size:.95rem;font-weight:600;text-align:center;background:#0f172a;color:#fff;transition:background-color .15s ease,opacity .15s ease}.auth-btn-primary:hover:not(:disabled){background:#1e293b}.auth-btn-primary:disabled{opacity:.5;cursor:not-allowed}html.dark .auth-btn-primary{background:#f1f5f9;color:#0f172a}html.dark .auth-btn-primary:hover:not(:disabled){background:#e2e8f0}.auth-link{font-size:.85rem;font-weight:500;color:#64748b;text-decoration:underline;text-underline-offset:2px}.auth-link:hover:not(:disabled){color:#0f172a}.auth-link:disabled{opacity:.5;cursor:not-allowed}html.dark .auth-link{color:#94a3b8}html.dark .auth-link:hover:not(:disabled){color:#f1f5f9}.auth-info-box{display:flex;gap:.65rem;align-items:flex-start;border-radius:.85rem;border:1px solid rgba(15,23,42,.1);background:#f8fafc;padding:.85rem 1rem;color:#475569}html.dark .auth-info-box{background:#0f172a8c;border-color:#94a3b82e;color:#cbd5e1}.auth-error{border-radius:.65rem;background:#fef2f2;color:#dc2626;padding:.6rem .85rem;font-size:.85rem;margin-bottom:.9rem}html.dark .auth-error{background:#7f1d1d59;color:#fca5a5}.auth-notice{border-radius:.65rem;background:#f0fdf4;color:#16a34a;padding:.6rem .85rem;font-size:.85rem;margin-bottom:.9rem}html.dark .auth-notice{background:#14532d59;color:#86efac}.auth-footer{margin-top:1.35rem;text-align:center;font-size:.75rem;color:#94a3b8}.auth-footer a{color:inherit;font-weight:600;text-decoration:underline}html.dark .auth-footer{color:#64748b}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-y-0{top:0;bottom:0}.left-0{left:0}.left-1\/2{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.top-1{top:.25rem}.top-1\/2{top:50%}.top-2{top:.5rem}.top-3{top:.75rem}.top-full{top:100%}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[60\]{z-index:60}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:1rem;margin-bottom:1rem}.-ml-2{margin-left:-.5rem}.-mr-0\.5{margin-right:-.125rem}.-mr-1{margin-right:-.25rem}.-mt-2{margin-top:-.5rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mr-1\.5{margin-right:.375rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-14{height:3.5rem}.h-2{height:.5rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-9{height:2.25rem}.h-\[11\.5rem\]{height:11.5rem}.h-full{height:100%}.max-h-\[88dvh\]{max-height:88dvh}.max-h-\[90dvh\]{max-height:90dvh}.max-h-\[92dvh\]{max-height:92dvh}.min-h-0{min-height:0px}.min-h-\[100dvh\]{min-height:100dvh}.w-14{width:3.5rem}.w-4{width:1rem}.w-40{width:10rem}.w-48{width:12rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-9{width:2.25rem}.w-full{width:100%}.min-w-0{min-width:0px}.max-w-2xl{max-width:42rem}.max-w-\[10rem\]{max-width:10rem}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.grid-cols-\[1fr_minmax\(0\,auto\)_1fr\]{grid-template-columns:1fr minmax(0,auto) 1fr}.grid-rows-9{grid-template-rows:repeat(9,minmax(0,1fr))}.flex-col{flex-direction:column}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-\[clamp\(2px\,0\.9vmin\,8px\)\]{gap:clamp(2px,.9vmin,8px)}.gap-\[clamp\(4px\,1vmin\,9px\)\]{gap:clamp(4px,1vmin,9px)}.gap-\[clamp\(6px\,1\.6vmin\,12px\)\]{gap:clamp(6px,1.6vmin,12px)}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.justify-self-start{justify-self:start}.justify-self-end{justify-self:end}.justify-self-center{justify-self:center}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[1\.1rem\]{border-radius:1.1rem}.rounded-\[1rem\]{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-r-\[1\.5rem\]{border-top-right-radius:1.5rem;border-bottom-right-radius:1.5rem}.rounded-r-full{border-top-right-radius:9999px;border-bottom-right-radius:9999px}.border{border-width:1px}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-slate-300{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.bg-\[var\(--accent\)\]{background-color:var(--accent)}.bg-amber-400{--tw-bg-opacity: 1;background-color:rgb(251 191 36 / var(--tw-bg-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-black\/40{background-color:#0006}.bg-black\/5{background-color:#0000000d}.bg-black\/50{background-color:#00000080}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.bg-slate-900{--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.bg-slate-900\/90{background-color:#0f172ae6}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/80{background-color:#fffc}.bg-white\/85{background-color:#ffffffd9}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-amber-400{--tw-gradient-from: #fbbf24 var(--tw-gradient-from-position);--tw-gradient-to: rgb(251 191 36 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-400{--tw-gradient-from: #22d3ee var(--tw-gradient-from-position);--tw-gradient-to: rgb(34 211 238 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-400{--tw-gradient-from: #4ade80 var(--tw-gradient-from-position);--tw-gradient-to: rgb(74 222 128 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-orange-400{--tw-gradient-from: #fb923c var(--tw-gradient-from-position);--tw-gradient-to: rgb(251 146 60 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from: #a855f7 var(--tw-gradient-from-position);--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-blue-500{--tw-gradient-to: #3b82f6 var(--tw-gradient-to-position)}.to-emerald-400{--tw-gradient-to: #34d399 var(--tw-gradient-to-position)}.to-pink-500{--tw-gradient-to: #ec4899 var(--tw-gradient-to-position)}.to-red-400{--tw-gradient-to: #f87171 var(--tw-gradient-to-position)}.to-yellow-400{--tw-gradient-to: #facc15 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-\[clamp\(4px\,1\.2vmin\,12px\)\]{padding-left:clamp(4px,1.2vmin,12px);padding-right:clamp(4px,1.2vmin,12px)}.px-\[clamp\(8px\,3vw\,32px\)\]{padding-left:clamp(8px,3vw,32px);padding-right:clamp(8px,3vw,32px)}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-\[clamp\(2px\,0\.7vmin\,7px\)\]{padding-top:clamp(2px,.7vmin,7px);padding-bottom:clamp(2px,.7vmin,7px)}.pl-2{padding-left:.5rem}.pr-4{padding-right:1rem}.pt-1{padding-top:.25rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-\[0\.7rem\]{font-size:.7rem}.text-\[0\.82rem\]{font-size:.82rem}.text-\[0\.85em\]{font-size:.85em}.text-\[0\.92rem\]{font-size:.92rem}.text-\[0\.95rem\]{font-size:.95rem}.text-\[11px\]{font-size:11px}.text-\[clamp\(0\.55rem\,1\.5vmin\,0\.7rem\)\]{font-size:clamp(.55rem,1.5vmin,.7rem)}.text-\[clamp\(0\.58rem\,1\.7vmin\,0\.74rem\)\]{font-size:clamp(.58rem,1.7vmin,.74rem)}.text-\[clamp\(0\.62rem\,1\.9vmin\,0\.85rem\)\]{font-size:clamp(.62rem,1.9vmin,.85rem)}.text-\[clamp\(0\.65rem\,1\.5vmin\,0\.95rem\)\]{font-size:clamp(.65rem,1.5vmin,.95rem)}.text-\[clamp\(0\.65rem\,1\.8vmin\,0\.8rem\)\]{font-size:clamp(.65rem,1.8vmin,.8rem)}.text-\[clamp\(0\.65rem\,2vmin\,0\.85rem\)\]{font-size:clamp(.65rem,2vmin,.85rem)}.text-\[clamp\(0\.7rem\,2\.2vmin\,1rem\)\]{font-size:clamp(.7rem,2.2vmin,1rem)}.text-\[clamp\(0\.85rem\,2\.7vmin\,1\.25rem\)\]{font-size:clamp(.85rem,2.7vmin,1.25rem)}.text-\[clamp\(1\.1rem\,3\.5vmin\,1\.8rem\)\]{font-size:clamp(1.1rem,3.5vmin,1.8rem)}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-\[0\.01em\]{letter-spacing:.01em}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-\[0\.3em\]{letter-spacing:.3em}.tracking-tight{letter-spacing:-.025em}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-amber-950{--tw-text-opacity: 1;color:rgb(69 26 3 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-board-given{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-rose-500{--tw-text-opacity: 1;color:rgb(244 63 94 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.accent-blue-600{accent-color:#2563eb}.opacity-40{opacity:.4}.opacity-60{opacity:.6}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-\[var\(--accent\)\]{--tw-ring-color: var(--accent)}.ring-amber-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(245 158 11 / var(--tw-ring-opacity, 1))}.ring-black\/5{--tw-ring-color: rgb(0 0 0 / .05)}.ring-red-600{--tw-ring-opacity: 1;--tw-ring-color: rgb(220 38 38 / var(--tw-ring-opacity, 1))}.ring-slate-200{--tw-ring-opacity: 1;--tw-ring-color: rgb(226 232 240 / var(--tw-ring-opacity, 1))}.ring-white\/70{--tw-ring-color: rgb(255 255 255 / .7)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-\[2px\]{--tw-backdrop-blur: blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-400.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-500.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-600.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-700.woff2) format("woff2")}@font-face{font-family:Sora;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/sora-500.woff2) format("woff2")}@font-face{font-family:Sora;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/sora-600.woff2) format("woff2")}@font-face{font-family:Sora;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/sora-700.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/fraunces-400.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/fraunces-600.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/fraunces-700.woff2) format("woff2")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plus-jakarta-sans-400.woff2) format("woff2")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/plus-jakarta-sans-500.woff2) format("woff2")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/plus-jakarta-sans-600.woff2) format("woff2")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/plus-jakarta-sans-700.woff2) format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/space-grotesk-500.woff2) format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/space-grotesk-600.woff2) format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-grotesk-700.woff2) format("woff2")}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-mono-400.woff2) format("woff2")}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-mono-700.woff2) format("woff2")}.sensei-shell{isolation:isolate}.sensei-bg{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;z-index:-2;transition:filter .45s ease}.sensei-bg.blurred{filter:blur(3.5px) brightness(.94)}.sensei-zen-deco{display:none}@media(max-width:767px)and (orientation:portrait){.sensei-zen-deco{display:block;position:fixed;z-index:-1;pointer-events:none;background-image:url(/sudoku-sensei-v0.1.jpg);background-repeat:no-repeat;opacity:.7;filter:blur(.5px)}.sensei-zen-deco.tl,.sensei-zen-deco.tr{top:0;width:62vw;height:34vh;background-size:150vw auto}.sensei-zen-deco.bl,.sensei-zen-deco.br{bottom:0;width:58vw;height:30vh;background-size:190vw auto}.sensei-zen-deco.tr{right:0;background-position:100% 0%;-webkit-mask-image:radial-gradient(150% 150% at 100% 0%,#000 46%,transparent 82%);mask-image:radial-gradient(150% 150% at 100% 0%,#000 46%,transparent 82%)}.sensei-zen-deco.tl{left:0;background-position:0% 0%;-webkit-mask-image:radial-gradient(150% 150% at 0% 0%,#000 46%,transparent 82%);mask-image:radial-gradient(150% 150% at 0% 0%,#000 46%,transparent 82%)}.sensei-zen-deco.bl{left:0;background-position:0% 100%;-webkit-mask-image:radial-gradient(150% 150% at 0% 100%,#000 46%,transparent 82%);mask-image:radial-gradient(150% 150% at 0% 100%,#000 46%,transparent 82%)}.sensei-zen-deco.br{right:0;background-position:100% 100%;-webkit-mask-image:radial-gradient(150% 150% at 100% 100%,#000 46%,transparent 82%);mask-image:radial-gradient(150% 150% at 100% 100%,#000 46%,transparent 82%)}}.sensei-hotspot{position:fixed;z-index:20;border:0;padding:0;background:transparent;border-radius:9999px;cursor:pointer;transition:box-shadow .25s ease,background-color .25s ease,transform .2s ease}.sensei-hotspot:hover,.sensei-hotspot:focus-visible{outline:none;background:radial-gradient(ellipse at center,#ffffff29,#fff0 70%);box-shadow:0 0 30px 8px #fde04780,inset 0 0 0 2px #ffffff52;transform:scale(1.03)}.sensei-hotspot:active{transform:scale(.98)}.sensei-hotspot.warm:hover,.sensei-hotspot.warm:focus-visible{background:linear-gradient(180deg,#fde0472e,#fb923c24 35%,#ef444429);box-shadow:0 0 30px 8px #ef444480,0 -6px 22px 4px #fde04766,inset 0 0 0 2px #ffecb359}.sensei-ambient{display:none}@media(max-width:767px)and (orientation:portrait){.sensei-ambient{display:block;position:fixed;left:0;width:100vw;z-index:5;pointer-events:none;overflow:hidden}.sensei-ambient.top{top:0}.sensei-ambient.bottom{bottom:0}.sensei-star{position:absolute;border-radius:50%;background:radial-gradient(circle,#ffffff 0%,rgba(186,230,253,.85) 45%,transparent 72%);box-shadow:0 0 7px 2px #93c5fda6;opacity:0;animation:sensei-star-twinkle 3.4s ease-in-out infinite}.sensei-star:nth-child(2n){background:radial-gradient(circle,#ffffff 0%,rgba(253,230,138,.85) 45%,transparent 72%);box-shadow:0 0 7px 2px #fbbf2499}.sensei-grid-motif{position:absolute;border:1px solid rgba(167,139,250,.5);background-image:linear-gradient(to right,rgba(167,139,250,.4) 1px,transparent 1px),linear-gradient(to bottom,rgba(167,139,250,.4) 1px,transparent 1px);background-size:33.33% 33.33%;opacity:0;animation:sensei-grid-pulse 6s ease-in-out infinite}}@keyframes sensei-star-twinkle{0%,to{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1)}}@keyframes sensei-grid-pulse{0%,to{opacity:0;transform:scale(.9)}45%,55%{opacity:.55;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.sensei-star,.sensei-grid-motif{animation:none;opacity:.35}}.sensei-exit-pill{display:none}@media(max-width:767px)and (orientation:portrait){.sensei-exit-pill{display:inline-flex;align-items:center;gap:.4rem;position:fixed;top:calc(env(safe-area-inset-top,0px) + 14px);left:50%;transform:translate(-50%);z-index:30;padding:.45rem .95rem;border:1.5px solid transparent;border-radius:9999px;background:linear-gradient(#0f1220e6,#0f1220e6) padding-box,linear-gradient(135deg,#fb7185,#a78bfa,#60a5fa,#34d399,#fbbf24) border-box;color:#f8fafc;font-family:var(--font-ui, system-ui);font-size:.82rem;font-weight:600;letter-spacing:.01em;box-shadow:0 6px 18px -6px #0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer}.sensei-exit-pill:active{transform:translate(-50%) scale(.97)}}@media(min-width:768px){.sensei-aurora-cta{--grad-create: #4f46e5;--grad-start: linear-gradient(90deg, #6366f1, #d946ef);--grad-share: linear-gradient(90deg, #d946ef, #fb7185);--on-grad: #ffffff}}.sensei-cta-circles{--grad-create: #4f46e5;--grad-share: linear-gradient(90deg, #d946ef, #fb7185);--on-grad: #ffffff}.sensei-cta-pill{border:1.5px solid transparent}.sensei-cta-circles .btn-create.sensei-cta-pill{background:linear-gradient(#4f46e5,#4f46e5) padding-box,linear-gradient(135deg,#fb7185,#a78bfa,#60a5fa,#34d399,#fbbf24) border-box}.sensei-cta-circles .btn-share.sensei-cta-pill{background:var(--grad-share) padding-box,linear-gradient(135deg,#fb7185,#a78bfa,#60a5fa,#34d399,#fbbf24) border-box}@media(max-width:767px){.sensei-cta-circles .sensei-cta-pill{padding-left:.5rem;padding-right:.5rem}.sensei-cta-circles .sensei-cta-pill svg{width:15px;height:15px}}[data-theme=sudokusensei] .ctl-caption{color:#f2751a;text-shadow:0 1px 3px rgba(0,0,0,.7)}@media(prefers-reduced-motion:reduce){.sensei-bg{transition:none}}.hover\:bg-black\/10:hover{background-color:#0000001a}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-50:hover{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-100:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-200:hover{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-50:hover{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-700:hover{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.hover\:text-slate-600:hover{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.hover\:text-slate-700:hover{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.hover\:text-slate-900:hover{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:brightness-110:hover{--tw-brightness: brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.active\:scale-90:active{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.enabled\:hover\:bg-slate-100:hover:enabled{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.enabled\:hover\:bg-slate-50:hover:enabled{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.enabled\:hover\:text-slate-900:hover:enabled{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.enabled\:hover\:brightness-110:hover:enabled{--tw-brightness: brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-0:disabled{opacity:0}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:hover\:text-slate-500:hover:disabled{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.disabled\:hover\:brightness-100:hover:disabled{--tw-brightness: brightness(1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.group:hover .group-hover\:block{display:block}.group:focus .group-focus\:block{display:block}.dark\:border-slate-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.dark\:border-slate-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.dark\:bg-amber-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(69 26 3 / var(--tw-bg-opacity, 1))}.dark\:bg-green-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(5 46 22 / var(--tw-bg-opacity, 1))}.dark\:bg-red-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(69 10 10 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-100:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-900\/80:is(.dark *){background-color:#0f172acc}.dark\:bg-slate-900\/85:is(.dark *){background-color:#0f172ad9}.dark\:bg-slate-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity, 1))}.dark\:bg-white\/10:is(.dark *){background-color:#ffffff1a}.dark\:text-amber-300:is(.dark *){--tw-text-opacity: 1;color:rgb(252 211 77 / var(--tw-text-opacity, 1))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.dark\:text-green-300:is(.dark *){--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.dark\:text-red-300:is(.dark *){--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.dark\:text-slate-100:is(.dark *){--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}.dark\:text-slate-200:is(.dark *){--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.dark\:text-slate-300:is(.dark *){--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.dark\:text-slate-400:is(.dark *){--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.dark\:text-slate-500:is(.dark *){--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.dark\:text-slate-600:is(.dark *){--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.dark\:text-slate-900:is(.dark *){--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.dark\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:ring-slate-700:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(51 65 85 / var(--tw-ring-opacity, 1))}.dark\:ring-white\/10:is(.dark *){--tw-ring-color: rgb(255 255 255 / .1)}.dark\:placeholder\:text-slate-500:is(.dark *)::-moz-placeholder{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.dark\:placeholder\:text-slate-500:is(.dark *)::placeholder{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.dark\:hover\:bg-slate-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-slate-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-slate-800:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-white:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.dark\:hover\:text-slate-100:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}.dark\:hover\:text-slate-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.dark\:hover\:text-slate-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.dark\:enabled\:hover\:bg-slate-700:hover:enabled:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.dark\:enabled\:hover\:bg-slate-800:hover:enabled:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.dark\:enabled\:hover\:text-white:hover:enabled:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}@media(min-width:640px){.sm\:my-5{margin-top:1.25rem;margin-bottom:1.25rem}.sm\:mb-4{margin-bottom:1rem}.sm\:mt-3{margin-top:.75rem}.sm\:inline{display:inline}.sm\:hidden{display:none}.sm\:h-16{height:4rem}.sm\:h-\[8\.5rem\]{height:8.5rem}.sm\:w-16{width:4rem}.sm\:p-4{padding:1rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:px-5{padding-left:1.25rem;padding-right:1.25rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-16{padding-top:4rem;padding-bottom:4rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media(min-width:768px){.md\:block{display:block}}
