@font-face{font-family:Nunito;font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/nunito-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/nunito-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--primary:#244b9b;--primary-dk:#183775;--primary-mid:#3260b9;--primary-lt:#eaf1ff;--navy:#183775;--navy-light:#244b9b;--navy-mid:#183775;--bg-base:#f7f9fc;--bg:#f7f9fc;--bg-surface:#fff;--bg-card:#fff;--card:#fff;--bg-card-hover:#f1f5fc;--border:#dfe5ed;--border-subtle:#dfe5ed;--ink:#203451;--ink-mid:#50617b;--ink-lt:#5e6e85;--text-primary:#203451;--text-secondary:#50617b;--text-muted:#5e6e85;--muted:#5e6e85;--line:#dfe5ed;--surface:#f7f9fc;--green-dk:#23754d;--green-lt:#e9f6ee;--red-dk:#a52c3c;--red-lt:#fff0f1;--gold-lt:#fff5d9;--radius-sm:8px;--radius-md:12px;--radius-lg:12px;--page-padding:16px;--content-width:1120px;--reading-width:740px;--nav-h:72px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--focus-ring:0 0 0 3px #244b9b33;--shadow-sm:none;--shadow:none;--shadow-lg:0 12px 32px #2034511f;--shadow-xl:0 20px 70px #20345124;--font:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--motion-fast:.16s;--motion-normal:.22s;color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--border-accent:#244b9b;--accent:#b42939;--accent-dk:#922431;--accent-lt:#fff0f1;--accent-mid:#b42939;--gold:#d6a344;--gold-dk:#785318;--green:#23754d;--green-mid:#b8d8c4;--red:#a52c3c;--blue:#244b9b;--blue-dk:#183775;--blue-lt:#eaf1ff;--teal:#237568;--teal-dk:#205d54;--teal-lt:#eaf5f2;--yellow:#d6a344;--yellow-dk:#785318;--yellow-lt:#fff5d9;--orange:#b27a32;--orange-dk:#80561f;--orange-lt:#fff5e8;--purple:#746195;--purple-dk:#5c4b78;--purple-lt:#f1edf7;--pink:#a95177;--pink-dk:#86385a;--pink-lt:#faedf3;--accent-gold:#d6a344;--accent-gold-soft:#fff5d9;--accent-blue:#244b9b;--accent-blue-soft:#eaf1ff;--accent-teal:#237568;--accent-coral:#a52c3c}@media (width>=600px){:root{--page-padding:24px}}@media (width>=1024px){:root{--page-padding:32px}}.study-icon{vertical-align:middle;flex-shrink:0;width:24px;height:24px;display:inline-block}:is(.cse-app,.public-site,.auth-page){--font:"Nunito", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--primary:#0560f9;--primary-dk:#0049ca;--primary-mid:#004fdb;--primary-lt:#edf4ff;--navy:#101c52;--navy-light:#163a89;--navy-mid:#101c52;--bg:#f5f9ff;--bg-base:#f5f9ff;--bg-card-hover:#f0f6ff;--ink:#101c52;--ink-mid:#435580;--ink-lt:#58698c;--text-primary:var(--ink);--text-secondary:var(--ink-mid);--text-muted:var(--ink-lt);--muted:var(--ink-lt);--border:#e0eafa;--line:var(--border);--surface:var(--bg);--accent:#e8212c;--accent-dk:#c91622;--red:#e8212c;--red-dk:#bd1b28;--red-lt:#fff0f2;--green:#008950;--green-dk:#007444;--green-lt:#eaf9f2;--gold:#ffb800;--gold-dk:#8a5900;--gold-lt:#fff6dc;--purple:#8640eb;--purple-dk:#6721c5;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--focus-ring:0 0 0 3px #0560f933;--heading-weight:800}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{font-family:var(--font);background:var(--bg-base);color:var(--ink);-webkit-font-smoothing:antialiased;height:100%;line-height:1.5}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit}a{color:inherit;text-decoration:none}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--primary);outline-offset:3px}button:disabled{cursor:not-allowed}img{max-width:100%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}#app-root{background:var(--bg);flex-direction:column;max-width:560px;height:100dvh;margin:0 auto;display:flex;position:relative;box-shadow:0 0 80px #1b3d8f26,0 0 0 1px #1b3d8f0f}@media (width>=600px){body{background:linear-gradient(145deg,#040e2e 0%,#091b54 50%,#0f2460 100%)}#app-root{border-left:1px solid #2b57c133;border-right:1px solid #2b57c133}}.screen{flex-direction:column;flex:1;height:100dvh;display:none;overflow:hidden}.screen.active{display:flex}.scroll-area{padding:16px 20px calc(var(--nav-h) + 16px);-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.scroll-area::-webkit-scrollbar{width:4px}.scroll-area::-webkit-scrollbar-track{background:0 0}.scroll-area::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.section-title{color:var(--ink-lt);letter-spacing:.08em;text-transform:uppercase;border-left:3px solid var(--accent);align-items:center;gap:8px;margin:22px 0 10px;padding-left:8px;font-size:12px;font-weight:700;display:flex}.section-title:after{content:"";background:var(--border-subtle);border-radius:1px;flex:1;height:1px}.section-title:first-child{margin-top:0}.card{background:var(--card);box-shadow:var(--shadow);border:1px solid #d8dffeb3;border-radius:16px;padding:16px}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pop{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.8)}60%{transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}#loading-overlay{z-index:999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#f3f6fff2;flex-direction:column;justify-content:center;align-items:center;gap:16px;display:none;position:fixed;inset:0}#loading-overlay.show{animation:.2s fadeIn;display:flex}.loading-spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite spin}.loading-text{color:var(--ink-mid);font-size:14px;font-weight:700}#modal-overlay{z-index:900;-webkit-backdrop-filter:blur(6px);background:#091b548c;justify-content:center;align-items:flex-end;display:none;position:fixed;inset:0}#modal-overlay.show{animation:.2s fadeIn;display:flex}#modal-box{background:var(--bg-surface);border:1px solid var(--border-subtle);border-bottom:none;border-radius:28px 28px 0 0;width:100%;max-width:560px;padding:28px 24px 40px;animation:.25s fadeUp;box-shadow:0 -8px 48px #1b3d8f26}.modal-title{color:var(--ink);margin-bottom:8px;font-size:18px;font-weight:700}.modal-body{color:var(--ink-mid);white-space:pre-wrap;margin-bottom:24px;font-size:14px;line-height:1.6}.modal-actions{gap:10px;display:flex}.modal-btn{border-radius:999px;flex:1;padding:14px;font-size:15px;font-weight:700;transition:opacity .15s,transform .15s}.modal-btn.primary{background:linear-gradient(135deg, var(--primary), var(--primary-mid));color:#fff;box-shadow:0 4px 16px #1b3d8f4d}.modal-btn.secondary{background:var(--primary-lt);color:var(--primary)}.modal-btn.danger{background:var(--accent-lt);color:var(--accent-dk)}.modal-btn:hover{opacity:.92}.modal-btn.primary:hover{transform:translateY(-1px);box-shadow:0 6px 22px #1b3d8f6b}.modal-btn.secondary:hover{background:#dce6ff}.modal-btn.danger:hover{background:#fcd5d5}.modal-btn:active{opacity:.8;transform:scale(.98)}.modal-btn:focus-visible{outline:2px solid var(--primary);outline-offset:3px}#toast{bottom:calc(var(--nav-h) + 16px);color:#fff;z-index:800;white-space:nowrap;box-shadow:var(--shadow-lg);background:linear-gradient(135deg,#091b54,#1b3d8f);border:1px solid #ffffff1f;border-radius:999px;padding:10px 22px;font-size:13px;font-weight:700;display:none;position:fixed;left:50%;transform:translate(-50%)}#toast.show{animation:.25s fadeUp;display:block}#bottom-nav{-webkit-backdrop-filter:blur(20px);z-index:100;background:#fffffff7;border-top:1px solid #1b3d8f1a;width:100%;max-width:560px;height:clamp(64px,12vw,76px);display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 32px #1b3d8f1f,0 -1px #1b3d8f0f}.nav-item{color:var(--ink-lt);-webkit-tap-highlight-color:transparent;border-top:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;min-height:56px;padding:6px 2px 8px;font-size:clamp(9px,2.2vw,11px);font-weight:700;transition:color .2s;display:flex;position:relative}.nav-item:before{content:"";background:var(--accent);border-radius:0 0 6px 6px;width:52px;height:3px;transition:transform .25s cubic-bezier(.34,1.56,.64,1);position:absolute;top:0;left:50%;transform:translate(-50%)scaleX(0)}.nav-item.active:before{transform:translate(-50%)scaleX(1)}.nav-icon{filter:grayscale(25%)opacity(55%);font-size:clamp(24px,6.5vw,28px);line-height:1;transition:transform .2s,filter .2s}.nav-item.active .nav-icon{filter:grayscale(0%)opacity();transform:translateY(-3px)scale(1.18)}.nav-item.active{color:var(--primary);font-weight:700}.toggle-sw{background:var(--border);cursor:pointer;border-radius:999px;flex-shrink:0;width:48px;height:26px;transition:background .25s;position:relative}.toggle-sw:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .25s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0003}.toggle-sw.on{background:var(--primary)}.toggle-sw.on:after{transform:translate(22px)}.btn{cursor:pointer;border-radius:999px;justify-content:center;align-items:center;font-weight:700;transition:all .15s;display:inline-flex}.btn-green{background:linear-gradient(135deg, var(--primary), var(--primary-mid));color:#fff;box-shadow:0 4px 0 var(--primary-dk), 0 4px 16px #1b3d8f4d;padding:14px 24px;font-size:15px}.btn-outline{border:2px solid var(--border);color:var(--ink-mid);background:0 0;padding:12px 20px;font-size:14px}.btn-sm{padding:10px 16px;font-size:13px}.btn:active{opacity:.9;transform:scale(.97)}.btn:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.toggle-sw:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:999px}.prog-bar{background:var(--border);border-radius:999px;height:8px;overflow:hidden}.prog-bar-fill{background:linear-gradient(90deg, var(--primary), #2b57c1, var(--accent-teal));border-radius:999px;height:100%;transition:width .4s}.home-header{color:#fff;background:linear-gradient(145deg,#040e2e 0%,#091b54 40%,#1b3d8f 80%,#2b57c1 100%);padding:24px 20px 20px;position:relative;overflow:hidden}.home-header:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff1f 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0}.home-header:after{content:"";pointer-events:none;background:radial-gradient(circle,#c0272d2e 0%,#0000 70%);border-radius:50%;width:160px;height:160px;position:absolute;top:-20px;right:-20px}.home-header-top{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.home-header-text{flex:1}.home-greeting{opacity:.85;font-size:14px;font-weight:600}.home-name{letter-spacing:-.3px;font-size:26px;font-weight:700}.home-date{opacity:.7;margin-top:2px;font-size:12px}.home-logo{object-fit:contain;background:0 0;border-radius:16px;flex-shrink:0;width:64px;height:64px;box-shadow:0 4px 16px #0000004d}.streak-card{background:linear-gradient(135deg,#040e2e 0%,#1b3d8f 60%,#2b57c1 100%);border:none;border-radius:16px;padding:14px 16px;box-shadow:0 4px 20px #1b3d8f47}.streak-top-row{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.streak-left{align-items:center;gap:10px;display:flex}.streak-flame{font-size:28px;animation:2s ease-in-out infinite pop}.streak-count{color:#fff;font-size:28px;font-weight:700;line-height:1}.streak-label{color:#fffc;font-size:13px;font-weight:700}.streak-best{color:#ffffffb3;margin-top:2px;font-size:12px}.streak-badge{color:#fff;background:#f59f0059;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:700}.streak-week-row{justify-content:space-between;gap:4px;display:flex}.week-dot-col{flex-direction:column;flex:1;align-items:center;gap:4px;display:flex}.week-dot-label{color:#ffffffa6;font-size:12px;font-weight:700}.week-dot{background:#ffffff2e;border:1.5px solid #ffffff4d;border-radius:6px;width:30px;height:12px;transition:all .25s}.week-dot.done{background:linear-gradient(135deg,#f59f00,#fcc419);border-color:#fcc419}.week-dot.today{border-width:2px;border-color:#fff;box-shadow:0 0 0 3px #ffffff4d}.week-dot.done.today{background:linear-gradient(135deg,#f59f00,#fcc419);border-color:#fff;box-shadow:0 0 0 3px #ffffff4d,0 2px 8px #f59f0066}.rec-card{cursor:pointer;background:linear-gradient(145deg,#040e2e 0%,#091b54 45%,#1b3d8f 100%);border:1px solid #ffffff14;border-left:4px solid #c0272d;border-radius:20px;margin-bottom:4px;padding:18px 20px;transition:transform .18s,box-shadow .18s;position:relative;overflow:hidden;box-shadow:0 6px 28px #091b5466,0 2px 8px #0000001f}.rec-card:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff0d 1px,#0000 1px);background-size:20px 20px;position:absolute;inset:0}.rec-card:hover{transform:translateY(-3px);box-shadow:0 12px 36px #091b548c,0 3px 10px #00000029}.rec-card:active{transform:scale(.98)}.rec-label{color:#ffffffa6;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:700}.rec-topic{color:#fff;letter-spacing:-.2px;margin-bottom:5px;font-size:17px;font-weight:700}.rec-why{color:#ffffffd1;margin-bottom:14px;font-size:13px;line-height:1.45}.rec-cta{color:#fff;letter-spacing:.02em;cursor:pointer;background:linear-gradient(135deg,#c0272d,#e03535);border:none;border-radius:999px;align-items:center;gap:4px;padding:7px 16px;font-size:12px;font-weight:700;transition:transform .15s,box-shadow .15s,opacity .15s;display:inline-flex;box-shadow:0 2px 12px #c0272d66}.rec-cta:hover{transform:translateY(-1px);box-shadow:0 4px 16px #c0272d8c}.rec-cta:active{opacity:.9;transform:scale(.97)}.study-map-card{background:var(--card);box-shadow:var(--shadow);border:1px solid var(--border);border-radius:16px;margin-bottom:4px;padding:16px}.history-sort-row{gap:6px;margin-bottom:12px;display:flex}.history-sort-btn{cursor:pointer;background:var(--card);border:1.5px solid var(--border);color:var(--ink-mid);border-radius:12px;flex:1;padding:8px 4px;font-family:inherit;font-size:12px;font-weight:700;transition:all .15s}.history-sort-btn:hover{border-color:var(--accent-blue)}.history-sort-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.history-sort-btn.desc:after{content:" ↓"}.history-sort-btn.asc:after{content:" ↑"}.history-card{background:var(--card);border:1px solid #d8dffe99;border-left:4px solid var(--border);cursor:pointer;border-radius:16px;align-items:center;gap:12px;margin-bottom:10px;padding:14px 16px;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 4px 16px #1b3d8f12,0 1px 4px #0000000a}.history-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.history-card:active{transform:scale(.98)}.history-card.score-high{border-left-color:var(--green)}.history-card.score-mid{border-left-color:var(--gold)}.history-card.score-low{border-left-color:var(--red)}.history-score-badge{color:#fff;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;min-width:52px;height:52px;font-size:16px;font-weight:700;display:flex}.history-score-badge.high{background:linear-gradient(135deg,#16a37a,#22d3a0)}.history-score-badge.mid{background:linear-gradient(135deg,#d97706,#f5c518)}.history-score-badge.low{background:linear-gradient(135deg,#dc2626,#f87171)}.history-info{flex:1;min-width:0}.history-topic{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.history-meta{color:var(--ink-lt);margin-top:2px;font-size:12px}.history-subject-chip{background:var(--blue-lt);color:var(--blue-dk);border-radius:6px;margin-top:4px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-block}.history-details{text-align:right;flex-shrink:0}.history-correct{color:var(--ink);font-size:12px;font-weight:700}.history-date{color:var(--ink-lt);margin-top:2px;font-size:12px}.study-map-title{color:var(--ink);font-size:15px;font-weight:700}.study-map-sub{color:var(--ink-lt);margin-bottom:14px;font-size:12px}.map-group-header{background:var(--bg-base);border-left:3px solid var(--accent);border-radius:8px;justify-content:space-between;align-items:center;margin:14px 0 6px;padding:6px 14px;display:flex}.map-group-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:700}.map-group-weight{color:var(--accent);background:var(--accent-lt);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700}.map-subj-name-wrap{flex-direction:column;gap:1px;display:flex}.map-subj-weight-inline{color:var(--accent);font-size:12px;font-weight:700;line-height:1}.map-subject-block{border:1px solid var(--border);border-radius:14px;margin-bottom:10px;overflow:hidden}.map-subject-header{cursor:pointer;background:var(--card);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:12px 14px;transition:background .15s,box-shadow .15s;display:flex}.map-subject-header:hover{background:var(--bg);box-shadow:inset 3px 0 0 var(--primary)}.map-subject-left{align-items:center;gap:8px;display:flex}.map-subj-icon{font-size:18px}.map-subj-name{color:var(--ink);font-size:14px;font-weight:700}.map-subject-right{align-items:center;gap:8px;display:flex}.map-subj-pct{color:var(--ink-mid);font-size:13px;font-weight:700}.map-chevron{color:var(--ink-lt);font-size:12px}.map-subj-bar{background:var(--border);height:4px;overflow:hidden}.map-subj-bar-fill{height:100%;transition:width .5s}.map-topics-list{background:var(--bg);padding:0 12px 12px;display:none}.map-topic-row{background:var(--card);cursor:pointer;border:1px solid var(--border);border-radius:12px;align-items:center;gap:10px;margin-top:8px;padding:11px 12px;transition:transform .1s,box-shadow .1s,border-color .15s;display:flex}.map-topic-row:hover{box-shadow:var(--shadow);border-color:var(--border-accent)}.map-topic-row:active{transform:scale(.98)}.map-topic-icon{flex-shrink:0;font-size:20px}.map-topic-info{flex:1;min-width:0}.map-topic-name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.map-topic-meta{color:var(--ink-lt);margin-top:2px;font-size:12px}.map-topic-right{text-align:right;min-width:90px}.map-topic-bar{background:var(--border);border-radius:4px;height:4px;margin-top:4px;overflow:hidden}.score-history-card{background:var(--card);cursor:pointer;box-shadow:var(--shadow);border:1px solid var(--border);border-radius:14px;align-items:center;gap:12px;margin-bottom:8px;padding:13px 16px;transition:transform .15s;display:flex}.score-history-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.score-history-card:active{transform:scale(.98)}.shc-left{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.shc-icon{flex-shrink:0;font-size:26px}.shc-title{color:var(--ink);font-size:13px;font-weight:700}.shc-meta{color:var(--ink-lt);margin-top:2px;font-size:12px}.shc-right{text-align:right;min-width:64px}.shc-pct{font-size:16px;font-weight:700}.shc-bar{background:var(--border);border-radius:4px;height:4px;margin-top:4px;overflow:hidden}.quiz-home-header{color:#fff;background:linear-gradient(145deg,#040e2e 0%,#091b54 40%,#1b3d8f 80%,#2b57c1 100%);border-bottom:none;padding:24px 20px 16px;position:relative;overflow:hidden}.quiz-home-header:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff1a 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0}.quiz-home-title{color:#fff;font-size:24px;font-weight:700}.quiz-home-sub{color:#fffc;margin-top:3px;font-size:13px}.mini-cse-card{cursor:pointer;background:linear-gradient(135deg,#6b7280,#9ca3af);border-radius:18px;margin-bottom:4px;transition:transform .15s,box-shadow .15s;overflow:hidden;box-shadow:0 3px 16px #6b728033}.mini-cse-card.unlocked{background:linear-gradient(135deg,#991b1b,#c0272d,#e03535);box-shadow:0 4px 20px #c0272d59,0 2px 8px #0000001a}.mini-cse-card:hover{transform:translateY(-2px);box-shadow:0 6px 24px #0000002e}.mini-cse-card:active{transform:scale(.98)}.mini-cse-inner{align-items:center;gap:16px;padding:20px 18px;display:flex}.mini-cse-title{color:#fff;margin-bottom:4px;font-size:17px;font-weight:700}.mini-cse-desc{color:#ffffffd9;margin-bottom:8px;font-size:12px;line-height:1.4}.mini-cse-badge{color:#fff;background:#ffffff38;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:700;display:inline-block}.subject-card{background:var(--card);cursor:pointer;border:1px solid #d8dffe99;border-radius:18px;margin-bottom:12px;padding:18px 18px 14px;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 18px #1b3d8f14,0 1px 4px #0000000a}.subject-card:hover{transform:translateY(-2px);box-shadow:0 8px 28px #1b3d8f24,0 2px 8px #00000012}.subject-card:active{transform:scale(.98)}.subj-card-top{align-items:center;gap:14px;margin-bottom:12px;display:flex}.subj-card-icon{border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:26px;display:flex;box-shadow:0 4px 12px #0000001a}.subj-card-info{flex:1}.subj-card-name{color:var(--ink);font-size:16px;font-weight:700}.subj-card-meta{color:var(--ink-lt);margin-top:3px;font-size:12px}.subj-card-pct{font-size:20px;font-weight:700}.subj-prog-bar{background:var(--border);border-radius:999px;height:8px;margin-bottom:12px;overflow:hidden}.subj-card-topics{flex-wrap:wrap;gap:8px;display:flex}.subj-topic-pill{border-radius:999px;padding:5px 12px;font-size:12px;font-weight:700}.quick-option-row{grid-template-columns:1fr;gap:12px;margin-bottom:16px;display:grid}.quick-opt-card{text-align:center;cursor:pointer;background:linear-gradient(145deg,#091b54,#1b3d8f);border:1px solid #ffffff14;border-radius:16px;padding:20px 16px;transition:transform .15s,box-shadow .15s;position:relative;overflow:hidden;box-shadow:0 4px 20px #1b3d8f4d,0 1px 4px #0000001a}.quick-opt-card:hover{transform:translateY(-2px);box-shadow:0 8px 28px #1b3d8f66,0 2px 6px #0000001f}.quick-opt-card:active{transform:scale(.97)}.quick-opt-card:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff0f 1px,#0000 1px);background-size:18px 18px;position:absolute;inset:0}.quick-opt-label{color:#fff;text-shadow:0 1px 2px #00000026;margin-top:8px;font-size:14px;font-weight:700}.quick-opt-sub{color:#ffffffd9;margin-top:3px;font-size:12px}.mock-test-card{cursor:pointer;background:linear-gradient(145deg,#091b54,#1b3d8f,#2b57c1);border-radius:18px;margin-top:12px;margin-bottom:4px;transition:transform .15s,box-shadow .15s;overflow:hidden;box-shadow:0 6px 24px #1b3d8f59,0 2px 8px #0000001a}.mock-test-card:hover{transform:translateY(-2px);box-shadow:0 6px 24px #0000002e}.mock-test-card:active{transform:scale(.98)}.quiz-topbar{background:var(--card);border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:12px 16px;display:flex}.quiz-exit-btn{color:var(--ink-mid);border-radius:10px;padding:6px 10px;font-size:18px;font-weight:700;transition:background .15s,color .15s,transform .1s}.quiz-exit-btn:hover{background:var(--bg);color:var(--ink)}.quiz-exit-btn:active{transform:scale(.92)}.quiz-bookmark-btn{padding:4px 8px;font-size:22px;transition:transform .15s}.quiz-bookmark-btn:active{transform:scale(1.3)}.quiz-progress-wrap{flex:1}.quiz-progress-label{color:var(--ink-mid);margin-bottom:5px;font-size:12px;font-weight:700}.quiz-timer{color:var(--accent-gold);text-align:right;margin-bottom:5px;font-size:13px;font-weight:700}.quiz-prog-bar{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.quiz-prog-fill{background:linear-gradient(90deg,#1b3d8f,#2b57c1,#c0272d) 0 0/200% 100%;border-radius:999px;height:100%;transition:width .35s}.quiz-nav-strip{background:var(--card);border-bottom:1px solid var(--border);flex-direction:column;display:flex}.quiz-nav-subjects{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:6px;padding:8px 16px 4px;display:flex;overflow-x:auto}.quiz-nav-subjects::-webkit-scrollbar{display:none}.quiz-nav-subj-btn{cursor:pointer;background:var(--bg);border:1.5px solid var(--border);color:var(--ink-mid);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:6px 14px;font-family:inherit;font-size:12px;font-weight:700;transition:all .15s}.quiz-nav-subj-btn:hover{border-color:var(--primary);color:var(--primary)}.quiz-nav-subj-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.quiz-nav-dots{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:6px;padding:4px 16px 8px;display:flex;overflow-x:auto}.quiz-nav-dots::-webkit-scrollbar{display:none}.quiz-nav-strip::-webkit-scrollbar{display:none}.quiz-nav-dot{cursor:pointer;border:2px solid var(--border);background:var(--card);min-width:36px;height:36px;color:var(--ink-mid);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;transition:all .15s;display:flex}.quiz-nav-dot:hover{border-color:var(--primary)}.quiz-nav-dot.current{background:var(--primary);border-color:var(--primary);color:#fff}.quiz-nav-dot.answered{background:var(--green-lt);border-color:var(--green);color:var(--green-dk)}.quiz-nav-dot.answered.wrong-dot{background:var(--red-lt);border-color:var(--red);color:var(--red-dk)}.quiz-nav-dot.skipped{background:var(--yellow-lt);border-color:var(--gold);color:var(--gold-dk)}.quiz-q-scroll{-webkit-overflow-scrolling:touch;flex:1;padding:20px 20px 16px;overflow-y:auto}.quiz-q-scroll::-webkit-scrollbar{width:4px}.quiz-q-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.quiz-subject-tag{background:var(--primary-lt);color:var(--primary);letter-spacing:.04em;border-radius:999px;margin-bottom:14px;padding:5px 14px;font-size:12px;font-weight:700;display:inline-block}.quiz-question-text{color:var(--ink);margin-bottom:24px;font-size:18px;font-weight:700;line-height:1.55}.quiz-choices{flex-direction:column;gap:10px;display:flex}.choice-btn{text-align:left;border:2px solid var(--border);background:var(--card);width:100%;color:var(--ink);cursor:pointer;box-shadow:var(--shadow-sm);border-radius:16px;align-items:center;gap:14px;padding:14px 16px;font-size:15px;font-weight:700;line-height:1.4;transition:all .15s;display:flex}.choice-btn:hover:not(:disabled){border-color:var(--primary);background:var(--primary-lt);box-shadow:0 4px 16px #4a8fef1f}.choice-btn:hover:not(:disabled) .choice-letter{background:var(--primary);color:#fff}.choice-btn:active:not(:disabled){transform:scale(.98)}.choice-letter{background:var(--bg);border:1.5px solid var(--border);min-width:32px;height:32px;color:var(--ink-mid);letter-spacing:0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;transition:all .15s;display:flex}.choice-text{flex:1;line-height:1.45}.choice-btn.correct{color:#14532d;background:#dcfce7;border-color:#16a34a}.choice-btn.correct .choice-letter{color:#fff;background:#16a34a;border-color:#16a34a}.choice-btn.wrong{color:#7f1d1d;background:#fee2e2;border-color:#dc2626}.choice-btn.wrong .choice-letter{color:#fff;background:#dc2626;border-color:#dc2626}.choice-btn.chosen{color:#1e3a8a;background:#eff6ff;border-color:#1d4ed8}.choice-btn.chosen .choice-letter{color:#fff;background:#1d4ed8;border-color:#1d4ed8}.choice-btn:disabled{cursor:not-allowed}.quiz-explanation{border-left:4px solid var(--primary);background:linear-gradient(135deg,#e8edfc,#dbe4ff);border-radius:14px;margin-top:20px;padding:16px;animation:.25s fadeUp;display:none}.expl-label{color:var(--primary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;font-size:12px;font-weight:700}.expl-text{color:var(--ink-mid);font-size:14px;line-height:1.6}.quiz-next-bar{background:var(--card);border-top:1px solid var(--border);flex-direction:column;gap:10px;padding:12px 20px 14px;display:none}.quiz-next-bar .quiz-explanation{margin-top:0;margin-bottom:0}.quiz-next-btn{color:#fff;letter-spacing:.02em;background:linear-gradient(135deg,#091b54,#1b3d8f,#2b57c1);border-radius:14px;width:100%;padding:16px;font-size:16px;font-weight:700;transition:all .15s;box-shadow:0 4px 16px #1b3d8f4d}.quiz-next-btn:hover{opacity:.92;transform:translateY(-1px);box-shadow:0 6px 20px #1b3d8f66}.quiz-next-btn:active{transform:scale(.98)}.result-hero{text-align:center;color:#fff;background:linear-gradient(145deg,#040e2e 0%,#091b54 40%,#1b3d8f 80%,#2b57c1 100%);flex-shrink:0;padding:28px 24px 22px;position:relative;overflow:hidden}.result-hero:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff14 1px,#0000 1px);background-size:20px 20px;position:absolute;inset:0}.result-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#f59f002e 0%,#0000 70%);border-radius:50%;width:200px;height:200px;position:absolute;top:-40px;left:50%;transform:translate(-50%)}.result-emoji{z-index:1;margin-bottom:8px;font-size:48px;animation:.5s bounceIn;display:block;position:relative}.result-score{letter-spacing:-1px;color:#fff;z-index:1;font-size:44px;font-weight:700;position:relative}.result-label{color:#ffffffd9;z-index:1;margin-top:4px;font-size:15px;position:relative}.result-message{color:#ffffffbf;z-index:1;margin-top:8px;font-size:14px;position:relative}.result-stat-row{background:var(--card);border-bottom:1px solid var(--border);display:flex}.result-stat{text-align:center;flex:1;padding:16px 8px}.result-stat-num{color:var(--primary);font-size:22px;font-weight:700}.result-stat-lbl{color:var(--ink-lt);margin-top:3px;font-size:12px;font-weight:700}.result-actions{background:var(--card);border-bottom:1px solid var(--border);gap:12px;padding:16px 20px;display:flex}.tab-screen-header{color:#fff;background:linear-gradient(145deg,#040e2e 0%,#091b54 40%,#1b3d8f 80%,#2b57c1 100%);flex-shrink:0;padding:24px 20px 16px;position:relative;overflow:hidden}.tab-screen-header:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff1a 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0}.tab-screen-title{color:#fff;z-index:1;font-size:24px;font-weight:700;position:relative}.tab-screen-sub{color:#fffc;z-index:1;margin-top:3px;font-size:13px;position:relative}.cards-filter-wrap{scrollbar-width:none;-webkit-overflow-scrolling:touch;background:var(--card);border-bottom:1px solid var(--border);gap:8px;padding:12px 16px;display:flex;overflow-x:auto}.cards-filter-wrap::-webkit-scrollbar{display:none}.cards-filter-btn{background:var(--bg);border:1.5px solid var(--border);color:var(--ink-mid);cursor:pointer;white-space:nowrap;border-radius:999px;padding:9px 18px;font-family:inherit;font-size:13px;font-weight:700;transition:all .15s}.cards-filter-btn:hover{border-color:var(--primary);color:var(--primary)}.cards-filter-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.flashcard-area{flex-direction:column;flex:1;justify-content:flex-start;align-items:center;gap:14px;padding:20px 20px 110px;display:flex;overflow-y:auto}.fc-empty{text-align:center;padding:60px 20px}.fc-empty-icon{margin-bottom:14px;font-size:64px}.fc-empty-title{color:var(--ink);margin-bottom:6px;font-size:18px;font-weight:700}.fc-empty-sub{color:var(--ink-lt);font-size:14px}.fc-counter{color:var(--ink-lt);align-self:flex-end;padding-right:4px;font-size:13px;font-weight:700}.fc-scene{perspective:1200px;cursor:pointer;width:100%;max-width:480px}.fc-card{width:100%;min-height:240px;transform-style:preserve-3d;border-radius:22px;transition:transform .5s cubic-bezier(.4,0,.2,1);position:relative}.fc-card.flipped{transform:rotateY(180deg)}.fc-front,.fc-back{backface-visibility:hidden;border-radius:22px;flex-direction:column;justify-content:center;width:100%;min-height:240px;padding:24px;display:flex}.fc-front{position:relative}.fc-back{height:100%;position:absolute;top:0;left:0}.fc-front{background:var(--card);box-shadow:var(--shadow-lg);border:1.5px solid var(--border)}.fc-back{box-shadow:var(--shadow-lg);background:linear-gradient(145deg,#040e2e,#091b54,#1b3d8f);transform:rotateY(180deg)}.fc-subject-tag{background:var(--primary-lt);color:var(--primary);border-radius:999px;align-self:flex-start;margin-bottom:14px;padding:4px 12px;font-size:12px;font-weight:700;display:inline-block}.fc-question{color:var(--ink);font-size:16px;font-weight:700;line-height:1.55}.fc-tap-hint{color:var(--ink-lt);text-align:center;margin-top:14px;font-size:12px}.fc-answer-label{color:#ffffffbf;letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:700}.fc-answer{color:#fff;margin-bottom:10px;font-size:18px;font-weight:700}.fc-expl{color:#ffffffd9;border-top:1px solid #fff3;margin-top:8px;padding-top:8px;font-size:13px;line-height:1.55}.fc-nav-row{align-items:center;gap:10px;width:100%;max-width:480px;display:flex}.fc-nav-btn{background:var(--card);border:1.5px solid var(--border);color:var(--ink-mid);cursor:pointer;white-space:nowrap;border-radius:14px;padding:13px 20px;font-family:inherit;font-size:14px;font-weight:700;transition:all .15s}.fc-nav-btn:disabled{opacity:.3;cursor:not-allowed}.fc-nav-btn:not(:disabled):hover{border-color:var(--primary);color:var(--primary)}.fc-flip-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:14px;flex:1;padding:13px;font-family:inherit;font-size:14px;font-weight:700;transition:all .15s}.fc-flip-btn:hover{background:#2542b2}.fc-flip-btn:active{opacity:.85;transform:scale(.98)}.screen-header{background:var(--card);border-bottom:1px solid var(--border);padding:22px 20px 12px}.screen-header-title{color:var(--text-primary);font-size:24px;font-weight:700}.screen-header-sub{color:var(--ink-lt);margin-top:3px;font-size:12px}.bm-filter{scrollbar-width:none;background:var(--card);border-bottom:1px solid var(--border);gap:8px;padding:10px 16px;display:flex;overflow-x:auto}.bm-filter::-webkit-scrollbar{display:none}.bm-filter-btn{background:var(--bg);border:1.5px solid var(--border);color:var(--ink-mid);cursor:pointer;white-space:nowrap;border-radius:999px;padding:8px 16px;font-family:inherit;font-size:12px;font-weight:700;transition:all .15s}.bm-filter-btn:hover{border-color:var(--primary);color:var(--primary)}.bm-filter-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.bm-item{background:var(--card);box-shadow:var(--shadow);border:1px solid var(--border);border-radius:16px;margin-bottom:10px;padding:16px 18px;animation:.2s fadeUp}.bm-item-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.bm-subject-badge{background:var(--primary-lt);color:var(--primary);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:700}.bm-remove-btn{background:var(--bg);border:1px solid var(--border);color:var(--ink-lt);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;transition:all .15s;display:flex}.bm-remove-btn:hover{background:var(--red-lt);border-color:var(--red-dk);color:var(--red-dk)}.bm-question{color:var(--ink);margin-bottom:10px;font-size:14px;font-weight:700;line-height:1.55}.bm-answer{color:#16a34a;margin-bottom:6px;font-size:13px;font-weight:700}.bm-expl{color:var(--ink-lt);border-top:1px solid var(--border);padding-top:8px;font-size:12px;line-height:1.55}.empty-state{text-align:center;padding:60px 24px}.empty-icon{margin-bottom:14px;font-size:52px}.empty-title{color:var(--ink);margin-bottom:6px;font-size:18px;font-weight:700}.empty-sub{color:var(--ink-lt);font-size:14px;line-height:1.5}.profile-hero{text-align:center;color:#fff;background:linear-gradient(145deg,#040e2e 0%,#091b54 40%,#1b3d8f 80%,#2b57c1 100%);padding:28px 24px 24px;position:relative;overflow:hidden}.profile-hero:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff14 1px,#0000 1px);background-size:20px 20px;position:absolute;inset:0}.profile-hero:after{content:"";pointer-events:none;background:0 0;width:200px;height:200px;position:absolute;top:0;left:50%;transform:translate(-50%)}.profile-avatar{letter-spacing:-.5px;color:#fff;z-index:1;cursor:pointer;background:#f59f0066;border:3px solid #ffffff80;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:88px;height:88px;margin:0 auto 12px;font-size:28px;font-weight:700;display:flex;position:relative;overflow:hidden}.profile-avatar-cam{text-align:center;opacity:0;pointer-events:none;background:#00000073;border-radius:0 0 50px 50px;padding:2px 0 3px;font-size:14px;transition:opacity .2s;position:absolute;bottom:0;left:0;right:0}.profile-avatar:hover .profile-avatar-cam{opacity:1}.home-avatar{color:#fff;letter-spacing:-.5px;background:#f59f0073 50%/cover;border:2px solid #ffffff80;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:15px;font-weight:700;display:flex}.sidebar-avatar{color:#fff;letter-spacing:-.5px;background:#f59f0066 50%/cover;border:2px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;margin:8px auto 4px;font-size:14px;font-weight:700;display:flex}.profile-name{color:#fff;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-size:20px;font-weight:700;display:flex}.prof-edit-name-btn{cursor:pointer;background:#ffffff26;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;transition:background .2s;display:flex}.prof-edit-name-btn:hover{background:#ffffff47}.prof-name-edit-wrap{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.prof-name-input{color:var(--ink);text-align:center;background:#fffffff2;border:2px solid #fff9;border-radius:10px;outline:none;width:220px;max-width:90%;padding:7px 14px;font-size:17px;font-weight:700}.prof-name-input:focus{border-color:#fff}.prof-name-edit-actions{gap:8px;display:flex}.prof-name-save-btn{color:var(--primary);cursor:pointer;background:#fff;border:none;border-radius:8px;padding:6px 18px;font-size:13px;font-weight:700}.prof-name-save-btn:hover{background:var(--primary-lt)}.prof-name-cancel-btn{color:#fff;cursor:pointer;background:#ffffff26;border:1px solid #ffffff59;border-radius:8px;padding:6px 18px;font-size:13px;font-weight:700}.prof-name-cancel-btn:hover{background:#ffffff40}.profile-email{color:#ffffffbf;margin-top:3px;font-size:13px}.profile-since{color:#fff9;margin-top:3px;font-size:12px}.profile-stats-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;display:grid}.profile-stat-card{background:var(--bg-card);text-align:center;box-shadow:var(--shadow);border:1px solid var(--border-subtle);border-radius:14px;padding:16px 12px}.profile-stat-num{color:var(--primary);font-size:22px;font-weight:700}.profile-stat-lbl{color:var(--ink-lt);margin-top:4px;font-size:12px;font-weight:700}.premium-banner{cursor:pointer;background:linear-gradient(135deg,#d97706 0%,#f59f00 50%,#fcc419 100%);border:1px solid #fff3;border-radius:18px;align-items:center;gap:14px;margin-bottom:20px;padding:16px 18px;transition:transform .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden;box-shadow:0 6px 24px #f59f0059,0 2px 8px #0000001a}.premium-banner:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff1a 1px,#0000 1px);background-size:18px 18px;position:absolute;inset:0}.premium-banner:hover{transform:translateY(-2px);box-shadow:0 10px 32px #f59f0073,0 4px 12px #0000001f}.premium-banner:active{transform:scale(.98)}.premium-icon{font-size:32px}.premium-banner-title{color:#fff;font-size:15px;font-weight:700}.premium-banner-sub{color:#fffc;margin-top:3px;font-size:12px}.premium-arrow{color:#fff9;margin-left:auto;font-size:24px}.prof-subj-row{align-items:center;gap:12px;margin-bottom:12px;display:flex}.prof-subj-left{color:var(--ink);min-width:150px;font-size:13px;font-weight:700}.prof-subj-bar{background:var(--border);border-radius:999px;flex:1;height:8px;overflow:hidden}.prof-subj-pct{text-align:right;min-width:38px;font-size:12px;font-weight:700}.settings-card{background:var(--card);box-shadow:var(--shadow);border:1px solid var(--border);border-radius:18px;margin-bottom:16px;overflow:hidden}.setting-row{justify-content:space-between;align-items:center;padding:14px 16px;transition:background .15s;display:flex}.setting-row>div:first-child{flex:1;align-items:center;min-width:0;display:flex}.setting-row:hover{background:var(--bg)}.setting-icon-badge{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;margin-right:12px;font-size:18px;display:flex}.setting-label{color:var(--ink);font-size:14px;font-weight:700}.setting-sub{color:var(--ink-lt);margin-top:2px;font-size:12px}.setting-icon{color:var(--ink-lt);font-size:20px}.setting-divider{background:var(--border);height:1px;margin:0 16px}.logout-btn{border:1.5px solid var(--accent);width:100%;color:var(--accent);cursor:pointer;background:0 0;border-radius:14px;margin-top:8px;margin-bottom:28px;padding:14px;font-family:inherit;font-size:14px;font-weight:700;transition:background .15s,color .15s}.logout-btn:hover{background:var(--accent-lt)}.logout-btn:active{background:var(--accent);color:#fff}.review-item{border-left:4px solid;border-radius:12px;margin-bottom:8px;padding:14px 16px;animation:.2s fadeUp}.review-item.correct{background:#f0fdf4;border-color:#16a34a}.review-item.wrong{background:#fff1f2;border-color:#dc2626}.review-q{color:var(--ink);margin-bottom:6px;font-size:13px;font-weight:700;line-height:1.5}.review-ans{color:var(--ink);font-size:13px;font-weight:700}.review-expl{color:var(--ink-lt);margin-top:6px;font-size:12px;line-height:1.5}.mock-info-card{background:var(--card);box-shadow:var(--shadow);border:1px solid var(--border);border-radius:20px;margin-bottom:4px;padding:20px}.mock-info-row{justify-content:space-around;margin-bottom:20px;display:flex}.mock-info-item{text-align:center}.mock-info-num{color:var(--primary);font-size:22px;font-weight:700}.mock-info-lbl{color:var(--ink-lt);margin-top:4px;font-size:12px;font-weight:700}.mock-start-btn{color:#fff;cursor:pointer;letter-spacing:.02em;background:linear-gradient(135deg,#091b54,#1b3d8f,#2b57c1);border:none;border-radius:14px;width:100%;padding:16px;font-family:inherit;font-size:16px;font-weight:700;transition:all .15s;box-shadow:0 5px #040e2e,0 8px 20px #1b3d8f59}.mock-start-btn:hover{opacity:.9;transform:translateY(-1px)}.mock-start-btn:active{transform:translateY(2px);box-shadow:0 2px #1530a0}.subj-grid{grid-template-columns:1fr 1fr;gap:12px;padding:4px 2px;display:grid}.subj-grid-card{cursor:pointer;border:1px solid var(--border);background:var(--card);-webkit-user-select:none;user-select:none;border-radius:16px;flex-direction:column;padding:16px 12px 12px;transition:transform .12s,box-shadow .12s;display:flex}.subj-grid-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.subj-grid-card:active{transform:scale(.96)}.subj-card-icon{margin-bottom:8px;font-size:30px;line-height:1}.subj-card-name{color:var(--ink);flex:1;margin-bottom:8px;font-size:13px;font-weight:700;line-height:1.3}.subj-card-pct-badge{color:#fff;border-radius:20px;align-self:flex-start;margin-bottom:8px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-block}.subj-card-bar-track{background:var(--border);border-radius:4px;height:4px;margin-bottom:6px;overflow:hidden}.subj-card-bar-fill{border-radius:4px;height:100%;transition:width .5s}.subj-card-hint{color:var(--ink-lt);font-size:12px;font-weight:600}.subj-grid-group-label{color:var(--ink-mid);text-transform:uppercase;letter-spacing:.5px;margin:12px 2px 6px;font-size:12px;font-weight:700}.subj-grid-group-label:first-child{margin-top:4px}.subj-grid-group-weight{color:var(--ink-lt);text-transform:none;letter-spacing:0;font-size:12px;font-weight:700}.subj-card-weight-tag{color:var(--ink-mid);margin-bottom:4px;font-size:12px;font-weight:700}.subj-sheet-overlay{z-index:400;background:#00000073;position:fixed;inset:0}.subj-sheet{z-index:401;background:var(--card);border-radius:20px 20px 0 0;flex-direction:column;max-height:80vh;transition:transform .3s cubic-bezier(.32,1,.28,1);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 32px #0000002e}.subj-sheet-handle{background:var(--border);border-radius:4px;flex-shrink:0;width:40px;height:4px;margin:10px auto 0}.subj-sheet-header{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:10px;padding:14px 16px 12px;display:flex}.subj-sheet-icon{font-size:22px}.subj-sheet-title{color:var(--ink);flex:1;font-size:17px;font-weight:700}.subj-sheet-close{background:var(--bg);cursor:pointer;width:30px;height:30px;color:var(--ink-mid);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:14px;display:flex}.subj-sheet-close:hover{background:var(--border)}.subj-sheet-topics{-webkit-overflow-scrolling:touch;padding:12px 14px 32px;overflow-y:auto}.pattern-area svg,.chart-wrap svg{max-width:100%;height:auto}.pattern-area,.chart-wrap{overflow-x:auto}.pattern-area{background:var(--bg-surface);border-radius:10px;justify-content:center;align-items:center;margin-bottom:12px;padding:12px;display:flex}.c-svg{pointer-events:none;flex-shrink:0;display:block}.c-svg-wrap{flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;display:flex}.c-svg-wrap svg{width:50px;max-width:50px;height:50px}.choice-btn--svg{align-items:center;min-height:64px}.di-wrap .chart-title{color:var(--text-muted);margin-bottom:8px;font-size:.85rem;font-weight:700}.di-wrap .chart-wrap{justify-content:center;margin-bottom:12px;display:flex;overflow-x:auto}.di-wrap .data-table{border-collapse:collapse;width:100%;font-size:.85rem}.di-wrap .data-table th{border:1px solid var(--border);color:var(--accent);background:#c0272d14;padding:8px 12px;font-weight:700}.di-wrap .data-table td{border:1px solid var(--border);text-align:center;padding:8px 12px}.di-wrap .chart-legend{flex-wrap:wrap;gap:16px;margin-top:8px;font-size:.8rem;display:flex}.di-wrap .chart-legend i{vertical-align:middle;border-radius:2px;width:10px;height:10px;margin-right:4px;display:inline-block}.fc-subject-tag{text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.pattern-area{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:12px;display:flex;overflow-x:auto}.matrix{grid-template-columns:repeat(3,74px);gap:4px;display:grid}.seq{flex-wrap:wrap;justify-content:center;align-items:center;gap:5px;display:flex}.frame{flex-shrink:0;justify-content:center;align-items:center;width:74px;height:74px;display:flex}.frame.qmark{background:#00d4ff0f;border:2px dashed #00d4ff73;border-radius:9px}.sep{color:var(--ink-lt,#888);-webkit-user-select:none;user-select:none;padding:0 2px;font-size:1.2rem}.asep{color:var(--ink-lt,#888);white-space:nowrap;padding:0 5px;font-size:.6rem}@media (width<=540px){.matrix{grid-template-columns:repeat(3,62px)}.frame{width:62px;height:62px}}.q-report-wrap{justify-content:flex-end;padding:4px 0 8px;display:flex}.q-report-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:20px;padding:4px 12px;font-size:.75rem;transition:background .15s,color .15s,border-color .15s}.q-report-btn:hover:not(:disabled){color:#ef4444;background:#ef444412;border-color:#ef4444}.q-report-btn.reported,.q-report-btn:disabled{color:#16a34a;cursor:default;background:#22c55e14;border-color:#22c55e}.pricing-header{z-index:5;background:#040e2e;align-items:center;gap:12px;padding:14px 16px 10px;display:flex;position:sticky;top:0}.back-btn{color:#ffffffb3;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:22px;font-weight:700}.pricing-title{color:#ffffffd9;font-size:16px;font-weight:700}.pricing-hero{text-align:center;background:linear-gradient(145deg,#040e2e 0%,#091b54 45%,#1b3d8f 80%,#2b57c1 100%);padding:8px 24px 32px;position:relative;overflow:hidden}.pricing-hero:before{content:"";pointer-events:none;background:radial-gradient(circle at 80% 20%,#c0272d2e 0%,#0000 55%),radial-gradient(circle at 20% 80%,#f59f001a 0%,#0000 55%);position:absolute;inset:0}.pricing-hero-title{color:#fff;z-index:1;margin-bottom:8px;font-size:24px;font-weight:700;line-height:1.2;position:relative}.pricing-hero-title span{color:#f59f00}.pricing-hero-sub{color:#ffffff8c;z-index:1;font-size:12px;font-weight:700;position:relative}.pricing-card-v2{border-radius:22px;margin:16px 20px;padding:22px 20px 20px;position:relative;overflow:hidden}.pricing-card-v2--free{background:var(--bg-card);border:1.5px solid var(--border);box-shadow:var(--shadow-sm)}.pricing-card-v2--basic{background:#fff;border:2px solid #c0272d;box-shadow:0 8px 32px #c0272d2e,0 2px 8px #0000000f}.pricing-card-v2--pro{background:linear-gradient(145deg,#040e2e 0%,#0f2460 55%,#1b3d8f 100%);border:2px solid #d97706;box-shadow:0 8px 40px #d9770640,0 2px 8px #00000040}.pricing-v2-badge{letter-spacing:.04em;white-space:nowrap;border-radius:0 0 12px 12px;padding:5px 14px;font-size:12px;font-weight:700;position:absolute;top:0;right:18px}.pricing-v2-badge--popular{color:#fff;background:linear-gradient(135deg,#991b1b,#c0272d);box-shadow:0 4px 12px #c0272d66}.pricing-v2-badge--value{color:#fff;background:linear-gradient(135deg,#d97706,#f59f00);box-shadow:0 4px 12px #f59f0066}.pricing-v2-tier{letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;font-size:12px;font-weight:700}.pricing-card-v2--free .pricing-v2-tier{color:var(--ink-lt)}.pricing-card-v2--basic .pricing-v2-tier{color:#c0272d}.pricing-card-v2--pro .pricing-v2-tier{color:#f59f00}.pricing-v2-name{margin-bottom:4px;font-size:26px;font-weight:700;line-height:1}.pricing-card-v2--free .pricing-v2-name{color:var(--ink)}.pricing-card-v2--basic .pricing-v2-name{color:#091b54}.pricing-card-v2--pro .pricing-v2-name{color:#fff}.pricing-v2-price{letter-spacing:-1.5px;font-variant-numeric:tabular-nums;margin-bottom:3px;font-size:40px;font-weight:700;line-height:1}.pricing-card-v2--free .pricing-v2-price{color:var(--ink-lt)}.pricing-card-v2--basic .pricing-v2-price{color:#c0272d}.pricing-card-v2--pro .pricing-v2-price{color:#f59f00}.pricing-v2-duration{margin-bottom:16px;font-size:12px;font-weight:700}.pricing-card-v2--free .pricing-v2-duration{color:var(--text-muted)}.pricing-card-v2--basic .pricing-v2-duration{color:#7b82aa}.pricing-card-v2--pro .pricing-v2-duration{color:#ffffff80}.pricing-v2-divider{height:1px;margin-bottom:14px}.pricing-card-v2--free .pricing-v2-divider{background:var(--border)}.pricing-card-v2--basic .pricing-v2-divider{background:#c0272d26}.pricing-card-v2--pro .pricing-v2-divider{background:#ffffff1f}.pricing-v2-rows{margin:0 0 18px;padding:0;list-style:none}.pricing-v2-row{justify-content:space-between;align-items:center;padding:9px 0;font-size:13px;font-weight:700;display:flex}.pricing-v2-row+.pricing-v2-row{border-top:1px solid}.pricing-card-v2--free .pricing-v2-row+.pricing-v2-row{border-color:var(--border)}.pricing-card-v2--basic .pricing-v2-row+.pricing-v2-row{border-color:#c0272d1a}.pricing-card-v2--pro .pricing-v2-row+.pricing-v2-row{border-color:#ffffff14}.pricing-v2-lbl{font-size:12.5px}.pricing-card-v2--free .pricing-v2-lbl{color:var(--text-muted)}.pricing-card-v2--basic .pricing-v2-lbl{color:#2d3872}.pricing-card-v2--pro .pricing-v2-lbl{color:#ffffffa6}.pricing-v2-val{white-space:nowrap;font-size:12.5px;font-weight:700}.pricing-card-v2--free .pricing-v2-val{color:var(--ink)}.pricing-card-v2--basic .pricing-v2-val{color:#091b54}.pricing-card-v2--pro .pricing-v2-val{color:#fff}.pricing-v2-val.no{color:var(--ink-lt);font-weight:700}.pricing-v2-btn{cursor:pointer;width:100%;font-size:15px;font-weight:700;font-family:var(--font);letter-spacing:.02em;border:none;border-radius:14px;padding:14px;transition:transform .15s,box-shadow .15s,opacity .15s}.pricing-v2-btn--basic:hover{opacity:.92;transform:translateY(-1px);box-shadow:0 6px #7d1418,0 10px 24px #c0272d61}.pricing-v2-btn--pro:hover{opacity:.92;transform:translateY(-1px);box-shadow:0 6px #a05d04,0 10px 24px #f59f0073}.pricing-v2-btn:active{transform:translateY(2px)}.pricing-v2-btn--free{background:var(--border);color:var(--text-muted);cursor:default}.pricing-v2-btn--basic{color:#fff;background:linear-gradient(135deg,#991b1b,#c0272d);box-shadow:0 5px #7d1418,0 8px 20px #c0272d4d}.pricing-v2-btn--pro{color:#fff;background:linear-gradient(135deg,#d97706,#f59f00);box-shadow:0 5px #a05d04,0 8px 20px #f59f0059}.pricing-v2-btn--disabled{background:var(--bg);color:var(--ink-lt);box-shadow:none;cursor:not-allowed;border:1px solid var(--border)}.pricing-v2-payment-note{text-align:center;margin-top:10px;font-size:12px;font-weight:700}.pricing-card-v2--basic .pricing-v2-payment-note{color:#7b82aa}.pricing-card-v2--pro .pricing-v2-payment-note{color:#ffffff59}.pricing-v2-expire{margin-bottom:6px;font-size:12px;font-weight:700}.pricing-card-v2--basic .pricing-v2-expire{color:#7b82aa}.pricing-card-v2--pro .pricing-v2-expire{color:#ffffff73}.pricing-v2-stack{border-radius:8px;margin-bottom:10px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-block}.pricing-card-v2--basic .pricing-v2-stack{color:#c0272d;background:#c0272d14}.pricing-card-v2--pro .pricing-v2-stack{color:#f59f00;background:#f59f0026}.pricing-v2-price-wrap{align-items:baseline;gap:8px;margin-bottom:3px;display:flex}.pricing-v2-price-old{opacity:.55;letter-spacing:-.5px;font-size:18px;font-weight:700;text-decoration:line-through}.pricing-card-v2--basic .pricing-v2-price-old{color:#c0272d}.pricing-v2-price-old--pro{color:#fff9!important}.pricing-v2-early-bird-tag{letter-spacing:.04em;color:#c0272d;background:#c0272d1f;border-radius:999px;margin-bottom:6px;padding:3px 10px;font-size:10.5px;font-weight:700;display:inline-block}.pricing-v2-early-bird-tag--pro{color:#f59f00;background:#f59f002e}.pay-modal-overlay{z-index:950;background:#0000008c;justify-content:center;align-items:flex-end;display:none;position:fixed;inset:0}.pay-modal-overlay.show{animation:.2s fadeIn;display:flex}.pay-modal-box{background:#fff;border-radius:28px 28px 0 0;width:100%;max-width:540px;max-height:90vh;padding:24px 20px 40px;animation:.25s fadeUp;position:relative;overflow-y:auto;box-shadow:0 -8px 40px #0000002e}.pay-modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:18px;position:absolute;top:16px;right:18px}#pay-modal-plan-badge{color:var(--primary);border-bottom:1px solid var(--border);margin-bottom:14px;padding-bottom:12px;font-size:16px;font-weight:700}.pay-section-head{text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted);margin-bottom:10px;font-size:13px;font-weight:700}.pay-instr-row{border-bottom:1px solid var(--border);justify-content:space-between;padding:8px 0;font-size:14px;display:flex}.pay-instr-label{font-weight:700}.pay-instr-val{color:var(--primary);font-weight:700}.pay-instr-note{color:var(--text-muted);margin-top:8px;font-size:12px;font-style:italic}.pay-label{margin:14px 0 5px;font-size:13px;font-weight:700;display:block}.pay-select,.pay-input{border:1.5px solid var(--border);background:var(--bg);width:100%;color:var(--ink);box-sizing:border-box;border-radius:12px;padding:12px 14px;font-size:14px}.pay-field-err{color:#dc2626;min-height:16px;margin-top:4px;font-size:12px}.pay-file-wrap{border:2px dashed var(--border);text-align:center;cursor:pointer;border-radius:14px;padding:18px;transition:border-color .15s}.pay-file-wrap:hover{border-color:var(--primary)}#pay-file-placeholder{color:var(--text-muted);font-size:14px}#pay-file-preview{object-fit:contain;border-radius:10px;max-width:100%;max-height:160px}.pay-submit-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:14px;width:100%;margin-top:20px;padding:15px;font-size:15px;font-weight:700;transition:transform .15s,box-shadow .15s,opacity .15s;box-shadow:0 4px #c0272d59}.pay-submit-btn:hover:not(:disabled){opacity:.95;transform:translateY(-1px);box-shadow:0 6px #c0272d59,0 8px 20px #1b3d8f33}.pay-submit-btn:active:not(:disabled){transform:translateY(2px)}.pay-submit-btn:disabled{background:var(--border);color:var(--text-muted);box-shadow:none;cursor:not-allowed}.pay-status-icon{text-align:center;margin:20px 0 10px;font-size:48px}.pay-status-title{text-align:center;margin-bottom:10px;font-size:20px;font-weight:700}.pay-status-body{color:var(--text-muted);text-align:center;margin-bottom:24px;font-size:14px;line-height:1.5}.pay-modal-close-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:14px;width:100%;padding:14px;font-size:15px;font-weight:700}.pro-upgrade-box{background:linear-gradient(145deg,#040e2e 0%,#0f2460 55%,#1b3d8f 100%);border:2px solid #d97706;border-bottom:none;border-radius:28px 28px 0 0;width:100%;max-width:540px;max-height:90vh;padding:26px 22px 42px;animation:.25s fadeUp;position:relative;overflow-y:auto;box-shadow:0 -8px 48px #1b3d8f4d,0 -2px #d97706}.pro-upgrade-close{color:#ffffff73!important}.pro-upgrade-tier{letter-spacing:.1em;text-transform:uppercase;color:#f59f00;margin-bottom:4px;font-size:12px;font-weight:700}.pro-upgrade-name{color:#fff;margin-bottom:8px;font-size:26px;font-weight:700;line-height:1}.pro-upgrade-price-wrap{align-items:baseline;gap:10px;margin-bottom:4px;display:flex}.pro-upgrade-price{color:#f59f00;letter-spacing:-1.5px;font-variant-numeric:tabular-nums;font-size:40px;font-weight:700;line-height:1}.pro-upgrade-price-old{color:#ffffff73;letter-spacing:-.5px;font-size:18px;font-weight:700;text-decoration:line-through}.pro-upgrade-early-tag{letter-spacing:.04em;color:#f59f00;background:#f59f002e;border-radius:999px;margin-bottom:4px;padding:3px 10px;font-size:10.5px;font-weight:700;display:inline-block}.pro-upgrade-duration{color:#ffffff80;margin-bottom:14px;font-size:12px;font-weight:700}.pro-upgrade-divider{background:#ffffff1f;height:1px;margin-bottom:14px}.pro-upgrade-section-label{text-transform:uppercase;letter-spacing:.08em;color:#fff6;margin-bottom:10px;font-size:12px;font-weight:700}.pro-upgrade-rows{margin:0 0 20px;padding:0;list-style:none}.pro-upgrade-row{justify-content:space-between;align-items:center;padding:9px 0;font-size:13px;font-weight:700;display:flex}.pro-upgrade-row+.pro-upgrade-row{border-top:1px solid #ffffff14}.pro-upgrade-lbl{color:#ffffffa6;font-size:12.5px}.pro-upgrade-val{color:#ffffff80;white-space:nowrap;font-size:12.5px;font-weight:700}.pro-upgrade-arrow{color:#ffffff4d;margin:0 3px}.pro-upgrade-new{color:#f59f00;font-weight:700}.pro-upgrade-cta-btn{cursor:pointer;width:100%;font-size:15px;font-weight:700;font-family:var(--font);letter-spacing:.02em;color:#fff;background:linear-gradient(135deg,#d97706,#f59f00);border:none;border-radius:14px;padding:14px;transition:transform .1s,box-shadow .1s;box-shadow:0 5px #a05d04,0 8px 20px #f59f0059}.pro-upgrade-cta-btn:hover{opacity:.95;transform:translateY(-1px);box-shadow:0 7px #a05d04,0 10px 24px #f59f0073}.pro-upgrade-cta-btn:active{transform:translateY(2px);box-shadow:0 3px #a05d04}.pro-upgrade-payment-note{text-align:center;color:#ffffff59;margin-top:10px;font-size:12px;font-weight:700}.sub-status-card{background:var(--bg-card);border:1.5px solid var(--border);box-shadow:var(--shadow-sm);border-radius:16px;margin:14px 0;padding:14px 16px}.sub-plan-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.sub-plan-badge{letter-spacing:.04em;border-radius:999px;padding:3px 12px;font-size:12px;font-weight:700}.sub-plan-badge--free{background:var(--border);color:var(--ink-lt)}.sub-plan-badge--basic{color:#92400e;background:#fef3c7}.sub-plan-badge--pro{background:var(--primary-lt);color:var(--primary)}.sub-access-until{color:var(--text-muted);flex:1;font-size:12px;font-weight:600}.sub-device-row{color:var(--text-muted);font-size:12px;font-weight:700}.sub-upgrade-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#d97706,#f59f00);border:none;border-radius:999px;margin-left:auto;padding:6px 16px;font-size:12px;font-weight:700;transition:transform .1s;box-shadow:0 2px #a05d04,0 3px 10px #f59f0059}.sub-upgrade-btn:hover{transform:translateY(-1px);box-shadow:0 3px #a05d04,0 5px 14px #f59f0073}.sub-upgrade-btn:active{transform:translateY(1px)}.sub-upgrade-btn-sm{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#d97706,#f59f00);border:none;border-radius:999px;margin-left:8px;padding:4px 12px;font-size:12px;font-weight:700;box-shadow:0 2px #a05d04,0 2px 8px #f59f004d}.sub-pending-banner{color:#713f12;background:#fef9c3;border:1px solid #fde047;border-radius:10px;margin-top:10px;padding:10px 14px;font-size:12px;font-weight:700}.sub-expired-banner{color:#7f1d1d;background:#fee2e2;border:1px solid #fca5a5;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding:10px 14px;font-size:12px;font-weight:700;display:flex}.plan-tag{letter-spacing:.07em;white-space:nowrap;vertical-align:middle;border-radius:999px;justify-content:center;align-items:center;padding:2px 8px;font-size:12px;font-weight:700;line-height:1.6;display:inline-flex}.plan-tag--free{background:var(--border);color:var(--ink-lt);border:1px solid var(--border)}.plan-tag--basic{color:#fff;background:linear-gradient(135deg,#c0272d,#e03535);box-shadow:0 1px 5px #c0272d59}.plan-tag--pro{color:#fff;background:linear-gradient(135deg,#d97706,#f59f00);position:relative;overflow:hidden;box-shadow:0 1px 6px #f59f0080}.plan-tag--pro:after{content:"";background:linear-gradient(90deg,#0000 0%,#ffffff4d 50%,#0000 100%);animation:3s infinite plan-tag-shimmer;position:absolute;inset:0;transform:skew(-20deg)translate(-200%)}@keyframes plan-tag-shimmer{0%{transform:skew(-20deg)translate(-200%)}55%,to{transform:skew(-20deg)translate(400%)}}.btn-gold{color:#fff;cursor:pointer;font-weight:700;font-family:var(--font);letter-spacing:.02em;background:linear-gradient(135deg,#d97706,#f59f00);border:none;border-radius:14px;width:100%;padding:14px;font-size:15px;transition:transform .1s,box-shadow .1s;box-shadow:0 4px #a05d04,0 5px 16px #f59f0066}.btn-gold:hover{opacity:.95;transform:translateY(-1px);box-shadow:0 6px #a05d04,0 8px 20px #f59f0073}.btn-gold:active{transform:translateY(2px);box-shadow:0 2px #a05d04,0 2px 8px #f59f004d}.cards-locked-overlay{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.cards-locked-icon{margin-bottom:12px;font-size:48px}.cards-locked-title{color:var(--ink);margin-bottom:6px;font-size:18px;font-weight:700}.cards-locked-sub{color:var(--text-muted);max-width:280px;margin-bottom:20px;font-size:14px;line-height:1.5}.cards-locked-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:14px;padding:13px 28px;font-size:15px;font-weight:700;transition:transform .15s,box-shadow .15s,opacity .15s;box-shadow:0 4px #1b3d8f4d}.cards-locked-btn:hover{transform:translateY(-1px);box-shadow:0 6px #1b3d8f4d,0 8px 20px #1b3d8f40}.cards-locked-btn:active{opacity:.9;transform:scale(.97)}.prof-analytics-locked{background:var(--bg-card);border:1.5px solid var(--border);color:var(--text-muted);border-radius:12px;justify-content:space-between;align-items:center;padding:12px 16px;font-size:13px;font-weight:700;display:flex}.ad-unit,.ad-unit--visible{border:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;display:none!important;overflow:hidden!important}#desktop-shell{display:contents}#desktop-sidebar{display:none}@media (width>=1024px){#desktop-shell{max-width:1280px;height:100dvh;box-shadow:none;margin:0 auto;display:flex;overflow:hidden}#desktop-sidebar{background:var(--card);border-right:1px solid var(--border);scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex-direction:column;flex-shrink:0;width:280px;height:100dvh;display:flex;overflow-y:auto}#desktop-sidebar::-webkit-scrollbar{width:4px}#desktop-sidebar::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}#app-root{min-width:0;max-width:none;box-shadow:none;flex:1;margin:0;border-left:none!important;border-right:none!important}#bottom-nav{display:none!important}.screen{min-height:0}}.sidebar-logo-section{background:linear-gradient(145deg,#040e2e 0%,#091b54 45%,#1b3d8f 80%,#2b57c1 100%);flex-direction:row;flex-shrink:0;align-items:center;gap:12px;padding:14px 18px;display:flex;position:relative;overflow:hidden}.sidebar-logo-section:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff1a 1px,#0000 1px);background-size:20px 20px;position:absolute;inset:0}.sidebar-logo{object-fit:contain;z-index:1;border-radius:12px;flex-shrink:0;width:44px;height:44px;position:relative;box-shadow:0 4px 14px #0000004d}.sidebar-brand-text{z-index:1;flex-direction:column;display:flex;position:relative}.sidebar-app-name{color:#fff;letter-spacing:-.2px;font-size:16px;font-weight:700;line-height:1.2}.sidebar-app-sub{color:#ffffffa6;margin-top:1px;font-size:12px}.sidebar-nav{flex-direction:column;gap:1px;padding:6px 10px 4px;display:flex}.sidebar-nav-item{color:var(--ink-mid);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:12px;width:100%;padding:10px 14px;font-family:inherit;font-size:14px;font-weight:600;transition:background .15s,color .15s,box-shadow .15s;display:flex}.sidebar-nav-item:hover{background:var(--primary-lt);color:var(--primary)}.sidebar-nav-item:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:10px}.sidebar-nav-item.active{color:var(--primary);border-left:3px solid var(--primary);background:0 0;padding-left:11px;font-weight:700}.sidebar-nav-icon{text-align:center;flex-shrink:0;width:24px;font-size:19px}.sidebar-nav-label{flex:1}.sidebar-divider{display:none}.sidebar-streak-card{background:linear-gradient(145deg,#091b54,#1b3d8f);border:1px solid #ffffff14;border-radius:14px;margin:8px 12px;padding:14px 16px;box-shadow:0 4px 16px #091b544d}.sidebar-streak-row{align-items:center;gap:8px;margin-bottom:6px;display:flex}.sidebar-streak-flame{font-size:20px}.sidebar-streak-count{color:#fff;font-size:24px;font-weight:700;line-height:1}.sidebar-streak-label{color:#fffc;font-size:12px;font-weight:700}.sidebar-streak-badge{color:var(--accent-gold);background:#f5c51826;border:1px solid #f5c51840;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.sidebar-section-title{color:var(--ink-lt);letter-spacing:.08em;text-transform:uppercase;border-left:3px solid var(--accent);margin:6px 12px 4px;padding:6px 8px 4px;font-size:12px;font-weight:700}.sidebar-rec-card{cursor:pointer;background:linear-gradient(135deg,#7d1418,#c0272d,#e03535);border-radius:16px;min-height:160px;margin:4px 12px 10px;padding:22px 20px 26px;transition:transform .15s,box-shadow .15s;position:relative;overflow:hidden;box-shadow:0 6px 20px #c0272d66}.sidebar-rec-card:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff14 1px,#0000 1px);background-size:16px 16px;position:absolute;inset:0}.sidebar-rec-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #c0272d73}.sidebar-rec-label{color:#ffffffbf;text-transform:uppercase;letter-spacing:.08em;z-index:1;margin-bottom:8px;font-size:12px;font-weight:700;position:relative}.sidebar-rec-topic{color:#fff;z-index:1;word-break:break-word;margin-bottom:10px;font-size:17px;font-weight:700;line-height:1.35;position:relative}.sidebar-rec-why{color:#ffffffe6;z-index:1;word-break:break-word;margin-bottom:4px;font-size:13px;line-height:1.6;position:relative}.sidebar-rec-cta{color:#ffffffe6;letter-spacing:.04em;z-index:1;margin-top:14px;font-size:13px;font-weight:700;position:relative}.sidebar-map-body{padding:4px 14px 20px}.sidebar-map-row{margin-bottom:9px}.sidebar-map-row-top{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.sidebar-map-subj-name{color:var(--ink);font-size:12px;font-weight:700}.sidebar-map-pct{font-size:12px;font-weight:700}.sidebar-map-bar{background:var(--border);border-radius:999px;height:5px;overflow:hidden}.sidebar-map-bar-fill{border-radius:999px;height:100%;transition:width .4s}.home-header{z-index:5;padding:0;position:sticky;top:0;box-shadow:0 4px 24px #091b5440}.header-full{max-height:500px;padding:24px 20px 20px;transition:max-height .3s,opacity .25s,padding .3s;overflow:hidden}.header-slim{justify-content:space-between;align-items:center;height:48px;padding:0 20px;display:none}.header-slim-name{color:#fff;font-size:16px;font-weight:700}.header-slim-streak{color:#fcc419;background:#ffffff26;border-radius:999px;align-items:center;gap:5px;padding:5px 13px;font-size:14px;font-weight:700;display:flex}.home-header.header-collapsed .header-full{opacity:0;pointer-events:none;max-height:0;padding-top:0;padding-bottom:0}.home-header.header-collapsed .header-slim{display:flex}@media (width>=1024px){.home-header{position:static}.home-header.header-collapsed .header-full{opacity:1!important;pointer-events:auto!important;max-height:500px!important;padding-top:24px!important;padding-bottom:20px!important}.home-header.header-collapsed .header-slim{display:none!important}}.sidebar-signout-wrap{border-top:1px solid var(--border);margin-top:auto;padding:12px 12px 20px}.sidebar-signout-btn{width:100%;color:var(--red-dk);background:var(--red-lt);cursor:pointer;text-align:left;border:1.5px solid #fca5a5;border-radius:10px;align-items:center;gap:8px;padding:11px 14px;font-family:inherit;font-size:13px;font-weight:700;transition:background .15s,border-color .15s;display:flex}.sidebar-signout-btn:hover{border-color:var(--red-dk);background:#fee2e2}.answer-explanation{text-align:left;overflow-wrap:anywhere;min-width:0;font-size:15px;font-style:normal;font-weight:400;line-height:1.7}.answer-explanation p{margin:0 0 .85em}.answer-explanation .explanation-heading{margin:1.1em 0 .35em}.answer-explanation .explanation-step{margin:1em 0 .65em}.answer-explanation>:first-child{margin-top:0}.answer-explanation>:last-child{margin-bottom:0}.answer-explanation :is(ul,ol){margin:.35em 0 .85em;padding-left:1.6em}.answer-explanation li{margin:.3em 0;padding-left:.15em}.answer-explanation strong{font-weight:800}.answer-explanation--rich{white-space:pre-line}.answer-explanation :is(table,pre){max-width:100%;display:block;overflow-x:auto}.answer-explanation table{border-collapse:collapse;white-space:normal}.answer-explanation :is(th,td){border:1px solid;padding:.4em .6em}.answer-explanation :is(img,svg){max-width:100%;height:auto}.answer-explanation :is(pre,code,math){font-size:1em}.answer-explanation a{color:inherit;text-decoration:underline}.review-explanation{color:var(--ink-mid);margin-top:12px}.consumer-app .fc-back{justify-content:flex-start}.consumer-app :is(.fc-expl,.bm-expl){font-size:15px;font-style:normal;line-height:1.7}.consumer-app .quiz-next-bar{min-height:0;overflow:hidden}.consumer-app .quiz-next-bar .quiz-explanation{overscroll-behavior:contain;min-height:0;overflow-y:auto}.consumer-app .quiz-next-bar .quiz-next-btn{flex-shrink:0}.consumer-app #q-explanation:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}@media (width>=768px){.answer-explanation{font-size:16px}}
