.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);color:var(--text);padding:20px}.login-card{width:100%;max-width:400px;background:var(--surface, #161d27);border-radius:var(--radius, 10px);padding:40px 32px;box-shadow:0 4px 24px #0000004d}.login-title{font-size:1.5rem;font-weight:600;margin-bottom:8px;text-align:center}.login-subtitle{color:var(--text-dim, #8899aa);font-size:.95rem;line-height:1.6;margin-bottom:8px;text-align:center}.login-form{display:flex;flex-direction:column;gap:12px}.login-input{width:100%;padding:12px 14px;border:1px solid var(--surface3, #263445);border-radius:var(--radius, 10px);background:var(--bg, #0c1117);color:var(--text, #e8ecf1);font-size:.95rem;outline:none;transition:border-color .2s}.login-input:focus{border-color:var(--accent, #f0544f)}.login-input::-moz-placeholder{color:var(--text-dim, #8899aa)}.login-input::placeholder{color:var(--text-dim, #8899aa)}.login-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:12px 16px;border:none;border-radius:var(--radius, 10px);font-size:.95rem;font-weight:500;cursor:pointer;transition:opacity .2s}.login-btn:hover{opacity:.9}.login-btn:disabled{opacity:.5;cursor:not-allowed}.login-btn-primary{background:var(--accent, #f0544f);color:#fff}.login-btn-google{background:var(--surface2, #1e2a38);color:var(--text, #e8ecf1);border:1px solid var(--surface3, #263445);margin-bottom:4px}.login-divider{display:flex;align-items:center;gap:12px;margin:16px 0;color:var(--text-dim, #8899aa);font-size:.85rem}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--surface3, #263445)}.login-error{color:var(--red, #ff5252);font-size:.85rem;padding:8px 12px;border-radius:var(--radius, 10px);background:#ff52521a}.login-toggle{text-align:center;margin-top:20px;font-size:.9rem;color:var(--text-dim, #8899aa)}.login-link{background:none;border:none;color:var(--accent, #f0544f);cursor:pointer;font-size:.9rem;text-decoration:underline;padding:0}.login-link:hover{opacity:.8}.login-field{display:flex;flex-direction:column;gap:6px}.login-label{font-size:.85rem;color:var(--text-dim, #8899aa);font-weight:500}.login-blocked{color:var(--red, #ff5252);font-size:.85rem;padding:10px 14px;border-radius:var(--radius, 10px);background:#ff52521a;border:1px solid rgba(255,82,82,.2);text-align:center}.login-consent{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:var(--radius, 10px);background:#ffab0014;border:1px solid rgba(255,171,0,.2)}.login-consent-note{font-size:.85rem;color:var(--yellow, #ffab00);margin:0}.login-checkbox-label{display:flex;align-items:flex-start;gap:8px;font-size:.85rem;color:var(--text-dim, #8899aa);cursor:pointer;line-height:1.4}.login-checkbox{margin-top:2px;flex-shrink:0;accent-color:var(--accent, #f0544f)}.login-legal-note{text-align:center;margin-top:16px;font-size:.8rem;color:var(--text-muted, #5a6a7a);line-height:1.5}.login-legal-note a{color:var(--accent, #f0544f);text-decoration:underline}:root{--bg: #0a1015;--surface: #131b24;--surface2: #1a2533;--surface3: #223042;--primary: #1aae8d;--primary-light: #3ec9a5;--primary-dark: #0e8d73;--primary-dim: #0b5a4c;--accent: #1aae8d;--accent2: #0e89e9;--green: #1aae8d;--green-bright: #3ec9a5;--yellow: #ffab00;--red: #ff5252;--blue: #0e89e9;--text: #e8ecf1;--text-dim: #8899aa;--text-muted: #5a6a7a;--border: #1e2a38;--border-hover: #2a3a4e;--radius: 10px;--card-shadow: 0 2px 12px rgba(0,0,0,.4)}.askiras-nav{display:flex;align-items:center;gap:10px;margin-right:auto}.askiras-logo-link{display:flex;align-items:center;gap:8px;text-decoration:none;color:inherit}.askiras-logo-link:hover{opacity:.85}.askiras-wordmark{font-size:15px;font-weight:800;background:linear-gradient(135deg,var(--primary),var(--primary-dark));-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.3px}.askiras-domain{font-size:12px;font-weight:600;color:var(--text-dim);padding-left:10px;border-left:1px solid var(--surface3)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased;overscroll-behavior-y:contain}button{cursor:pointer;border:none;border-radius:var(--radius);padding:10px 20px;font-size:14px;font-weight:600;transition:all .15s;touch-action:manipulation;-moz-user-select:none;user-select:none;-webkit-user-select:none}button:hover{filter:brightness(1.15);transform:translateY(-1px)}button:active{transform:scale(.97) translateY(0)}button:disabled{opacity:.5;cursor:not-allowed;transform:none;filter:none}.btn-primary{background:var(--accent);color:#fff}.btn-secondary{background:var(--surface2);color:var(--text)}.btn-success{background:var(--green);color:#fff}.btn-warning{background:var(--yellow);color:#1a1a1a}.btn-danger{background:var(--red);color:#fff}.card{background:var(--surface);border-radius:14px;padding:20px;margin-bottom:16px;box-shadow:var(--card-shadow);border:1px solid rgba(255,255,255,.04)}.container{max-width:600px;margin:0 auto;padding:12px}.nav{display:flex;gap:4px;padding:max(10px,env(safe-area-inset-top)) 12px 10px;background:var(--surface);border-bottom:1px solid var(--surface2);position:sticky;top:0;z-index:10;justify-content:center}.nav .logo{font-weight:800;font-size:15px;margin-right:auto;background:linear-gradient(135deg,var(--accent),var(--accent2));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.nav button{padding:6px 14px;font-size:12px;border-radius:20px;background:transparent;color:var(--text-dim)}.nav button.active{background:var(--accent);color:#fff}.progress-bar-container{height:4px;background:var(--surface2);border-radius:2px;margin-bottom:10px;overflow:hidden}.progress-bar{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2));border-radius:2px;transition:width .3s ease-out}.progress-info{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:12px;color:var(--text-dim)}.domain-tag{background:var(--accent);color:#fff;padding:2px 10px;border-radius:12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.subdomain-tag{background:var(--surface2);color:var(--text-dim);padding:2px 10px;border-radius:12px;font-size:11px;font-weight:600}.difficulty-tag{padding:2px 10px;border-radius:12px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.difficulty-easy{background:var(--green);color:#fff}.difficulty-medium{background:var(--yellow);color:#1a1a1a}.difficulty-hard{background:var(--red);color:#fff}.passage-card{background:var(--surface);border-radius:14px;padding:20px 24px;margin-bottom:12px;border:1px solid rgba(255,255,255,.06);border-left:3px solid var(--accent);box-shadow:var(--card-shadow)}.passage-text{font-size:14px;line-height:1.8;color:var(--text);white-space:pre-wrap}.passage-source{margin-top:12px;font-size:12px;color:var(--text-dim);font-style:italic}.passage-details{margin-bottom:12px}.passage-details summary{cursor:pointer;font-size:13px;color:var(--accent);font-weight:600;padding:6px 0}.passage-details summary:hover{color:var(--text)}.question-text{font-size:15px;line-height:1.7;color:var(--text);margin-bottom:20px}.choices{display:flex;flex-direction:column;gap:10px}.choice-btn{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;background:var(--surface2);border:2px solid transparent;border-radius:12px;text-align:left;font-size:14px;font-weight:500;color:var(--text);transition:all .15s;width:100%;min-height:52px;line-height:1.5}.choice-btn:hover{border-color:var(--accent);background:var(--surface3);box-shadow:0 2px 12px #1aae8d26}.choice-label{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;border-radius:50%;background:var(--surface3);font-weight:800;font-size:13px;color:var(--accent);flex-shrink:0}.choice-text{padding-top:4px;flex:1}.choice-indicator{margin-left:auto;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0;padding-top:6px}.choice-btn-result{cursor:default;pointer-events:none}.choice-btn-result:hover{transform:none;filter:none}.choice-correct{border-color:var(--green);background:#4caf501a}.choice-correct .choice-label{background:var(--green);color:#fff}.choice-correct .choice-indicator{color:var(--green)}.choice-incorrect{border-color:var(--red);background:#ff525214}.choice-incorrect .choice-label{background:var(--red);color:#fff}.choice-incorrect .choice-indicator{color:var(--red)}.choice-dimmed{opacity:.45}.result-banner{text-align:center;padding:12px;border-radius:12px;margin-bottom:12px;font-weight:800;font-size:16px;letter-spacing:.3px}.result-correct{background:#4caf5026;color:var(--green);border:1px solid rgba(76,175,80,.3)}.result-incorrect{background:#ff52521f;color:var(--red);border:1px solid rgba(255,82,82,.3)}.explanation-section{margin-top:20px;padding-top:16px;border-top:1px solid var(--surface2)}.explanation-heading{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);margin-bottom:8px;font-weight:700}.explanation-text{font-size:14px;line-height:1.7;color:var(--text)}.distractor-section{margin-top:16px}.distractor-item{font-size:13px;line-height:1.6;color:var(--text-dim);padding:6px 0;border-bottom:1px solid rgba(255,255,255,.03)}.distractor-label{font-weight:700;color:var(--text)}.ai-explanation{background:var(--surface2);border-left:3px solid var(--accent2);border-radius:0 var(--radius) var(--radius) 0;padding:14px 16px;margin-top:16px;font-size:13px;line-height:1.7;white-space:pre-wrap;color:var(--text)}.start-btn{display:block;width:100%;padding:16px 48px;font-size:16px;border-radius:14px}.accuracy-ring{width:120px;height:120px;border-radius:50%;background:conic-gradient(var(--acc-color) var(--acc-pct),var(--surface2) 0%);display:flex;align-items:center;justify-content:center;margin:20px auto;position:relative}.accuracy-ring:after{content:"";width:96px;height:96px;border-radius:50%;background:var(--surface);position:absolute}.accuracy-value{font-size:28px;font-weight:800;z-index:1}.domain-row{margin-bottom:14px}.domain-row-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.domain-name{font-size:14px;font-weight:600}.domain-bar-bg{height:8px;background:var(--surface2);border-radius:4px;overflow:hidden}.domain-bar-fill{height:100%;border-radius:4px;transition:width .5s ease-out}.subdomain-row{padding:8px 0;border-bottom:1px solid var(--surface2)}.subdomain-row:last-child{border-bottom:none}.wrong-question-row{padding:12px 0;border-bottom:1px solid var(--surface2)}.wrong-question-row:last-child{border-bottom:none}.wrong-question-text{font-size:13px;line-height:1.6;color:var(--text);margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.wrong-question-meta{display:flex;gap:12px;font-size:12px}.wrong-chosen{color:var(--red);font-weight:600}.wrong-correct{color:var(--green);font-weight:600}.wrong-domain{color:var(--text-dim)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:10px;margin:12px 0}.stat-box{background:var(--surface2);border-radius:12px;padding:14px 8px;text-align:center}.stat-box .value{font-size:24px;font-weight:800;color:var(--text)}.stat-box .label{font-size:11px;color:var(--text-dim);margin-top:2px;text-transform:uppercase;letter-spacing:.3px}.review-counts{display:flex;gap:12px;justify-content:center;margin-bottom:12px;font-size:12px;font-weight:600}.count-new{color:var(--accent)}.count-new:before{content:"New ";color:var(--text-dim);font-weight:400}.count-learning{color:var(--yellow)}.count-learning:before{content:"Learn ";color:var(--text-dim);font-weight:400}.count-review{color:var(--green)}.count-review:before{content:"Rev ";color:var(--text-dim);font-weight:400}.count-due{color:var(--text-dim);font-weight:400}.review-meta{display:flex;gap:8px;margin-bottom:14px}.grade-section{margin-top:20px;padding-top:16px;border-top:1px solid var(--surface2)}.grade-buttons{display:flex;gap:8px;justify-content:center}.grade-buttons button{padding:12px 16px;font-size:13px;line-height:1.3;border-radius:12px;flex:1;max-width:100px;min-height:44px}.timer-bar-container{height:3px;background:var(--surface2);border-radius:2px;overflow:hidden}.timer-bar{height:100%;background:var(--green);border-radius:2px;transition:width 1s linear,background-color .3s}.timer-overtime{background:var(--red);animation:timer-pulse 2s ease-in-out infinite}@keyframes timer-pulse{0%,to{opacity:1}50%{opacity:.6}}.streak-pill{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:20px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-weight:800;font-size:13px}.app-footer{text-align:center;padding:24px 12px max(16px,env(safe-area-inset-bottom));font-size:11px;color:var(--text-dim);opacity:.5}.footer-links{margin-top:6px;display:flex;gap:6px;justify-content:center;align-items:center;font-size:11px}.footer-links a{color:var(--text-dim);text-decoration:none;transition:color .15s}.footer-links a:hover{color:var(--accent)}.footer-sep{color:var(--text-dim);opacity:.4}.trademark-notice{margin-top:6px;font-size:10px;line-height:1.4;max-width:400px;margin-left:auto;margin-right:auto}@keyframes correctFlash{0%{box-shadow:0 0 #4caf50b3}50%{box-shadow:0 0 30px 6px #4caf5066}to{box-shadow:var(--card-shadow)}}@keyframes incorrectShake{0%,to{transform:translate(0)}15%{transform:translate(-6px)}30%{transform:translate(6px)}45%{transform:translate(-4px)}60%{transform:translate(4px)}75%{transform:translate(-2px)}90%{transform:translate(2px)}}@media (max-width: 480px){.container{padding:8px}.card{padding:16px}.passage-card{padding:16px 18px}.passage-text{font-size:13px}.question-text{font-size:14px}.choice-btn{padding:14px;font-size:13px}.choice-label{min-width:28px;height:28px;font-size:12px}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-box .value{font-size:20px}.accuracy-ring{width:100px;height:100px}.accuracy-ring:after{width:80px;height:80px}.accuracy-value{font-size:24px}.grade-buttons button{padding:10px 12px;font-size:12px}}@media (max-width: 360px){.nav .logo{font-size:13px}.nav button{padding:5px 10px;font-size:11px}.choice-btn{gap:10px;padding:12px}.review-counts{gap:8px;font-size:11px}}
