:root{--color-brand-900: #4C1D95;--color-brand-700: #6D28D9;--color-brand-600: #7C3AED;--color-brand-400: #A78BFA;--color-brand-200: #EDE9FE;--grad-brand: linear-gradient(135deg, #6D28D9, #7C3AED);--shadow-brand: 0 8px 32px rgba(109, 40, 217, .45);--shadow-brand-sm: 0 4px 16px rgba(109, 40, 217, .35);--color-math-700: #0369A1;--color-math-600: #0EA5E9;--color-math-400: #38BDF8;--grad-math: linear-gradient(135deg, #0EA5E9, #38BDF8);--grad-math-deep: linear-gradient(135deg, #0369A1, #0EA5E9);--shadow-math: 0 8px 32px rgba(14, 165, 233, .45);--shadow-math-sm: 0 4px 16px rgba(14, 165, 233, .35);--color-english-700: #059669;--color-english-600: #10B981;--color-english-400: #34D399;--grad-english: linear-gradient(135deg, #10B981, #34D399);--grad-english-deep: linear-gradient(135deg, #059669, #10B981);--shadow-english: 0 8px 32px rgba(16, 185, 129, .45);--shadow-english-sm: 0 4px 16px rgba(16, 185, 129, .35);--color-korean-600: #F43F5E;--grad-korean: linear-gradient(135deg, #F43F5E, #FB7185);--shadow-korean: 0 8px 32px rgba(244, 63, 94, .45);--color-logic-700: #4338CA;--color-logic-600: #6366F1;--color-logic-400: #818CF8;--grad-logic: linear-gradient(135deg, #6366F1, #818CF8);--grad-logic-deep: linear-gradient(165deg, #312E81 0%, #4338CA 55%, #6366F1 100%);--shadow-logic: 0 8px 32px rgba(99, 102, 241, .45);--shadow-logic-sm: 0 4px 16px rgba(99, 102, 241, .35);--color-creativity-700: #C2410C;--color-creativity-600: #F97316;--color-creativity-400: #FB923C;--grad-creativity: linear-gradient(135deg, #F97316, #FB923C);--grad-creativity-deep: linear-gradient(165deg, #7C2D12 0%, #C2410C 55%, #F97316 100%);--shadow-creativity: 0 8px 32px rgba(249, 115, 22, .45);--shadow-creativity-sm: 0 4px 16px rgba(249, 115, 22, .35);--color-gold: #FBBF24;--color-danger: #EF4444;--glass-bg: rgba(255, 255, 255, .18);--glass-border: rgba(255, 255, 255, .3);--glass-blur: blur(20px);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 24px;--radius-pill: 999px;--transition-fast: .15s ease;--transition-base: .25s ease;--ink: #1A0B3E;--ink-2: #3A2C5E;--ink-3: #6B5B7D;--ivory: #FAF7F2;--paper: #FFFFFF;--brand-900: #2E1065;--brand-700: #4C1D95;--brand-600: #6D28D9;--brand-500: #7C3AED;--brand-300: #A78BFA;--brand-100: #EDE9FE;--math-700: #0369A1;--math-500: #0EA5E9;--math-300: #7DD3FC;--english-700: #065F46;--english-500: #10B981;--english-300: #6EE7B7;--korean-700: #9F1239;--korean-500: #F43F5E;--korean-300: #FDA4AF;--logic-700: #4338CA;--logic-500: #6366F1;--logic-300: #A5B4FC;--creative-700: #C2410C;--creative-500: #F97316;--creative-300: #FDBA74;--gold: #FBBF24;--lime: #D9F99D;--peach: #FECACA;--cream: #FDE68A;--coral: #FB7185;--f-display: "Fraunces", "Pretendard Variable", "Apple SD Gothic Neo", serif;--f-sans: "Plus Jakarta Sans", "Pretendard Variable", "Apple SD Gothic Neo", sans-serif;--f-kr: "Pretendard Variable", "Apple SD Gothic Neo", sans-serif;--r-sm: 10px;--r-md: 16px;--r-lg: 22px;--r-xl: 28px;--r-pill: 999px}em{font-style:normal;font-weight:900;font-family:inherit}.sb-eyebrow{font-family:var(--f-sans);font-size:10px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;display:inline-flex;align-items:center;gap:8px}.sb-eyebrow:before{content:"";width:20px;height:1px;background:currentColor;opacity:.5}.sb-display{font-family:var(--f-display);font-variation-settings:"opsz" 144,"SOFT" 60;letter-spacing:-.035em;font-weight:700;line-height:1.08}.sb-italic{font-family:var(--f-display);font-style:italic;font-weight:400}.sb-btn{font-family:var(--f-sans);font-weight:700;font-size:15px;border:none;border-radius:999px;padding:16px 28px;cursor:pointer;display:inline-flex;align-items:center;gap:10px;transition:transform .15s}.sb-btn:active{transform:scale(.96)}.sb-chip{font-family:var(--f-sans);font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:6px 12px;border-radius:999px;display:inline-flex;align-items:center;gap:6px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Apple SD Gothic Neo,Noto Sans KR,Segoe UI,sans-serif;background:#0f172a;overflow:hidden;width:100vw;height:100vh;touch-action:none;-webkit-tap-highlight-color:transparent}.screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;animation:screen-enter .3s ease forwards}.screen[hidden]{display:none!important}.glass-card{backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-brand)}.btn-primary{display:block;width:100%;padding:16px 48px;background:#fff;color:var(--color-brand-700);font-weight:700;font-size:1.05rem;border:none;border-radius:var(--radius-pill);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast);box-shadow:0 4px 16px #ffffff59}.btn-primary:active{transform:scale(.95)}.btn-ghost{background:#fff3;border:1px solid rgba(255,255,255,.4);color:#fff;border-radius:var(--radius-md);padding:8px 14px;cursor:pointer;font-size:1rem;transition:transform var(--transition-fast)}.btn-ghost:active{transform:scale(.95)}.tile{border-radius:var(--radius-lg);border:none;display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:700;color:#fff;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.tile:active{transform:scale(.95)}.tile--math{background:linear-gradient(135deg,#38bdf8,#0ea5e9);box-shadow:0 4px 14px #0ea5e980}.tile--g1{background:linear-gradient(135deg,#ffffff4d,#ffffff1f);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1.5px solid rgba(255,255,255,.4);box-shadow:0 4px 16px #0003,inset 0 1px #ffffff4d;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.3);font-size:2rem!important}.tile--selected{background:linear-gradient(135deg,#fbbf24,#f59e0b)!important;box-shadow:0 0 0 3px #fff,0 4px 16px #fbbf2499!important;transform:scale(1.08)!important}.tile--wrong{background:linear-gradient(135deg,#f87171,#ef4444)!important;box-shadow:0 4px 14px #ef44448c!important;animation:shake-wrong .32s ease}.tile--correct{animation:pulse-correct .5s ease forwards}.tile--removed{opacity:0;pointer-events:none;transition:opacity .3s ease}#hud{position:absolute;top:0;left:0;right:0;padding:calc(env(safe-area-inset-top,0px) + 16px) 18px 12px;pointer-events:none;z-index:100}.hud-exit-btn{pointer-events:all;background:#ffffff26;border:1.5px solid rgba(255,255,255,.3);color:#fff;font-size:1.2rem;line-height:1;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .1s;flex-shrink:0}.hud-exit-btn:active{transform:scale(.88);background:#ffffff38}.hud-inner{display:flex;justify-content:space-around;align-items:center;gap:10px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:#00000047;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:8px 14px;color:#fff;box-shadow:0 4px 16px #0003}.hud-item{display:flex;flex-direction:column;align-items:center;gap:2px}.hud-label{font-family:var(--f-sans);font-size:.62rem;font-weight:700;letter-spacing:.06em;opacity:.75}.hud-value{font-family:var(--f-display);font-size:1.1rem;font-weight:800;letter-spacing:-.02em;color:#fde68a}.hud-value.urgent{color:var(--color-danger);animation:pulse-hud .5s ease infinite alternate}.hud-combo{display:flex;width:fit-content;align-items:center;gap:8px;margin:10px auto 0;padding:6px 14px;background:#fde68a2e;border:1px solid rgba(253,230,138,.55);border-radius:999px;color:#fde68a;font-family:var(--f-sans);font-size:.82rem;font-weight:800;letter-spacing:.04em;min-height:0;text-shadow:0 0 12px rgba(253,230,138,.7);animation:combo-burst .25s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes screen-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-correct{0%{transform:scale(1);opacity:1}40%{transform:scale(1.12);opacity:1;box-shadow:0 0 0 8px #4ade8059}to{transform:scale(.8);opacity:0}}@keyframes shake-wrong{0%{transform:translate(0)}15%{transform:translate(-8px)}30%{transform:translate(8px)}45%{transform:translate(-6px)}60%{transform:translate(6px)}75%{transform:translate(-3px)}90%{transform:translate(3px)}to{transform:translate(0)}}@keyframes star-pop{0%{transform:scale(0) rotate(-20deg);opacity:0}60%{transform:scale(1.3) rotate(5deg);opacity:1}80%{transform:scale(.9) rotate(-2deg)}to{transform:scale(1) rotate(0);opacity:1}}@keyframes fall-in{0%{transform:translateY(-60px);opacity:0}70%{transform:translateY(4px);opacity:1}to{transform:translateY(0);opacity:1}}@keyframes tile-explode{0%{transform:scale(1);opacity:1;filter:blur(0)}50%{transform:scale(1.2);opacity:.6;filter:blur(2px)}to{transform:scale(0);opacity:0;filter:blur(8px)}}@keyframes pulse-hud{0%{transform:scale(1)}to{transform:scale(1.18)}}@keyframes combo-burst{0%{transform:scale(.6) translateY(8px);opacity:0}60%{transform:scale(1.15) translateY(-2px);opacity:1}to{transform:scale(1) translateY(0);opacity:1}}@keyframes path-draw{0%{stroke-dashoffset:200;opacity:0}to{stroke-dashoffset:0;opacity:1}}@keyframes cell-visit{0%{transform:scale(1)}40%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes cell-invalid{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.math-quiz-container{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:linear-gradient(160deg,#0369a1,#0ea5e9 60%,#38bdf8);z-index:10}.quiz-question-card{background:var(--glass-bg);border:1.5px solid var(--glass-border);border-radius:var(--radius-2xl);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-math);padding:36px 24px;text-align:center;margin:20px}.quiz-choices{display:grid;gap:10px;padding:0 16px 24px}.quiz-choices.cols-2{grid-template-columns:1fr 1fr}.quiz-choices.cols-1{grid-template-columns:1fr}.quiz-choice-btn{padding:18px 12px;border-radius:var(--radius-lg);border:1.5px solid var(--glass-border);background:var(--glass-bg);color:#fff;font-size:1.5rem;font-weight:800;cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast)}.quiz-choice-btn:active{transform:scale(.95)}.quiz-choice-btn.correct{background:#10b981;border-color:#10b981;animation:correct-pulse .4s ease}.quiz-choice-btn.wrong{background:#ef4444b3;border-color:#ef4444;animation:shake .3s ease}@keyframes correct-pulse{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}.hud-grade-badge{background:#ffffff40;border:1.5px solid rgba(255,255,255,.4);border-radius:var(--radius-pill);padding:4px 12px;color:#fff;font-size:.85rem;font-weight:800}.hud-streak{color:#fde68a;font-size:.9rem;font-weight:800}.hud-progress-bar{height:4px;background:#fff3;border-radius:var(--radius-pill);overflow:hidden;width:100%}.hud-progress-fill{height:100%;background:#fde68a;border-radius:var(--radius-pill);transition:width .4s ease}.levelup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:200;animation:mq-fade-in .2s ease}@keyframes mq-fade-in{0%{opacity:0}to{opacity:1}}.levelup-card{background:linear-gradient(135deg,#0369a1,#0ea5e9);border:2px solid rgba(255,255,255,.35);border-radius:28px;padding:40px 32px;text-align:center;max-width:320px;width:90%;box-shadow:0 16px 64px #0006;animation:card-pop .5s cubic-bezier(.34,1.56,.64,1) both}@keyframes card-pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}:root{--arith-bg-grad: linear-gradient(135deg, #0369A1, #0EA5E9);--arith-card-active-bg: rgba(255,255,255,.22);--arith-card-active-shadow: 0 8px 24px rgba(3,105,161,.45);--arith-card-lock-bg: rgba(0,0,0,.28);--arith-sheet-bg: #ffffff;--arith-timer-full: #22D3EE;--arith-timer-warn: #FBBF24;--arith-timer-danger: #EF4444;--arith-choice-bg: rgba(255,255,255,.18);--arith-correct-color: #22C55E;--arith-wrong-color: #EF4444}.arith-menu{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;min-height:100vh;background:var(--arith-bg-grad);padding:0 0 env(safe-area-inset-bottom,16px);z-index:20}.arith-menu__header{display:flex;align-items:center;gap:12px;padding:calc(env(safe-area-inset-top,0px) + 16px) 16px 8px;color:#fff}.arith-menu__header h1{flex:1;text-align:center;font-size:1.4rem;font-weight:700;margin:0}.arith-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:8px 16px 32px}.arith-card{background:var(--arith-card-active-bg);border:1px solid rgba(255,255,255,.25);box-shadow:var(--arith-card-active-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:16px;padding:16px 8px;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;transition:transform .12s,box-shadow .12s;animation:arithmetic-card-enter .35s ease-out both}.arith-card:active{transform:scale(.93)}.arith-card--locked{background:var(--arith-card-lock-bg);border-color:#ffffff1a;box-shadow:none;cursor:default}.arith-card--cleared{box-shadow:0 8px 32px #0369a199}.arith-card__emoji{font-size:2.2rem}.arith-card__level{font-size:.65rem;color:#ffffffb3;font-weight:600;text-transform:uppercase}.arith-card__name{font-size:.75rem;color:#fff;font-weight:600;text-align:center;line-height:1.2}.arith-card__stars{font-size:.85rem;letter-spacing:1px}.arith-sheet__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:200;display:flex;align-items:flex-end}.arith-sheet{background:var(--arith-sheet-bg);border-radius:24px 24px 0 0;padding:16px 20px calc(env(safe-area-inset-bottom,16px) + 16px);width:100%;box-shadow:0 -8px 40px #0369a159}.arith-sheet__handle{width:40px;height:4px;background:#e2e8f0;border-radius:2px;margin:0 auto 16px}.arith-sheet h2{font-size:1.1rem;font-weight:700;text-align:center;margin:0 0 20px;color:#1e293b}.arith-diff-btn{display:flex;justify-content:space-between;align-items:center;width:100%;padding:14px 16px;border-radius:12px;border:none;margin-bottom:10px;cursor:pointer;font-size:1rem;font-weight:600;color:#fff;transition:transform .1s,filter .1s}.arith-diff-btn:active{transform:scale(.97);filter:brightness(.9)}.arith-diff-btn--easy{background:#0ea5e9}.arith-diff-btn--normal{background:#0369a1}.arith-diff-btn--hard{background:#1e3a5f}.arith-diff-cancel{width:100%;padding:12px;border:none;background:none;color:#64748b;font-size:.95rem;cursor:pointer;margin-top:4px}.arith-game{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--arith-bg-grad);display:flex;flex-direction:column;z-index:10}.arith-hud{padding:calc(env(safe-area-inset-top,0px) + 12px) 16px 0;display:flex;align-items:center;gap:8px;color:#fff;font-size:.9rem;font-weight:600}.arith-hud__progress{flex:1;text-align:center}.arith-timer-track{height:6px;background:#ffffff40;border-radius:3px;margin:8px 16px 0;overflow:hidden}.arith-timer-bar{height:100%;border-radius:3px;background:var(--arith-timer-full);transition:width 1s linear,background .3s}.arith-timer-bar--warn{background:var(--arith-timer-warn)}.arith-timer-bar--danger{background:var(--arith-timer-danger);animation:timer-bar-danger .6s infinite}.arith-question-card{margin:12px 16px 0;padding:16px;background:#ffffff26;border:1px solid rgba(255,255,255,.25);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:20px;flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;overflow:hidden}.arith-formula{font-size:1.3rem;font-weight:700;color:#fff}.arith-visual{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;padding:4px}.arith-visual__item{transition:opacity .2s}.arith-visual__item--strike{opacity:.25;text-decoration:line-through}.arith-visual__op{font-size:1.8rem;font-weight:700;color:#fffc;align-self:center;margin:0 4px}.arith-visual-row{display:flex;gap:4px;width:100%;justify-content:center}.arith-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 16px calc(env(safe-area-inset-bottom,8px) + 12px)}.arith-choice{background:var(--arith-choice-bg);border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:14px;padding:18px;font-size:1.6rem;font-weight:700;color:#fff;text-align:center;cursor:pointer;transition:transform .1s}.arith-choice:active{transform:scale(.95)}.arith-choice--correct{background:var(--arith-correct-color)!important;border-color:transparent;animation:choice-correct-flash .4s ease-out}.arith-choice--wrong{background:var(--arith-wrong-color)!important;border-color:transparent;animation:choice-shake .3s ease-out}.arith-choice--highlight{background:#22c55e66!important}@keyframes arithmetic-card-enter{0%{transform:translateY(20px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes sheet-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes sheet-slide-down{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes choice-correct-flash{0%{transform:scale(1)}40%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes choice-shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}@keyframes timer-bar-danger{0%,to{opacity:1}50%{opacity:.55}}@keyframes question-exit{to{transform:translateY(-12px);opacity:0}}@keyframes question-enter{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes lock-shake{0%,to{transform:translate(0) rotate(0)}20%{transform:translate(-6px) rotate(-5deg)}60%{transform:translate(6px) rotate(5deg)}}@keyframes emoji-pop-in{0%{transform:scale(0) rotate(-15deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.cg-cell--start{background:linear-gradient(135deg,#10b981,#059669)!important;border:2px solid rgba(52,211,153,.9)!important;box-shadow:0 0 18px #10b981b3;animation:cg-start-pulse 2s ease-in-out infinite}.cg-cell--start.visited{background:#fb923c59!important;border:1px solid rgba(249,115,22,.5)!important;box-shadow:none;animation:none}.cg-cell--start.current{background:#fb923cd9!important;animation:none}.cg-cell--end{background:linear-gradient(135deg,#6d28d9,#7c3aed)!important;border:2px solid rgba(167,139,250,.9)!important;box-shadow:0 0 18px #6d28d9b3;animation:cg-end-spin 3s ease-in-out infinite}.cg-cell--end.urgent{animation:cg-end-urgent .6s ease-in-out infinite!important;border:3px solid #C4B5FD!important;box-shadow:0 0 28px #a78bfae6!important}.cg-cell--end.reached{background:linear-gradient(135deg,#a78bfa,#c4b5fd)!important;animation:cg-end-clear .5s ease-out!important;border:2px solid #E9D5FF!important}@keyframes cg-start-pulse{0%,to{box-shadow:0 0 12px #10b9818c}50%{box-shadow:0 0 26px #10b981e6}}@keyframes cg-end-spin{0%,to{box-shadow:0 0 18px #6d28d999}50%{box-shadow:0 0 30px #a78bfad9}}@keyframes cg-end-urgent{0%,to{box-shadow:0 0 18px #6d28d999;transform:scale(1)}50%{box-shadow:0 0 38px #a78bfa;transform:scale(1.06)}}@keyframes cg-end-clear{0%{transform:scale(1)}40%{transform:scale(1.2);box-shadow:0 0 48px #a78bfa}to{transform:scale(1)}}.cg-rule-chips{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:6px}.cg-rule-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:999px;font-size:12px;font-weight:800;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.cg-rule-chip--start{background:#10b98140;border:1px solid rgba(52,211,153,.6);color:#6ee7b7}.cg-rule-chip--end{background:#6d28d940;border:1px solid rgba(167,139,250,.6);color:#c4b5fd}
