:root{--color-bg:#f7f8f6;--color-surface:#fff;--color-surface-soft:#eef5f0;--color-text:#202426;--color-muted:#626a6d;--color-border:#dfe4e1;--color-green:#1c5b4c;--color-green-soft:#e9f1ed;--color-amber:#c89322;--color-amber-soft:#f5edda;--color-red:#d64332;--color-red-soft:#f8e7e4;--radius-sm:8px;--shadow-soft:0 18px 44px #1f2a2614;--bg:var(--color-bg);--panel:var(--color-surface);--text:var(--color-text);--muted:var(--color-muted);--border:var(--color-border);--accent:var(--color-green);--accent-soft:var(--color-green-soft);--shadow:var(--shadow-soft);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}a{color:inherit}button,input,textarea,select{font:inherit}h1,p{margin:0}h1{max-width:720px;font-size:clamp(2rem,5vw,3.25rem);line-height:1.05}#root{min-height:100vh}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-header{border-bottom:1px solid var(--border);background:var(--panel)}.brand-link{min-height:46px;color:var(--text);align-items:center;padding:0 20px;text-decoration:none;display:inline-flex}.brand-link__logo{object-fit:contain;flex:none;width:34px;height:34px}.app-main{width:min(100%,1040px);margin:0 auto;padding:72px 32px}.app-shell--dashboard .app-main{width:100%;padding:0}.app-main:has(>.session-workspace){flex:1;width:100%;min-height:0;padding:0}.app-main:has(>.scribe-setup){flex:1;width:100%;min-height:0;padding:0}.app-shell:has(.session-workspace) .app-header{display:none}.app-shell:has(.script-session) .app-header{display:none}.app-shell:has(.scribe-setup) .app-header{display:none}.page-stack{gap:24px;display:grid}.eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:700}.page-header{gap:10px;display:grid}.page-title-with-flag{align-items:center;gap:14px;display:flex}.page-title-with-flag span{background:var(--accent-soft);border-radius:50%;flex:none;place-items:center;width:56px;height:56px;font-size:1.35rem;display:inline-grid}.route-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;max-width:520px;display:grid}.route-card{border:1px solid var(--border);background:var(--panel);min-height:112px;box-shadow:var(--shadow);color:var(--text);border-radius:8px;align-items:center;padding:24px;font-weight:700;text-decoration:none;display:flex}.language-selection{max-width:860px}.selection-panel{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);box-shadow:var(--shadow-soft);padding:14px}.selection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.selection-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);min-height:132px;color:var(--text);grid-template-columns:auto auto;justify-content:center;align-items:center;gap:18px;padding:28px 22px;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.selection-card:hover,.selection-card:focus-visible{border-color:color-mix(in srgb, var(--card-accent) 50%, var(--border));transform:translateY(-1px);box-shadow:0 16px 36px #1f2a261a}.selection-card:focus-visible{outline:3px solid var(--accent-soft);outline-offset:3px}.selection-card--green{--card-accent:var(--color-green);--card-accent-soft:var(--color-green-soft)}.selection-card--amber{--card-accent:var(--color-amber);--card-accent-soft:var(--color-amber-soft)}.selection-card--red{--card-accent:var(--color-red);--card-accent-soft:var(--color-red-soft)}.icon-badge{background:var(--card-accent-soft);width:58px;height:58px;color:var(--card-accent);border-radius:50%;place-items:center;font-size:1.75rem;font-weight:800;display:inline-grid}.selection-card__content{min-width:0;display:grid}.selection-card__label{color:var(--card-accent);font-size:1.65rem;font-weight:800;line-height:1.05}.session-navigation-page{max-width:1040px}.session-path-grid,.session-mode-grid,.item-set-grid{gap:12px;display:grid}.session-path-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.session-mode-grid,.item-set-grid--featured{grid-template-columns:repeat(2,minmax(0,1fr))}.item-set-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.session-nav-section{gap:12px;display:grid}.session-nav-section h2{color:var(--text);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:1rem;font-weight:900}.session-path-card,.item-set-card,.session-mode-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);min-width:0;color:var(--text);box-shadow:var(--shadow-soft);gap:8px;padding:18px;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.session-path-card{align-content:space-between;min-height:146px}.item-set-card,.session-mode-card{align-content:start;min-height:138px}.session-path-card:hover,.session-path-card:focus-visible,.item-set-card:hover,.item-set-card:focus-visible,.session-mode-card:hover,.session-mode-card:focus-visible{border-color:color-mix(in srgb, var(--accent) 44%, var(--border));transform:translateY(-1px);box-shadow:0 18px 38px #0000001f}.session-path-card:focus-visible,.item-set-card:focus-visible,.session-mode-card:focus-visible,.session-flow-button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:3px}.session-path-card__eyebrow,.item-set-card__eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:900}.session-path-card__title,.item-set-card__title,.session-mode-card__title{color:var(--accent);font-size:1.25rem;font-weight:900;line-height:1.12}.session-path-card__title{font-size:1.5rem}.session-mode-card__icon{place-items:center;width:2.35rem;height:2.35rem;font-size:2rem;line-height:1;display:inline-grid}.item-set-card__description,.session-mode-card__body{color:var(--muted);font-size:.92rem;font-weight:700;line-height:1.4}.item-set-card--build{border-color:color-mix(in srgb, var(--color-amber) 40%, var(--border));background:color-mix(in srgb, var(--color-amber-soft) 42%, var(--panel))}.session-flow-panel{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);box-shadow:var(--shadow-soft);gap:18px;padding:22px;display:grid}.scribe-setup-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.scribe-setup-summary--wide{grid-template-columns:repeat(4,minmax(0,1fr))}.scribe-setup-summary div{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);gap:4px;padding:14px;display:grid}.scribe-setup-summary dt{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:900}.scribe-setup-summary dd{color:var(--text);margin:0;font-weight:900}.session-flow-actions,.custom-session-row__actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.session-flow-actions{justify-content:flex-end}.session-flow-button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);min-height:42px;color:var(--text);justify-content:center;align-items:center;padding:9px 13px;font-size:.9rem;font-weight:900;text-decoration:none;display:inline-flex}.session-flow-button:hover,.session-flow-button:focus-visible{border-color:var(--accent);background:var(--accent-soft)}.session-flow-button--primary{border-color:var(--accent);background:var(--accent);color:var(--panel)}.session-flow-button--primary:hover,.session-flow-button--primary:focus-visible{border-color:color-mix(in srgb, var(--accent) 82%, #000);background:color-mix(in srgb, var(--accent) 92%, #000)}.session-flow-button:disabled{cursor:not-allowed;opacity:.54}.custom-builder-layout{grid-template-columns:minmax(0,1fr) minmax(260px,340px);align-items:start;gap:18px;display:grid}.custom-builder-form,.custom-builder-summary,.custom-filter-section,.advanced-filter-panel,.nested-filter-panel{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel)}.custom-builder-form{gap:12px;padding:14px;display:grid}.custom-builder-summary{box-shadow:var(--shadow-soft);gap:14px;padding:16px;display:grid;position:sticky;top:18px}.custom-builder-summary h2,.custom-filter-section h2,.nested-filter-panel h3{color:var(--text);margin:0;font-size:.95rem;line-height:1.2}.custom-filter-section,.advanced-filter-panel{gap:12px;padding:14px;display:grid}.advanced-filter-panel summary,.nested-filter-panel summary{cursor:pointer;color:var(--text);font-weight:900}.nested-filter-panel{padding:12px;display:block}.nested-filter-panel[open]{gap:12px;display:grid}.filter-chip-grid,.phoneme-chip-grid{flex-wrap:wrap;gap:8px;display:flex}.phoneme-chip-grid{margin-top:8px}.checkbox-chip{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);min-height:36px;color:var(--text);align-items:center;gap:7px;padding:7px 10px;font-size:.88rem;font-weight:850;display:inline-flex}.checkbox-chip:has(input:checked){border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.checkbox-chip input{accent-color:var(--accent)}.segmented-control{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);width:fit-content;display:inline-flex;overflow:hidden}.segmented-control--compact{min-height:34px}.segmented-control__button{border:0;border-right:1px solid var(--border);min-height:38px;color:var(--muted);font:inherit;background:0 0;padding:8px 12px;font-size:.86rem;font-weight:900}.segmented-control__button:last-child{border-right:0}.segmented-control__button[aria-pressed=true]{background:var(--accent);color:var(--panel)}.custom-number-input{max-width:220px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;gap:6px;font-size:.8rem;font-weight:900;display:grid}.custom-number-input input,.tag-input input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);min-height:40px;color:var(--text);font:inherit;padding:9px 11px}.tag-input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);flex-wrap:wrap;align-items:center;gap:8px;min-height:44px;padding:6px;display:flex}.tag-input input{border-color:#0000;flex:170px;min-width:170px}.filter-tag{border:1px solid color-mix(in srgb, var(--accent) 34%, var(--border));border-radius:var(--radius-sm);background:var(--accent-soft);min-height:32px;color:var(--accent);padding:6px 10px;font-weight:900}.filter-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.filter-option-group{gap:8px;display:grid}.filter-category-button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);width:fit-content;min-height:34px;color:var(--text);padding:7px 10px;font-weight:900}.filter-category-button:hover,.filter-category-button:focus-visible{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.custom-session-list{gap:10px;display:grid}.custom-session-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);box-shadow:var(--shadow-soft);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px;display:grid}.custom-session-row h2{color:var(--text);margin:0;font-size:1rem;line-height:1.2}.custom-session-row p{color:var(--muted);margin-top:4px;font-size:.86rem;font-weight:700}.beta-dashboard{background:var(--bg);min-height:100vh}.beta-dashboard__hero{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--panel) 76%, var(--accent-soft))}.beta-dashboard__brand{align-items:center;gap:18px;width:min(100%,1040px);min-height:92px;margin:0 auto;padding:20px 32px;display:flex}.beta-dashboard__logo{object-fit:contain;border-radius:0;flex:none;width:50px;height:50px}.beta-dashboard__title-row{flex-wrap:wrap;align-items:baseline;gap:10px;min-width:0;display:flex}.beta-dashboard__title-row h1{max-width:none;color:var(--text);font-size:clamp(1.55rem,2.8vw,2rem)}.beta-dashboard__title-row span{color:var(--accent);font-size:clamp(1.1rem,2vw,1.5rem);font-weight:800}.beta-dashboard__content{gap:18px;width:min(100%,1040px);margin:0 auto;padding:28px 32px 56px;display:grid}.dashboard-section{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);box-shadow:var(--shadow-soft);gap:16px;padding:18px;display:grid}.dashboard-section--sessions{gap:12px;padding:14px 18px 18px}.dashboard-section--sessions h2,.dashboard-section-heading{color:var(--text);margin:0;font-size:1.35rem;line-height:1.2}.dashboard-section--sessions h2{text-align:center}.dashboard-section-heading{align-items:center;gap:12px;min-height:42px;display:inline-flex}.dashboard-section__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 18px;display:flex}.dashboard-section__header-link{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-weight:800;text-decoration:none}.dashboard-section__header-link:hover,.dashboard-section__header-link:focus-visible{text-decoration:underline}.dashboard-section-heading>span{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border));border-radius:var(--radius-sm);background:var(--accent-soft);width:34px;height:34px;color:var(--accent);flex:none;place-items:center;font-size:1rem;line-height:1;display:inline-grid}.dashboard-section-heading svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:20px;height:20px;display:block}.dashboard-section-heading svg circle:first-child,.dashboard-section-heading svg path:first-child{fill:color-mix(in srgb, currentColor 12%, transparent)}.dashboard-section-subheading{color:var(--muted);margin:0;font-size:.95rem;font-weight:800}.dashboard-session-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.dashboard-training-item{gap:8px;display:grid}.dashboard-language-card{--language-accent:var(--accent);--language-accent-soft:var(--accent-soft);border:1px solid color-mix(in srgb, var(--language-accent) 34%, var(--border));border-radius:var(--radius-sm);background:var(--language-accent-soft);min-height:74px;color:var(--language-accent);grid-template-columns:auto auto;justify-content:center;align-items:center;gap:14px;padding:12px 18px;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.dashboard-language-card--green{--language-accent:var(--color-green);--language-accent-soft:var(--color-green-soft)}.dashboard-language-card--amber{--language-accent:var(--color-amber);--language-accent-soft:var(--color-amber-soft)}.dashboard-language-card:hover,.dashboard-language-card:focus-visible{border-color:color-mix(in srgb, var(--language-accent) 56%, var(--border));transform:translateY(-1px);box-shadow:0 16px 36px #1f2a2629}.dashboard-language-card:focus-visible{outline:3px solid var(--language-accent-soft);outline-offset:3px}.dashboard-language-card__icon{border:2px solid color-mix(in srgb, var(--language-accent) 34%, var(--panel));background:var(--panel);width:42px;height:42px;box-shadow:0 8px 18px #1f2a2624, inset 0 0 0 1px color-mix(in srgb, var(--panel) 80%, transparent);border-radius:50%;place-items:center;font-size:1.25rem;display:inline-grid}.dashboard-language-card__label{color:var(--language-accent);font-size:clamp(1.3rem,2.4vw,1.65rem);font-weight:800;line-height:1}.dashboard-sync-link{--sync-accent:var(--accent);border-radius:var(--radius-sm);min-height:32px;color:var(--sync-accent);text-align:center;justify-content:center;justify-self:center;align-items:center;padding:6px 12px;font-size:.92rem;font-weight:800;text-decoration:none;transition:background .16s,color .16s;display:inline-flex}.dashboard-sync-link--green{--sync-accent:var(--color-green)}.dashboard-sync-link--amber{--sync-accent:var(--color-amber)}.dashboard-sync-link:hover,.dashboard-sync-link:focus-visible{background:color-mix(in srgb, var(--sync-accent) 12%, transparent);color:color-mix(in srgb, var(--sync-accent) 80%, var(--ink))}.dashboard-sync-link:focus-visible{outline:3px solid color-mix(in srgb, var(--sync-accent) 22%, transparent);outline-offset:2px}.dashboard-grid{gap:24px;display:grid}.dashboard-grid--intro{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.dashboard-section--announcement-feature{gap:16px}.announcement-feature{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:18px;display:grid}.announcement-feature__copy{align-content:start;gap:12px;min-width:0;display:grid}.announcement-feature__copy h3{color:var(--text);margin:0;font-size:clamp(1.2rem,2.2vw,1.6rem);line-height:1.15}.announcement-feature__copy ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.announcement-feature__copy li{color:var(--text);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;font-size:.95rem;line-height:1.35;display:grid}.announcement-feature__copy li:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px;margin-top:.45em}.dashboard-video-card{aspect-ratio:16/9;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--accent-soft);position:relative;overflow:hidden}.dashboard-video-card iframe{z-index:2;background:#f2f4f1;border:0;width:100%;height:100%;position:absolute;inset:0}.dashboard-video-card__preview{color:var(--text);background:#f2f4f1;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.dashboard-video-card__preview strong{max-width:calc(100% - 48px);font-size:clamp(1.2rem,2.5vw,1.9rem);line-height:1.15;position:absolute;bottom:24px;left:24px}.dashboard-video-card__waveform{justify-content:center;align-items:center;gap:3px;width:min(78%,420px);height:88px;display:flex}.dashboard-video-card__waveform span{background:var(--accent);border-radius:999px;width:3px}.dashboard-video-card__waveform span:nth-child(4n+1){height:22px}.dashboard-video-card__waveform span:nth-child(4n+2){height:46px}.dashboard-video-card__waveform span:nth-child(4n+3){height:66px}.dashboard-video-card__waveform span:nth-child(4n+4){height:34px}.dashboard-video-card__play{border-radius:var(--radius-sm);background:var(--color-red);width:72px;height:72px;color:var(--panel);place-items:center;font-size:1.6rem;line-height:1;display:inline-grid;position:absolute}.announcement-list{gap:12px;display:grid}.announcement-card{border:1px solid color-mix(in srgb, var(--accent) 18%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--accent-soft) 42%, var(--panel));gap:12px;padding:14px;display:grid}.announcement-card:first-child{padding-top:14px}.announcement-card:last-child{padding-bottom:14px}.announcement-card__date{border:1px solid color-mix(in srgb, var(--accent) 18%, var(--border));background:var(--panel);width:fit-content;min-height:26px;color:var(--accent);letter-spacing:0;border-radius:999px;align-items:center;padding:4px 8px;font-size:.78rem;font-weight:900;display:inline-flex}.announcement-card h3,.office-hours-card h3,.tracker-card h3{color:var(--text);margin:0;font-size:1.05rem;line-height:1.2}.announcement-card ul,.tracker-card ul,.office-hours-card__recordings ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.announcement-card li,.tracker-card li,.office-hours-card__recordings li{color:var(--text);font-size:.95rem;line-height:1.35}.announcement-card li{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;display:grid}.announcement-card li:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px;margin-top:.45em}.dashboard-outline-link{border:1px solid var(--color-red);border-radius:var(--radius-sm);background:var(--panel);width:fit-content;min-height:40px;color:var(--color-red);justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-weight:800;text-decoration:none;display:inline-flex}.dashboard-outline-link:hover,.dashboard-outline-link:focus-visible{border-color:var(--color-red);background:var(--color-red);color:var(--panel)}.dashboard-outline-link--watch{border-color:color-mix(in srgb, var(--color-red) 78%, var(--text));background:var(--color-red);width:100%;min-height:48px;color:var(--panel);box-shadow:0 14px 30px color-mix(in srgb, var(--color-red) 25%, transparent);padding:11px 16px;font-size:.98rem;font-weight:950}.dashboard-outline-link--watch span{background:var(--panel);width:26px;height:26px;color:var(--color-red);border-radius:999px;place-items:center;font-size:.76rem;display:inline-grid}.dashboard-outline-link--watch:hover,.dashboard-outline-link--watch:focus-visible{background:color-mix(in srgb, var(--color-red) 86%, black);color:var(--panel);transform:translateY(-1px)}.dashboard-outline-link--history-video{border-color:color-mix(in srgb, var(--accent) 34%, var(--border));background:color-mix(in srgb, var(--accent-soft) 48%, var(--panel));width:100%;min-height:44px;color:color-mix(in srgb, var(--accent) 72%, var(--text));padding:10px 14px;font-size:.95rem;font-weight:850}.dashboard-outline-link--history-video span{background:var(--panel);width:24px;height:24px;color:color-mix(in srgb, var(--accent) 72%, var(--text));border-radius:999px;place-items:center;font-size:.72rem;display:inline-grid}.dashboard-outline-link--history-video:hover,.dashboard-outline-link--history-video:focus-visible{border-color:color-mix(in srgb, var(--accent) 62%, var(--text));background:color-mix(in srgb, var(--accent-soft) 68%, var(--panel));color:color-mix(in srgb, var(--accent) 82%, var(--text));transform:translateY(-1px)}.office-hours-grid,.tracker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.office-hours-card{--office-hours-accent:var(--accent);border:1px solid color-mix(in srgb, var(--office-hours-accent) 30%, var(--border));border-radius:var(--radius-sm);background:var(--panel);gap:16px;padding:18px;display:grid}.office-hours-card--green{--office-hours-accent:var(--color-green)}.office-hours-card--amber{--office-hours-accent:var(--color-amber)}.office-hours-card h3{color:var(--office-hours-accent);align-items:center;gap:8px;display:inline-flex}.office-hours-card p{color:var(--text);margin:0;font-weight:700}.office-hours-card__actions{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px;padding-bottom:14px;display:flex}.office-hours-card__join{flex:210px;gap:8px;display:grid}.office-hours-card__actions a,.office-hours-card__actions button{border:1px solid color-mix(in srgb, var(--office-hours-accent) 42%, var(--border));border-radius:var(--radius-sm);background:var(--panel);min-height:40px;color:var(--office-hours-accent);cursor:pointer;font:inherit;justify-content:center;align-items:center;padding:8px 12px;font-size:.9rem;font-weight:800;text-decoration:none;display:inline-flex}.office-hours-card__actions a:hover,.office-hours-card__actions a:focus-visible,.office-hours-card__actions button:hover,.office-hours-card__actions button:focus-visible{background:color-mix(in srgb, var(--office-hours-accent) 8%, var(--panel))}.office-hours-card .office-hours-card__notice{border:1px solid color-mix(in srgb, var(--office-hours-accent) 52%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--office-hours-accent) 14%, var(--panel));color:color-mix(in srgb, var(--office-hours-accent) 70%, var(--text));padding:10px 12px;font-size:.9rem;font-weight:900;line-height:1.35}.office-hours-card__recordings{gap:8px;display:grid}.office-hours-card__recordings>span{color:var(--muted);font-size:.9rem;font-weight:800}.office-hours-card__recordings a,.office-hours-card__recordings button{color:var(--text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0;text-decoration:none;display:inline}.office-hours-card__recordings a:before,.office-hours-card__recordings button:before{content:"▷";color:var(--office-hours-accent);margin-right:8px}.office-hours-card__recordings a:hover,.office-hours-card__recordings a:focus-visible,.office-hours-card__recordings button:hover,.office-hours-card__recordings button:focus-visible,.dashboard-question-card:hover,.dashboard-question-card:focus-visible,.tracker-card a:hover,.tracker-card a:focus-visible{color:var(--accent);text-decoration:underline}.dashboard-question-list{gap:10px;display:grid}.dashboard-question-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:100%;min-height:52px;color:var(--text);cursor:pointer;font:inherit;text-align:left;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:10px 14px;display:grid}.dashboard-question-card:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.dashboard-question-card__flag{background:var(--accent-soft);border-radius:50%;place-items:center;width:34px;height:34px;font-size:1rem;display:inline-grid}.dashboard-question-card__meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dashboard-question-card__meta span{border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 78%, var(--bg));min-height:28px;color:var(--muted);align-items:center;padding:4px 8px;font-size:.85rem;font-weight:800;line-height:1;display:inline-flex}.dashboard-question-card__meta span:nth-child(2){border-color:color-mix(in srgb, var(--accent) 35%, var(--border));background:var(--accent-soft);color:var(--accent)}.dashboard-question-card strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;line-height:1.35;overflow:hidden}.dashboard-question-card--feed{align-items:start;min-height:0}.dashboard-question-card--feed strong{white-space:normal}.dashboard-question-card__feed-content{gap:6px;min-width:0;display:grid}.dashboard-question-card__tag{border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 78%, var(--bg));width:fit-content;min-height:28px;color:var(--muted);align-items:center;padding:4px 8px;font-size:.85rem;font-weight:800;line-height:1;display:inline-flex}.dashboard-modal{z-index:50;place-items:center;padding:32px;display:grid;position:fixed;inset:0}.dashboard-modal__scrim{cursor:pointer;background:#2024269e;border:0;position:absolute;inset:0}.dashboard-modal__panel{overscroll-behavior:contain;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);gap:18px;width:min(100%,860px);max-height:min(720px,100vh - 64px);padding:24px;display:grid;position:relative;overflow-y:auto;box-shadow:0 28px 72px #1f2a263d}.dashboard-modal__header{justify-content:space-between;align-items:start;gap:16px;display:flex}.dashboard-modal__header h2{color:var(--text);margin:0;font-size:clamp(1.45rem,3vw,2rem);line-height:1.1}.dashboard-modal__eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:.78rem;font-weight:800;display:block}.dashboard-modal__close{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:42px;height:42px;color:var(--text);cursor:pointer;flex:none;place-items:center;font-size:1.5rem;line-height:1;display:inline-grid}.dashboard-modal__close:hover,.dashboard-modal__close:focus-visible{border-color:var(--accent);color:var(--accent)}.dashboard-modal__recordings,.dashboard-modal__announcements{gap:18px;display:grid}.dashboard-modal__answer{gap:16px;display:grid}.dashboard-modal__questions{gap:18px;display:grid}.dashboard-modal__answer h3{color:var(--text);margin:0;font-size:1.2rem;line-height:1.25}.dashboard-modal__recordings p,.dashboard-modal__announcements p,.dashboard-modal__questions p,.dashboard-modal__answer p{color:var(--muted);margin:0;font-weight:700}.dashboard-modal__video-answer{aspect-ratio:16/9;border:1px solid var(--border);border-radius:var(--radius-sm);background:#f2f4f1;width:100%;position:relative;overflow:hidden}.dashboard-modal__video-answer iframe{border:0;width:100%;height:100%}.dashboard-modal__text-link{width:fit-content;color:var(--accent);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0;font-weight:800}.dashboard-modal__text-link:hover,.dashboard-modal__text-link:focus-visible{color:var(--color-red);text-decoration:underline}.dashboard-modal__recordings ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.dashboard-modal__recordings li{border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 78%, var(--bg));grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:14px;display:grid}.dashboard-modal__recordings li>span{color:var(--accent);font-weight:800}.dashboard-modal__recordings li div{gap:2px;display:grid}.dashboard-modal__recordings li strong{color:var(--text)}.dashboard-modal__recordings li div span{color:var(--muted);font-size:.9rem;font-weight:700}.dashboard-modal__tracker{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.tracker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tracker-card{--tracker-accent:var(--accent);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);align-content:start;gap:14px;padding:18px;display:grid}.tracker-card--red{--tracker-accent:var(--color-red)}.tracker-card--green{--tracker-accent:var(--color-green)}.tracker-card--amber{--tracker-accent:var(--color-amber)}.tracker-card h3{align-items:center;gap:10px;display:inline-flex}.tracker-card h3 span{border:1px solid color-mix(in srgb, var(--tracker-accent) 42%, var(--border));width:30px;height:30px;color:var(--tracker-accent);border-radius:50%;flex:none;place-items:center;font-size:.9rem;line-height:1;display:inline-grid}.tracker-card li{grid-template-columns:auto minmax(0,1fr);gap:8px;display:grid}.tracker-card li:before{content:"";background:var(--tracker-accent);border-radius:50%;width:10px;height:10px;margin-top:.35em}.tracker-card a{color:var(--accent);align-self:end;margin-top:4px;font-weight:800;text-decoration:none}.sound-primer-page{max-width:980px}.tutorial-page,.session-page{max-width:760px}.session-workspace{--session-topbar-height:56px;--session-stage-bottom-buffer:14px;--session-sidebar-open-width:clamp(188px, 15vw, 224px);--session-sidebar-width:var(--session-sidebar-open-width);--session-phoneme-tray-open-width:clamp(224px, 19vw, 252px);--session-phoneme-tray-width:0px;--session-panel-scroll-fade-height:34px;background:var(--bg);grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);width:100%;height:100vh;min-height:0;margin:0;transition:grid-template-columns .19s;display:grid;position:relative;overflow:hidden}.session-workspace--sidebar-closed{--session-sidebar-width:0px}.session-workspace--phoneme-open{--session-phoneme-tray-width:var(--session-phoneme-tray-open-width)}[data-item-line-session]{--script-session-panel-label-height:1rem;--script-session-panel-waveform-height:clamp(72px, 10vh, 96px);--script-session-panel-control-height:42px;--script-session-audio-panel-height:calc(20px + var(--script-session-panel-label-height) + 16px + var(--script-session-panel-waveform-height) + var(--script-session-panel-control-height))}.session-sidebar{top:calc(var(--session-topbar-height) + 1px);bottom:var(--session-stage-bottom-buffer);z-index:30;width:var(--session-sidebar-open-width);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);pointer-events:auto;grid-template-rows:auto minmax(0,1fr);gap:14px;min-height:0;padding:18px 12px 18px 14px;transition:opacity .14s,transform .19s,visibility linear;display:grid;position:absolute;left:0;overflow:hidden}.session-sidebar:after,.symbols-tray--external-toggle:after{content:"";height:var(--session-panel-scroll-fade-height);pointer-events:none;background:linear-gradient(to bottom, transparent, var(--panel));z-index:2;position:absolute;bottom:1px;left:1px;right:1px}.session-workspace--sidebar-closed .session-sidebar{visibility:hidden;opacity:0;pointer-events:none;transition:opacity .14s,transform .19s,visibility 0s linear .18s;transform:translate(calc(-100% - 10px))}.session-sidebar__header{justify-content:space-between;align-items:start;gap:12px;display:flex}.session-sidebar__header h2{color:var(--text);margin:0;font-size:1.22rem;line-height:1.1}.session-sidebar__header span{color:var(--muted);font-size:.9rem;font-weight:700}.icon-button,.row-icon--button,.reveal-eye-button,.flowscript-next-button,.symbols-tray__toggle,.play-button,.control-button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--text);cursor:pointer;font:inherit;place-items:center;font-weight:800;display:inline-grid}.icon-button{flex:none;width:44px;height:44px}.icon-button svg{stroke:currentColor;width:20px;height:20px}.side-panel-icon__frame,.side-panel-icon__divider,.side-panel-icon__rail{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.side-panel-icon__panel{fill:currentColor;opacity:0;transform-box:fill-box;transform-origin:50%;transition:opacity .14s,transform .14s}.side-panel-icon__divider,.side-panel-icon__rail{transition:opacity .14s,transform .14s}.side-panel-icon--closed .side-panel-icon__divider,.side-panel-icon--closed .side-panel-icon__panel{opacity:0}.side-panel-icon--closed .side-panel-icon__rail,.side-panel-icon--open .side-panel-icon__divider{opacity:1}.side-panel-icon--open .side-panel-icon__panel{opacity:.22}.side-panel-icon--open .side-panel-icon__rail{opacity:0;transform:scaleY(.72)}.side-panel-icon--bottom.side-panel-icon--open .side-panel-icon__rail{transform:scaleX(.72)}.session-sidebar__list{min-height:0;padding-right:4px;padding-bottom:var(--session-panel-scroll-fade-height);align-content:start;gap:7px;display:grid;overflow-y:auto}.session-sidebar__item{border-radius:var(--radius-sm);min-height:40px;color:var(--text);cursor:pointer;font:inherit;text-align:left;white-space:nowrap;background:0 0;border:1px solid #0000;padding:9px 10px;font-weight:800}.session-sidebar__item:hover,.session-sidebar__item:focus-visible,.session-sidebar__item--active{border-color:color-mix(in srgb, var(--color-red) 45%, var(--border));background:var(--panel)}.session-stage{height:100%;min-height:0;padding:0 32px var(--session-stage-bottom-buffer);grid-area:1/1;grid-template-rows:auto minmax(0,1fr);align-content:stretch;gap:10px;display:grid;overflow:hidden auto}.session-workspace .item-line-panel-stack{margin-right:var(--session-phoneme-tray-width);margin-left:var(--session-sidebar-width);transition:margin-right .19s,margin-left .19s}.session-bar{z-index:35;min-height:var(--session-topbar-height);border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--panel) 88%, var(--bg));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:10px;margin:0 -32px 14px;padding:6px 16px;display:flex;position:sticky;top:0}.session-bar__left,.session-bar__right{align-items:center;gap:10px;min-width:0;display:inline-flex}.session-panel-toggle{transition:background-color .16s,border-color .16s,color .16s,box-shadow .12s}.session-panel-toggle--active{border-color:var(--border);background:var(--panel);color:var(--text);box-shadow:none}.session-back-button{color:var(--text);text-decoration:none}.session-exit{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:fit-content;min-height:44px;color:var(--text);justify-content:center;align-items:center;padding:10px 14px;font-weight:800;text-decoration:none;display:inline-flex}.session-target-phonemes{color:var(--muted);text-align:right;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 12px;font-size:.9rem;font-weight:800;display:flex}.session-target-phonemes__list{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.session-target-phoneme{border:1px solid color-mix(in srgb, var(--color-amber) 58%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-amber) 18%, var(--panel));min-width:32px;min-height:32px;color:var(--text);cursor:pointer;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-amber) 26%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--color-amber) 52%, transparent);place-items:center;padding:4px 8px;font-family:inherit;font-size:1rem;font-weight:800;line-height:1;transition:background-color .14s,border-color .14s,box-shadow .12s,transform 90ms;display:inline-grid;transform:translateY(0)}.session-target-phoneme:hover:not(:disabled),.session-target-phoneme:focus-visible:not(:disabled){border-color:color-mix(in srgb, var(--color-amber) 70%, var(--border));background:color-mix(in srgb, var(--color-amber) 24%, var(--panel));color:var(--text)}.session-target-phoneme:focus-visible{outline:3px solid var(--border);outline-offset:2px}.session-target-phoneme:active:not(:disabled){box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-amber) 32%, transparent), inset 0 -1px 0 color-mix(in srgb, var(--color-amber) 58%, transparent);transform:translateY(2px)}.session-target-phoneme:disabled{cursor:not-allowed;opacity:.45}.phoneme-audio-button-wrap{display:inline-grid;position:relative}.symbol-group__buttons .phoneme-audio-button-wrap{flex:0 0 32px}.session-target-phonemes__empty{color:var(--muted);font-weight:700}@keyframes phoneme-tutorial-modal-backdrop-enter{0%{background:color-mix(in srgb, var(--text) 0%, transparent)}to{background:color-mix(in srgb, var(--text) 58%, transparent)}}@keyframes phoneme-tutorial-modal-dialog-enter{0%{opacity:0;transform:translateY(10px)scale(.965)}to{opacity:1;transform:translateY(0)scale(1)}}.phoneme-tutorial-modal{z-index:80;background:color-mix(in srgb, var(--text) 58%, transparent);place-items:center;padding:24px;animation:.15s ease-out both phoneme-tutorial-modal-backdrop-enter;display:grid;position:fixed;inset:0}.phoneme-tutorial-modal__dialog{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:min(920px,100%);box-shadow:var(--shadow-strong);transform-origin:50%;gap:14px;padding:16px;animation:.18s cubic-bezier(.18,.88,.32,1.08) both phoneme-tutorial-modal-dialog-enter;display:grid}.phoneme-tutorial-modal__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.phoneme-tutorial-modal__header h2{margin:0;font-size:1.2rem}.phoneme-tutorial-modal__close{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:38px;height:38px;color:var(--text);font:inherit;cursor:pointer;place-items:center;font-size:1.4rem;line-height:1;display:inline-grid}.phoneme-tutorial-modal__close:hover,.phoneme-tutorial-modal__close:focus-visible{border-color:var(--accent)}.phoneme-tutorial-modal__close:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.phoneme-tutorial-modal__video{aspect-ratio:16/9;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--background);overflow:hidden}.phoneme-tutorial-modal__video iframe{border:0;width:100%;height:100%;display:block}@media (prefers-reduced-motion:reduce){.phoneme-tutorial-modal,.phoneme-tutorial-modal__dialog{animation:none}}.muffler-effect-modal{z-index:90;background:color-mix(in srgb, var(--text) 54%, transparent);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.muffler-effect-modal__dialog{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:min(560px,100%);max-height:min(720px,100vh - 48px);box-shadow:var(--shadow-strong);gap:14px;padding:18px;display:grid;overflow:auto}.muffler-effect-modal__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.muffler-effect-modal__header h2{color:var(--text);margin:0;font-size:1.2rem;line-height:1.2}.muffler-effect-modal__close{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:38px;height:38px;color:var(--text);cursor:pointer;font:inherit;place-items:center;font-size:1.4rem;line-height:1;display:inline-grid}.muffler-effect-modal__close:hover,.muffler-effect-modal__close:focus-visible{border-color:var(--accent)}.muffler-effect-modal__close:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.muffler-effect-modal__section{border-top:1px solid color-mix(in srgb, var(--border) 72%, transparent);grid-template-columns:76px minmax(0,1fr);align-items:center;gap:10px 14px;padding-top:12px;display:grid}.muffler-effect-modal__section-label{color:var(--muted);letter-spacing:0;font-size:.78rem;font-weight:760}.muffler-effect-modal__segmented{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.muffler-effect-modal__segment,.muffler-effect-modal__toggle{border:1px solid color-mix(in srgb, var(--muted) 24%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 74%, #f2f4f1);min-height:40px;color:color-mix(in srgb, var(--muted) 84%, var(--text));cursor:pointer;font:inherit;opacity:.82;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:.92rem;font-weight:780;line-height:1;transition:background-color .16s,border-color .16s,color .16s,box-shadow .12s,opacity .12s;display:inline-flex}.muffler-effect-modal__segment:hover,.muffler-effect-modal__segment:focus-visible,.muffler-effect-modal__toggle:hover,.muffler-effect-modal__toggle:focus-visible{border-color:color-mix(in srgb, var(--accent) 46%, var(--border));background:color-mix(in srgb, var(--accent) 8%, var(--panel));color:var(--text);opacity:1}.muffler-effect-modal__segment:focus-visible,.muffler-effect-modal__toggle:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.muffler-effect-modal__segment--active,.muffler-effect-modal__toggle--active{border-color:color-mix(in srgb, var(--accent) 58%, var(--border));background:color-mix(in srgb, var(--accent) 18%, var(--panel));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 24%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--accent) 50%, transparent)}.muffler-effect-modal__segment:disabled,.muffler-effect-modal__toggle:disabled{cursor:not-allowed;opacity:.4}.muffler-effect-modal__segment-icon{place-items:center;width:18px;height:18px;font-size:1rem;font-weight:400;line-height:1;display:inline-grid}.muffler-effect-modal__setting-row{grid-column:1/-1;grid-template-columns:42px minmax(0,1fr) 56px;align-items:center;gap:12px;display:grid}.muffler-effect-modal__setting-row input{width:100%;accent-color:var(--color-amber)}.muffler-effect-modal__setting-row strong{min-width:0;color:var(--text);font-variant-numeric:tabular-nums;text-align:right;font-size:1.15rem;font-weight:850;line-height:1}.muffler-effect-modal__actions{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.muffler-effect-modal__waveform{border:1px solid var(--border);border-radius:var(--radius-sm);cursor:text;touch-action:none;background:#f2f4f1;justify-self:stretch;width:100%;height:42px;display:block}.muffler-effect-modal__waveform:active{cursor:text}.muffler-effect-modal__toggle-group{flex-wrap:wrap;gap:8px;display:flex}.muffler-effect-modal__icon-button{border:1px solid color-mix(in srgb, var(--muted) 24%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 74%, #f2f4f1);width:42px;height:42px;color:color-mix(in srgb, var(--muted) 84%, var(--text));cursor:pointer;font:inherit;opacity:.82;place-items:center;padding:0;font-size:1.1rem;font-weight:900;line-height:1;transition:background-color .16s,border-color .16s,color .16s,box-shadow .12s,opacity .12s;display:inline-grid}.muffler-effect-modal__icon-button:hover,.muffler-effect-modal__icon-button:focus-visible{border-color:color-mix(in srgb, var(--accent) 46%, var(--border));background:color-mix(in srgb, var(--accent) 8%, var(--panel));color:var(--text);opacity:1}.muffler-effect-modal__icon-button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.muffler-effect-modal__icon-button--active{border-color:color-mix(in srgb, var(--accent) 58%, var(--border));background:color-mix(in srgb, var(--accent) 18%, var(--panel));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 24%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--accent) 50%, transparent)}.muffler-effect-modal__icon-button--muted{border-color:color-mix(in srgb, var(--color-red) 38%, var(--border));background:color-mix(in srgb, var(--color-red) 10%, var(--panel));color:var(--text);opacity:1}.muffler-effect-modal__icon-button:disabled{cursor:not-allowed;opacity:.4}.muffler-effect-modal__footer-button{border:1px solid color-mix(in srgb, var(--muted) 24%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 74%, #f2f4f1);min-height:40px;color:color-mix(in srgb, var(--muted) 84%, var(--text));cursor:pointer;font:inherit;opacity:.9;justify-content:center;align-items:center;gap:8px;padding:0 13px;font-size:.92rem;font-weight:820;line-height:1;display:inline-flex}.muffler-effect-modal__footer-button:hover,.muffler-effect-modal__footer-button:focus-visible{border-color:color-mix(in srgb, var(--accent) 46%, var(--border));background:color-mix(in srgb, var(--accent) 8%, var(--panel));color:var(--text);opacity:1}.muffler-effect-modal__footer-button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.muffler-effect-modal__footer-button--save{border-color:var(--color-amber);background:var(--color-amber);color:#fff;opacity:1}.muffler-effect-modal__footer-button--save:hover,.muffler-effect-modal__footer-button--save:focus-visible{border-color:color-mix(in srgb, var(--color-amber) 84%, var(--text));background:color-mix(in srgb, var(--color-amber) 88%, var(--text));color:#fff}.muffler-effect-modal__beater{border:1px solid color-mix(in srgb, var(--muted) 24%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 64%, #f2f4f1);width:42px;height:42px;color:color-mix(in srgb, var(--muted) 78%, white);cursor:pointer;font:inherit;opacity:.7;place-items:center;padding:0;font-size:1.02rem;font-weight:900;line-height:1;display:inline-grid}.muffler-effect-modal__beater--active{border-color:color-mix(in srgb, var(--accent) 58%, var(--border));background:color-mix(in srgb, var(--accent) 18%, var(--panel));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 26%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--accent) 52%, transparent)}.muffler-effect-modal__beater:hover,.muffler-effect-modal__beater:focus-visible{border-color:var(--accent);color:var(--text);opacity:1}.muffler-effect-modal__beater:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.muffler-effect-modal__beater:disabled{cursor:not-allowed;opacity:.42}.audio-player{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);box-shadow:var(--shadow-soft);gap:8px;padding:12px;display:grid}.collapsible-panel--collapsed{gap:0}.collapsible-panel__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;display:flex}.collapsible-panel__toggle{min-height:42px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;gap:8px;padding:0;font-size:1rem;font-weight:800;line-height:1.1;display:inline-flex}.collapsible-panel__toggle span:first-child{width:1em;color:var(--muted)}.collapsible-panel__toggle:focus-visible{outline:3px solid var(--accent-soft);outline-offset:4px}.collapsible-panel__body[hidden]{display:none}.audio-player__media{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.audio-player__waveform-wrap{gap:8px;display:grid;position:relative}.audio-player__body{gap:8px;display:grid}.audio-player__waveform{border-radius:calc(var(--radius-sm) - 2px);cursor:crosshair;touch-action:none;background:#f2f4f1;width:100%;height:clamp(72px,10.5vw,105px);display:block}.audio-player__status{border-radius:calc(var(--radius-sm) - 2px);background:color-mix(in srgb, var(--panel) 78%, transparent);color:var(--muted);text-align:center;place-items:center;padding:14px;font-weight:800;display:grid;position:absolute;inset:0 0 28px}.audio-player--error .audio-player__waveform{cursor:default}.audio-player__time-row{color:var(--muted);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;grid-template-columns:1fr auto 1fr;gap:12px;font-size:.9rem;display:grid}.audio-player__time-row span:nth-child(2){color:var(--accent);text-align:center}.audio-player__time-row span:nth-child(3){text-align:right}.audio-player__controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.audio-player__secondary-controls{flex-wrap:nowrap;flex:none;align-items:center;gap:10px;min-width:max-content;display:inline-flex}.play-button{border-color:var(--color-red);background:var(--color-red);width:48px;height:48px;color:var(--panel)}.control-button{width:48px;height:48px}.comparison-button__icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:3.2px;width:22px;height:22px;margin:auto;display:block;transform:translate(1px)}.comparison-button__arrowhead{fill:currentColor;stroke:none}.recording-submit-button__icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4px;width:23px;height:23px;margin:auto;display:block}.control-button--active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.play-button:disabled,.control-button:disabled,.script-session-waveform-control:disabled,.script-session-nudge-button:disabled,.melody-toggle-button:disabled{cursor:not-allowed;opacity:.55}.speed-control:has(input:disabled){cursor:not-allowed;opacity:.55}.speed-control{box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:min(240px,100%);min-height:48px;color:var(--text);align-items:center;gap:8px;padding:10px 12px;font-weight:800;display:inline-flex}.speed-control input{width:100%;min-width:120px;accent-color:var(--color-amber)}.speed-control strong{font-variant-numeric:tabular-nums;min-width:54px}.speed-stepper{border:1px solid color-mix(in srgb, var(--muted) 20%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 72%, #f2f4f1);touch-action:none;-webkit-user-select:none;user-select:none;grid-template-columns:24px minmax(68px,auto) 24px;align-items:stretch;height:42px;display:inline-grid;overflow:hidden}.speed-stepper--dragging{border-color:color-mix(in srgb, var(--accent) 42%, var(--border))}.speed-stepper-readout{min-width:72px;min-height:40px;color:var(--text);font-variant-numeric:tabular-nums;box-shadow:inset 1px 0 0 color-mix(in srgb, var(--border) 68%, transparent), inset -1px 0 0 color-mix(in srgb, var(--border) 68%, transparent);background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;padding:0 9px;font-size:.92rem;font-weight:650;line-height:1;display:inline-flex}.speed-stepper-readout span,.speed-stepper-readout .audio-emoji-control-icon{width:20px;color:var(--muted);text-align:center;flex:0 0 20px;font-size:1.02rem;line-height:1}.speed-stepper-readout strong{text-align:center;min-width:48px;font-weight:650;line-height:1}.audio-control-label-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4px;flex:0 0 22px;width:22px;height:22px}.audio-control-label-icon__fill{fill:currentColor;stroke:none}.audio-inline-control{box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:min(240px,100%);min-height:48px;color:var(--text);align-items:center;gap:8px;padding:10px 12px;font-weight:800;display:inline-flex}.audio-inline-control input[type=range]{width:100%;min-width:96px;accent-color:var(--color-amber)}.audio-inline-control strong{text-align:center;font-variant-numeric:tabular-nums;min-width:28px}.audio-inline-control--fader{pointer-events:none;opacity:0;visibility:hidden;width:min(280px,100%);height:42px;min-height:42px;clip-path:inset(0 6% 0 0 round var(--radius-sm));transition:opacity .18s,clip-path .22s cubic-bezier(.2,.8,.2,1),visibility 0s linear .22s;display:inline-flex}.audio-inline-control--fader-visible{pointer-events:auto;opacity:1;visibility:visible;clip-path:inset(0 0 0 0 round var(--radius-sm));transition:opacity .18s,clip-path .22s cubic-bezier(.2,.8,.2,1),visibility;display:inline-flex}.audio-fader-side{min-width:48px;color:var(--muted);justify-items:center;gap:1px;font-size:.74rem;line-height:1.1;display:inline-grid}.audio-fader-side strong{min-width:0;color:var(--text);text-align:center;font-size:.92rem}.audio-tool-button__icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.1px;width:22px;height:22px;margin:auto;display:block}.audio-emoji-control-icon{text-align:center;flex:0 0 24px;place-items:center;width:24px;height:24px;font-size:1.15rem;font-style:normal;font-weight:400;line-height:1;display:inline-grid}.audio-clickTrack-icon{align-content:center;justify-items:center;gap:0;line-height:1;display:inline-grid}.audio-clickTrack-icon .audio-emoji-control-icon{height:20px}.audio-clickTrack-icon__solo{color:var(--color-red);text-transform:uppercase;font-size:.55rem;font-weight:900;line-height:1}.student-recording-panel,.session-flowscript-panel{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);box-shadow:var(--shadow-soft);gap:10px;padding:12px;display:grid}.session-flowscript-panel__body{gap:10px;display:grid}.recording-header-tools,.recording-mode-buttons{align-items:center;gap:6px;display:inline-flex}.recording-header-tool{border:1px solid var(--border);background:var(--panel);width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:6px;place-items:center;padding:0;transition:border-color .14s,background-color .14s,color .14s,transform .14s;display:inline-grid}.recording-header-tool:hover,.recording-header-tool:focus-visible{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);transform:translateY(-1px)}.recording-header-tool--active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.recording-mode-label{min-width:56px;color:var(--muted);text-align:right;font-size:.76rem;font-weight:800;line-height:1}.recording-header-divider{background:var(--border);width:1px;height:22px;margin:0 2px}.recording-header-tool--submit{background:color-mix(in srgb, var(--color-red) 12%, var(--panel));border-color:color-mix(in srgb, var(--color-red) 36%, var(--border));color:var(--color-red)}.recording-header-tool--submit:hover,.recording-header-tool--submit:focus-visible{background:color-mix(in srgb, var(--color-red) 20%, var(--panel));border-color:var(--color-red);color:var(--color-red)}.recording-header-tool:disabled{cursor:not-allowed;opacity:.55;transform:none}.recording-header-tool:disabled:hover,.recording-header-tool:disabled:focus-visible{border-color:var(--border);background:var(--panel);color:var(--muted)}.recording-header-tool .audio-tool-button__icon,.recording-header-tool .recording-submit-button__icon{stroke-width:2.6px;width:18px;height:18px}.student-recording-panel__body{gap:8px;display:grid}.recording-submission-modal{z-index:40;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.recording-submission-modal__scrim{background:#1f2a266b;position:absolute;inset:0}.recording-submission-panel{z-index:1;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);gap:16px;width:min(460px,100%);padding:18px;display:grid;position:relative;box-shadow:0 20px 56px #1f2a263d}.recording-submission-panel--wide{width:min(560px,100%)}.recording-submission-panel__header,.recording-submission-panel__actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.recording-submission-panel__header p{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}.recording-submission-panel__header h2{color:var(--text);margin:2px 0 0;font-size:1.15rem;line-height:1.2}.recording-submission-panel__header button{border:1px solid var(--border);background:var(--panel);width:34px;height:34px;color:var(--muted);font:inherit;cursor:pointer;border-radius:50%;font-weight:800}.recording-submission-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.recording-submission-fields label{color:var(--text);gap:6px;font-size:.9rem;font-weight:800;display:grid}.recording-submission-fields input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:100%;min-height:42px;color:var(--text);font:inherit;padding:9px 12px}.recording-submission-fields input:focus-visible{border-color:var(--accent);outline:3px solid var(--accent-soft);outline-offset:2px}.recording-submission-help{color:var(--muted);margin:0;font-size:.95rem;font-weight:700}.recording-submission-password-field{color:var(--text);gap:6px;font-size:.9rem;font-weight:800;display:grid}.recording-submission-password-field input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:100%;min-height:42px;color:var(--text);font:inherit;padding:9px 12px}.recording-submission-password-field input:focus-visible{border-color:var(--accent);outline:3px solid var(--accent-soft);outline-offset:2px}.recording-submission-consent{color:var(--text);align-items:flex-start;gap:10px;font-size:.88rem;font-weight:700;line-height:1.35;display:flex}.recording-submission-consent input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin-top:1px}.recording-submission-options{border:1px solid var(--border);border-radius:var(--radius-sm);gap:10px;margin:0;padding:12px;display:grid}.recording-submission-options legend{color:var(--muted);padding:0 6px;font-size:.85rem;font-weight:800}.recording-submission-options label{min-height:34px;color:var(--text);align-items:center;gap:10px;font-weight:800;display:flex}.recording-submission-options input{width:18px;height:18px;accent-color:var(--accent)}.recording-submission-options--preview{max-height:min(320px,42vh);overflow:auto}.recording-submission-option{border:1px solid color-mix(in srgb, var(--border) 76%, transparent);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 86%, #f2f4f1);grid-template-columns:minmax(0,1fr) 38px;align-items:center;gap:10px;min-height:42px;padding:6px;display:grid}.recording-submission-option label{min-height:0}.recording-submission-option__meta{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:.78rem;font-weight:800}.recording-submission-option__play{border:1px solid color-mix(in srgb, var(--color-red) 40%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-red) 12%, var(--panel));width:38px;height:34px;color:var(--text);font:inherit;cursor:pointer;place-items:center;font-size:.9rem;font-weight:900;display:inline-grid}.recording-submission-option__play:hover,.recording-submission-option__play:focus-visible,.recording-submission-option__play--active{border-color:var(--color-red);background:color-mix(in srgb, var(--color-red) 20%, var(--panel))}.recording-submission-status{color:var(--accent);margin:0;font-size:.9rem;font-weight:800}.recording-submission-status--error{color:var(--color-red)}.recording-submission-success{color:var(--text);text-align:center;margin:4px 0;font-size:1rem;font-weight:800}.recording-submission-panel__actions button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);min-width:96px;height:42px;color:var(--text);font:inherit;cursor:pointer;padding:0 14px;font-weight:800}.recording-submission-panel__actions button:last-child{border-color:var(--accent);background:var(--accent);color:var(--panel)}.recording-submission-panel__actions--single{justify-content:center}.recording-submission-panel__actions--single button:last-child{border-color:var(--border);background:var(--panel);color:var(--text)}.recording-submission-panel__actions button:disabled,.recording-submission-panel__header button:disabled{cursor:not-allowed;opacity:.55}@media (width<=640px){.recording-submission-fields{grid-template-columns:1fr}}.recording-state{gap:8px;display:grid}.student-recording-panel__content{gap:10px;display:grid}.student-recording-panel__body p{color:var(--muted);margin:0;font-size:.92rem;font-weight:700}.recording-status--recording,.recording-status--error{color:var(--color-red)}.recording-waveform-placeholder{border:1px dashed color-mix(in srgb, var(--accent) 28%, var(--border));border-radius:calc(var(--radius-sm) - 2px);background:#f2f4f1;grid-template-columns:repeat(32,minmax(0,1fr));place-items:center;gap:0;height:clamp(64px,8vw,86px);padding:10px;display:grid;overflow:hidden}.recording-waveform-placeholder span{background:color-mix(in srgb, var(--accent) 26%, var(--border));border-radius:999px;width:4px;height:18%}.recording-waveform-placeholder span:nth-child(4n+1){height:34%}.recording-waveform-placeholder span:nth-child(4n+2){height:56%}.recording-waveform-placeholder span:nth-child(4n+3){height:42%}.recording-waveform-placeholder span:nth-child(8n+4){height:72%}.recording-live-visualization{border:1px solid color-mix(in srgb, var(--color-red) 34%, var(--border));border-radius:calc(var(--radius-sm) - 2px);background:#f2f4f1;grid-template-columns:repeat(28,minmax(0,1fr));place-items:center;gap:0;height:clamp(64px,8vw,86px);padding:10px;display:grid;overflow:hidden}.recording-live-visualization span{background:color-mix(in srgb, var(--color-red) 54%, var(--border));width:4px;height:18%;animation:.9s ease-in-out infinite recording-live-meter;animation-delay:calc(var(--bar-index,0) * -80ms);border-radius:999px}.recording-live-visualization span:nth-child(4n+1){--bar-index:1}.recording-live-visualization span:nth-child(4n+2){--bar-index:2}.recording-live-visualization span:nth-child(4n+3){--bar-index:3}.recording-live-visualization span:nth-child(4n+4){--bar-index:4}@keyframes recording-live-meter{0%,to{height:20%}50%{height:76%}}.student-recording-panel__actions{justify-content:flex-start;display:flex}.record-button{border:1px solid color-mix(in srgb, var(--color-red) 58%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-red) 18%, var(--panel));width:42px;min-width:42px;height:42px;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-red) 26%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--color-red) 52%, transparent);justify-content:center;align-items:center;padding:0;font-size:0;font-weight:900;line-height:1;display:inline-flex;overflow:hidden}.record-button__icon{fill:currentColor;flex:none;width:22px;height:22px;display:block}.record-button:disabled{cursor:not-allowed;opacity:.55}.record-button:hover,.record-button:focus-visible{border-color:color-mix(in srgb, var(--color-red) 70%, var(--border));background:color-mix(in srgb, var(--color-red) 24%, var(--panel));color:var(--text);transform:translateY(-1px)}.record-button--recording{border-color:color-mix(in srgb, var(--color-red) 76%, var(--border));background:color-mix(in srgb, var(--color-red) 30%, var(--panel));color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-red) 34%, transparent), inset 0 2px 0 color-mix(in srgb, var(--color-red) 30%, transparent)}.recording-waveform-player{gap:8px;width:100%;display:grid}.recording-waveform-player__media{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.recording-waveform-player__waveform{min-width:0;position:relative}.recording-waveform-player__canvas{border-radius:calc(var(--radius-sm) - 2px);background:#f2f4f1;border:0;width:100%;height:clamp(72px,10.5vw,105px);display:block}.recording-delete-button{border:1px solid color-mix(in srgb, var(--text) 16%, var(--border));background:color-mix(in srgb, var(--panel) 88%, transparent);width:26px;height:26px;color:var(--muted);font:inherit;cursor:pointer;border-radius:50%;place-items:center;padding:0;font-size:1rem;font-weight:800;line-height:1;display:inline-grid;position:absolute;top:50%;left:21px;transform:translate(-50%,-50%)}.recording-delete-button:hover,.recording-delete-button:focus-visible{border-color:var(--color-red);background:var(--panel);color:var(--color-red);transform:translate(-50%,-50%)}.recording-delete-button--header{border-radius:calc(var(--radius-sm) - 3px);width:28px;height:28px;color:var(--muted);box-shadow:none;background:0 0;flex:none;font-size:1rem;position:static;transform:none}.recording-delete-button--header:hover,.recording-delete-button--header:focus-visible{border-color:color-mix(in srgb, var(--color-red) 70%, var(--border));background:color-mix(in srgb, var(--color-red) 9%, var(--panel));color:var(--color-red);transform:none}.recording-waveform-player__controls{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:10px;font-size:.9rem;font-weight:800;display:flex}.recording-waveform-submit-control{margin-left:auto}.recording-waveform-submit-control:not(:disabled){border-color:color-mix(in srgb, var(--color-red) 36%, var(--border));background:color-mix(in srgb, var(--color-red) 12%, var(--panel));color:var(--color-red)}.recording-waveform-submit-control:not(:disabled):hover,.recording-waveform-submit-control:not(:disabled):focus-visible{border-color:var(--color-red);background:color-mix(in srgb, var(--color-red) 20%, var(--panel));color:var(--color-red)}.item-line-panel-stack{grid-template-rows:auto minmax(0,1fr);gap:10px;height:100%;min-height:0;transition:grid-template-rows .24s cubic-bezier(.22,1,.36,1);display:grid}.item-line-panel-stack--with-recording{grid-template-rows:auto auto minmax(0,1fr)}.item-line-panel-stack__reference,.item-line-panel-stack__recording,.item-line-panel-stack__flowscript{min-width:0}.item-line-panel-stack__flowscript{min-height:0}.item-line-flowscript-box{--script-session-flowscript-font-scale:1.18;height:100%;min-height:clamp(220px,32vh,360px)}.item-line-flowscript-box__measurement{visibility:hidden;pointer-events:none;position:absolute;top:14px;left:14px;right:14px}.gloss-translation-suffix{color:var(--muted);margin-left:.35em}.flowscript-text{overflow-wrap:anywhere;white-space:normal;flex-wrap:wrap;gap:2px;font-size:1.35rem;line-height:1.5}.flowscript-text>span{white-space:pre;flex:none}.timed-syllable-wrap{-webkit-user-select:none;user-select:none;align-items:baseline;display:inline-flex;position:relative}.timed-syllable-wrap--dragging{cursor:grabbing}.timed-token{border-radius:calc(var(--radius-sm) - 3px);color:inherit;cursor:pointer;font:inherit;line-height:inherit;touch-action:none;-webkit-user-select:none;user-select:none;white-space:pre;background:0 0;border:0}.timed-syllable{padding:0 2px}.timed-syllable .flowscript-blank+.flowscript-blank{margin-left:.12em}.timed-token:hover,.timed-token:focus-visible{color:var(--text);background:#f2f4f1}.timed-syllable-wrap--dragging .timed-token:hover,.timed-word-wrap--dragging .timed-token:hover{background:color-mix(in srgb, var(--color-amber) 24%, transparent);color:var(--color-amber)}.timed-token:focus-visible{outline:3px solid var(--border);outline-offset:2px}.timed-token--active{background:color-mix(in srgb, var(--color-red) 24%, transparent);color:var(--color-red)}.timed-token--selected,.timed-token--range-selected,.timed-token--selected.timed-token--range-selected{background:color-mix(in srgb, var(--script-session-range-color,var(--color-amber)) 24%, transparent);color:var(--script-session-range-color,var(--color-amber))}.timed-syllable-separator{border-radius:calc(var(--radius-sm) - 3px);min-width:1.35em;min-height:1.35em;color:var(--muted);cursor:pointer;font:inherit;line-height:inherit;white-space:pre;background:0 0;border:0;place-items:center;padding:0 .08em;display:inline-grid}.timed-syllable-separator:hover,.timed-syllable-separator:focus-visible{color:var(--text);background:#f2f4f1}.timed-syllable-separator:focus-visible{outline:3px solid var(--border);outline-offset:2px}.timed-boundary-wrap{display:inline-grid;position:relative}@keyframes timed-popover-enter{0%{opacity:0;transform:translate(-50%)translateY(6px)scale(.96)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes timed-floating-popover-enter{0%{opacity:0;transform:translate(-50%,calc(6px - 100%))scale(.96)}to{opacity:1;transform:translate(-50%,-100%)scale(1)}}@media (prefers-reduced-motion:reduce){.timed-boundary-popover,.timed-syllable-popover,.timed-word-popover{animation:none}}.timed-boundary-popover{border:1px solid var(--border);border-radius:var(--radius-sm);width:max-content;max-width:240px;color:var(--text);transform-origin:bottom;z-index:70;background:#fff;align-items:center;gap:8px;padding:10px;font-size:.82rem;font-weight:800;line-height:1.2;animation:.15s cubic-bezier(.18,.88,.32,1.08) timed-popover-enter;display:flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 22px 52px #1f2a263d,0 6px 16px #1f2a2624}.timed-boundary-popover:after{content:"";border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff;width:10px;height:10px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg);box-shadow:5px 5px 12px #1f2a2614}.timed-boundary-popover__action{border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent);width:34px;min-height:32px;color:var(--panel);cursor:pointer;font:inherit;flex:0 0 34px;place-items:center;padding:0;font-size:.82rem;font-weight:800;display:inline-grid}.timed-boundary-popover__action svg{stroke:currentColor;width:17px;height:17px}.timed-boundary-popover__action:hover,.timed-boundary-popover__action:focus-visible{background:color-mix(in srgb, var(--accent) 82%, var(--text))}.timed-boundary-popover__action:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.timed-boundary-popover.timed-popover--floating,.timed-syllable-popover.timed-popover--floating,.timed-word-popover.timed-popover--floating{left:var(--timed-popover-left);top:var(--timed-popover-top);z-index:140;animation:.15s cubic-bezier(.18,.88,.32,1.08) timed-floating-popover-enter;position:fixed;bottom:auto;transform:translate(-50%,-100%)}@media (prefers-reduced-motion:reduce){.timed-boundary-popover.timed-popover--floating,.timed-syllable-popover.timed-popover--floating,.timed-word-popover.timed-popover--floating{animation:none}}.timed-syllable-popover{border:1px solid var(--border);border-radius:var(--radius-sm);width:max-content;max-width:260px;color:var(--text);isolation:isolate;transform-origin:bottom;z-index:70;background:#fff;justify-content:space-between;align-items:center;gap:8px;padding:10px;font-size:.82rem;font-weight:700;line-height:1.2;animation:.15s cubic-bezier(.18,.88,.32,1.08) timed-popover-enter;display:flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 22px 52px #1f2a263d,0 6px 16px #1f2a2624}.timed-syllable-popover:after{content:"";border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff;width:10px;height:10px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg);box-shadow:5px 5px 12px #1f2a2614}.timed-syllable-popover__action{border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent);width:34px;min-height:32px;color:var(--panel);cursor:pointer;font:inherit;flex:0 0 34px;place-items:center;padding:0;font-size:.82rem;font-weight:800;display:inline-grid}.timed-syllable-popover__action svg{stroke:currentColor;width:17px;height:17px}.timed-syllable-popover__action:hover,.timed-syllable-popover__action:focus-visible{background:color-mix(in srgb, var(--accent) 82%, var(--text))}.timed-syllable-popover__action:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.timed-syllable-popover__phonemes{flex-wrap:wrap;align-items:center;gap:5px;min-width:0;display:flex}.timed-syllable-popover__phoneme{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));border-radius:var(--radius-sm);background:var(--accent-soft);min-width:30px;min-height:30px;color:var(--accent);cursor:pointer;font:inherit;place-items:center;padding:3px 7px;font-size:.95rem;font-weight:800;line-height:1;display:inline-grid}.timed-syllable-popover__phoneme:hover:not(:disabled),.timed-syllable-popover__phoneme:focus-visible:not(:disabled){border-color:var(--accent);background:color-mix(in srgb, var(--accent) 18%, var(--surface));color:var(--text)}.timed-syllable-popover__phoneme:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 35%, transparent);outline-offset:2px}.timed-syllable-popover__phoneme:disabled{cursor:not-allowed;opacity:.45}.flowscript-blank{border-bottom:3px solid var(--color-red);width:.75em;height:1em;display:inline-block;transform:translateY(.12em)}.flowscript-symbol--target{color:var(--color-red);font-weight:700}.reveal-control-row .flowscript-next-button{justify-self:start}.reveal-eye-button{border-color:var(--color-red);background:var(--color-red);width:48px;height:48px;color:var(--panel)}.reveal-eye-button svg{stroke:currentColor;width:22px;height:22px}.reveal-eye-button--revealed{background:var(--panel);color:var(--color-red)}.flowscript-next-button{border-color:var(--color-red);background:var(--color-red);min-width:72px;height:48px;color:var(--panel);padding:0 18px;font-weight:800}.timed-syllable-modal{z-index:70;background:#1f2a2657;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.timed-syllable-modal__dialog{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:min(920px,100%);max-height:calc(100vh - 40px);box-shadow:var(--shadow-strong);flex-direction:column;gap:12px;padding:16px;display:flex}.timed-syllable-modal__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.timed-syllable-modal__header p{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}.timed-syllable-modal__header h2{margin:2px 0 0;font-size:1.35rem;line-height:1.1}.timed-syllable-modal__header>button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:36px;height:36px;color:var(--text);cursor:pointer;font:inherit;place-items:center;font-size:1.25rem;line-height:1;display:inline-grid}.timed-syllable-modal__header>button:hover,.timed-syllable-modal__header>button:focus-visible{border-color:var(--accent)}.timed-syllable-modal__header>button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.timed-syllable-modal__title-row{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:2px;display:flex}.timed-syllable-modal__phonemes{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.timed-syllable-modal__phoneme{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));border-radius:var(--radius-sm);background:var(--accent-soft);min-width:30px;min-height:30px;color:var(--accent);cursor:pointer;font:inherit;place-items:center;padding:3px 7px;font-size:.95rem;font-weight:800;line-height:1;display:inline-grid}.timed-syllable-modal__phoneme:hover:not(:disabled),.timed-syllable-modal__phoneme:focus-visible:not(:disabled){border-color:var(--accent);background:color-mix(in srgb, var(--accent) 18%, var(--surface));color:var(--text)}.timed-syllable-modal__phoneme:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 35%, transparent);outline-offset:2px}.timed-syllable-modal__phoneme:disabled{cursor:not-allowed;opacity:.45}.timed-syllable-modal__time{color:var(--muted);font-variant-numeric:tabular-nums;margin:0;font-weight:800}.timed-syllable-modal__placeholder{aspect-ratio:16/9;border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--accent-soft) 42%, var(--panel));min-height:0;color:var(--text);grid-template-rows:minmax(0,1fr) auto auto auto;gap:14px;padding:22px;display:grid;overflow-y:auto}.timed-syllable-modal__logo-wrap{place-items:start;min-height:0;display:grid}.timed-syllable-modal__logo-wrap img{object-fit:contain;width:min(160px,42%);max-height:96px}.timed-syllable-modal__placeholder p{margin:0;font-weight:800;line-height:1.4}.timed-syllable-modal__placeholder ul{gap:10px;margin:0;padding-left:22px;display:grid}.timed-syllable-modal__placeholder li{line-height:1.35}.timed-word-wrap{-webkit-user-select:none;user-select:none;display:inline-grid;position:relative}:is(.timed-word-wrap:has(.timed-word-popover),.timed-syllable-wrap:has(.timed-syllable-popover)){z-index:60}.timed-word-wrap--dragging{cursor:grabbing}.timed-word{padding:0 3px}.written-word-blank{border-bottom:3px solid var(--color-red);width:2.7em;height:1em;display:inline-block;transform:translateY(.12em)}.timed-word-popover{border:1px solid var(--border);border-radius:var(--radius-sm);width:max-content;max-width:320px;color:var(--text);isolation:isolate;transform-origin:bottom;z-index:70;background:#fff;gap:8px;padding:10px;font-size:.82rem;font-weight:700;line-height:1.2;animation:.15s cubic-bezier(.18,.88,.32,1.08) timed-popover-enter;display:grid;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 22px 52px #1f2a263d,0 6px 16px #1f2a2624}.timed-word-popover:after{content:"";border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff;width:10px;height:10px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg);box-shadow:5px 5px 12px #1f2a2614}.timed-word-popover__flowscript,.timed-word-modal__flowscript{color:var(--muted);letter-spacing:0;margin:0;font-size:.95rem;font-weight:800;line-height:1.2}.timed-word-popover__flowscript-row,.timed-word-modal__flowscript-row,.timed-word-popover__controls,.timed-word-modal__controls{align-items:center;gap:8px;display:flex}.timed-word-popover__flowscript-row,.timed-word-modal__flowscript-row{justify-content:flex-start}.timed-word-popover__flowscript{flex:auto}.timed-word-popover__translation{color:var(--muted);letter-spacing:0;white-space:nowrap;font-size:.95rem;font-weight:700;line-height:1.2}.timed-word-popover__phonemes,.timed-word-modal__phonemes{flex-wrap:wrap;align-items:center;gap:5px;min-width:0;display:flex}.timed-word-popover__phoneme,.timed-word-modal__phoneme{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));border-radius:var(--radius-sm);background:var(--accent-soft);min-width:30px;min-height:30px;color:var(--accent);cursor:pointer;font:inherit;place-items:center;padding:3px 7px;font-size:.95rem;font-weight:800;line-height:1;display:inline-grid}.timed-word-popover__phoneme:hover:not(:disabled),.timed-word-popover__phoneme:focus-visible:not(:disabled),.timed-word-modal__phoneme:hover:not(:disabled),.timed-word-modal__phoneme:focus-visible:not(:disabled){border-color:var(--accent);background:color-mix(in srgb, var(--accent) 18%, var(--surface));color:var(--text)}.timed-word-popover__phoneme:focus-visible,.timed-word-modal__phoneme:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 35%, transparent);outline-offset:2px}.timed-word-popover__phoneme:disabled,.timed-word-modal__phoneme:disabled{cursor:not-allowed;opacity:.45}.timed-word-popover__action,.timed-word-modal__speaker{border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent);width:34px;min-height:32px;color:var(--panel);cursor:pointer;font:inherit;flex:0 0 34px;place-items:center;padding:0;font-size:.82rem;font-weight:800;display:inline-grid}.timed-word-popover__action svg,.timed-word-modal__speaker svg{stroke:currentColor;width:17px;height:17px}.timed-word-popover__action:hover,.timed-word-popover__action:focus-visible,.timed-word-modal__speaker:hover,.timed-word-modal__speaker:focus-visible{background:color-mix(in srgb, var(--accent) 82%, var(--text))}.timed-word-popover__action:focus-visible,.timed-word-modal__speaker:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.timed-syllable-popover__phoneme,.timed-word-popover__phoneme,.timed-syllable-popover__action,.timed-word-popover__action,.timed-boundary-popover__action{border:1px solid color-mix(in srgb, var(--accent) 58%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--accent) 18%, var(--panel));width:32px;min-width:32px;height:32px;min-height:32px;color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 26%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--accent) 52%, transparent);flex:0 0 32px;padding:4px 6px;font-size:1rem;line-height:1}.timed-syllable-popover__action,.timed-word-popover__action,.timed-boundary-popover__action{padding:0}.timed-syllable-popover__phoneme:hover:not(:disabled),.timed-syllable-popover__phoneme:focus-visible:not(:disabled),.timed-word-popover__phoneme:hover:not(:disabled),.timed-word-popover__phoneme:focus-visible:not(:disabled),.timed-syllable-popover__action:hover,.timed-syllable-popover__action:focus-visible,.timed-word-popover__action:hover,.timed-word-popover__action:focus-visible,.timed-boundary-popover__action:hover,.timed-boundary-popover__action:focus-visible{border-color:color-mix(in srgb, var(--accent) 70%, var(--border));background:color-mix(in srgb, var(--accent) 24%, var(--panel));color:var(--text)}.timed-syllable-popover__phoneme:active:not(:disabled),.timed-word-popover__phoneme:active:not(:disabled),.timed-syllable-popover__action:active,.timed-word-popover__action:active,.timed-boundary-popover__action:active{border-color:color-mix(in srgb, var(--accent) 76%, var(--border));background:color-mix(in srgb, var(--accent) 30%, var(--panel));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 34%, transparent), inset 0 2px 0 color-mix(in srgb, var(--accent) 30%, transparent)}.timed-syllable-popover__action--play{border-color:color-mix(in srgb, var(--color-red) 58%, var(--border));background:color-mix(in srgb, var(--color-red) 18%, var(--panel));color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-red) 26%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--color-red) 52%, transparent)}.timed-syllable-popover__action--play:hover,.timed-syllable-popover__action--play:focus-visible{border-color:color-mix(in srgb, var(--color-red) 70%, var(--border));background:color-mix(in srgb, var(--color-red) 24%, var(--panel));color:var(--text)}.timed-syllable-popover__action--play:active{border-color:color-mix(in srgb, var(--color-red) 76%, var(--border));background:color-mix(in srgb, var(--color-red) 30%, var(--panel));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-red) 34%, transparent), inset 0 2px 0 color-mix(in srgb, var(--color-red) 30%, transparent)}.timed-word-modal{z-index:70;background:#1f2a2657;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.timed-word-modal__dialog{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:min(920px,100%);max-height:calc(100vh - 40px);box-shadow:var(--shadow-strong);flex-direction:column;gap:12px;padding:16px;display:flex}.timed-word-modal__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.timed-word-modal__header p{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}.timed-word-modal__title-row{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:2px;display:flex}.timed-word-modal__header h2{margin:0;font-size:1.35rem;line-height:1.1}.timed-word-modal__header>button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:36px;height:36px;color:var(--text);cursor:pointer;font:inherit;place-items:center;font-size:1.25rem;line-height:1;display:inline-grid}.timed-word-modal__header>button:hover,.timed-word-modal__header>button:focus-visible{border-color:var(--accent)}.timed-word-modal__header>button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.timed-word-modal__time{color:var(--muted);font-variant-numeric:tabular-nums;margin:0;font-weight:800}.timed-word-modal__placeholder{aspect-ratio:16/9;border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--accent-soft) 42%, var(--panel));min-height:0;color:var(--text);grid-template-rows:minmax(0,1fr) auto auto;gap:14px;padding:22px;display:grid;overflow-y:auto}.timed-word-modal__logo-wrap{place-items:start;min-height:0;display:grid}.timed-word-modal__logo-wrap img{object-fit:contain;width:min(160px,42%);max-height:96px}.timed-word-modal__placeholder p{margin:0;font-weight:800;line-height:1.4}.timed-word-modal__placeholder ul{color:var(--text);margin:0;padding-left:20px;line-height:1.5}.script-session-line-modal{z-index:70;background:#1f2a2657;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.script-session-line-modal__dialog{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:min(920px,100%);max-height:calc(100vh - 40px);box-shadow:var(--shadow-strong);flex-direction:column;gap:12px;padding:16px;display:flex}.script-session-line-modal__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.script-session-line-modal__header>div{flex:auto;min-width:0}.script-session-line-modal__header p{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}.script-session-line-modal__header h2{margin:2px 0 0;font-size:1.35rem;line-height:1.1}.script-session-line-modal__header>button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:36px;height:36px;color:var(--text);cursor:pointer;font:inherit;place-items:center;font-size:1.25rem;line-height:1;display:inline-grid}.script-session-line-modal__header>button:hover,.script-session-line-modal__header>button:focus-visible{border-color:var(--accent)}.script-session-line-modal__header>button:disabled{color:color-mix(in srgb, var(--muted) 44%, var(--panel));cursor:default;opacity:.45}.script-session-line-modal__header>button:disabled:hover{border-color:var(--border)}.script-session-line-modal__header>button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.script-session-line-modal__nav{flex:0 0 36px;font-size:1.55rem;font-weight:900}.script-session-line-modal__translation{border:1px solid color-mix(in srgb, var(--accent) 34%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--accent-soft) 62%, var(--panel));gap:6px;margin:0;padding:14px 16px;display:grid}.script-session-line-modal__translation p{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:900;line-height:1}.script-session-line-modal__translation strong{color:var(--text);font-size:1.2rem;font-weight:900;line-height:1.25}.script-session-line-modal__body{border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--accent-soft) 42%, var(--panel));min-height:0;color:var(--text);gap:14px;padding:22px;display:grid;overflow-y:auto}.script-session-line-modal__section{gap:8px;display:grid}.script-session-line-modal__section+.script-session-line-modal__section{border-top:1px solid color-mix(in srgb, var(--border) 72%, transparent);padding-top:14px}.script-session-line-modal__section h3{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:900}.script-session-line-modal__section p{margin:0;font-weight:750;line-height:1.5}.script-session-line-modal__section ul{gap:10px;margin:0;padding-left:22px;line-height:1.45;display:grid}.script-session-line-modal__concepts{flex-wrap:wrap;gap:8px;padding-left:0;list-style:none;display:flex}.script-session-line-modal__concepts li{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border));background:color-mix(in srgb, var(--accent-soft) 64%, var(--panel));min-height:28px;color:color-mix(in srgb, var(--accent) 72%, var(--text));border-radius:999px;place-items:center;padding:4px 9px;font-size:.78rem;font-weight:850;line-height:1.15;display:inline-grid}.timed-word-modal__placeholder li{margin:6px 0}.symbols-tray{--symbols-tray-tab-width:44px;grid-template-columns:var(--symbols-tray-tab-width) minmax(0, 1fr);z-index:50;width:min(380px,100vw - 8px);max-height:min(620px,100vh - 32px);box-shadow:none;pointer-events:none;transform:translate(calc(100% - var(--symbols-tray-tab-width)), -50%);background:0 0;border:0;align-items:center;transition:transform .18s;display:grid;position:fixed;inset:50% 0 auto auto}.symbols-tray--open{transform:translateY(-50%)}.symbols-tray:not(.symbols-tray--open) .symbols-tray__content{visibility:hidden;opacity:0;transition:visibility 0s linear .18s,opacity .12s}.symbols-tray--open .symbols-tray__content{visibility:visible;opacity:1}.symbols-tray__toggle{width:var(--symbols-tray-tab-width);border-radius:var(--radius-sm) 0 0 var(--radius-sm);background:color-mix(in srgb, var(--panel) 88%, var(--bg));min-height:136px;box-shadow:var(--shadow-soft);pointer-events:auto;text-align:center;text-orientation:mixed;writing-mode:vertical-rl;border-right:0;grid-column:1;justify-content:center;justify-self:end;align-items:center;gap:6px;margin:0;padding:10px 8px;display:inline-flex}.symbols-tray__content{max-height:inherit;border:1px solid var(--border);border-radius:var(--radius-sm) 0 0 var(--radius-sm);background:color-mix(in srgb, var(--panel) 92%, var(--bg));box-shadow:var(--shadow-strong);pointer-events:auto;border-right:0;grid-column:2;grid-template-columns:1fr;align-items:start;gap:10px;padding:14px 16px;transition:visibility linear,opacity .12s;display:grid;overflow-y:auto}.symbols-tray--external-toggle{top:calc(var(--session-topbar-height) + 1px);right:0;bottom:var(--session-stage-bottom-buffer);z-index:30;width:var(--session-phoneme-tray-open-width);pointer-events:none;visibility:hidden;opacity:0;grid-template-columns:minmax(0,1fr);align-items:stretch;max-height:none;transition:opacity .14s,transform .19s,visibility 0s linear .18s;position:absolute;left:auto;overflow:hidden;transform:translate(calc(100% + 10px))}.symbols-tray--external-toggle.symbols-tray--open{pointer-events:auto;visibility:visible;opacity:1;transition:opacity .14s,transform .19s,visibility linear;transform:translate(0)}.symbols-tray--external-toggle .symbols-tray__content{height:100%;max-height:none;padding:18px 14px calc(18px + var(--session-panel-scroll-fade-height)) 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);grid-column:1;gap:10px}.symbols-tray--external-toggle.symbols-tray--bottom{width:auto;height:var(--session-phoneme-tray-open-height,clamp(148px, 22vh, 210px));inset:auto 0 0;transform:translateY(calc(100% + 10px))}.symbols-tray--external-toggle.symbols-tray--bottom.symbols-tray--open{transform:translateY(0)}.symbols-tray--external-toggle.symbols-tray--bottom .symbols-tray__content{border-radius:var(--radius-sm) var(--radius-sm) 0 0;grid-template-columns:none;grid-auto-columns:minmax(132px,1fr);grid-auto-flow:column;justify-content:stretch;gap:8px;padding:10px 16px 10px 10px;display:grid;overflow:auto hidden}.symbols-tray--external-toggle.symbols-tray--bottom:after{width:var(--session-panel-scroll-fade-height);background:linear-gradient(to right, transparent, var(--panel));height:calc(100% - 2px);inset:1px 1px auto auto}.symbols-tray__header{justify-content:space-between;align-items:start;gap:12px;display:flex}.symbols-tray__header h2{color:var(--text);margin:0;font-size:1.22rem;line-height:1.1}.symbols-tray__header span{color:var(--muted);font-size:.9rem;font-weight:700}.symbols-tray__summary{gap:2px;display:grid}.symbols-tray__summary span{display:block}.symbol-group{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);align-content:start;gap:7px;padding:8px;display:grid}.symbol-group h3{color:var(--muted);margin:0;font-size:.9rem}.symbol-group__buttons{place-items:start center;gap:6px;display:grid}.symbol-group__button-row{align-items:center;gap:6px;display:flex}.symbol-button{border:1px solid color-mix(in srgb, var(--color-amber) 58%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-amber) 18%, var(--panel));width:32px;min-width:32px;height:32px;min-height:32px;color:var(--text);font:inherit;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-amber) 26%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--color-amber) 52%, transparent);flex:0 0 32px;place-items:center;padding:4px 6px;font-size:1rem;font-weight:800;line-height:1;transition:background-color .14s,border-color .14s,box-shadow .12s,transform 90ms;display:inline-grid;transform:translateY(0)}.symbols-empty{color:var(--muted);text-align:center;grid-column:1/-1;margin:0}.icon-button:hover,.icon-button:focus-visible,.session-exit:hover,.session-exit:focus-visible,.row-icon--button:hover,.row-icon--button:focus-visible,.symbols-tray__toggle:hover,.symbols-tray__toggle:focus-visible,.control-button:hover,.control-button:focus-visible,.flowscript-next-button:hover,.flowscript-next-button:focus-visible,.symbol-button:hover,.symbol-button:focus-visible{border-color:color-mix(in srgb, var(--color-amber) 70%, var(--border));background:color-mix(in srgb, var(--color-amber) 24%, var(--panel))}.session-panel-toggle--active:hover,.session-panel-toggle--active:focus-visible{border-color:var(--border);background:var(--panel);box-shadow:none}.icon-button:focus-visible,.session-sidebar__item:focus-visible,.session-exit:focus-visible,.row-icon--button:focus-visible,.reveal-eye-button:focus-visible,.flowscript-next-button:focus-visible,.symbols-tray__toggle:focus-visible,.control-button:focus-visible,.play-button:focus-visible,.symbol-button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.symbol-button:active:not(:disabled){box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-amber) 32%, transparent), inset 0 -1px 0 color-mix(in srgb, var(--color-amber) 58%, transparent);transform:translateY(2px)}.breadcrumbs{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:.9rem;font-weight:700;display:flex}.breadcrumbs a{color:var(--accent);text-decoration:none}.breadcrumbs a:hover,.breadcrumbs a:focus-visible{text-decoration:underline}.lesson-back-button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--background);width:fit-content;min-height:42px;color:var(--accent);justify-content:center;align-items:center;padding:10px 14px;font-weight:800;text-decoration:none;display:inline-flex}.lesson-back-button:hover,.lesson-back-button:focus-visible{border-color:var(--accent)}.breadcrumbs a:focus-visible,.lesson-back-button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:3px}.tutorial-content,.empty-state{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);box-shadow:var(--shadow-soft);gap:18px;padding:24px;display:grid}.tutorial-content h2{color:var(--text);margin:0;font-size:1.35rem;line-height:1.2}.tutorial-readiness-notice{border-radius:var(--radius-sm);color:#5e4210;background:#fff7df;border:1px solid #d9a22661;max-width:72ch;margin:0;padding:14px 16px;font-weight:700;line-height:1.5}.tutorial-content p,.empty-state p{max-width:68ch;color:var(--text);line-height:1.7}.tutorial-callout,.tutorial-example{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--background);max-width:68ch;padding:14px 16px}.tutorial-example{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.tutorial-example code{color:var(--text);font:inherit}.tutorial-video{aspect-ratio:16/9;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--background);overflow:hidden}.tutorial-video iframe{border:0;width:100%;height:100%;display:block}.tutorial-image{gap:8px;margin:0;display:grid}.tutorial-image img{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--background);width:100%;display:block}.tutorial-image figcaption{color:var(--muted);font-size:.9rem;font-weight:700;line-height:1.4}.tutorial-phoneme-group{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--background);gap:10px;padding:16px;display:grid}.tutorial-phoneme-group h3{color:var(--text);margin:0;font-size:1.05rem;line-height:1.2}.tutorial-phoneme-buttons{flex-wrap:wrap;gap:8px;display:flex}.tutorial-phoneme-buttons button{border:1px solid color-mix(in srgb, var(--accent) 36%, var(--border));border-radius:var(--radius-sm);background:var(--panel);min-width:48px;min-height:44px;color:var(--accent);cursor:pointer;font:inherit;place-items:center;padding:8px 12px;font-size:1.15rem;font-weight:900;display:inline-grid}.tutorial-phoneme-buttons button:hover:not(:disabled),.tutorial-phoneme-buttons button:focus-visible:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.tutorial-phoneme-buttons button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.tutorial-phoneme-buttons button:disabled{cursor:not-allowed;opacity:.5}.tutorial-audio{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--background);gap:10px;padding:16px;display:grid}.tutorial-audio strong{color:var(--text);font-size:1.05rem;line-height:1.2}.tutorial-audio audio{width:100%}.tutorial-audio__flowscript{max-width:none;color:var(--text);margin:0;font-weight:700;line-height:1.5}.tutorial-audio__flowscript code{color:var(--accent);font:inherit;font-weight:900}.tutorial-next-lesson-button{border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent);width:fit-content;min-height:48px;color:var(--panel);box-shadow:var(--shadow-soft);justify-content:center;justify-self:end;align-items:center;padding:12px 18px;font-weight:900;text-decoration:none;display:inline-flex}.tutorial-next-lesson-button:hover,.tutorial-next-lesson-button:focus-visible{border-color:color-mix(in srgb, var(--accent) 82%, #000);background:color-mix(in srgb, var(--accent) 92%, #000)}.tutorial-next-lesson-button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:3px}.lesson-list{gap:10px;display:grid}.lesson-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);box-shadow:var(--shadow-soft);overflow:hidden}.lesson-row--open{border-color:color-mix(in srgb, var(--accent) 35%, var(--border));background:color-mix(in srgb, var(--accent-soft) 68%, var(--panel));box-shadow:0 16px 34px #0000001f}.lesson-row__summary{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.lesson-row__summary:hover,.lesson-row__summary:focus-visible{color:var(--accent)}.lesson-row__summary:focus-visible{outline:3px solid var(--accent-soft);outline-offset:-3px}.lesson-row__order{background:var(--accent-soft);width:38px;height:38px;color:var(--accent);border-radius:50%;place-items:center;font-size:.85rem;font-weight:800;display:inline-grid}.lesson-row__content{gap:4px;min-width:0;display:grid}.lesson-row__title{font-weight:800;line-height:1.2}.lesson-row__description{color:var(--muted);font-size:.95rem;line-height:1.4}.lesson-row__toggle{width:18px;height:18px;color:var(--accent);position:relative}.lesson-row__toggle:before,.lesson-row__toggle:after{content:"";background:currentColor;border-radius:999px;height:2px;position:absolute;inset:8px 2px auto}.lesson-row__toggle:after{transition:transform .16s;transform:rotate(90deg)}.lesson-row--open .lesson-row__toggle:after{transform:rotate(0)}.lesson-activities{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 14px 14px 64px;display:grid}.lesson-activity{border:1px solid var(--border);min-height:64px;color:var(--text);text-align:center;white-space:nowrap;background:#fff;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:10px 12px;font-weight:700;line-height:1.1;text-decoration:none;display:inline-flex}.lesson-activity__icon{min-width:30px;height:24px;color:var(--accent);justify-content:center;align-items:center;font-size:1.1rem;font-weight:900;line-height:1;display:inline-flex}.lesson-activity__icon:has(+span){letter-spacing:0}.lesson-activity:only-child{grid-column:1/-1;justify-self:center;width:100%;max-width:160px}.lesson-activity:hover,.lesson-activity:focus-visible{border-color:var(--accent);color:var(--accent)}.lesson-activity:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.route-card:hover,.route-card:focus-visible,.text-link:hover,.text-link:focus-visible{color:var(--accent)}.route-card:focus-visible,.text-link:focus-visible,.brand-link:focus-visible{outline:3px solid var(--accent-soft);outline-offset:3px}.route-params{gap:12px;max-width:520px;margin:0;display:grid}.route-params div{border:1px solid var(--border);background:var(--panel);border-radius:8px;grid-template-columns:140px 1fr;gap:16px;padding:16px;display:grid}.route-params dt{color:var(--muted);font-weight:700}.route-params dd{margin:0}.text-link{color:var(--accent);font-weight:700}.global-feedback-button{right:24px;bottom:max(24px, env(safe-area-inset-bottom));z-index:30;background:var(--accent);width:56px;height:56px;color:var(--panel);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;font-weight:800;transition:background .16s,box-shadow .16s,transform .16s;display:inline-flex;position:fixed;box-shadow:0 14px 34px #1f2a262e}.global-feedback-button span{width:30px;height:30px;color:var(--panel);border:2px solid;border-radius:50%;place-items:center;font-size:1.25rem;line-height:1;display:inline-grid}.global-feedback-button:hover,.global-feedback-button:focus-visible{background:color-mix(in srgb, var(--accent) 88%, var(--text));transform:translateY(-1px);box-shadow:0 16px 38px #1f2a2638}.global-feedback-button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:3px}.global-feedback-button--inline{z-index:auto;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:44px;height:44px;box-shadow:none;color:var(--text);flex:0 0 44px;position:static}.global-feedback-button--inline span{border-radius:calc(var(--radius-sm) - 4px);width:20px;height:20px;color:var(--text);border:1.8px solid;font-size:.9rem;line-height:1}.global-feedback-button--inline:hover,.global-feedback-button--inline:focus-visible{border-color:color-mix(in srgb, var(--color-amber) 70%, var(--border));background:color-mix(in srgb, var(--color-amber) 24%, var(--panel));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--text) 8%, transparent);transform:none}.app-shell:has(.session-workspace)>.global-feedback-button--floating{display:none}.app-shell:has(.script-session)>.global-feedback-button--floating{display:none}.feedback-modal{z-index:60;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.feedback-modal__scrim{cursor:pointer;background:#2024265c;border:0;position:absolute;inset:0}.feedback-panel{overscroll-behavior:contain;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);gap:16px;width:min(100%,480px);max-height:min(760px,100vh - 48px);padding:20px;display:grid;position:relative;overflow-y:auto;box-shadow:0 28px 72px #1f2a263d}.feedback-panel__header,.feedback-panel__actions{justify-content:space-between;align-items:center;gap:14px;display:flex}.feedback-panel__eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:.78rem;font-weight:800}.feedback-panel h2{color:var(--text);margin:0;font-size:1.35rem;line-height:1.2}.feedback-panel__close{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:40px;height:40px;color:var(--text);cursor:pointer;flex:none;place-items:center;font-size:1.35rem;line-height:1;display:inline-grid}.feedback-field{color:var(--text);gap:7px;font-weight:800;display:grid}.feedback-field input,.feedback-field select,.feedback-field textarea{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);width:100%;min-height:42px;color:var(--text);padding:9px 11px}.feedback-field input::placeholder,.feedback-field textarea::placeholder{color:var(--muted);font-style:italic;font-weight:400}.feedback-field select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 18px),calc(100% - 12px);background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:34px}.feedback-field input[type=file]{background:color-mix(in srgb, var(--panel) 82%, var(--accent-soft));cursor:pointer;border-style:dashed;align-content:center;min-height:72px;display:grid}.feedback-field textarea{resize:vertical}.feedback-field small{color:var(--muted);font-style:italic;font-weight:400}.feedback-fieldset{border:1px solid var(--border);border-radius:var(--radius-sm);margin:0;padding:12px}.feedback-fieldset legend{padding:0 4px}.feedback-fieldset label{color:var(--text);align-items:center;gap:8px;margin-right:16px;font-weight:700;display:inline-flex}.feedback-fieldset input{width:auto;min-height:0}.feedback-panel__contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.feedback-panel__status{color:var(--accent);margin:0;font-weight:800}.feedback-panel__secondary,.feedback-panel__submit{border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;min-height:42px;font:inherit;justify-content:center;align-items:center;padding:9px 14px;font-weight:800;display:inline-flex}.feedback-panel__secondary{background:var(--panel);color:var(--text)}.feedback-panel__submit{border-color:var(--accent);background:var(--accent);color:var(--panel)}.feedback-panel__submit:disabled{cursor:wait;opacity:.72}@media (width<=640px){.brand-link{padding:0 20px}.app-main{padding:48px 20px}.app-shell--dashboard .app-main{padding:0}.beta-dashboard__brand{gap:14px;min-height:78px;padding:14px 20px}.beta-dashboard__logo{width:48px;height:48px}.beta-dashboard__title-row{gap:4px 8px}.beta-dashboard__title-row h1{font-size:1.3rem}.beta-dashboard__title-row span{font-size:1rem}.beta-dashboard__content{gap:18px;padding:24px 20px 40px}.dashboard-section,.dashboard-section--sessions{padding:14px}.dashboard-session-grid,.dashboard-grid--intro,.announcement-feature,.office-hours-grid,.tracker-grid{grid-template-columns:1fr}.dashboard-language-card{gap:14px;min-height:92px;padding:16px}.dashboard-language-card__icon{width:48px;height:48px;font-size:1.35rem}.dashboard-language-card__label{font-size:1.65rem}.dashboard-video-card__preview strong{font-size:1.2rem}.dashboard-video-card__play{width:56px;height:56px;font-size:1.2rem}.office-hours-card{padding:14px}.office-hours-card__actions a,.office-hours-card__actions button{flex:150px}.dashboard-modal{align-items:stretch;padding:20px}.dashboard-modal__panel{max-height:calc(100vh - 40px);padding:18px}.dashboard-modal__tracker{grid-template-columns:1fr}.session-workspace,.session-workspace--sidebar-closed{--session-sidebar-open-width:min(176px, 38vw);--session-phoneme-tray-open-width:min(204px, 46vw);grid-template-columns:minmax(0,1fr);height:100vh;min-height:0;margin:0;overflow:hidden}.session-sidebar{width:var(--session-sidebar-open-width);border-right:1px solid var(--border);border-bottom:0;min-height:0;overflow:hidden}.session-stage{padding:0 16px var(--session-stage-bottom-buffer);grid-area:1/1;overflow:hidden auto}.session-bar{margin:0 -16px 12px;padding:6px 12px}.session-reveal-stack{margin-left:12px}.session-row,.reveal-control-row{grid-template-columns:48px minmax(0,1fr)}.reveal-eye-button{width:48px}.global-feedback-button--floating{right:16px;bottom:max(16px, env(safe-area-inset-bottom));width:50px;height:50px}.global-feedback-button--floating span{width:28px;height:28px;font-size:1.1rem}.feedback-modal{place-items:center;padding:12px}.feedback-panel{width:100%;max-height:calc(100vh - 24px);padding:16px}.feedback-panel__contact-grid{grid-template-columns:1fr}.symbols-tray:not(.symbols-tray--external-toggle){grid-column:auto}.symbols-tray--external-toggle:not(.symbols-tray--bottom){width:var(--session-phoneme-tray-open-width)}.symbols-tray__content,.selection-grid{grid-template-columns:1fr}.selection-card{min-height:112px;padding:18px}.session-path-grid,.session-mode-grid,.item-set-grid,.item-set-grid--featured,.scribe-setup-summary,.scribe-setup-summary--wide,.custom-builder-layout,.custom-session-row{grid-template-columns:1fr}.session-path-card,.item-set-card,.session-mode-card{min-height:112px;padding:16px}.session-path-card__title{font-size:1.3rem}.session-flow-panel{padding:18px}.session-flow-actions,.custom-session-row__actions{justify-content:stretch}.custom-builder-summary{position:static}.segmented-control{width:100%}.segmented-control__button{flex:1}.session-flow-button{flex:140px}.tutorial-content,.empty-state{padding:18px}.route-params div{grid-template-columns:1fr;gap:4px}.lesson-row__summary{grid-template-columns:auto minmax(0,1fr) auto;gap:12px;padding:14px}.lesson-row__order{width:38px;height:38px}.lesson-activities{grid-template-columns:repeat(3,minmax(0,1fr));padding:0 14px 14px}.lesson-activity{min-width:0;padding-left:8px;padding-right:8px}}@media (height<=820px){.session-stage{padding-top:0;padding-bottom:var(--session-stage-bottom-buffer);gap:6px}.session-bar{gap:6px}.session-exit{min-height:36px;padding:8px 12px}.session-target-phonemes{gap:6px 10px;font-size:.82rem}.session-target-phonemes__list{gap:4px}.session-target-phoneme{min-width:28px;min-height:28px;padding:3px 7px;font-size:.95rem}.recording-header-tool{width:28px;height:28px}.recording-header-tool .audio-tool-button__icon,.recording-header-tool .recording-submit-button__icon{width:16px;height:16px}.audio-player{gap:6px;padding:8px}.audio-player__waveform-wrap{gap:5px}.session-reveal-stack{gap:6px;width:calc(100% - 8px);margin-left:8px}.session-row,.reveal-control-row{gap:8px}.audio-player__waveform,.recording-waveform-player__canvas{height:clamp(63px,10.5vh,89px)}.audio-player__time-row{font-size:.78rem}.audio-player__controls{gap:8px}.row-content{padding:8px 12px;font-size:1rem}.flowscript-text{font-size:1.18rem;line-height:1.35}}@media (height<=680px){.session-stage{padding-top:8px;padding-bottom:var(--session-stage-bottom-buffer);gap:4px}.session-exit{min-height:32px;padding:6px 10px;font-size:.82rem}.audio-player__waveform{height:clamp(66px,13.5vh,84px)}.play-button,.control-button,.row-icon,.reveal-eye-button{width:44px;height:44px}.recording-waveform-player__canvas{height:clamp(66px,13.5vh,84px)}.session-row,.reveal-control-row{grid-template-columns:44px minmax(0,1fr)}.row-content{min-height:44px;padding:6px 10px}.flowscript-next-button{height:44px}}.script-session,.scribe-setup,.scribe-results{--scribe-error:#b95767;--scribe-error-soft:#faecef;--scribe-error-ink:#8e3447;--script-session-range-color:var(--color-amber);--script-session-range-soft:var(--color-amber-soft)}.app-main:has(>.script-session){flex:1;width:100%;height:auto;min-height:0;padding:0;overflow:hidden}.app-main:has(>.scribe-setup){width:100%;height:calc(100vh - 47px);padding:18px 20px;overflow:hidden}.script-session{--session-topbar-height:56px;--session-stage-bottom-buffer:14px;--session-panel-scroll-fade-height:34px;--script-session-stage-side-padding:20px;--script-session-stage-top-padding:10px;--script-session-stage-gap:16px;--script-session-video-panel-default-width:clamp(220px, var(--script-session-video-panel-fit-width,clamp(220px, 24vw, 330px)), 50vw);--script-session-video-panel-open-width:clamp(var(--script-session-video-panel-default-width), var(--script-session-video-panel-user-width,var(--script-session-video-panel-default-width)), 50vw);--script-session-video-panel-width:var(--script-session-video-panel-open-width);--script-session-video-panel-offset:calc(var(--script-session-video-panel-width) + var(--script-session-stage-gap));--script-session-phoneme-tray-open-width:clamp(224px, 19vw, 252px);--script-session-phoneme-tray-open-height:clamp(132px, 17vh, 156px);--script-session-phoneme-tray-height:0px;--script-session-recording-transition-duration:.36s;--script-session-recording-transition-ease:cubic-bezier(.22, 1, .36, 1);--script-session-scribe-range-color:var(--color-amber);--script-session-scribe-range-soft:var(--color-amber-soft);--script-session-scribe-control-color:#607486;background:var(--bg);grid-template-rows:auto minmax(0,1fr);width:100%;height:100vh;min-height:0;margin:0;display:grid;position:relative;overflow:hidden}.script-session--video-closed{--script-session-video-panel-width:0px;--script-session-video-panel-offset:0px}.script-session--phoneme-open{--script-session-phoneme-tray-height:var(--script-session-phoneme-tray-open-height)}.script-session__session-bar{margin:0;padding:6px 16px}.script-session__workspace{height:100%;min-height:0;padding:var(--script-session-stage-top-padding) var(--script-session-stage-side-padding) var(--session-stage-bottom-buffer);grid-template-columns:minmax(0,1fr);align-items:stretch;display:grid;position:relative;overflow:hidden}.script-session__workspace>.script-session-flowscript-column{height:calc(100% - var(--script-session-phoneme-tray-height));min-height:0}.script-session__workspace>.script-session-flowscript-column>.session-stage{height:100%;min-height:0;padding-bottom:0;overflow:hidden}.script-session__video-panel{top:var(--script-session-stage-top-padding);bottom:calc(var(--session-stage-bottom-buffer) + var(--script-session-phoneme-tray-height));left:var(--script-session-stage-side-padding);z-index:30;width:var(--script-session-video-panel-open-width);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);pointer-events:auto;min-height:0;padding:10px;transition:bottom .19s,left .19s,opacity .14s,transform .19s,width .19s;display:grid;position:absolute;overflow:hidden}.script-session--trainer-closed:not(.script-session--video-closed) .script-session__video-panel{left:var(--script-session-stage-side-padding);width:calc(100% - (var(--script-session-stage-side-padding) * 2))}.script-session--video-closed .script-session__video-panel{opacity:0;pointer-events:none;transition:opacity .14s,transform .19s;transform:translate(calc(-100% - 10px))}.script-session__video-resize-handle{top:var(--script-session-stage-top-padding);bottom:calc(var(--session-stage-bottom-buffer) + var(--script-session-phoneme-tray-height));left:calc(var(--script-session-stage-side-padding) + var(--script-session-video-panel-width) + (var(--script-session-stage-gap) * .5) - 9px);z-index:34;cursor:ew-resize;touch-action:none;background:0 0;border:0;width:18px;padding:0;transition:bottom .19s,opacity .14s,transform .19s;position:absolute}.script-session__video-resize-handle:before{content:"";background:color-mix(in srgb, var(--border) 84%, var(--muted));border-radius:999px;width:1px;transition:background-color .14s,box-shadow .14s,width .14s;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.script-session__video-resize-handle:hover:before,.script-session__video-resize-handle:focus-visible:before,.script-session--video-resizing .script-session__video-resize-handle:before{background:color-mix(in srgb, var(--color-amber) 64%, var(--border));width:3px;box-shadow:0 0 0 5px color-mix(in srgb, var(--color-amber) 14%, transparent)}.script-session__video-resize-handle:focus-visible{outline:none}.script-session--video-closed .script-session__video-resize-handle{opacity:0;pointer-events:none;transform:translate(calc(-100% - 10px))}.script-session--video-resizing,.script-session--video-resizing *{cursor:ew-resize;-webkit-user-select:none;user-select:none}.script-session--video-resizing .script-session__video-panel,.script-session--video-resizing .script-session__video-resize-handle,.script-session--video-resizing .script-session-flowscript-column,.script-session--video-resizing .script-session-flowscript-column>.session-stage{transition:none}.script-session__video-frame{border:1px solid var(--border);border-radius:var(--radius-sm);cursor:grab;touch-action:none;background:#fff;place-items:center;min-height:0;padding:0;display:grid;position:relative;overflow:hidden}.script-session__video-timeline-zone{z-index:2;height:33.333%;position:absolute;bottom:0;left:0;right:0}.script-session__video-timeline{z-index:2;appearance:none;cursor:pointer;opacity:0;touch-action:none;background:0 0;width:auto;height:16px;margin:0;transition:opacity .12s;position:absolute;bottom:18px;left:10px;right:10px}.script-session__video-timeline-zone:hover .script-session__video-timeline,.script-session__video-timeline-zone:focus-within .script-session__video-timeline,.script-session__video-timeline:hover,.script-session__video-timeline:focus,.script-session__video-timeline:focus-visible{opacity:.9}.script-session__video-timeline::-webkit-slider-runnable-track{background:#d0d3d1;border-radius:999px;height:4px;box-shadow:0 1px 2px #00000042}.script-session__video-timeline::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border:1px solid #9aa09c;border-radius:50%;width:12px;height:12px;margin-top:-4px;box-shadow:0 1px 3px #00000052}.script-session__video-timeline::-moz-range-track{background:#d0d3d1;border-radius:999px;height:4px;box-shadow:0 1px 2px #00000042}.script-session__video-timeline::-moz-range-thumb{background:#fff;border:1px solid #9aa09c;border-radius:50%;width:12px;height:12px;box-shadow:0 1px 3px #00000052}.script-session__video{width:min(100%, var(--script-session-video-base-width,100%));height:min(100%, var(--script-session-video-base-height,100%));object-fit:contain;border-radius:var(--radius-sm);cursor:inherit;touch-action:none;transform:translate3d(var(--script-session-video-pan-x,0), var(--script-session-video-pan-y,0), 0) scale(var(--script-session-video-zoom,1));transform-origin:50%;-webkit-user-select:none;user-select:none;background:#fff;transition:transform .12s;display:block}.script-session__video-frame:has(.script-session__video--panning){cursor:grabbing}.script-session__video--panning{cursor:grabbing;transition:none}.script-session .script-session-flowscript-column{margin-left:var(--script-session-video-panel-offset);transition:height .19s,margin-left .19s;position:relative}.script-session .item-line-panel-stack{transition:none}.script-session .symbols-tray--external-toggle{width:var(--script-session-phoneme-tray-open-width);top:0;bottom:0}.script-session .symbols-tray--bottom.symbols-tray--external-toggle{height:var(--script-session-phoneme-tray-open-height);width:auto;position:fixed;top:auto;bottom:0}.script-session .symbols-tray--bottom .symbol-group{justify-items:center;min-width:0;padding:6px 4px}.script-session .symbols-tray--bottom .symbol-group h3{text-align:center;width:100%;font-size:.78rem}.script-session .symbols-tray--bottom .symbol-group__buttons{gap:4px;width:100%}.script-session .symbols-tray--bottom .symbol-group__button-row{justify-content:center;gap:4px;width:100%}.script-session .symbols-tray--bottom .symbol-button{border-color:color-mix(in srgb, var(--muted) 26%, var(--border));border-bottom-color:color-mix(in srgb, var(--muted) 58%, var(--border));background:color-mix(in srgb, var(--panel) 88%, #f2f4f1);width:28px;min-width:28px;height:28px;min-height:28px;color:color-mix(in srgb, var(--text) 72%, var(--muted));box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--muted) 18%, transparent);flex-basis:28px}.script-session .symbols-tray--bottom .symbol-button:hover:not(:disabled),.script-session .symbols-tray--bottom .symbol-button:focus-visible:not(:disabled){border-color:color-mix(in srgb, var(--muted) 38%, var(--border));border-bottom-color:color-mix(in srgb, var(--muted) 66%, var(--border));background:color-mix(in srgb, var(--panel) 82%, #eef0ed);color:color-mix(in srgb, var(--text) 78%, var(--muted));box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--muted) 22%, transparent)}.script-session .symbols-tray--bottom .symbol-button:active:not(:disabled){border-color:color-mix(in srgb, var(--muted) 44%, var(--border));border-bottom-color:color-mix(in srgb, var(--muted) 70%, var(--border));background:color-mix(in srgb, var(--panel) 78%, #eef0ed);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--muted) 16%, transparent), inset 0 1px 0 color-mix(in srgb, var(--muted) 18%, transparent)}.script-session .script-session-flowscript-column>.session-stage{padding-bottom:var(--session-stage-bottom-buffer);transition:opacity .14s,transform .19s,visibility linear}.script-session--trainer-closed .script-session-flowscript-column{pointer-events:none}.script-session--trainer-closed .script-session-flowscript-column>.session-stage{visibility:hidden;opacity:0;transition:opacity .14s,transform .19s,visibility 0s linear .18s;transform:translate(calc(100% + 10px))}.script-session--trainer-closed .script-session-flowscript-column .symbols-tray{pointer-events:auto}.script-session--trainer-closed .script-session__video-resize-handle{opacity:0;pointer-events:none}.scribe-setup{align-items:start;width:min(100%,1040px);height:100%;min-height:0;margin:0 auto;padding:4px 14px;display:grid;overflow:auto}.scribe-results{z-index:120;background:color-mix(in srgb, var(--text) 24%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.scribe-setup__panel,.scribe-results__panel{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);box-shadow:var(--shadow-soft);gap:18px;padding:22px;display:grid}.scribe-setup__panel{width:100%;box-shadow:none;gap:10px;padding:11px 20px}.scribe-results__panel{width:min(100%,760px);max-height:min(86vh,720px);overflow:auto}.scribe-setup__header,.scribe-results__header{justify-content:space-between;align-items:start;gap:18px;display:flex}.scribe-results__header{grid-template-columns:minmax(0,1fr) minmax(0,calc(33.3333% - 6.66667px));display:grid}.scribe-results__headline{gap:7px;display:grid}.scribe-results__score-line{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.scribe-setup__header{justify-content:space-between;align-items:start;gap:16px;display:flex}.scribe-setup__title{gap:5px;min-width:0;display:grid}.scribe-setup__header p,.scribe-results__header p{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:800}.scribe-setup__header h1{margin:0;font-size:clamp(1.35rem,2.3vw,1.85rem);font-weight:900;line-height:1.05}.scribe-setup__start-button{background:color-mix(in srgb, var(--accent) 78%, var(--text));justify-content:center;align-self:start;min-width:140px;min-height:42px}.scribe-setup__header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.scribe-results__header h1{color:var(--accent);font-variant-numeric:tabular-nums;margin:0;font-size:clamp(3rem,8vw,5.4rem);line-height:.95}.scribe-results__score-complete{color:color-mix(in srgb, var(--text) 56%, var(--muted));font-variant-numeric:tabular-nums;white-space:nowrap;font-size:clamp(1rem,2.3vw,1.35rem);font-weight:900;line-height:1}.scribe-setup__section{border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 96%, var(--bg));gap:9px;padding:13px 18px;display:grid}.scribe-setup__section h2{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.82rem;font-weight:900}.scribe-setup__section-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.scribe-setup__section-header>span{color:var(--muted);font-size:.86rem;font-weight:800}.scribe-option-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.scribe-option-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.scribe-option-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.scribe-option{border:1px solid color-mix(in srgb, var(--muted) 22%, var(--border));border-bottom:2px solid color-mix(in srgb, var(--muted) 40%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 96%, #f2f4f1);min-height:40px;color:color-mix(in srgb, var(--text) 78%, var(--muted));cursor:pointer;font:inherit;text-align:left;box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--muted) 14%, transparent);align-items:center;gap:10px;padding:7px 14px;transition:background-color .14s,border-color .14s,box-shadow .14s,color .14s;display:flex}.scribe-option:hover,.scribe-option:focus-visible{border-color:color-mix(in srgb, var(--accent) 40%, var(--border));border-bottom-color:color-mix(in srgb, var(--accent) 52%, var(--border));background:color-mix(in srgb, var(--panel) 90%, #eef0ed)}.scribe-option:focus-visible,.scribe-action-button:focus-visible,.scribe-phoneme-group__toggle:focus-visible,.scribe-phoneme-super:focus-visible,.scribe-phoneme-chip:focus-visible,.scribe-blank__choice-trigger:focus-visible,.scribe-blank__input:focus-visible,.scribe-choice-strip__option:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.scribe-option--selected,.scribe-option--primary{border-color:color-mix(in srgb, var(--accent) 62%, var(--border));border-bottom-color:color-mix(in srgb, var(--accent) 78%, var(--border));background:color-mix(in srgb, var(--accent) 7%, var(--panel));color:color-mix(in srgb, var(--text) 92%, var(--accent));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 14%, transparent)}.scribe-option span{font-size:.96rem;font-weight:900;line-height:1.1}.scribe-option__icon{width:1.35em;color:color-mix(in srgb, var(--muted) 90%, var(--text));place-items:center;font-size:1.05rem;font-weight:900;display:inline-grid}.scribe-option__label{min-width:0}.scribe-option small{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:.9rem;font-weight:900;line-height:1.25}.scribe-phoneme-chip-grid{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.scribe-phoneme-group-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 12px;display:grid}.scribe-phoneme-super-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px;display:grid}.scribe-phoneme-super{border:1px solid color-mix(in srgb, var(--muted) 22%, var(--border));border-bottom:2px solid color-mix(in srgb, var(--muted) 40%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 96%, #f2f4f1);min-height:42px;color:color-mix(in srgb, var(--text) 78%, var(--muted));cursor:pointer;font:inherit;text-align:left;box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--muted) 14%, transparent);justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;display:flex}.scribe-phoneme-super:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--border));border-bottom-color:color-mix(in srgb, var(--accent) 52%, var(--border));background:color-mix(in srgb, var(--panel) 90%, #eef0ed)}.scribe-phoneme-super--mixed{border-color:color-mix(in srgb, var(--accent) 38%, var(--border))}.scribe-phoneme-super--selected{border-color:color-mix(in srgb, var(--accent) 62%, var(--border));border-bottom-color:color-mix(in srgb, var(--accent) 78%, var(--border));background:color-mix(in srgb, var(--accent) 7%, var(--panel));color:color-mix(in srgb, var(--text) 92%, var(--accent));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 14%, transparent)}.scribe-phoneme-super__label{align-items:center;gap:10px;min-width:0;display:inline-flex}.scribe-phoneme-super__icon{width:1.35em;color:color-mix(in srgb, var(--muted) 90%, var(--text));place-items:center;font-size:1.05rem;font-weight:900;display:inline-grid}.scribe-phoneme-super__label span:last-child{font-size:.98rem;font-weight:900;line-height:1.1}.scribe-phoneme-super small{color:var(--muted);font-size:.8rem;font-weight:800;line-height:1}.scribe-phoneme-group{border:1px solid color-mix(in srgb, var(--muted) 22%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 98%, #f2f4f1);align-content:start;gap:7px;padding:8px 10px;display:grid}.scribe-phoneme-group--mixed{border-color:color-mix(in srgb, var(--accent) 38%, var(--border))}.scribe-phoneme-group--selected{border-color:color-mix(in srgb, var(--accent) 48%, var(--border));background:color-mix(in srgb, var(--accent) 5%, var(--panel));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 12%, transparent)}.scribe-phoneme-group__toggle{min-height:22px;color:var(--text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:0;display:flex}.scribe-phoneme-group__toggle:hover span{color:var(--accent)}.scribe-phoneme-group__toggle span{text-transform:none;font-size:.88rem;font-weight:900;line-height:1.1}.scribe-phoneme-group__toggle small{color:var(--muted);font-size:.78rem;font-weight:800;line-height:1}.scribe-phoneme-group__symbols{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.scribe-phoneme-chip{border:1px solid color-mix(in srgb, var(--muted) 26%, var(--border));border-bottom-color:color-mix(in srgb, var(--muted) 58%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 88%, #f2f4f1);width:32px;min-width:32px;height:32px;min-height:32px;color:color-mix(in srgb, var(--text) 72%, var(--muted));cursor:pointer;font:inherit;box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--muted) 18%, transparent);flex:0 0 32px;place-items:center;padding:4px 6px;font-size:1rem;font-weight:800;line-height:1;transition:background-color .14s,border-color .14s,box-shadow .12s,transform 90ms;display:inline-grid;transform:translateY(0)}.scribe-phoneme-chip:hover:not(:disabled),.scribe-phoneme-chip:focus-visible:not(:disabled){border-color:color-mix(in srgb, var(--muted) 38%, var(--border));border-bottom-color:color-mix(in srgb, var(--muted) 66%, var(--border));background:color-mix(in srgb, var(--panel) 82%, #eef0ed);color:color-mix(in srgb, var(--text) 78%, var(--muted));box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--muted) 22%, transparent)}.scribe-phoneme-chip:active:not(:disabled){border-color:color-mix(in srgb, var(--muted) 44%, var(--border));border-bottom-color:color-mix(in srgb, var(--muted) 70%, var(--border));background:color-mix(in srgb, var(--panel) 78%, #eef0ed);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--muted) 16%, transparent), inset 0 1px 0 color-mix(in srgb, var(--muted) 18%, transparent)}.scribe-phoneme-chip--selected{border-color:color-mix(in srgb, var(--accent) 58%, var(--border));border-bottom-color:color-mix(in srgb, var(--accent) 74%, var(--border));background:color-mix(in srgb, var(--accent) 9%, var(--panel));color:color-mix(in srgb, var(--accent) 88%, var(--text));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 14%, transparent), inset 0 -1px 0 color-mix(in srgb, var(--accent) 24%, transparent)}.scribe-count-preview{color:var(--muted);flex-wrap:wrap;gap:8px;font-size:.86rem;font-weight:800;display:flex}.scribe-count-preview span{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:6px 9px}.scribe-count-preview--header{justify-content:flex-end}.scribe-count-preview--header span{white-space:nowrap;justify-content:center;align-items:center;min-width:140px;min-height:40px;display:inline-flex}.scribe-setup__actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.scribe-action-button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);min-height:40px;color:var(--text);cursor:pointer;font:inherit;padding:8px 13px;font-size:.9rem;font-weight:900}.scribe-action-button:hover:not(:disabled),.scribe-action-button:focus-visible:not(:disabled){border-color:var(--accent)}.scribe-action-button--primary{border-color:var(--accent);background:var(--accent);color:var(--panel)}.scribe-action-button--quiet{color:var(--muted)}.scribe-action-button:disabled,.script-session-tier-toggle:disabled{cursor:not-allowed;opacity:.55}.scribe-feedback-panel{box-sizing:border-box;min-width:0}.scribe-feedback-panel__meta{min-height:var(--script-session-panel-label-height);color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:.04em;font-size:.82rem;font-weight:800;line-height:var(--script-session-panel-label-height);text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.scribe-feedback-panel__meta-item{white-space:nowrap;align-items:baseline;gap:6px;min-width:0;display:inline-flex}.scribe-feedback-panel__meta-item:last-child{text-align:right;justify-content:flex-end;margin-left:auto}.scribe-feedback-panel__meta-item span{text-overflow:ellipsis;overflow:hidden}.scribe-feedback-panel__meta strong{color:color-mix(in srgb, var(--muted) 78%, transparent);letter-spacing:0;text-transform:none;font-size:.82rem;font-weight:700}.scribe-feedback-panel__metrics{min-height:var(--script-session-panel-waveform-height);grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.scribe-feedback-panel__metric{border:1px solid var(--border);border-radius:calc(var(--radius-sm) - 2px);background:color-mix(in srgb, var(--panel) 88%, #f2f4f1);min-width:0;color:var(--text);font-variant-numeric:tabular-nums;align-content:center;gap:7px;padding:10px 12px;display:grid}.scribe-feedback-panel__metric span{color:var(--muted);letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.68rem;font-weight:900;line-height:1;overflow:hidden}.scribe-feedback-panel__metric strong{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.6rem,3.2vw,2.15rem);font-weight:900;line-height:1;overflow:hidden}.scribe-feedback-panel__metric--right{border-color:color-mix(in srgb, var(--accent) 36%, var(--border));background:color-mix(in srgb, var(--accent-soft) 48%, var(--panel));color:var(--accent)}.scribe-feedback-panel__metric--wrong{border-color:color-mix(in srgb, var(--scribe-error) 36%, var(--border));background:color-mix(in srgb, var(--scribe-error-soft) 74%, var(--panel));color:var(--scribe-error-ink)}.scribe-feedback-panel__metric--time{border-color:color-mix(in srgb, var(--text) 18%, var(--border));background:var(--panel);color:color-mix(in srgb, var(--text) 94%, #000)}.scribe-feedback-panel__actions{min-height:var(--script-session-panel-control-height);justify-content:stretch;align-items:center;gap:10px;display:flex}.scribe-feedback-panel__actions .scribe-action-button{width:100%;min-height:var(--script-session-panel-control-height);padding:7px 12px;font-size:.86rem}.scribe-feedback-panel__action-button{border-color:color-mix(in srgb, var(--text) 18%, var(--border));border-bottom:2px solid color-mix(in srgb, var(--muted) 48%, var(--border));color:color-mix(in srgb, var(--text) 84%, var(--muted));box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--muted) 16%, transparent);background:#fff;transition:background-color .14s,border-color .14s,box-shadow .14s,color .14s,transform .14s}.scribe-feedback-panel__action-button:hover:not(:disabled),.scribe-feedback-panel__action-button:focus-visible:not(:disabled),.scribe-feedback-panel__action-button--complete:hover:not(:disabled),.scribe-feedback-panel__action-button--complete:focus-visible:not(:disabled){border-color:color-mix(in srgb, var(--accent) 54%, var(--border));color:color-mix(in srgb, var(--accent) 78%, var(--text));box-shadow:inset 0 -3px 0 color-mix(in srgb, var(--accent) 34%, transparent);background:#fff;transform:translateY(-1px)}.scribe-blank{--scribe-blank-chars:4;--scribe-blank-min-width:2.8em;--scribe-blank-char-width:.68em;--scribe-blank-inline-extra:.95em;--scribe-blank-max-width:9.5em;--scribe-blank-target-width:clamp(var(--scribe-blank-min-width), calc(var(--scribe-blank-chars) * var(--scribe-blank-char-width) + var(--scribe-blank-inline-extra)), var(--scribe-blank-max-width));vertical-align:top;white-space:normal;grid-auto-flow:row;place-items:center;gap:2px;margin:0 1px;display:inline-grid;position:relative}.scribe-blank--sounds{--scribe-blank-min-width:1.4em;--scribe-blank-char-width:.34em;--scribe-blank-inline-extra:.48em;--scribe-blank-max-width:4.75em}.scribe-blank__choice-trigger,.scribe-blank__input{min-width:var(--scribe-blank-min-width);box-sizing:border-box;border:1px solid color-mix(in srgb, var(--muted) 26%, var(--border));border-bottom:2px solid color-mix(in srgb, var(--muted) 58%, var(--border));border-radius:calc(var(--radius-sm) - 2px);background:color-mix(in srgb, var(--panel) 88%, #f2f4f1);color:color-mix(in srgb, var(--text) 72%, var(--muted));text-align:center;white-space:pre;box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--muted) 18%, transparent);padding:0 .45em;font-weight:900;transition:background-color .14s,border-color .14s,box-shadow .14s,color .14s}.scribe-blank--sounds .scribe-blank__choice-trigger,.scribe-blank--sounds .scribe-blank__input{padding-inline:.22em}.scribe-blank__choice-trigger,.scribe-blank__input{width:var(--scribe-blank-target-width)}.scribe-blank__input{cursor:text}.scribe-blank__feedback-tooltip{z-index:90;border:1px solid color-mix(in srgb, var(--muted) 18%, var(--border));border-radius:calc(var(--radius-sm) - 3px);background:color-mix(in srgb, var(--panel) 96%, #f2f4f1);max-width:max(100%,14em);box-shadow:0 8px 18px color-mix(in srgb, var(--text) 12%, transparent);color:color-mix(in srgb, var(--text) 78%, var(--muted));opacity:0;pointer-events:none;text-align:center;white-space:pre;padding:4px 7px;font-size:.66em;font-style:normal;font-weight:800;line-height:1.15;transition:opacity .14s,transform .14s;position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%,3px)}.scribe-blank:hover .scribe-blank__feedback-tooltip,.scribe-blank:focus-within .scribe-blank__feedback-tooltip{opacity:1;transform:translate(-50%)}:is(.script-session-flowscript__line:has(.scribe-blank:hover),.script-session-flowscript__line:has(.scribe-blank:focus-within)){z-index:90;opacity:1}.script-session-flowscript__body>.script-session-flowscript__line:first-child .scribe-blank__feedback-tooltip,.script-session-flowscript__body>.script-session-flowscript__choice-rail:first-child+.script-session-flowscript__line .scribe-blank__feedback-tooltip{top:calc(100% + 7px);bottom:auto;transform:translate(-50%,-3px)}.script-session-flowscript__body>.script-session-flowscript__line:first-child .scribe-blank:hover .scribe-blank__feedback-tooltip,.script-session-flowscript__body>.script-session-flowscript__line:first-child .scribe-blank:focus-within .scribe-blank__feedback-tooltip,.script-session-flowscript__body>.script-session-flowscript__choice-rail:first-child+.script-session-flowscript__line .scribe-blank:hover .scribe-blank__feedback-tooltip,.script-session-flowscript__body>.script-session-flowscript__choice-rail:first-child+.script-session-flowscript__line .scribe-blank:focus-within .scribe-blank__feedback-tooltip{transform:translate(-50%)}.scribe-choice-strip{--scribe-choice-strip-text-size:calc(.96rem * var(--script-session-flowscript-font-scale,1) * var(--script-session-flowscript-syllable-scale,1));--scribe-choice-strip-option-height:calc((var(--scribe-choice-strip-text-size) * 1.2) + 8px);--scribe-choice-strip-row-gap:14px;--scribe-choice-strip-column-gap:16px;--scribe-choice-strip-height:calc((var(--scribe-choice-strip-option-height) * 2) + var(--scribe-choice-strip-row-gap) + 28px);width:fit-content;min-width:0;max-width:min(100%,760px);height:var(--scribe-choice-strip-height);min-height:var(--scribe-choice-strip-height);box-sizing:border-box;border:1px solid color-mix(in srgb, var(--muted) 18%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 94%, #f2f4f1);box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--muted) 10%, transparent);justify-self:center;padding:14px 16px;transition:background-color .18s,border-color .18s,box-shadow .18s;display:grid;overflow:hidden}.scribe-choice-strip--empty{box-shadow:none;background:0 0;border-color:#0000}.scribe-choice-strip__content{gap:var(--scribe-choice-strip-row-gap) var(--scribe-choice-strip-column-gap);grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,max-content);justify-content:center;place-items:center;min-width:0;min-height:0;animation:.19s cubic-bezier(.2,.8,.2,1) scribe-choice-strip-content-in;display:grid}.scribe-choice-strip__content--empty{grid-template-rows:1fr;grid-template-columns:1fr;place-items:center}.scribe-choice-strip__empty-marker{color:color-mix(in srgb, var(--muted) 42%, transparent);font-size:var(--scribe-choice-strip-text-size);font-weight:420;line-height:1.28}.scribe-choice-strip__option{--choice-accent:#607486;--scribe-choice-chars:4;--scribe-choice-min-width:2.8em;--scribe-choice-char-width:.68em;--scribe-choice-inline-extra:.95em;--scribe-choice-max-width:9.5em;--scribe-choice-target-width:clamp(var(--scribe-choice-min-width), calc(var(--scribe-choice-chars) * var(--scribe-choice-char-width) + var(--scribe-choice-inline-extra)), var(--scribe-choice-max-width));width:min(var(--scribe-choice-target-width), 100%);height:var(--scribe-choice-strip-option-height);min-width:var(--scribe-choice-min-width);box-sizing:border-box;border:1px solid color-mix(in srgb, var(--muted) 26%, var(--border));border-bottom-color:color-mix(in srgb, var(--choice-accent) 46%, var(--border));border-radius:calc(var(--radius-sm) - 2px);background:color-mix(in srgb, var(--panel) 88%, #f2f4f1);min-height:0;box-shadow:inset 0 -3px 0 color-mix(in srgb, var(--choice-accent) 62%, transparent);color:var(--text);cursor:pointer;font:inherit;font-size:var(--scribe-choice-strip-text-size);text-align:center;white-space:nowrap;place-items:center;padding:0 .45em;font-weight:420;line-height:1.2;transition:background-color .14s,border-color .14s,box-shadow .14s,transform .12s;display:grid}.scribe-choice-strip--sounds .scribe-choice-strip__content{gap:8px}.scribe-choice-strip--sounds .scribe-choice-strip__option{--scribe-choice-min-width:1.4em;--scribe-choice-char-width:.34em;--scribe-choice-inline-extra:.48em;--scribe-choice-max-width:4.75em;padding-inline:.22em}.scribe-choice-strip__option:first-child{--choice-accent:#527fa8}.scribe-choice-strip__option:nth-child(2){--choice-accent:#7a6fa8}.scribe-choice-strip__option:nth-child(3){--choice-accent:#4f8f94}.scribe-choice-strip__option:nth-child(4){--choice-accent:#9a7586}.scribe-choice-strip__option:hover,.scribe-choice-strip__option:focus-visible{border-color:color-mix(in srgb, var(--muted) 34%, var(--border));border-bottom-color:color-mix(in srgb, var(--choice-accent) 62%, var(--border));background:color-mix(in srgb, var(--panel) 82%, #eef0ed);box-shadow:inset 0 -4px 0 color-mix(in srgb, var(--choice-accent) 76%, transparent);outline-color:color-mix(in srgb, var(--choice-accent) 26%, transparent);transform:translateY(-1px)}.scribe-choice-strip__option:active{transform:translateY(0)}@keyframes scribe-choice-strip-content-in{0%{opacity:0;transform:translateY(-5px)scale(.992)}to{opacity:1;transform:translateY(0)scale(1)}}.scribe-results__metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.scribe-results__metric{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-variant-numeric:tabular-nums;gap:8px;padding:14px;display:grid}.scribe-results__metric span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:900}.scribe-results__metric strong{color:inherit;font-size:clamp(1.45rem,3vw,2.1rem);font-weight:900;line-height:1}.scribe-results__metric--right{border-color:color-mix(in srgb, var(--accent) 36%, var(--border));background:color-mix(in srgb, var(--accent-soft) 52%, var(--surface));color:var(--accent)}.scribe-results__metric--wrong{border-color:color-mix(in srgb, var(--scribe-error) 36%, var(--border));background:color-mix(in srgb, var(--scribe-error-soft) 76%, var(--surface));color:var(--scribe-error-ink)}.scribe-results__metric--time,.scribe-results__metric--speed{color:color-mix(in srgb, var(--text) 76%, var(--muted))}.scribe-results__metric--time strong{white-space:nowrap}.scribe-results__action{--scribe-results-action-color:var(--accent);--scribe-results-action-soft:var(--accent-soft);border-color:color-mix(in srgb, var(--scribe-results-action-color) 42%, var(--border));background:color-mix(in srgb, var(--scribe-results-action-soft) 68%, var(--panel));color:color-mix(in srgb, var(--scribe-results-action-color) 82%, var(--text));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--scribe-results-action-color) 12%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--scribe-results-action-color) 42%, transparent)}.scribe-results__action:hover,.scribe-results__action:focus-visible{border-color:color-mix(in srgb, var(--scribe-results-action-color) 68%, var(--border));background:color-mix(in srgb, var(--scribe-results-action-soft) 86%, var(--panel));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--scribe-results-action-color) 18%, transparent), inset 0 -4px 0 color-mix(in srgb, var(--scribe-results-action-color) 56%, transparent)}.scribe-results__actions{border-top:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:16px;display:grid}.scribe-results__action{text-align:center;justify-content:center;width:100%;min-height:44px}.scribe-results__action--rescribe{--scribe-results-action-color:var(--color-amber);--scribe-results-action-soft:var(--color-amber-soft)}.scribe-results__action--sync{--scribe-results-action-color:var(--color-red);--scribe-results-action-soft:var(--color-red-soft)}.scribe-results__action--home{--scribe-results-action-color:var(--accent);--scribe-results-action-soft:var(--accent-soft)}.scribe-results__review-button{border-color:color-mix(in srgb, var(--muted) 26%, var(--border));border-bottom:2px solid color-mix(in srgb, var(--muted) 58%, var(--border));width:100%;min-height:44px;color:color-mix(in srgb, var(--text) 72%, var(--muted));box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--muted) 18%, transparent);white-space:nowrap;background:#fff;justify-content:center;align-items:center;gap:8px;display:inline-flex}.scribe-results__review-button:hover,.scribe-results__review-button:focus-visible{border-color:color-mix(in srgb, var(--accent) 42%, var(--border));border-bottom-color:color-mix(in srgb, var(--accent) 54%, var(--border));background:#fff}.script-session-controls{grid-template-columns:minmax(0,1fr);align-items:center;min-height:44px;display:grid}.script-session-controls__play{border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-red) 14%, var(--panel));width:44px;height:44px;color:var(--color-red);cursor:pointer;place-items:center;padding:0;font-size:1.05rem;font-weight:800;line-height:1;display:inline-grid}.script-session-controls .speed-control{gap:10px;width:100%;min-width:0;min-height:44px;padding:8px 10px;font-size:.9rem}.script-session-controls .speed-control input{min-width:0}.script-session-controls .speed-control strong{text-align:right;min-width:44px}.script-session-controls .control-button{width:44px;height:44px}.script-session-controls__play:hover,.script-session-controls__play:focus-visible{border-color:color-mix(in srgb, var(--color-red) 42%, var(--border));background:color-mix(in srgb, var(--color-red) 22%, var(--panel));color:var(--color-red)}.script-session-flowscript-column{--script-session-panel-label-height:1rem;--script-session-panel-waveform-height:clamp(72px, 10vh, 96px);--script-session-panel-control-height:42px;--script-session-audio-panel-height:calc(20px + var(--script-session-panel-label-height) + 16px + var(--script-session-panel-waveform-height) + var(--script-session-panel-control-height));grid-template-rows:minmax(0,1fr);gap:8px;min-height:0;display:grid}.script-session-recording-panel{gap:6px;width:100%;min-width:0;display:grid}.script-session-recording-panel__recorder{width:100%;min-height:var(--script-session-audio-panel-height);box-sizing:border-box;padding:10px;position:relative}.script-session-recording-panel__label{min-height:var(--script-session-panel-label-height);color:var(--muted);letter-spacing:.04em;font-size:.82rem;font-weight:900;line-height:var(--script-session-panel-label-height);text-transform:uppercase}.recording-waveform-player__meta{min-height:var(--script-session-panel-label-height);font-variant-numeric:tabular-nums;line-height:var(--script-session-panel-label-height);align-items:center;gap:12px;display:flex}.audio-panel-time-readout{color:color-mix(in srgb, var(--muted) 74%, var(--panel));font-variant-numeric:tabular-nums;letter-spacing:0;text-transform:none;white-space:nowrap;margin-left:auto;font-size:.78rem;font-weight:700;line-height:1}.script-session-recording-panel__recorder .student-recording-panel__body{min-height:calc(var(--script-session-audio-panel-height) - 20px)}.script-session-recording-panel__recorder .recording-state--empty,.script-session-recording-panel__recorder .recording-state--recording{min-height:calc(var(--script-session-audio-panel-height) - 20px);align-content:end}.script-session-recording-panel__recorder .student-recording-panel__actions{min-height:var(--script-session-panel-control-height);justify-content:flex-start;align-items:center;gap:10px}.script-session-recording-panel__recorder .recording-waveform-placeholder,.script-session-recording-panel__recorder .recording-live-visualization,.script-session-recording-panel__recorder .recording-waveform-player__canvas{height:var(--script-session-panel-waveform-height)}.script-session-recording-panel__recorder .record-button{height:42px}.script-session-recording-panel__recorder .audio-inline-control{min-height:var(--script-session-panel-control-height);padding:7px 10px}.script-session-recording-panel__recorder .audio-inline-control--fader{height:var(--script-session-panel-control-height);padding:5px 6px}.script-session-recording-panel__recorder .recording-waveform-player__time-row,.script-session-recording-panel__recorder .audio-panel-time-readout{display:none}.line-waveform-panel{grid-template-rows:var(--script-session-panel-label-height) var(--script-session-panel-waveform-height) auto;min-height:var(--script-session-audio-panel-height);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);gap:8px;padding:10px;display:grid}.script-session-media-panels{min-width:0;transition:grid-template-columns var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease);align-items:start;gap:10px;display:grid}.script-session-media-panels--with-studio,.script-session-media-panels--with-scribe-feedback{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.script-session-media-panels--studio-exiting{height:var(--script-session-studio-exit-height,var(--script-session-audio-panel-height));grid-template-columns:minmax(0,1fr) minmax(0,0fr);overflow:hidden}@starting-style{.script-session-media-panels--with-studio,.script-session-media-panels--with-scribe-feedback{grid-template-columns:minmax(0,1fr) minmax(0,0fr)}}.script-session-media-panels--with-studio .script-session-recording-panel--compact{animation:script-session-studio-panel-enter var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease) both}.script-session-media-panels--studio-exiting .script-session-recording-panel--compact{height:var(--script-session-studio-exit-height,var(--script-session-audio-panel-height));pointer-events:none;animation-name:script-session-studio-panel-exit;overflow:hidden}.script-session-media-panels--studio-switching .script-session-recording-panel--compact{pointer-events:none;animation-name:script-session-studio-panel-exit}@keyframes script-session-studio-panel-enter{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:translate(0)}}@keyframes script-session-studio-panel-exit{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(28px)}}.line-waveform-panel__meta{min-height:var(--script-session-panel-label-height);color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:.04em;font-size:.82rem;font-weight:800;line-height:var(--script-session-panel-label-height);text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;display:flex}.line-waveform-panel__timestamp{color:color-mix(in srgb, var(--muted) 78%, transparent);letter-spacing:0;text-align:right;text-transform:none;white-space:nowrap;margin-left:auto;font-weight:700}.item-audio-title{min-width:0;color:var(--muted);align-items:center;gap:8px;display:inline-flex}.item-audio-title__label{min-width:0;color:var(--muted);letter-spacing:.04em;font-size:.82rem;font-weight:800;line-height:var(--script-session-panel-label-height);text-overflow:ellipsis;text-transform:none;white-space:nowrap;overflow:hidden}.item-audio-title__arrow{border:1px solid color-mix(in srgb, var(--border) 78%, transparent);border-radius:calc(var(--radius-sm) - 3px);background:color-mix(in srgb, var(--panel) 82%, var(--bg));width:24px;height:24px;color:var(--muted);cursor:pointer;font:inherit;flex:none;place-items:center;padding:0;font-size:1rem;font-weight:900;line-height:1;display:inline-grid}.item-audio-title__arrow:hover:not(:disabled),.item-audio-title__arrow:focus-visible{border-color:color-mix(in srgb, var(--accent) 38%, var(--border));color:var(--text);background:#f2f4f1}.item-audio-title__arrow:disabled{cursor:not-allowed;opacity:.38}.line-waveform-panel__canvas{width:100%;height:var(--script-session-panel-waveform-height);overscroll-behavior:none;border-radius:calc(var(--radius-sm) - 2px);cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;background:#f2f4f1;display:block}.line-waveform-panel__canvas.audio-player__waveform{height:var(--script-session-panel-waveform-height)}.line-waveform-panel__waveform-row{min-width:0}.script-session-recording-panel--compact,.script-session-recording-panel--compact .script-session-recording-panel__recorder,.script-session-recording-panel--compact .student-recording-panel,.script-session-recording-panel--compact .student-recording-panel__body{min-width:0;min-height:0;display:grid}.script-session-recording-panel--compact{grid-template-rows:auto}.script-session-recording-panel--compact .script-session-recording-panel__recorder{grid-row:1/-1;padding:0}.student-recording-panel--compact{grid-template-rows:var(--script-session-panel-label-height) minmax(0, auto);box-shadow:none;background:0 0;border:0;border-radius:0;gap:8px;padding:0}.student-recording-panel__compact-header{min-height:var(--script-session-panel-label-height);color:var(--muted);letter-spacing:.04em;font-size:.82rem;font-weight:900;line-height:var(--script-session-panel-label-height);text-transform:uppercase;justify-content:space-between;align-items:center;gap:10px;display:flex}.student-recording-panel__compact-header>div{flex-wrap:wrap;align-items:baseline;gap:6px 10px;min-width:0;display:flex}.student-recording-panel__compact-header small{color:color-mix(in srgb, var(--muted) 72%, transparent);letter-spacing:0;text-transform:none;font-size:.72rem;font-weight:800}.student-recording-panel--compact .script-session-recording-panel__return-script{min-height:28px;padding:0 8px;font-size:.74rem}.student-recording-panel--compact .script-session-recording-panel__return-script-icon{display:none}.student-recording-panel--compact .recording-waveform-player,.student-recording-panel--compact .recording-state--empty,.student-recording-panel--compact .recording-state--recording,.student-recording-panel--compact .recording-state--recorded,.student-recording-panel--compact .student-recording-panel__body{min-height:0}.student-recording-panel--compact .recording-waveform-player,.student-recording-panel--compact .recording-state--empty,.student-recording-panel--compact .recording-state--recording{grid-template-rows:var(--script-session-panel-waveform-height) auto;gap:8px;display:grid}.student-recording-panel--compact .recording-waveform-player__meta,.student-recording-panel--compact .recording-waveform-player__time-row{display:none}.student-recording-panel--compact .recording-state--empty,.student-recording-panel--compact .recording-state--recording{align-content:stretch;min-height:0}.student-recording-panel--compact .recording-waveform-placeholder,.student-recording-panel--compact .recording-live-visualization,.student-recording-panel--compact .recording-waveform-player__canvas{height:var(--script-session-panel-waveform-height)}.student-recording-panel--compact .recording-waveform-player__controls{min-height:var(--script-session-panel-control-height);gap:8px}.student-recording-panel--compact .student-recording-panel__actions{min-height:var(--script-session-panel-control-height);align-items:center}.student-recording-panel--compact .record-button{height:42px}.line-waveform-panel__control-row{min-height:var(--script-session-panel-control-height);flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.line-waveform-panel__control-row .audio-player__secondary-controls{flex-wrap:nowrap}@media (width<=860px){.script-session-media-panels--with-studio,.script-session-media-panels--with-scribe-feedback{grid-template-columns:minmax(0,1fr)}}.line-waveform-panel__controls{flex:none;align-items:center;gap:10px;display:flex}.line-waveform-panel__control-strip{flex-wrap:wrap;flex:440px;justify-content:flex-start;align-items:center;gap:10px;min-width:0;display:flex}.script-session-speed-control-group,.script-session-static-audio-controls{align-items:center;gap:10px;min-width:0;display:flex}.script-session-static-audio-controls{border-left:0;margin-left:0;padding-left:0}.script-session-track-mode-controls{border-left:0;align-items:center;gap:10px;min-width:0;margin-left:0;padding-left:0;display:flex}.line-waveform-panel__control-strip .speed-control,.melody-control{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);min-width:0;min-height:42px;color:var(--text);align-items:center;gap:8px;padding:7px 10px;font-size:.92rem;font-weight:900;display:inline-flex}.line-waveform-panel__control-strip .speed-control{width:min(218px,38vw)}.melody-control{width:min(176px,30vw)}.recording-muffler-control{width:min(176px,32vw)}.recording-muffler-control input[type=range]{min-width:0;accent-color:var(--color-amber);flex:auto}.line-waveform-panel__control-strip .speed-control span{width:22px;color:var(--muted);text-align:center;flex:0 0 22px;font-size:1.02rem;line-height:1}.line-waveform-panel__control-strip input[type=range]{min-width:0;accent-color:var(--color-amber);flex:auto}.line-waveform-panel__control-strip .speed-control strong,.melody-control strong{font-variant-numeric:tabular-nums;text-align:right;min-width:38px}.script-session-nudge-button,.track-toggle-button,.melody-toggle-button,.drum-control-button{border:1px solid color-mix(in srgb, var(--muted) 24%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 64%, #f2f4f1);width:42px;height:42px;color:color-mix(in srgb, var(--muted) 78%, white);cursor:pointer;opacity:.58;flex:0 0 42px;place-items:center;padding:0;font-size:1.2rem;font-weight:900;line-height:1;transition:background-color .16s,border-color .16s,color .16s,box-shadow .12s,opacity .12s,transform 80ms;display:inline-grid}.script-session-nudge-button{flex-basis:21px;width:21px}.speed-stepper .script-session-nudge-button{width:24px;height:40px;color:color-mix(in srgb, var(--muted) 86%, var(--text));opacity:1;background:0 0;border:0;border-radius:0;flex-basis:24px;font-size:1rem}.speed-stepper .script-session-nudge-button:hover,.speed-stepper .script-session-nudge-button:focus-visible{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--text);transform:none}.script-session-nudge-button:hover,.script-session-nudge-button:focus-visible,.track-toggle-button:hover,.track-toggle-button:focus-visible,.melody-toggle-button:hover,.melody-toggle-button:focus-visible,.drum-control-button:hover,.drum-control-button:focus-visible{border-color:color-mix(in srgb, var(--muted) 58%, var(--border));background:color-mix(in srgb, var(--panel) 82%, #f2f4f1);color:var(--text);opacity:.9;transform:translateY(-1px)}.track-toggle-button{font-size:.78rem;position:relative}.track-toggle-icon{text-align:center;place-items:center;width:24px;height:24px;font-size:1.15rem;font-style:normal;font-weight:400;line-height:1;display:inline-grid;position:relative}.track-toggle-icon--dialogue{transform:translateY(-1px)}.track-toggle-icon--music{font-size:1.15rem}.track-toggle-button--active{border-color:color-mix(in srgb, var(--accent) 62%, var(--border));background:color-mix(in srgb, var(--accent) 20%, var(--panel));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 28%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--accent) 52%, transparent)}.track-toggle-button--active:hover,.track-toggle-button--active:focus-visible{border-color:color-mix(in srgb, var(--accent) 74%, var(--border));background:color-mix(in srgb, var(--accent) 28%, var(--panel));color:var(--text);opacity:1;transform:translateY(-1px)}.melody-toggle-button--active,.melody-toggle-button--expanded{border-color:color-mix(in srgb, var(--accent) 58%, var(--border));background:color-mix(in srgb, var(--accent) 18%, var(--panel));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 26%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--accent) 52%, transparent)}.melody-toggle-button--active:hover,.melody-toggle-button--active:focus-visible,.melody-toggle-button--expanded:hover,.melody-toggle-button--expanded:focus-visible{border-color:color-mix(in srgb, var(--accent) 70%, var(--border));background:color-mix(in srgb, var(--accent) 24%, var(--panel));transform:translateY(-1px)}.drum-control-button--active,.drum-control-button--solo{border-color:color-mix(in srgb, var(--accent) 58%, var(--border));background:color-mix(in srgb, var(--accent) 18%, var(--panel));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 26%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--accent) 52%, transparent)}.drum-control-button--active:hover,.drum-control-button--active:focus-visible,.drum-control-button--solo:hover,.drum-control-button--solo:focus-visible{border-color:color-mix(in srgb, var(--accent) 70%, var(--border));background:color-mix(in srgb, var(--accent) 24%, var(--panel));color:var(--text);opacity:1;transform:translateY(-1px)}.script-session-nudge-button:active,.track-toggle-button:active,.melody-toggle-button:active,.drum-control-button:active{border-color:color-mix(in srgb, var(--muted) 66%, var(--border));background:color-mix(in srgb, var(--panel) 72%, var(--muted));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--muted) 24%, transparent), inset 0 2px 0 color-mix(in srgb, var(--muted) 22%, transparent);transform:translateY(0)}.track-toggle-button--active:active,.melody-toggle-button--active:active,.melody-toggle-button--expanded:active,.drum-control-button:active{border-color:color-mix(in srgb, var(--accent) 76%, var(--border));background:color-mix(in srgb, var(--accent) 30%, var(--panel));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 34%, transparent), inset 0 2px 0 color-mix(in srgb, var(--accent) 30%, transparent)}.script-session-waveform-control{border:1px solid color-mix(in srgb, var(--muted) 24%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 64%, #f2f4f1);width:42px;height:42px;color:color-mix(in srgb, var(--muted) 78%, white);cursor:pointer;opacity:.58;flex:0 0 42px;place-items:center;padding:0;font-size:1.2rem;font-weight:900;line-height:1;transition:background-color .16s,border-color .16s,color .16s,box-shadow .12s,opacity .12s,transform 80ms;display:inline-grid}.script-session-waveform-control__icon{width:22px;height:22px;display:block}.script-session-waveform-control:hover,.script-session-waveform-control:focus-visible{border-color:color-mix(in srgb, var(--muted) 58%, var(--border));background:color-mix(in srgb, var(--panel) 82%, #f2f4f1);color:var(--text);opacity:.9;transform:translateY(-1px)}.script-session-waveform-control--active{border-color:color-mix(in srgb, var(--accent) 58%, var(--border));background:color-mix(in srgb, var(--accent) 18%, var(--panel));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 26%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--accent) 52%, transparent)}.script-session-waveform-control--play:hover,.script-session-waveform-control--active:hover,.script-session-waveform-control--active:focus-visible{border-color:color-mix(in srgb, var(--accent) 70%, var(--border));background:color-mix(in srgb, var(--accent) 24%, var(--panel));transform:translateY(-1px)}.script-session-waveform-control:not(.script-session-waveform-control--play):not(.script-session-waveform-control--active):active{border-color:color-mix(in srgb, var(--muted) 66%, var(--border));background:color-mix(in srgb, var(--panel) 72%, var(--muted));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--muted) 24%, transparent), inset 0 2px 0 color-mix(in srgb, var(--muted) 22%, transparent);transform:translateY(0)}.script-session-waveform-control--active:active{border-color:color-mix(in srgb, var(--accent) 76%, var(--border));background:color-mix(in srgb, var(--accent) 30%, var(--panel));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 34%, transparent), inset 0 2px 0 color-mix(in srgb, var(--accent) 30%, transparent);transform:translateY(0)}.script-session-waveform-control--play{border-color:color-mix(in srgb, var(--color-red) 58%, var(--border));background:color-mix(in srgb, var(--color-red) 18%, var(--panel));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-red) 26%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--color-red) 52%, transparent)}.script-session-waveform-control--play:hover,.script-session-waveform-control--play:focus-visible{border-color:color-mix(in srgb, var(--color-red) 70%, var(--border));background:color-mix(in srgb, var(--color-red) 24%, var(--panel));color:var(--text);transform:translateY(-1px)}.script-session-waveform-control--play:active{border-color:color-mix(in srgb, var(--color-red) 76%, var(--border));background:color-mix(in srgb, var(--color-red) 30%, var(--panel));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-red) 34%, transparent), inset 0 2px 0 color-mix(in srgb, var(--color-red) 30%, transparent);transform:translateY(0)}.script-session-tier-toggles{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;width:100%;display:flex}.script-session-tier-toggles__end{flex:280px;justify-content:flex-end;min-width:min(100%,280px);margin-left:auto;display:flex}.script-session-tier-toggle{border:1px solid color-mix(in srgb, var(--muted) 24%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 64%, #f2f4f1);width:42px;height:42px;color:color-mix(in srgb, var(--muted) 78%, white);cursor:pointer;opacity:.58;flex:0 0 42px;place-items:center;padding:0;line-height:1;transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s,opacity .16s,transform .16s;display:inline-grid;position:relative}.emoji-icon{text-align:center;place-items:center;width:24px;height:24px;font-size:1.15rem;font-style:normal;font-weight:400;line-height:1;display:inline-grid}.script-session-tier-toggle .emoji-icon{font-size:1.15rem}.script-session-tier-toggle:hover,.script-session-tier-toggle:focus-visible{border-color:color-mix(in srgb, var(--muted) 58%, var(--border));background:color-mix(in srgb, var(--panel) 82%, #f2f4f1);color:var(--text);opacity:.9;transform:translateY(-1px)}.script-session-tier-toggle--active{border-color:color-mix(in srgb, var(--color-amber) 58%, var(--border));background:color-mix(in srgb, var(--color-amber) 18%, var(--panel));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-amber) 26%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--color-amber) 52%, transparent)}.script-session-tier-toggle--active:hover,.script-session-tier-toggle--active:focus-visible{border-color:color-mix(in srgb, var(--color-amber) 70%, var(--border));background:color-mix(in srgb, var(--color-amber) 24%, var(--panel));transform:translateY(-1px)}.script-session--scribe .script-session-tier-toggle--active,.script-session--scribe .script-session-waveform-control--active:not(.script-session-waveform-control--play),.script-session--scribe .track-toggle-button--active,.script-session--scribe .melody-toggle-button--active,.script-session--scribe .melody-toggle-button--expanded,.script-session--scribe .drum-control-button--active,.script-session--scribe .drum-control-button--solo{border-color:color-mix(in srgb, var(--script-session-scribe-control-color) 48%, var(--border));background:color-mix(in srgb, var(--script-session-scribe-control-color) 13%, var(--panel));color:var(--text);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--script-session-scribe-control-color) 18%, transparent), inset 0 -3px 0 color-mix(in srgb, var(--script-session-scribe-control-color) 38%, transparent)}.script-session--scribe .script-session-tier-toggle--active:hover,.script-session--scribe .script-session-tier-toggle--active:focus-visible,.script-session--scribe .script-session-waveform-control--active:not(.script-session-waveform-control--play):hover,.script-session--scribe .script-session-waveform-control--active:not(.script-session-waveform-control--play):focus-visible,.script-session--scribe .track-toggle-button--active:hover,.script-session--scribe .track-toggle-button--active:focus-visible,.script-session--scribe .melody-toggle-button--active:hover,.script-session--scribe .melody-toggle-button--active:focus-visible,.script-session--scribe .melody-toggle-button--expanded:hover,.script-session--scribe .melody-toggle-button--expanded:focus-visible,.script-session--scribe .drum-control-button--active:hover,.script-session--scribe .drum-control-button--active:focus-visible,.script-session--scribe .drum-control-button--solo:hover,.script-session--scribe .drum-control-button--solo:focus-visible{border-color:color-mix(in srgb, var(--script-session-scribe-control-color) 58%, var(--border));background:color-mix(in srgb, var(--script-session-scribe-control-color) 18%, var(--panel));color:var(--text)}.script-session-control-separator,.script-session-tier-toggle-separator{background:color-mix(in srgb, var(--border) 82%, transparent);width:1px;height:2.1rem;margin:0 2px}.script-session-tier-toggle:focus-visible,.script-session-waveform-control:focus-visible,.script-session-nudge-button:focus-visible,.melody-toggle-button:focus-visible,.drum-control-button:focus-visible{outline:3px solid var(--border);outline-offset:2px}.script-session-flowscript{--script-session-flowscript-font-scale:2.4;--script-session-flowscript-syllable-scale:1;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);grid-template-rows:minmax(0,1fr) auto;height:100%;min-height:0;transition:border-color .18s,background-color .18s;display:grid;position:relative;overflow:hidden}.script-session-flowscript__body{overflow-anchor:none;min-height:0;transition:padding var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease);flex-direction:column;gap:10px;padding:14px;scroll-padding:14px 0;display:flex;position:relative;overflow-y:auto}.script-session-flowscript__controls{border-top:1px solid color-mix(in srgb, var(--border) 72%, transparent);background:color-mix(in srgb, var(--panel) 94%, white);flex:none;align-items:center;padding:10px 10px 14px;display:flex}.script-session-flowscript__return-script{border:1px solid color-mix(in srgb, var(--color-amber) 46%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-amber) 12%, var(--panel));min-height:42px;color:color-mix(in srgb, var(--color-amber) 72%, var(--text));cursor:pointer;font:inherit;white-space:nowrap;justify-content:center;align-items:center;gap:6px;margin-left:auto;padding:0 10px;font-size:.82rem;font-weight:900;line-height:1;display:inline-flex}.script-session-flowscript__return-script:hover,.script-session-flowscript__return-script:focus-visible{border-color:color-mix(in srgb, var(--color-amber) 72%, var(--border));background:color-mix(in srgb, var(--color-amber) 22%, var(--panel));color:var(--text);transform:translateY(-1px)}.script-session-flowscript__return-script:focus-visible{outline:3px solid color-mix(in srgb, var(--color-amber) 24%, transparent);outline-offset:2px}.script-session-flowscript__return-script-icon{display:inline-block;transform:scaleY(-1)}.script-session-flowscript--scribing{--script-session-range-color:var(--script-session-scribe-range-color,#607486);--script-session-range-soft:var(--script-session-scribe-range-soft,#edf2f4);padding-top:0}.script-session-flowscript--scribing .script-session-flowscript__body{scroll-padding:24px 0}.script-session-flowscript--scribing .script-session-flowscript__text--flowscript{line-height:1.52}.script-session-flowscript--scribing .scribe-blank{margin-block:.08em}.script-session-flowscript--scribing .scribe-blank--sounds{--scribe-blank-min-width:1.55em;--scribe-blank-char-width:.38em;--scribe-blank-inline-extra:.56em;margin-inline:.06em}.script-session-flowscript__choice-rail{order:1;width:100%;padding:0 50px 0 48px}.script-session-flowscript__line{border-radius:var(--radius-sm);width:100%;color:var(--text);opacity:.26;text-align:left;transition:background-color .16s ease, color .16s ease, grid-template-columns var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), min-height var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), opacity var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), padding var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), transform var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease);background:0 0;border:0;order:1;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:10px 50px 10px 12px;display:grid;position:relative}.script-session-flowscript__line:hover{opacity:.74;background:#f2f4f1}:is(.script-session-flowscript__line:has(.timed-word-popover),.script-session-flowscript__line:has(.timed-syllable-popover),.script-session-flowscript__line:has(.timed-boundary-popover)){z-index:80;opacity:1}.script-session-flowscript__line--active{background:color-mix(in srgb, var(--color-red) 5%, transparent);color:var(--text);opacity:1}.script-session-flowscript__line--active:hover{background:color-mix(in srgb, var(--color-red) 8%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-red) 10%, transparent);opacity:1}.script-session-flowscript__line--gap{opacity:.78;grid-template-columns:minmax(0,1fr);place-items:center;min-height:25px;padding:2px 12px}.script-session-flowscript__line--gap .script-session-flowscript__tiers{display:none}.script-session-flowscript__line--gap:last-child{margin-bottom:20px}.script-session-flowscript__line--gap:hover,.script-session-flowscript__line--gap.script-session-flowscript__line--active{background:color-mix(in srgb, var(--accent) 7%, transparent);opacity:1}@media (prefers-reduced-motion:reduce){.item-line-panel-stack,.script-session-media-panels,.script-session-flowscript,.script-session-flowscript__body,.script-session-flowscript__line,.script-session-flowscript__line-record,.script-session-flowscript__tiers,.scribe-choice-strip,.scribe-choice-strip__option{transition:none}.scribe-choice-strip__content,.script-session-media-panels--with-studio .script-session-recording-panel--compact,.script-session-media-panels--studio-exiting .script-session-recording-panel--compact,.script-session-media-panels--studio-switching .script-session-recording-panel--compact{animation:none}}.script-session-flowscript--recording .script-session-record-status-button--saved:not(.script-session-record-status-button--recording),.script-session-flowscript--recording .script-session-record-status-button--empty:not(.script-session-record-status-button--recording){display:none}.script-session-flowscript--scribing .script-session-flowscript__line{opacity:1}.script-session:not(.script-session--scribe-review) .script-session-flowscript--scribing .script-session-flowscript__line:not(.script-session-flowscript__line--active) .script-session-flowscript__line-number,.script-session:not(.script-session--scribe-review) .script-session-flowscript--scribing .script-session-flowscript__line:not(.script-session-flowscript__line--active) .timed-token,.script-session:not(.script-session--scribe-review) .script-session-flowscript--scribing .script-session-flowscript__line:not(.script-session-flowscript__line--active) .timed-syllable-separator{opacity:.42}.script-session:not(.script-session--scribe-review) .script-session-flowscript--scribing .script-session-flowscript__line:not(.script-session-flowscript__line--active):hover .script-session-flowscript__line-number,.script-session:not(.script-session--scribe-review) .script-session-flowscript--scribing .script-session-flowscript__line:not(.script-session-flowscript__line--active):hover .timed-token,.script-session:not(.script-session--scribe-review) .script-session-flowscript--scribing .script-session-flowscript__line:not(.script-session-flowscript__line--active):hover .timed-syllable-separator{opacity:.74}.script-session-flowscript__line-number-wrap{align-self:center;display:inline-grid;position:relative}.script-session-flowscript__line-number{border:1px solid color-mix(in srgb, var(--muted) 18%, var(--border));border-radius:calc(var(--radius-sm) - 3px);background:color-mix(in srgb, var(--panel) 72%, #f2f4f1);width:1.9rem;min-height:1.9rem;color:var(--muted);cursor:pointer;font-variant-numeric:tabular-nums;letter-spacing:0;flex:none;align-self:center;place-items:center;padding:0;font-size:.86rem;font-weight:800;line-height:1.34;transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s,transform .16s;display:inline-grid}.script-session-flowscript__line-number:hover,.script-session-flowscript__line-number:focus-visible{border-color:color-mix(in srgb, var(--color-amber) 42%, var(--border));background:color-mix(in srgb, var(--color-amber) 12%, var(--panel));color:var(--color-red);transform:translateY(-1px)}.script-session-flowscript--scribing .script-session-flowscript__line-number:hover,.script-session-flowscript--scribing .script-session-flowscript__line-number:focus-visible{border-color:color-mix(in srgb, var(--script-session-range-color) 38%, var(--border));background:color-mix(in srgb, var(--script-session-range-color) 10%, var(--panel));color:color-mix(in srgb, var(--text) 82%, var(--muted))}.script-session-flowscript__line-number--selected{border-color:color-mix(in srgb, var(--script-session-range-color) 58%, var(--border));background:color-mix(in srgb, var(--script-session-range-color) 18%, var(--panel));color:color-mix(in srgb, var(--script-session-range-color) 76%, var(--text));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--script-session-range-color) 22%, transparent), inset 0 -2px 0 color-mix(in srgb, var(--script-session-range-color) 48%, transparent)}.script-session-flowscript__line-number:focus-visible{outline:3px solid var(--border);outline-offset:2px}.script-session-flowscript__line-number--gap{height:1rem;min-height:1rem;color:var(--muted);cursor:pointer;box-shadow:none;background:0 0;border:0;border-radius:0;align-self:center;padding-top:0}.script-session-flowscript__line-number--gap:hover,.script-session-flowscript__line-number--gap:focus-visible,.script-session-flowscript__line--gap.script-session-flowscript__line--active .script-session-flowscript__line-number--gap{color:var(--text);background:0 0}.script-session-record-status-button{border:2px solid color-mix(in srgb, var(--muted) 56%, var(--border));width:22px;height:22px;color:color-mix(in srgb, var(--muted) 70%, var(--text));cursor:pointer;font:inherit;letter-spacing:0;box-shadow:0 1px 3px color-mix(in srgb, var(--text) 14%, transparent);transition:background-color var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), border-color var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), box-shadow var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), color var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease);background:0 0;border-radius:999px;place-items:center;padding:0;font-size:.7rem;font-weight:1000;line-height:1;display:inline-grid;position:relative}.script-session-record-status-button:before{content:"Rec";background:color-mix(in srgb, var(--text) 90%, black);color:var(--panel);letter-spacing:0;opacity:0;pointer-events:none;border-radius:4px;padding:2px 5px;font-size:.56rem;font-weight:900;line-height:1;transition:opacity .14s,transform .14s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%,2px)}.script-session-record-status-button:hover:before,.script-session-record-status-button:focus-visible:before{opacity:1;transform:translate(-50%)}.script-session-record-status-button--recording:before{content:"Hide"}.script-session-record-status-button--scribe-play:before{content:"Play"}.script-session-record-status-button--scribe-play.script-session-record-status-button--recording:before{content:"Pause"}.script-session-record-status-button__check{transition:opacity var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), transform var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease);line-height:1;display:inline-block;transform:translateY(-.5px)}.script-session-record-status-button--saved{border-color:color-mix(in srgb, var(--color-amber) 68%, var(--border));background:color-mix(in srgb, var(--color-amber) 62%, var(--panel));color:#fff;box-shadow:inset 0 0 0 1px #ffffff47, inset 0 -2px 0 color-mix(in srgb, var(--color-amber) 46%, transparent), 0 1px 3px color-mix(in srgb, var(--text) 12%, transparent)}.script-session-record-status-button--recording{border-color:color-mix(in srgb, var(--color-amber) 62%, var(--border));background:color-mix(in srgb, var(--color-amber) 10%, var(--panel));color:color-mix(in srgb, var(--color-amber) 72%, var(--text))}.script-session-record-status-button--recording:hover,.script-session-record-status-button--recording:focus-visible{border-color:color-mix(in srgb, var(--color-amber) 78%, var(--border));background:color-mix(in srgb, var(--color-amber) 18%, var(--panel))}.script-session-record-status-button--saved.script-session-record-status-button--recording{border-color:color-mix(in srgb, var(--color-amber) 68%, var(--border));background:color-mix(in srgb, var(--color-amber) 62%, var(--panel));color:#fff}.script-session-record-status-button--saved.script-session-record-status-button--recording:hover,.script-session-record-status-button--saved.script-session-record-status-button--recording:focus-visible{border-color:color-mix(in srgb, var(--color-amber) 76%, var(--border));background:color-mix(in srgb, var(--color-amber) 70%, var(--panel))}.script-session-record-status-button--empty:hover,.script-session-record-status-button--empty:focus-visible{border-color:color-mix(in srgb, var(--color-red) 70%, var(--border));background:color-mix(in srgb, var(--color-red) 8%, transparent)}.script-session-record-status-button--saved:hover,.script-session-record-status-button--saved:focus-visible{border-color:color-mix(in srgb, var(--color-amber) 76%, var(--border));background:color-mix(in srgb, var(--color-amber) 70%, var(--panel))}.script-session-record-status-button:focus-visible{outline:3px solid color-mix(in srgb, var(--color-red) 28%, transparent);outline-offset:2px}.script-session-record-status-button--sync-record{border:1px solid color-mix(in srgb, var(--muted) 22%, var(--border));border-radius:calc(var(--radius-sm) - 3px);background:color-mix(in srgb, var(--panel) 76%, #f2f4f1);width:1.6rem;height:1.6rem;color:color-mix(in srgb, var(--muted) 82%, var(--text));box-shadow:none;font-size:1rem;font-weight:800}.script-session-record-status-button--sync-record:before{content:"Record"}.script-session-record-status-button--sync-record.script-session-record-status-button--saved:not(.script-session-record-status-button--recording):before{content:"Show"}.script-session-record-status-button--sync-record.script-session-record-status-button--recording:before{content:"Hide"}.script-session-record-status-button--sync-record .script-session-record-status-button__check{transform:translateY(-1px)}.script-session-record-status-button--sync-record.script-session-record-status-button--saved,.script-session-record-status-button--sync-record.script-session-record-status-button--recording,.script-session-record-status-button--sync-record.script-session-record-status-button--saved.script-session-record-status-button--recording{border-color:color-mix(in srgb, var(--muted) 30%, var(--border));background:color-mix(in srgb, var(--surface) 88%, #f2f4f1);color:color-mix(in srgb, var(--text) 78%, var(--muted));box-shadow:inset 0 -2px 0 color-mix(in srgb, var(--muted) 18%, transparent)}.script-session-record-status-button--sync-record:after{content:"";border:1.5px solid color-mix(in srgb, var(--muted) 34%, var(--border));background:var(--panel);width:9px;height:9px;color:var(--panel);box-shadow:0 1px 2px color-mix(in srgb, var(--text) 10%, transparent);border-radius:999px;place-items:center;font-size:.42rem;font-weight:1000;line-height:1;display:grid;position:absolute;top:-4px;right:-4px}.script-session-record-status-button--sync-record.script-session-record-status-button--saved:after{content:"✓";border-color:var(--panel);background:var(--accent);width:11px;height:11px;color:var(--panel);box-shadow:0 1px 3px color-mix(in srgb, var(--text) 16%, transparent)}.script-session-record-status-button--sync-record:hover,.script-session-record-status-button--sync-record:focus-visible,.script-session-record-status-button--sync-record.script-session-record-status-button--empty:hover,.script-session-record-status-button--sync-record.script-session-record-status-button--empty:focus-visible,.script-session-record-status-button--sync-record.script-session-record-status-button--saved:hover,.script-session-record-status-button--sync-record.script-session-record-status-button--saved:focus-visible,.script-session-record-status-button--sync-record.script-session-record-status-button--recording:hover,.script-session-record-status-button--sync-record.script-session-record-status-button--recording:focus-visible,.script-session-record-status-button--sync-record.script-session-record-status-button--saved.script-session-record-status-button--recording:hover,.script-session-record-status-button--sync-record.script-session-record-status-button--saved.script-session-record-status-button--recording:focus-visible{border-color:color-mix(in srgb, var(--muted) 48%, var(--border));background:color-mix(in srgb, var(--surface) 92%, var(--panel));color:color-mix(in srgb, var(--text) 86%, var(--muted));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--muted) 8%, transparent), inset 0 -2px 0 color-mix(in srgb, var(--muted) 24%, transparent)}.script-session-record-status-button--sync-record:focus-visible{outline:3px solid var(--border)}.script-session-flowscript__line-record{opacity:1;transition:background-color .16s ease, border-color .16s ease, color .16s ease, opacity var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), transform var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease);align-self:center;position:absolute;top:50%;right:15px;transform:translateY(-50%)}.script-session-flowscript__gap-icon{letter-spacing:.06em;color:currentColor;font-size:1.05rem;font-weight:900;line-height:.8;display:block}.script-session-flowscript__tiers{opacity:1;min-width:0;transition:min-height var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), opacity var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), transform var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), visibility 0s linear 0s;align-self:center;gap:0;display:grid;transform:translateY(0)}.script-session-flowscript__line--text-masked .script-session-flowscript__tiers{visibility:hidden;opacity:0;pointer-events:none;transition:min-height var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), opacity var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), transform var(--script-session-recording-transition-duration) var(--script-session-recording-transition-ease), visibility 0s linear var(--script-session-recording-transition-duration);transform:translateY(6px)}.script-session-flowscript__line--text-masked .script-session-flowscript__line-record{visibility:hidden;opacity:0;pointer-events:none}.script-session-flowscript__line--text-masked:hover .script-session-flowscript__tiers,.script-session-flowscript__line--text-masked:focus-within .script-session-flowscript__tiers{visibility:visible;opacity:.42;pointer-events:auto;transition:opacity .16s,transform .16s,visibility linear;transform:translateY(0)}.script-session-flowscript__line--text-masked:hover .script-session-flowscript__line-record,.script-session-flowscript__line--text-masked:focus-within .script-session-flowscript__line-record{visibility:visible;opacity:.42;pointer-events:auto}.script-session-flowscript__line--text-masked .script-session-flowscript__line-number-wrap{opacity:.34;transition:opacity .16s}.script-session-flowscript__line--text-masked:hover .script-session-flowscript__line-number-wrap,.script-session-flowscript__line--text-masked:focus-within .script-session-flowscript__line-number-wrap{opacity:1}.script-session-flowscript__text{font-size:calc(.86rem * var(--script-session-flowscript-font-scale,1));text-align:center;text-wrap:balance;color:var(--text);padding:8px 0;font-weight:400;line-height:1.34;display:block}.script-session-flowscript__text+.script-session-flowscript__text{border-top:0}.script-session-flowscript__text--flowscript+.script-session-flowscript__text{border-top:1px solid color-mix(in srgb, var(--border) 78%, transparent);margin-top:10px;padding-top:10px}.script-session-flowscript__text--written+.script-session-flowscript__text--gloss{margin-top:-2px;padding-top:0}.script-session-flowscript--scribing .script-session-flowscript__text--gloss+.script-session-flowscript__text--flowscript,.script-session-flowscript--scribing .script-session-flowscript__text--written+.script-session-flowscript__text--flowscript{border-top:1px solid color-mix(in srgb, var(--border) 78%, transparent);margin-top:10px;padding-top:10px}.script-session-flowscript__text:not(.script-session-flowscript__text--natural-english){-webkit-user-select:none;user-select:none}.script-session-flowscript__text--flowscript{color:color-mix(in srgb, var(--text) 92%, black);font-size:calc(.96rem * var(--script-session-flowscript-font-scale,1) * var(--script-session-flowscript-syllable-scale,1));text-wrap:balance;white-space:normal;font-weight:420;line-height:1.28}.script-session-scribe-partial-syllable{vertical-align:baseline;cursor:pointer;align-items:baseline;gap:1px;display:inline-flex}.script-session-scribe-partial-syllable:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.script-session-scribe-phoneme-part{display:inline-block}.script-session-scribe-phoneme-blank{vertical-align:baseline}:is(.script-session-flowscript--scribing .timed-syllable:has(.script-session-scribe-phoneme-blank:hover),.script-session-flowscript--scribing .timed-syllable:has(.script-session-scribe-phoneme-blank:focus),.script-session-flowscript--scribing .timed-syllable:has(.script-session-scribe-phoneme-blank:focus-visible),.script-session-flowscript--scribing .timed-syllable:has(.script-session-scribe-phoneme-blank.timed-token--active)){color:inherit;box-shadow:none;background:0 0}.script-session-flowscript__text--written,.script-session-flowscript__text--natural-english{font-size:calc(.96rem * var(--script-session-flowscript-font-scale,1) * var(--script-session-flowscript-syllable-scale,1));line-height:1.34}.script-session-flowscript__text--written{color:color-mix(in srgb, var(--text) 72%, var(--muted));font-weight:400}.script-session-flowscript__written-word{border-radius:calc(var(--radius-sm) - 3px);padding:0 2px;transition:background-color .12s,color .12s,box-shadow .12s}.script-session-flowscript__written-word--active,.script-session-flowscript .timed-token--active,.script-session-flowscript .script-session-flowscript__written-word--active{background:color-mix(in srgb, var(--color-red) 18%, transparent);color:var(--color-red);box-shadow:inset 0 -2px 0 color-mix(in srgb, var(--color-red) 84%, transparent)}.script-session-flowscript .timed-token--selected,.script-session-flowscript .timed-token--range-selected,.script-session-flowscript .script-session-flowscript__written-word--selected{background:color-mix(in srgb, var(--script-session-range-color) 26%, transparent);color:color-mix(in srgb, var(--script-session-range-color) 72%, var(--text));box-shadow:inset 0 -2px 0 color-mix(in srgb, var(--script-session-range-color) 84%, transparent)}.script-session-flowscript .timed-token--selected.timed-token--active,.script-session-flowscript .timed-token--range-selected.timed-token--active,.script-session-flowscript .script-session-flowscript__written-word--selected.script-session-flowscript__written-word--active{background:color-mix(in srgb, var(--color-red) 36%, transparent);color:var(--text);box-shadow:inset 0 -3px 0 var(--color-red)}.script-session-flowscript:not(.script-session-flowscript--dragging) .script-session-flowscript__text:not(.script-session-flowscript__text--natural-english) .timed-token:not(.timed-token--active):not(.timed-token--selected):not(.timed-token--range-selected):not(.script-session-flowscript__written-word--active):hover,.script-session-flowscript:not(.script-session-flowscript--dragging) .script-session-flowscript__text:not(.script-session-flowscript__text--natural-english) .timed-token:not(.timed-token--active):not(.timed-token--selected):not(.timed-token--range-selected):not(.script-session-flowscript__written-word--active):focus-visible{background:color-mix(in srgb, var(--muted) 18%, transparent);color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--muted) 26%, transparent)}.script-session-flowscript:not(.script-session-flowscript--dragging) .script-session-flowscript__text:not(.script-session-flowscript__text--natural-english) .timed-syllable-separator:hover,.script-session-flowscript:not(.script-session-flowscript--dragging) .script-session-flowscript__text:not(.script-session-flowscript__text--natural-english) .timed-syllable-separator:focus-visible{background:color-mix(in srgb, var(--muted) 14%, transparent);color:var(--text);box-shadow:none}.script-session-flowscript .timed-syllable-separator{min-width:0;min-height:.82em;margin-inline:.08em;padding:0 .04em;line-height:.82}.script-session-flowscript__text--gloss{color:color-mix(in srgb, var(--text) 48%, var(--muted));font-size:calc(.96rem * var(--script-session-flowscript-font-scale,1) * var(--script-session-flowscript-syllable-scale,1));font-style:italic;font-weight:400;line-height:1.35}.script-session-flowscript__gloss-line{text-wrap:balance;display:block}.script-session-flowscript__text--gloss .script-session-flowscript__natural-translation{font-size:calc(.58rem * var(--script-session-flowscript-font-scale,1));text-align:center;margin-top:6px;line-height:1.25;display:block}.script-session-flowscript__natural-translation{color:color-mix(in srgb, var(--text) 44%, var(--muted));white-space:normal;font-style:italic;font-weight:400}.timed-token--range-selected.timed-token--active,.timed-token--selected.timed-token--active{background:color-mix(in srgb, var(--color-red) 38%, transparent);color:var(--text);box-shadow:inset 0 -3px 0 var(--color-red)}.scribe-blank .scribe-blank__choice-trigger,.scribe-blank .scribe-blank__input{border:1px solid color-mix(in srgb, var(--muted) 26%, var(--border));border-bottom:2px solid color-mix(in srgb, var(--muted) 58%, var(--border));background:color-mix(in srgb, var(--panel) 88%, #f2f4f1);color:color-mix(in srgb, var(--text) 72%, var(--muted));box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--muted) 18%, transparent);opacity:1}.scribe-blank--answered .scribe-blank__choice-trigger,.scribe-blank--answered .scribe-blank__input{border-color:color-mix(in srgb, var(--muted) 34%, var(--border));border-bottom-color:color-mix(in srgb, var(--muted) 66%, var(--border));background:color-mix(in srgb, var(--panel) 82%, #eef0ed);color:color-mix(in srgb, var(--text) 78%, var(--muted));box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--muted) 22%, transparent)}.scribe-blank--correct .scribe-blank__choice-trigger,.scribe-blank--correct .scribe-blank__input{border-color:color-mix(in srgb, var(--accent) 38%, var(--border));border-bottom-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 72%, var(--panel));color:color-mix(in srgb, var(--accent) 86%, var(--text));box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--accent) 22%, transparent)}.scribe-blank--incorrect .scribe-blank__choice-trigger,.scribe-blank--incorrect .scribe-blank__input,.scribe-blank--revealed .scribe-blank__choice-trigger,.scribe-blank--revealed .scribe-blank__input{border-color:color-mix(in srgb, var(--scribe-error) 34%, var(--border));border-bottom-color:var(--scribe-error);background:color-mix(in srgb, var(--scribe-error-soft) 82%, var(--panel));color:var(--scribe-error-ink);box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--scribe-error) 22%, transparent)}.scribe-blank--active-choice .scribe-blank__choice-trigger{border-color:color-mix(in srgb, var(--muted) 48%, var(--border));border-bottom-color:color-mix(in srgb, var(--text) 58%, var(--muted));background:color-mix(in srgb, var(--panel) 78%, #eef0ed);color:var(--text);box-shadow:inset 0 -2px 0 color-mix(in srgb, var(--muted) 44%, transparent), 0 0 0 3px color-mix(in srgb, var(--muted) 12%, transparent)}.script-session:not(.script-session--scribe-review) .script-session-flowscript--scribing .script-session-flowscript__line:not(.script-session-flowscript__line--active) .scribe-blank__choice-trigger,.script-session:not(.script-session--scribe-review) .script-session-flowscript--scribing .script-session-flowscript__line:not(.script-session-flowscript__line--active) .scribe-blank__input{color:color-mix(in srgb, var(--muted) 72%, var(--text));box-shadow:none;background:0 0;border-bottom-color:#0000}.scribe-blank .scribe-blank__choice-trigger.timed-token--selected,.scribe-blank .scribe-blank__input.timed-token--selected,.scribe-blank .scribe-blank__choice-trigger.timed-token--range-selected,.scribe-blank .scribe-blank__input.timed-token--range-selected,.scribe-blank--correct .scribe-blank__choice-trigger.timed-token--selected,.scribe-blank--correct .scribe-blank__input.timed-token--selected,.scribe-blank--correct .scribe-blank__choice-trigger.timed-token--range-selected,.scribe-blank--correct .scribe-blank__input.timed-token--range-selected,.scribe-blank--incorrect .scribe-blank__choice-trigger.timed-token--selected,.scribe-blank--incorrect .scribe-blank__input.timed-token--selected,.scribe-blank--incorrect .scribe-blank__choice-trigger.timed-token--range-selected,.scribe-blank--incorrect .scribe-blank__input.timed-token--range-selected,.scribe-blank--revealed .scribe-blank__choice-trigger.timed-token--selected,.scribe-blank--revealed .scribe-blank__input.timed-token--selected,.scribe-blank--revealed .scribe-blank__choice-trigger.timed-token--range-selected,.scribe-blank--revealed .scribe-blank__input.timed-token--range-selected{border-bottom-color:var(--script-session-range-color);background:color-mix(in srgb, var(--script-session-range-color) 24%, var(--panel));color:color-mix(in srgb, var(--script-session-range-color) 82%, var(--text));box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--script-session-range-color) 58%, transparent), 0 0 0 2px color-mix(in srgb, var(--script-session-range-color) 14%, transparent)}.scribe-blank .scribe-blank__choice-trigger.timed-token--active,.scribe-blank .scribe-blank__input.timed-token--active,.scribe-blank--answered .scribe-blank__choice-trigger.timed-token--active,.scribe-blank--answered .scribe-blank__input.timed-token--active,.scribe-blank--correct .scribe-blank__choice-trigger.timed-token--active,.scribe-blank--correct .scribe-blank__input.timed-token--active,.scribe-blank--incorrect .scribe-blank__choice-trigger.timed-token--active,.scribe-blank--incorrect .scribe-blank__input.timed-token--active,.scribe-blank--revealed .scribe-blank__choice-trigger.timed-token--active,.scribe-blank--revealed .scribe-blank__input.timed-token--active{border-bottom-color:var(--color-red);background:color-mix(in srgb, var(--color-red) 24%, var(--panel));color:var(--color-red);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-red) 28%, transparent), inset 0 -3px 0 var(--color-red)}.scribe-blank--drop-target .scribe-blank__input,.scribe-blank--answered.scribe-blank--drop-target .scribe-blank__input,.scribe-blank--correct.scribe-blank--drop-target .scribe-blank__input,.scribe-blank--drop-target .scribe-blank__input.timed-token--active,.scribe-blank--answered.scribe-blank--drop-target .scribe-blank__input.timed-token--active,.scribe-blank--correct.scribe-blank--drop-target .scribe-blank__input.timed-token--active{border-color:color-mix(in srgb, var(--accent) 64%, var(--border));border-bottom-color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, var(--panel));color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 34%, transparent), 0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}@media (width<=640px){.app-main:has(>.scribe-setup){height:auto;min-height:calc(100vh - 47px);padding:12px;overflow:visible}.app-main:has(>.script-session){height:auto;min-height:0;padding:0;overflow:hidden}.scribe-setup{align-items:start;height:auto;min-height:calc(100vh - 97px)}.scribe-results{align-items:start;padding:12px}.scribe-setup__panel,.scribe-results__panel{padding:16px}.scribe-option-grid,.scribe-option-grid--two,.scribe-option-grid--three,.scribe-phoneme-super-grid,.scribe-phoneme-group-grid,.scribe-results__metrics,.scribe-results__actions{grid-template-columns:1fr}.scribe-results__header{grid-template-columns:1fr;gap:12px;display:grid}.scribe-results__review-button{justify-self:start;width:auto}.script-session{--script-session-stage-side-padding:12px;--script-session-video-panel-default-width:min(176px, 38vw);--script-session-phoneme-tray-open-height:min(148px, 28vh);height:100vh}.script-session__workspace{height:100%}.script-session-flowscript-column{min-height:0}}
