:root{--orange:#f15833;--ink:#171b2b;--muted:#62687a;--line:#e0e2e9;--soft:#fff0ea;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff}

*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;background:#fff}
a{color:inherit}
button,input,textarea{font:inherit}
button{border:1px solid var(--orange);background:var(--orange);color:#171b2b;border-radius:10px;padding:12px 18px;font-weight:600;transition:background .15s}
button:hover:not(:disabled){background:#ffede6}
button.secondary{color:var(--ink);background:white;border-color:#efb39f}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #90351c;outline-offset:3px}
input:focus,textarea:focus{outline:2px solid #b13d20;outline-offset:1px}
input,textarea{border:1px solid #c8cdd8;border-radius:7px;padding:12px 14px;color:var(--ink);background:#fff;min-width:0}
label{color:var(--ink);font-size:14px;gap:8px}
button.text-button{border:0;background:transparent;padding:5px 0;color:#555b6c;font-weight:400;text-decoration:underline;text-underline-offset:3px}
.note{color:var(--muted);font-size:12px;line-height:1.6}
.site-header{height:76px;padding:0 5.5%;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;gap:10px;align-items:center;text-decoration:none}
.brand strong{font-size:32px;letter-spacing:-1.5px}
.brand span{color:var(--muted);font-size:13px}
.brand img{width:111px;height:auto}
.beta-badge{font-size:12px;border-radius:30px;background:var(--soft);padding:8px 13px;color:#8e3018}
.beta-badge:before{content:'●';margin-right:8px;color:var(--orange)}
.landing-panel{max-width:1440px;margin:auto;grid-template-columns:minmax(0,1.2fr) minmax(330px,.9fr);gap:7%;padding:64px 5.5% 0;border:0;align-items:start}
.eyebrow{text-transform:uppercase;letter-spacing:2.5px;font-size:11px;font-weight:600;color:#a3351b!important}
.landing-copy h1{font-size:clamp(34px,4vw,60px);letter-spacing:-2px;line-height:1.12;margin:22px 0}
.landing-copy>p:not(.eyebrow){font-size:19px;color:var(--muted);line-height:1.6;margin:0 0 28px}
.landing-copy ul.benefits{list-style:none;padding:0;gap:18px;color:var(--ink);font-size:15px}
.benefits li{display:flex;align-items:center;gap:16px}
.benefits li span{border-radius:50%;background:var(--soft);width:40px;height:40px;display:grid;place-items:center;font-size:23px}
.coaching-art{width:100%;height:auto;object-fit:contain;margin-top:30px;border-radius:60px 0 0 0;display:block}
.account-card{padding:32px;border:1px solid var(--line);border-radius:14px;box-shadow:0 15px 40px #171b2b0a;display:grid;gap:22px}
.account-card h2{font-size:30px;letter-spacing:-.6px}
.account-intro{color:var(--muted);margin:-12px 0 0;font-size:16px}
.account-tabs{display:flex;border-bottom:1px solid var(--line)}
.account-tabs button{width:50%;border:0;border-radius:0;background:none;color:var(--muted);border-bottom:3px solid transparent;font-weight:400}
.account-tabs button[aria-pressed=true]{border-bottom-color:var(--orange);color:var(--ink);font-weight:600}
.password-field{position:relative;display:block}
.password-field input{padding-right:65px}
.password-field button{position:absolute;right:8px;top:5px;background:none;border:0;padding:8px;color:var(--muted);font-size:12px}
.account-card #requestResetButton{justify-self:end;margin-top:-12px}
.account-actions{display:grid;gap:10px}
.account-actions button{width:100%}
.account-actions button span{margin-left:12px}
#authStatus{min-height:36px;text-align:center;overflow-wrap:anywhere}
.help-note{text-align:center;color:var(--muted);font-size:12px;margin:22px 0}
.landing-footer{border-top:1px solid var(--line);padding:18px 5.5%;display:flex;align-items:center;gap:24px;font-size:11px;color:var(--muted)}
.landing-footer>span:nth-child(2){margin-left:auto}
.set-password-panel{max-width:470px;margin:70px auto;padding:32px;border:1px solid var(--line);border-radius:14px;background:#fff;display:grid;gap:22px}
.chat-workspace{display:grid;grid-template-columns:280px minmax(0,1fr);height:calc(100dvh - 76px)}
.workspace-sidebar{border-right:1px solid var(--line);padding:24px 20px 16px;display:flex;flex-direction:column;gap:24px;overflow:auto}
.workspace-sidebar>button{width:100%;flex-shrink:0}
.workspace-sidebar h2,.session-options summary,.progress-heading{text-transform:uppercase;font-size:11px;letter-spacing:1.5px;font-weight:600;color:var(--muted)}
.access-panel{display:grid;grid-template-columns:1fr;padding:0;border:0;gap:12px;background:#fff}
.access-panel label{font-size:12px}
.session-options{border-top:1px solid var(--line);padding-top:20px}
.session-options summary{cursor:pointer;margin-bottom:14px}
.resume-panel{display:grid;grid-template-columns:1fr;padding:0;gap:12px;border:0;background:#fff}
.resume-panel label{font-size:12px}
.resume-panel input{font-size:12px}
.session-options>.text-button{font-size:12px;margin:12px 0 4px}
.progress-panel{padding:20px 0 0;border-top:1px solid var(--line);border-bottom:0}
.progress-topline{display:block}
.current-mode{font-size:12px;color:var(--muted);margin-top:10px}
.session-id{font-size:10px;text-align:left;margin-top:8px;max-width:230px}
.progress-list{display:grid;gap:8px}
.progress-item{border-color:var(--line);border-radius:8px;background:#fafafb;color:var(--ink);font-size:12px;line-height:1.5}
.progress-item.active,.progress-item.completed{background:var(--soft);border-color:#efb39f;color:var(--ink)}
.sidebar-account{display:flex;align-items:center;gap:10px;margin-top:auto;border-top:1px solid var(--line);padding-top:20px;flex-wrap:wrap}
.user-avatar{color:var(--orange);background:var(--soft);padding:10px;border-radius:50%}
.sidebar-account>div{min-width:0;flex:1}
.sidebar-account strong{display:block;font-size:13px}
.sidebar-account #userEmail{display:block;font-size:10px;color:var(--muted);overflow-wrap:anywhere}
.sidebar-account button{font-size:12px}
.conversation{display:flex;flex-direction:column;min-width:0;min-height:0}
.conversation-header{display:flex;justify-content:space-between;align-items:center;padding:23px 36px;border-bottom:1px solid var(--line);gap:14px}
.conversation-header h1{font-size:23px;letter-spacing:-.5px}
.conversation-header p{font-size:13px;color:var(--muted);margin:6px 0 0}
#sessionStatus{font-size:11px;color:var(--muted)}
.chat-panel{display:flex;flex-direction:column;flex:1;min-height:0;padding:0 max(24px,calc((100% - 880px)/2))}
.messages{flex:1;min-height:120px;padding:30px 8px 16px;background:#fff;gap:24px;scroll-behavior:smooth}
.message{font-size:16px;line-height:1.75;max-width:90%;padding:16px 20px;border-radius:13px;overflow-wrap:anywhere;flex-shrink:0}
.message.lee{border:0;background:#f8f8fb;align-self:flex-start}
.message.lee:before{content:'Lee';display:block;font-weight:700;font-size:12px;color:#a3351b;margin-bottom:6px}
.message.user{color:var(--ink);background:#fff0ea;align-self:flex-end}
.message.user:before{content:'You';display:block;font-size:12px;font-weight:600;margin-bottom:6px}
.message.thinking{background:none;color:var(--muted);font-size:14px}
.message.thinking:before{display:none}
.thinking-dots span{background:var(--orange)}
.actions{padding:12px 8px;gap:8px;border:0;max-height:28vh;overflow:auto;flex-shrink:0}
.actions:empty{display:none}
.actions button{font-size:13px;padding:12px 16px;text-align:left;line-height:1.4}
.actions button.assessment-action{background:var(--orange);border-color:var(--orange);color:var(--ink)}
.composer{display:flex;align-items:end;gap:12px;padding:10px;border:1px solid #c8cdd8;border-radius:13px;margin:6px 8px 0;flex-shrink:0}
.composer textarea{flex:1;border:0;resize:none;max-height:160px;min-height:56px;line-height:1.5;padding:8px;outline-offset:-2px}
.composer button{margin-bottom:2px;white-space:nowrap}
.chat-footnote{text-align:center;color:var(--muted);font-size:11px;margin:10px 0 14px}
.chat-footnote button{font-size:11px}
dialog{border:1px solid var(--line);border-radius:16px;max-width:720px;width:calc(100% - 32px);max-height:85vh;padding:22px}
dialog::backdrop{background:#171b2b66}
.privacy-panel{background:#fff;border:0;padding:20px 0 0;color:var(--ink)}
.privacy-panel h2{font-size:20px}
.privacy-panel li{line-height:1.65;margin-bottom:10px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.skip-link{position:fixed;left:15px;top:-100px;background:#fff;padding:12px;z-index:10}
.skip-link:focus{top:10px}
.admin-panel{max-width:1200px;margin:auto}
.team-access-panel{max-width:700px;margin:auto}

@media(max-width:900px){.landing-panel{gap:30px;padding-top:40px;grid-template-columns:1fr 1fr}
.account-card{padding:24px}
.landing-copy h1{font-size:38px}
.landing-copy>p:not(.eyebrow){font-size:16px}
.chat-workspace{grid-template-columns:230px 1fr}
.workspace-sidebar{padding:18px 14px}
.conversation-header{padding:20px}
.chat-panel{padding:0 12px}
.message{max-width:96%;font-size:15px}
}

@media(max-width:640px){.site-header{height:64px;padding:0 20px}
.brand strong{font-size:27px}
.brand img{width:90px}
.beta-badge{font-size:10px}
.landing-panel{display:flex;flex-direction:column;padding:28px 22px 0;gap:28px}
.landing-copy h1{font-size:38px}
.landing-copy>p:not(.eyebrow){font-size:16px}
.benefits{display:none!important}
.coaching-art{display:none}
.account-column{width:100%}
.account-card{padding:24px}
.landing-footer{flex-wrap:wrap;gap:12px;padding:18px 22px}
.landing-footer>span:nth-child(2){order:4;width:100%;margin:0}
.landing-footer>button{margin-left:auto}
.set-password-panel{margin:32px 20px}
.chat-workspace{display:flex;flex-direction:column;height:calc(100dvh - 64px)}
.workspace-sidebar{display:grid;grid-template-columns:1fr 1fr;border-right:0;border-bottom:1px solid var(--line);gap:12px;padding:12px 16px;max-height:33vh;flex-shrink:0}
.workspace-sidebar>button{font-size:12px;padding:8px}
.sidebar-account{margin:0;padding:0;border:0;grid-column:2;grid-row:1}
.sidebar-account .user-avatar,.sidebar-account #userEmail{display:none}
.sidebar-account strong{font-size:11px}
.access-panel,.progress-panel,.session-options{grid-column:1/-1}
.session-options{padding-top:10px}
.session-options summary{margin-bottom:0}
.session-options[open] summary{margin-bottom:12px}
.progress-panel{padding-top:10px}
.progress-list{display:flex}
.progress-topline{display:none}
.conversation{flex:1}
.conversation-header{padding:14px 20px}
.conversation-header h1{font-size:19px}
.conversation-header p{font-size:11px}
.messages{padding-top:18px;gap:14px}
.message{font-size:14px;padding:12px}
.actions{max-height:24vh;padding:8px 0}
.actions button{font-size:12px;padding:10px 12px}
.composer{margin:4px 0 0}
.composer button{padding:12px}
.chat-footnote{font-size:10px;margin:8px 0}
.desktop-break{display:none}
}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}


.chat-header-controls{display:flex;align-items:center;gap:20px}.voice-toggle{display:flex;align-items:center;gap:8px;font-size:12px}.voice-toggle input{width:16px;height:16px;accent-color:var(--orange)}.voice-player{display:flex;align-items:center;gap:12px;padding:10px 28px;border-bottom:1px solid var(--line);background:#fff8f4;flex-shrink:0}.voice-player audio{height:34px;max-width:300px;flex:1}.voice-player span{font-size:12px}.listen-button{display:block;margin-top:12px;padding:6px 10px!important;font-size:12px!important;background:white!important;border-color:#e6c7bb!important;color:var(--ink)!important}.voice-player button{font-size:12px}@media(max-width:640px){.chat-header-controls{flex-direction:column;align-items:end;gap:6px}.voice-toggle{font-size:10px}.voice-player{padding:8px 12px;flex-wrap:wrap;gap:8px}.voice-player audio{min-width:170px;max-width:100%}.voice-player span{font-size:10px}}

#recordButton[aria-pressed="true"]{background:#a83225;color:white}
.composer textarea{min-width:0}
@media(max-width:640px){.composer{flex-wrap:wrap}.composer textarea{flex-basis:100%}.composer button{flex:1}}

.mic-indicator{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;padding:12px;margin:8px 8px 0;border:1px solid #f2c1aa;border-radius:10px;background:#fff4ed;font-size:12px;color:var(--ink);flex-shrink:0}
.recording-dot{width:9px;height:9px;border-radius:50%;background:#bb3224}
#micLevel{width:110px;height:18px;accent-color:var(--orange)}
#micSignal{min-width:140px}
#recordingTime{font-variant-numeric:tabular-nums}

.brand{gap:16px}.brand a{display:flex;align-items:center;flex-shrink:0;border-radius:3px}.brand .lee-home img{width:104px;height:auto;display:block}.brand .nextarrow-link img{width:130px;height:auto;display:block}.brand .nextarrow-link{padding:10px 0;margin-top:8px}
@media(max-width:640px){.brand{gap:10px}.brand .lee-home img{width:76px}.brand .nextarrow-link img{width:94px}.brand .nextarrow-link{margin-top:5px}}

#profileDialog{width:min(560px,calc(100% - 28px));padding:24px}.profile-title{display:flex;justify-content:space-between;align-items:center;gap:12px}.profile-title h2{margin:0}.profile-form{display:grid;gap:18px;margin-top:20px}.profile-form label,.profile-account label{display:grid;gap:7px}.profile-form select{padding:12px;border:1px solid #c8cdd8;border-radius:7px;background:white;font:inherit}.profile-form .profile-check{display:flex;align-items:center}.profile-check input{width:18px;height:18px}.profile-account{border-top:1px solid var(--line);margin-top:20px;padding-top:10px}.profile-account details{margin-top:20px;line-height:1.5}.profile-account summary{cursor:pointer}.profile-account details button{margin-top:12px}.profile-account p{font-size:13px}
