:root{color:#24324a;font-synthesis:none;text-rendering:optimizelegibility;--tap-min:44px;--radius-card:22px;--radius-small:14px;--space-1:8px;--space-2:12px;--space-3:16px;--space-4:24px;--primary:#625bd8;--primary-dark:#4740b8;--primary-soft:#ecebff;--accent:#ffb648;--success:#168968;--success-soft:#e3f7f0;--danger:#c55361;--danger-soft:#fff0f2;--ink:#24324a;--muted:#65718a;--line:#dfe3f2;--surface:#fff;--shadow:0 18px 55px #2a2f641f;background:#f5f6ff;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button,select,input{min-height:var(--tap-min)}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}body{background:radial-gradient(circle at 10% 0,#ffd99d6b,#0000 32%),radial-gradient(circle at 95% 10%,#aecdff73,#0000 28%),#f5f6ff}.welcome-screen{place-items:center;min-height:100dvh;padding:28px;display:grid}.welcome-card{width:min(720px,100%);box-shadow:var(--shadow);text-align:center;background:#fffffff0;border:1px solid #fffc;border-radius:32px;padding:clamp(28px,6vw,56px)}.brand-mark,.mini-logo{background:linear-gradient(135deg, var(--primary), #8b7ff2);color:#fff;place-items:center;display:inline-grid;box-shadow:0 10px 25px #625bd847}.brand-mark{border-radius:24px;width:76px;height:76px;font-size:38px}.mini-logo{border-radius:14px;width:44px;height:44px;font-size:22px}.eyebrow{color:var(--primary);letter-spacing:.02em;margin:22px 0 8px;font-weight:800}.welcome-card h1{margin:0;font-size:clamp(2rem,5vw,3.4rem);line-height:1.05}.welcome-copy{color:var(--muted);max-width:610px;margin:20px auto;font-size:1.08rem;line-height:1.75}.session-summary{flex-wrap:wrap;justify-content:center;gap:10px;margin:22px 0;display:flex}.session-summary span{border:1px solid var(--line);background:#f3f4fb;border-radius:999px;padding:10px 14px;font-weight:700}.welcome-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.primary-action,.secondary-action,.next-action{border:0;border-radius:14px;padding:12px 22px;font-weight:800}.primary-action,.next-action{background:var(--primary);color:#fff;box-shadow:0 10px 24px #625bd83d}.primary-action:hover,.next-action:hover{background:var(--primary-dark)}.secondary-action{background:var(--primary-soft);color:var(--primary-dark)}.resume-note{color:var(--muted);margin:18px 0 0;font-size:.94rem}.app-shell{min-height:100dvh}.topbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);z-index:20;background:#ffffffeb;justify-content:space-between;align-items:center;gap:18px;padding:14px 22px;display:flex;position:sticky;top:0}.topbar-title{align-items:center;gap:12px;display:flex}.topbar-title strong{font-size:1.05rem;display:block}.topbar-title small{color:var(--muted)}.session-stats{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.session-stats span{background:#f3f4fb;border-radius:999px;padding:8px 11px;font-size:.9rem;font-weight:700}.remaining-time{color:var(--muted)}.progress-path{padding:12px 18px 4px;overflow-x:auto}.progress-path ol{justify-content:space-between;align-items:center;width:max-content;min-width:min(100%,980px);margin:0 auto;padding:0;list-style:none;display:flex}.progress-path li{min-width:112px;color:var(--muted);flex-direction:column;align-items:center;gap:5px;font-size:.82rem;font-weight:700;display:flex;position:relative}.progress-path li:not(:last-child):after{content:"";background:var(--line);width:calc(100% - 40px);height:3px;position:absolute;top:16px;left:calc(50% + 20px)}.progress-path li[data-status=complete]:after{background:var(--success)}.stage-dot{width:34px;height:34px;color:var(--muted);z-index:1;background:#e8eaf4;border-radius:50%;place-items:center;display:grid}.progress-path li[data-status=current]{color:var(--primary-dark)}.progress-path li[data-status=current] .stage-dot{background:var(--primary);color:#fff;box-shadow:0 0 0 6px var(--primary-soft)}.progress-path li[data-status=complete]{color:var(--success)}.progress-path li[data-status=complete] .stage-dot{background:var(--success);color:#fff}.learning-layout{grid-template-columns:minmax(0,52fr) minmax(360px,48fr);gap:16px;min-height:calc(100dvh - 150px);padding:12px 18px 18px;display:grid}.question-panel{align-items:stretch;display:grid}.question-card,.scratchpad{border:1px solid var(--line);border-radius:var(--radius-card);background:#fffffff5;box-shadow:0 10px 35px #2a2f6414}.question-card{padding:clamp(22px,3vw,38px)}.question-meta{color:var(--muted);justify-content:space-between;gap:12px;font-size:.9rem;display:flex}.stage-pill{background:var(--primary-soft);color:var(--primary-dark);border-radius:999px;padding:7px 11px;font-weight:800}.question-card h2{margin:26px 0;font-size:clamp(1.35rem,2.7vw,2.05rem);line-height:1.55}.answer-form{gap:18px;display:grid}.answer-label,.input-grid label,.order-grid label{gap:8px;font-weight:750;display:grid}.input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.answer-form input,.answer-form select{border:2px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:14px;padding:10px 13px;font-size:1.05rem}.answer-form input:focus,.answer-form select:focus{border-color:var(--primary);outline:3px solid #625bd82e}.answer-form>button,.choice-button{border:0;border-radius:14px;padding:12px 16px;font-weight:800}.answer-form>button{background:var(--primary);color:#fff;justify-self:start;min-width:150px}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.choice-button{color:var(--ink);border:2px solid var(--line);text-align:left;background:#f5f6fb}.choice-button:hover{border-color:var(--primary);background:var(--primary-soft)}.order-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.vertical-math{background:#f8f9fe;border-radius:16px;width:fit-content;max-width:100%;padding:18px}.digit-row{justify-content:flex-end;display:flex}.digit-cell,.digit-row input{text-align:center;background:#fff;border:1px solid #cbd1e3;place-items:center;width:48px;height:52px;font-size:1.3rem;display:grid}.digit-row input{border:2px solid var(--primary);border-radius:4px;padding:0}.operator-row{align-items:center;gap:8px;font-size:1.5rem;display:flex}.result-line{background:var(--ink);height:3px;margin:5px 0}.feedback-card{border-radius:16px;margin-top:18px;padding:15px 17px}.feedback-card p{margin:8px 0 0;line-height:1.6}.feedback-card.is-correct{background:var(--success-soft);color:#116d54}.feedback-card.is-wrong{background:var(--danger-soft);color:#8b3944}.next-action{float:right;margin-top:16px}.scratchpad{flex-direction:column;min-height:560px;display:flex;overflow:hidden}.scratchpad.is-full-screen{z-index:100;min-height:auto;position:fixed;inset:8px;box-shadow:0 25px 80px #14193752}.scratchpad-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.scratchpad-header strong,.scratchpad-header small{display:block}.scratchpad-header small{color:var(--muted);margin-top:2px}.scratchpad-toolbar{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.scratchpad-toolbar button{min-width:var(--tap-min);border:1px solid var(--line);color:var(--ink);background:#f5f6fb;border-radius:11px;font-weight:800}.scratchpad-toolbar button.is-active{background:var(--primary);color:#fff;border-color:var(--primary)}.canvas-wrap{touch-action:none;background-color:#fffef8;flex:1;min-height:420px;position:relative;overflow:hidden}.scratchpad[data-grid=grid] .canvas-wrap{background-image:linear-gradient(#dfe6f0 1px,#0000 1px),linear-gradient(90deg,#dfe6f0 1px,#0000 1px);background-size:28px 28px}.scratchpad[data-grid=place-value] .canvas-wrap{background-image:linear-gradient(90deg,#dfe6f0 1px,#0000 1px);background-size:14.2857% 100%}.canvas-wrap canvas{touch-action:none;width:100%;height:100%;position:absolute;inset:0}.place-value-headings{z-index:2;pointer-events:none;grid-template-columns:repeat(7,1fr);display:grid;position:absolute;top:0;left:0;right:0}.place-value-headings span{text-align:center;color:var(--primary-dark);background:#ecebffe6;border-right:1px solid #d5d9e8;padding:8px 2px;font-size:.85rem;font-weight:800}@media (width<=900px){.topbar{align-items:flex-start}.learning-layout{grid-template-columns:1fr}.scratchpad{min-height:480px}}@media (width<=620px){.topbar{flex-direction:column;padding:10px 12px}.session-stats{justify-content:flex-start}.remaining-time{display:none}.progress-path{padding-inline:8px}.learning-layout{padding:8px}.question-card{padding:20px 16px}.input-grid,.choice-grid,.order-grid{grid-template-columns:1fr}.scratchpad:not(.is-full-screen){min-height:0;box-shadow:none;background:0 0;border:0}.scratchpad:not(.is-full-screen) .canvas-wrap,.scratchpad:not(.is-full-screen) .scratchpad-header>div:first-child,.scratchpad:not(.is-full-screen) .scratchpad-toolbar button:not([aria-label=เต็มหน้าจอ]){display:none}.scratchpad:not(.is-full-screen) .scratchpad-header{border:0;justify-content:stretch;padding:0}.scratchpad:not(.is-full-screen) .scratchpad-toolbar,.scratchpad:not(.is-full-screen) .scratchpad-toolbar button{width:100%}.scratchpad:not(.is-full-screen) .scratchpad-toolbar button[aria-label=เต็มหน้าจอ]:after{content:" เปิดพื้นที่เขียนทด"}}.profile-card{width:min(820px,100%)}.profile-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin:24px 0;display:grid}.profile-tile{border:2px solid var(--line);color:var(--ink);background:#fff;border-radius:22px;justify-items:center;gap:8px;padding:18px 12px;display:grid;box-shadow:0 8px 22px #2a2f6412}.profile-tile:after{content:"";background:var(--profile-color);border-radius:999px;width:44px;height:5px}.profile-tile.is-selected{border-color:var(--profile-color);box-shadow:0 0 0 5px color-mix(in srgb, var(--profile-color) 18%, transparent)}.profile-avatar{font-size:3.1rem;line-height:1}.pin-form{text-align:left;align-items:end;gap:10px;max-width:380px;margin:20px auto;display:flex}.pin-form label,.create-profile label{flex:1;gap:7px;font-weight:800;display:grid}.pin-form input,.create-profile input{border:2px solid var(--line);border-radius:14px;width:100%;padding:10px 13px;font-size:1.05rem}.create-profile{text-align:left;gap:18px;display:grid}.create-profile h2{text-align:center;margin:0}.create-profile fieldset{border:0;margin:0;padding:0}.create-profile legend{margin-bottom:8px;font-weight:800}.avatar-grid,.color-grid{flex-wrap:wrap;gap:9px;display:flex}.avatar-choice{border:2px solid var(--line);background:#f7f8fc;border-radius:17px;width:58px;height:58px;font-size:1.9rem}.avatar-choice.is-selected{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 4px #625bd81f}.color-choice{width:44px;height:44px;box-shadow:0 0 0 1px var(--line);border:4px solid #fff;border-radius:50%}.color-choice.is-selected{box-shadow:0 0 0 4px var(--ink)}.form-actions{justify-content:center;gap:10px;display:flex}.form-error{color:#9c3442;background:var(--danger-soft);border-radius:13px;padding:11px 14px;font-weight:700}.text-action{color:var(--muted);background:0 0;border:0;font-weight:800;text-decoration:underline}.active-profile-banner{background:color-mix(in srgb, var(--profile-color) 10%, white);border:1px solid color-mix(in srgb, var(--profile-color) 28%, white);text-align:left;border-radius:18px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;margin:22px 0;padding:13px 15px;display:grid}.active-profile-banner>span{font-size:2.4rem}.active-profile-banner strong,.active-profile-banner small{display:block}.active-profile-banner small{color:var(--muted);margin-top:2px}.topbar-profile{background:#f5f6fb;border-radius:14px;align-items:center;gap:7px;padding:5px 8px;display:flex}.topbar-profile>span{font-size:1.45rem}.topbar-profile button{min-height:34px;color:var(--primary-dark);background:#fff;border:0;border-radius:9px;padding:5px 8px;font-weight:800}.dashboard-shell{background:#f5f6ff;min-height:100dvh}.dashboard-header{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;justify-content:space-between;align-items:center;gap:14px;padding:13px 20px;display:flex;position:sticky;top:0}.dashboard-player{align-items:center;gap:10px;display:flex}.dashboard-player>span{font-size:2rem}.dashboard-player strong,.dashboard-player small{display:block}.dashboard-player small{color:var(--muted)}.dashboard-content{gap:18px;width:min(1050px,100% - 28px);margin:0 auto;padding:24px 0 50px;display:grid}.dashboard-status{text-align:center;color:var(--muted)}.weekly-quest,.stats-section{border:1px solid var(--line);background:#fff;border-radius:24px;box-shadow:0 12px 34px #2a2f6414}.weekly-quest{grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:18px;display:grid}.quest-icon{background:#fff4d8;border-radius:20px;place-items:center;width:64px;height:64px;font-size:2.2rem;display:grid}.quest-content h3,.quest-content p{margin:0 0 5px}.quest-progress{background:#eceef6;border-radius:999px;height:12px;margin:9px 0 6px;overflow:hidden}.quest-progress span{border-radius:inherit;background:linear-gradient(90deg, var(--accent), #ffcc69);height:100%;display:block}.quest-opened{background:var(--success-soft);color:#116d54;border-radius:999px;padding:10px 13px;font-weight:850}.stats-section{padding:22px}.stats-section h2{margin:0 0 18px}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.metric-grid article{border:1px solid var(--line);background:#f7f8fc;border-radius:17px;gap:4px;padding:14px;display:grid}.metric-grid span,.metric-grid small{color:var(--muted)}.metric-grid strong{font-size:1.45rem}.weak-skill-card{background:#fffaf0;border:1px solid #f4dfb8;border-radius:18px;margin-top:16px;padding:16px}.weak-skill-card h3,.weak-skill-card p{margin:0}.weak-skill-card ul{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.weak-skill-card li{justify-content:space-between;gap:12px;display:flex}.friendly-note{background:var(--primary-soft);color:var(--primary-dark);border-radius:14px;padding:12px 14px;font-weight:800}.leaderboard-list{gap:10px;display:grid}.leader-row{border:1px solid var(--line);border-radius:17px;grid-template-columns:36px 48px 1fr auto;align-items:center;gap:10px;padding:11px 13px;display:grid}.leader-row.is-current{border-color:var(--primary);background:#faf9ff}.leader-rank{background:#eff1f8;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:900;display:grid}.leader-avatar{border-radius:15px;place-items:center;width:46px;height:46px;font-size:1.7rem;display:grid}.leader-row strong,.leader-row small{display:block}.leader-row small{color:var(--muted);margin-top:3px}.leader-stars{white-space:nowrap;font-size:1.1rem}.comparison-footnote{color:var(--muted);margin-bottom:0;font-size:.92rem}@media (width<=900px){.topbar-profile{order:3}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.pin-form{display:grid}.active-profile-banner{grid-template-columns:auto 1fr}.active-profile-banner button,.topbar-profile{width:100%}.weekly-quest{grid-template-columns:auto 1fr}.weekly-quest>button,.quest-opened{text-align:center;grid-column:1/-1}.metric-grid{grid-template-columns:1fr}.dashboard-header{padding:10px}.dashboard-header .secondary-action{padding-inline:10px}.leader-row{grid-template-columns:32px 42px 1fr}.leader-stars{grid-column:3}}.parent-shell{min-height:100dvh;color:var(--ink);background:linear-gradient(#f4f3ff 0,#f8fbff 48%,#fff 100%)}.parent-login-shell{place-items:center;padding:24px;display:grid}.parent-login-card{border:1px solid var(--line);text-align:center;background:#fff;border-radius:28px;width:min(520px,100%);padding:30px;box-shadow:0 22px 60px #2a2f6421}.parent-login-card h1{margin:6px 0 8px}.parent-login-card>p:not(.eyebrow){color:var(--muted)}.parent-login-form{text-align:left;gap:16px;margin:22px 0;display:grid}.parent-login-form label,.parent-settings-card label,.pin-reset-form label{gap:7px;font-weight:800;display:grid}.parent-login-form input,.parent-settings-card input[type=number],.pin-reset-form input{border:2px solid var(--line);width:100%;min-height:48px;font:inherit;border-radius:14px;padding:9px 12px}.secondary-link{color:var(--primary-dark);font-weight:800}.parent-header{z-index:12;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;justify-content:space-between;align-items:center;gap:18px;padding:15px max(18px,50vw - 580px);display:flex;position:sticky;top:0}.parent-header h1,.parent-header p{margin:0}.parent-header>div:last-child{gap:9px;display:flex}.parent-home-link{place-items:center;text-decoration:none;display:inline-grid}.parent-content{gap:20px;width:min(1160px,100% - 28px);margin:0 auto;padding:24px 0 54px;display:grid}.parent-settings-card{border:1px solid var(--line);background:#fff;border-radius:24px;grid-template-columns:minmax(220px,.7fr) minmax(420px,1.3fr);gap:24px;padding:22px;display:grid;box-shadow:0 12px 36px #2a2f6414}.parent-settings-card h2,.parent-settings-card p{margin:0 0 6px}.parent-settings-card p{color:var(--muted)}.parent-settings-card form{gap:14px;display:grid}.toggle-label{align-items:center;grid-template-columns:auto 1fr!important}.toggle-label input{width:24px;height:24px;accent-color:var(--primary)}.number-with-unit{align-items:center;gap:9px;font-weight:700;display:flex}.number-with-unit input{max-width:140px}.save-message{background:var(--success-soft);color:#126b52;border-radius:13px;margin:0;padding:10px 13px;font-weight:800}.parent-player-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.parent-player-card{border:1px solid var(--line);background:#fff;border-radius:24px;gap:16px;padding:20px;display:grid;box-shadow:0 12px 34px #2a2f6414}.parent-player-card>header{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding-bottom:14px;display:flex}.parent-player-card>header>span{background:color-mix(in srgb, var(--profile-color) 15%, white);border-radius:18px;place-items:center;width:58px;height:58px;font-size:2rem;display:grid}.parent-player-card h2,.parent-player-card h3,.parent-player-card p{margin:0}.parent-player-card header small{color:var(--muted)}.parent-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.parent-metrics section{border:1px solid var(--line);background:#f7f8fc;border-radius:16px;padding:13px}.parent-metrics h3{color:var(--muted);margin-bottom:5px;font-size:.9rem}.parent-metrics strong,.parent-metrics small{display:block}.parent-metrics strong{font-size:1.3rem}.parent-metrics small{color:var(--muted);margin-top:2px}.parent-weak-skills{background:#fffaf0;border:1px solid #f4dfb8;border-radius:17px;padding:14px}.parent-weak-skills ul{gap:7px;margin:10px 0 0;padding:0;list-style:none;display:grid}.parent-weak-skills li{justify-content:space-between;gap:10px;display:flex}.pin-reset-form{border:1px dashed var(--line);border-radius:16px;gap:12px;padding:15px;display:grid}@media (width<=850px){.parent-settings-card,.parent-player-grid{grid-template-columns:1fr}}@media (width<=620px){.parent-header{align-items:flex-start;padding:12px;position:static}.parent-header>div:last-child{flex-direction:column}.parent-content{width:min(100% - 16px,1160px);padding-top:12px}.parent-settings-card,.parent-player-card{border-radius:19px;padding:16px}.parent-metrics{grid-template-columns:1fr}.parent-login-card{padding:22px 16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.sync-status{z-index:90;color:#fff;background:#24324a;border-radius:999px;margin:0;padding:10px 14px;font-weight:800;position:fixed;bottom:14px;right:14px;box-shadow:0 10px 28px #24324a3d}.subject-hub-shell{background:linear-gradient(#f6f4ff 0%,#f4f9ff 50%,#fff 100%);min-height:100dvh}.subject-hub-header{justify-content:space-between;align-items:center;gap:24px;width:min(1120px,100% - 32px);margin:0 auto;padding:34px 0 18px;display:flex}.subject-hub-header h1,.subject-hub-header p{margin:0}.subject-hub-header h1{font-size:clamp(1.8rem,4vw,3rem)}.active-profile-banner.compact{min-width:min(460px,100%);margin:0}.overall-star-banner{background:linear-gradient(135deg,#fff5ce,#fffdf4);border:1px solid #f1d888;border-radius:26px;justify-content:space-between;align-items:center;gap:20px;width:min(1120px,100% - 32px);margin:0 auto 22px;padding:20px 24px;display:flex;box-shadow:0 14px 36px #7154161a}.overall-star-banner>div{align-items:center;gap:14px;display:flex}.overall-star-banner>div>span{font-size:2.8rem}.overall-star-banner small,.overall-star-banner strong{display:block}.overall-star-banner strong{color:#815d05;font-size:1.8rem}.overall-star-banner p{color:#735f2b;margin:0;font-weight:700}.subject-hub-content{width:min(1120px,100% - 32px);margin:0 auto;padding-bottom:54px}.subject-section-title{justify-content:space-between;align-items:end;gap:18px;margin-bottom:16px;display:flex}.subject-section-title h2,.subject-section-title p{margin:0 0 5px}.subject-section-title p{color:var(--muted)}.subject-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:17px;display:grid}.subject-card{--subject-color:var(--primary);border:1px solid color-mix(in srgb, var(--subject-color) 30%, var(--line));text-align:left;color:var(--ink);background:#fff;border-radius:24px;grid-template-columns:auto 1fr auto;align-items:start;gap:14px;padding:20px;display:grid;position:relative;overflow:hidden;box-shadow:0 12px 32px #2a2f6414}.subject-card:before{content:"";background:var(--subject-color);width:7px;position:absolute;inset:0 auto 0 0}.subject-card:hover{border-color:var(--subject-color);box-shadow:0 16px 38px color-mix(in srgb, var(--subject-color) 16%, transparent);transform:translateY(-2px)}.subject-icon{background:color-mix(in srgb, var(--subject-color) 12%, white);border-radius:18px;place-items:center;width:58px;height:58px;font-size:2rem;display:grid}.subject-card h3,.subject-card p{margin:2px 0 5px}.subject-card p{color:var(--muted);line-height:1.5}.subject-card small{color:var(--subject-color);font-weight:800}.subject-stars{white-space:nowrap;color:#8a6500;font-size:1.05rem}.subject-enter{color:var(--subject-color);grid-column:2/-1;font-weight:850}.empty-state,.global-notice,.global-loading{border-radius:14px;padding:13px 16px;font-weight:700}.global-notice,.global-loading{z-index:100;margin:0;position:fixed;top:12px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #2a2f642e}.global-notice{color:#725700;background:#fff7dc}.global-loading{color:#fff;background:#24324a}.stats-tabs{gap:8px;padding:4px 2px;display:flex;overflow-x:auto}.stats-tabs button{white-space:nowrap;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:999px;padding:10px 15px;font-weight:800}.stats-tabs button.is-active{background:var(--primary);color:#fff;border-color:var(--primary)}.stats-subject-heading{align-items:center;gap:12px;display:flex}.stats-subject-heading>span{background:var(--primary-soft);border-radius:17px;place-items:center;width:54px;height:54px;font-size:2rem;display:grid}.stats-subject-heading h1,.stats-subject-heading p{margin:0}.stats-subject-heading p{color:var(--muted)}.overall-summary-card{background:linear-gradient(135deg,#fffdf5,#fff);border-color:#f1dea7}.overall-score{background:#fff5cf;border-radius:18px;justify-content:space-between;align-items:baseline;gap:16px;padding:16px;display:flex}.overall-score strong{color:#805d00;font-size:clamp(2rem,6vw,3.5rem)}.overall-score span{color:#765f27;font-weight:700}.bonus-breakdown{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:13px;display:grid}.bonus-breakdown article{background:#fff;border:1px solid #eadba9;border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:9px;padding:13px;display:grid}.bonus-breakdown strong{color:#0d7a5e;font-size:1.35rem}.bonus-breakdown span{color:var(--muted);font-size:.9rem}.subject-star-chips{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.subject-star-chips span{border:1px solid var(--line);background:#f4f5fb;border-radius:999px;padding:8px 11px}.subject-manager{align-items:start}.subject-manager-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.file-action{cursor:pointer;place-items:center;display:inline-grid!important}.file-action input{opacity:0;width:1px;height:1px;position:absolute}.parent-subject-list{grid-column:1/-1;gap:9px;margin-top:8px;display:grid}.parent-subject-row{border:1px solid var(--line);background:#fafbff;border-radius:17px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.parent-subject-row .subject-icon{width:46px;height:46px;font-size:1.65rem}.parent-subject-row strong,.parent-subject-row small{display:block}.parent-subject-row small{color:var(--muted);margin-top:3px}.toggle-label.compact{white-space:nowrap;gap:7px;display:flex!important}.bundled-badge{background:var(--success-soft);color:#126b52;border-radius:999px;padding:7px 10px;font-weight:800}@media (width<=780px){.subject-hub-header{flex-direction:column;align-items:stretch}.active-profile-banner.compact{min-width:0}.overall-star-banner,.overall-score{flex-direction:column;align-items:flex-start}.bonus-breakdown{grid-template-columns:1fr}}@media (width<=620px){.subject-hub-header,.subject-hub-content,.overall-star-banner{width:min(100% - 18px,1120px)}.subject-hub-header{padding-top:18px}.subject-section-title{flex-direction:column;align-items:flex-start}.subject-card{grid-template-columns:auto 1fr}.subject-stars{grid-column:2}.subject-enter{grid-column:1/-1}.parent-subject-row{grid-template-columns:auto 1fr}.parent-subject-row>:last-child{grid-column:2}}.topic-preview{text-align:left;gap:10px;margin:18px 0 24px;display:grid}.topic-preview section{border:1px solid var(--line);background:#fafaff;border-radius:16px;padding:13px 15px}.topic-preview strong,.topic-preview small{display:block}.topic-preview small{color:var(--muted);margin-top:5px;line-height:1.5}.progress-group-label{border:1px solid var(--line);width:fit-content;color:var(--primary-dark);background:#fff;border-radius:999px;margin:0 auto 10px;padding:7px 13px;font-weight:850}.progress-path ol{min-width:min(100%,620px)}.adaptive-offer{position:relative;overflow:hidden}.adaptive-offer:before{content:"";background:linear-gradient(90deg, var(--primary), #f6bd4d);height:8px;position:absolute;inset:0 0 auto}.adaptive-offer.is-review:before{background:linear-gradient(90deg,#2e9d73,#8ad8c2)}.adaptive-reward-note{color:#7a5b00;background:#fff7d8;border-radius:14px;width:fit-content;max-width:100%;margin:0 auto 22px;padding:11px 15px;font-weight:850}.adaptive-offer.is-review .adaptive-reward-note{background:var(--success-soft);color:#126b52}@media (width<=620px){.topic-preview section{padding:11px 12px}.progress-path ol{min-width:520px}}.danger-action{color:#a62f3a;background:#fff1f2;border:1px solid #e7a6ac;border-radius:14px;padding:10px 14px;font-weight:850}.danger-action:hover{background:#ffe5e8}.profile-admin-actions{flex-wrap:wrap;gap:10px;display:flex}.archived-player-manager,.question-manager{grid-column:1/-1}.archived-player-list,.question-library-list{grid-column:1/-1;gap:10px;display:grid}.archived-player-row{border:1px solid var(--line);background:#fafbff;border-radius:17px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:13px;display:grid}.archived-player-row>span{font-size:2rem}.archived-player-row strong,.archived-player-row small{display:block}.archived-player-row small,.muted-copy{color:var(--muted)}.question-manager-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.question-manager-tools label{gap:6px;font-weight:800;display:grid}.question-manager-tools select,.question-manager-tools input{border:1px solid var(--line);background:#fff;border-radius:13px;width:100%;padding:11px 12px}.question-library-row{border:1px solid var(--line);background:#fff;border-radius:17px;gap:8px;padding:14px;display:grid}.question-library-row.is-disabled{background:#fff7f7;border-color:#e5b2b7}.question-library-heading{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.question-library-heading span,.question-library-heading mark{color:var(--muted);background:#f2f3fa;border-radius:999px;padding:4px 8px;font-size:.85rem}.question-library-heading mark{color:#8a5c00;background:#fff1d9}.question-library-row p{margin:0;line-height:1.55}.question-library-row small{color:#9c3740}.question-library-row button{justify-self:start}.question-safety-row{flex-wrap:wrap;align-items:center;gap:10px;margin:2px 0 14px;display:flex}.report-question-action{color:#795800;background:#fff9e9;border:1px solid #e4c075;border-radius:999px;padding:8px 11px;font-weight:800}.report-question-action:disabled{opacity:.65}.question-safety-row small{color:var(--muted);font-weight:700}@media (width<=620px){.archived-player-row{grid-template-columns:auto 1fr}.archived-player-row button{grid-column:2}.question-manager-tools{grid-template-columns:1fr}}.star-period-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.star-period-card{border:1px solid var(--line);background:#fff;border-radius:18px;gap:4px;padding:15px;display:grid}.star-period-card span,.star-period-card small{color:var(--muted)}.star-period-card strong{color:var(--ink);font-size:1.7rem}.star-period-card.is-weekly{background:#fff6d5;border-color:#edd58a}.star-period-card.is-lifetime{background:#eefaf5;border-color:#bfe6d7}.star-period-card.is-previous{background:#f5f3ff;border-color:#d9d1ff}.weekly-reset-note{color:var(--primary-dark);background:#f3f1ff;border-radius:14px;margin:12px 0;padding:11px 14px;font-weight:800}.subject-period-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:12px;display:grid}.subject-period-summary span{border:1px solid var(--line);background:#fafbff;border-radius:15px;padding:12px}.subject-period-summary small,.subject-period-summary strong{display:block}.subject-period-summary small{color:var(--muted)}.subject-period-summary strong{margin-top:3px;font-size:1.2rem}.lifetime-inline{margin-top:4px;font-weight:800;color:#765f27!important}.subject-stars{justify-items:end;gap:2px;display:grid}.subject-stars strong,.subject-stars small{display:block}.subject-stars small{color:var(--muted);font-size:.78rem}.subject-star-chips span{gap:2px;display:inline-grid}.subject-star-chips small{color:var(--muted);font-size:.78rem}@media (width<=620px){.star-period-grid,.subject-period-summary{grid-template-columns:1fr}.subject-stars{justify-items:start}}
