@font-face{font-family:'Source Sans 3';src:url('brand/assets/fonts/source-sans-3-variable.ttf') format('truetype');font-weight:200 900;font-display:swap}@font-face{font-family:Fraunces;src:url('brand/assets/fonts/fraunces-variable.ttf') format('truetype');font-weight:100 900;font-display:swap}
*{box-sizing:border-box}body{margin:0;background:var(--tc-canvas);color:var(--tc-text);font-family:var(--tc-font-body);font-size:16px;line-height:1.6}button,input,select{font:inherit}button{cursor:pointer;min-height:48px}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--tc-focus);outline-offset:3px}h1,h2,h3{font-family:var(--tc-font-display);font-weight:500;line-height:1.2}h1{font-size:28px;margin:12px 0}h2{font-size:26px;margin:12px 0}h3{font-size:21px;margin:10px 0}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--tc-text-muted);margin:0}.muted{color:var(--tc-text-muted)}.small{font-size:14px}.skip{position:absolute;top:-100px;padding:12px;background:var(--tc-surface);color:var(--tc-text);z-index:20}.skip:focus{top:0}.masthead{max-width:1440px;margin:auto;padding:22px 40px;display:flex;align-items:center;gap:22px;border-bottom:1px solid var(--tc-border-subtle)}.masthead img{width:122px;height:118px;object-fit:contain}.masthead p{margin:4px 0;font-family:var(--tc-font-display);font-size:23px}.development{margin-left:auto;font-size:13px;color:var(--tc-text-muted);padding:8px 12px;border:1px solid var(--tc-border-subtle);border-radius:8px}.layout{max-width:1400px;display:grid;grid-template-columns:minmax(220px,1fr) minmax(330px,1.65fr) minmax(240px,1fr);gap:32px;padding:36px;margin:auto;align-items:start}.family-panel,.voice-panel{padding:16px 0}.family-panel h1{font-size:27px}.recipe-tile{background:var(--tc-surface-soft);padding:24px;border-radius:var(--tc-radius-card);margin:24px 0}.recipe-tile h2{font-size:28px}.recipe-tile p{font-size:14px}.lineage{color:var(--tc-brand);padding:12px 0;border-top:1px solid var(--tc-border-subtle)}.notice{font-size:14px;background:var(--tc-warning-surface);color:var(--tc-warning);border-radius:10px;padding:14px;margin:16px 0}.notice p{margin:8px 0}.cooking-panel{padding:28px;background:var(--tc-surface);border:1px solid var(--tc-border-subtle);border-radius:24px;box-shadow:var(--tc-shadow-card)}.cooking-head,.progress-label,.section-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.progress-label{font-size:13px;color:var(--tc-text-muted);margin:22px 0 8px}progress{width:100%;height:5px;accent-color:var(--tc-brand);border:0;background:var(--tc-surface-soft)}progress::-webkit-progress-bar{background:var(--tc-surface-soft);border-radius:3px}progress::-webkit-progress-value{background:var(--tc-brand);border-radius:3px}#step-title{font-size:32px;margin-top:28px}.step-text{font-size:20px;line-height:1.7}.audio-label{padding:12px 0;font-size:14px;color:var(--tc-brand);border-top:1px solid var(--tc-border-subtle);margin:24px 0 8px}.step-controls{display:grid;grid-template-columns:1.35fr 1fr;gap:12px}.step-controls button{min-height:56px}.primary,.secondary,.quiet{border-radius:var(--tc-radius-control);padding:10px 16px;font-weight:600;font-size:15px}.primary{background:var(--tc-brand);color:var(--tc-on-brand);border:1px solid var(--tc-brand)}.primary:hover{background:var(--tc-brand-hover)}.secondary{background:var(--tc-surface-soft);color:var(--tc-text);border:1px solid var(--tc-border-control)}.quiet{background:transparent;color:var(--tc-brand);border:0}.navigation{margin:24px 0}.timer{padding:16px;border:1px solid var(--tc-border-subtle);border-radius:12px;margin:18px 0}.timer .number{font-size:28px;font-variant-numeric:tabular-nums;color:var(--tc-brand)}.timer-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.timer-controls{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.timer p{margin:4px 0;font-size:13px;color:var(--tc-text-muted)}.conversation{border-top:1px solid var(--tc-border-subtle);padding-top:16px}.badge{font-size:12px;color:var(--tc-brand);border:1px solid var(--tc-border-control);border-radius:30px;padding:4px 10px;white-space:nowrap}.conversation label,.voice-panel>label{display:block;font-size:14px;font-weight:600;margin:14px 0 6px}input:not([type=checkbox]),select{width:100%;min-height:48px;border:1px solid var(--tc-border-control);border-radius:8px;padding:10px 12px;background:var(--tc-surface);color:var(--tc-text)}.conversation button{margin-top:12px;width:100%}#answer{margin:16px 0;background:var(--tc-surface-soft);padding:16px;border-radius:12px;font-size:16px}#answer strong{font-size:13px;display:block;margin-bottom:8px}.voice-panel>p{font-size:15px}.voice-details{background:var(--tc-surface);padding:16px;border-radius:12px;border:1px solid var(--tc-border-subtle);margin:16px 0;font-size:14px}.voice-details .badge{display:inline-block;margin-bottom:8px}.voice-details p{margin:8px 0}.voice-panel>button{width:100%;margin:8px 0}.enrollment{border-top:1px solid var(--tc-border-subtle);padding-top:18px;margin-top:24px}.enrollment button{width:100%;margin:6px 0}.enrollment div{font-size:14px;padding:12px;background:var(--tc-surface-soft);border-radius:8px}.scenarios{margin-top:24px;border-top:1px solid var(--tc-border-subtle);padding-top:16px}.scenarios summary{min-height:48px;font-weight:600;cursor:pointer}.check{display:flex;align-items:center;gap:10px;min-height:48px;font-size:14px}.check input{width:18px;height:18px;accent-color:var(--tc-brand)}.scenarios button{width:100%}.status{max-width:1100px;margin:0 auto 24px;padding:16px 24px;font-size:15px;color:var(--tc-warning);min-height:50px}footer{text-align:center;color:var(--tc-text-muted);font-size:13px;padding:20px;border-top:1px solid var(--tc-border-subtle)}dialog{width:min(460px,calc(100% - 32px));border:1px solid var(--tc-border-control);background:var(--tc-surface);color:var(--tc-text);border-radius:20px;padding:28px}dialog::backdrop{background:var(--tc-text);opacity:.5}dialog button{width:100%}
@media(max-width:1050px){.layout{grid-template-columns:1.5fr 1fr;gap:24px;padding:24px}.family-panel{grid-column:1/-1}.family-panel .recipe-tile{padding:16px;margin:12px 0}.family-panel>p:not(.eyebrow){display:none}.family-panel h1{margin:8px 0}.masthead{padding:16px 24px}.development{max-width:180px}.masthead img{width:100px;height:95px}}
@media(max-width:650px){.masthead{padding:14px 18px;gap:14px;flex-wrap:wrap}.masthead img{width:86px;height:86px}.masthead>div{flex:1}.masthead p{font-size:19px}.development{margin:0;max-width:none;width:100%;font-size:12px;padding:6px 10px}.layout{display:flex;flex-direction:column;padding:16px;gap:16px}.layout>*{width:100%}.family-panel{padding:0}.family-panel h1{font-size:22px}.cooking-panel{padding:20px;border-radius:18px}.voice-panel{padding-top:16px}#step-title{font-size:29px}.step-text{font-size:18px}.cooking-head .quiet{font-size:13px;padding:10px}.step-controls{gap:8px}.primary,.secondary{padding:10px;font-size:14px}.section-row h3{font-size:19px}.badge{font-size:11px}.status{padding:16px}.voice-panel>p{max-width:40ch}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
