:root{--paper:#f1ede3;--paper-deep:#e4ddcf;--paper-muted:#ebe5d9;--ivory:#fffaf0;--white:#fff;--ink:#211d19;--ink-soft:#625b51;--ink-faint:#6f675c;--line:#c9c0af;--line-strong:#857b6c;--wine:#6e2634;--wine-dark:#4b1722;--wine-pale:#f1e3e5;--gold:#9b6e29;--gold-pale:#f1e4c8;--night:#1b1916;--night-soft:#292622;--success:#2f6a4d;--success-pale:#deeee6;--danger:#963e3a;--danger-pale:#f6e0dd;--focus:#16557a;--shadow:0 18px 45px #362b1c1a;--radius-small:8px;--radius:14px;--radius-large:22px;--content-width:1180px;--serif:Georgia, "Times New Roman", serif;--sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:var(--sans);scroll-behavior:smooth}body{background:linear-gradient(90deg, #9b6e2908 1px, transparent 1px) 0 0 / 96px 96px, var(--paper);min-block-size:100dvh;min-inline-size:320px;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}button,input,select,textarea{color:inherit;font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{border:0}button:not(:disabled),summary,label[for],input[type=checkbox],input[type=radio],input[type=range]{cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.55}a{color:var(--wine);text-underline-offset:3px;text-decoration-thickness:1px}img,svg{max-inline-size:100%;display:block}h1,h2,h3,p{margin-block-start:0}h1,h2,h3{text-wrap:balance}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}::selection{background:var(--gold-pale);color:var(--wine-dark)}.skip-link{z-index:1000;border:2px solid var(--focus);border-radius:var(--radius-small);background:var(--white);color:var(--ink);padding:10px 14px;font-weight:700;position:fixed;inset-block-start:10px;inset-inline-start:10px;translate:0 -160%}.skip-link:focus{translate:0}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;clip-path:inset(50%)!important;block-size:1px!important;inline-size:1px!important;position:absolute!important;overflow:hidden!important}.app-frame{min-block-size:100dvh}.app-column{min-inline-size:0;padding-block-end:calc(76px + env(safe-area-inset-bottom))}.side-navigation{display:none}.mobile-header{z-index:30;min-block-size:64px;padding:10px max(16px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f1ede3f0;border-block-end:1px solid #9f95848c;justify-content:space-between;align-items:center;gap:16px;display:flex;position:sticky;inset-block-start:0}.mobile-header-actions{justify-content:flex-end;align-items:center;gap:8px;min-inline-size:0;display:flex}.mobile-brand,.brand-button{color:var(--ink);font-family:var(--serif);letter-spacing:-.045em;background:0 0;font-weight:700}.mobile-brand{min-block-size:44px;padding:4px;font-size:27px}.mobile-brand span,.brand-button strong{color:var(--wine)}.audio-status{min-block-size:36px;color:var(--ink-soft);align-items:center;gap:8px;font-size:12px;line-height:1.3;display:inline-flex}.status-dot{background:var(--gold);border-radius:50%;flex:none;block-size:8px;inline-size:8px}.audio-ready .status-dot{background:var(--success)}.audio-loading .status-dot{animation:1.25s ease-in-out infinite status-pulse}.audio-error .status-dot{background:var(--danger)}.account-shortcut{border:1px solid var(--line-strong);min-block-size:44px;min-inline-size:0;color:var(--ink);text-align:start;background:#fffaf0b8;border-radius:9px;align-items:center;gap:9px;padding:8px 11px;font-size:12px;font-weight:750;display:flex}.account-shortcut:hover{border-color:var(--wine);background:var(--wine-pale);color:var(--wine-dark)}.account-shortcut svg{flex:none;block-size:21px;inline-size:21px}.account-shortcut-label{text-overflow:ellipsis;white-space:nowrap;min-inline-size:0;overflow:hidden}.mobile-account-shortcut{max-inline-size:min(38vw,150px)}@keyframes status-pulse{50%{opacity:.35}}.offline-banner{background:var(--gold-pale);color:#553d18;border-block-end:1px solid #bd9e67;justify-content:center;align-items:center;gap:10px;padding:9px 16px;font-size:13px;display:flex}.offline-banner svg{flex:none;inline-size:19px}.bottom-navigation{z-index:40;border-block-start:1px solid var(--line);padding-block:5px max(5px, env(safe-area-inset-bottom));padding-inline:max(4px, env(safe-area-inset-left)) max(4px, env(safe-area-inset-right));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffaf0f7;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;inset-block-end:0;inset-inline:0;box-shadow:0 -8px 25px #362b1c14}.bottom-navigation button{min-block-size:58px;min-inline-size:0;color:var(--ink-soft);background:0 0;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:650;display:flex;position:relative}.bottom-navigation button span{text-overflow:ellipsis;white-space:nowrap;max-inline-size:100%;overflow:hidden}.bottom-navigation button:before{content:"";background:0 0;border-radius:0 0 3px 3px;block-size:3px;inline-size:28px;position:absolute;inset-block-start:-5px}.bottom-navigation button.active{color:var(--wine)}.bottom-navigation button.active:before{background:var(--wine)}.bottom-navigation svg{block-size:22px;inline-size:22px}.screen-shell{inline-size:min(100%, var(--content-width));margin-inline:auto;padding:clamp(22px,4vw,50px) clamp(16px,4vw,48px) 48px}.screen-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px 30px;margin-block-end:clamp(24px,4vw,42px);display:flex}.screen-heading>div:first-child{max-inline-size:710px}.eyebrow,.section-kicker{color:var(--wine);letter-spacing:.15em;text-transform:uppercase;margin-block-end:9px;font-size:11px;font-weight:800;line-height:1.3}.screen-heading h1,.hero-title,.modal-heading h2,.session-heading h1{color:var(--ink);font-family:var(--serif);letter-spacing:-.055em;margin-block-end:10px;font-size:clamp(37px,7vw,66px);font-weight:400;line-height:.98}.screen-heading p:last-child,.lead{color:var(--ink-soft);margin-block-end:0;font-size:clamp(15px,2vw,18px);line-height:1.6}.card{border:1px solid var(--line);border-radius:var(--radius);background:#fffaf0d1;box-shadow:inset 0 1px #ffffffa6}.card-dark{background:var(--night);color:var(--ivory);border-color:#3f3a34}.primary-action,.secondary-action,.quiet-action,.danger-action,.chip-button,.icon-button{border-radius:var(--radius-small);justify-content:center;align-items:center;gap:9px;min-block-size:46px;padding:11px 17px;font-weight:750;line-height:1.25;text-decoration:none;transition:translate .15s,background-color .15s,border-color .15s,color .15s;display:inline-flex}.primary-action{border:1px solid var(--wine);background:var(--wine);color:var(--white)}.primary-action:hover:not(:disabled){background:var(--wine-dark);translate:0 -1px}.secondary-action{border:1px solid var(--wine);color:var(--wine);background:0 0}.secondary-action:hover:not(:disabled){background:var(--wine-pale)}.quiet-action,.chip-button{border:1px solid var(--line);color:var(--ink);background:#ffffff59}.quiet-action:hover:not(:disabled),.chip-button:hover:not(:disabled){border-color:var(--line-strong);background:var(--white)}.danger-action{border:1px solid var(--danger);color:var(--danger);background:0 0}.danger-action:hover:not(:disabled){background:var(--danger-pale)}.icon-button{border:1px solid var(--line);inline-size:46px;color:var(--ink);background:0 0;flex:0 0 46px;padding:10px}.icon-button svg,.primary-action svg,.secondary-action svg,.quiet-action svg,.danger-action svg{flex:none;block-size:20px;inline-size:20px}.button-row{flex-wrap:wrap;gap:10px;display:flex}.button-row>button,.button-row>a{flex:150px}.progress-wrap{gap:7px;display:grid}.progress-label{color:var(--ink-soft);justify-content:space-between;gap:14px;font-size:12px;font-weight:650;display:flex}.progress-track{background:var(--paper-deep);border-radius:999px;block-size:8px;overflow:hidden}.progress-track>span{border-radius:inherit;background:var(--wine);block-size:100%;transition:inline-size .28s;display:block}.progress-gold>span{background:var(--gold)}.progress-green>span{background:var(--success)}.modal-backdrop{z-index:100;padding:max(16px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#181411b8;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.modal-panel{border:1px solid var(--line-strong);border-radius:var(--radius-large);background:var(--ivory);max-block-size:calc(100dvh - 32px);inline-size:min(100%,620px);padding:clamp(22px,5vw,42px);overflow:auto;box-shadow:0 32px 90px #00000047}.modal-small{max-inline-size:480px}.modal-large{max-inline-size:920px}.modal-heading{justify-content:space-between;align-items:flex-start;gap:24px;margin-block-end:26px;display:flex}.modal-heading h2{font-size:clamp(32px,6vw,48px)}.modal-heading p:last-child{color:var(--ink-soft);margin:0;line-height:1.55}.segmented-control{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:7px;display:grid}.segmented-control button{border:1px solid var(--line-strong);border-radius:var(--radius-small);min-block-size:48px;color:var(--ink-soft);background:0 0;padding:9px 12px;font-size:13px;font-weight:700}.segmented-control button[aria-pressed=true],.segmented-control button.active{border-color:var(--wine);background:var(--wine);color:var(--white)}.field-group{border:0;min-inline-size:0;margin:0;padding:0}.field-group+.field-group{margin-block-start:24px}.field-group legend,.field-label{inline-size:100%;color:var(--ink);margin-block-end:10px;font-size:13px;font-weight:800;display:block}.field-hint{color:var(--ink-soft);margin:7px 0 0;font-size:12px;line-height:1.45}input[type=range]{min-block-size:44px;inline-size:100%;accent-color:var(--wine)}.range-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.range-value{min-inline-size:52px;color:var(--wine);font-family:var(--serif);font-variant-numeric:tabular-nums;text-align:end;font-size:18px}.notice{border:1px solid var(--line);border-radius:var(--radius-small);background:var(--paper-muted);color:var(--ink-soft);align-items:flex-start;gap:10px;padding:12px 14px;font-size:13px;line-height:1.5;display:flex}.notice svg{inline-size:19px;color:var(--wine);flex:none;margin-block-start:1px}.empty-state{border:1px dashed var(--line-strong);border-radius:var(--radius);min-block-size:220px;color:var(--ink-soft);text-align:center;place-items:center;padding:28px;display:grid}.empty-state svg{inline-size:38px;color:var(--gold);margin-block-end:12px}.empty-state h3{color:var(--ink);font-family:var(--serif);margin-block-end:7px;font-size:23px;font-weight:400}@media (width>=760px){.screen-shell{padding-block-start:clamp(32px,5vw,62px)}.button-row>button,.button-row>a{flex:none}}@media (width>=1020px){.app-frame{grid-template-columns:238px minmax(0,1fr);display:grid}.app-column{min-block-size:100dvh;padding-block-end:0}.side-navigation{border-inline-end:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffaf0a8;flex-direction:column;block-size:100dvh;padding:28px 20px 22px;display:flex;position:sticky;inset-block-start:0}.brand-button{align-self:flex-start;align-items:center;min-block-size:54px;margin-inline-start:8px;padding:4px;font-size:31px;display:flex}.brand-button strong{font-weight:700}.side-navigation nav{gap:6px;margin-block-start:54px;display:grid}.side-navigation nav button{min-block-size:50px;color:var(--ink-soft);text-align:start;background:0 0;border-radius:9px;align-items:center;gap:13px;padding:10px 12px;font-size:14px;font-weight:700;display:flex;position:relative}.side-navigation nav button:hover{color:var(--ink);background:#ffffff85}.side-navigation nav button.active{background:var(--wine-pale);color:var(--wine-dark)}.side-navigation nav button.active:before{content:"";background:var(--wine);border-radius:0 3px 3px 0;inline-size:3px;position:absolute;inset-block:12px;inset-inline-start:-20px}.side-navigation nav svg{flex:none;block-size:21px;inline-size:21px}.desktop-account-shortcut{inline-size:100%;margin-block-start:auto}.side-navigation>.audio-status{border-block-start:1px solid var(--line);margin-block-start:12px;padding-block-start:18px}.mobile-header,.bottom-navigation{display:none}}@media (width<=440px){.mobile-header{padding-inline:max(10px, env(safe-area-inset-left)) max(10px, env(safe-area-inset-right));gap:6px}.mobile-brand{font-size:25px}.mobile-header-actions{gap:4px}.mobile-header .audio-status{border:1px solid var(--line-strong);border-radius:9px;gap:5px;min-block-size:44px;max-inline-size:64px;padding-inline:6px}.mobile-audio-label{color:var(--ink);white-space:nowrap;font-size:10px;font-weight:750;overflow:visible}.mobile-account-shortcut{gap:6px;max-inline-size:112px;padding-inline:8px;font-size:10.5px}.bottom-navigation button{font-size:10px}.bottom-navigation button span{text-align:center;white-space:normal;text-overflow:clip;line-height:1.05;overflow:visible}}@media (width>=1340px){.app-frame{grid-template-columns:264px minmax(0,1fr)}}@media (forced-colors:active){.status-dot,.progress-track>span,.bottom-navigation button.active:before{forced-color-adjust:none;background:canvastext}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html.reduce-motion *,html.reduce-motion :before,html.reduce-motion :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.home-hero{gap:14px;margin-block-end:18px;display:grid}.home-hero-copy,.home-module-card{border-radius:var(--radius-large);padding:clamp(24px,5vw,48px)}.home-hero-copy{border:1px solid var(--line);background:linear-gradient(135deg, #fffaf0f5, #f1ede3c7), var(--ivory);position:relative;overflow:hidden}.home-hero-copy:after{content:"";pointer-events:none;border:1px solid #9b6e294d;border-radius:50%;block-size:260px;inline-size:260px;position:absolute;inset-block-start:-110px;inset-inline-end:-110px;box-shadow:0 0 0 38px #9b6e290f,0 0 0 78px #9b6e290a}.home-hero-copy .hero-title{z-index:1;max-inline-size:680px;font-size:clamp(42px,7vw,72px);position:relative}.home-hero-copy .lead{z-index:1;max-inline-size:620px;position:relative}.home-primary{z-index:1;text-align:start;justify-content:space-between;inline-size:100%;margin-block-start:24px;padding:14px 16px;position:relative}.home-primary>span{gap:2px;display:grid}.home-primary small{color:#ffffffb8;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:650}.home-module-card{background:radial-gradient(circle at 100% 0, #b38a4a2e, transparent 45%), var(--night);flex-direction:column;justify-content:center;display:flex}.home-module-card .section-kicker{color:#d7b16f}.home-module-card h2,.challenge-card h2,.weak-card h2,.practice-prompt h2{font-family:var(--serif);letter-spacing:-.035em;margin-block-end:20px;font-size:clamp(27px,4vw,38px);font-weight:400;line-height:1.05}.home-module-card .progress-label{color:#bcb3a7}.home-module-card .progress-track{background:#3a3630}.home-module-meta{color:#c7bfb4;border-block-start:1px solid #403b34;justify-content:space-between;gap:16px;margin-block:28px 13px;padding-block-start:18px;font-size:13px;display:flex}.home-module-meta span{align-items:center;gap:7px;display:inline-flex}.home-module-meta svg{color:#d7b16f;inline-size:17px}.metric-grid{gap:10px;margin-block-end:18px;display:grid}.metric-card{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 14px;padding:18px;display:grid}.metric-card>.progress-wrap,.metric-note{grid-column:1/-1;margin-block-start:10px}.metric-icon{background:var(--wine-pale);block-size:44px;inline-size:44px;color:var(--wine);border-radius:50%;place-items:center;display:grid}.metric-icon svg{inline-size:21px}.metric-card p{color:var(--ink-soft);margin:0;font-size:12px}.metric-card strong{font-family:var(--serif);margin-block-start:2px;font-size:25px;font-weight:400;line-height:1.1;display:block}.metric-card strong small{color:var(--ink-soft);font-family:var(--sans);font-size:11px}.metric-card .metric-title{font-size:18px}.metric-card .metric-note{font-size:11px}.home-grid{gap:12px;display:grid}.challenge-card,.weak-card{padding:clamp(21px,4vw,32px);position:relative;overflow:hidden}.challenge-card{grid-template-columns:minmax(0,1fr) auto;gap:14px;display:grid}.challenge-copy{max-inline-size:520px}.challenge-copy h2{margin-block-end:9px}.challenge-copy>p:last-child,.practice-prompt p{color:var(--ink-soft);margin-block-end:0;font-size:14px;line-height:1.55}.challenge-seal{border:1px solid var(--gold);block-size:58px;inline-size:58px;color:var(--gold);border-radius:50%;place-items:center;display:grid}.challenge-seal.completed{border-color:var(--success);background:var(--success-pale);color:var(--success)}.challenge-seal svg{inline-size:25px}.challenge-card>button{grid-column:1/-1}.challenge-status{color:var(--success);grid-column:1/-1;align-items:center;gap:7px;margin:-2px 0 0;font-size:11px;display:flex}.challenge-status svg{inline-size:16px}.section-heading-row{justify-content:space-between;align-items:flex-start;gap:14px;margin-block-end:22px;display:flex}.section-heading-row h2{margin:0}.weak-list{gap:15px;display:grid}.weak-row{grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;display:grid}.interval-badge{border:1px solid var(--interval-on-light,var(--wine));background:color-mix(in srgb, var(--interval-accent,var(--wine)) 11%, var(--paper));block-size:48px;inline-size:48px;color:var(--interval-on-light,var(--ink));font-family:var(--serif);border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:grid}.weak-row strong{font-family:var(--serif);margin-block-end:7px;font-size:16px;font-weight:400;display:block}.weak-row .progress-label{font-size:10px}.weak-row .progress-track{block-size:6px}.compact-empty{border-block-start:1px solid var(--line);min-block-size:110px;color:var(--ink-soft);align-items:center;gap:12px;font-size:13px;line-height:1.5;display:flex}.compact-empty svg{inline-size:30px;color:var(--success);flex:none}.practice-prompt{border-radius:var(--radius-large);background:linear-gradient(115deg, #6e263447, transparent 55%), var(--night);gap:22px;margin-block-start:18px;padding:clamp(24px,5vw,40px);display:grid}.practice-prompt .section-kicker{color:#d7b16f}.practice-prompt h2{margin-block-end:8px}.practice-prompt p{color:#bbb3a8}.light-action{border-radius:var(--radius-small);background:var(--ivory);min-block-size:48px;color:var(--night);justify-content:center;align-items:center;gap:9px;padding:11px 17px;font-weight:800;display:inline-flex}.light-action:hover{background:var(--white);translate:0 -1px}.light-action svg{inline-size:19px}@media (width>=700px){.home-hero{grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr)}.home-primary{inline-size:fit-content;min-inline-size:310px}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.practice-prompt{grid-template-columns:minmax(0,1fr) auto;align-items:center}}@media (width>=880px){.home-grid{grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr)}}.achievement-toast,.update-toast{z-index:80;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--ivory);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;inline-size:min(100% - 24px,440px);margin-inline:auto;padding:13px;display:grid;position:fixed;inset-block-end:calc(82px + env(safe-area-inset-bottom));inset-inline:12px;box-shadow:0 18px 50px #19140f38}.achievement-toast>span{background:var(--gold-pale);block-size:42px;inline-size:42px;color:var(--gold);border-radius:50%;place-items:center;display:grid}.achievement-toast>span svg{inline-size:21px}.achievement-toast small,.achievement-toast strong,.achievement-toast p,.update-toast strong,.update-toast span{display:block}.achievement-toast small{color:var(--wine);letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:800}.achievement-toast strong,.update-toast strong{font-family:var(--serif);margin-block:2px;font-size:16px;font-weight:400}.achievement-toast p,.update-toast span{color:var(--ink-soft);margin:0;font-size:9px;line-height:1.35}.achievement-toast>button,.update-toast>button:last-child{block-size:38px;inline-size:38px;color:var(--ink-soft);background:0 0;border-radius:50%;place-items:center;display:grid}.achievement-toast>button svg,.update-toast>button:last-child svg{inline-size:17px}.update-toast>div{grid-column:1/2}.update-toast>button:not(:last-child){background:var(--wine);min-block-size:38px;color:var(--white);border-radius:6px;padding:8px 11px;font-size:10px;font-weight:800}.storage-error-toast{border-color:var(--danger);background:var(--danger-pale);grid-template-columns:minmax(0,1fr) auto auto}.storage-error-toast>div{grid-column:1/-1}.replace-session-actions{gap:8px;display:grid}@media (width>=620px){.replace-session-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1020px){.achievement-toast,.update-toast{margin:0;inset-block-end:24px;inset-inline:auto 24px}}.back-action{min-block-size:44px;color:var(--ink-soft);background:0 0;align-items:center;gap:7px;margin-block-end:20px;font-size:12px;font-weight:750;display:inline-flex}.back-action:hover{color:var(--wine)}.back-action svg{inline-size:18px}.session-intro-layout{gap:12px;display:grid}.session-intro-card,.session-tip{border-radius:var(--radius-large);padding:clamp(24px,5vw,46px)}.session-intro-card h1{max-inline-size:760px;font-family:var(--serif);letter-spacing:-.055em;margin-block-end:15px;font-size:clamp(40px,7vw,69px);font-weight:400;line-height:.98}.session-intro-card .lead{max-inline-size:690px}.featured-interval{border-block:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;max-inline-size:690px;margin-block:27px 18px;padding-block:17px;display:grid}.featured-interval>span{border:1px solid var(--interval-on-light,var(--wine));block-size:60px;inline-size:60px;color:var(--interval-on-light,var(--wine-dark));font-family:var(--serif);border-radius:50%;place-items:center;font-size:15px;font-weight:700;display:grid}.featured-interval strong,.featured-interval small{display:block}.featured-interval strong{font-family:var(--serif);margin-block-end:4px;font-size:clamp(18px,3vw,23px);font-weight:400}.featured-interval small{color:var(--ink-soft);font-size:11px}.interval-character-card{border-inline-start:3px solid var(--interval-on-light,var(--gold));border-radius:0 var(--radius-small) var(--radius-small) 0;background:color-mix(in srgb, var(--interval-accent,var(--gold)) 13%, var(--ivory));max-inline-size:690px;margin-block:14px 20px;padding:14px 16px}.interval-character-card>strong{color:var(--ink);font-family:var(--serif);margin-block:3px 5px;font-size:19px;font-weight:400;display:block}.interval-character-card>p:not(.section-kicker),.interval-character-card>small{color:var(--ink-soft);margin:0;font-size:11px;line-height:1.55;display:block}.interval-character-card>small{color:#755927;margin-block-start:7px}.comparison-note{border-radius:var(--radius);background:var(--paper-muted);max-inline-size:690px;margin-block:20px;padding:16px}.comparison-note>p:not(.section-kicker){color:var(--ink-soft);margin-block-end:13px;font-size:12px;line-height:1.55}.session-rules{flex-wrap:wrap;gap:8px;max-inline-size:690px;margin-block:24px;display:flex}.session-rules span{border:1px solid var(--line);min-block-size:34px;color:var(--ink-soft);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:10px;display:inline-flex}.session-rules svg{inline-size:15px;color:var(--wine)}.session-start{inline-size:100%;max-inline-size:690px}.audio-loading-panel{border-radius:var(--radius);background:var(--paper-muted);gap:8px;max-inline-size:690px;padding:17px;display:grid}.audio-loading-panel p{color:var(--ink-soft);margin:0;font-size:10px}.audio-error-box{border-radius:var(--radius-small);background:var(--danger-pale);max-inline-size:690px;color:var(--danger);border:1px solid #c88782;align-items:center;gap:9px;margin-block-start:14px;padding:10px 12px;font-size:11px;line-height:1.45;display:flex}.audio-error-box>svg{flex:none;inline-size:18px}.audio-error-box button{background:0 0;border:1px solid;border-radius:6px;min-block-size:36px;margin-inline-start:auto;padding:6px 9px;font-size:10px;font-weight:800}.session-tip{background:radial-gradient(circle at 100% 0, #b38a4a2e, transparent 48%), var(--night)}.session-tip .section-kicker{color:#d7b16f}.session-tip h2{font-family:var(--serif);margin-block-end:25px;font-size:clamp(27px,4vw,38px);font-weight:400;line-height:1.08}.session-tip ul{gap:14px;margin:0;padding:0;list-style:none;display:grid}.session-tip li{color:#d0c8bd;border-block-start:1px solid #403b34;padding:14px 0 0 22px;font-size:13px;line-height:1.5;position:relative}.session-tip li:before{content:"";background:#d7b16f;border-radius:50%;block-size:7px;inline-size:7px;position:absolute;inset-block-start:20px;inset-inline-start:0}.session-tip>p:last-child{color:#999187;border-block-start:1px solid #403b34;margin:30px 0 0;padding-block-start:18px;font-size:11px;line-height:1.55}.training-screen{background:var(--night);min-block-size:100dvh;color:var(--ivory);padding-block-end:env(safe-area-inset-bottom);position:relative}.training-screen.answered{padding-block-end:calc(86px + env(safe-area-inset-bottom))}.training-topbar{z-index:20;min-block-size:64px;padding:10px max(14px, env(safe-area-inset-right)) 10px max(14px, env(safe-area-inset-left));background:#1b1916f5;border-block-end:1px solid #3a3630;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;display:grid;position:sticky;inset-block-start:0}.training-topbar .icon-button{color:var(--ivory);border-color:#4b463f}.training-topbar>div:nth-child(2){gap:7px;min-inline-size:0;display:grid}.training-topbar>div:nth-child(2)>span,.training-topbar>div:nth-child(2)>small{color:#c4bdb2;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.training-topbar .progress-label{color:#999188;font-size:8px}.training-topbar .progress-track{background:#3a3630;block-size:5px}.training-topbar .progress-track>span{background:#d7b16f}.training-score{justify-items:end;display:grid}.training-score strong{font-family:var(--serif);font-size:20px;font-weight:400}.training-score span{color:#918a80;text-transform:uppercase;font-size:8px}.question-shell{inline-size:min(100%,1100px);margin-inline:auto;padding:clamp(18px,4vw,42px) clamp(15px,4vw,46px) 42px}.question-stage{text-align:center;justify-items:center;display:grid}.question-labels{gap:7px;margin-block-end:12px;display:flex}.question-labels span{color:#b3aca1;letter-spacing:.07em;text-transform:uppercase;border:1px solid #4c4740;border-radius:999px;padding:6px 10px;font-size:9px}.question-stage h1{color:var(--ivory);font-family:var(--serif);letter-spacing:-.045em;margin-block-end:8px;font-size:clamp(30px,6vw,48px);font-weight:400}.question-stage h1:focus-visible{outline-offset:6px;border-radius:4px;outline:3px solid #f5d08a}.training-screen :focus-visible{outline-color:#f5d08a}.training-screen .modal-panel :focus-visible{outline-color:var(--focus)}.question-stage>p:not(.replay-status){color:#a8a198;margin-block-end:16px;font-size:12px}.main-play-button{min-block-size:132px;min-inline-size:132px;color:var(--ivory);background:0 0;border:1px solid #736b60;border-radius:50%;place-content:center;justify-items:center;transition:border-color .15s,scale .15s;display:grid}.main-play-button:hover:not(:disabled){border-color:#d7b16f;scale:1.02}.main-play-button.playing{border-color:#d7b16f}.play-ring{background:var(--ivory);block-size:52px;inline-size:52px;color:var(--night);border-radius:50%;place-items:center;margin-block-end:10px;display:grid}.play-ring svg{inline-size:24px}.main-play-button strong{font-size:13px}.main-play-button small{color:#8f887e;letter-spacing:.08em;text-transform:uppercase;margin-block-start:4px;font-size:8px;font-weight:650}.replay-status{color:#8f887e;min-block-size:20px;margin:10px 0 0;font-size:9px}.question-stage .audio-error-box{color:#f0c4bf;background:#4a2826;margin-block-start:8px}.answer-section{min-inline-size:0;margin-block-start:clamp(20px,4vw,34px)}.answer-grid-training{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.answer-grid-training.few-options.answered-options{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.answer-grid-training button{border:1px solid var(--interval-on-dark,#d7b16f);border-radius:var(--radius-small);min-block-size:76px;min-inline-size:0;color:var(--ivory);text-align:start;box-shadow:inset 3px 0 0 var(--interval-on-dark,#d7b16f);background:#292622;align-content:center;padding:10px 12px;display:grid;position:relative}.answer-grid-training button:hover:not(:disabled){border-color:var(--interval-on-dark,#f5d08a);background:#342f29}.answer-grid-training button.correct{border-color:var(--interval-on-dark,#b8dec9);box-shadow:inset 4px 0 0 var(--interval-on-dark,#b8dec9), 0 0 0 2px #69a08173;background:#183327}.answer-grid-training button.wrong{box-shadow:inset 4px 0 0 var(--interval-on-dark,#f2c2bd), 0 0 0 2px #b65f5859;background:#4a2725;border-color:#b65f58}.answer-grid-training button.accepted{background:#342f27;border-color:#d2ad68;box-shadow:inset 4px 0 #d2ad68,0 0 0 2px #d2ad684d}.answer-grid-training button:disabled{opacity:.55}.answer-grid-training button.correct:disabled,.answer-grid-training button.wrong:disabled,.answer-grid-training button.accepted:disabled{opacity:1}.answer-grid-training strong{color:var(--interval-on-dark,#f4efe8);font-family:var(--serif);font-size:15px}.answer-grid-training button>span:last-child{color:#d7d0c6;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-block-start:5px;font-size:10px;line-height:1.25;display:-webkit-box;overflow:hidden}.answer-key{color:#888077;border:1px solid #4c4740;border-radius:4px;place-items:center;block-size:20px;inline-size:20px;font-size:8px;display:grid;position:absolute;inset-block-start:8px;inset-inline-end:9px}.answer-key svg{block-size:12px;inline-size:12px}.answer-grid-training button.correct .answer-key{color:#c9ead7;background:#284e3a;border-color:#75b892}.answer-grid-training button.wrong .answer-key{color:#f2c2bd;background:#5a2e2b;border-color:#b65f58}.answer-grid-training button.accepted .answer-key{color:#f5dfb6;background:#4a3e2b;border-color:#d2ad68}.feedback-region{min-block-size:1px}.feedback-card{border:1px solid var(--interval-on-dark,#d7b16f);border-radius:var(--radius);background:#24211d;gap:15px;margin-block-start:14px;padding:clamp(16px,4vw,24px);display:grid}.feedback-card.success{border-color:var(--interval-on-dark,#b8dec9)}.feedback-card.error{border-color:#81504d}.feedback-heading{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;display:grid}.feedback-icon{color:#d9c7a4;background:#3a3630;border-radius:50%;place-items:center;block-size:42px;inline-size:42px;display:grid}.feedback-card.success .feedback-icon{color:#b8dec9;background:#284e3a}.feedback-icon svg{inline-size:20px}.feedback-heading p,.feedback-heading h2,.feedback-heading div>span{margin:0}.feedback-heading p{color:#a59e94;letter-spacing:.08em;text-transform:uppercase;margin-block-end:3px;font-size:9px}.feedback-heading h2{font-family:var(--serif);font-size:21px;font-weight:400}.feedback-heading div>span{color:#989087;margin-block-start:3px;font-size:9px;display:block}.pedagogy-hint{color:#bbb3a8;border-inline-start:2px solid #b38a4a;margin:0;padding-inline-start:12px;font-size:11px;line-height:1.55}.interval-learning-note{border-inline-start:2px solid var(--interval-on-dark,#d7b16f);padding-inline-start:12px}.interval-learning-note strong,.interval-learning-note p,.interval-learning-note small{margin:0;display:block}.interval-learning-note strong{color:var(--interval-on-dark,#f4efe8);font-family:var(--serif);font-size:16px;font-weight:400}.interval-learning-note p{color:#bbb3a8;margin-block-start:4px;font-size:11px;line-height:1.55}.interval-learning-note small{color:#a99065;margin-block-start:6px;font-size:9px;line-height:1.5}.compare-actions{gap:7px;display:grid}.feedback-card .quiet-action{color:#d6cfc5;background:0 0;border-color:#4d4841;font-size:10px}.feedback-card .quiet-action:hover{background:#302c27}.feedback-card .interval-compare-action{border-color:var(--interval-on-dark,#d7b16f);box-shadow:inset 2px 0 0 var(--interval-on-dark,#d7b16f)}.next-question{white-space:nowrap;inline-size:auto;min-inline-size:148px}.next-question kbd{color:#ffffffb3;font-family:var(--sans);border:1px solid #ffffff47;border-radius:4px;margin-inline-start:auto;padding:3px 5px;font-size:8px;font-weight:500}.finish-infinite{z-index:10;color:#d6cfc5;background:#282520;border:1px solid #655f56;border-radius:999px;min-block-size:42px;padding:9px 13px;font-size:10px;font-weight:750;position:fixed;inset-block-end:max(12px, env(safe-area-inset-bottom));inset-inline-end:max(12px, env(safe-area-inset-right));box-shadow:0 8px 25px #0000004d}.training-screen.answered .finish-infinite{inset-block-end:calc(94px + env(safe-area-inset-bottom))}.question-next-dock{z-index:45;border-block-start:1px solid var(--interval-on-dark,#d7b16f);background:linear-gradient(100deg, color-mix(in srgb, var(--interval-accent) 17%, transparent), transparent 48%), #1b1916f7;min-block-size:78px;padding:9px max(12px, env(safe-area-inset-right)) max(9px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid;position:fixed;inset-block-end:0;inset-inline:0;box-shadow:0 -12px 35px #00000052}.question-next-result{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-inline-size:0;display:grid}.question-next-result>div{min-inline-size:0}.question-next-result small,.question-next-result strong{display:block}.question-next-result small{color:#a9a197;letter-spacing:.08em;text-transform:uppercase;margin-block-end:2px;font-size:8px;font-weight:800}.question-next-result strong{color:var(--interval-on-dark,#f4efe8);font-family:var(--serif);text-overflow:ellipsis;white-space:nowrap;font-size:clamp(15px,3vw,20px);font-weight:400;overflow:hidden}.question-next-dock.error .feedback-icon{color:#f2c2bd;background:#5a2e2b}.question-next-dock.accepted{background:#1b1916f7;border-block-start-color:#d2ad68}.question-next-dock.accepted .feedback-icon{color:#f5dfb6;background:#4a3e2b}.question-next-dock.accepted .question-next-result strong{color:#f4efe8}.pause-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-block:8px 22px;display:grid}.pause-summary span{border:1px solid var(--line);border-radius:var(--radius-small);color:var(--ink-soft);justify-items:center;padding:13px;font-size:9px;display:grid}.pause-summary strong{color:var(--wine);font-family:var(--serif);font-size:24px;font-weight:400}.pause-actions{gap:8px;display:grid}.result-screen{place-items:center;min-block-size:calc(100dvh - 64px);display:grid}.result-card{text-align:center;inline-size:min(100%,720px);padding:clamp(25px,6vw,54px)}.result-card.has-exam-review{inline-size:min(100%,880px)}.result-mark{border-radius:50%;place-items:center;block-size:70px;inline-size:70px;margin:0 auto 22px;display:grid}.result-mark.success{background:var(--success-pale);color:var(--success)}.result-mark.keep-going{background:var(--gold-pale);color:var(--gold)}.result-mark svg{inline-size:31px}.result-card h1{font-family:var(--serif);letter-spacing:-.055em;margin-block-end:14px;font-size:clamp(37px,7vw,60px);font-weight:400;line-height:1}.result-card .lead{max-inline-size:590px;margin-inline:auto}.result-stars{justify-content:center;gap:8px;margin-block:28px 22px;display:flex}.result-stars svg{inline-size:37px;color:var(--line)}.result-stars svg.earned{fill:var(--gold);color:var(--gold)}.result-metrics{border-block:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin-block:25px;padding-block:18px;display:grid}.result-metrics div{border-inline-end:1px solid var(--line);gap:5px;display:grid}.result-metrics div:last-child{border:0}.result-metrics span{color:var(--ink-soft);text-transform:uppercase;font-size:9px}.result-metrics strong{color:var(--wine);font-family:var(--serif);font-size:clamp(18px,4vw,27px);font-weight:400}.exam-review{border-block:1px solid var(--line);text-align:start;margin-block:28px;padding-block:24px}.exam-review-heading h2{font-family:var(--serif);margin-block-end:7px;font-size:clamp(25px,5vw,34px);font-weight:400}.exam-review-heading>p:last-child{max-inline-size:650px;color:var(--ink-soft);margin-block-end:18px;font-size:13px;line-height:1.55}.exam-review-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.exam-review-list li{border:1px solid var(--line-strong);border-radius:var(--radius-small);background:#ffffff73;grid-template-columns:32px minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;padding:12px;display:grid}.exam-review-list li>svg{inline-size:18px;color:var(--ink-faint)}.exam-review-number{background:var(--wine-pale);block-size:28px;inline-size:28px;color:var(--wine-dark);border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid}.exam-review-list small,.exam-review-list strong{display:block}.exam-review-list small{color:var(--ink-faint);margin-block-end:3px;font-size:12px}.exam-review-list strong{color:var(--ink);font-family:var(--serif);font-size:16px;font-weight:400}.result-actions{gap:8px;display:grid}@media (width>=650px){.compare-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.answer-grid-training{grid-template-columns:repeat(4,minmax(0,1fr))}.answer-grid-training.few-options,.result-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.result-actions>:last-child:nth-child(3){grid-column:1/-1}}@media (width>=880px){.session-intro-layout{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:stretch}.training-screen{min-block-size:100dvh}.question-shell{grid-template-columns:minmax(300px,.82fr) minmax(450px,1.18fr);align-items:center;gap:clamp(30px,5vw,72px);min-block-size:calc(100dvh - 64px);padding-block:clamp(18px,3vh,32px);display:grid}.question-stage h1{font-size:clamp(38px,4vw,50px)}.main-play-button{min-block-size:154px;min-inline-size:154px}.answer-section{margin-block-start:0}.answer-grid-training{grid-template-columns:repeat(2,minmax(0,1fr))}.answer-grid-training.many-options{grid-template-columns:repeat(3,minmax(0,1fr))}.answer-grid-training.very-many-options{grid-template-columns:repeat(4,minmax(0,1fr))}.answer-grid-training.many-options button{min-block-size:66px;padding-inline:10px}.question-next-dock{padding-inline:max(46px,50vw - 504px)}.next-question{min-inline-size:210px}}@media (width>=880px) and (height<=720px){.question-shell{padding-block:14px}.question-labels{margin-block-end:8px}.question-stage h1{font-size:38px}.question-stage>p:not(.replay-status){margin-block-end:12px}.main-play-button{min-block-size:128px;min-inline-size:128px}.play-ring{block-size:46px;inline-size:46px}}@media (width<=520px){.question-next-dock{gap:8px}.question-next-result .feedback-icon{block-size:36px;inline-size:36px}.question-next-dock .next-question{min-inline-size:142px;padding-inline:12px;font-size:11px}.question-next-dock .next-question kbd{display:none}.exam-review-list li{grid-template-columns:28px minmax(0,1fr);align-items:start}.exam-review-list li>svg{display:none}.exam-review-list li>div:last-child{border-block-start:1px solid var(--line);grid-column:2;padding-block-start:8px}}.course-summary{inline-size:min(100%,270px);padding:16px 18px}.course-summary>strong{color:var(--wine);font-family:var(--serif);margin-block-end:11px;font-size:24px;font-weight:400;display:block}.course-summary>strong span{color:var(--ink-soft);font-family:var(--sans);font-size:12px}.course-map{gap:14px;display:grid;position:relative}.course-map:before{content:"";z-index:-1;background:var(--line-strong);inline-size:1px;position:absolute;inset-block:30px;inset-inline-start:24px}.course-module{grid-template-columns:48px minmax(0,1fr);align-items:flex-start;gap:10px;display:grid}.module-marker{border:1px solid var(--wine);background:var(--paper);block-size:48px;inline-size:48px;color:var(--wine);font-family:var(--serif);border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:grid}.module-marker svg{inline-size:19px}.course-module.locked .module-marker{border-color:var(--line-strong);color:var(--ink-faint)}.module-card{min-inline-size:0;padding:clamp(18px,4vw,30px);overflow:hidden}.course-module.locked .module-card{background:#ebe5d9ad}.module-heading{grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-block-end:17px;display:grid}.module-heading h2{font-family:var(--serif);letter-spacing:-.035em;margin-block-end:6px;font-size:clamp(25px,4vw,34px);font-weight:400;line-height:1.05}.module-heading p:last-child{color:var(--ink-soft);margin:0;font-size:13px;line-height:1.5}.module-progress-copy{color:var(--ink-soft);align-content:start;justify-items:end;font-size:10px;display:grid}.module-progress-copy strong{color:var(--wine);font-family:var(--serif);font-size:21px;font-weight:400}.module-heading-actions{align-content:start;justify-items:end;gap:8px;display:grid}.module-toggle{border:1px solid var(--line-strong);min-block-size:44px;color:var(--ink);background:#ffffff59;border-radius:999px;align-items:center;gap:7px;padding:8px 11px;font-size:11px;font-weight:750;display:inline-flex}.module-toggle:hover{border-color:var(--wine);color:var(--wine-dark)}.module-toggle svg{inline-size:16px;transition:rotate .15s}.module-toggle[aria-expanded=true] svg{rotate:90deg}.module-body[hidden]{display:none}@media (width<=520px){.module-heading{grid-template-columns:minmax(0,1fr)}.module-heading-actions{grid-template-columns:auto minmax(0,1fr);place-items:center start}.module-progress-copy{justify-items:start}.module-toggle{justify-self:end}}.lesson-list{border-block-start:1px solid var(--line);gap:6px;margin-block-start:21px;padding-block-start:12px;display:grid}.lesson-row{border-radius:var(--radius-small);text-align:start;background:0 0;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;min-block-size:64px;padding:8px 5px;display:grid}.lesson-row:not(:disabled):hover{background:var(--white)}.lesson-row:disabled{opacity:.62}.lesson-number{border:1px solid var(--line);block-size:34px;inline-size:34px;color:var(--ink-soft);font-family:var(--serif);border-radius:50%;place-items:center;font-size:12px;display:grid}.lesson-completed .lesson-number{border-color:var(--success);background:var(--success-pale);color:var(--success)}.lesson-available .lesson-number{border-color:var(--wine);background:var(--wine);color:var(--white)}.lesson-number svg{inline-size:15px}.lesson-copy{min-inline-size:0}.lesson-copy strong,.lesson-copy small{display:block}.lesson-copy strong{font-family:var(--serif);margin-block-end:3px;font-size:15px;font-weight:400}.lesson-copy small{color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:10px;line-height:1.35;display:-webkit-box;overflow:hidden}.lesson-meta{color:var(--ink-faint);text-align:end;align-items:center;gap:7px;font-size:9px;display:flex}.lesson-meta>span:not(.star-rating){display:none}.lesson-arrow{inline-size:17px;color:var(--wine)}.star-rating{gap:1px;display:inline-flex}.star-rating svg{block-size:13px;inline-size:13px;color:var(--line-strong)}.star-rating svg.earned{color:var(--gold);fill:var(--gold)}@media (width>=620px){.course-map:before{inset-inline-start:30px}.course-module{grid-template-columns:60px minmax(0,1fr);gap:18px}.module-marker{block-size:60px;inline-size:60px;font-size:15px}.lesson-row{grid-template-columns:40px minmax(0,1fr) minmax(90px,auto);gap:13px}.lesson-meta>span:not(.star-rating){display:inline}.available-label{color:var(--wine);font-weight:800}}.selected-summary{align-items:baseline;gap:8px;min-inline-size:190px;padding:14px 18px;display:flex}.selected-summary strong{color:var(--wine);font-family:var(--serif);font-size:30px;font-weight:400}.selected-summary span{color:var(--ink-soft);font-size:11px}.preset-section{border-block-end:1px solid var(--line);margin-block-end:18px;padding-block-end:24px}.section-title-row{justify-content:space-between;align-items:flex-end;gap:14px;margin-block-end:16px;display:flex}.section-title-row h2{font-family:var(--serif);letter-spacing:-.035em;margin:0;font-size:clamp(25px,4vw,34px);font-weight:400}.section-title-row>span{color:var(--ink-soft);font-size:11px;display:none}.preset-grid{overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;grid-auto-columns:minmax(170px,.74fr);grid-auto-flow:column;gap:8px;padding:3px 3px 9px;display:grid;overflow-x:auto}.preset-grid button{border:1px solid var(--line-strong);border-radius:var(--radius);text-align:start;scroll-snap-align:start;background:#fffaf09e;align-content:center;gap:4px;min-block-size:86px;padding:13px;display:grid;position:relative}.preset-grid button:hover,.preset-grid button.active{border-color:var(--wine);background:var(--ivory)}.preset-grid button.active{box-shadow:0 0 0 1px var(--wine) inset}.preset-grid strong{font-family:var(--serif);font-size:15px;font-weight:400}.preset-grid span{color:var(--ink-soft);font-size:9px;line-height:1.35}.preset-grid svg{inline-size:16px;color:var(--wine);position:absolute;inset-block-start:9px;inset-inline-end:9px}.practice-builder{gap:12px;display:grid}.interval-picker,.practice-options{min-inline-size:0;padding:clamp(18px,4vw,30px)}.interval-actions{gap:6px;display:flex}.interval-actions button{border:1px solid var(--line-strong);min-block-size:42px;color:var(--ink-soft);background:0 0;border-radius:999px;padding:8px 11px;font-size:10px;font-weight:700}.interval-actions button:hover{border-color:var(--wine);color:var(--wine)}.interval-groups{border:0;gap:26px;min-inline-size:0;margin:0;padding:0;display:grid}.interval-groups h3{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;margin-block-end:10px;font-size:11px}.interval-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.interval-choice-grid label{border:1px solid var(--interval-on-light,var(--line-strong));border-radius:var(--radius-small);min-block-size:58px;box-shadow:inset 3px 0 0 var(--interval-on-light,var(--wine));background:#ffffff47;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;padding:7px 8px;display:grid;position:relative}.interval-choice-grid label:hover{border-color:var(--interval-on-light,var(--wine))}.interval-choice-grid label.selected{border-color:var(--interval-on-light,var(--wine));background:color-mix(in srgb, var(--interval-accent) 12%, var(--ivory))}.interval-choice-grid input{opacity:0;block-size:100%;inline-size:100%;margin:0;position:absolute;inset:0}.interval-choice-grid input:focus-visible+.choice-check{outline:3px solid var(--focus);outline-offset:3px}.choice-check{border:1px solid var(--line-strong);background:var(--white);color:#0000;border-radius:4px;place-items:center;block-size:19px;inline-size:19px;display:grid}.selected .choice-check{border-color:var(--interval-on-light,var(--wine));background:var(--interval-on-light,var(--wine));color:var(--white)}.choice-check svg{inline-size:13px}.interval-choice-grid label>span:last-child{min-inline-size:0}.interval-choice-grid strong,.interval-choice-grid small{display:block}.interval-choice-grid strong{color:var(--interval-on-light,var(--ink));font-family:var(--serif);margin-block-end:3px;font-size:12px}.interval-choice-grid small{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:8px;line-height:1.25;overflow:hidden}.practice-options .field-group{border-block-start:1px solid var(--line);padding-block-start:18px}.disabled-group{opacity:.62}.direction-segments{grid-template-columns:repeat(3,minmax(0,1fr))}.mode-cards{gap:7px;display:grid}.mode-cards button{border:1px solid var(--line-strong);border-radius:var(--radius-small);text-align:start;background:0 0;align-content:center;gap:3px;min-block-size:67px;padding:10px 12px;display:grid}.mode-cards button[aria-pressed=true]{border-color:var(--wine);background:var(--wine-pale)}.mode-cards strong{font-family:var(--serif);font-size:15px;font-weight:400}.mode-cards span{color:var(--ink-soft);font-size:9px;line-height:1.35}.practice-start-panel{border-radius:var(--radius);background:var(--night);gap:10px;margin-block-start:24px;padding:18px;display:grid}.practice-start-panel p{color:#bdb5aa;margin:0;font-size:11px;line-height:1.45}.practice-start-panel .primary-action{inline-size:100%}.practice-start-panel>span{color:#f0b8b2;font-size:11px}.practice-mobile-dock{display:none}@media (width<=1019px){.practice-screen{padding-block-end:calc(150px + env(safe-area-inset-bottom))}.practice-start-panel{display:none}.practice-mobile-dock{z-index:39;inset-inline:max(8px, env(safe-area-inset-left)) max(8px, env(safe-area-inset-right));border-radius:var(--radius);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#1b1916f7;border:1px solid #554d43;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid;position:fixed;inset-block-end:calc(68px + env(safe-area-inset-bottom));box-shadow:0 14px 38px #0000004d}.practice-mobile-dock p{color:#d7d0c6;margin:0;font-size:11px;line-height:1.35}.practice-mobile-dock .primary-action{min-block-size:48px;min-inline-size:112px;padding-inline:14px}}@media (width<=380px){.practice-mobile-dock{gap:7px}.practice-mobile-dock p{font-size:10px}.practice-mobile-dock .primary-action{min-inline-size:96px;padding-inline:10px}}@media (width>=580px){.section-title-row>span{display:block}.interval-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=840px){.practice-builder{grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);align-items:start}.practice-options{position:sticky;inset-block-start:20px}.preset-grid{grid-auto-flow:initial;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible}}@media (width>=1160px){.interval-choice-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.preset-grid{grid-template-columns:repeat(7,minmax(0,1fr))}}.accuracy-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-block-end:14px;display:grid}.accuracy-card{align-content:center;min-block-size:128px;padding:16px;display:grid}.accuracy-card p,.accuracy-card>span{color:var(--ink-soft);margin:0;font-size:10px}.accuracy-card>strong,.streak-stat strong{color:var(--wine);font-family:var(--serif);margin-block:3px;font-size:clamp(29px,5vw,42px);font-weight:400;line-height:1}.streak-stat{grid-template-columns:auto minmax(0,1fr);gap:6px 10px}.streak-stat>svg{inline-size:30px;color:var(--gold);grid-row:1/3}.streak-stat>span{grid-column:1/-1}.streak-stat strong small{color:var(--ink-soft);font-family:var(--sans);font-size:10px}.statistics-grid{gap:12px;margin-block-end:14px;display:grid}.recommendation-card{border-radius:var(--radius-large);background:radial-gradient(circle at 0 100%, #6e263466, transparent 48%), var(--night);gap:18px;padding:clamp(22px,5vw,38px);display:grid}.recommendation-card .section-kicker{color:#d7b16f}.recommendation-card h2,.activity-stat h2,.mastery-section h2,.confusions-card h2,.history-card h2{font-family:var(--serif);letter-spacing:-.035em;margin-block-end:9px;font-size:clamp(25px,4vw,34px);font-weight:400}.recommendation-card p:last-child{color:#bbb3a8;max-inline-size:620px;margin:0;font-size:13px;line-height:1.55}.recommendation-mark{color:#d7b16f;border:1px solid #b48d50;border-radius:50%;place-items:center;block-size:48px;inline-size:48px;display:grid}.recommendation-mark svg{inline-size:24px}.activity-stat{text-align:center;place-items:center;padding:24px;display:grid}.activity-stat .section-kicker{margin-block-end:6px}.activity-count{border:1px solid var(--line-strong);background:var(--wine-pale);border-radius:50%;align-content:center;place-items:center;block-size:138px;inline-size:138px;margin-block:12px 16px;display:grid}.activity-count strong{color:var(--wine);font-family:var(--serif);font-size:38px;font-weight:400;line-height:1}.activity-count span{color:var(--ink-soft);margin-block-start:4px;font-size:10px}.activity-stat>p:last-child{color:var(--ink-soft);margin:0;font-size:11px}.mastery-section{margin-block-end:14px;padding:clamp(20px,4vw,32px)}.mastery-heading{gap:18px;margin-block-end:22px;display:grid}.mastery-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.mastery-list{gap:8px;display:grid}.mastery-row{border-block-start:1px solid var(--line);grid-template-columns:48px minmax(0,1fr);align-items:start;gap:12px;padding-block:13px 5px;display:grid}.mastery-copy>div:first-child{justify-content:space-between;align-items:baseline;gap:10px;margin-block-end:8px;display:flex}.mastery-copy>div:first-child strong{font-family:var(--serif);font-size:15px;font-weight:400}.mastery-copy>div:first-child span{color:var(--ink-faint);font-size:9px}.direction-breakdown{color:var(--ink-soft);flex-wrap:wrap;gap:8px 14px;margin-block-start:7px;font-size:9px;display:flex}.show-all-button{inline-size:100%;margin-block-start:16px}.statistics-lower-grid{gap:12px;display:grid}.confusions-card,.history-card{padding:clamp(20px,4vw,30px)}.confusion-list,.history-list{border-block-start:1px solid var(--line);margin-block-start:18px;display:grid}.confusion-list>div{border-block-end:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:8px;min-block-size:49px;font-size:11px;display:grid}.confusion-list>div span:nth-child(2){color:var(--gold)}.confusion-list strong{min-inline-size:26px;color:var(--wine);text-align:end}.history-list article{border-block-end:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-block-size:58px;display:flex}.history-list article>div{gap:3px;display:grid}.history-list article>div:last-child{justify-items:end}.history-list strong{font-family:var(--serif);font-size:14px;font-weight:400}.history-list article>div:last-child strong{color:var(--wine);font-size:17px}.history-list span{color:var(--ink-soft);font-size:9px}.empty-copy{border-block-start:1px solid var(--line);color:var(--ink-soft);margin:18px 0 0;padding-block-start:18px;font-size:12px;line-height:1.55}@media (width>=660px){.accuracy-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.mastery-heading{grid-template-columns:minmax(0,1fr) auto;align-items:end}.mastery-filter{min-inline-size:350px}}@media (width>=820px){.statistics-grid{grid-template-columns:minmax(0,1.5fr) minmax(250px,.5fr)}.recommendation-card{grid-template-columns:auto minmax(0,1fr);align-items:start}.recommendation-card>button{grid-column:2;justify-self:start}.statistics-lower-grid{grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr)}}.settings-layout,.settings-main,.settings-aside{align-items:start;gap:12px;display:grid}.settings-card{padding:clamp(20px,4vw,32px)}.settings-card>header{align-items:center;gap:13px;margin-block-end:22px;display:flex}.settings-card h2,.license-card h2{font-family:var(--serif);letter-spacing:-.035em;margin:0;font-size:clamp(25px,4vw,33px);font-weight:400;line-height:1.05}.settings-icon{background:var(--wine-pale);block-size:44px;inline-size:44px;color:var(--wine);border-radius:50%;flex:none;place-items:center;display:grid}.settings-icon svg{inline-size:21px}.settings-field{border:0;border-block-start:1px solid var(--line);min-inline-size:0;margin:0;padding:19px 0 0}.settings-field+.settings-field{margin-block-start:19px}.settings-label{justify-content:space-between;gap:16px;margin-block-end:4px;display:flex}.settings-label label,.settings-field legend{color:var(--ink);font-size:13px;font-weight:800}.settings-label output{color:var(--wine);font-family:var(--serif);font-variant-numeric:tabular-nums;font-size:16px}.settings-field>p,.settings-intro,.reset-row p,.settings-toggle p{color:var(--ink-soft);margin:4px 0 0;font-size:12px;line-height:1.5}.settings-toggle{border-block-start:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;margin-block-start:20px;padding-block-start:20px;display:grid}.settings-toggle label{font-size:13px;font-weight:800}.settings-toggle input[role=switch]{border:1px solid var(--line-strong);background:var(--paper-deep);appearance:none;border-radius:999px;block-size:28px;inline-size:50px;margin:0;position:relative}.settings-toggle input[role=switch]:before{content:"";background:var(--white);border-radius:50%;block-size:20px;inline-size:20px;transition:translate .15s;position:absolute;inset-block-start:3px;inset-inline-start:3px;box-shadow:0 2px 5px #0003}.settings-toggle input[role=switch]:checked{border-color:var(--wine);background:var(--wine)}.settings-toggle input[role=switch]:checked:before{translate:22px}.settings-intro{margin-block-end:18px}.data-actions{gap:8px;display:grid}.auth-form{gap:18px;margin-block-start:20px;display:grid}.auth-form .settings-field{margin:0}.account-input{border:1px solid var(--line-strong);background:var(--white);min-block-size:48px;inline-size:100%;color:var(--ink);font:inherit;border-radius:8px;padding:10px 12px}.account-input:focus-visible{border-color:var(--wine);outline-offset:1px;outline:3px solid #6e26342e}.account-input:disabled{opacity:.65}.account-panel>p:not(.settings-intro){color:var(--ink-soft);margin-block:8px 18px;font-size:13px;line-height:1.55}.import-status{border-radius:var(--radius-small);align-items:center;gap:7px;margin:12px 0 0;padding:9px 11px;font-size:12px;display:flex}.account-cloud-card{background:radial-gradient(circle at 100% 0, #c1914324, transparent 34%), var(--paper-card);position:relative;overflow:hidden}.account-cloud-card:after{content:"";z-index:0;pointer-events:none;border-radius:inherit;border:1px solid #c191432e;position:absolute;inset:0}.account-cloud-card>*{z-index:1;position:relative}.account-connected>header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start}.sync-badge{border:1px solid var(--line);background:var(--paper-deep);min-block-size:32px;color:var(--ink-soft);border-radius:999px;align-items:center;padding:7px 11px;font-size:11px;font-weight:750;display:inline-flex}.sync-synced{background:var(--success-pale);color:var(--success);border-color:#266f4e33}.sync-syncing{background:var(--gold-pale);color:#6f4c14;border-color:#c191434d}.sync-error,.sync-offline{color:#75432e;background:#f7eee7;border-color:#804a3238}.account-details{border-block:1px solid var(--line);gap:0;margin:20px 0;display:grid}.account-details>div{grid-template-columns:minmax(110px,.45fr) minmax(0,1fr);gap:16px;padding:12px 0;display:grid}.account-details>div+div{border-block-start:1px solid var(--line)}.account-details dt{color:var(--ink-soft);font-size:11px}.account-details dd{overflow-wrap:anywhere;min-inline-size:0;color:var(--ink);text-align:end;margin:0;font-size:12px;font-weight:700}.account-delete-row{border-block-start:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin-block-start:22px;padding-block-start:20px;display:grid}.account-delete-row strong,.account-delete-row p{margin:0}.account-delete-row p{color:var(--ink-soft);margin-block-start:4px;font-size:12px;line-height:1.5}.account-delete-dialog{gap:14px;display:grid}.account-delete-dialog>label{color:var(--ink);font-size:13px;font-weight:750}.account-delete-dialog .modal-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-block-start:4px;display:grid}.account-privacy-note{border-block-start:1px solid var(--line);padding-block-start:16px;margin-block-start:18px!important}.account-loading-line{background:linear-gradient(90deg, var(--paper-deep), var(--wine-pale), var(--paper-deep));background-size:200% 100%;border-radius:999px;block-size:12px;inline-size:min(100%,360px);margin-block-start:20px;animation:1.4s linear infinite account-loading}@keyframes account-loading{to{background-position:-200% 0}}@media (width<=520px){.account-details>div{grid-template-columns:1fr;gap:4px}.account-details dd{text-align:start}.account-delete-row{grid-template-columns:1fr}.account-delete-row .danger-action{inline-size:100%}}.import-status.success{background:var(--success-pale);color:var(--success)}.import-status.error{background:var(--danger-pale);color:var(--danger)}.import-status svg{inline-size:16px}.reset-row{border-block-start:1px solid var(--line);gap:14px;margin-block-start:22px;padding-block-start:20px;display:grid}.reset-row strong{font-family:var(--serif);font-size:16px;font-weight:400}.license-card,.privacy-card{border-radius:var(--radius-large);padding:clamp(21px,4vw,30px)}.license-card>p:not(.section-kicker){color:var(--ink-soft);margin-block:13px;font-size:12px;line-height:1.6}.license-card dl{border-block:1px solid var(--line);gap:9px;margin-block:18px;padding-block:14px;display:grid}.license-card dl div{gap:3px;display:grid}.license-card dt{color:var(--ink-faint);letter-spacing:.08em;text-transform:uppercase;font-size:9px}.license-card dd{color:var(--ink);margin:0;font-size:11px}.license-card a{align-items:center;min-block-size:44px;padding-block:9px;font-size:11px;font-weight:800;display:inline-flex}.privacy-card{border-style:dashed;grid-template-columns:auto minmax(0,1fr);gap:12px;display:grid}.privacy-card>svg{inline-size:23px;color:var(--wine)}.privacy-card strong{font-family:var(--serif);font-size:15px;font-weight:400}.privacy-card p{color:var(--ink-soft);margin:5px 0 0;font-size:10px;line-height:1.5}.privacy-links{flex-wrap:wrap;gap:7px 13px;margin-block-start:11px;display:flex}.privacy-links a{min-block-size:44px;color:var(--wine);text-underline-offset:3px;align-items:center;padding-block:9px;font-size:10px;font-weight:800;display:inline-flex}.confirm-actions{gap:8px;margin-block-start:12px;display:grid}@media (width>=620px){.data-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.reset-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.confirm-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=880px){.settings-layout{grid-template-columns:minmax(0,1.3fr) minmax(290px,.7fr)}.settings-aside{position:sticky;inset-block-start:20px}}.materials-screen{--materials-copy-width:720px}.listening-guide{border-radius:var(--radius-large);background:radial-gradient(circle at 100% 0, #b38a4a3d, transparent 42%), var(--night);gap:24px;margin-block-end:16px;padding:clamp(24px,5vw,42px);display:grid}.listening-guide .section-kicker{color:#d7b16f}.listening-guide h2{max-inline-size:430px;color:var(--ivory);font-family:var(--serif);letter-spacing:-.04em;margin:0;font-size:clamp(29px,5vw,46px);font-weight:400;line-height:1}.listening-guide ol{counter-reset:listening-step;gap:14px;margin:0;padding:0;list-style:none;display:grid}.listening-guide li{counter-increment:listening-step;grid-template-columns:36px minmax(0,1fr);gap:2px 12px;display:grid}.listening-guide li:before{color:#d7b16f;content:counter(listening-step);block-size:32px;inline-size:32px;font-family:var(--serif);border:1px solid #7c7267;border-radius:50%;grid-row:1/span 2;place-items:center;display:grid}.listening-guide li strong{color:var(--ivory);font-size:13px}.listening-guide li span{color:#bbb3a8;font-size:12px;line-height:1.55}.materials-reminder{max-inline-size:var(--materials-copy-width);border-inline-start:3px solid var(--gold);gap:5px;margin-block:18px clamp(36px,6vw,64px);padding:5px 0 5px 16px;display:grid}.materials-reminder strong{color:var(--wine);font-size:12px}.materials-reminder p{color:var(--ink-soft);margin:0;font-size:13px;line-height:1.6}.interval-groups{gap:clamp(44px,7vw,76px);display:grid}.interval-group{scroll-margin-block-start:88px}.interval-group-heading{border-block-end:1px solid var(--line);gap:10px;margin-block-end:20px;padding-block-end:17px;display:grid}.interval-group-heading h2{color:var(--ink);font-family:var(--serif);letter-spacing:-.035em;margin:0;font-size:clamp(27px,4vw,38px);font-weight:400}.interval-group-heading>p{max-inline-size:560px;color:var(--ink-soft);margin:0;font-size:12px;line-height:1.6}.interval-group-toggle{border:1px solid var(--line-strong);min-block-size:44px;color:var(--ink);background:#ffffff59;border-radius:999px;justify-self:start;align-items:center;gap:7px;padding:8px 12px;font-size:12px;font-weight:750;display:inline-flex}.interval-group-toggle:hover{border-color:var(--wine);color:var(--wine-dark)}.interval-group-toggle svg{inline-size:16px;transition:rotate .15s}.interval-group-toggle[aria-expanded=true] svg{rotate:90deg}.interval-reference-grid{gap:12px;display:grid}.interval-reference-grid[hidden]{display:none}.interval-reference-card{border-color:var(--interval-on-light,var(--line-strong));min-inline-size:0;box-shadow:inset 3px 0 0 var(--interval-on-light,var(--wine)), 0 1px 0 #ffffffa6 inset;padding:clamp(18px,3vw,25px)}.interval-reference-card>header{grid-template-columns:52px minmax(0,1fr);align-items:center;gap:13px;margin-block-end:18px;display:grid}.interval-reference-label{border:1px solid var(--interval-on-light,var(--wine));background:color-mix(in srgb, var(--interval-accent) 10%, var(--ivory));block-size:52px;inline-size:52px;color:var(--interval-on-light,var(--ink));font-family:var(--serif);text-align:center;border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:grid}.interval-reference-card h3{overflow-wrap:anywhere;font-family:var(--serif);margin-block-end:4px;font-size:clamp(20px,3vw,25px);font-weight:400;line-height:1.08}.interval-reference-card header p{color:var(--ink-faint);margin:0;font-size:11px}.interval-reference-card dl{gap:14px;margin:0;display:grid}.interval-reference-card dl>div{gap:4px;display:grid}.interval-reference-card dt{color:var(--interval-on-light,var(--ink));letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.interval-reference-card dd{color:var(--ink-soft);margin:0;font-size:12px;line-height:1.58}.interval-reference-card dl>div:first-child dd{color:var(--ink);font-family:var(--serif);font-size:16px}@media (width>=700px){.listening-guide{grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr);align-items:start}.interval-group-heading{grid-template-columns:minmax(0,1fr) minmax(260px,.7fr) auto;align-items:end}.interval-group-toggle{justify-self:end}.interval-reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
