:root{font-family:Avenir Next,Segoe UI,system-ui,sans-serif;color:var(--text-main);background:var(--bg-main);font-synthesis:none;text-rendering:optimizeLegibility;--brand-primary: #0F766E;--brand-primary-deep: #115E59;--brand-secondary: #15803D;--brand-accent: #D4A72C;--bg-main: #FFFCF5;--surface-card: #FFFFFF;--text-main: #1F2937;--text-muted: #64748B;--border-soft: #E5E7EB;--border-strong: #CBD5E1;--surface-teal: #E8F5F2;--surface-gold: #FFF7DB;--surface-blue: #EEF8F6;--status-success: #15803D;--status-success-surface: #EAF7EE;--status-warning: #8A6500;--status-warning-surface: #FFF7DB;--status-error: #B42318;--status-error-surface: #FFF0EE;--shadow-soft: 0 18px 50px rgba(23, 60, 56, .09);--shadow-card: 0 8px 26px rgba(23, 60, 56, .06);--radius-lg: 24px;--radius-md: 16px;--radius-sm: 12px}*{box-sizing:border-box}html{min-width:320px;background:var(--bg-main);scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0;background:var(--bg-main)}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:rgba(15,118,110,.16)}button:disabled{cursor:not-allowed;opacity:.56}button:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid var(--brand-accent);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--text-main);letter-spacing:-.035em;text-wrap:balance}h1{margin-bottom:12px;font-size:clamp(2.1rem,7vw,4.2rem);line-height:1.02}h2{margin-bottom:8px;font-size:clamp(1.35rem,3vw,1.9rem);line-height:1.15}h3{margin-bottom:6px;font-size:1.08rem}p{line-height:1.6}a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:10px;left:12px;z-index:100;padding:10px 14px;border-radius:10px;color:#fff;background:var(--brand-primary-deep);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.app-shell{min-height:100dvh}.topbar{position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(203,213,225,.75);background:#fffcf5eb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.topbar-inner,.page-container{width:min(1120px,calc(100% - 40px));margin:0 auto}.topbar-inner{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:20px;padding-top:env(safe-area-inset-top)}.brand-button{display:flex;align-items:center;gap:11px;min-width:0;padding:0;border:0;color:var(--text-main);background:transparent;text-align:left}.brand-mark{display:grid;place-items:center;width:40px;height:40px;flex:0 0 auto;border-radius:13px 13px 13px 5px;color:#fff;background:var(--brand-primary)}.brand-mark img,.welcome-mark img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.brand-copy{display:grid;min-width:0;gap:3px}.brand-copy strong{font-size:.86rem;letter-spacing:-.02em;white-space:nowrap}.brand-copy small{overflow:hidden;color:var(--text-muted);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.page-container{padding:34px 0 calc(72px + env(safe-area-inset-bottom))}.eyebrow{display:block;margin-bottom:10px;color:var(--brand-primary);font-size:.73rem;font-weight:800;letter-spacing:.06em}.section-block{margin-top:34px}.section-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px}.section-heading-row h2{margin-bottom:0}.section-icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 auto;border-radius:13px;color:var(--brand-primary);background:var(--surface-teal)}.back-button,.quiz-exit{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 0;border:0;color:var(--brand-primary-deep);background:transparent;font-weight:800}.back-button{margin-bottom:22px}.primary-button,.secondary-button,.danger-button,.text-button,.icon-button{touch-action:manipulation}.primary-button,.secondary-button,.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 18px;border-radius:13px;font-weight:800;line-height:1.15;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}.primary-button{border:1px solid var(--brand-primary);color:#fff;background:var(--brand-primary);box-shadow:0 8px 18px #0f766e2e}.primary-button:hover:not(:disabled),.primary-button:focus-visible{background:var(--brand-primary-deep);transform:translateY(-1px);box-shadow:0 12px 24px #0f766e33}.secondary-button{border:1px solid var(--border-strong);color:var(--text-main);background:var(--surface-card)}.secondary-button:hover:not(:disabled),.secondary-button:focus-visible{border-color:var(--brand-primary);color:var(--brand-primary-deep);background:var(--surface-teal)}.danger-button{border:1px solid #E6B6B0;color:var(--status-error);background:var(--status-error-surface)}.danger-button:hover:not(:disabled),.danger-button:focus-visible{background:#ffe4e0}.text-button{min-height:44px;padding:8px;border:0;color:var(--brand-primary);background:transparent;font-weight:800}.full-width{width:100%}.icon-button{display:grid;place-items:center;width:46px;height:46px;padding:0;border:1px solid var(--border-soft);border-radius:13px;color:var(--text-main);background:var(--surface-card)}.icon-button:hover,.icon-button:focus-visible{border-color:var(--brand-primary);color:var(--brand-primary)}.welcome-screen,.loading-screen,.error-screen{display:grid;place-items:center;min-height:100dvh;padding:24px}.welcome-screen{position:relative;overflow-x:hidden;overflow-y:auto;align-content:start;justify-items:center;background:var(--bg-main)}.welcome-screen:before{position:absolute;width:360px;height:360px;border:1px solid rgba(15,118,110,.14);border-radius:50%;content:"";transform:translate(42%,-36%)}.welcome-screen:after{position:absolute;right:-80px;bottom:-120px;width:300px;height:300px;border:1px solid rgba(212,167,44,.22);border-radius:50%;content:""}.welcome-card,.loading-card,.error-card{position:relative;z-index:1;width:min(100%,510px);padding:clamp(28px,7vw,54px);border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-soft)}.welcome-card{margin:auto 0;text-align:center}.welcome-mark{display:grid;place-items:center;width:74px;height:74px;margin:0 auto 24px;border-radius:24px 24px 24px 8px;color:var(--brand-accent);background:var(--brand-primary);box-shadow:10px 10px #d4a72c2e}.welcome-mark-photo{width:96px;height:96px;overflow:hidden}.welcome-mark-photo img{display:block;width:96px;height:96px}.welcome-card .eyebrow{margin-bottom:16px}.welcome-card h1{font-size:clamp(2.35rem,10vw,4rem)}.welcome-lead{max-width:33rem;margin:0 auto 28px;color:var(--text-muted)}.privacy-notice{color:#475569}.privacy-notice{margin:18px 0 22px;font-size:.78rem;line-height:1.55}.input-field{display:block;text-align:left}.input-field>span{display:block;margin-bottom:8px;color:var(--text-main);font-size:.86rem;font-weight:800}.input-field input{width:100%;min-height:50px;padding:11px 14px;border:1px solid var(--border-strong);border-radius:12px;color:var(--text-main);background:var(--surface-card);outline:none}.input-field input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 4px #0f766e21}.inline-error{margin:12px 0;color:var(--status-error);font-size:.86rem;font-weight:800}.hero-panel{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:30px;overflow:hidden;min-height:260px;padding:clamp(28px,5vw,52px);border-radius:4px 28px 28px;color:#fff;background:var(--brand-primary-deep);box-shadow:var(--shadow-soft)}.hero-panel:after{position:absolute;z-index:-1;right:-70px;bottom:-120px;width:360px;height:360px;border:1px solid rgba(255,252,245,.18);border-radius:50%;box-shadow:0 0 0 30px #fffcf508,0 0 0 60px #fffcf506;content:""}.hero-copy{max-width:620px}.hero-panel .eyebrow{color:#bde9de}.hero-panel h1{max-width:12ch;margin-bottom:16px;color:#fff;font-size:clamp(2.25rem,6vw,4rem)}.hero-panel p{max-width:52ch;margin-bottom:0;color:#d9f1ea}.hero-spark{display:grid;place-items:center;width:88px;height:88px;flex:0 0 auto;border-radius:50% 50% 50% 14px;color:var(--brand-accent);background:#fffcf51f}.resume-card{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:24px;padding:20px 22px;border:1px solid #B9DED5;border-radius:var(--radius-md);background:var(--surface-teal)}.resume-card h2{margin-bottom:6px;font-size:1.25rem}.resume-card p{margin-bottom:0;color:var(--text-muted);font-size:.9rem}.scoreboard-list,.subject-grid,.set-list{display:grid;gap:14px}.scoreboard-card,.subject-card,.set-card,.checkout-card,.context-card,.ready-card,.question-card,.result-card,.settings-card{border:1px solid var(--border-soft);background:var(--surface-card);box-shadow:var(--shadow-card)}.scoreboard-card{overflow:hidden;border-radius:var(--radius-md)}.scoreboard-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px 14px}.scoreboard-summary h3{margin-bottom:5px}.score-summary-caption{margin:0;color:var(--text-muted);font-size:.82rem}.score-summary-line{display:flex;align-items:center;gap:8px;min-width:max-content;font-size:1.14rem}.score-dot{width:10px;height:10px;border-radius:50%}.score-green{color:var(--status-success)}.score-yellow{color:var(--status-warning)}.score-red{color:var(--status-error)}.score-muted{color:var(--text-muted);font-size:.9rem}.score-green.score-dot{background:var(--status-success)}.score-yellow.score-dot{background:var(--brand-accent)}.score-red.score-dot{background:var(--status-error)}.summary-progress{padding:0 22px 17px}.progress-track{width:100%;height:8px;overflow:hidden;border-radius:99px;background:#edf1f0}.progress-fill{display:block;height:100%;border-radius:inherit;transition:width .22s ease}.progress-brand{background:var(--brand-primary)}.progress-green{background:var(--status-success)}.progress-yellow{background:var(--brand-accent)}.progress-red{background:var(--status-error)}.expand-button{width:100%;min-height:46px;padding:12px 22px;border:0;border-top:1px solid var(--border-soft);color:var(--brand-primary-deep);background:#fcfefd;text-align:left;font-weight:800}.expand-button span{float:right;color:var(--brand-accent)}.set-progress-list{margin:0;padding:0 22px 9px;list-style:none}.set-progress-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid var(--border-soft)}.set-progress-row:last-child{border-bottom:0}.set-progress-row strong,.set-progress-row span{display:block}.set-progress-row>div:first-child span{margin-top:4px;color:var(--text-muted);font-size:.78rem}.set-score-detail{display:flex;align-items:center;gap:10px;width:min(230px,42%)}.set-score-detail .progress-track{flex:1}.set-status-symbol{min-width:22px;color:var(--text-muted);text-align:center}.score-value{min-width:45px;font-size:.84rem;text-align:right}.subject-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.subject-card{display:flex;align-items:center;gap:13px;width:100%;min-height:96px;padding:16px;border-radius:var(--radius-md);color:var(--text-main);text-align:left}.subject-card:hover,.subject-card:focus-visible{border-color:var(--brand-primary);box-shadow:0 13px 28px #0f766e21}.subject-card-icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 auto;border-radius:14px 14px 14px 5px;color:var(--brand-primary);background:var(--surface-teal)}.subject-card-content{min-width:0;flex:1}.subject-card-content strong,.subject-card-content small{display:block}.subject-card-content small{margin:4px 0 12px;color:var(--text-muted);font-size:.78rem}.subject-card-progress{display:block}.subject-card>svg{color:var(--brand-primary)}.page-heading{max-width:680px;margin-bottom:26px}.page-heading h1{margin-bottom:10px}.page-heading p{margin-bottom:0;color:var(--text-muted)}.set-card{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:20px;border-radius:var(--radius-md)}.set-card-main{display:flex;align-items:flex-start;gap:14px;min-width:0}.set-status{display:grid;place-items:center;width:43px;height:43px;flex:0 0 auto;border-radius:14px 14px 14px 5px;color:var(--brand-primary);background:var(--surface-teal)}.set-locked .set-status{color:var(--status-warning);background:var(--surface-gold)}.status-label{display:block;margin-bottom:7px;color:var(--brand-primary-deep);font-size:.76rem;font-weight:800}.set-locked .status-label{color:var(--status-warning)}.set-card h2{margin-bottom:5px;font-size:1.15rem}.set-card p{margin:0 0 10px;color:var(--text-muted);font-size:.84rem}.set-card-progress{display:flex;align-items:center;gap:10px;max-width:300px}.set-card-progress .progress-track{flex:1}.set-card-progress strong{min-width:42px;font-size:.82rem}.checkout-card{display:flex;align-items:flex-start;gap:15px;margin-top:26px;padding:20px;border-color:#eadca9;border-radius:var(--radius-md);background:#fffdf4}.checkout-icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 auto;border-radius:14px;color:var(--status-warning);background:var(--surface-gold)}.checkout-card h2{margin-bottom:6px;font-size:1.15rem}.checkout-card p{margin-bottom:13px;color:var(--text-muted);font-size:.86rem}.checkout-card-copy{min-width:0;flex:1}.checkout-card .checkout-link{width:fit-content;min-height:48px;text-decoration:none}.context-card,.ready-card,.result-card{width:min(100%,720px);margin:0 auto;padding:clamp(24px,5vw,46px);border-radius:var(--radius-lg)}.context-card{position:relative}.context-card h1,.ready-card h1,.result-card h1{font-size:clamp(2.15rem,7vw,3.7rem)}.context-icon,.ready-icon,.result-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:22px;border-radius:19px 19px 19px 6px;color:var(--brand-primary);background:var(--surface-teal)}.context-line{display:grid;grid-template-columns:auto 1fr;gap:3px 14px;margin:24px 0;padding:16px;border-radius:13px;color:var(--text-main);background:var(--surface-teal)}.context-line span{color:var(--text-muted);font-size:.8rem}.context-line strong{min-width:0;overflow-wrap:anywhere}.unlock-success{margin-top:24px;padding:17px;border:1px solid #B9DED5;border-radius:13px;color:var(--brand-primary-deep);background:var(--surface-teal)}.unlock-success strong{display:block;margin-bottom:6px;font-size:1.1rem}.unlock-success p{margin-bottom:16px;color:var(--text-muted);font-size:.86rem}.ready-card{text-align:center}.ready-card .ready-icon,.result-card .result-icon{margin-right:auto;margin-left:auto}.ready-card .eyebrow,.result-card .eyebrow{text-align:center}.ready-description{color:var(--text-muted)}.ready-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:26px 0 18px}.ready-facts div{padding:14px 8px;border-radius:13px;background:#f8faf9}.ready-facts strong,.ready-facts span{display:block}.ready-facts strong{margin-bottom:4px;color:var(--brand-primary);font-size:1.25rem;font-variant-numeric:tabular-nums}.ready-facts span{color:var(--text-muted);font-size:.73rem}.ready-notice{display:flex;align-items:flex-start;gap:9px;margin-bottom:20px;padding:13px;border-radius:12px;color:var(--status-warning);background:var(--surface-gold);text-align:left;font-size:.79rem;line-height:1.5}.quiz-topline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}.quiz-exit{margin:0}.quiz-progress{color:var(--text-muted);font-size:.84rem;font-weight:800}.quiz-timer{margin:12px auto 18px;padding:14px 16px;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--surface-card);box-shadow:var(--shadow-card)}.timer-label-row,.timer-row{display:flex;align-items:center}.timer-label-row{justify-content:space-between;gap:12px;margin-bottom:9px;color:var(--text-muted);font-size:.76rem;font-weight:800}.timer-label{display:inline-flex;align-items:center;gap:7px}.timer-paused{color:var(--brand-primary);font-size:.73rem}.timer-row{gap:14px}.timer-track{flex:1;height:9px;overflow:hidden;border-radius:99px;background:#edf1f0}.timer-track span{display:block;height:100%;border-radius:inherit;transition:width .45s linear}.timer-green .timer-track span{background:var(--status-success)}.timer-yellow .timer-track span{background:var(--brand-accent)}.timer-red .timer-track span{background:var(--status-error)}.timer-digital{min-width:59px;color:var(--text-main);font-size:1rem;font-variant-numeric:tabular-nums;text-align:right}.question-card{max-width:860px;margin:0 auto;padding:clamp(20px,5vw,42px);border-radius:var(--radius-lg)}.question-context{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding-bottom:13px;border-bottom:1px solid var(--border-soft)}.section-title{color:var(--brand-primary-deep);font-size:.83rem;font-weight:800}.source-group{color:var(--text-muted);font-size:.76rem}.question-meta-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:15px}.question-type{display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border-radius:999px;color:var(--brand-primary-deep);background:var(--surface-teal);font-size:.73rem;font-weight:800}.question-source-number{color:var(--text-muted);font-size:.78rem;font-weight:800}.question-instruction{margin-bottom:18px;color:var(--text-muted);font-size:1rem;text-align:right}.question-content>h2{margin-bottom:27px;font-size:clamp(1.5rem,4vw,2.3rem);text-align:right}.short-answer-field{display:block;margin-top:10px}.short-answer-field input{width:100%;min-height:58px;padding:11px 15px;border:1px solid var(--border-strong);border-radius:13px;color:var(--text-main);background:var(--surface-card);font:inherit;font-size:1.25rem;text-align:right}.short-answer-field input:focus{outline:3px solid rgba(20,129,112,.2);border-color:var(--brand-primary)}.short-answer-field input:disabled{cursor:default;opacity:.8}.source-text{display:inline-block;max-width:100%;font-family:Noto Naskh Arabic,Noto Sans Arabic,Geeza Pro,Tahoma,sans-serif;font-size:1.08em;line-height:1.85;overflow-wrap:anywhere}.source-asset{max-width:540px;margin:0 auto 22px;padding:8px;border:1px solid var(--border-soft);border-radius:13px;background:#fff}.source-asset img{display:block;width:100%;height:auto;max-height:340px;object-fit:contain}.source-asset-zoomable{width:100%;max-width:640px}.source-asset-image-scroll{overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.source-asset-image-scroll:focus-visible{outline:3px solid rgba(20,129,112,.35);outline-offset:2px}.source-asset-image-scroll img{width:640px;max-width:none;max-height:none}.source-asset-hint{margin:9px 0 0;color:var(--text-muted);font-size:.72rem;line-height:1.5;text-align:center}.stimulus-block{margin:0 0 20px;padding:16px 17px;border-right:4px solid var(--brand-accent);border-radius:12px;color:var(--text-main);background:#fffdf4;text-align:right}.stimulus-list{display:grid;gap:5px}.stimulus-item{display:flex;align-items:baseline;justify-content:flex-start;gap:10px}.stimulus-item>bdi{min-width:23px;color:var(--status-warning);font-family:inherit;font-size:.84rem;font-weight:800}.question-options,.choice-card-grid{display:grid;gap:11px;margin:0;padding:0}.option-card,.choice-card{display:flex;align-items:center;gap:11px;width:100%;min-height:58px;padding:12px 15px;border:1px solid var(--border-strong);border-radius:13px;color:var(--text-main);background:var(--surface-card);text-align:right}.option-card:hover:not(:disabled),.option-card:focus-visible,.choice-card:hover:not(:disabled),.choice-card:focus-visible,.option-selected,.choice-selected{border-color:var(--brand-primary);background:var(--surface-teal)}.option-card .source-text,.choice-card .source-text{flex:1}.choice-image{display:block;width:min(100%,180px);max-height:210px;object-fit:contain;border-radius:8px;background:#fff}.multi-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.multi-choice-card{flex-direction:column;justify-content:flex-start;min-height:220px;text-align:center}.multi-choice-card .choice-label{align-self:flex-start}.choice-label{min-width:27px;color:var(--brand-primary-deep);font-family:Noto Naskh Arabic,Tahoma,sans-serif;font-size:1.05rem;font-weight:800;text-align:center}.option-locked{cursor:default}.choice-correct{border-color:var(--status-success)!important;color:var(--status-success);background:var(--status-success-surface)!important}.choice-incorrect{border-color:var(--status-error)!important;color:var(--status-error);background:var(--status-error-surface)!important}.item-feedback-label{margin-left:auto;flex:0 0 auto;font-family:Avenir Next,Segoe UI,system-ui,sans-serif;font-size:.72rem;font-weight:800}.matching-board{display:grid;gap:19px}.matching-prompt{display:grid;gap:5px;padding:15px 16px;border-radius:13px;background:#f8faf9;text-align:right}.matching-label{color:var(--brand-primary);font-size:.75rem;font-weight:800}.choice-card-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.choice-card{justify-content:center;text-align:center}.choice-card .source-text{flex:initial}.unsupported-question{padding:16px;border-radius:12px;color:var(--status-warning);background:var(--surface-gold)}.feedback-box{margin-top:20px;padding:15px 16px;border:1px solid #E6C85A;border-radius:13px;color:var(--text-main);background:var(--surface-gold)}.feedback-correct{border-color:#9bc9a9}.feedback-incorrect{border-color:#e7aaa2}.feedback-heading{display:flex;align-items:center;gap:9px;margin-bottom:9px;font-size:1rem}.feedback-heading>strong{color:var(--status-warning)}.feedback-correct .feedback-heading>strong{color:var(--status-success)}.feedback-incorrect .feedback-heading>strong{color:var(--status-error)}.feedback-icon{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;color:currentColor;background:#1f293714}.feedback-marks{margin-left:auto;color:var(--text-muted);font-size:.78rem;font-weight:800}.feedback-box p{margin-bottom:7px;font-size:.84rem}.feedback-box p:last-child{margin-bottom:0}.feedback-answer{overflow-wrap:anywhere}.quiz-message{margin-top:17px;margin-bottom:0}.quiz-actions{margin-top:23px}.check-button{width:100%}.quiz-save-note{margin:18px 0 0;color:var(--text-muted);font-size:.75rem;text-align:center}.result-card{text-align:center}.result-card.result-green .result-icon{color:var(--status-success);background:var(--status-success-surface)}.result-card.result-yellow .result-icon{color:var(--status-warning);background:var(--surface-gold)}.result-card.result-red .result-icon{color:var(--status-error);background:var(--status-error-surface)}.result-subtitle{color:var(--text-muted)}.result-score{display:grid;gap:5px;margin:30px 0 13px}.result-score strong{font-size:clamp(4rem,16vw,7rem);line-height:.9;letter-spacing:-.08em;font-variant-numeric:tabular-nums}.result-score span,.marks-summary{color:var(--text-muted);font-size:.82rem}.result-progress{max-width:430px;margin:0 auto}.marks-summary{margin:17px 0 27px;font-weight:800}.result-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.settings-card{max-width:720px;margin-bottom:17px;padding:24px;border-radius:var(--radius-md)}.settings-card h2{font-size:1.25rem}.settings-card>p{color:var(--text-muted)}.settings-card form{display:flex;align-items:flex-end;gap:12px}.settings-card form .input-field{flex:1}.success-message{margin:16px 0 0;padding:12px 14px;border-radius:11px;color:var(--status-success);background:var(--status-success-surface);font-size:.84rem;font-weight:800}.danger-card{border-color:#e7c1bb}.modal-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px;background:#1f29377a}.modal-card{width:min(100%,480px);max-height:min(90dvh,620px);overflow:auto;padding:24px;border-radius:20px;background:var(--surface-card);box-shadow:0 24px 70px #0f172a38}.modal-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.modal-title-row h2{margin-bottom:0}.modal-title-row .icon-button{width:42px;height:42px;flex:0 0 auto}.modal-body{margin-top:17px}.modal-body p{margin-bottom:0;color:var(--text-muted)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.storage-notice{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:70;max-width:370px;padding:13px 16px;border:1px solid #E7AAA2;border-radius:13px;color:var(--status-error);background:var(--status-error-surface);box-shadow:var(--shadow-soft);font-size:.82rem;font-weight:800}.loading-screen,.error-screen{background:var(--bg-main);text-align:center}.loading-card{text-align:center}.loading-orb{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 18px;border-radius:19px 19px 19px 6px;color:var(--brand-accent);background:var(--brand-primary);animation:breathe 1.4s ease-in-out infinite}.loading-card p,.error-card p{color:var(--text-muted)}.error-card{text-align:center}.error-card .result-icon{margin:0 auto 20px;color:var(--status-error);background:var(--status-error-surface)}.error-card h1{font-size:clamp(2rem,7vw,3rem)}@keyframes breathe{50%{transform:scale(.92);opacity:.78}}@media(min-width:700px){.welcome-card{width:min(100%,560px)}.input-field input{min-height:54px}}@media(max-width:700px){.topbar-inner,.page-container{width:min(100% - 24px,1120px)}.topbar-inner{min-height:66px}.page-container{padding-top:22px}.brand-copy strong{font-size:.77rem}.brand-copy small{font-size:.7rem}.hero-panel{align-items:flex-start;min-height:0;padding:26px 22px}.hero-panel h1{max-width:11ch}.hero-spark{width:54px;height:54px}.resume-card,.set-card{align-items:stretch;flex-direction:column}.resume-card .primary-button,.set-card>.primary-button,.set-card>.secondary-button{width:100%}.checkout-card{gap:12px;padding:16px}.checkout-card .checkout-link{width:100%}.scoreboard-summary{align-items:flex-start;flex-direction:column;gap:11px}.set-score-detail{width:48%}.question-card{padding:20px 16px}.question-context{align-items:flex-start;flex-direction:column;gap:6px}.question-meta-row{align-items:flex-start;flex-direction:column;gap:8px}.question-instruction{font-size:.94rem}.feedback-heading{align-items:flex-start;flex-wrap:wrap}.feedback-marks{width:100%;margin-left:35px}.settings-card form{align-items:stretch;flex-direction:column}.settings-card form .primary-button{width:100%}.modal-actions{align-items:stretch;flex-direction:column-reverse}.modal-actions button{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(min-width:1024px){.page-container{padding-top:46px}.subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@font-face{font-family:UPKK Jakarta;src:url(/fonts/plus-jakarta-sans.ttf) format("truetype");font-weight:200 800;font-style:normal;font-display:swap}@font-face{font-family:UPKK Amiri;src:url(/fonts/amiri-bold.ttf) format("truetype");font-weight:700;font-display:swap}.v2-shell{font-family:UPKK Jakarta,Avenir Next,system-ui,sans-serif}.v2-shell .topbar{background:var(--brand-primary-deep);border-bottom:1px solid var(--brand-accent);color:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}.v2-shell .topbar-inner{max-width:560px;width:calc(100% - 32px);min-height:60px;gap:10px}.v2-shell .brand-button{color:#fff;flex:1;overflow:hidden}.v2-shell .brand-copy{overflow:hidden}.v2-shell .brand-copy strong{font-size:14px;overflow:hidden;text-overflow:ellipsis}.v2-exam-badge{color:#f8e2a0;border:1px solid #CBAA56;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;white-space:nowrap}.v2-shell .icon-button{width:44px;height:44px;color:#fff;border:0;background:transparent}.v2-shell .icon-button:hover{background:#ffffff18}.v2-shell .page-container{width:calc(100% - 32px);max-width:560px;padding:20px 0 calc(32px + env(safe-area-inset-bottom))}.v2-shell h1,.v2-shell h2{letter-spacing:-.025em}.v2-achievements h1,.v2-review>h2{font-size:22px;line-height:1.3;margin:0}.v2-section-note{font-size:13px;line-height:1.5;color:#59645d;margin:4px 0 14px}.v2-achievement-list,.v2-history-list{list-style:none;padding:0;margin:0}.v2-achievement-list{display:grid;gap:10px}.v2-achievement-card{background:var(--subject-tint);border:1px solid color-mix(in srgb,var(--subject-accent) 26%,transparent);border-radius:12px;padding:12px 14px}.v2-achievement-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px}.v2-achievement-heading h2{font-size:15px;line-height:1.35;margin:0}.v2-achievement-heading strong{font-size:20px;color:var(--subject-accent);flex-shrink:0;font-variant-numeric:tabular-nums}.v2-achievement-heading .v2-unattempted{font-size:12px;color:#4b5563}.v2-achievement-card .progress-track,.v2-set-card .progress-track{background:color-mix(in srgb,var(--subject-accent) 14%,white)}.v2-achievement-card .progress-fill,.v2-set-card .progress-fill{background:var(--subject-accent)}.v2-history-link{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:46px;margin-top:12px;padding:10px;background:#fff;color:#374151;border:1px solid #D3D8D2;border-radius:10px;font-size:14px}.v2-review{margin-top:26px}.v2-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.v2-review-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:150px;padding:14px 6px;gap:3px;color:var(--subject-accent);background:var(--subject-tint);border:1px solid color-mix(in srgb,var(--subject-accent) 48%,transparent);border-radius:16px;box-shadow:0 3px 8px #15342508;transition:transform .15s ease,box-shadow .15s ease}.v2-review-tile:active{transform:scale(.98)}.v2-review-tile:hover{box-shadow:0 5px 14px #15342516}.v2-jawi{font-family:UPKK Amiri,Geeza Pro,serif;font-weight:700;font-size:clamp(24px,6.8vw,32px);line-height:1.8;letter-spacing:0;white-space:nowrap}.v2-rumi{color:#424c47;font-size:14px;line-height:1.5}.v2-resume{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#e8f5f2;border:1px solid #B9DED5;border-radius:12px;margin-top:16px;padding:12px}.v2-resume strong,.v2-resume span{display:block}.v2-resume strong{font-size:14px}.v2-resume span{font-size:12px;color:#4b5563;margin-top:3px}.v2-resume button{border:0;border-radius:8px;min-height:44px;padding:10px;background:var(--brand-primary-deep);color:#fff;font-size:12px;font-weight:700}.v2-subject-heading{text-align:center;margin-bottom:22px}.v2-subject-heading .v2-jawi{color:var(--subject-accent);font-size:36px}.v2-subject-heading h1{font-size:24px;line-height:1.3;margin:0 0 8px}.v2-subject-heading p{font-size:14px;color:#59645d;margin:0}.v2-set-list{display:grid;gap:12px}.v2-set-card{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid #CBD5D0;border-radius:14px;background:#fff}.v2-set-unlocked{border-color:color-mix(in srgb,var(--subject-accent) 45%,white);background:var(--subject-tint)}.v2-set-detail{flex:1;min-width:0}.v2-set-locked .v2-set-detail{opacity:.5}.v2-set-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}.v2-set-heading h2{font-size:16px;margin:0;line-height:1.4}.v2-set-heading strong{font-size:12px;color:#374151}.v2-set-caption{display:block;font-size:12px;color:#46524a;margin-top:8px}.v2-set-action{display:grid;place-items:center;min-height:48px;min-width:54px;border:0;border-radius:10px;font-size:13px;font-weight:800;padding:12px;transition:transform .15s ease}.v2-set-action:active{transform:scale(.97)}.v2-start{background:var(--brand-primary-deep);color:#fff}.v2-unlock{background:#d4a72c;color:#292100;box-shadow:0 3px 8px #71570d20}.v2-history h1{font-size:26px;line-height:1.3}.v2-history>p{color:#59645d;font-size:14px}.v2-history-filter{display:grid;gap:7px;font-size:14px;margin:20px 0}.v2-history-filter select{min-height:46px;width:100%;padding:10px;border:1px solid #CBD5D1;border-radius:10px;background:#fff;font:inherit}.v2-history-list{display:grid;gap:10px}.v2-history-record{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px;border-radius:12px;background:var(--subject-tint);border:1px solid #DBE2DB}.v2-history-record h2{font-size:14px;line-height:1.5;margin:0 0 5px}.v2-history-record time,.v2-history-record span{display:block;font-size:12px;color:#4b5563;line-height:1.6}.v2-history-record>strong{font-size:22px;color:var(--subject-accent);flex-shrink:0}.v2-history-empty{text-align:center;padding:28px 16px;border-radius:14px;background:#fff}.v2-history-empty h2{font-size:20px;margin-top:15px}.v2-history-pagination{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:20px;font-size:12px}.v2-history-pagination button{padding:10px;font-size:12px}.backup-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.backup-file-label{cursor:pointer}.backup-file-label:focus-within{outline:3px solid var(--brand-accent);outline-offset:3px}.storage-notice{display:grid;gap:10px}.storage-notice button{min-height:44px;border:1px solid #B42318;border-radius:8px;background:#fff;color:#b42318;font-weight:700}.pwa-update-notice{position:fixed;bottom:14px;left:14px;z-index:65;max-width:min(360px,calc(100vw - 28px));padding:14px;border:1px solid #AAC9BE;border-radius:12px;background:#fff;box-shadow:var(--shadow-card);font-size:14px}.pwa-update-notice button{min-height:44px;margin-top:8px}@media(max-width:350px){.v2-shell .topbar-inner,.v2-shell .page-container{width:calc(100% - 24px)}.v2-shell .brand-copy strong{font-size:12px}.v2-exam-badge{font-size:10px;padding:4px 6px}.v2-review-grid{gap:8px}.v2-review-tile{min-height:148px;padding:10px 4px}.v2-jawi{font-size:23px}.v2-review .v2-rumi{font-size:11px}.v2-set-card{padding:12px;gap:10px}.v2-set-heading{flex-wrap:wrap}}.v2-home .topbar{background:var(--brand-primary-deep);border-bottom:1px solid var(--brand-accent);color:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}.v2-home .topbar-inner{max-width:560px;width:calc(100% - 32px);min-height:60px;gap:10px}.home-brand{flex:1;overflow:hidden}.home-logo{overflow:hidden}.home-logo img{display:block;width:40px;height:40px}.home-copy{overflow:hidden;flex:1}.home-name{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800;letter-spacing:-.02em;overflow-wrap:anywhere}.home-greet{display:block;font-size:12px;line-height:1.4;color:#d9f1ea;white-space:nowrap}.home-settings img{display:block;width:22px;height:22px}.v2-review .v2-jawi{white-space:normal;max-width:100%;overflow-wrap:anywhere}.v2-review .v2-rumi{max-width:100%;overflow-wrap:anywhere;text-align:center;text-wrap:balance}.v2-review-tile>svg{flex:0 0 auto}.v2-home .page-container{width:calc(100% - 32px);max-width:560px}@media(min-width:700px){.v2-home .topbar-inner,.v2-home .page-container{width:calc(100% - 48px);max-width:640px}.v2-review-grid{gap:12px}.v2-review-tile{min-height:168px}}@media(min-width:1100px){.v2-home .topbar-inner,.v2-home .page-container{max-width:720px}.v2-achievement-list{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-review-grid{gap:14px}.v2-review-tile{min-height:176px}}
