:root{--color-bg: #fbf6ee;--color-bg-soft: #fff8ef;--color-card: #fff8ef;--color-card-soft: #f4e8d8;--color-primary: #d8893a;--color-primary-hover: #c7772f;--color-fox-caramel: var(--color-primary);--color-primary-text: #fff8ef;--color-secondary: #8fa58a;--color-secondary-hover: #7c9478;--color-sage: var(--color-secondary);--color-sage-dark: #6f866b;--color-accent: #c96f4a;--color-terracotta: var(--color-accent);--color-terracotta-dark: #9f5138;--color-neutral: #4a3a30;--color-text: #2f241d;--color-cocoa: var(--color-text);--color-text-muted: #6f6257;--color-on-primary: var(--color-primary-text);--color-warm-note: var(--color-accent);--color-warm-note-bg: #f6ddcc;--color-border: #e5d3bf;--color-border-strong: #d8b58d;--color-focus: rgba(216, 137, 58, .24);--shadow-soft: 0 14px 34px rgba(47, 36, 29, .09);--shadow-medium: 0 18px 48px rgba(47, 36, 29, .13);color:var(--color-text);background:var(--color-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-bg-soft) 58%,var(--color-card-soft) 100%);display:grid;place-items:center;padding:24px 32px}.hero{width:min(840px,100%);display:grid;place-items:center;text-align:center}.hero-copy{width:100%;display:grid;justify-items:center}.brand-mark{display:inline-flex;align-items:center;gap:12px;color:var(--color-text);font-size:.98rem;font-weight:850;margin-bottom:16px}.brand-mark img{width:48px;height:48px;border:2px solid #ffffff;border-radius:50%;object-fit:cover;box-shadow:0 10px 24px #4a352729}.eyebrow{color:var(--color-primary);font-size:1rem;font-weight:800;letter-spacing:0;margin:0 0 18px}h1{color:var(--color-text);font-size:clamp(2.8rem,7vw,5.6rem);line-height:1;letter-spacing:0;margin:0;max-width:760px}.tagline{color:var(--color-secondary);font-size:clamp(1.42rem,3vw,2.16rem);font-weight:850;line-height:1.18;margin:12px 0 0}.rhythm-line{color:var(--color-primary);font-size:clamp(1rem,1.8vw,1.18rem);font-weight:850;line-height:1.35;margin:4px 0 -28px}.start-hero-image-frame{position:relative;width:min(940px,96vw);min-height:382px;overflow:visible;display:flex;align-items:center;justify-content:center;margin:0 auto}.start-hero-image-frame img{width:min(845px,98vw);height:clamp(470px,58vw,620px);object-fit:contain;object-position:center;position:relative;z-index:1}.home-soundwave{position:absolute;width:clamp(92px,9vw,116px);height:auto;left:calc(50% + 82px);top:31%;z-index:0;opacity:.82;filter:drop-shadow(0 0 8px rgba(216,137,58,.18));pointer-events:none}.home-soundwave rect{opacity:.9}.wave-sage{fill:var(--color-secondary)}.wave-amber{fill:var(--color-primary)}.wave-terracotta{fill:var(--color-accent)}.subtitle{color:var(--color-text-muted);display:grid;gap:2px;font-size:clamp(.98rem,1.35vw,1.12rem);font-weight:680;line-height:1.38;margin:-18px 0 16px;max-width:600px}.subtitle span:first-child{color:var(--color-secondary);font-size:clamp(1.12rem,1.65vw,1.32rem);font-weight:850}.code-card{width:min(560px,100%);border:1px solid rgba(155,95,47,.16);border-radius:8px;background:var(--color-card);padding:20px 22px;box-shadow:0 18px 48px #4a352724;text-align:left}.code-card label{display:block;color:var(--color-text);font-size:1rem;font-weight:850;margin-bottom:12px}.code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}.code-row input{width:100%;min-height:54px;border:2px solid var(--color-border-strong);border-radius:8px;background:var(--color-card);color:var(--color-text);font-size:1.04rem;font-weight:750;padding:0 16px;text-transform:uppercase;transition:border-color .16s ease,box-shadow .16s ease}.code-row input:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-focus);outline:none}.primary-action{border:0;border-radius:8px;background:var(--color-primary);color:var(--color-on-primary);font-size:1.02rem;font-weight:850;min-height:54px;padding:0 26px;box-shadow:0 14px 28px #4a352738;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.primary-action:hover{transform:translateY(-2px);background:var(--color-primary-hover);box-shadow:0 18px 34px #4a352738}.primary-action:focus-visible,.choice-card:focus-within,.start-link:focus-visible,.topic-list:focus-within{outline:4px solid rgba(155,95,47,.28);outline-offset:4px}.code-message{color:var(--color-warm-note);font-size:.98rem;font-weight:800;line-height:1.4;margin:14px 0 0}.dashboard-shell{place-items:start center;padding:28px}.dashboard{width:min(1120px,100%);display:grid;gap:22px}.dashboard-header{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:16px}.header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.brand-mark.compact{margin:0;font-size:1.04rem}.language-pill{border:1px solid var(--color-focus);border-radius:999px;background:var(--color-card);color:var(--color-primary);font-size:.88rem;font-weight:850;padding:8px 14px;white-space:nowrap}.student-greeting{display:grid;justify-items:center;gap:8px;padding:2px 0 4px;text-align:center}.practice-hero-image{display:block;width:min(360px,76vw);max-height:270px;max-width:90vw;height:auto;margin:0 auto .9rem;object-fit:contain;pointer-events:none;filter:drop-shadow(0 14px 20px rgba(74,53,39,.15))}.student-greeting h1{color:var(--color-sage-dark);font-size:clamp(1.68rem,3.35vw,2.55rem);line-height:1.08;margin:0;max-width:780px}.choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.choice-card{min-height:320px;border:1px solid rgba(216,137,58,.18);border-radius:8px;background:linear-gradient(180deg,var(--color-card) 0%,var(--color-bg-soft) 100%);color:var(--color-text);display:grid;grid-template-rows:auto 1fr auto;gap:16px;padding:24px;position:relative;overflow:hidden;box-shadow:var(--shadow-soft);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.choice-card:before{content:"";display:block;height:4px;left:0;opacity:.9;position:absolute;right:0;top:0}.choice-card:nth-child(1):before{background:linear-gradient(90deg,#d8893adb,#d8893a47)}.choice-card:nth-child(2):before{background:linear-gradient(90deg,#8fa58ae0,#8fa58a47)}.choice-card:nth-child(3):before{background:linear-gradient(90deg,#c96f4ac7,#c96f4a38)}.choice-card:hover{border-color:#d8893a4d;box-shadow:var(--shadow-medium);transform:translateY(-2px)}.choice-card-copy{align-self:start;display:grid;gap:12px;grid-row:1;min-height:112px}.ready-badge{justify-self:start;border-radius:999px;background:#8fa58a2e;color:var(--color-sage-dark);font-size:.74rem;font-weight:900;padding:6px 10px}.choice-card h2{color:var(--color-sage-dark);font-size:clamp(1.35rem,2.4vw,1.72rem);line-height:1.16;margin:0}.choice-card p{color:var(--color-text-muted);font-size:1rem;font-weight:680;line-height:1.55;margin:0}.choice-card-footer{align-items:center;display:flex;gap:14px;grid-row:3;justify-content:space-between;min-height:46px}.status-stack{display:grid;gap:7px}.pack-count,.placeholder-note{color:var(--color-terracotta-dark);font-size:.88rem;font-weight:850;line-height:1.3}.start-link{flex:0 0 auto;border:0;border-radius:8px;background:var(--color-primary);color:var(--color-on-primary);font-size:.95rem;font-weight:900;min-height:44px;min-width:92px;margin-top:0;padding:0 20px;transition:background .16s ease,transform .16s ease}.start-link:hover{background:var(--color-primary-hover);transform:translateY(-1px)}.start-link:disabled{cursor:default;opacity:.68;transform:none}.topic-list{align-self:start;border:1px solid rgba(143,165,138,.18);border-radius:8px;background:#8fa58a1f;color:var(--color-sage-dark);font-size:.92rem;font-weight:850;grid-row:2;line-height:1.4;min-height:48px;padding:10px 12px}.journey-summary{align-self:start;border:1px solid rgba(216,137,58,.16);border-radius:8px;background:#f4e8d8b3;display:grid;gap:12px;grid-row:2;min-height:78px;padding:10px 12px}.journey-summary p{align-items:baseline;color:var(--color-text-muted);display:flex;gap:8px;font-size:1rem;font-weight:850;line-height:1.4;margin:0}.journey-summary strong{color:var(--color-secondary);font-size:1.6rem;line-height:1}.best-try-badge{justify-self:start;border-radius:999px;background:#c96f4a1f;color:var(--color-terracotta-dark);font-size:.82rem;font-weight:900;line-height:1.25;padding:7px 10px}.practice-detail{display:grid;gap:18px}.back-link{justify-self:start;border:1px solid rgba(111,134,107,.34);border-radius:8px;background:var(--color-bg-soft);color:var(--color-sage-dark);font-size:.94rem;font-weight:900;min-height:42px;padding:0 16px}.back-link:hover{background:#8fa58a2e}.danger-link{border-color:#c96f4a57;color:var(--color-terracotta-dark)}.danger-link:hover{background:#c96f4a24}.detail-heading{display:grid;gap:8px}.detail-heading h1{color:var(--color-sage-dark);font-size:clamp(2rem,4vw,3.1rem);line-height:1.08;margin:0}.detail-heading p,.empty-note{color:var(--color-text-muted);font-size:1rem;font-weight:680;line-height:1.55;margin:0}.pack-list,.sentence-list{display:grid;gap:12px}.pack-option,.sentence-card,.journey-detail-card{border:1px solid rgba(216,137,58,.16);border-radius:8px;background:linear-gradient(180deg,var(--color-card) 0%,var(--color-bg-soft) 100%);box-shadow:var(--shadow-soft)}.pack-option{align-items:center;display:flex;gap:16px;justify-content:space-between;padding:18px}.pack-option h2{color:var(--color-sage-dark);font-size:1.24rem;line-height:1.2;margin:0 0 6px}.pack-option p{color:var(--color-text-muted);font-size:.95rem;font-weight:750;margin:0}.sentence-card{align-items:center;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;padding:16px 18px}.sentence-number,.accent-pill{border-radius:999px;font-size:.82rem;font-weight:900;line-height:1;padding:8px 10px}.sentence-number{background:#d8893a29;color:var(--color-primary-hover)}.accent-pill{background:#8fa58a2e;color:var(--color-sage-dark)}.stars-pill{border-radius:999px;background:#c96f4a1f;color:var(--color-terracotta-dark);font-size:.82rem;font-weight:900;line-height:1;padding:8px 10px}.sentence-meta{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:end}.sentence-card p{color:var(--color-text);font-size:1.06rem;font-weight:760;line-height:1.45;margin:0}.journey-detail-card{display:grid;gap:14px;max-width:520px;padding:22px}.journey-detail-card p{color:var(--color-text-muted);font-size:1rem;font-weight:780;line-height:1.5;margin:0}.journey-detail-card p:first-child{align-items:baseline;display:flex;gap:10px}.journey-detail-card strong{color:var(--color-sage-dark);font-size:2.2rem;line-height:1}.journey-detail-note{max-width:420px}.teacher-dashboard{display:grid;gap:22px}.teacher-creation-heading{display:grid;gap:8px;margin-top:6px}.teacher-creation-intro{align-items:center;column-gap:22px;grid-template-columns:minmax(0,1fr) minmax(210px,250px);justify-items:start;margin-bottom:-4px}.teacher-assistant-image{justify-self:start;width:clamp(220px,21vw,250px);max-height:240px;object-fit:contain;filter:drop-shadow(0 12px 18px rgba(47,36,29,.12));transform:translateY(18px)}.teacher-creation-heading h2{color:var(--color-sage-dark);font-size:clamp(1.65rem,3vw,2.35rem);font-weight:900;line-height:1.12;margin:0}.teacher-creation-heading p{color:var(--color-sage-dark);font-size:1.05rem;font-weight:720;line-height:1.45;margin:0}.class-management-heading{margin-top:12px}.teacher-form,.teacher-preview,.student-preview-panel{border:1px solid rgba(155,95,47,.14);border-radius:8px;background:var(--color-card);box-shadow:var(--shadow-soft)}.teacher-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:22px}.teacher-creation-options{display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr))}.teacher-creation-card{border:1px solid rgba(155,95,47,.14);border-radius:8px;background:var(--color-card);box-shadow:var(--shadow-soft);display:grid;gap:12px;padding:22px}.teacher-creation-card h2{color:var(--color-text);font-size:1.32rem;line-height:1.2;margin:0}.teacher-creation-card p{color:var(--color-text-muted);font-size:.98rem;font-weight:760;line-height:1.45;margin:0}.teacher-form label,.class-code-form label{color:var(--color-text);display:grid;gap:8px;font-size:.94rem;font-weight:850}.teacher-form input,.teacher-form select,.teacher-form textarea,.class-code-form input{width:100%;border:2px solid var(--color-border-strong);border-radius:8px;background:var(--color-card);color:var(--color-text);font:inherit;font-size:1rem;font-weight:700;padding:12px 14px}.teacher-form textarea{resize:vertical}.teacher-form input:focus,.teacher-form select:focus,.teacher-form textarea:focus,.class-code-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-focus);outline:none}.teacher-form-wide{grid-column:1 / -1}.teacher-voice-input{border:1px solid rgba(155,95,47,.14);border-radius:8px;display:grid;gap:12px;padding:16px}.teacher-voice-input h3{color:var(--color-text);font-size:1.05rem;line-height:1.2;margin:0 0 6px}.teacher-voice-input p{color:var(--color-text-muted);font-size:.95rem;font-weight:700;line-height:1.5;margin:0}.teacher-voice-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.voice-status{color:var(--color-primary);font-size:.94rem;font-weight:900}.voice-preview{background:var(--color-card);border:1px solid var(--color-border);border-radius:8px;display:grid;gap:6px;padding:12px}.voice-preview span{color:var(--color-text);font-size:.86rem;font-weight:900}.workflow-heading{align-items:center;display:flex;justify-content:flex-start}.workflow-step{border-top:1px solid rgba(155,95,47,.14);display:grid;gap:4px;padding-top:18px}.workflow-step:first-of-type{border-top:0;padding-top:0}.workflow-step span{color:var(--color-primary);font-size:.78rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.workflow-step h2{color:var(--color-text);font-size:1.24rem;line-height:1.2;margin:0}.field-hint{color:var(--color-text-muted);font-size:.88rem;font-weight:760}.editing-note{border-radius:8px;background:var(--color-card-soft);color:var(--color-primary);font-size:.94rem;font-weight:900;line-height:1.4;margin:0;padding:10px 12px}.teacher-preview{display:grid;gap:16px;padding:22px}.class-code-section,.student-progress-section{gap:18px}.student-progress-select{color:var(--color-text);display:grid;gap:8px;font-size:.94rem;font-weight:850;max-width:280px}.student-progress-select select{width:100%;border:2px solid var(--color-border-strong);border-radius:8px;background:var(--color-card);color:var(--color-text);font:inherit;font-size:1rem;font-weight:700;padding:12px 14px}.teacher-preview-heading{align-items:center;display:flex;gap:16px;justify-content:space-between}.teacher-preview-heading h2,.student-preview-panel h2{color:var(--color-text);font-size:1.34rem;line-height:1.2;margin:0}.teacher-preview-heading p{color:var(--color-text-muted);font-size:.98rem;font-weight:700;line-height:1.5;margin:6px 0 0}.suggested-sentences{display:grid;gap:12px}.class-pack-groups,.class-list{display:grid;gap:18px}.class-pack-group{border-top:1px solid rgba(155,95,47,.14);display:grid;gap:12px;padding-top:14px}.class-pack-group:first-child{border-top:0;padding-top:0}.class-pack-group-title,.class-card h3{color:var(--color-text);font-size:1.08rem;line-height:1.2;margin:0}.class-pack-group-title{font-size:1rem;font-weight:900}.class-code-form{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}.class-card{border:1px solid rgba(155,95,47,.14);border-radius:8px;background:var(--color-card);display:grid;gap:14px;padding:16px}.class-card p{color:var(--color-text-muted);font-size:.95rem;font-weight:720;line-height:1.45;margin:6px 0 0}.code-table-wrap{overflow-x:auto}.code-table,.print-code-list table{border-collapse:collapse;width:100%}.code-table th,.code-table td,.print-code-list th,.print-code-list td{border-bottom:1px solid rgba(155,95,47,.18);color:var(--color-text);padding:10px 8px;text-align:left}.code-table th,.print-code-list th{color:var(--color-text-muted);font-size:.82rem;font-weight:900;text-transform:uppercase}.print-code-list{display:none}.text-import-step{display:grid;gap:14px}.suggested-sentences h3{color:var(--color-text);font-size:1.08rem;line-height:1.2;margin:4px 0 0}.suggested-sentence-row{align-items:start;border:1px solid rgba(155,95,47,.14);border-radius:8px;background:var(--color-card);display:grid;gap:12px;grid-template-columns:110px minmax(0,1fr) auto;padding:12px}.include-toggle{align-items:center;display:flex!important;gap:8px!important;padding-top:12px}.include-toggle input{accent-color:var(--color-primary);height:18px;width:18px}.suggested-sentence-edit{display:grid;gap:8px}.long-sentence-note{align-self:start;border-radius:999px;background:var(--color-card-soft);color:var(--color-text-muted);font-size:.78rem;font-weight:900;padding:5px 9px;width:fit-content}.student-preview-panel{display:grid;gap:14px;padding:18px}.teacher-pack-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.practice-start-button{justify-self:start}.practice-session{display:grid;gap:18px}.practice-panel,.completion-card{border:1px solid rgba(216,137,58,.16);border-radius:8px;background:linear-gradient(180deg,var(--color-card) 0%,var(--color-bg-soft) 100%);box-shadow:var(--shadow-soft);display:grid;gap:20px;padding:26px}.practice-session-heading{display:grid;gap:8px}.practice-session-heading h1,.completion-card h1{color:var(--color-sage-dark);font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.08;margin:0}.practice-session-heading p,.completion-card p{color:var(--color-text-muted);font-size:1rem;font-weight:820;line-height:1.45;margin:0}.target-sentence{color:var(--color-text);font-size:clamp(1.7rem,4vw,3.1rem);font-weight:850;line-height:1.18;margin:0;max-width:780px}.practice-actions,.feedback-actions,.completion-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.practice-actions{align-items:end;gap:18px;justify-content:center;margin-top:4px}.practice-control-button,.self-listen-button,.next-button{align-items:center;display:inline-flex;flex-direction:column;gap:15px;justify-content:center;line-height:1.15;text-align:center}.button-icon{color:currentColor;display:inline-block;flex:0 0 auto;position:relative}.play-icon{border-bottom:14px solid transparent;border-left:22px solid currentColor;border-top:14px solid transparent;height:0;margin:0 0 2px 5px;width:0}.mic-icon{background:linear-gradient(currentColor,currentColor) center 9px / 60% 3px no-repeat,linear-gradient(currentColor,currentColor) center 18px / 60% 3px no-repeat;border:4px solid currentColor;border-radius:999px;height:42px;margin-bottom:8px;width:29px}.mic-icon:before{background:currentColor;border-radius:999px;bottom:-20px;content:"";height:17px;left:50%;position:absolute;transform:translate(-50%);width:4px}.mic-icon:after{border:4px solid currentColor;border-left:0;border-radius:0 999px 999px 0;border-top:0;bottom:-8px;content:"";height:26px;left:50%;position:absolute;transform:translate(-50%) rotate(45deg);width:26px}.headphones-icon{border:3px solid currentColor;border-bottom:0;border-radius:999px 999px 0 0;height:30px;margin-bottom:8px;width:40px}.headphones-icon:before,.headphones-icon:after{background:currentColor;border-radius:999px;bottom:-12px;content:"";height:17px;position:absolute;width:9px}.headphones-icon:before{left:-6px}.headphones-icon:after{right:-6px}.arrow-icon{height:11px;width:15px}.arrow-icon:before{background:currentColor;border-radius:999px;content:"";height:2px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:13px}.arrow-icon:after{border-right:2px solid currentColor;border-top:2px solid currentColor;content:"";height:7px;position:absolute;right:0;top:50%;transform:translateY(-50%) rotate(45deg);width:7px}.model-listen-button{border-radius:999px;border:1px solid rgba(216,137,58,.28);background:#d8893a29;color:var(--color-primary-hover);font-size:.94rem;font-weight:900;min-height:118px;min-width:118px;padding:18px;box-shadow:none}.model-listen-button:hover{background:#d8893a3d;color:var(--color-primary-hover)}.speak-button{border-radius:999px;font-size:1.05rem;min-height:148px;min-width:148px;padding:24px 22px 20px;box-shadow:0 16px 32px #d8893a47}.speak-button.is-recording{animation:recording-pulse 1.4s ease-in-out infinite;background:var(--color-terracotta);box-shadow:0 18px 36px #c96f4a47;transform:scale(1.03)}.speak-button.is-recording:hover{background:var(--color-terracotta-dark)}.self-listen-button{border-radius:999px;font-size:.9rem;font-weight:900;min-height:118px;min-width:118px;padding:18px;width:118px}.self-listen-button:disabled{border-color:#6f62572e;background:#6f625714;color:#6f62577a;cursor:default;opacity:1}.self-listen-button:not(:disabled){border-color:#8fa58a57;background:#8fa58a29;color:var(--color-sage-dark)}.self-listen-button:not(:disabled):hover{background:#8fa58a3d}.next-button{flex-direction:row;gap:9px;min-height:42px;min-width:86px;padding:0 18px}@keyframes recording-pulse{0%,to{box-shadow:0 16px 32px #c96f4a3d}50%{box-shadow:0 18px 42px #d8893a57}}.practice-instruction{color:var(--color-text-muted);font-size:1rem;font-weight:760;line-height:1.45;margin:-4px 0 0}.recording-note{color:var(--color-sage-dark);font-size:1rem;font-weight:850;line-height:1.45;margin:0}.recording-status{align-items:center;border:1px solid rgba(143,165,138,.18);border-radius:8px;background:#8fa58a1a;display:grid;gap:8px;justify-items:center;justify-self:center;padding:10px 16px;width:min(280px,100%)}.recording-status p{color:var(--color-sage-dark);font-size:1rem;font-weight:850;line-height:1.45;margin:0}.listening-wave{align-items:center;display:inline-flex;gap:5px;height:34px;--voice-level: 0}.listening-wave span{animation:wave-pulse .9s ease-in-out infinite;background:var(--color-primary);border-radius:999px;height:calc(10px + (var(--voice-level) * 18px));width:4px}.listening-wave span:nth-child(1),.listening-wave span:nth-child(7){background:var(--color-sage);height:calc(8px + (var(--voice-level) * 10px))}.listening-wave span:nth-child(2){animation-delay:.12s;background:var(--color-sage);height:calc(16px + (var(--voice-level) * 14px))}.listening-wave span:nth-child(3){animation-delay:.24s;height:calc(24px + (var(--voice-level) * 18px))}.listening-wave span:nth-child(4){animation-delay:.36s;background:var(--color-fox-caramel);height:calc(30px + (var(--voice-level) * 24px))}.listening-wave span:nth-child(5){animation-delay:.18s;background:var(--color-fox-caramel);height:calc(22px + (var(--voice-level) * 18px))}.listening-wave span:nth-child(6){animation-delay:.3s;background:var(--color-sage);height:calc(14px + (var(--voice-level) * 14px))}@keyframes wave-pulse{0%,to{transform:scaleY(.65)}50%{transform:scaleY(1)}}.feedback-card{border:1px solid rgba(143,165,138,.22);border-radius:8px;background:#8fa58a1a;display:grid;gap:14px;padding:18px}.feedback-card p{color:var(--color-text);font-size:1.08rem;font-weight:820;line-height:1.5;margin:0}.feedback-card .feedback-hint{color:var(--color-text-muted);font-size:.96rem;font-weight:760}.feedback-card span{color:var(--color-terracotta-dark);font-size:.94rem;font-weight:900}.demo-mode-label{justify-self:start;border-radius:999px;background:var(--color-warm-note-bg);color:var(--color-warm-note);font-size:.78rem;font-weight:900;line-height:1.2;padding:7px 10px}@media(max-width:860px){.app-shell{padding:22px 20px;place-items:start center}.hero{grid-template-columns:1fr}.brand-mark{margin-bottom:16px}.start-hero-image-frame{min-height:316px;width:min(760px,98vw)}.start-hero-image-frame img{width:min(650px,100vw);height:clamp(360px,68vw,470px)}.home-soundwave{width:min(94px,21vw);left:calc(50% + 60px);top:30%}.choice-grid{grid-template-columns:1fr}.teacher-creation-options{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-creation-intro{align-items:start;justify-items:start;grid-template-columns:1fr;row-gap:12px}.teacher-assistant-image{width:min(190px,56vw);max-height:200px;transform:none}.class-code-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:580px){.app-shell{padding:22px 16px}.code-row{grid-template-columns:1fr}.primary-action{width:100%}.student-greeting{padding-top:10px}.start-hero-image-frame{min-height:260px}.start-hero-image-frame img{width:min(520px,108vw);height:clamp(290px,82vw,390px)}.home-soundwave{width:min(76px,23vw);left:calc(50% + 46px);top:29%}.choice-card{min-height:276px;padding:20px}.choice-card-footer{align-items:flex-start;flex-direction:column}.teacher-form,.teacher-creation-options,.class-code-form{grid-template-columns:1fr}.teacher-preview-heading{align-items:flex-start;flex-direction:column}.pack-option,.sentence-card{align-items:flex-start;grid-template-columns:1fr}.pack-option{flex-direction:column}.teacher-pack-actions{justify-content:start}.suggested-sentence-row{grid-template-columns:1fr}.include-toggle{padding-top:0}.sentence-meta{justify-content:start}}@media print{body *{visibility:hidden}.print-code-list,.print-code-list *{visibility:visible}.print-code-list{display:block;left:0;padding:24px;position:absolute;top:0;width:100%}.print-hidden{display:none}.print-code-list h1{color:#000;font-size:22pt;margin:0 0 16px}.print-code-list p{color:#000;font-size:12pt;margin:0 0 8px}.print-code-list table{margin-top:18px}.print-code-list th,.print-code-list td{border-bottom:1px solid #000;color:#000;font-size:11pt;padding:8px 6px}}@media(max-width:760px){.dashboard-shell{padding:18px 16px}.dashboard-header{align-items:flex-start}.choice-grid{grid-template-columns:1fr}}
