:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-background:#f7f7f2;--color-surface:#fff;--color-text:#17211d;--color-text-muted:#5f6c66;--color-border:#d9dfdb;--color-brand:#245c4a;--color-brand-soft:#e1eee8;--color-focus:#b45f06;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--radius-small:.5rem;--radius-medium:1rem;--radius-large:1.5rem;--readable-line-length:65ch;--layout-max-width:760px;--touch-target:44px;--shadow-soft:0 14px 40px #1b352b14}*,:before,:after{box-sizing:border-box}html{background:var(--color-background);min-width:320px;color:var(--color-text);font-family:Inter,Noto Sans SC,Microsoft YaHei,system-ui,-apple-system,sans-serif}body{background:radial-gradient(circle at top right, #e1eee8cc, transparent 36rem), var(--color-background);min-width:320px;min-height:100vh;margin:0}button,a,input,select,textarea{font:inherit}a{color:inherit}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.app-frame{width:min(100%, var(--layout-max-width));min-height:100vh;padding-inline:var(--space-4);flex-direction:column;margin:0 auto;display:flex}.app-header{padding-block:var(--space-5) var(--space-4)}.app-header p{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:.9375rem}.brand{min-height:var(--touch-target);color:var(--color-brand);letter-spacing:-.025em;align-items:center;font-size:1.35rem;font-weight:800;text-decoration:none;display:inline-flex}.app-main{width:100%;padding-bottom:var(--space-5);flex:1}.page-card{width:100%;max-width:var(--readable-line-length);padding:clamp(var(--space-4), 5vw, var(--space-6));overflow-wrap:anywhere;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-large);box-shadow:var(--shadow-soft)}.page-card h1{margin:var(--space-2) 0 var(--space-3);font-size:clamp(1.75rem,8vw,2.75rem);line-height:1.1}.page-card>:last-child{color:var(--color-text-muted);margin-bottom:0;line-height:1.65}.page-intro{color:var(--color-text-muted);line-height:1.65}.stack-form{gap:var(--space-4);margin-top:var(--space-5);display:grid}.form-field{gap:var(--space-2);color:var(--color-text);font-weight:700;display:grid}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:var(--touch-target);padding:var(--space-3);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-small);font-weight:400}.form-field textarea{resize:vertical;min-height:6rem}.choice-group,.mode-picker{gap:var(--space-2);border:0;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));min-width:0;margin:0;padding:0;display:grid}.choice-group legend,.mode-picker legend{margin-bottom:var(--space-2);grid-column:1/-1;font-weight:700}.choice-group label,.mode-picker label{min-height:var(--touch-target);align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-brand-soft);border-radius:var(--radius-small);display:flex}.button{width:100%;min-height:var(--touch-target);padding:var(--space-3) var(--space-4);border-radius:var(--radius-small);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;font-weight:750;display:inline-flex}.button:disabled{cursor:wait;opacity:.65}.button--primary{color:#fff;background:var(--color-brand)}.button--secondary{color:var(--color-brand);background:var(--color-surface);border-color:var(--color-brand)}.form-error{color:#9d251d;margin:0;font-weight:650}.form-status{color:var(--color-brand);margin:0}.import-source-field{margin-top:var(--space-5)}.import-actions{gap:var(--space-2);margin-block:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));display:grid}.form-status--warning,.form-status--error{margin-top:var(--space-3);padding:var(--space-3);border-radius:var(--radius-small)}.form-status--warning{color:var(--color-text);background:#fff5d9}.form-status--error{color:#7d1d17;background:#fff0ef}.form-status--warning .button,.form-status--error .button{margin-top:var(--space-2)}.session-meta{gap:var(--space-2);margin-block:var(--space-4);display:grid}.session-meta div{gap:var(--space-2);grid-template-columns:minmax(5rem,.3fr) minmax(0,1fr);display:grid}.session-meta dt{color:var(--color-text-muted);font-weight:700}.session-meta dd{overflow-wrap:anywhere;min-width:0;margin:0}.confirmation-controls{border:0;min-width:0;margin:0;padding:0}.confirmation-controls:disabled{opacity:.72}.saving-status{margin-block:var(--space-4);padding:var(--space-3);background:var(--color-brand-soft);border-radius:var(--radius-small);font-weight:700}.review-section{margin-top:var(--space-5)}.review-section h2,.uncertain-items h2{font-size:1.2rem}.review-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.review-item{min-width:0;padding:var(--space-3);background:var(--color-brand-soft);border:1px solid var(--color-border);border-radius:var(--radius-small)}.review-item p{overflow-wrap:anywhere}.review-item__selection{min-height:var(--touch-target);align-items:flex-start;gap:var(--space-3);cursor:pointer;display:flex}.review-item__selection input{flex:none;width:1.25rem;height:1.25rem;margin-top:.15rem}.review-item__selection span{gap:var(--space-1);min-width:0;display:grid}.review-item__selection small{color:var(--color-text-muted)}.review-item details summary{min-height:var(--touch-target);padding-block:var(--space-2);cursor:pointer;font-weight:700}.review-item-actions{gap:var(--space-2);margin-top:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.review-item-editor{gap:var(--space-3);display:grid}.duplicate-decision{gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--color-brand);border-radius:var(--radius-small);display:grid}.duplicate-decision legend{padding-inline:var(--space-1);font-weight:700}.duplicate-decision label{min-height:var(--touch-target);align-items:center;gap:var(--space-2);display:flex}.uncertain-items,.confirmation-summary{margin-top:var(--space-4);padding:var(--space-3);border-radius:var(--radius-small)}.uncertain-items{background:#fff5d9}.confirmation-summary{margin-bottom:var(--space-3);color:var(--color-brand);background:var(--color-brand-soft);font-weight:800}.privacy-note{color:var(--color-text-muted);text-align:center;font-size:.875rem}.practice-targets{padding:var(--space-3);background:var(--color-brand-soft);border-radius:var(--radius-small)}.practice-targets h2{margin:0 0 var(--space-2);font-size:1rem}.practice-targets ul{padding-left:var(--space-5);margin:0}.review-page__heading{justify-content:space-between;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.review-page__heading h1,.review-page__heading p{margin-bottom:var(--space-3)}.review-page__heading p,.recall-card__label{color:var(--color-text-muted)}.recall-card{gap:var(--space-4);min-width:0;padding:var(--space-4);background:var(--color-brand-soft);border:1px solid var(--color-border);border-radius:var(--radius-large);display:grid}.recall-card h2,.recall-card p{overflow-wrap:anywhere;margin:0}.recall-card__label{font-size:.875rem;font-weight:700}.recall-card__answer{gap:var(--space-2);min-width:0;padding:var(--space-4);background:var(--color-surface);border-radius:var(--radius-small);display:grid}.recall-card__answer strong{overflow-wrap:anywhere;color:var(--color-brand);font-size:1.2rem}.recall-card__answer small{color:var(--color-text-muted)}.rating-grid{gap:var(--space-2);margin-top:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.rating-button{gap:var(--space-1);display:grid}.rating-button small{opacity:.72;font-size:.7rem}@media (width>=560px){.rating-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.inline-links{gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.inline-links a{min-height:var(--touch-target);color:var(--color-brand);align-items:center;font-weight:700;display:inline-flex}.tab-list,.filter-grid{gap:var(--space-2);margin-block:var(--space-4);display:grid}.tab-list{grid-template-columns:repeat(2,minmax(0,1fr))}.tab-list [aria-pressed=true]{color:#fff;background:var(--color-brand)}.filter-grid{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr))}.library-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.library-item,.dashboard-section,.settings-section,.today-summary{min-width:0;padding:var(--space-3);background:var(--color-brand-soft);border:1px solid var(--color-border);border-radius:var(--radius-small)}.library-item>div:first-child{justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;display:flex}.library-item p,.dashboard-section p{overflow-wrap:anywhere}.text-button{min-height:var(--touch-target);padding-inline:var(--space-3);color:var(--color-brand);cursor:pointer;background:0 0;border:0;font-weight:700}.metric-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.metric-grid div{gap:var(--space-1);padding:var(--space-3);background:var(--color-brand-soft);border-radius:var(--radius-small);display:grid}.metric-grid dt{color:var(--color-text-muted);font-size:.875rem}.metric-grid dd{color:var(--color-brand);margin:0;font-size:1.7rem;font-weight:800}.dashboard-section,.settings-section{margin-top:var(--space-4)}.dashboard-section h2,.settings-section h2{margin-top:0;font-size:1.1rem}.settings-section{gap:var(--space-2);display:grid}.settings-section details summary{min-height:var(--touch-target);padding-block:var(--space-2);cursor:pointer;font-weight:700}.prompt-preview{max-height:18rem;padding:var(--space-3);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--color-surface);border-radius:var(--radius-small);margin:0;font-size:.8rem;overflow:auto}.today-summary{align-items:center;gap:var(--space-3);margin-block:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(8rem,.7fr);display:grid}.today-summary>div{display:grid}.today-summary strong{color:var(--color-brand);font-size:2rem}@media (width<=400px){.today-summary{grid-template-columns:1fr}}.eyebrow{color:var(--color-brand);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}.primary-nav{z-index:10;gap:var(--space-1);margin-inline:calc(var(--space-4) * -1);padding:var(--space-2) max(var(--space-2), env(safe-area-inset-right)) max(var(--space-2), env(safe-area-inset-bottom)) max(var(--space-2), env(safe-area-inset-left));border-top:1px solid var(--color-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:sticky;bottom:0}.primary-nav__link{min-width:0;min-height:var(--touch-target);padding-inline:var(--space-1);color:var(--color-text-muted);border-radius:var(--radius-small);justify-content:center;align-items:center;font-size:.875rem;font-weight:650;text-decoration:none;display:flex}.primary-nav__link.is-active{color:var(--color-brand);background:var(--color-brand-soft)}@media (width>=640px){.app-frame{padding-inline:var(--space-6)}.primary-nav{margin-inline:calc(var(--space-6) * -1);padding-inline:var(--space-6)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.auth-page{box-sizing:border-box;max-width:760px;min-height:100vh;margin:0 auto;padding:24px 16px}.auth-page__privacy{color:var(--color-text-muted,#5f6762);font-size:.875rem}.app-header__status{justify-content:flex-end;align-items:center;gap:8px;font-size:.8rem;display:flex}.text-button{color:inherit;cursor:pointer;background:0 0;border:0;min-height:44px;padding:0 8px;text-decoration:underline}
