:root{--ink:#173432;--deep:#153c3a;--teal:#2d6660;--mint:#d9e8e3;--pale:#f2f6f3;--paper:#fffefa;--warm:#f4efe6;--line:#d7e0dc;--muted:#60716f;--gold:#b5813c;--danger:#9c4e46}
*{box-sizing:border-box}html{background:var(--pale);color:var(--ink)}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:linear-gradient(180deg,#f8faf7 0,#eef3f0 100%);min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;padding-bottom:40px}.topbar{height:78px;background:rgba(255,255,252,.94);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 4vw;position:sticky;top:0;z-index:30;backdrop-filter:blur(12px)}.brand{border:0;background:none;display:flex;align-items:center;gap:12px;text-align:left;color:var(--ink);padding:0}.brand-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--deep);color:white;font-family:Georgia,serif;font-size:14px;letter-spacing:.05em}.brand strong{display:block;font-family:Georgia,serif;font-size:18px}.brand small{display:block;color:var(--muted);margin-top:2px;max-width:42vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plain-button{background:none;border:0;color:var(--deep);font-weight:700;padding:10px 0 10px 22px}.save-state{margin-left:auto;font-size:13px;color:var(--muted);display:flex;gap:7px;align-items:center}.save-state span{width:7px;height:7px;background:#6f987f;border-radius:50%}.save-state.saving span{background:var(--gold)}.save-state.offline span{background:#87918f}.main-nav{height:56px;background:rgba(255,255,252,.88);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:30px;padding:0 4vw;overflow-x:auto;position:sticky;top:78px;z-index:20;backdrop-filter:blur(12px)}.main-nav button,.mobile-nav button{height:100%;border:0;background:none;color:var(--muted);font-size:14px;font-weight:650;white-space:nowrap;position:relative}.main-nav button.active{color:var(--deep)}.main-nav button.active:after{content:"";height:2px;background:var(--deep);position:absolute;left:0;right:0;bottom:0}.content{max-width:1180px;margin:0 auto;padding:56px 28px 80px}.eyebrow{font-size:11px!important;font-weight:800;letter-spacing:.16em;color:var(--teal)!important;margin:0 0 12px;text-transform:uppercase}.hero{background:var(--deep);color:white;border-radius:20px;padding:50px 56px;display:flex;align-items:center;justify-content:space-between;gap:40px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:-130px;top:-140px}.hero h1,.page-title h1{font-family:Georgia,serif;font-size:clamp(36px,5vw,58px);line-height:1.04;font-weight:400;margin:0 0 18px;letter-spacing:-.025em}.hero p:not(.eyebrow){color:#dcebe6;max-width:650px;font-size:17px;line-height:1.6;margin:0}.hero .eyebrow{color:#a9c9c1!important}.countdown{width:150px;height:150px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 auto;z-index:1}.countdown strong{font-family:Georgia,serif;font-size:50px;font-weight:400;line-height:1}.countdown span{font-size:12px;color:#cfe1dc;margin-top:5px}.setup-callout{width:100%;border:0;background:#e5efe8;border-radius:14px;margin:22px 0 0;padding:18px 22px;display:flex;align-items:center;text-align:left;color:var(--deep);gap:15px}.setup-callout>span{width:34px;height:34px;background:var(--deep);color:white;border-radius:50%;display:grid;place-items:center}.setup-callout div{flex:1}.setup-callout strong,.setup-callout small{display:block}.setup-callout small{color:var(--muted);margin-top:3px}.setup-callout b{font-size:14px}section{margin-top:60px}.section-heading,.page-title{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:25px}.section-heading h2,.paper-card h2{font-family:Georgia,serif;font-size:30px;font-weight:400;margin:0}.section-heading>p{max-width:400px}.action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.action-card{border:1px solid var(--line);background:var(--paper);padding:28px;border-radius:15px;text-align:left;color:var(--ink);min-height:240px;display:flex;flex-direction:column;box-shadow:0 9px 25px rgba(23,52,50,.04);transition:.2s transform,.2s box-shadow}.action-card:hover{transform:translateY(-3px);box-shadow:0 13px 30px rgba(23,52,50,.09)}.action-card.primary{background:var(--mint);border-color:#bfd4cd}.action-number{font:italic 17px Georgia,serif;color:var(--teal)}.action-card h3{font:400 27px Georgia,serif;margin:32px 0 10px}.action-card p{color:var(--muted);line-height:1.55;margin:0 0 24px}.action-card b{margin-top:auto;color:var(--deep);font-size:14px}.today-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.paper-card{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:28px;box-shadow:0 9px 25px rgba(23,52,50,.035)}.paper-card>.muted{margin:13px 0 24px}.muted{color:var(--muted);line-height:1.55}.text-button{border:0;background:none;color:var(--teal);font-weight:750;padding:0}.mini-row{display:flex;gap:12px;align-items:center;border-top:1px solid var(--line);padding:13px 0}.mini-row:first-of-type{border-top:0}.mini-row strong,.mini-row small{display:block}.mini-row small{color:var(--muted);margin-top:3px}.dot{width:9px;height:9px;border-radius:50%;background:#7d958c}.dot.high,.priority.high{background:#f2d7d1;color:#87443e}.dot.medium,.priority.medium{background:#f3e7ca;color:#7f602a}.dot.low,.priority.low{background:#d9ebe3;color:#356a57}.page-title{align-items:center;margin-bottom:40px}.page-title>div{max-width:760px}.page-title h1{font-size:clamp(38px,5vw,56px);color:var(--deep)}.page-title>div>p:last-child{font-size:17px;line-height:1.6;color:var(--muted);max-width:700px}.primary-button,.secondary-button{border-radius:9px;padding:12px 18px;font-weight:750;border:1px solid var(--deep);white-space:nowrap}.primary-button{background:var(--deep);color:white}.secondary-button{background:white;color:var(--deep)}.plan-summary{margin:0 0 48px;display:grid;grid-template-columns:1fr 1fr 1.5fr;background:var(--paper);border:1px solid var(--line);border-radius:14px}.plan-summary>div{padding:22px;border-right:1px solid var(--line)}.plan-summary>div:last-child{border:0}.plan-summary span,.rep-meta span,.label{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:800;margin-bottom:7px}.plan-summary strong{font:400 19px Georgia,serif}.plan-summary input{border:0;border-bottom:1px solid var(--line);width:100%;background:transparent;padding:0 0 5px;color:var(--ink)}.phase-list{display:grid;gap:10px}.phase-card{display:grid;grid-template-columns:48px 1fr auto;gap:18px;align-items:center;text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:20px;color:var(--ink)}.phase-card>span{width:42px;height:42px;border:1px solid #acc2bc;border-radius:50%;display:grid;place-items:center;color:var(--teal);font:italic 18px Georgia,serif}.phase-card strong{font:400 22px Georgia,serif}.phase-card small{color:var(--muted);margin-left:10px}.phase-card p{margin:5px 0 0;color:var(--muted)}.phase-card>b{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--teal)}.phase-card.current{background:var(--mint);border-color:#b8d1c9}.phase-card.current>span,.phase-card.complete>span{background:var(--deep);color:white;border-color:var(--deep)}.empty{text-align:center;padding:80px 20px;background:var(--paper);border:1px dashed #b9cbc6;border-radius:16px}.empty>span{display:grid;place-items:center;margin:auto;width:52px;height:52px;border-radius:50%;background:var(--mint);color:var(--deep);font-size:26px}.empty h2{font:400 28px Georgia,serif;margin:20px 0 8px}.empty p{color:var(--muted);margin:0 auto 25px;max-width:450px}.repertoire-list{display:grid;gap:14px}.repertoire-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:24px;display:grid;grid-template-columns:1.1fr 2fr auto;gap:28px;align-items:center}.priority{display:inline-block;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.rep-main h3{font:400 25px Georgia,serif;margin:12px 0 4px}.rep-main p{color:var(--muted);margin:0}.rep-meta{display:grid;grid-template-columns:90px 90px 1fr;gap:16px}.rep-meta strong{font:400 17px Georgia,serif}.rep-meta input{width:100%;border:0;border-bottom:1px solid var(--line);padding:0 0 5px;background:none}.rep-actions{display:flex;flex-direction:column;align-items:flex-end;gap:17px;font-size:13px;color:var(--muted)}.rep-actions label{white-space:nowrap}.danger-link{border:0;background:none;color:var(--danger);font-size:12px}.timeline{max-width:900px}.timeline article{display:grid;grid-template-columns:90px 1fr;gap:25px;position:relative}.timeline article:not(:last-child):before{content:"";position:absolute;left:78px;top:56px;bottom:-20px;width:1px;background:#bdcbc7}.timeline-date{text-align:right;padding-top:18px}.timeline-date strong,.timeline-date span{display:block}.timeline-date strong{font:400 17px Georgia,serif}.timeline-date span{font-size:11px;color:var(--muted);margin-top:4px}.timeline-card{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:24px;margin-bottom:18px}.timeline-card:before{content:"";position:absolute;left:74px;top:24px;width:9px;height:9px;background:var(--teal);border-radius:50%;box-shadow:0 0 0 4px var(--pale)}.timeline-top{display:flex;justify-content:space-between;gap:20px}.timeline-top h3{font:400 24px Georgia,serif;margin:0}.archive-badge{font-size:10px;background:var(--warm);color:#745a35;border-radius:20px;padding:6px 9px;text-transform:uppercase;letter-spacing:.06em}.quote{font:italic 18px/1.5 Georgia,serif;color:#395754}.timeline-card dl{border-top:1px solid var(--line);padding-top:15px;margin-bottom:0}.timeline-card dl>div{display:grid;grid-template-columns:140px 1fr;gap:20px;margin:8px 0}.timeline-card dt{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:750}.timeline-card dd{margin:0}.listener-banner{background:var(--deep);color:white;padding:25px 28px;border-radius:14px;display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.listener-banner h3{font:400 25px Georgia,serif;margin:0 0 6px}.listener-banner p:last-child{margin:0;color:#cfe1dc}.listener-banner .eyebrow{color:#a9c9c1!important}.mock-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.mock-grid h3{font:400 24px Georgia,serif;margin:4px 0 10px}.mock-grid p{color:var(--muted);line-height:1.5}.mock-grid hr{border:0;border-top:1px solid var(--line);margin:20px 0}.mock-score{float:right;display:flex;align-items:baseline;gap:4px}.mock-score strong{font:400 28px Georgia,serif}.mock-score span{font-size:10px;color:var(--muted)}.mindset-lead{text-align:center;background:var(--deep);color:white;border-radius:18px;padding:46px 25px;margin-top:0}.mindset-lead p,.mindset-lead span{color:#abc7c1}.mindset-lead h2{font:italic 36px Georgia,serif;font-weight:400;margin:9px}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px}.principle-grid article{background:var(--paper);border:1px solid var(--line);padding:26px;border-radius:14px}.principle-grid span{font:italic 17px Georgia,serif;color:var(--teal)}.principle-grid h3{font:400 25px Georgia,serif;margin:28px 0 8px}.principle-grid p{color:var(--muted);line-height:1.55}.routine{max-width:850px;margin:60px auto}.routine>div{display:grid;grid-template-columns:40px 90px 1fr;gap:20px;border-top:1px solid var(--line);padding:18px 0;align-items:center}.routine>div>span{width:30px;height:30px;border:1px solid #9eb8b1;border-radius:50%;display:grid;place-items:center}.routine p{margin:0;color:var(--muted)}.field-sheet{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:36px}.field-sheet>header{display:flex;justify-content:space-between;border-bottom:2px solid var(--deep);padding-bottom:20px}.field-sheet h2{font:400 32px Georgia,serif;margin:0}.field-sheet>header>div:last-child{text-align:right}.field-sheet>header span,.field-sheet>header strong{display:block}.field-sheet>header span{color:var(--muted);margin-top:5px}.sheet-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:50px}.sheet-grid h3,.after-box h3{font:400 22px Georgia,serif}.sheet-grid section>label{display:block;margin:13px 0}.sheet-grid section:last-child label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:750}.sheet-grid input:not([type=checkbox]){display:block;width:100%;border:0;border-bottom:1px solid #9fb5af;padding:9px 0;background:none;text-transform:none;letter-spacing:0;font-weight:400}.reset-strip{background:var(--mint);padding:18px;border-radius:10px;margin-top:30px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.after-box{margin-top:28px}.after-box textarea{width:100%;height:100px;border:1px solid var(--line);border-radius:8px}.modal-backdrop{position:fixed;inset:0;background:rgba(11,36,34,.66);z-index:100;display:grid;place-items:center;padding:20px;backdrop-filter:blur(5px)}.modal{width:min(620px,100%);max-height:92vh;overflow:auto;background:var(--paper);border-radius:18px;padding:35px;position:relative;box-shadow:0 28px 80px rgba(0,0,0,.26)}.modal.wide{width:min(780px,100%)}.modal-close{position:absolute;right:18px;top:16px;border:0;background:#eef3f0;color:var(--ink);width:32px;height:32px;border-radius:50%;font-size:22px}.modal h2{font:400 36px Georgia,serif;margin:0 40px 8px 0}.modal-intro{color:var(--muted);line-height:1.5;margin:0 0 26px}.form-stack{display:grid;gap:18px}.form-stack label,.guided-step label,.listener-form>label{font-size:12px;font-weight:750;color:#3e5552;display:block}.form-stack input,.form-stack textarea,.form-stack select,.guided-step input,.guided-step textarea,.guided-step select,.listener-form input,.listener-form textarea{display:block;width:100%;border:1px solid #bacbc6;border-radius:8px;background:white;padding:12px;margin-top:7px;color:var(--ink);font-weight:400}.form-stack textarea,.guided-step textarea,.listener-form textarea{min-height:82px;resize:vertical}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.progress{height:4px;background:#e5ece9;border-radius:5px;overflow:hidden;margin:22px 0 35px}.progress span{height:100%;background:var(--teal);display:block;transition:width .25s}.guided-step{min-height:390px}.step-kicker{font-size:10px;letter-spacing:.14em;color:var(--teal);font-weight:800}.guided-step h3{font:400 30px Georgia,serif;margin:7px 0 10px}.prompt{color:var(--muted);line-height:1.55;background:var(--pale);padding:15px;border-radius:8px}.guided-step label{margin:18px 0}.check-row{display:flex!important;gap:10px;align-items:center;text-transform:none!important;font-size:14px!important}.check-row input{width:auto!important;margin:0!important}.range{padding:0!important}.listener-form{display:grid;gap:17px}.listener-form fieldset{border:1px solid var(--line);border-radius:9px;padding:15px}.listener-form legend{font-weight:750;font-size:13px;padding:0 6px}.rating{display:grid;grid-template-columns:1fr repeat(5,36px);gap:5px;align-items:center;border-top:1px solid var(--line);padding:9px 0}.rating:first-of-type{border:0}.rating>span{font-size:12px}.rating label{text-align:center;font-size:10px}.rating input{display:block;width:auto;margin:0 auto 3px}.help-list{display:grid;border-top:1px solid var(--line)}.help-list button,.help-list .import-button{border:0;border-bottom:1px solid var(--line);background:none;text-align:left;padding:18px 2px;color:var(--ink);display:block;cursor:pointer}.help-list strong,.help-list span{display:block}.help-list span{color:var(--muted);font-size:13px;margin-top:4px}.import-button input{display:none}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--deep);color:white;padding:13px 20px;border-radius:8px;z-index:200;box-shadow:0 8px 30px rgba(0,0,0,.2)}.mobile-nav{display:none}.loading{height:100vh;display:flex;gap:14px;align-items:center;justify-content:center;color:var(--muted)}
@media(max-width:800px){.topbar{padding:0 18px}.main-nav{display:none}.plain-button{display:none}.content{padding:30px 16px 100px}.hero{padding:32px 25px;display:block}.hero h1{font-size:38px}.countdown{width:auto;height:auto;border:0;display:block;margin-top:25px}.countdown strong{font-size:34px;margin-right:7px}.action-grid,.today-grid,.principle-grid,.mock-grid{grid-template-columns:1fr}.action-card{min-height:210px}.page-title{display:block}.page-title .primary-button{margin-top:20px}.plan-summary{grid-template-columns:1fr}.plan-summary>div{border-right:0;border-bottom:1px solid var(--line)}.section-heading{display:block}.repertoire-card{grid-template-columns:1fr}.rep-meta{grid-template-columns:70px 70px 1fr}.rep-actions{flex-direction:row;justify-content:space-between}.phase-card{grid-template-columns:44px 1fr}.phase-card>b{display:none}.phase-card small{display:block;margin:3px 0}.timeline article{grid-template-columns:60px 1fr;gap:14px}.timeline article:not(:last-child):before{left:52px}.timeline-card:before{left:48px}.timeline-card dl>div{grid-template-columns:1fr;gap:3px}.sheet-grid{grid-template-columns:1fr;gap:0}.field-sheet{padding:22px}.field-sheet>header{display:block}.field-sheet>header>div:last-child{text-align:left;margin-top:15px}.two-fields{grid-template-columns:1fr}.modal{padding:28px 20px}.guided-step{min-height:0}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:65px;background:rgba(255,255,252,.96);border-top:1px solid var(--line);z-index:40;justify-content:space-around;backdrop-filter:blur(12px)}.mobile-nav button{font-size:11px;flex:1}.mobile-nav button.active{color:var(--deep);font-weight:800}.rating{grid-template-columns:1fr repeat(5,28px)}.save-state{font-size:11px}.brand small{max-width:48vw}}
@media print{.topbar,.main-nav,.mobile-nav,.page-title,.modal-close,.form-actions{display:none!important}body{background:white}.content{padding:0}.field-sheet,.listener-form{border:0;padding:0}.modal-backdrop{position:static;background:white;padding:0;display:block}.modal{box-shadow:none;max-height:none;overflow:visible;width:100%;padding:0}.app-shell>.content:has(+ .modal-backdrop){display:none}section{margin-top:20px}}
.view{display:none}.view.active{display:block}.hidden{display:none!important}.modal-backdrop.hidden{display:none}.field-label{font-size:12px;font-weight:750;color:#3e5552;display:block}.field-label input,.field-label textarea,.field-label select{display:block;width:100%;border:1px solid #bacbc6;border-radius:8px;background:white;padding:12px;margin-top:7px;color:var(--ink);font-weight:400}.field-label textarea{min-height:82px}.list-stack{display:grid;gap:14px}.guided-copy{color:var(--muted);line-height:1.6;background:var(--pale);padding:18px;border-radius:10px}.modal-step{display:none}.modal-step.active{display:block}.save-state.offline:after{content:" · will sync later"}.empty-mini{color:var(--muted)}
.audition-tools{margin-left:auto;display:flex;align-items:center;gap:9px}.audition-tools label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.audition-tools select{max-width:230px;border:1px solid var(--line);border-radius:8px;background:var(--pale);color:var(--ink);padding:9px 32px 9px 11px;font-size:13px;font-weight:650}.library-button{border:0;background:var(--mint);color:var(--deep);padding:9px 12px;border-radius:8px;font-size:12px;font-weight:800}.save-state{margin-left:18px}.archive-banner{background:var(--warm);border:1px solid #dcc9aa;border-radius:12px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.archive-banner strong,.archive-banner span{display:block}.archive-banner span{color:#715f49;font-size:13px;margin-top:3px}.audition-section{margin-top:45px}.audition-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.audition-card{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:25px;box-shadow:0 9px 25px rgba(23,52,50,.035);display:flex;flex-direction:column;min-height:255px}.audition-card.current{border-color:#7ea49a;box-shadow:0 0 0 2px rgba(77,125,115,.12)}.audition-card.archived{background:#fbfaf6}.audition-card-top{display:flex;justify-content:space-between;align-items:start;gap:16px}.audition-status{font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:var(--teal);background:var(--mint);border-radius:20px;padding:6px 9px}.audition-status.saved{color:#745a35;background:var(--warm)}.audition-card h3{font:400 27px Georgia,serif;margin:17px 0 6px}.audition-card .audition-subtitle{color:var(--muted);margin:0}.audition-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.audition-facts div{border-left:1px solid var(--line);padding-left:10px}.audition-facts span,.audition-facts strong{display:block}.audition-facts span{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:800}.audition-facts strong{font:400 18px Georgia,serif;margin-top:5px}.audition-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}.audition-card-actions button{border:1px solid var(--line);background:white;color:var(--deep);border-radius:8px;padding:9px 11px;font-size:12px;font-weight:750}.audition-card-actions button.open{background:var(--deep);color:white;border-color:var(--deep)}.audition-card-actions button.finish{margin-left:auto;color:#745a35;background:var(--warm);border-color:#dcc9aa}.audition-card-actions button.delete{color:var(--danger)}.archived-mode [data-modal="setup"],.archived-mode [data-modal="music"],.archived-mode [data-modal="mock"]{opacity:.48}.archived-mode #plan-goal,.archived-mode [data-action],.archived-mode [data-ready]{pointer-events:none;opacity:.65}.library-empty{grid-column:1/-1;background:var(--paper);border:1px dashed #b9cbc6;border-radius:14px;padding:32px;text-align:center;color:var(--muted)}
@media(max-width:900px){.audition-tools select{max-width:150px}.library-button{display:none}.audition-library{grid-template-columns:1fr}}
@media(max-width:800px){.audition-tools{margin-left:auto}.audition-tools select{max-width:125px;padding:8px 25px 8px 8px}.save-state{display:none}.audition-library{grid-template-columns:1fr}.archive-banner{align-items:flex-start;flex-direction:column}.archive-banner button{width:100%}.audition-card-actions button.finish{margin-left:0}.audition-facts{grid-template-columns:repeat(3,1fr)}}

.page-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.three-fields{display:grid;grid-template-columns:1.25fr 1fr .7fr;gap:12px}.form-stack label small{color:var(--muted);font-weight:500}.roadmap-empty{background:var(--paper);border:1px dashed #b9cbc6;border-radius:15px;padding:28px;margin:26px 0}.roadmap-empty h2{margin:5px 0 8px}.roadmap-empty p{color:var(--muted);max-width:620px}.route-card{background:linear-gradient(135deg,var(--deep),#24524d);color:white;border-radius:16px;padding:25px 28px;margin:28px 0;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.route-card .eyebrow{color:#b8d9d0}.route-card h2{font:400 29px Georgia,serif;margin:5px 0 8px}.route-card p{margin:0;color:#d9e8e4;max-width:690px}.route-stats{display:flex;gap:12px}.route-stats div{min-width:92px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.13);border-radius:10px;padding:12px}.route-stats span,.route-stats strong{display:block}.route-stats span{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#b8d9d0}.route-stats strong{font:400 20px Georgia,serif;margin-top:4px}.schedule-bar{display:flex;min-height:58px;border-radius:12px;overflow:hidden;margin-top:17px;background:#e7efec}.schedule-segment{min-width:44px;padding:11px 8px;display:flex;flex-direction:column;justify-content:center;color:var(--deep);border-right:2px solid rgba(255,255,255,.55)}.schedule-segment strong{font-size:11px}.schedule-segment small{font-size:9px;margin-top:3px}.schedule-segment.assess{background:#dcece7}.schedule-segment.learn{background:#c6dfd7}.schedule-segment.build{background:#a7cec2}.schedule-segment.perform{background:#e8d8b9}.schedule-segment.taper{background:#f0e8d7}.phase-card{align-items:center}.phase-card .phase-dates{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:12px;margin-top:8px;flex-wrap:wrap}.phase-card .phase-dates strong{color:var(--ink)}.phase-card .phase-adjust{border:1px solid var(--line);background:white;color:var(--deep);border-radius:8px;padding:8px 10px;font-size:11px;font-weight:800}.phase-card .scheduled-badge{display:inline-block;background:var(--warm);color:#725b39;border-radius:20px;padding:5px 8px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-left:7px}.phase-card .phase-copy{min-width:0}.milestone-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.milestone-card{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:17px 18px;display:grid;grid-template-columns:76px 1fr;gap:14px;align-items:start}.milestone-card time{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--teal)}.milestone-card strong,.milestone-card span{display:block}.milestone-card span{font-size:12px;color:var(--muted);margin-top:4px}.week-roadmap{display:grid;gap:11px}.week-card{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:19px 21px;display:grid;grid-template-columns:145px 1fr auto;gap:18px;align-items:center}.week-card.current{border-color:#7ea49a;box-shadow:0 0 0 2px rgba(77,125,115,.1)}.week-card .week-date strong,.week-card .week-date span{display:block}.week-card .week-date strong{font:400 18px Georgia,serif}.week-card .week-date span{font-size:10px;color:var(--muted);margin-top:4px}.week-card h3{margin:0 0 5px;font-size:15px}.week-card p{margin:0;color:var(--muted);font-size:13px}.week-phase-tags{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.week-phase-tags span{background:var(--mint);color:var(--deep);border-radius:20px;padding:6px 8px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.checkin-card{background:var(--pale);border:1px solid #c5d7d2;border-radius:13px;padding:18px 20px;margin-bottom:16px;display:flex;justify-content:space-between;gap:18px;align-items:center}.checkin-card p{margin:4px 0 0;color:var(--muted);font-size:13px}.checkin-actions{display:flex;gap:8px;flex-shrink:0}.overlap-card{background:#fff7eb;border:1px solid #dfc99e;border-radius:13px;padding:20px 22px;margin-top:35px}.overlap-card h3{margin:0 0 7px}.overlap-card p{margin:0;color:#735e3d}.evidence-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.evidence-row span{background:white;border:1px solid var(--line);border-radius:20px;padding:6px 9px;font-size:10px;color:var(--muted)}
.milestone-card.done{opacity:.64;background:var(--pale)}.milestone-card.done strong{text-decoration:line-through}.milestone-card .text-button{margin-top:9px;padding:0;font-size:9px}
@media(max-width:800px){.page-actions{justify-content:flex-start;margin-top:18px}.three-fields{grid-template-columns:1fr}.route-card{grid-template-columns:1fr;padding:22px}.route-stats{flex-wrap:wrap}.schedule-bar{display:grid;grid-template-columns:1fr}.schedule-segment{border-right:0;border-bottom:2px solid rgba(255,255,255,.65)}.milestone-list{grid-template-columns:1fr}.week-card{grid-template-columns:1fr;gap:9px}.week-phase-tags{justify-content:flex-start}.checkin-card{align-items:flex-start;flex-direction:column}.checkin-actions{width:100%}.checkin-actions button{flex:1}}
.phase-select{border:0;background:transparent;padding:0;text-align:left;color:inherit;width:100%}.phase-select strong,.phase-select small{display:block}.phase-select small{margin:3px 0}.phase-select p{margin:7px 0 0}
@media(max-width:800px){.phase-card>div:last-child{grid-column:2;display:flex;align-items:center;justify-content:space-between;gap:10px}.phase-card .phase-adjust{margin-top:6px}}

/* Combined weekly planning and shared excerpt library */
.weekly-prompt{margin-top:22px;background:linear-gradient(135deg,#e2eee9,#f5f1e8);border:1px solid #c6d7d0;border-radius:15px;padding:23px 25px;display:flex;align-items:center;justify-content:space-between;gap:28px}.weekly-prompt h2{font:400 27px Georgia,serif;margin:0 0 6px}.weekly-prompt p:last-child{margin:0;color:var(--muted);line-height:1.5;max-width:680px}.weekly-prompt-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.weekly-cycle-settings{margin:0 0 20px;background:var(--warm);border:1px solid #ddd0b8;border-radius:13px;padding:20px 22px}.weekly-cycle-settings>div{display:flex;align-items:end;justify-content:space-between;gap:25px}.weekly-cycle-settings label{font-size:12px;font-weight:800}.weekly-cycle-settings select{display:block;margin-top:7px;min-width:190px;border:1px solid #c9b994;border-radius:8px;background:white;padding:10px}.weekly-cycle-settings p{margin:0;color:#715f49;max-width:600px;line-height:1.5}.weekly-step-card{margin-top:20px;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:0 9px 25px rgba(23,52,50,.035)}.step-heading{display:flex;gap:18px;align-items:flex-start}.step-heading>span{width:40px;height:40px;border-radius:50%;background:var(--deep);color:white;display:grid;place-items:center;font:italic 18px Georgia,serif;flex:none}.step-heading h2{font:400 30px Georgia,serif;margin:0 0 7px}.step-heading p:last-child{color:var(--muted);margin:0;line-height:1.5}.availability-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;margin-top:25px}.availability-grid>label{background:var(--pale);border:1px solid var(--line);border-radius:10px;padding:13px 11px}.availability-grid span,.availability-grid small{display:block}.availability-grid span{font-weight:800}.availability-grid small{font-size:11px;color:var(--muted);margin:2px 0 10px}.availability-grid div{display:flex;align-items:center;gap:5px}.availability-grid input{width:100%;min-width:0;border:1px solid #b7c8c2;border-radius:7px;padding:9px;background:white}.availability-grid b{font-size:10px;color:var(--muted);font-weight:650}.weekly-totals{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:24px 0 18px}.weekly-totals div{padding:16px 18px;border-right:1px solid var(--line)}.weekly-totals div:last-child{border:0}.weekly-totals span,.weekly-totals strong{display:block}.weekly-totals span{font-size:9px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-weight:800}.weekly-totals strong{font:400 20px Georgia,serif;margin-top:5px}.weekly-schedule{display:grid;gap:12px}.weekly-day{margin:0;border:1px solid var(--line);border-radius:13px;overflow:hidden}.weekly-day.today{border-color:#7ea49a;box-shadow:0 0 0 2px rgba(77,125,115,.09)}.weekly-day>header{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--pale);padding:15px 18px;border-bottom:1px solid var(--line)}.weekly-day>header h3{font:400 20px Georgia,serif;margin:0}.weekly-day>header .eyebrow{margin-bottom:3px}.weekly-day>header>span{color:var(--muted);font-size:11px}.weekly-block{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:13px;padding:14px 17px;border-bottom:1px solid #e7ece9;background:white}.weekly-block:last-child{border:0}.weekly-block.fundamentals{background:#fbfaf5}.weekly-block.run{border-left:4px solid var(--gold)}.weekly-block.done{opacity:.58}.weekly-block.done .block-copy strong{text-decoration:line-through}.block-check input{position:absolute;opacity:0}.block-check span{width:19px;height:19px;border:1px solid #8da59e;border-radius:50%;display:block}.block-check input:checked+span{background:var(--teal);box-shadow:inset 0 0 0 4px white}.block-copy strong,.block-copy p,.block-copy small{display:block}.block-copy p{margin:4px 0;color:var(--muted);font-size:12px}.block-copy small{color:var(--teal);font-size:10px;font-weight:750}.block-controls{display:flex;align-items:center;gap:7px}.block-controls select,.block-controls input[type=number]{border:1px solid var(--line);border-radius:7px;background:white;padding:7px;color:var(--ink);font-size:11px}.block-controls>label{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:10px}.block-controls input[type=number]{width:58px}.block-controls .lock-control{padding-left:4px}.weekly-rest{padding:18px;color:var(--muted);font-style:italic;margin:0}.weekly-plan-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:20px}.confirmed-note{background:var(--mint);border-radius:10px;padding:18px}.confirmed-note p{color:var(--muted);margin:5px 0 0}.importance-badge{align-self:flex-start;margin-top:10px;background:var(--pale);color:var(--teal);border-radius:20px;padding:5px 8px;font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:800}.repertoire-card.detailed{grid-template-columns:1.25fr 1fr auto;align-items:start}.rep-badges,.rating-pills,.resource-links{display:flex;flex-wrap:wrap;gap:6px}.shared-badge{display:inline-block;background:#dfece8;color:#2d665d;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.rating-pills{margin:14px 0 0}.rating-pills span{background:var(--pale);border:1px solid var(--line);border-radius:20px;padding:6px 9px;font-size:10px;color:var(--muted)}.rating-pills b{color:var(--deep)}.detail-line{font-size:11px!important;margin-top:12px!important}.resource-links{margin-top:10px}.resource-links a,.recording-link{font-size:11px;color:var(--teal);font-weight:750;text-decoration:none}.ready-label{color:var(--teal);font-size:11px;font-weight:800}.form-section-label{font-size:10px;color:var(--teal);letter-spacing:.13em;font-weight:850;margin:6px 0 -6px;border-top:1px solid var(--line);padding-top:17px}.shared-fields{display:grid;gap:18px}.nested-editor{background:var(--pale);border:1px solid var(--line);border-radius:10px;padding:15px}.nested-editor-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px}.nested-editor-title strong{font-size:12px}.privacy-note{color:var(--muted);background:var(--warm);border-radius:7px;padding:10px 12px;font-size:11px;line-height:1.45;margin:7px 0 11px}.nested-row{display:grid;gap:7px;align-items:center;margin-top:7px}.nested-row.sheet-row{grid-template-columns:.8fr 1.7fr 28px}.nested-row.tempo-row{grid-template-columns:1fr .7fr .7fr 1.4fr 28px}.nested-row.recording-row{grid-template-columns:.8fr 1.3fr .65fr 1fr 1fr 28px}.nested-row input{margin:0!important;padding:9px!important;min-width:0}.row-remove{width:28px;height:28px;border:0;border-radius:50%;background:white;color:var(--danger);font-size:18px}.rating-update{background:var(--pale);border:1px solid var(--line);border-radius:10px;padding:15px;margin:18px 0}.rating-update p{color:var(--muted);font-size:12px;margin:4px 0 10px}
@media(max-width:980px){.availability-grid{grid-template-columns:repeat(4,1fr)}.repertoire-card.detailed{grid-template-columns:1fr}.nested-row.recording-row{grid-template-columns:1fr 1fr}.nested-row.recording-row .row-remove{grid-column:2;justify-self:end}}
@media(max-width:800px){.weekly-prompt,.weekly-cycle-settings>div{align-items:flex-start;flex-direction:column}.weekly-prompt-actions{justify-content:flex-start}.availability-grid{grid-template-columns:repeat(2,1fr)}.weekly-totals{grid-template-columns:1fr 1fr}.weekly-totals div:nth-child(2){border-right:0}.weekly-totals div:nth-child(-n+2){border-bottom:1px solid var(--line)}.weekly-block{grid-template-columns:24px 1fr}.block-controls{grid-column:2;flex-wrap:wrap}.weekly-day>header{align-items:flex-start;flex-direction:column;gap:5px}.nested-row.sheet-row,.nested-row.tempo-row,.nested-row.recording-row{grid-template-columns:1fr}.nested-row .row-remove,.nested-row.recording-row .row-remove{grid-column:1;justify-self:end}.weekly-plan-actions button{flex:1}.repertoire-card.detailed .rep-meta{grid-template-columns:1fr 1fr}.repertoire-card.detailed .rep-meta>div:last-child{grid-column:1/-1}}

/* Accounts, sign-in, and earth-tone appearance themes */
html[data-theme="moss"]{--ink:#283a31;--deep:#3f5144;--teal:#627863;--mint:#dce5da;--pale:#f1f2eb;--paper:#fffdf7;--warm:#eee6d8;--line:#d7d9ce;--muted:#687169;--gold:#9a7744;--canvas-top:#f8f6ef}
html[data-theme="clay"]{--ink:#44342f;--deep:#66473d;--teal:#9a6654;--mint:#eadbd3;--pale:#f4efea;--paper:#fffaf5;--warm:#efe1d3;--line:#dfd2c9;--muted:#76675f;--gold:#a27643;--canvas-top:#faf3ed}
html[data-theme="oat"]{--ink:#403d33;--deep:#575142;--teal:#7d7257;--mint:#e7e2d4;--pale:#f5f2e9;--paper:#fffdf7;--warm:#eee7d7;--line:#ded9cc;--muted:#716d61;--gold:#9a7b43;--canvas-top:#faf8f1}
html[data-theme="walnut"]{--ink:#382f2a;--deep:#4c3b33;--teal:#755a4c;--mint:#e4d9d1;--pale:#f2ece7;--paper:#fffaf5;--warm:#e9ddd1;--line:#d9cec6;--muted:#6f625a;--gold:#9c7448;--canvas-top:#f8f1eb}
html[data-theme="terracotta"]{--ink:#46332c;--deep:#6e4437;--teal:#a46149;--mint:#ead8ce;--pale:#f5eee8;--paper:#fffaf5;--warm:#f0ddcd;--line:#dfcfc5;--muted:#77645b;--gold:#a8733f;--canvas-top:#fbf2eb}
html[data-theme="evening"]{--ink:#2d342f;--deep:#35413a;--teal:#596958;--mint:#d9dfd7;--pale:#e9ebe5;--paper:#f7f5ef;--warm:#e4dfd5;--line:#cfd3cb;--muted:#626a64;--gold:#8f7448;--canvas-top:#eff0eb}
body{background:linear-gradient(180deg,var(--canvas-top) 0,var(--pale) 100%)}
.brand-mark,.primary-button,.phase-card.current>span,.phase-card.complete>span,.step-heading>span,.block-check input:checked+span{background:var(--accent,var(--deep));border-color:var(--accent,var(--deep))}.hero{background:linear-gradient(135deg,var(--accent,var(--deep)),var(--deep))}.route-card{background:linear-gradient(135deg,var(--accent,var(--deep)),var(--deep))}.action-card.primary{background:color-mix(in srgb,var(--accent,var(--deep)) 14%,var(--paper));border-color:color-mix(in srgb,var(--accent,var(--deep)) 35%,var(--line))}.phase-card.current{background:color-mix(in srgb,var(--accent,var(--deep)) 14%,var(--paper));border-color:color-mix(in srgb,var(--accent,var(--deep)) 45%,var(--line))}.primary-button{border-color:var(--accent,var(--deep))}.text-button,.resource-links a,.recording-link{color:var(--accent,var(--teal))}.paper-card,.modal,.repertoire-card,.timeline-card,.weekly-step-card,.audition-card{background:var(--paper)}.form-stack input,.form-stack textarea,.form-stack select,.field-label input,.field-label textarea,.field-label select,.listener-form input,.listener-form textarea{background:var(--paper)}
.account-wrap{position:relative;margin-left:12px}.account-button{border:1px solid var(--line);background:var(--paper);border-radius:22px;padding:5px 11px 5px 5px;display:flex;align-items:center;gap:8px;color:var(--ink)}.account-button>span{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:var(--accent,var(--deep));color:white;font-size:9px;font-weight:850;letter-spacing:.04em}.account-button b{font-size:11px}.account-menu{position:absolute;right:0;top:46px;width:245px;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 50px rgba(42,39,33,.16);padding:8px;z-index:80}.account-summary{padding:12px 11px;border-bottom:1px solid var(--line);margin-bottom:5px}.account-summary strong,.account-summary span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-summary strong{font:400 17px Georgia,serif}.account-summary span{font-size:11px;color:var(--muted);margin-top:4px}.account-menu button,.account-menu a{display:block;width:100%;border:0;background:none;text-align:left;padding:11px;border-radius:7px;color:var(--ink);font-size:12px;text-decoration:none}.account-menu button:hover,.account-menu a:hover{background:var(--pale)}.account-menu a{color:var(--danger)}
.audition-card{position:relative;overflow:hidden}.audition-card:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--card-accent,var(--accent))}.audition-card.current{border-color:var(--card-accent,var(--accent));box-shadow:0 0 0 2px color-mix(in srgb,var(--card-accent,var(--accent)) 18%,transparent)}.audition-card .audition-status:not(.saved){color:var(--card-accent,var(--teal));background:color-mix(in srgb,var(--card-accent,var(--accent)) 14%,var(--paper))}.audition-card .open{background:var(--card-accent,var(--accent))!important;border-color:var(--card-accent,var(--accent))!important}.color-field input[type="color"]{height:48px;padding:5px;cursor:pointer}.color-field small{display:block;margin:3px 0 0}
.theme-fieldset{border:0;padding:0;margin:0}.theme-fieldset legend{font-size:12px;font-weight:800;color:#3e5552;margin-bottom:10px}.theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.theme-option{display:block!important}.theme-option input{position:absolute;opacity:0;pointer-events:none}.theme-option>span{display:block;border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--paper);cursor:pointer;min-height:118px}.theme-option input:checked+span{border-color:var(--accent,var(--deep));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent,var(--deep)) 18%,transparent)}.theme-option i{height:36px;border-radius:7px;display:block;margin-bottom:10px}.theme-option b,.theme-option small{display:block}.theme-option b{font:400 17px Georgia,serif}.theme-option small{color:var(--muted);font-size:10px;margin-top:3px;line-height:1.35}.theme-option.moss i{background:linear-gradient(90deg,#3f5144 0 34%,#dce5da 34% 67%,#eee6d8 67%)}.theme-option.clay i{background:linear-gradient(90deg,#66473d 0 34%,#eadbd3 34% 67%,#efe1d3 67%)}.theme-option.oat i{background:linear-gradient(90deg,#575142 0 34%,#e7e2d4 34% 67%,#eee7d7 67%)}.theme-option.walnut i{background:linear-gradient(90deg,#4c3b33 0 34%,#e4d9d1 34% 67%,#e9ddd1 67%)}.theme-option.terracotta i{background:linear-gradient(90deg,#6e4437 0 34%,#ead8ce 34% 67%,#f0ddcd 67%)}.theme-option.evening i{background:linear-gradient(90deg,#35413a 0 34%,#d9dfd7 34% 67%,#e4dfd5 67%)}.appearance-preview{display:flex;align-items:center;gap:14px;background:var(--pale);border:1px solid var(--line);border-radius:11px;padding:15px}.appearance-preview>span{width:11px;align-self:stretch;border-radius:8px;background:var(--accent,var(--deep))}.appearance-preview p{margin-bottom:5px}.appearance-preview strong,.appearance-preview small{display:block}.appearance-preview strong{font:400 18px Georgia,serif}.appearance-preview small{color:var(--muted);margin-top:3px}
.login-page{min-height:100vh;background:radial-gradient(circle at 8% 12%,color-mix(in srgb,var(--mint) 75%,transparent),transparent 34%),linear-gradient(145deg,var(--canvas-top),var(--pale));padding:32px}.login-shell{max-width:1180px;min-height:calc(100vh - 64px);margin:auto;display:flex;flex-direction:column}.login-brand{display:flex;align-items:center;gap:12px}.login-brand strong,.login-brand small{display:block}.login-brand strong{font:400 19px Georgia,serif}.login-brand small{font-size:11px;color:var(--muted);margin-top:3px}.login-layout{display:grid;grid-template-columns:1.15fr .75fr;gap:90px;align-items:center;margin:auto 0;padding:70px 4vw}.login-intro h1{font:400 clamp(46px,6vw,75px)/.99 Georgia,serif;letter-spacing:-.035em;max-width:760px;margin:0 0 24px;color:var(--deep)}.login-intro>p:not(.eyebrow){font-size:18px;line-height:1.65;color:var(--muted);max-width:690px}.login-features{display:grid;gap:0;margin-top:42px;max-width:720px;border-top:1px solid var(--line)}.login-features article{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}.login-features article>span{font:italic 15px Georgia,serif;color:var(--teal)}.login-features strong{font-size:13px}.login-features p{font-size:12px;color:var(--muted);margin:4px 0 0;line-height:1.45}.sign-in-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:34px;box-shadow:0 24px 70px rgba(54,47,36,.12)}.sign-in-card h2{font:400 35px Georgia,serif;margin:0 0 12px}.sign-in-card>p:not(.eyebrow):not(.sign-in-note){color:var(--muted);line-height:1.6}.sign-in-button{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--deep);color:white;text-decoration:none;border-radius:10px;padding:14px 17px;font-weight:800;margin:26px 0 18px}.chatgpt-mark{font-size:17px}.remember-row{display:flex;gap:11px;align-items:flex-start;background:var(--pale);border-radius:9px;padding:13px;cursor:pointer}.remember-row input{margin-top:3px}.remember-row strong,.remember-row small{display:block}.remember-row strong{font-size:12px}.remember-row small{font-size:10px;color:var(--muted);line-height:1.45;margin-top:3px}.sign-in-note{color:var(--muted);font-size:10px;line-height:1.5;margin:14px 2px 0}.login-footer{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px;border-top:1px solid var(--line);padding-top:18px}.account-required{min-height:100vh;display:grid;place-items:center;align-content:center;text-align:center;padding:30px;background:var(--pale)}.account-required h1{font:400 38px Georgia,serif;margin:22px 0 8px}.account-required p{color:var(--muted);max-width:520px;line-height:1.6}.account-required a{text-decoration:none;margin-top:17px}
@media(max-width:900px){.login-layout{grid-template-columns:1fr;gap:45px;padding:60px 0}.sign-in-card{max-width:600px}.theme-grid{grid-template-columns:1fr 1fr}.account-button b{display:none}.account-button{padding-right:5px}}
@media(max-width:800px){.login-page{padding:20px}.login-shell{min-height:calc(100vh - 40px)}.login-layout{padding:50px 0}.login-intro h1{font-size:46px}.login-footer{flex-direction:column}.theme-grid{grid-template-columns:1fr}.account-wrap{margin-left:7px}.account-menu{position:fixed;top:70px;right:12px}.topbar .plain-button{display:none}}

/* Today: one calm, actionable daily route */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.today-command-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,.7fr);gap:18px;margin-top:28px;align-items:start}.today-plan-card,.today-compass{background:var(--paper);border:1px solid var(--line);border-radius:17px;box-shadow:0 12px 35px rgba(42,48,39,.045)}.today-plan-card{overflow:hidden}.today-plan-header{display:flex;justify-content:space-between;gap:35px;padding:30px 32px 24px}.today-plan-header h2,.today-compass h2{font:400 32px Georgia,serif;margin:0}.today-plan-header>div>p:last-child{color:var(--muted);font-size:12px;line-height:1.5;margin:8px 0 0}.today-progress{width:215px;flex:none}.today-progress>div:first-child{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.today-progress strong{font:400 26px Georgia,serif}.today-progress span{font-size:10px;color:var(--muted);text-align:right}.today-progress-track{height:5px;background:var(--pale);border-radius:10px;overflow:hidden;margin-top:10px}.today-progress-track span{display:block;height:100%;width:0;background:var(--accent,var(--deep));border-radius:10px;transition:width .25s ease}.today-time-form{display:flex;align-items:center;justify-content:space-between;gap:24px;background:color-mix(in srgb,var(--accent,var(--deep)) 8%,var(--pale));border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 32px}.today-time-form>label span,.today-time-form>label small{display:block}.today-time-form>label span{font-size:13px;font-weight:800}.today-time-form>label small{color:var(--muted);font-size:10px;margin-top:4px}.today-time-form>div{display:flex;align-items:center;gap:8px;white-space:nowrap}.today-time-form input{width:76px;border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 35%,var(--line));border-radius:8px;background:var(--paper);padding:11px;text-align:center;color:var(--ink);font-weight:800}.today-time-form>div>span{font-size:11px;color:var(--muted);margin-right:4px}.today-agenda{padding:0 32px}.today-block{display:grid;grid-template-columns:30px 52px minmax(0,1fr) auto;gap:14px;align-items:center;border-bottom:1px solid var(--line);padding:21px 0}.today-block:last-child{border-bottom:0}.today-block-check{position:relative;display:block}.today-block-check input{position:absolute;opacity:0}.today-block-check>span{display:block;width:21px;height:21px;border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 55%,var(--line));border-radius:50%;background:var(--paper)}.today-block-check input:checked+span{background:var(--accent,var(--deep));box-shadow:inset 0 0 0 5px var(--paper)}.today-block-check input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--accent,var(--deep)) 25%,transparent);outline-offset:3px}.today-block-time{text-align:center;padding-right:13px;border-right:1px solid var(--line)}.today-block-time strong,.today-block-time span{display:block}.today-block-time strong{font:400 24px Georgia,serif}.today-block-time span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.today-block-copy h3{font:400 22px Georgia,serif;margin:5px 0 4px}.today-block-copy p{color:var(--muted);font-size:12px;line-height:1.45;margin:0}.today-block-copy small{display:inline-block;color:var(--teal);font-size:10px;font-weight:750;margin:7px 10px 0 0}.today-block-labels{display:flex;gap:6px;flex-wrap:wrap}.today-block-labels>span{font-size:8px;text-transform:uppercase;letter-spacing:.1em;font-weight:850;color:var(--muted)}.today-block-labels .shared-today-label{color:var(--accent,var(--teal));background:color-mix(in srgb,var(--accent,var(--deep)) 10%,var(--paper));border-radius:12px;padding:3px 6px;margin-top:-3px}.start-block-button{border:1px solid var(--accent,var(--deep));background:var(--accent,var(--deep));color:white;border-radius:8px;padding:10px 15px;font-size:11px;font-weight:800}.today-block.done{opacity:.56}.today-block.done h3{text-decoration:line-through}.today-complete-word{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--teal);font-weight:850}.today-empty-state{text-align:center;padding:48px 22px}.today-empty-state>span{display:inline-block;background:var(--mint);border-radius:20px;padding:6px 10px;color:var(--teal);font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:850}.today-empty-state h3{font:400 27px Georgia,serif;margin:15px 0 7px}.today-empty-state p{color:var(--muted);line-height:1.55;max-width:520px;margin:0 auto 20px}.today-empty-state.rest{background:var(--warm);margin:22px 0;border-radius:12px}.today-plan-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--pale);border-top:1px solid var(--line);padding:17px 32px}.today-plan-footer span,.today-plan-footer strong{display:block}.today-plan-footer span{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:850}.today-plan-footer strong{font:400 18px Georgia,serif;margin-top:2px}.today-compass{padding:28px;position:sticky;top:155px}.today-audition-snapshot{display:grid;margin-top:21px}.today-audition-snapshot article{display:grid;grid-template-columns:7px 1fr;gap:11px;padding:12px 0;border-top:1px solid var(--line)}.today-audition-snapshot article>span{width:7px;height:100%;min-height:34px;border-radius:8px;background:var(--audition-accent,var(--accent))}.today-audition-snapshot strong,.today-audition-snapshot small{display:block}.today-audition-snapshot strong{font-size:12px}.today-audition-snapshot small{font-size:10px;color:var(--muted);margin-top:4px}.today-attention-cue{border-top:1px solid var(--line);margin-top:22px;padding-top:24px}.today-attention-cue blockquote{font:italic 22px/1.4 Georgia,serif;color:var(--deep);margin:0}.today-attention-cue small{display:block;color:var(--muted);font-size:10px;margin-top:13px}.today-quick-section{margin-top:52px}.today-quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.today-quick-grid button{background:transparent;border:1px solid var(--line);border-radius:12px;padding:19px 20px;text-align:left;color:var(--ink);transition:.18s background,.18s border-color}.today-quick-grid button:hover{background:var(--paper);border-color:color-mix(in srgb,var(--accent,var(--deep)) 35%,var(--line))}.today-quick-grid span,.today-quick-grid strong,.today-quick-grid small{display:block}.today-quick-grid span{font-size:8px;text-transform:uppercase;letter-spacing:.11em;color:var(--teal);font-weight:850}.today-quick-grid strong{font:400 19px Georgia,serif;margin:8px 0 5px}.today-quick-grid small{font-size:10px;color:var(--muted);line-height:1.4}
@media(max-width:980px){.today-command-grid{grid-template-columns:1fr}.today-compass{position:static;display:grid;grid-template-columns:1fr 1fr;gap:30px}.today-attention-cue{border-top:0;border-left:1px solid var(--line);margin:0;padding:0 0 0 28px}}
@media(max-width:800px){.today-command-grid{margin-top:18px}.today-plan-header{display:block;padding:24px 20px 18px}.today-progress{width:100%;margin-top:20px}.today-time-form{display:block;padding:18px 20px}.today-time-form>div{margin-top:14px}.today-time-form .primary-button{flex:1}.today-agenda{padding:0 20px}.today-block{grid-template-columns:26px 42px 1fr;padding:18px 0}.today-block-time{padding-right:8px}.today-block-copy h3{font-size:19px}.start-block-button,.today-complete-word{grid-column:3;justify-self:start}.today-plan-footer{padding:15px 20px}.today-compass{display:block;padding:23px}.today-attention-cue{border-left:0;border-top:1px solid var(--line);margin-top:20px;padding:21px 0 0}.today-quick-grid{grid-template-columns:1fr}.today-quick-section .section-heading>p{margin-top:8px}.today-hero{padding-bottom:27px}}

/* Evidence-aware weekly adaptation */
.weekly-health{margin:18px 0!important;border:1px solid var(--line);border-radius:15px;background:var(--paper);padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;box-shadow:0 8px 28px rgba(42,48,39,.035)}.weekly-health>div{display:flex;align-items:flex-start;gap:15px}.health-mark{display:block;width:12px;height:12px;border-radius:50%;background:#7d9a80;box-shadow:0 0 0 6px color-mix(in srgb,#7d9a80 14%,transparent);margin-top:7px;flex:none}.weekly-health.attention .health-mark{background:#a96551;box-shadow:0 0 0 6px color-mix(in srgb,#a96551 14%,transparent)}.weekly-health.watch .health-mark{background:#b08a4b;box-shadow:0 0 0 6px color-mix(in srgb,#b08a4b 14%,transparent)}.weekly-health.review{border-color:color-mix(in srgb,var(--accent,var(--deep)) 42%,var(--line));background:color-mix(in srgb,var(--accent,var(--deep)) 7%,var(--paper))}.weekly-health.review .health-mark{background:var(--accent,var(--deep));box-shadow:0 0 0 6px color-mix(in srgb,var(--accent,var(--deep)) 14%,transparent)}.weekly-health .eyebrow{margin-bottom:5px}.weekly-health h3{font:400 20px/1.4 Georgia,serif;margin:0;max-width:720px}.health-evidence{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}.health-evidence span{font-size:9px;color:var(--muted);border:1px solid var(--line);background:var(--paper);border-radius:20px;padding:5px 8px}.block-status-labels{display:flex;gap:5px;min-height:2px;margin-bottom:3px}.block-status-labels b{font-size:7px;text-transform:uppercase;letter-spacing:.1em;border-radius:12px;padding:3px 6px;background:var(--pale);color:var(--muted)}.weekly-block.missed{background:color-mix(in srgb,#a96551 6%,var(--paper));border-left:4px solid #a96551}.weekly-block.missed .block-status-labels b:first-child{background:#f2ddd5;color:#8a4839}.weekly-block .block-status-labels b:nth-child(2){color:var(--teal)}.weekly-adaptation-result{margin:18px 0 24px!important;border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 38%,var(--line));border-radius:17px;background:var(--paper);padding:30px;box-shadow:0 16px 42px rgba(42,48,39,.07)}.adaptation-result-head{display:grid;grid-template-columns:1.4fr .7fr;gap:35px;align-items:start}.adaptation-result-head h2{font:400 34px Georgia,serif;margin:0 0 10px}.adaptation-result-head>div>p:not(.eyebrow){color:var(--muted);line-height:1.55;margin:0}.adaptation-result-head blockquote{font:italic 16px/1.5 Georgia,serif;color:var(--deep);background:var(--pale);border-left:3px solid var(--accent,var(--deep));margin:16px 0 0;padding:12px 15px}.adaptation-summary{border:1px solid var(--line);border-radius:11px;overflow:hidden}.adaptation-summary>div{padding:13px 15px;border-bottom:1px solid var(--line)}.adaptation-summary>div:last-child{border:0}.adaptation-summary span,.adaptation-summary strong{display:block}.adaptation-summary span{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:850}.adaptation-summary strong{font:400 18px Georgia,serif;margin-top:4px}.adaptation-evidence{display:flex;gap:7px;flex-wrap:wrap;margin:23px 0 17px}.adaptation-evidence span{font-size:9px;border:1px solid var(--line);border-radius:20px;padding:6px 9px;color:var(--muted);background:var(--pale)}.adaptation-days{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.adaptation-day{margin:0;border:1px solid var(--line);border-radius:11px;overflow:hidden;background:var(--paper)}.adaptation-day>header{display:flex;justify-content:space-between;gap:10px;background:var(--pale);border-bottom:1px solid var(--line);padding:11px 12px}.adaptation-day>header strong,.adaptation-day>header span{display:block}.adaptation-day>header strong{font-size:11px}.adaptation-day>header span,.adaptation-day>header>b{font-size:8px;color:var(--muted)}.adaptation-day>div{display:grid;grid-template-columns:41px 1fr;gap:6px;padding:9px 11px;border-bottom:1px solid var(--line)}.adaptation-day>div:last-child{border:0}.adaptation-day>div>span{font-size:8px;color:var(--muted)}.adaptation-day>div>strong{font-size:10px}.adaptation-day>div>small{grid-column:2;font-size:8px;color:var(--teal)}.adaptation-day>p{font-size:9px;color:var(--muted);padding:12px;margin:0;font-style:italic}.adaptation-actions{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.adaptation-actions>p{color:var(--muted);font-size:10px;line-height:1.45;max-width:480px;margin:0}.adaptation-actions>div{display:flex;gap:9px}.adapt-evidence-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.adapt-evidence-preview span{background:var(--pale);border:1px solid var(--line);border-radius:9px;padding:12px;font-size:9px;color:var(--muted);text-align:center}.adapt-evidence-preview b{display:block;font:400 20px Georgia,serif;color:var(--deep);margin-bottom:3px}.adapt-remaining-days{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.adapt-remaining-days>label{background:var(--pale);border:1px solid var(--line);border-radius:9px;padding:11px}.adapt-remaining-days span,.adapt-remaining-days small{display:block}.adapt-remaining-days span{font-size:10px}.adapt-remaining-days small{font-size:8px;color:var(--muted);margin-top:2px}.adapt-remaining-days>label>div{display:flex;align-items:center;gap:4px;margin-top:8px}.adapt-remaining-days input{margin:0!important;min-width:0;padding:8px!important}.adapt-remaining-days b{font-size:8px;color:var(--muted)}.adapt-safety-note{display:flex;flex-wrap:wrap;gap:6px;background:var(--warm);border:1px solid color-mix(in srgb,var(--gold) 28%,var(--line));border-radius:9px;padding:12px 14px;font-size:10px}.adapt-safety-note span{color:var(--muted)}
@media(max-width:980px){.adaptation-days{grid-template-columns:1fr 1fr}.adaptation-result-head{grid-template-columns:1fr}.adaptation-summary{display:grid;grid-template-columns:repeat(3,1fr)}.adaptation-summary>div{border-bottom:0;border-right:1px solid var(--line)}.adaptation-summary>div:last-child{border-right:0}.adapt-remaining-days{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.weekly-health{align-items:flex-start;flex-direction:column;padding:19px}.weekly-health>button{width:100%}.weekly-block.missed{border-left-width:3px}.adaptation-days{grid-template-columns:1fr}.adaptation-actions{align-items:stretch;flex-direction:column}.adaptation-actions>div{display:grid;grid-template-columns:1fr 1fr}.weekly-adaptation-result{padding:22px 18px}.adaptation-result-head h2{font-size:29px}.adaptation-summary{grid-template-columns:1fr}.adaptation-summary>div{border-right:0;border-bottom:1px solid var(--line)}.adapt-evidence-preview{grid-template-columns:1fr 1fr}.adapt-remaining-days{grid-template-columns:1fr 1fr}}
.weekly-block.reviewed{opacity:.62}.weekly-block.reviewed .block-status-labels b:first-child{background:var(--mint);color:var(--teal)}
.adaptation-blocked{display:flex;gap:8px;align-items:baseline;margin:0 0 16px;padding:13px 15px;border:1px solid #d4a28f;border-radius:10px;background:#f8e9e2;color:#7e4336}.adaptation-blocked strong{font-size:11px}.adaptation-blocked span{font-size:9px}.adaptation-day.conflict{border-color:#d4a28f}.adaptation-conflict{padding:11px 12px!important;background:#f8e9e2;color:#7e4336!important;font-style:normal!important;border-bottom:1px solid #e4c2b5}.adaptation-conflict strong{display:block;margin-bottom:3px}.adaptation-actions button:disabled{cursor:not-allowed;opacity:.5}

/* The Mock Room */
.mock-coach{margin-top:0!important;background:linear-gradient(135deg,var(--accent,var(--deep)),var(--deep));color:white;border-radius:18px;padding:30px 32px;display:grid;grid-template-columns:1.3fr .7fr;gap:30px;align-items:center;position:relative;overflow:hidden}.mock-coach:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;border:1px solid rgba(255,255,255,.13);right:-85px;top:-105px}.mock-coach .eyebrow{color:#b9d5cc!important}.mock-coach h2{font:400 31px/1.2 Georgia,serif;margin:0 0 10px}.mock-coach p{color:#dbe8e4;line-height:1.55;margin:0;max-width:650px}.mock-coach-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;z-index:1}.mock-coach-facts div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:10px;padding:12px}.mock-coach-facts span,.mock-coach-facts strong{display:block}.mock-coach-facts span{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:#bfd5cf}.mock-coach-facts strong{font:400 17px Georgia,serif;margin-top:4px}.mock-method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px!important}.mock-method-grid article{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:22px}.mock-method-grid span{font:italic 15px Georgia,serif;color:var(--teal)}.mock-method-grid h3{font:400 21px Georgia,serif;margin:22px 0 8px}.mock-method-grid p{font-size:11px;line-height:1.55;color:var(--muted);margin:0}.mock-history-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:54px 0 22px}.mock-history-heading h2{font:400 30px Georgia,serif;margin:0}.mock-grid{grid-template-columns:1fr!important}.mock-record{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:26px;display:grid;grid-template-columns:1.15fr .85fr;gap:30px;box-shadow:0 10px 30px rgba(23,52,50,.04)}.mock-record-main>header{display:flex;justify-content:space-between;gap:20px}.mock-record-main h3{font:400 28px Georgia,serif;margin:0 0 6px}.mock-record-main>header p{margin:0;color:var(--muted);font-size:11px}.mock-readiness{width:72px;height:72px;border:1px solid var(--line);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none}.mock-readiness strong{font:400 27px Georgia,serif}.mock-readiness span{font-size:7px;text-transform:uppercase;color:var(--muted)}.mock-observation{font:italic 17px/1.55 Georgia,serif;color:#395754;background:var(--pale);border-radius:10px;padding:15px 17px;margin:18px 0}.mock-meta-row{display:flex;gap:6px;flex-wrap:wrap}.mock-meta-row span{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);border:1px solid var(--line);border-radius:20px;padding:5px 8px}.mock-next{border-top:1px solid var(--line);margin-top:18px;padding-top:15px}.mock-next strong{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:5px}.mock-next p{margin:0;line-height:1.5}.mock-record-side{border-left:1px solid var(--line);padding-left:28px;display:grid;align-content:start;gap:14px}.mock-recording-box,.listener-link-box,.comparison-box{border:1px solid var(--line);border-radius:11px;padding:15px}.mock-recording-box header,.listener-link-box header{display:flex;justify-content:space-between;gap:12px;align-items:center}.mock-recording-box strong,.listener-link-box strong{font-size:11px}.mock-recording-box small,.listener-link-box small{display:block;color:var(--muted);font-size:8px;margin-top:3px;line-height:1.4}.mock-recording-box audio{display:block;width:100%;margin-top:11px;height:35px}.mock-recording-box a{display:inline-block;color:var(--teal);font-size:10px;margin-top:10px}.mock-storage-state{font-size:8px;border-radius:20px;padding:5px 7px;background:var(--pale);color:var(--muted)}.mock-storage-state.ready{background:var(--mint);color:var(--teal)}.listener-link-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.listener-link-actions button{padding:9px 10px;font-size:9px}.listener-url{font-size:8px;color:var(--muted);word-break:break-all;background:var(--pale);padding:8px;border-radius:7px;margin-top:9px}.comparison-box>header{display:flex;justify-content:space-between;align-items:center}.comparison-box>header strong{font-size:11px}.comparison-box>header span{font-size:8px;color:var(--muted)}.comparison-row{display:grid;grid-template-columns:1fr 46px 46px;gap:7px;align-items:center;border-top:1px solid var(--line);padding:9px 0;font-size:9px}.comparison-row:first-of-type{margin-top:9px}.comparison-row b{text-align:right;font:400 15px Georgia,serif}.comparison-row small{text-align:right;color:var(--muted)}.comparison-note{font-size:9px;line-height:1.45;color:var(--muted);margin:9px 0 0}.listener-response-list{display:grid;gap:7px;margin-top:11px}.listener-response-list details{border-top:1px solid var(--line);padding-top:8px}.listener-response-list summary{cursor:pointer;font-size:9px;font-weight:750}.listener-response-list p{font-size:9px;line-height:1.5;color:var(--muted)}.mock-card-actions{display:flex;gap:7px;flex-wrap:wrap}.mock-card-actions button{font-size:9px;padding:9px 11px}.mock-setup-callout{background:var(--pale);border-radius:10px;padding:14px 16px;display:flex;justify-content:space-between;gap:15px}.mock-setup-callout strong{font:400 17px Georgia,serif}.mock-setup-callout span{font-size:9px;color:var(--muted);line-height:1.45;text-align:right;max-width:360px}.mock-choice-fieldset,.mock-pool-fieldset,.mock-focus-fieldset{border:1px solid var(--line);border-radius:11px;padding:15px}.mock-choice-fieldset legend,.mock-pool-fieldset legend,.mock-focus-fieldset legend{font:400 18px Georgia,serif;padding:0 6px}.mock-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mock-choice-grid label{display:block}.mock-choice-grid input{position:absolute;opacity:0;pointer-events:none}.mock-choice-grid label>span{display:block;height:100%;border:1px solid var(--line);border-radius:9px;padding:13px;cursor:pointer;background:var(--paper)}.mock-choice-grid strong,.mock-choice-grid small{display:block}.mock-choice-grid strong{font-size:11px}.mock-choice-grid small{font-size:8px;line-height:1.4;color:var(--muted);margin-top:5px}.mock-choice-grid label:has(input:checked)>span{border-color:var(--accent,var(--deep));background:color-mix(in srgb,var(--accent,var(--deep)) 9%,var(--paper));box-shadow:0 0 0 1px var(--accent,var(--deep))}.mock-choice-grid label:focus-within>span{outline:3px solid color-mix(in srgb,var(--accent,var(--deep)) 25%,transparent);outline-offset:2px}.mock-pool-fieldset>p,.mock-focus-fieldset>p{font-size:9px;color:var(--muted);margin:0 0 11px}.mock-pool-list,.mock-focus-list{display:grid;grid-template-columns:1fr 1fr;gap:7px}.mock-pool-list label,.mock-focus-list label{display:flex;gap:9px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px;font-size:10px}.mock-pool-list input,.mock-focus-list input{width:auto;margin:0}.mock-pool-list small,.mock-focus-list small{display:block;color:var(--muted);font-size:8px;margin-top:2px}.mock-record-choice{display:flex!important;gap:11px!important;align-items:flex-start;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--pale)}.mock-record-choice input{width:auto!important;margin:3px 0 0!important}.mock-record-choice strong,.mock-record-choice small{display:block}.mock-record-choice small{font-weight:400;color:var(--muted);line-height:1.45;margin-top:4px}.mock-safety{display:flex;gap:7px;flex-wrap:wrap;background:var(--warm);border-radius:9px;padding:12px 14px;font-size:9px}.mock-safety span{color:var(--muted)}body.mock-running{overflow:hidden}.mock-room{position:fixed;inset:0;z-index:300;background:linear-gradient(150deg,#1d3731,#29463f 60%,#1a312c);color:white;display:grid;grid-template-rows:auto 1fr}.mock-room>header{height:76px;border-bottom:1px solid rgba(255,255,255,.13);display:flex;align-items:center;padding:0 3vw;gap:25px}.mock-room-brand{display:flex;align-items:center;gap:11px}.mock-room-brand>span{width:38px;height:38px;border:1px solid rgba(255,255,255,.4);border-radius:50%;display:grid;place-items:center;font:13px Georgia,serif}.mock-room-brand strong,.mock-room-brand small{display:block}.mock-room-brand strong{font:17px Georgia,serif}.mock-room-brand small{font-size:9px;color:#bad0ca;margin-top:2px}.mock-room-timers{margin-left:auto;display:flex;gap:8px}.mock-room-timers span{font-size:8px;text-transform:uppercase;letter-spacing:.1em;border:1px solid rgba(255,255,255,.17);border-radius:20px;padding:7px 9px;color:#bfd1cc}.mock-room-timers b{color:white}.mock-room>header>button{border:1px solid rgba(255,255,255,.3);background:transparent;color:white;border-radius:8px;padding:9px 12px;font-weight:700;font-size:10px}.mock-room>main{display:grid;place-items:center;padding:30px}.mock-wait-stage,.mock-play-stage{text-align:center;max-width:820px;width:100%}.mock-wait-stage .eyebrow,.mock-play-stage .eyebrow{color:#b9d5cc!important}.mock-countdown{width:145px;height:145px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:grid;place-items:center;margin:0 auto 28px;font:400 48px Georgia,serif}.mock-wait-stage h1,.mock-play-stage h1{font:400 clamp(42px,8vw,78px)/1.04 Georgia,serif;letter-spacing:-.025em;margin:0}.mock-wait-stage blockquote{font:italic clamp(18px,3vw,25px) Georgia,serif;color:#cfe0dc;margin:25px auto;max-width:700px}.mock-wait-progress{color:#a9c0ba;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.mock-excerpt-detail{font:400 clamp(18px,3vw,25px) Georgia,serif;color:#cfe0dc;margin:17px 0 34px}.mock-performance-strip{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:0 0 27px}.mock-performance-strip span{font-size:9px;border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:8px 10px;color:#bcd1cb}.mock-complete-button{display:block;margin:0 auto 12px;background:#f5f0e5;color:#23433c;border:0;border-radius:12px;padding:16px 28px;font-weight:800;min-width:220px}.mock-play-stage>small{color:#9fb8b1;font-size:9px}.mock-review-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mock-review-summary div{background:var(--pale);border-radius:9px;padding:12px}.mock-review-summary span,.mock-review-summary strong{display:block}.mock-review-summary span{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.mock-review-summary strong{font:400 18px Georgia,serif;margin-top:4px}.mock-self-ratings{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.mock-self-ratings select{min-width:0}.mock-recording-review{border:1px solid var(--line);border-radius:9px;background:var(--pale);padding:12px;font-size:9px;color:var(--muted)}.mock-recording-review strong{display:block;color:var(--ink);margin-bottom:4px}.mock-recording-review a{color:var(--teal)}
@media(max-width:900px){.mock-record{grid-template-columns:1fr}.mock-record-side{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:22px}.mock-coach{grid-template-columns:1fr}.mock-coach-facts{grid-template-columns:repeat(4,1fr)}.mock-self-ratings{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.mock-method-grid{grid-template-columns:1fr}.mock-history-heading{align-items:stretch;flex-direction:column}.mock-history-heading button{width:100%}.mock-choice-grid{grid-template-columns:1fr}.mock-pool-list,.mock-focus-list{grid-template-columns:1fr}.mock-setup-callout{display:block}.mock-setup-callout span{display:block;text-align:left;margin-top:6px}.mock-room>header{padding:0 14px;height:68px}.mock-room-timers span:last-child{display:none}.mock-room>header>button{padding:8px}.mock-room>main{padding:20px}.mock-countdown{width:118px;height:118px;font-size:40px}.mock-coach-facts{grid-template-columns:1fr 1fr}.mock-review-summary{grid-template-columns:1fr}.mock-self-ratings{grid-template-columns:1fr}.mock-record{padding:20px}.mock-record-main h3{font-size:24px}}
.mock-draw-details{border-top:1px solid var(--line);margin-top:17px;padding-top:13px}.mock-draw-details summary{cursor:pointer;font-size:9px;font-weight:780;color:var(--teal)}.mock-draw-details ol{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:5px}.mock-draw-details li{display:grid;grid-template-columns:25px 1fr;gap:8px;align-items:center;background:var(--pale);border-radius:7px;padding:8px}.mock-draw-details li>span{width:22px;height:22px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:8px}.mock-draw-details li strong,.mock-draw-details li small{display:block}.mock-draw-details li strong{font-size:10px}.mock-draw-details li small{font-size:8px;color:var(--muted);margin-top:2px}.mock-draw-details>p{font-size:10px;white-space:pre-wrap;color:var(--muted)}.mock-next small{display:block;color:var(--teal);font-size:9px;line-height:1.5;margin-top:7px}

/* Preparation calendar */
.calendar-page-title{margin-bottom:22px}.calendar-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 18px!important}.calendar-summary article{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:18px;min-height:112px;position:relative;overflow:hidden}.calendar-summary article:after{content:"";position:absolute;width:76px;height:76px;border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 17%,transparent);border-radius:50%;right:-25px;top:-32px}.calendar-summary span,.calendar-summary strong,.calendar-summary small{display:block}.calendar-summary span{font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:850}.calendar-summary strong{font:400 22px/1.2 Georgia,serif;margin:12px 0 6px;max-width:85%}.calendar-summary small{font-size:9px;line-height:1.45;color:var(--muted)}.calendar-workspace{background:var(--paper);border:1px solid var(--line);border-radius:17px;padding:22px;margin-top:0!important;box-shadow:0 12px 35px rgba(23,52,50,.04)}.calendar-toolbar{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:18px}.calendar-nav{display:flex;align-items:center;gap:7px}.calendar-nav button{min-width:38px;padding:9px 11px}.calendar-nav h2{font:400 28px Georgia,serif;margin:0 0 0 8px;white-space:nowrap}.calendar-filters{display:flex;gap:8px;align-items:end}.calendar-filters label{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:850}.calendar-filters select{display:block;margin-top:5px;padding:9px 28px 9px 10px;min-width:145px;font-size:10px}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--line);border-bottom:0;border-radius:10px 10px 0 0;overflow:hidden;background:var(--pale)}.calendar-weekdays span{text-align:center;padding:9px 4px;border-right:1px solid var(--line);font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:850}.calendar-weekdays span:last-child{border:0}.calendar-month-grid{display:grid;grid-template-columns:repeat(7,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.calendar-day{min-height:120px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px;background:var(--paper);min-width:0}.calendar-day:nth-last-child(-n+7):first-child{border-radius:0 0 0 10px}.calendar-day.outside{background:color-mix(in srgb,var(--pale) 55%,var(--paper));color:var(--muted)}.calendar-day.today{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent,var(--deep)) 60%,transparent)}.calendar-day-number{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.calendar-day-number>span{font:400 15px Georgia,serif}.calendar-day.today .calendar-day-number>span{width:25px;height:25px;display:grid;place-items:center;background:var(--accent,var(--deep));color:white;border-radius:50%;font-size:12px}.calendar-day-number small{font-size:7px;text-transform:uppercase;letter-spacing:.08em;color:var(--teal)}.calendar-day-events{display:grid;gap:4px}.calendar-chip{border:0;border-left:3px solid var(--event-color,var(--accent,var(--deep)));background:color-mix(in srgb,var(--event-color,var(--accent,var(--deep))) 10%,var(--paper));border-radius:4px;padding:5px 6px;text-align:left;font-size:8px;color:var(--ink);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;cursor:pointer}.calendar-chip.done{text-decoration:line-through;opacity:.58}.calendar-more{font-size:7px;color:var(--muted);padding-left:6px}.calendar-agenda-section{margin-top:44px!important}.calendar-agenda{display:grid;gap:8px}.calendar-agenda-day{display:grid;grid-template-columns:92px 1fr;gap:15px;border-top:1px solid var(--line);padding-top:12px}.calendar-agenda-date strong,.calendar-agenda-date span{display:block}.calendar-agenda-date strong{font:400 17px Georgia,serif}.calendar-agenda-date span{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-top:3px}.calendar-agenda-events{display:grid;gap:7px}.calendar-agenda-row{display:grid;grid-template-columns:7px 1fr auto;gap:12px;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:13px 14px}.calendar-agenda-row>i{display:block;width:7px;height:100%;min-height:34px;border-radius:7px;background:var(--event-color,var(--accent,var(--deep)))}.calendar-agenda-copy{min-width:0}.calendar-agenda-copy>div{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.calendar-agenda-copy>div span{font-size:7px;text-transform:uppercase;letter-spacing:.09em;border:1px solid var(--line);border-radius:20px;padding:4px 6px;color:var(--muted)}.calendar-agenda-copy>div time{font-size:8px;color:var(--teal)}.calendar-agenda-copy strong{display:block;font:400 16px/1.25 Georgia,serif;margin:6px 0 3px}.calendar-agenda-copy small{display:block;color:var(--muted);font-size:8px;line-height:1.4}.calendar-agenda-row.done{opacity:.62}.calendar-agenda-row.done .calendar-agenda-copy strong{text-decoration:line-through}.calendar-agenda-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.calendar-agenda-actions button{padding:7px 9px;font-size:8px}.calendar-empty{background:var(--paper);border:1px dashed var(--line);border-radius:12px;padding:34px;text-align:center}.calendar-empty h3{font:400 23px Georgia,serif;margin:0 0 7px}.calendar-empty p{color:var(--muted);font-size:10px;line-height:1.5;margin:0}.calendar-philosophy{display:flex;justify-content:space-between;align-items:center;gap:30px;background:var(--pale);border-radius:14px;padding:24px 27px;margin-top:25px!important}.calendar-philosophy h2{font:400 25px Georgia,serif;margin:0 0 7px}.calendar-philosophy p:not(.eyebrow){color:var(--muted);font-size:10px;line-height:1.5;margin:0;max-width:680px}.event-type-planning{--event-color:#8a6f3f}.event-type-phase{--event-color:#526b55}.event-type-milestone{--event-color:#537674}.event-type-mock{--event-color:#7a5546}.event-type-application{--event-color:#9a5f48}.event-type-recording{--event-color:#716077}.event-type-travel{--event-color:#55718a}.event-type-lesson{--event-color:#6f7b4b}.event-type-equipment{--event-color:#80664c}.event-type-audition{--event-color:#8d4435}.event-type-other{--event-color:#777067}
.today-reminders{border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 30%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--accent,var(--deep)) 5%,var(--paper));padding:20px;margin:18px 0!important}.today-reminders>header{display:flex;justify-content:space-between;align-items:start;gap:18px;margin-bottom:12px}.today-reminders h2{font:400 23px Georgia,serif;margin:0 0 5px}.today-reminders header p:not(.eyebrow){font-size:9px;color:var(--muted);margin:0}.today-reminder-list{display:grid;gap:7px}.today-reminder{display:grid;grid-template-columns:6px 1fr auto;gap:11px;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:11px}.today-reminder>i{height:100%;border-radius:5px;background:var(--event-color,var(--accent,var(--deep)))}.today-reminder strong,.today-reminder small{display:block}.today-reminder strong{font-size:10px}.today-reminder small{color:var(--muted);font-size:8px;margin-top:3px}.today-reminder.overdue small{color:#8a4839}.today-reminder-actions{display:flex;gap:5px}.today-reminder-actions button{padding:7px 8px;font-size:8px}.calendar-sync-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.calendar-sync-grid article{border:1px solid var(--line);border-radius:12px;padding:20px;background:var(--paper)}.calendar-sync-grid article>span{font-size:8px;text-transform:uppercase;letter-spacing:.11em;color:var(--teal);font-weight:850}.calendar-sync-grid h3{font:400 23px Georgia,serif;margin:15px 0 8px}.calendar-sync-grid p{color:var(--muted);font-size:9px;line-height:1.5;min-height:56px}.calendar-feed-state{border-top:1px solid var(--line);margin-top:13px;padding-top:13px}.calendar-feed-state strong,.calendar-feed-state small{display:block}.calendar-feed-state small{font-size:8px;color:var(--muted);line-height:1.4;margin-top:4px}.calendar-feed-url{font-size:8px;background:var(--pale);border-radius:6px;padding:8px;margin:9px 0;word-break:break-all;color:var(--muted)}.calendar-feed-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.calendar-feed-actions button{font-size:8px;padding:8px 9px}.calendar-privacy-note{border:1px solid color-mix(in srgb,var(--gold) 28%,var(--line));background:var(--warm);border-radius:10px;padding:14px 16px;margin-top:12px}.calendar-privacy-note strong{font-size:10px}.calendar-privacy-note p{font-size:9px;color:var(--muted);line-height:1.5;margin:5px 0 0}.device-reminder-card{display:flex;justify-content:space-between;gap:20px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin-top:12px}.device-reminder-card strong{font-size:10px}.device-reminder-card p{font-size:8px;line-height:1.45;color:var(--muted);margin:4px 0 0}.calendar-feed-check{height:100%;align-self:end;margin-bottom:1px!important}.calendar-feed-check input{width:auto!important}.form-actions>span{flex:1}
@media(max-width:980px){.calendar-summary{grid-template-columns:1fr 1fr}.calendar-summary article:last-child{grid-column:1/-1}.calendar-toolbar{align-items:stretch;flex-direction:column}.calendar-filters{display:grid;grid-template-columns:1fr 1fr}.calendar-filters select{width:100%}.calendar-day{min-height:105px}.calendar-agenda-row{grid-template-columns:6px 1fr}.calendar-agenda-actions{grid-column:2;justify-content:flex-start}.calendar-sync-grid{grid-template-columns:1fr}}
@media(max-width:700px){.calendar-page-title .page-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.calendar-summary{grid-template-columns:1fr}.calendar-summary article:last-child{grid-column:auto}.calendar-workspace{padding:14px 10px;overflow:hidden}.calendar-nav{display:grid;grid-template-columns:auto auto auto 1fr}.calendar-nav h2{grid-column:1/-1;margin:7px 0 0;font-size:25px}.calendar-weekdays span{font-size:7px}.calendar-day{min-height:78px;padding:4px}.calendar-day-number{margin-bottom:4px}.calendar-day-number>span{font-size:12px}.calendar-day.today .calendar-day-number>span{width:20px;height:20px;font-size:10px}.calendar-chip{padding:4px 3px;font-size:7px;border-left-width:2px}.calendar-day-events .calendar-more{display:block}.calendar-agenda-day{grid-template-columns:1fr;gap:7px}.calendar-agenda-date{display:flex;gap:7px;align-items:baseline}.calendar-agenda-row{padding:11px}.calendar-philosophy{display:block;padding:20px}.calendar-philosophy button{margin-top:12px}.today-reminders>header{display:block}.today-reminders>header button{margin-top:8px}.today-reminder{grid-template-columns:5px 1fr}.today-reminder-actions{grid-column:2;justify-content:flex-start}.calendar-sync-grid article{padding:17px}.device-reminder-card{display:block}.device-reminder-card button{width:100%;margin-top:10px}.calendar-feed-check{align-self:auto}.calendar-filters{grid-template-columns:1fr}}

/* Post-audition closeout and archived learning report */
.archive-banner-actions{display:flex;gap:8px;flex-wrap:wrap}.closeout-backdrop{padding:18px}.closeout-modal{width:min(980px,100%);padding:0;max-height:95vh;overflow:hidden;display:grid;grid-template-rows:auto 5px 1fr}.closeout-modal-header{display:flex;justify-content:space-between;gap:28px;align-items:center;padding:24px 30px 20px;background:var(--paper)}.closeout-modal-header h2{font:400 32px Georgia,serif;margin:0}.closeout-modal-header #closeout-step-label{font-size:10px;color:var(--muted);margin:7px 0 0}.closeout-progress{height:5px;background:var(--pale)}.closeout-progress span{display:block;height:100%;background:var(--accent,var(--deep));transition:width .2s ease}.closeout-modal form{display:block;overflow:auto}.closeout-step{display:none;margin:0;padding:32px 38px 25px;min-height:510px}.closeout-step.active{display:block}.closeout-step-intro{display:grid;grid-template-columns:50px 1fr;gap:15px;align-items:start;margin-bottom:25px}.closeout-step-intro>span{width:44px;height:44px;border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 45%,var(--line));border-radius:50%;display:grid;place-items:center;font:italic 15px Georgia,serif;color:var(--accent,var(--deep))}.closeout-step-intro h3{font:400 30px Georgia,serif;margin:0}.closeout-step-intro p{color:var(--muted);line-height:1.5;margin:7px 0 0}.closeout-evidence{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:22px}.closeout-evidence div{background:var(--pale);border:1px solid var(--line);border-radius:10px;padding:13px}.closeout-evidence span,.closeout-evidence strong{display:block}.closeout-evidence span{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:800}.closeout-evidence strong{font:400 19px Georgia,serif;margin-top:5px}.closeout-list-fieldset,.closeout-tools{border:1px solid var(--line);border-radius:11px;padding:17px;margin:0}.closeout-list-fieldset legend,.closeout-tools legend{font:400 20px Georgia,serif;padding:0 7px}.closeout-list-fieldset>p{color:var(--muted);font-size:10px;margin:0 0 12px}.closeout-actual-row{display:grid;grid-template-columns:28px 1fr 30px;gap:9px;align-items:start;border-top:1px solid var(--line);padding:10px 0}.closeout-actual-row:first-child{border-top:0}.closeout-order{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:var(--mint);font-size:9px;font-weight:800}.closeout-actual-row>div{display:grid;grid-template-columns:1fr 1fr;gap:7px}.closeout-actual-row>div input:last-child{grid-column:1/-1}.closeout-actual-row input,.closeout-actual-row select{margin:0!important;padding:9px!important;font-size:10px}.closeout-tools>div{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.closeout-tools label{display:block}.closeout-tools input{position:absolute;opacity:0;pointer-events:none}.closeout-tools label>span{display:block;height:100%;border:1px solid var(--line);background:var(--paper);border-radius:9px;padding:12px;cursor:pointer}.closeout-tools strong,.closeout-tools small{display:block}.closeout-tools strong{font-size:11px}.closeout-tools small{color:var(--muted);font-size:9px;margin-top:4px}.closeout-tools label:has(input:checked)>span{border-color:var(--accent,var(--deep));background:color-mix(in srgb,var(--accent,var(--deep)) 8%,var(--paper));box-shadow:0 0 0 1px var(--accent,var(--deep))}.closeout-tools label:focus-within>span{outline:3px solid color-mix(in srgb,var(--accent,var(--deep)) 23%,transparent);outline-offset:2px}.closeout-patterns{border:1px solid var(--line);background:var(--pale);border-radius:10px;padding:15px 17px;margin:0 0 20px}.closeout-patterns>div,.report-patterns{display:flex;gap:6px;flex-wrap:wrap}.closeout-patterns span,.report-patterns span{border:1px solid var(--line);background:var(--paper);border-radius:20px;padding:6px 9px;font-size:9px}.closeout-patterns b,.report-patterns b{display:inline-grid;place-items:center;min-width:18px;height:18px;background:var(--mint);border-radius:50%;margin-left:4px}.empty-pattern strong{font-size:11px}.empty-pattern p{font-size:9px;color:var(--muted);margin:5px 0 0}.closeout-transfer-note{display:flex;justify-content:space-between;gap:20px;background:var(--warm);border:1px solid color-mix(in srgb,var(--gold) 25%,var(--line));border-radius:9px;padding:13px 15px;margin-bottom:14px}.closeout-transfer-note strong{font-size:10px}.closeout-transfer-note span{font-size:9px;color:var(--muted)}.closeout-insight-list{display:grid;gap:8px}.closeout-insight-list label{display:block}.closeout-insight-list input{position:absolute;opacity:0}.closeout-insight-list label>span{display:block;border:1px solid var(--line);border-radius:10px;padding:14px 15px 14px 43px;position:relative;cursor:pointer}.closeout-insight-list label>span:before{content:"";position:absolute;left:15px;top:17px;width:17px;height:17px;border:1px solid var(--accent,var(--deep));border-radius:5px}.closeout-insight-list input:checked+span{background:color-mix(in srgb,var(--accent,var(--deep)) 7%,var(--paper));border-color:color-mix(in srgb,var(--accent,var(--deep)) 45%,var(--line))}.closeout-insight-list input:checked+span:before{content:"✓";display:grid;place-items:center;background:var(--accent,var(--deep));color:white;font-size:11px}.closeout-insight-list strong,.closeout-insight-list small{display:block}.closeout-insight-list small{font-size:9px;color:var(--muted);margin-top:3px}.closeout-insight-list blockquote{font:italic 15px/1.45 Georgia,serif;margin:10px 0 0;color:var(--deep)}.closeout-insight-list em{display:block;font-size:9px;color:var(--muted);margin-top:7px}.closeout-no-insights{border:1px dashed var(--line);border-radius:10px;padding:24px;text-align:center}.closeout-no-insights p{color:var(--muted);font-size:10px}.closeout-final-note{text-align:center;border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.closeout-final-note h3{font:400 23px Georgia,serif;margin:0}.closeout-final-note p{font-size:10px;color:var(--muted);max-width:620px;margin:6px auto 0;line-height:1.5}.closeout-footer{position:sticky;bottom:0;background:var(--paper);border-top:1px solid var(--line);padding:14px 30px;display:flex;align-items:center;gap:9px;z-index:2}.closeout-footer>span{font-size:9px;color:var(--muted);margin:auto}.permanent-insights{border-top:1px solid var(--line);margin-top:16px;padding-top:13px}.permanent-insights summary{cursor:pointer;font-size:10px;font-weight:800;color:var(--accent,var(--teal))}.permanent-insights>div{display:grid;gap:7px;margin-top:9px}.permanent-insights article{background:var(--pale);border-radius:8px;padding:10px 12px}.permanent-insights strong,.permanent-insights small{display:block}.permanent-insights small{font-size:8px;color:var(--muted);margin-top:3px}.permanent-insights p{font:italic 13px/1.45 Georgia,serif!important;color:var(--deep)!important;margin:8px 0!important}.permanent-insights em{font-size:8px;color:var(--muted)}.closeout-report-sheet{background:var(--paper);border:1px solid var(--line);border-radius:17px;padding:42px 46px;box-shadow:0 16px 45px rgba(42,48,39,.055)}.report-cover{display:grid;grid-template-columns:1fr auto;gap:40px;border-bottom:2px solid var(--accent,var(--deep));padding-bottom:25px}.report-cover h2{font:400 clamp(36px,5vw,54px)/1.05 Georgia,serif;margin:0 0 8px}.report-cover>div:first-child>p:last-child{color:var(--muted)}.report-cover>div:last-child{min-width:180px}.report-cover>div:last-child span,.report-cover>div:last-child strong,.report-cover>div:last-child small{display:block}.report-cover>div:last-child span{font-size:8px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-weight:850;margin-top:10px}.report-cover>div:last-child span:first-child{margin-top:0}.report-cover>div:last-child strong{font:400 18px Georgia,serif;margin-top:3px}.report-cover>div:last-child small{font-size:9px;color:var(--muted);margin-top:2px}.report-retrospective{background:var(--warm);border:1px solid color-mix(in srgb,var(--gold) 25%,var(--line));border-radius:10px;padding:16px 18px;margin-top:20px;display:grid;grid-template-columns:1fr auto;gap:8px 20px;align-items:center}.report-retrospective p{color:var(--muted);font-size:10px;margin:0}.report-retrospective button{grid-column:2;grid-row:1/3}.report-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:26px 0 0;border:1px solid var(--line);border-radius:11px;overflow:hidden}.report-metrics div{padding:15px;border-right:1px solid var(--line);background:var(--pale)}.report-metrics div:last-child{border:0}.report-metrics span,.report-metrics strong{display:block}.report-metrics span{font-size:7px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:850}.report-metrics strong{font:400 17px Georgia,serif;margin-top:5px}.report-outcome{display:grid;grid-template-columns:.7fr 1.3fr;gap:30px;align-items:start;margin-top:32px!important}.report-outcome h3,.report-section h3,.report-two-column h3,.report-preserved h3{font:400 25px Georgia,serif;margin:0}.report-outcome>p{margin:0;color:var(--muted);line-height:1.65}.report-section{border-top:1px solid var(--line);padding-top:27px;margin-top:32px!important}.report-actual-list{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:7px}.report-actual-list li{display:grid;grid-template-columns:29px 1fr;gap:9px;background:var(--pale);border-radius:8px;padding:10px}.report-actual-list li>span{width:25px;height:25px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:8px}.report-actual-list strong,.report-actual-list small{display:block}.report-actual-list strong{font-size:10px}.report-actual-list small{font-size:8px;color:var(--muted);margin-top:3px}.report-two-column{display:grid;grid-template-columns:1fr 1fr;gap:36px;border-top:1px solid var(--line);padding-top:27px;margin-top:32px!important}.report-two-column article{margin:0}.report-two-column article>p:not(.eyebrow){color:var(--muted);font-size:11px;line-height:1.65;white-space:pre-wrap}.report-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:13px}.report-tags span{background:var(--mint);border-radius:20px;padding:6px 8px;font-size:8px;font-weight:750}.report-carry{background:var(--accent,var(--deep));color:white;border-radius:13px;padding:28px 30px;margin-top:32px!important}.report-carry .eyebrow{color:#d6e5df!important}.report-carry blockquote{font:italic 26px/1.45 Georgia,serif;margin:0}.report-carry>p:last-child{font-size:10px;color:#d6e5df;margin:16px 0 0}.report-insights{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}.report-insights article{background:var(--pale);border:1px solid var(--line);border-radius:9px;padding:14px}.report-insights strong,.report-insights small{display:block}.report-insights small{font-size:8px;color:var(--muted);margin-top:3px}.report-insights p{font:italic 14px/1.45 Georgia,serif;color:var(--deep)}.report-insights span{font-size:8px;color:var(--muted)}.report-empty{color:var(--muted);font-style:italic;font-size:10px;line-height:1.5}.report-preserved{display:flex;justify-content:space-between;gap:30px;border-top:2px solid var(--deep);padding-top:25px;margin-top:38px!important}.report-preserved>div:first-child{max-width:690px}.report-preserved p:not(.eyebrow){color:var(--muted);font-size:10px;line-height:1.6}.report-preserved>div:last-child{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.report-footer-line{text-align:center;color:var(--muted);font-size:8px;border-top:1px solid var(--line);padding-top:15px;margin:28px 0 0}
@media(max-width:900px){.closeout-modal{max-height:100vh;border-radius:0}.closeout-evidence{grid-template-columns:1fr 1fr}.report-metrics{grid-template-columns:repeat(3,1fr)}.report-metrics div{border-bottom:1px solid var(--line)}.report-metrics div:nth-child(3){border-right:0}.closeout-report-sheet{padding:32px}.report-two-column{gap:24px}.archive-banner-actions{width:100%}}
.closeout-actual-row{grid-template-columns:28px 1fr 82px}.closeout-actual-row>.closeout-row-actions{display:flex;grid-template-columns:none;gap:3px}.closeout-row-actions button{width:25px;height:25px;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--deep);padding:0}.closeout-row-actions .row-remove{color:var(--danger)}
@media(max-width:700px){.closeout-backdrop{padding:0}.closeout-modal-header{align-items:flex-start;padding:20px}.closeout-modal-header h2{font-size:26px}.closeout-modal-header .secondary-button{padding:9px 10px;font-size:9px}.closeout-step{padding:25px 20px;min-height:0}.closeout-step-intro{grid-template-columns:40px 1fr}.closeout-step-intro>span{width:36px;height:36px}.closeout-step-intro h3{font-size:25px}.closeout-tools>div{grid-template-columns:1fr}.closeout-actual-row>div{grid-template-columns:1fr}.closeout-actual-row>div input:last-child{grid-column:auto}.closeout-transfer-note{display:block}.closeout-transfer-note span{display:block;margin-top:4px}.closeout-footer{padding:12px 14px;flex-wrap:wrap}.closeout-footer>span{order:3;width:100%;text-align:center}.closeout-page-title .page-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:18px}.closeout-page-title .page-actions button{white-space:normal;padding:10px}.closeout-report-sheet{padding:22px 18px;border-radius:12px}.report-cover{grid-template-columns:1fr;gap:15px}.report-cover>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:3px 14px}.report-cover>div:last-child small{grid-column:1/-1}.report-metrics{grid-template-columns:1fr 1fr}.report-metrics div:nth-child(3){border-right:1px solid var(--line)}.report-metrics div:nth-child(even){border-right:0}.report-outcome,.report-two-column{grid-template-columns:1fr;gap:18px}.report-actual-list,.report-insights{grid-template-columns:1fr}.report-carry{padding:23px}.report-carry blockquote{font-size:22px}.report-preserved{display:block}.report-preserved>div:last-child{align-items:flex-start;margin-top:15px}.report-retrospective{grid-template-columns:1fr}.report-retrospective button{grid-column:auto;grid-row:auto}.archive-banner-actions{display:grid;grid-template-columns:1fr;width:100%}}
@media print{body:has(#view-closeout.active){background:white!important}.app-shell:has(#view-closeout.active)>.topbar,.app-shell:has(#view-closeout.active)>.main-nav,.app-shell:has(#view-closeout.active)>.mobile-nav,.app-shell:has(#view-closeout.active) #archive-banner,.app-shell:has(#view-closeout.active) .view:not(#view-closeout),.app-shell:has(#view-closeout.active)~.modal-backdrop{display:none!important}.app-shell:has(#view-closeout.active)>.content{display:block!important;max-width:none;padding:0}.app-shell:has(#view-closeout.active) #view-closeout{display:block!important}.app-shell:has(#view-closeout.active) .closeout-report-sheet{border:0;box-shadow:none;padding:0}.app-shell:has(#view-closeout.active) .closeout-report-sheet section{break-inside:avoid;margin-top:22px}.app-shell:has(#view-closeout.active) .report-cover h2{font-size:38px}.app-shell:has(#view-closeout.active) .report-carry{background:#f1f1ed!important;color:#222!important;border:1px solid #bbb}.app-shell:has(#view-closeout.active) .report-carry .eyebrow,.app-shell:has(#view-closeout.active) .report-carry>p:last-child{color:#444!important}.app-shell:has(#view-closeout.active) .report-preserved button,.app-shell:has(#view-closeout.active) .report-retrospective button{display:none!important}}

/* Recorded audition and prescreening plan */
.recorded-only{display:grid;gap:15px;border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 25%,var(--line));background:color-mix(in srgb,var(--accent,var(--deep)) 5%,var(--paper));border-radius:12px;padding:17px}.recording-option-fieldset{border:1px solid var(--line);border-radius:10px;padding:12px 15px;margin:0}.recording-option-fieldset legend{font:400 16px Georgia,serif;padding:0 5px}.recording-option-fieldset label{display:flex!important;align-items:center;gap:8px;margin-top:7px}.recording-option-fieldset input{width:auto!important;margin:0!important}.recording-page-title{margin-bottom:22px}.recording-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:0 0 19px!important}.recording-overview article{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:16px;min-width:0}.recording-overview span,.recording-overview strong,.recording-overview small{display:block}.recording-overview span{font-size:8px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-weight:850}.recording-overview strong{font:400 20px/1.2 Georgia,serif;margin:8px 0 5px}.recording-overview small{font-size:8px;color:var(--muted);line-height:1.45}.recording-workspace{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:23px;margin-top:16px!important}.recording-workspace>.section-heading{margin-bottom:8px}.recording-workspace>.section-heading h2{font-size:27px}.recording-section-copy{color:var(--muted);font-size:10px;line-height:1.55;max-width:760px;margin:0 0 17px}.recording-session-list,.recording-group-list{display:grid;gap:10px}.recording-session-card,.recording-group-card{border:1px solid var(--line);border-radius:12px;padding:17px;background:color-mix(in srgb,var(--pale) 47%,var(--paper))}.recording-session-card>header,.recording-group-card>header{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:14px}.recording-session-card>header span,.recording-session-card>header strong,.recording-group-card>header span{display:block}.recording-session-card>header span,.recording-group-card>header span{font-size:7px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-weight:850}.recording-session-card>header strong{font:400 19px Georgia,serif;margin-top:4px}.recording-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.recording-session-card label,.recording-group-card label,.recording-requirement-grid label,.recording-confirmation{font-size:9px;font-weight:750;color:var(--deep)}.recording-session-card input,.recording-session-card select,.recording-session-card textarea,.recording-group-card input,.recording-group-card select,.recording-group-card textarea,.recording-requirement-grid input,.recording-requirement-grid select,.recording-requirement-grid textarea,.recording-confirmation textarea{display:block;width:100%;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);padding:9px;margin-top:5px;font-size:10px}.recording-session-card textarea,.recording-group-card textarea{min-height:68px}.recording-session-groups{border:1px solid var(--line);border-radius:9px;padding:9px 12px 12px;margin:13px 0}.recording-session-groups legend{font:400 15px Georgia,serif;padding:0 5px}.recording-session-groups>div{display:flex;gap:7px;flex-wrap:wrap}.recording-session-groups label{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:20px;background:var(--paper);padding:6px 9px}.recording-session-groups label:has(input:checked){border-color:var(--accent,var(--deep));background:color-mix(in srgb,var(--accent,var(--deep)) 8%,var(--paper))}.recording-session-groups input{width:auto;margin:0}.recording-group-card>header input{border:0;border-bottom:1px solid var(--line);background:transparent;font:400 21px Georgia,serif;color:var(--deep);padding:3px 0;margin-top:2px;width:min(460px,70vw)}.recording-group-card>header input[readonly]{border-bottom-color:transparent}.recording-group-status{display:grid;grid-template-columns:.7fr 1.2fr 1.2fr;gap:9px}.recording-group-music{border:1px solid var(--line);border-radius:9px;margin:13px 0;padding:11px}.recording-group-music summary{cursor:pointer;font-size:9px;font-weight:850;color:var(--teal)}.recording-group-music>div{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:10px}.recording-group-music label{display:flex;gap:8px;align-items:flex-start;background:var(--paper);border-radius:7px;padding:9px}.recording-group-music input{width:auto;margin:2px 0 0}.recording-group-music strong,.recording-group-music small{display:block}.recording-group-music strong{font-size:9px}.recording-group-music small{color:var(--muted);font-size:8px;margin-top:3px}.recording-requirement-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.recording-requirement-grid textarea{min-height:76px}.recording-preflight,.submission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px}.recording-preflight label,.submission-grid label{display:flex;gap:8px;align-items:flex-start;border:1px solid var(--line);border-radius:9px;background:var(--pale);padding:12px;font-size:9px;line-height:1.4}.recording-preflight input,.submission-grid input{margin:1px 0 0;flex:0 0 auto}.submission-workspace{border-color:color-mix(in srgb,var(--accent,var(--deep)) 36%,var(--line));background:color-mix(in srgb,var(--accent,var(--deep)) 4%,var(--paper))}.submission-state{border:1px solid var(--line);border-radius:20px;padding:6px 9px;font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:850}.submission-state.complete{background:var(--mint);border-color:color-mix(in srgb,var(--accent,var(--deep)) 35%,var(--line));color:var(--deep)}.submission-grid{grid-template-columns:1fr 1fr}.recording-confirmation{display:block;margin-top:15px}.recording-submit-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:15px}.recording-submit-actions p{color:var(--muted);font-size:9px;line-height:1.5;margin:0 auto 0 0;max-width:570px}.event-type-submission{--event-color:#9a5f48}.schedule-segment.phase-record-ready,.schedule-segment.phase-recording-window,.schedule-segment.phase-finalize-submit{background:color-mix(in srgb,var(--accent,var(--deep)) 7%,var(--paper))}
@media(max-width:900px){.recording-overview{grid-template-columns:1fr 1fr}.recording-card-grid{grid-template-columns:1fr 1fr}.recording-preflight{grid-template-columns:1fr}.recording-group-status{grid-template-columns:1fr 1fr}.recording-group-status label:last-child{grid-column:1/-1}}
@media(max-width:650px){.recording-page-title{display:block}.recording-page-title .page-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:16px}.recording-overview,.recording-card-grid,.recording-requirement-grid,.recording-group-status,.recording-group-music>div,.submission-grid{grid-template-columns:1fr}.recording-group-status label:last-child{grid-column:auto}.recording-workspace{padding:17px}.recording-workspace>.section-heading{align-items:flex-start}.recording-session-card,.recording-group-card{padding:14px}.recording-group-card>header input{width:65vw}.recording-submit-actions{align-items:stretch;display:grid}.recording-submit-actions p{margin-bottom:4px}.recording-submit-actions button{width:100%}}

/* Phase-aware practice guidance */
.block-status-labels .phase-block-label{background:color-mix(in srgb,var(--accent,var(--deep)) 10%,var(--paper));color:var(--accent,var(--deep))}.block-phase-guide{display:grid;gap:3px;border-left:2px solid color-mix(in srgb,var(--accent,var(--deep)) 38%,var(--line));margin:9px 0 7px;padding-left:10px}.block-phase-guide span{font-size:10px;color:var(--deep);line-height:1.4}.block-phase-guide small{font-size:9px!important;color:var(--muted)!important;font-weight:500!important;line-height:1.4}.today-block-labels .phase-today-label{color:var(--accent,var(--deep));font-weight:900}.today-phase-guide{display:grid;gap:3px;background:color-mix(in srgb,var(--accent,var(--deep)) 6%,var(--paper));border-radius:7px;margin-top:10px;padding:9px 11px}.today-phase-guide strong{font-size:10px;color:var(--deep);line-height:1.4}.today-phase-guide span{font-size:9px;color:var(--muted);line-height:1.4}.session-phase-brief{display:grid;grid-template-columns:auto 1fr minmax(180px,.8fr);align-items:center;gap:14px;background:color-mix(in srgb,var(--accent,var(--deep)) 7%,var(--paper));border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 24%,var(--line));border-radius:11px;margin:16px 0 23px;padding:14px 16px}.session-phase-brief>span{background:var(--accent,var(--deep));color:white;border-radius:20px;padding:6px 9px;font-size:8px;text-transform:uppercase;letter-spacing:.1em;font-weight:850;white-space:nowrap}.session-phase-brief strong,.session-phase-brief small{display:block}.session-phase-brief strong{font:400 15px/1.35 Georgia,serif}.session-phase-brief small{color:var(--muted);font-size:8px;line-height:1.4;margin-top:4px}.session-phase-brief p{border-left:1px solid var(--line);color:var(--muted);font-size:9px;line-height:1.45;margin:0;padding-left:14px}.session-phase-brief p b{display:block;color:var(--teal);font-size:7px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:3px}.session-phase-checklist{border:1px solid var(--line);border-radius:11px;margin:20px 0 0;padding:9px 15px 14px}.session-phase-checklist legend{font:400 18px Georgia,serif;padding:0 7px}.session-phase-checklist label{display:block;position:relative}.session-phase-checklist label+label{border-top:1px solid var(--line)}.session-phase-checklist input{position:absolute;opacity:0}.session-phase-checklist label>span{display:grid;grid-template-columns:25px 1fr;align-items:center;gap:10px;color:var(--deep);cursor:pointer;font-size:10px;line-height:1.45;padding:11px 0}.session-phase-checklist label>span b{width:23px;height:23px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 40%,var(--line));border-radius:50%;color:var(--accent,var(--deep));font-size:8px}.session-phase-checklist input:checked+span{color:var(--muted)}.session-phase-checklist input:checked+span b{background:var(--accent,var(--deep));color:white}.session-phase-checklist input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--accent,var(--deep)) 22%,transparent);outline-offset:2px}.session-history-badges{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.session-phase-badge{background:color-mix(in srgb,var(--accent,var(--deep)) 10%,var(--paper));border-radius:20px;color:var(--accent,var(--deep));font-size:8px;font-weight:850;letter-spacing:.07em;padding:5px 8px;text-transform:uppercase}
@media(max-width:800px){.block-phase-guide{margin-right:4px}.today-phase-guide{padding:8px 9px}.session-phase-brief{grid-template-columns:1fr;align-items:start}.session-phase-brief>span{justify-self:start}.session-phase-brief p{border-left:0;border-top:1px solid var(--line);padding:10px 0 0}.session-history-badges{justify-content:flex-start}.timeline-top{align-items:flex-start;flex-direction:column}}

/* Recital program and rehearsal planning */
.recital-only{display:grid;gap:15px;border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 25%,var(--line));background:color-mix(in srgb,var(--accent,var(--deep)) 5%,var(--paper));border-radius:12px;padding:17px}.recital-setup-note,.recital-section-copy{color:var(--muted);font-size:10px;line-height:1.55;margin:0}.recital-dress-option{align-self:end;min-height:41px}.recital-page-title{margin-bottom:22px}.recital-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:0 0 19px!important}.recital-overview article{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:16px;min-width:0}.recital-overview span,.recital-overview strong,.recital-overview small{display:block}.recital-overview span{font-size:8px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-weight:850}.recital-overview strong{font:400 20px/1.2 Georgia,serif;margin:8px 0 5px}.recital-overview small{font-size:8px;color:var(--muted);line-height:1.45}.recital-workspace{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:23px;margin-top:16px!important}.recital-workspace>.section-heading{margin-bottom:8px}.recital-workspace>.section-heading h2{font-size:27px}.recital-section-copy{max-width:760px;margin-bottom:17px}.recital-program-list,.recital-event-list{display:grid;gap:10px}.recital-program-row{display:grid;grid-template-columns:75px minmax(180px,1fr) 155px 95px;align-items:end;gap:12px;border:1px solid var(--line);border-radius:11px;background:color-mix(in srgb,var(--pale) 47%,var(--paper));padding:15px}.recital-program-row label,.recital-event-card label{font-size:9px;font-weight:750;color:var(--deep)}.recital-program-row label>span{display:block;font-size:7px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:5px}.recital-program-row input,.recital-program-row select,.recital-event-card input,.recital-event-card select,.recital-event-card textarea{display:block;width:100%;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);padding:9px;font-size:10px}.recital-program-copy{align-self:center;min-width:0}.recital-program-copy strong,.recital-program-copy small,.recital-program-copy span{display:block}.recital-program-copy strong{font:400 19px/1.25 Georgia,serif}.recital-program-copy small{color:var(--muted);font-size:8px;margin-top:4px}.recital-program-copy span{color:var(--teal);font-size:8px;font-weight:750;margin-top:5px}.recital-event-card{border:1px solid var(--line);border-radius:12px;padding:17px;background:color-mix(in srgb,var(--pale) 47%,var(--paper))}.recital-event-card>header{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:14px}.recital-event-card>header span,.recital-event-card>header strong{display:block}.recital-event-card>header span{font-size:7px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-weight:850}.recital-event-card>header strong{font:400 19px Georgia,serif;margin-top:4px}.recital-event-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:10px}.recital-event-grid label:nth-child(n+5){grid-column:auto}.recital-event-card textarea{min-height:68px;margin-top:5px;resize:vertical}.recital-event-card>label{display:block;margin-top:12px}.recital-event-music{border:1px solid var(--line);border-radius:9px;margin:14px 0 0;padding:10px 12px 12px}.recital-event-music legend{font:400 15px Georgia,serif;padding:0 5px}.recital-event-music>p{color:var(--muted);font-size:8px;margin:0 0 9px}.recital-event-music>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.recital-event-music label{display:flex;gap:8px;align-items:flex-start;background:var(--paper);border-radius:7px;padding:9px}.recital-event-music input{width:auto;margin:2px 0 0}.recital-event-music strong,.recital-event-music small{display:block}.recital-event-music strong{font-size:9px}.recital-event-music small{color:var(--muted);font-size:8px;margin-top:3px}.recital-save-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;border-top:1px solid var(--line);margin-top:17px;padding-top:15px}.recital-save-actions p{color:var(--muted);font-size:9px;line-height:1.45;margin:0 auto 0 0}.program-sections{display:grid;gap:7px}.program-section-row{grid-template-columns:1.15fr 80px 120px 120px 1.3fr 32px!important}.recital-music-summary{display:flex;gap:6px;flex-wrap:wrap;margin-top:11px}.recital-music-summary span{background:color-mix(in srgb,var(--accent,var(--deep)) 8%,var(--paper));border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 20%,var(--line));border-radius:20px;color:var(--deep);font-size:8px;padding:5px 8px}.event-type-rehearsal{--event-color:#6e7250}.event-type-runthrough{--event-color:#9a6948}.event-type-recital{--event-color:#8d4435}.schedule-segment.phase-map,.schedule-segment.phase-assemble,.schedule-segment.phase-run,.schedule-segment.phase-dress-taper{background:color-mix(in srgb,var(--accent,var(--deep)) 7%,var(--paper))}
@media(max-width:950px){.recital-overview{grid-template-columns:1fr 1fr}.recital-event-grid{grid-template-columns:1fr 1fr}.recital-program-row{grid-template-columns:70px 1fr 135px}.recital-program-row>label:last-child{grid-column:3}.program-section-row{grid-template-columns:1fr 80px 1fr 1fr!important}.program-section-row input:nth-of-type(3){grid-column:1/-1}.program-section-row .row-remove{grid-column:4}}
@media(max-width:650px){.recital-page-title{display:block}.recital-page-title .page-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:16px}.recital-overview,.recital-event-grid,.recital-event-music>div,.recital-program-row{grid-template-columns:1fr}.recital-workspace{padding:17px}.recital-program-row>label:last-child{grid-column:auto}.recital-event-card{padding:14px}.recital-save-actions{align-items:stretch;display:grid}.recital-save-actions p{margin-bottom:3px}.program-section-row{grid-template-columns:1fr!important}.program-section-row input:nth-of-type(3),.program-section-row .row-remove{grid-column:auto}.program-section-row .row-remove{justify-self:end}}

/* Practice Intelligence */
.practice-intelligence-overview{margin:0 0 22px;border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 28%,var(--line));border-radius:15px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent,var(--deep)) 8%,var(--paper)),var(--paper) 58%);padding:24px 25px}.practice-intelligence-overview>header{display:flex;justify-content:space-between;gap:28px;align-items:flex-start}.practice-intelligence-overview h3{font:400 26px Georgia,serif;margin:0 0 7px}.practice-intelligence-overview header p:last-child{max-width:780px;color:var(--muted);font-size:11px;line-height:1.55;margin:0}.model-status{white-space:nowrap;border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 30%,var(--line));border-radius:20px;background:var(--paper);color:var(--teal);padding:7px 10px;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.intelligence-stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:11px;overflow:hidden;margin:20px 0 14px;background:color-mix(in srgb,var(--paper) 86%,transparent)}.intelligence-stats>div{padding:13px 15px;border-right:1px solid var(--line)}.intelligence-stats>div:last-child{border:0}.intelligence-stats span,.intelligence-stats strong{display:block}.intelligence-stats span{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:850}.intelligence-stats strong{font:400 18px Georgia,serif;margin-top:4px}.intelligence-balance{display:flex;flex-wrap:wrap;gap:6px}.intelligence-balance span,.intelligence-pills span{border-radius:20px;background:color-mix(in srgb,var(--accent,var(--deep)) 8%,var(--paper));color:var(--teal);padding:5px 8px;font-size:8px;font-weight:800;letter-spacing:.04em}.capacity-note{color:var(--muted);font-size:10px;line-height:1.45;margin:13px 0 0}.intelligence-meta{margin:10px 0 4px}.intelligence-pills{display:flex;flex-wrap:wrap;gap:5px}.intelligence-pills span:nth-child(2){background:var(--warm);color:#715f49}.intelligence-pills span:nth-child(3){background:var(--pale);color:var(--muted)}.practice-shape{margin:7px 0 0!important;color:var(--deep)!important;font-size:10px!important}.practice-shape b{color:var(--teal)}.decision-details{margin-top:7px}.decision-details summary{cursor:pointer;color:var(--teal);font-size:9px;font-weight:850;list-style-position:inside}.decision-details[open]{background:var(--pale);border-radius:8px;padding:9px 10px}.decision-reasons{display:grid;gap:4px;margin:8px 0}.decision-reasons span{font-size:9px;color:var(--muted);line-height:1.35;padding-left:11px;position:relative}.decision-reasons span:before{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:var(--accent,var(--teal));left:0;top:5px}.decision-details>small{font-size:8px!important;color:var(--muted)!important;font-weight:650!important}.today-block .intelligence-meta{margin-bottom:11px}.today-block .practice-shape{max-width:720px}
@media(max-width:800px){.practice-intelligence-overview>header{display:block}.model-status{display:inline-block;margin-top:14px}.intelligence-stats{grid-template-columns:1fr 1fr}.intelligence-stats>div:nth-child(2){border-right:0}.intelligence-stats>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.weekly-block .intelligence-meta{max-width:100%}}

/* Google Calendar planning context */
.calendar-availability-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;background:color-mix(in srgb,#4285f4 7%,var(--paper));border:1px solid color-mix(in srgb,#4285f4 25%,var(--line));border-radius:11px;margin-bottom:15px;padding:13px 15px}.calendar-availability-actions strong,.calendar-availability-actions small{display:block}.calendar-availability-actions strong{font-size:10px;color:var(--deep)}.calendar-availability-actions small{color:var(--muted);font-size:9px;line-height:1.45;margin-top:3px;max-width:720px}.availability-grid label>em{display:block;color:var(--teal);font-size:7px;font-style:normal;font-weight:750;line-height:1.35;margin-top:6px}.calendar-time{display:block;color:#376aa8;font-size:9px;font-weight:850;margin-top:5px}.google-calendar-status{margin:17px 0}.connection-state{border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,#4285f4 5%,var(--paper));padding:18px}.connection-state>span,.connection-state>strong,.connection-state>p{display:block}.connection-state>span{color:#376aa8;font-size:8px;font-weight:900;letter-spacing:.11em}.connection-state>strong{font:400 20px/1.3 Georgia,serif;margin:7px 0}.connection-state>p{color:var(--muted);font-size:10px;line-height:1.5;margin:0 0 13px}.connection-state.connected{border-left:4px solid #4285f4}.connection-state.pending{background:var(--pale)}.google-calendar-settings{display:grid;gap:15px}.google-calendar-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:12px}.google-calendar-settings fieldset{border:1px solid var(--line);border-radius:11px;padding:12px 14px 15px}.google-calendar-settings legend{font:400 16px Georgia,serif;padding:0 6px}.google-calendar-list{display:grid;gap:6px;max-height:200px;overflow:auto}.google-calendar-list label{display:grid;grid-template-columns:auto 9px 1fr auto;align-items:center;gap:8px;background:var(--paper);border-radius:7px;padding:9px}.google-calendar-list label>span{width:9px;height:9px;border-radius:50%;background:var(--calendar-color)}.google-calendar-list b{font-size:9px}.google-calendar-list small{color:var(--muted);font-size:7px;text-transform:uppercase}.compact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.compact-grid label,.calendar-keywords{font-size:8px;font-weight:800;color:var(--deep)}.compact-grid input,.calendar-keywords textarea{display:block;width:100%;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);font-size:10px;margin-top:5px;padding:9px}.compact-grid label{position:relative}.compact-grid label>span{color:var(--muted);font-size:7px;position:absolute;right:8px;bottom:10px}.calendar-keywords{display:block}.calendar-keywords small{display:block;color:var(--muted);font-size:8px;font-weight:500;line-height:1.4;margin-top:5px}.calendar-classification{border:1px solid var(--line);border-radius:11px;overflow:hidden}.calendar-classification>header{display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--pale);padding:12px 14px}.calendar-classification header strong,.calendar-classification header small{display:block}.calendar-classification header strong{font-size:10px}.calendar-classification header small{color:var(--muted);font-size:8px;margin-top:3px}.calendar-classification>#google-calendar-review{max-height:310px;overflow:auto}.classification-row{display:grid;grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:12px;border-top:1px solid var(--line);padding:10px 14px}.classification-row:first-child{border-top:0}.classification-row b,.classification-row small{display:block}.classification-row b{font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classification-row small{color:var(--muted);font-size:8px;margin-top:3px}.classification-row select{border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);font-size:9px;padding:8px}.form-actions.spread{justify-content:space-between}.text-button.danger{color:#8d4435}.other-calendar-options{border-top:1px solid var(--line);margin-top:8px;padding-top:14px}.other-calendar-options>summary{cursor:pointer;color:var(--teal);font-size:9px;font-weight:850}.other-calendar-options>.calendar-sync-grid{margin-top:13px}.confirmed-note{display:flex!important;align-items:center;justify-content:space-between;gap:18px}
@media(max-width:700px){.calendar-availability-actions,.confirmed-note{align-items:stretch;display:grid!important}.google-calendar-grid,.compact-grid{grid-template-columns:1fr}.classification-row{align-items:stretch;grid-template-columns:1fr}.form-actions.spread{align-items:stretch;display:grid}.form-actions.spread button{width:100%}}

/* Unified daily Practice Hub */
.today-time-form{display:grid;align-items:stretch;gap:20px;padding:24px 32px}.today-project-scope,.capacity-fieldset,.session-project-scope{border:0;margin:0;padding:0;min-width:0}.today-project-scope>legend,.capacity-fieldset>legend,.session-project-scope>legend{font:400 20px Georgia,serif;color:var(--deep);padding:0}.today-project-scope>p,.session-project-scope>p{color:var(--muted);font-size:12px;line-height:1.5;margin:6px 0 13px}.project-choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.project-choice{display:block;min-width:0}.project-choice>input{position:absolute;opacity:0;pointer-events:none}.project-choice>span{display:grid;grid-template-columns:7px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:10px;min-height:58px;border:1px solid var(--line);border-radius:10px;background:var(--paper);padding:11px 12px;cursor:pointer}.project-choice>span>i{grid-row:1/3;width:7px;border-radius:8px;background:var(--project-accent,var(--accent));opacity:.35}.project-choice b{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-choice small{grid-column:2;color:var(--muted);font-size:11px;line-height:1.35;margin-top:3px}.project-choice em{grid-column:3;grid-row:1/3;align-self:center;border-radius:18px;background:var(--pale);color:var(--muted);font-size:10px;font-style:normal;font-weight:800;padding:5px 8px}.project-choice input:checked+span{border-color:color-mix(in srgb,var(--project-accent,var(--accent)) 45%,var(--line));background:color-mix(in srgb,var(--project-accent,var(--accent)) 7%,var(--paper))}.project-choice input:checked+span>i{opacity:1}.project-choice input:checked+span>em{background:var(--deep);color:white}.project-choice input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--project-accent,var(--accent)) 25%,transparent);outline-offset:2px}.project-choice input:disabled+span{opacity:.48;cursor:not-allowed}.scope-warning{display:flex;align-items:center;gap:9px;flex-wrap:wrap;border-left:3px solid var(--gold);background:var(--warm);border-radius:8px;margin-top:12px;padding:11px 13px}.scope-warning strong{font-size:12px}.scope-warning span{flex:1;min-width:220px;color:var(--muted);font-size:11px;line-height:1.45}.scope-warning .text-button{min-height:44px}.today-input-grid{display:grid!important;grid-template-columns:.9fr 1.2fr 1fr;align-items:start!important;gap:16px!important;white-space:normal!important}.today-input-grid>label,.capacity-fieldset{font-size:13px;font-weight:800;color:var(--deep)}.today-input-grid>label>span,.today-input-grid>label>small{display:block}.today-input-grid>label>small{min-height:31px;color:var(--muted);font-size:11px;font-weight:500;line-height:1.4;margin:5px 0 8px}.today-input-grid select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);padding:10px}.minute-input{display:flex!important;align-items:center;gap:8px}.minute-input input{width:90px!important;min-height:44px}.minute-input b{color:var(--muted);font-size:11px}.capacity-fieldset>legend{font:800 13px Inter,ui-sans-serif,sans-serif}.capacity-options{display:grid!important;grid-template-columns:repeat(3,1fr);gap:6px!important;margin-top:8px}.capacity-options label{display:block}.capacity-options input{position:absolute;opacity:0}.capacity-options span{display:block;min-height:58px;border:1px solid var(--line);border-radius:8px;background:var(--paper);padding:10px;cursor:pointer}.capacity-options strong,.capacity-options small{display:block}.capacity-options strong{font-size:12px}.capacity-options small{color:var(--muted);font-size:10px;font-weight:500;margin-top:3px}.capacity-options input:checked+span{border-color:var(--deep);background:var(--deep);color:white}.capacity-options input:checked+span small{color:#dcebe6}.capacity-options input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--accent,var(--deep)) 25%,transparent);outline-offset:2px}.today-form-actions{display:flex!important;justify-content:flex-end}.today-form-actions .primary-button{min-height:44px}.today-replan-review{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid color-mix(in srgb,var(--gold) 45%,var(--line));border-left:5px solid var(--gold);background:var(--warm);padding:18px 24px}.today-replan-review strong,.today-replan-review span{display:block}.today-replan-review strong{font:400 19px Georgia,serif}.today-replan-review span{color:var(--muted);font-size:12px;line-height:1.5;margin-top:5px}.today-replan-review>div:last-child{display:flex;gap:8px;flex:0 0 auto}.today-block.must-do{background:color-mix(in srgb,var(--gold) 5%,var(--paper))}.today-block-labels .must-do-label{color:#76551f;background:var(--warm);border-radius:12px;padding:3px 6px;margin-top:-3px}.excluded-context{color:var(--muted);font-size:11px;line-height:1.4}.recent-practice-context{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.recent-practice-context .eyebrow,.recent-practice-context>p:last-child{grid-column:1/-1}.recent-practice-context>div{border:1px solid var(--line);border-radius:8px;background:var(--pale);padding:9px}.recent-practice-context span,.recent-practice-context strong{display:block}.recent-practice-context span{color:var(--muted);font-size:10px}.recent-practice-context strong{font:400 16px Georgia,serif;margin-top:3px}.recent-practice-context>p:last-child,.session-project-credit{color:var(--muted);font-size:11px;line-height:1.45;margin:0}.session-project-scope{border:1px solid var(--line);border-radius:11px;margin:16px 0;padding:14px}.session-project-scope .project-choice-list{grid-template-columns:1fr 1fr}.session-readiness-projects{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:13px}.session-readiness-projects:empty{display:none}.field-label>small{display:block;color:var(--muted);font-size:11px;font-weight:500;line-height:1.4;margin-top:5px}.session-project-credit{margin:7px 0 0}
@media(max-width:800px){.today-time-form{padding:20px}.today-input-grid{grid-template-columns:1fr}.today-input-grid>label>small{min-height:0}.today-replan-review{align-items:stretch;display:grid}.today-replan-review>div:last-child{display:grid;grid-template-columns:1fr 1fr}.today-replan-review button{min-height:44px}.session-readiness-projects{grid-template-columns:1fr}}
@media(max-width:600px){.project-choice-list,.session-project-scope .project-choice-list,.capacity-options{grid-template-columns:1fr}.project-choice>span{min-height:64px}.today-block{grid-template-columns:26px 46px minmax(0,1fr)}.today-block>.start-block-button,.today-complete-word{grid-column:3;width:100%;min-height:44px}.today-replan-review>div:last-child{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Calm interface refresh — August 2026 */
:root{
  --canvas:#f5f2eb;
  --surface:#fffdf8;
  --surface-muted:#efeee7;
  --focus:#2d6660;
  --shadow-soft:0 14px 40px rgba(32,45,40,.055);
}
html{scroll-behavior:smooth}
body{background:var(--canvas);color:var(--ink);font-size:15px;line-height:1.5}
body:before{display:none}
button,input,select,textarea{font-size:14px}
button,a,input,select,textarea,summary{accent-color:var(--accent,var(--deep))}
button:not(.text-button):not(.danger-link),select,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]){min-height:44px}
textarea{min-height:88px}
small{font-size:12px!important;line-height:1.4}
.eyebrow{font-size:11px!important;line-height:1.2;letter-spacing:.13em;margin-bottom:9px}
.muted,.page-title>div>p:last-child,.hero p:not(.eyebrow){font-size:14px;line-height:1.5}
:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid color-mix(in srgb,var(--focus) 60%,white);outline-offset:3px}
:where(button,a,summary){-webkit-tap-highlight-color:transparent}
button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.55}

.topbar{height:72px;padding:0 26px;background:color-mix(in srgb,var(--surface) 94%,transparent);border-color:color-mix(in srgb,var(--line) 72%,transparent)}
.brand{min-height:48px;border-radius:10px;padding:3px 6px}
.brand-mark{width:38px;height:38px;background:var(--deep)}
.brand strong{font:650 16px/1.2 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.brand small{max-width:250px;color:var(--muted)}
.audition-tools select{min-width:180px;max-width:260px;background:var(--surface);border-color:var(--line)}
.save-state{font-size:12px}
.account-button{min-width:44px;min-height:44px}
.content{max-width:1120px;padding:44px 42px 96px}
section{margin-top:34px}
.page-title{align-items:flex-end;margin-bottom:30px}
.page-title h1,.hero h1{font-size:clamp(34px,4vw,46px);line-height:1.08;margin-bottom:10px}
.page-title>div>p:last-child{margin:0;max-width:590px}
.page-actions{display:flex;gap:8px;align-items:center}
.section-heading{align-items:center;margin-bottom:16px}
.section-heading h2,.paper-card h2{font-size:27px}
.primary-button,.secondary-button{border-radius:10px;padding:10px 16px;font-size:14px;box-shadow:none}
.primary-button{background:var(--deep);border-color:var(--deep)}
.primary-button:hover{background:color-mix(in srgb,var(--deep) 90%,black)}
.secondary-button{background:var(--surface);border-color:color-mix(in srgb,var(--deep) 36%,var(--line))}
.text-button,.danger-link{min-height:44px;padding:8px 4px;font-size:13px;display:inline-flex;align-items:center;justify-content:center}

/* Five-destination shell */
@media(min-width:901px){
  .app-shell{display:grid;grid-template-columns:210px minmax(0,1fr);grid-template-rows:72px minmax(calc(100vh - 72px),auto);padding:0}
  .topbar{grid-column:1/-1;grid-row:1;position:sticky;top:0}
  .main-nav{grid-column:1;grid-row:2;position:sticky;top:72px;height:calc(100vh - 72px);align-self:start;display:flex;flex-direction:column;align-items:stretch;gap:5px;padding:28px 14px;background:color-mix(in srgb,var(--surface) 76%,var(--canvas));border:0;border-right:1px solid var(--line);overflow:visible;backdrop-filter:none}
  .main-nav button{height:48px;flex:0 0 48px;width:100%;padding:0 15px;border-radius:10px;text-align:left;color:var(--muted);font-size:14px}
  .main-nav button.active{background:color-mix(in srgb,var(--accent,var(--deep)) 9%,var(--surface));color:var(--deep);font-weight:780}
  .main-nav button.active:after{left:0;right:auto;top:12px;bottom:12px;width:3px;height:auto;border-radius:4px;background:var(--accent,var(--deep))}
  .content{grid-column:2;grid-row:2;width:100%}
}

/* Calm Today hierarchy */
.today-hero{min-height:0;padding:4px 0 26px;background:transparent;color:var(--ink);border-radius:0;border-bottom:1px solid var(--line);overflow:visible}
.today-hero:after{display:none}
.today-hero .eyebrow{color:var(--teal)!important}
.today-hero h1{color:var(--deep);max-width:720px}
.today-hero p:not(.eyebrow){color:var(--muted);font-size:14px}
.today-hero .countdown{width:auto;height:auto;min-width:0;flex-direction:row;gap:7px;padding:9px 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink)}
.today-hero .countdown strong{font:750 15px/1 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.today-hero .countdown span{margin:0;color:var(--muted);font-size:12px}
.setup-callout{margin-top:16px;min-height:64px;padding:13px 16px;border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 22%,var(--line));background:color-mix(in srgb,var(--accent,var(--deep)) 7%,var(--surface))}
.setup-callout>span{width:32px;height:32px}
.today-command-grid{grid-template-columns:minmax(0,1fr) 248px;gap:16px;margin-top:20px}
.today-plan-card{border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-soft)}
.today-plan-header{padding:23px 25px 18px;gap:22px}
.today-plan-header h2{font-size:28px}
.today-plan-header>div>p:last-child{font-size:13px;margin-top:5px}
.today-progress{width:180px}
.today-progress strong{font-size:22px}
.today-progress span{font-size:12px}
.today-time-form{display:block;padding:0;border-color:var(--line);background:color-mix(in srgb,var(--accent,var(--deep)) 5%,var(--surface))}
.today-plan-settings>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:0 25px;list-style:none;cursor:pointer;color:var(--deep);font-size:13px;font-weight:800}
.today-plan-settings>summary::-webkit-details-marker{display:none}
.today-plan-settings>summary small{color:var(--muted);font-size:12px;font-weight:600}
.today-plan-settings-body{display:grid;gap:12px;padding:12px 25px 16px;border-top:1px solid var(--line)}
.today-project-scope>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:44px;list-style:none;cursor:pointer;color:var(--deep);font-size:13px;font-weight:750}
.today-project-scope>summary::-webkit-details-marker{display:none}
.today-project-scope>summary small{color:var(--muted);font-size:12px;font-weight:500}
.today-project-scope>summary small{min-width:0;max-width:65%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}
.today-project-scope[open]>summary{margin-bottom:10px}
.project-choice-list{gap:7px}
.project-choice>span{min-height:55px;padding:9px 10px;border-radius:9px}
.project-choice b{font-size:13px}
.project-choice small{font-size:11px!important}
.project-choice em{font-size:10px}
.today-start-row{display:flex;align-items:end;justify-content:space-between;gap:16px;padding-top:3px}
.today-start-row>label{display:flex;align-items:center;gap:12px;color:var(--deep);font-size:13px;font-weight:750}
.today-start-row>label>span:first-child{white-space:nowrap}
.minute-input{display:flex;align-items:center;gap:7px}
.minute-input input{width:78px!important;margin:0!important;padding:8px!important}
.today-options{border-top:1px solid color-mix(in srgb,var(--line) 75%,transparent);padding-top:3px}
.today-options>summary{width:max-content;min-height:44px;display:flex;align-items:center;color:var(--teal);font-size:13px;font-weight:750;cursor:pointer}
.today-options[open]>summary{margin-bottom:11px}
.today-input-grid{grid-template-columns:1fr 1fr!important}
.capacity-options span{min-height:54px}
.today-next-block{padding:0 25px}
.today-next-block:empty{display:none}
.today-block{grid-template-columns:30px 48px minmax(0,1fr) auto;padding:20px 0;gap:13px}
.today-block-copy h3{font-size:21px;margin:5px 0 3px}
.today-block-copy>p{font-size:13px;max-width:650px}
.today-block-details{grid-column:3;min-width:0}
.today-block-labels>span{font-size:10px}
.today-block-time strong{font-size:22px}
.today-block-time span{font-size:10px}
.start-block-button{min-height:46px;border:0;border-radius:10px;background:var(--accent,var(--deep));color:white;padding:0 16px;font-weight:800;white-space:nowrap}
.decision-details,.practice-guide-details{margin-top:4px}
.decision-details>summary,.practice-guide-details>summary{display:inline-flex;align-items:center;min-height:44px;color:var(--teal);font-size:12px;font-weight:750;cursor:pointer}
.today-reminder-actions button{min-width:44px}
.decision-details[open],.practice-guide-details[open]{padding:9px 11px;border-radius:9px;background:var(--surface-muted)}
.decision-reasons span,.decision-details>small,.practice-guide-details strong,.practice-guide-details span,.practice-guide-details small{font-size:12px!important;line-height:1.45}
.practice-guide-details strong,.practice-guide-details span,.practice-guide-details small{display:block;margin-top:4px}
.today-full-schedule{border-top:1px solid var(--line)}
.today-full-schedule>summary{display:flex;justify-content:space-between;align-items:center;min-height:50px;padding:0 25px;color:var(--deep);font-weight:750;cursor:pointer}
.today-full-schedule>summary small{color:var(--muted)}
.today-agenda{padding:0 25px}
.today-plan-footer{padding:12px 25px;background:var(--surface-muted)}
.today-plan-footer span{font-size:10px}
.today-compass{position:static;padding:0;background:transparent;border:0;box-shadow:none}
.today-compass>details{border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 78%,var(--canvas));overflow:hidden}
.today-compass>details>summary{min-height:52px;display:flex;align-items:center;padding:0 16px;color:var(--deep);font-weight:780;cursor:pointer}
.today-compass>details[open]>summary{border-bottom:1px solid var(--line)}
.today-compass>details>div{padding:0 16px 17px}
.today-audition-snapshot{margin-top:6px}
.today-attention-cue blockquote{font-size:18px}
.today-reminders{margin:16px 0!important}
.weekly-prompt{padding:18px 20px}
.weekly-prompt h2{font-size:23px}
.weekly-prompt p{font-size:13px}
.surface-disclosure{margin-top:22px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 72%,var(--canvas));overflow:hidden}
.surface-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:58px;padding:0 19px;color:var(--deep);font-weight:780;cursor:pointer}
.surface-disclosure>summary small{color:var(--muted);font-weight:500;text-align:right}
.surface-disclosure[open]>summary{border-bottom:1px solid var(--line)}
.surface-disclosure>section,.surface-disclosure>div:not(.section-heading){margin-top:0}
.today-more>section{padding:0 20px 20px}
.today-more .today-quick-section{margin-top:0;padding-top:18px}

/* Projects and progressive disclosure */
.audition-section{margin-top:28px}
.audition-library{gap:12px}
.audition-card{min-height:0;padding:20px;border-color:var(--line);box-shadow:none;position:relative;overflow:visible}
.audition-card:before{content:"";position:absolute;left:-1px;top:18px;bottom:18px;width:4px;border-radius:4px;background:var(--card-accent,var(--accent,var(--deep)))}
.audition-card.current{border-color:color-mix(in srgb,var(--card-accent,var(--accent)) 40%,var(--line));box-shadow:0 0 0 2px color-mix(in srgb,var(--card-accent,var(--accent)) 10%,transparent)}
.audition-card h3{font-size:23px;margin:14px 0 3px}
.audition-subtitle{font-size:13px}
.audition-facts{margin:17px 0}
.audition-facts span{font-size:10px}
.audition-card-actions{align-items:center}
.audition-card-actions .open{min-height:44px}
.card-menu{position:relative}
.card-menu>summary{display:grid;place-items:center;width:44px;height:44px;border-radius:10px;cursor:pointer;list-style:none}
.card-menu>summary::-webkit-details-marker{display:none}
.card-menu>div{right:0;top:48px;z-index:8;min-width:170px;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-soft);padding:5px}
.completed-projects{margin-top:32px}

/* Content lists */
.repertoire-card{display:grid;grid-template-columns:minmax(0,1fr) 90px;align-items:start;gap:18px;padding:20px;background:var(--surface);box-shadow:none}
.rep-main h3{font-size:23px;margin:9px 0 2px}
.rep-main>p{font-size:13px}
.rep-badges{display:flex;gap:6px;flex-wrap:wrap}
.priority,.shared-badge,.ready-label{font-size:10px!important}
.music-signal-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.music-signal-row span{padding:4px 8px;border-radius:999px;background:var(--surface-muted);font-size:11px;color:var(--muted)}
.next-action-preview{margin-top:10px!important;color:var(--deep)!important;font-size:14px!important}
.repertoire-details{align-self:start}
.repertoire-details>summary,.session-details>summary,.mock-record-details>summary{display:flex;align-items:center;justify-content:center;min-height:44px;color:var(--teal);font-size:13px;font-weight:750;cursor:pointer}
.repertoire-detail-body{grid-column:1/-1;border-top:1px solid var(--line);margin-top:12px;padding-top:16px}
.repertoire-details[open]{grid-column:1/-1;width:100%}
.timeline{max-width:920px}
.timeline-card{padding:20px;background:var(--surface);box-shadow:none}
.timeline-top h3{font-size:21px}
.quote{font-size:16px;line-height:1.45;margin:12px 0}
.session-details>summary{justify-content:flex-start}
.session-details dl{margin-top:0}
.session-details dt{font-size:11px}
.progress-overview,.recording-overview,.recital-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.progress-overview>article,.recording-overview>article,.recital-overview>article{min-height:110px;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:none}
.progress-overview span,.recording-overview span,.recital-overview span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}
.progress-overview strong,.recording-overview strong,.recital-overview strong{display:block;font:400 23px/1.2 Georgia,serif;margin:7px 0 4px}
.progress-links{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:18px}
.progress-links button{min-height:86px;padding:14px;text-align:left;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink)}
.progress-links span,.progress-links strong{display:block}
.progress-links span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.progress-links strong{font-size:14px;margin-top:5px}
.progress-recent{margin-top:34px}
.progress-session{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-top:1px solid var(--line)}
.progress-session strong,.progress-session span{display:block}
.progress-session strong{font-size:16px;margin-top:3px}
.progress-session span,.progress-session>small{color:var(--muted);font-size:12px}
.progress-session p{margin:5px 0 0;font-size:14px}

/* Editable plans remain powerful, but open one item at a time */
.recording-workspace,.recital-workspace{padding:0!important;background:var(--surface)}
.recording-workspace>.section-heading,.recital-workspace>.section-heading{padding:14px 18px;margin:0}
.recording-workspace>.recording-session-list,.recording-workspace>.recording-group-list,.recital-workspace>.recital-program-list,.recital-workspace>.recital-event-list{padding:0 18px 18px}
.recording-workspace>.recording-requirement-grid,.recording-workspace>.recording-preflight,.recording-workspace>.submission-grid,.recording-workspace>.recording-confirmation,.recording-workspace>.recording-submit-actions{margin-left:18px;margin-right:18px}
.recording-workspace>.recording-submit-actions{margin-bottom:18px}
.item-disclosure{border:1px solid var(--line);border-radius:11px;background:var(--surface);padding:0!important;overflow:visible}
.item-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:68px;padding:11px 15px;cursor:pointer;list-style:none}
.item-disclosure>summary::-webkit-details-marker{display:none}
.item-disclosure>summary>div span,.item-disclosure>summary>div strong,.item-disclosure>summary>div small{display:block}
.item-disclosure>summary>div span{font-size:10px;letter-spacing:.1em;color:var(--muted);font-weight:850}
.item-disclosure>summary>div strong{font:400 18px/1.25 Georgia,serif;margin-top:3px}
.item-disclosure>summary>div small{color:var(--muted);margin-top:3px}
.item-disclosure>summary>small{color:var(--muted);text-align:right}
.item-disclosure[open]>summary{border-bottom:1px solid var(--line);background:var(--surface-muted)}
.item-disclosure-body{display:grid;gap:14px;padding:16px}
.item-disclosure-body label,.recording-requirement-grid label,.submission-grid label{font-size:13px!important}
.item-disclosure-body input,.item-disclosure-body select,.item-disclosure-body textarea,.recording-requirement-grid input,.recording-requirement-grid select,.recording-requirement-grid textarea{font-size:14px!important;padding:10px!important}
.item-disclosure-actions{display:flex;justify-content:flex-end;border-top:1px solid var(--line);padding-top:8px}
.status-chip{align-self:center;border-radius:999px;background:var(--surface-muted);padding:5px 9px;font-size:11px;color:var(--muted);font-weight:750}
.status-chip.complete{background:#dfece4;color:#356a57}
.status-chip.cancelled{background:#eee9e4;color:#755d54}
.recital-event-card>summary+div{margin:0}
.recital-event-card>summary>div>span{font-size:10px}
.recital-event-card>summary>div>strong{font-size:18px}
.recital-program-row label,.recital-event-card label,.recording-session-card label,.recording-group-card label{font-size:13px!important}
.recital-program-row label>span,.recital-program-copy small,.recital-program-copy span,.recital-event-music>p,.recital-event-music small{font-size:11px!important}
.recital-program-row input,.recital-program-row select,.recital-event-card input,.recital-event-card select,.recital-event-card textarea{font-size:14px!important}

/* Calendar */
.calendar-summary{display:none}
.calendar-workspace{margin-top:18px;border-radius:14px;box-shadow:none;background:var(--surface)}
.calendar-toolbar{padding:13px 14px}
.calendar-nav{gap:6px}
.calendar-nav button{min-width:44px}
.calendar-nav h2{font-size:21px;margin-left:8px}
.calendar-filter-disclosure{position:relative}
.calendar-filter-disclosure>summary{display:flex;align-items:center;min-height:44px;padding:0 10px;color:var(--teal);font-size:13px;font-weight:750;cursor:pointer}
.calendar-filter-disclosure[open] .calendar-filters{position:absolute;right:0;top:47px;z-index:7;min-width:280px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow-soft)}
.calendar-grid-scroll{overflow-x:auto;overscroll-behavior-inline:contain;border-radius:10px}
.calendar-grid-scroll:focus-visible{outline:3px solid color-mix(in srgb,var(--focus) 60%,white);outline-offset:3px}
.calendar-weekdays span{font-size:11px}
.calendar-day{min-height:104px}
.calendar-day-number time{font:400 13px Georgia,serif}
.calendar-day.today .calendar-day-number time{width:25px;height:25px;display:grid;place-items:center;background:var(--accent,var(--deep));color:white;border-radius:50%;font-size:12px}
.calendar-chip{min-height:44px!important;font-size:11px!important;line-height:1.25}

/* More, dialogs, and forms */
.modal-backdrop{padding:24px;background:rgba(21,35,31,.58)}
.modal{border-radius:18px;padding:30px;box-shadow:0 28px 90px rgba(17,27,24,.27)}
.modal-close{width:44px;height:44px;right:12px;top:10px}
.modal h2{font-size:32px;line-height:1.15;margin-right:46px}
.modal-intro{font-size:14px;max-width:640px;margin-bottom:20px}
.form-stack label,.guided-step label,.listener-form>label,.field-label{font-size:13px!important}
.form-stack input,.form-stack textarea,.form-stack select,.guided-step input,.guided-step textarea,.guided-step select,.listener-form input,.listener-form textarea,.field-label input,.field-label textarea,.field-label select{font-size:14px;padding:11px}
.listener-form .rating-key{display:flex;justify-content:space-between;gap:16px;margin:0 0 6px;color:var(--muted);font-size:12px}
.more-panel{width:min(680px,100%)}
.more-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px}
.more-groups>section{margin:0;min-width:0}
.more-groups h3{margin:0 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.help-list{border-top:1px solid var(--line)}
.help-list button,.help-list .import-button{min-height:49px;padding:11px 3px;display:flex;align-items:center;font-size:13px}
.help-list button:hover,.help-list .import-button:hover{color:var(--teal)}
.toast{max-width:min(520px,calc(100vw - 28px));bottom:26px;padding:12px 17px;border-radius:10px;font-size:14px;text-align:center}

/* Sign in */
.login-page{background:var(--canvas)}
.login-shell{max-width:1000px;min-height:100vh;padding:32px 36px 28px;display:flex;flex-direction:column;margin:auto}
.login-brand{min-height:46px}
.login-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:72px;align-items:center;flex:1;padding:64px 0}
.login-intro h1{font-size:clamp(42px,6vw,68px);line-height:1.03;max-width:650px;margin:12px 0 19px}
.login-intro>p:last-child{font-size:17px;line-height:1.55;max-width:520px;color:var(--muted)}
.sign-in-card{padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow-soft)}
.sign-in-card h2{font-size:29px;margin:0 0 6px}
.sign-in-card>p{font-size:14px;margin:0 0 20px;color:var(--muted)}
.sign-in-button{min-height:52px;border-radius:11px}
.remember-row{min-height:54px;margin-top:13px;padding:10px 2px}
.remember-row input{width:20px;height:20px}
.remember-row small{margin-top:2px;color:var(--muted)}
.login-footer{font-size:12px;color:var(--muted)}

/* Tablet and phone */
@media(max-width:1040px) and (min-width:901px){
  .app-shell{grid-template-columns:184px minmax(0,1fr)}
  .content{padding-left:30px;padding-right:30px}
  .today-command-grid{grid-template-columns:1fr}
  .today-compass>details>div{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .today-attention-cue{border-top:0;border-left:1px solid var(--line);margin:0;padding:0 0 0 20px}
  .progress-links{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
  .app-shell{display:block;padding-bottom:76px}
  .main-nav{display:none}
  .mobile-nav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:50;height:calc(66px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:color-mix(in srgb,var(--surface) 96%,transparent);border-top:1px solid var(--line);backdrop-filter:blur(16px)}
  .mobile-nav button{flex:1;height:66px;min-width:0;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:650}
  .mobile-nav button.active{color:var(--deep);font-weight:800}
  .mobile-nav button.active:before{content:"";position:absolute;left:30%;right:30%;top:0;height:3px;border-radius:0 0 3px 3px;background:var(--accent,var(--deep))}
  .content{padding:34px 26px 110px}
  .today-command-grid{grid-template-columns:1fr}
  .today-compass>details>div{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .today-attention-cue{border-top:0;border-left:1px solid var(--line);margin:0;padding:0 0 0 20px}
  .progress-links{grid-template-columns:1fr 1fr}
  .recording-overview,.recital-overview{grid-template-columns:1fr 1fr}
  .calendar-day{min-height:90px}
}
@media(max-width:700px){
  .topbar{height:64px;padding:0 14px;gap:8px}
  .brand{padding:0;gap:8px}
  .brand-mark{width:34px;height:34px}
  .brand strong{font-size:14px}
  .brand small,.save-state{display:none}
  .audition-tools{margin-left:auto}
  .audition-tools select{min-width:0;width:126px;max-width:126px;padding-left:9px;font-size:12px}
  .account-button{width:44px;padding:0}
  .account-button b{display:none}
  .content{padding:25px 16px 100px}
  section{margin-top:27px}
  .page-title{display:flex;align-items:flex-end;gap:16px;margin-bottom:24px}
  .page-title h1,.hero h1{font-size:34px}
  .page-title>div>p:last-child{font-size:13px}
  .page-actions{flex-wrap:wrap;justify-content:flex-end}
  .page-actions .primary-button,.page-actions .secondary-button{padding-left:12px;padding-right:12px}
  .today-hero{display:flex;padding:0 0 14px;gap:14px}
  .today-hero .countdown{display:none}
  .today-hero .eyebrow{margin-bottom:7px}
  .today-hero h1{font-size:30px;margin-bottom:0}
  .today-hero p:not(.eyebrow){display:none}
  .today-command-grid{margin-top:4px}
  .today-plan-header{display:block;padding:20px 17px 15px}
  .today-plan-header h2{font-size:25px}
  .today-progress{width:100%;margin-top:14px}
  .today-plan-card.has-plan .today-plan-header{padding:8px 17px}
  .today-plan-card.has-plan .today-plan-header>div:first-child{display:none}
  .today-plan-card.has-plan .today-progress{margin-top:0}
  .today-time-form{padding:0}
  .today-plan-settings>summary{min-height:48px;padding:0 17px}
  .today-plan-settings-body{padding:6px 17px 10px}
  .today-project-scope,.today-start-row,.today-options{min-width:0;width:100%}
  .project-choice-list,.session-project-scope .project-choice-list{grid-template-columns:1fr}
  .today-start-row{align-items:stretch;display:grid;grid-template-columns:1fr}
  .today-start-row>label{justify-content:space-between}
  .today-start-row .primary-button{width:100%}
  .today-plan-card.has-plan .today-start-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .today-plan-card.has-plan .today-start-row .primary-button{width:auto;background:transparent;color:var(--deep);padding-left:12px;padding-right:12px}
  .today-input-grid{grid-template-columns:1fr!important}
  .today-next-block{padding:0 17px}
  .today-block{grid-template-columns:26px 44px minmax(0,1fr);padding:12px 0}
  .today-block>.start-block-button,.today-complete-word{grid-column:3;width:100%;margin-top:4px}
  .today-block-copy h3{font-size:19px}
  .today-plan-footer,.today-full-schedule>summary{padding-left:17px;padding-right:17px}
  .today-agenda{padding:0 17px}
  .today-compass>details>div{display:block}
  .today-attention-cue{border-left:0;border-top:1px solid var(--line);margin-top:17px;padding:17px 0 0}
  .surface-disclosure>summary{align-items:flex-start;min-height:62px;padding:12px 15px;flex-direction:column;justify-content:center;gap:2px}
  .surface-disclosure>summary small{text-align:left}
  .audition-library{grid-template-columns:1fr}
  .repertoire-card{grid-template-columns:1fr auto;padding:17px}
  .progress-overview,.recording-overview,.recital-overview{grid-template-columns:1fr}
  .progress-overview>article,.recording-overview>article,.recital-overview>article{min-height:0}
  .progress-links{grid-template-columns:1fr 1fr}
  .progress-session{display:block}
  .progress-session>small{display:block;margin-top:9px}
  .timeline article{grid-template-columns:48px 1fr;gap:10px}
  .timeline article:not(:last-child):before{left:41px}
  .timeline-card:before{left:37px}
  .timeline-date strong{font-size:13px}
  .timeline-card{padding:16px}
  .calendar-page-title{display:flex}
  .calendar-workspace{overflow:hidden}
  .calendar-weekdays,.calendar-month-grid{min-width:620px}
  .calendar-day.today .calendar-day-number time{width:20px;height:20px;font-size:10px}
  .calendar-agenda-copy>div span,.calendar-agenda-copy>div time,.calendar-agenda-copy small,.calendar-agenda-date span{font-size:12px}
  .calendar-agenda-actions button{min-height:44px;padding:9px 12px;font-size:12px}
  .listener-form .rating{grid-template-columns:repeat(5,minmax(44px,1fr));gap:6px}
  .listener-form .rating>span{grid-column:1/-1;font-size:13px;font-weight:750}
  .listener-form .rating label{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:8px;font-size:12px}
  .listener-form .rating input{margin:0 0 3px}
  .calendar-filter-disclosure[open] .calendar-filters{position:fixed;left:16px;right:16px;top:auto;bottom:84px;min-width:0}
  .more-groups{grid-template-columns:1fr;gap:20px}
  .modal-backdrop{align-items:end;padding:0}
  .modal{width:100%!important;max-height:92vh;border-radius:20px 20px 0 0;padding:26px 20px calc(22px + env(safe-area-inset-bottom))}
  .modal h2{font-size:29px}
  .form-actions{flex-wrap:wrap}
  .form-actions .primary-button,.form-actions .secondary-button{flex:1}
  .login-shell{padding:22px 20px}
  .login-layout{grid-template-columns:1fr;gap:30px;padding:42px 0}
  .login-intro h1{font-size:43px}
  .login-intro>p:last-child{font-size:15px}
  .sign-in-card{padding:22px}
}
@media(max-width:390px){
  .audition-tools{display:none}
  .content{padding:16px 13px 100px}
  .page-title{display:block}
  .page-title .page-actions,.page-title>button{margin-top:14px}
  .progress-links{grid-template-columns:1fr}
  .today-block{grid-template-columns:25px 40px minmax(0,1fr)}
  .today-block-labels>span{font-size:9px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
@media print{
  details>summary{display:none!important}
  details>*{display:block!important}
  .content{max-width:none;padding:0}
  .surface-disclosure,.item-disclosure{border:0;overflow:visible}
  body:has(#modal-listener:not(.hidden)) .content,body:has(#modal-listener:not(.hidden)) .mobile-nav{display:none!important}
  body:has(#modal-listener:not(.hidden)) #modal-listener{position:static!important;display:block!important;background:white!important;padding:0!important}
  body:has(#modal-listener:not(.hidden)) #modal-listener .modal{box-shadow:none!important;max-height:none!important;overflow:visible!important;width:100%!important;padding:0!important}
}

.skip-link{position:fixed;left:16px;top:10px;z-index:500;transform:translateY(-140%);border-radius:9px;background:var(--deep);color:white;padding:11px 15px;font-weight:800;text-decoration:none}
.skip-link:focus{transform:translateY(0)}
.view h1[tabindex="-1"]:focus{outline:none}
html.modal-open,html.modal-open body{overflow:hidden}
.modal{max-height:min(92vh,calc(100dvh - 40px))}
.import-button{position:relative}
.import-button input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;overflow:hidden!important;clip-path:inset(50%)!important}
.import-button:focus-visible{outline:3px solid color-mix(in srgb,var(--focus) 60%,white);outline-offset:3px;border-radius:6px}
.form-disclosure{border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden}
.form-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:54px;padding:0 15px;cursor:pointer;color:var(--deep);font-weight:800}
.form-disclosure>summary small{color:var(--muted);font-weight:500;text-align:right}
.form-disclosure[open]>summary{border-bottom:1px solid var(--line);background:var(--surface-muted)}
.form-disclosure-body{display:grid;gap:16px;padding:16px}
.form-disclosure-body>.form-section-label{margin:2px 0 -7px}
.form-disclosure .form-disclosure{background:color-mix(in srgb,var(--surface) 70%,var(--canvas))}
.form-disclosure .form-disclosure-body{padding:14px}
@media(max-width:700px){
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),select,textarea{font-size:16px!important}
  .modal{max-height:calc(100dvh - 12px)}
  .form-disclosure>summary{align-items:flex-start;min-height:60px;flex-direction:column;justify-content:center;gap:1px;padding:10px 13px}
  .form-disclosure>summary small{text-align:left}
}

/* Adaptive practice feedback */
.session-feedback-step{max-width:760px;margin-inline:auto}
.feedback-choice{border:0;margin:0 0 18px;padding:0;min-width:0}
.feedback-choice>legend{color:var(--deep);font:600 15px/1.35 Inter,ui-sans-serif,sans-serif;margin-bottom:9px;padding:0}
.feedback-choice>legend small{color:var(--muted);font-weight:500}
.feedback-option-grid{display:grid;gap:7px}
.feedback-option-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.feedback-option-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.feedback-option-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}
.feedback-option-grid label{display:block;position:relative;min-width:0}
.feedback-option-grid input{position:absolute;inset:0;opacity:0}
.feedback-option-grid span{display:grid;place-items:center;min-height:46px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--deep);font-size:12px;font-weight:750;line-height:1.25;padding:8px;text-align:center;cursor:pointer}
.feedback-option-grid input:checked+span{border-color:var(--accent,var(--deep));background:color-mix(in srgb,var(--accent,var(--deep)) 10%,var(--surface));box-shadow:inset 0 0 0 1px var(--accent,var(--deep))}
.feedback-option-grid input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--focus) 60%,white);outline-offset:2px}
.feedback-disabled{opacity:.42}
.feedback-disabled span{cursor:not-allowed}
.feedback-details{border-top:1px solid var(--line);margin-top:3px}
.feedback-details>summary,.personalization-controls>summary,.personalization-summary details>summary,.adaptive-weekly-review details>summary{display:flex;align-items:center;min-height:46px;color:var(--teal);font-size:13px;font-weight:780;cursor:pointer}
.feedback-details-body{display:grid;gap:16px;padding:8px 0 2px}
.feedback-scale{display:flex!important;justify-content:space-between;color:var(--muted);font-size:11px!important;margin-top:5px}
.feedback-details-body .check-row{min-height:44px;padding-block:7px}
.personalization-detail{display:grid;gap:7px;border-top:1px solid var(--line);margin-top:10px;padding-top:10px}
.personalization-detail>div{display:flex;align-items:center;justify-content:space-between;gap:12px}
.personalization-detail span{color:var(--deep);font-size:11px;font-weight:800}
.personalization-detail p,.personalization-detail small{color:var(--muted);font-size:11px!important;line-height:1.45;margin:0}
.personalization-detail .text-button{justify-self:start}
.personalization-sources{border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent);margin-top:2px}
.personalization-sources>summary{display:flex;align-items:center;min-height:44px;color:var(--teal);font-size:11px;font-weight:780;cursor:pointer}
.personalization-sources>span{display:block;color:var(--muted);font-size:11px;font-weight:600;padding:0 0 7px}
.personalized-today-label{border-color:color-mix(in srgb,var(--accent,var(--deep)) 34%,var(--line))!important;background:color-mix(in srgb,var(--accent,var(--deep)) 8%,var(--surface))!important;color:var(--deep)!important}

/* Calendar actions remain true touch targets even inside the compact month view. */
.calendar-chip,.calendar-agenda-actions button,.today-reminder-actions button{min-height:44px}
.calendar-agenda-actions button,.today-reminder-actions button{min-width:44px}

.adaptive-weekly-review{margin-top:18px!important;border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 26%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--accent,var(--deep)) 5%,var(--surface));padding:20px 22px}
.adaptive-weekly-review>header{display:flex;align-items:start;justify-content:space-between;gap:18px}
.adaptive-weekly-review h2{font:400 24px/1.2 Georgia,serif;margin:0}
.adaptive-weekly-review>p{color:var(--deep);font-size:14px;margin:11px 0 0}
.adaptive-reviewed{border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:10px;font-weight:800;padding:5px 9px}
.adaptive-insight-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}
.adaptive-insight-chips span{border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:10px;padding:6px 9px}
.adaptive-weekly-review details{border-top:1px solid color-mix(in srgb,var(--line) 75%,transparent);margin-top:13px}
.adaptive-weekly-review details>div{display:grid;gap:9px;padding-bottom:5px}
.adaptive-weekly-review details p{display:grid;gap:2px;margin:0}
.adaptive-weekly-review details strong{font-size:11px}
.adaptive-weekly-review details span{color:var(--muted);font-size:11px;line-height:1.45}
.adaptive-weekly-review>footer{display:flex;align-items:center;gap:12px;margin-top:15px}

.personalization-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}
.personalization-summary>div{border:1px solid var(--line);border-radius:11px;background:var(--surface-muted);padding:13px}
.personalization-summary span,.personalization-summary strong{display:block}
.personalization-summary span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:800}
.personalization-summary strong{font:400 18px Georgia,serif;margin-top:4px}
.personalization-summary>p,.personalization-summary details{grid-column:1/-1;margin:0}
.personalization-summary>p,.personalization-summary details p{color:var(--muted);font-size:12px;line-height:1.5}
.personalization-summary details{border-top:1px solid var(--line)}
.personalization-toggle{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:62px;border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:11px 14px}
.personalization-toggle strong,.personalization-toggle small{display:block}
.personalization-toggle strong{font-size:13px}
.personalization-toggle small{color:var(--muted);font-size:11px!important;margin-top:3px}
.personalization-toggle input{width:46px;height:26px;flex:0 0 auto}
.personalization-controls{border-top:1px solid var(--line);margin-top:16px}
.personalization-controls>div{display:grid;gap:8px;padding:5px 0 8px}
.personalization-controls button{justify-content:flex-start;width:100%;min-height:44px}
.personalization-controls p{color:var(--muted);font-size:11px;line-height:1.5;margin:5px 0 0}

/* Large, keyboard-visible completion targets */
.weekly-block{grid-template-columns:44px minmax(0,1fr) auto}
.block-check,.today-block-check{display:grid;place-items:center;width:44px;height:44px;cursor:pointer}
.block-check span{width:21px;height:21px}
.block-check input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--focus) 60%,white);outline-offset:3px}
.today-block{grid-template-columns:44px 48px minmax(0,1fr) auto}
.help-list button small{display:block;color:var(--muted);font-size:10px!important;font-weight:500;margin-top:2px}

@media(max-width:800px){
  .weekly-block{grid-template-columns:44px minmax(0,1fr)}
  .block-controls{grid-column:2}
  .adaptive-weekly-review>header{align-items:flex-start}
}
@media(max-width:520px){
  .feedback-option-grid.four{grid-template-columns:1fr 1fr}
  .availability-grid{grid-template-columns:1fr}
  .adaptive-weekly-review{padding:17px 16px}
  .adaptive-weekly-review>footer{align-items:stretch;display:grid}
  .adaptive-weekly-review>footer button{width:100%}
  .personalization-summary{grid-template-columns:1fr}
  .personalization-summary>p,.personalization-summary details{grid-column:1}
  .today-block{grid-template-columns:44px 40px minmax(0,1fr)}
}
@media(max-width:340px){
  .feedback-option-grid.three{grid-template-columns:1fr}
  .feedback-option-grid span{min-height:44px}
}

/* Recital planning 2.0 */
.recital-overview{grid-template-columns:repeat(4,1fr)}
.recital-overview article[class^="forecast-"]{border-top:3px solid var(--accent,var(--deep))}
.capacity-forecast{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(190px,.7fr);gap:18px;padding:18px}
.capacity-forecast>div{min-width:0}.capacity-forecast span,.capacity-bottlenecks span{display:block;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.capacity-forecast p{font:400 19px/1.45 Georgia,serif;margin:7px 0 0}.capacity-forecast strong{display:block;font:400 24px/1.2 Georgia,serif;margin:7px 0}.capacity-forecast small{color:var(--muted)}
.capacity-bottlenecks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 18px 18px}.capacity-bottlenecks article{border:1px solid var(--line);border-radius:10px;padding:13px;min-width:0}.capacity-bottlenecks strong,.capacity-bottlenecks small{display:block}.capacity-bottlenecks strong{margin:5px 0;font-size:14px}.capacity-bottlenecks small{color:var(--muted);line-height:1.4}.capacity-options{margin:0 18px 18px;padding:13px 13px 13px 30px;border-radius:10px;background:var(--pale);color:var(--muted);line-height:1.6}.scenario-planner{margin:0 18px 18px;border-top:1px solid var(--line);padding-top:12px}.scenario-planner>summary,.program-unit-tree>summary{display:flex;align-items:center;min-height:44px;cursor:pointer}.scenario-planner label{display:grid;grid-template-columns:1fr 130px;align-items:center;gap:6px 12px;margin-top:10px}.scenario-planner label small{grid-column:1/-1;color:var(--muted)}.scenario-planner input{min-height:44px}.scenario-result{display:grid;gap:3px;min-height:20px;margin-top:9px}.scenario-result span,.scenario-result small{color:var(--muted);line-height:1.4}.scenario-result strong{color:var(--deep)}
.recital-program-row{display:block!important;padding:0!important;overflow:hidden}.recital-program-row>summary{display:grid;grid-template-columns:34px minmax(180px,1fr) auto minmax(130px,auto);gap:12px;align-items:center;padding:15px;cursor:pointer;min-height:60px;list-style:none}.recital-program-row>summary::-webkit-details-marker{display:none}.program-order-number{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--pale);font-weight:800}.work-phase-chip{border:1px solid var(--line);border-radius:20px;padding:6px 9px;font-size:10px;font-weight:800}.work-bottleneck{color:var(--muted);font-size:11px;text-align:right}.recital-program-detail{border-top:1px solid var(--line);padding:17px;background:var(--surface)}
.recital-program-controls{display:grid;grid-template-columns:80px auto 150px 90px 160px;gap:10px;align-items:end}.program-move-buttons{display:flex;gap:5px}.program-move-buttons button{min-width:44px;min-height:44px;padding:8px}.program-readiness-fields{border:1px solid var(--line);border-radius:10px;margin:16px 0;padding:13px}.program-readiness-fields legend{padding:0 6px;font:400 16px Georgia,serif}.program-readiness-fields>div,.readiness-entry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.program-unit-tree{margin:15px 0}.program-unit-tree ol{display:grid;gap:6px;padding:8px 0 0;margin:0;list-style:none}.program-unit-tree li{display:grid;grid-template-columns:70px minmax(120px,.5fr) 1fr;gap:9px;align-items:baseline;border-bottom:1px solid var(--line);padding:8px 4px}.program-unit-tree li.nested-unit{margin-left:22px}.program-unit-tree li>span{color:var(--muted);font-size:9px;text-transform:uppercase}.program-unit-tree li>small{color:var(--muted)}
.program-section-row{display:block!important;border:1px solid var(--line);border-radius:10px;padding:0!important;overflow:hidden}.program-section-row>summary{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:48px;padding:10px 12px;cursor:pointer}.program-section-row>summary small{color:var(--muted)}.program-section-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;border-top:1px solid var(--line);padding:12px}.program-section-grid label{min-width:0}.program-section-grid label>span{display:block;font-size:9px;color:var(--muted);margin-bottom:4px}.program-section-grid input,.program-section-grid select{width:100%;min-height:44px}.program-section-grid .section-wide{grid-column:span 2}.program-section-grid .row-remove{grid-column:1/-1;justify-self:end;min-height:44px}
.event-reflection{border-top:1px solid var(--line);margin-top:15px;padding-top:12px}.event-reflection>summary{font-weight:800;cursor:pointer;min-height:44px;display:flex;align-items:center}.event-reflection>p{color:var(--muted);margin:0 0 10px}.event-reflection>label{display:block;margin-top:10px}.event-unit-target{display:grid!important;margin-top:10px}.event-unit-target select{margin-top:5px}.recital-program-detail input:not([type="checkbox"]),.recital-program-detail select,.recital-program-detail button,.recital-event-card input:not([type="checkbox"]),.recital-event-card select,.recital-event-card button,.recital-save-actions button{min-height:44px}.recital-event-music .check-row,.recital-event-exact>div>label{min-height:44px}.recital-event-music>.recital-event-exact{display:block}.recital-event-exact>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.recital-event-exact.scope-disabled{opacity:.58}.recital-logistics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;padding:18px}.recital-logistics-grid label{font-weight:750}.recital-logistics-grid label:nth-last-child(-n+2){grid-column:span 2}.recital-logistics-grid input,.recital-logistics-grid textarea,.recital-logistics-grid select{width:100%;min-height:44px;margin-top:5px}.recital-logistics-grid textarea{min-height:90px}.milestone-date-edit input{width:135px;min-height:44px}.plan-conflict{display:grid;gap:3px;border-left:3px solid #9a5f48;padding:8px 10px!important;background:color-mix(in srgb,#9a5f48 6%,var(--paper))}.plan-conflict span{color:var(--muted)}
@media(max-width:650px){.recital-event-exact>div{grid-template-columns:1fr}}
.field-sheet-program,.field-sheet-logistics{border-top:1px solid var(--line);padding-top:20px}.field-sheet-program ol{list-style:none;margin:0;padding:0}.field-sheet-program li{display:grid;grid-template-columns:28px 1fr;gap:10px;border-bottom:1px solid var(--line);padding:9px 0}.field-sheet-program li>span{font-weight:800}.field-sheet-program strong,.field-sheet-program small{display:block}.field-sheet-program small,.field-sheet-program p{color:var(--muted);margin:3px 0 0}.field-sheet-program .field-intermission{display:block;background:var(--pale);border-radius:8px;padding:10px 12px;margin:7px 0}.field-sheet-logistics p{line-height:1.5}.field-sheet>header small{display:block;color:var(--muted);margin-top:4px}

@media(max-width:900px){.recital-overview{grid-template-columns:repeat(2,1fr)}.recital-program-row>summary{grid-template-columns:34px 1fr auto}.work-bottleneck{grid-column:2/-1;text-align:left}.recital-program-controls{grid-template-columns:80px auto 1fr 90px}.recital-program-controls label:last-child{grid-column:1/-1}.program-readiness-fields>div,.readiness-entry-grid{grid-template-columns:repeat(2,1fr)}.program-section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recital-logistics-grid{grid-template-columns:repeat(2,1fr)}.capacity-bottlenecks{grid-template-columns:1fr}}
@media(max-width:650px){.recital-overview{grid-template-columns:1fr}.capacity-forecast{grid-template-columns:1fr;padding:15px}.capacity-bottlenecks,.capacity-options,.scenario-planner{margin-left:15px;margin-right:15px;padding-left:0;padding-right:0}.capacity-options{padding-left:26px}.scenario-planner label{grid-template-columns:1fr}.recital-program-row>summary{grid-template-columns:30px minmax(0,1fr);align-items:start}.work-phase-chip{grid-column:2;justify-self:start}.work-bottleneck{grid-column:2}.recital-program-controls,.program-readiness-fields>div,.readiness-entry-grid,.program-section-grid,.recital-logistics-grid{grid-template-columns:1fr}.program-move-buttons,.recital-program-controls label:last-child,.program-section-grid .section-wide,.recital-logistics-grid label:nth-last-child(-n+2){grid-column:auto}.program-unit-tree li{grid-template-columns:1fr}.program-unit-tree li.nested-unit{margin-left:12px}.recital-workspace{overflow:hidden}.recital-page-title .page-actions{grid-template-columns:1fr 1fr}.recital-page-title .page-actions button{min-width:0}.recital-logistics-grid{padding:15px}.milestone-date-edit input{width:120px}}
@media(max-width:340px){.recital-page-title .page-actions{grid-template-columns:1fr}.recital-program-row>summary{padding:12px 10px}.recital-program-detail{padding:12px}.program-readiness-fields{padding:9px}.recital-workspace{padding:0!important}}
/* Unified Today workspace */
body[data-route="today"] .audition-tools{display:none!important}
body[data-route="today"] .save-state{margin-left:auto}
.today-command-grid{grid-template-columns:minmax(0,1fr);max-width:1040px;margin-left:auto;margin-right:auto}
.today-hero{max-width:1040px;margin-left:auto;margin-right:auto;align-items:flex-end}
.today-hero>div:first-child{min-width:0}
.today-project-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:11px}
.today-project-chip,.today-project-empty{display:inline-flex;align-items:center;gap:6px;max-width:190px;min-height:28px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:11px;font-weight:700;padding:4px 9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.today-project-chip i{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:var(--project-accent,var(--accent))}
.today-project-chip.overflow{color:var(--deep);font-weight:850}
.today-available{display:grid;justify-items:end;gap:2px;flex:0 0 auto;padding-bottom:2px}
.today-available strong{font:400 24px/1.1 Georgia,serif;color:var(--deep)}
.today-available span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.today-plan-card.has-plan .today-plan-header{justify-content:flex-end;padding:14px 25px}
.today-plan-card.has-plan .today-plan-header>div:first-child{display:none}
.today-plan-card.has-plan .today-progress{margin:0}
.today-block{grid-template-columns:64px minmax(0,1fr) auto!important;gap:16px!important;padding:22px 0!important}
.today-block-time{grid-column:1}
.today-block-copy{grid-column:2;min-width:0}
.today-block>.start-block-button,.today-block>.today-complete-word{grid-column:3;min-width:132px;min-height:48px;justify-self:end}
.today-block-details{grid-column:2/-1!important;display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap;min-width:0}
.today-block-details>details>summary{min-height:44px}
.today-block-manage>summary{display:flex;align-items:center;min-width:44px;min-height:44px;color:var(--teal);font-size:12px;font-weight:750;cursor:pointer}
.today-block-manage>div{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border-radius:9px;background:var(--surface-muted);padding:10px 12px}
.today-block-manage label{display:flex;align-items:center;gap:7px;min-height:44px;color:var(--muted);font-size:12px;font-weight:700}
.today-block-manage input[type="number"]{width:72px;min-height:44px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);padding:8px}
.today-block-labels .project-today-label{color:var(--muted)}
.today-agenda{display:grid;padding-bottom:4px}
.today-plan-card{overflow:visible}
.today-plan-footer{border-radius:0 0 17px 17px}
.today-agenda-row{position:relative;display:grid;grid-template-columns:44px 58px minmax(0,1fr) 44px;align-items:center;gap:10px;min-height:70px;border-bottom:1px solid var(--line);padding:8px 0}
.today-agenda-row:last-child{border-bottom:0}
.today-agenda-row.done{opacity:.58}
.today-agenda-row.done h3{text-decoration:line-through}
.today-agenda-row>time{color:var(--muted);font-size:11px;font-weight:800;text-align:center}
.today-agenda-row>div{min-width:0}
.today-agenda-row h3{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:400 16px/1.25 Georgia,serif;margin:0}
.today-agenda-row p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:11px;margin:4px 0 0}
.today-row-menu{position:relative;justify-self:end}
.today-row-menu[open]{z-index:40}
.today-row-menu>summary{display:grid;place-items:center;width:44px;height:44px;border-radius:8px;color:var(--muted);cursor:pointer;list-style:none;font-weight:850;letter-spacing:.08em}
.today-row-menu>summary::-webkit-details-marker{display:none}
.today-row-menu>summary:hover,.today-row-menu[open]>summary{background:var(--surface-muted);color:var(--deep)}
.today-row-menu>div{position:absolute;right:0;top:46px;z-index:25;display:grid;gap:7px;width:250px;border:1px solid var(--line);border-radius:11px;background:var(--surface);box-shadow:var(--shadow);padding:10px}
.today-agenda-row:last-child .today-row-menu>div{top:auto;bottom:46px}
.today-row-menu button,.today-row-menu label{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-height:44px;border:0;border-radius:8px;background:transparent;color:var(--deep);font-size:12px;font-weight:750;padding:8px 10px}
.today-row-menu button:hover{background:var(--surface-muted)}
.today-row-menu label span{flex:1}
.today-row-menu input[type="number"]{width:72px;min-height:40px;border:1px solid var(--line);border-radius:7px;background:var(--surface);padding:7px}
.today-row-menu .decision-details{border-top:1px solid var(--line);margin-top:2px}
.today-agenda-row .today-block-check{display:grid;place-items:center;width:44px;height:44px;cursor:pointer}
.today-conflicts{display:flex;align-items:center;justify-content:space-between;gap:18px;border-left:4px solid #9a5f48;background:color-mix(in srgb,#9a5f48 7%,var(--surface));padding:14px 25px}
.today-conflicts strong,.today-conflicts span,.today-conflicts small{display:block}
.today-conflicts strong{font-size:13px}
.today-conflicts span{color:var(--muted);font-size:11px;line-height:1.45;margin-top:3px}
.today-conflicts small{color:#8a4839;font-size:10px;margin-top:4px}
.today-conflicts button{flex:0 0 auto;min-height:44px}
.today-empty-state button{min-height:44px;margin-top:14px}
.today-reminders{max-width:1040px;margin-left:auto!important;margin-right:auto!important}
.today-more{max-width:1040px;margin-left:auto;margin-right:auto}
.today-more .today-quick-section{margin-top:0;padding:16px 19px 19px}
.weekly-prompt-actions #skip-weekly{min-width:44px;min-height:44px}
.planned-session-active .modal-intro{display:none}
.planned-session .session-project-scope,.planned-session .session-excerpt-field,.planned-session #session-section-field{display:none!important}
.session-active-block{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;border:1px solid color-mix(in srgb,var(--accent,var(--deep)) 28%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--accent,var(--deep)) 6%,var(--surface));margin:16px 0;padding:14px 16px}
.session-active-block>div:first-child{min-width:0}
.session-active-block>div:first-child span,.session-active-block>div:first-child strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.session-active-block>div:first-child span{color:var(--muted);font-size:10px;font-weight:750}
.session-active-block>div:first-child strong{font:400 20px/1.3 Georgia,serif;margin-top:3px}
.session-clock{min-width:72px;text-align:center}
.session-clock strong,.session-clock span{display:block}
.session-clock strong{font:400 24px/1 Georgia,serif;font-variant-numeric:tabular-nums}
.session-clock span{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.08em;margin-top:4px;text-transform:uppercase}
.session-clock-actions{display:flex;gap:7px}
.session-clock-actions button{min-width:88px;min-height:44px}
.today-project-overflow.tablet,.today-project-overflow.phone{display:none}
.passport-fields,.readiness-correction-entry,.passport-summary{border:0;border-radius:10px;background:var(--surface-muted);margin:6px 0;padding:0 14px}
.passport-fields>summary,.readiness-correction-entry>summary,.passport-summary>summary{align-items:center;cursor:pointer;display:flex;min-height:44px;color:var(--deep);font-size:12px;font-weight:800}
.passport-fields>summary small,.readiness-correction-entry>summary small{color:var(--muted);font-weight:500;margin-left:6px}
.passport-fields[open],.readiness-correction-entry[open],.passport-summary[open]{padding-bottom:14px}
.readiness-correction-entry>p{color:var(--muted);font-size:11px;margin:0 0 12px}
.duplicate-review{align-items:center;display:flex;justify-content:space-between;gap:18px;border-left:4px solid var(--accent,var(--deep));border-radius:8px;background:color-mix(in srgb,var(--accent,var(--deep)) 7%,var(--surface));padding:14px 16px}
.duplicate-review strong,.duplicate-review p{display:block;margin:0}.duplicate-review p{color:var(--muted);font-size:11px;line-height:1.45;margin-top:4px}.duplicate-review>div:last-child{display:flex;gap:8px;flex:0 0 auto}.duplicate-review button{min-height:44px}
.readiness-evidence{display:grid;gap:8px;border-radius:10px;background:color-mix(in srgb,var(--accent,var(--deep)) 6%,var(--surface));margin:12px 0;padding:13px 14px}
.readiness-evidence.needs-review{background:color-mix(in srgb,#9a5f48 8%,var(--surface))}
.readiness-evidence>div:first-child,.readiness-decision>div{align-items:center;display:flex;justify-content:space-between;gap:12px}.readiness-evidence span,.readiness-decision span{color:var(--deep);font-size:11px;font-weight:800}.readiness-evidence small,.readiness-decision small{color:var(--muted);font-size:10px}.readiness-evidence>p,.readiness-decision>p{color:var(--muted);font-size:11px;line-height:1.5;margin:0}
.readiness-evidence details>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--deep);font-size:11px;font-weight:800}.readiness-evidence-body{display:grid;gap:7px}.readiness-evidence-body>p{font-size:11px;margin:0}.readiness-evidence-body>span{font-size:11px;font-weight:500;line-height:1.45}.readiness-evidence-body .contradiction{color:#8a4839}.readiness-actions{display:flex;gap:8px;flex-wrap:wrap}.readiness-actions button{min-height:44px}
.readiness-decision{display:grid;gap:6px;border-top:1px solid var(--line);margin-top:10px;padding-top:10px}
.passport-summary span{display:block;color:var(--muted);font-size:11px;line-height:1.5}.passport-summary p{color:var(--muted);font-size:11px;line-height:1.5;margin:8px 0 0;white-space:pre-wrap}
.topbar{height:calc(72px + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px);padding-left:max(26px,env(safe-area-inset-left,0px));padding-right:max(26px,env(safe-area-inset-right,0px))}
.content{padding-left:max(42px,env(safe-area-inset-left,0px));padding-right:max(42px,env(safe-area-inset-right,0px));padding-bottom:max(96px,calc(80px + env(safe-area-inset-bottom,0px)))}

@media(max-width:1000px){.content{padding-left:max(26px,env(safe-area-inset-left,0px));padding-right:max(26px,env(safe-area-inset-right,0px))}}

@media(max-width:600px){
  .duplicate-review{align-items:stretch;display:grid}.duplicate-review>div:last-child{display:grid;grid-template-columns:1fr 1fr}.duplicate-review button{width:100%}
  .today-hero{align-items:flex-start;padding-top:0;padding-bottom:12px}
  .today-project-chips{flex-wrap:nowrap;max-width:calc(100vw - 118px);overflow:hidden}
  .today-project-chip{max-width:120px;flex:0 1 auto}
  .today-project-chip.project-chip-3{display:none}
  .today-project-overflow.desktop{display:none}
  .today-project-overflow.tablet{display:flex;flex:0 0 auto}
  .today-available strong{font-size:20px}
  .today-plan-card.has-plan .today-plan-header{padding:10px 17px}
  .today-block{grid-template-columns:52px minmax(0,1fr)!important;padding:16px 0!important}
  .today-block-copy{grid-column:2}
  .today-block>.start-block-button,.today-block>.today-complete-word{grid-column:1/-1;width:100%;justify-self:stretch;margin-top:2px}
  .today-block-details{grid-column:1/-1!important;gap:10px}
  .today-block-manage>div{align-items:stretch;display:grid;grid-template-columns:1fr 1fr}
  .today-block-manage>div label:last-child{grid-column:1/-1}
  .today-agenda-row{grid-template-columns:44px 40px minmax(0,1fr) 44px;gap:6px}
  .today-agenda-row>time{font-size:10px}
  .today-row-menu>div{width:min(250px,calc(100vw - 54px))}
  .today-conflicts{align-items:flex-start;display:grid;padding:13px 17px}
  .today-conflicts button{justify-self:start}
  .session-active-block{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px}
  .session-clock-actions{grid-column:1/-1}
  .session-clock-actions button{flex:1}
}

@media(max-width:340px){
  .today-hero{display:grid;grid-template-columns:1fr;gap:10px}
  .today-hero>div:first-child{width:100%}
  .today-project-chips{max-width:100%}
  .today-project-chip.project-chip-2{display:none}
  .today-project-overflow.tablet{display:none}
  .today-project-overflow.phone{display:flex;flex:0 0 auto}
  .today-available{display:flex;align-items:baseline;justify-items:start;gap:6px;padding-bottom:0}
  .today-available strong{font-size:18px}
  .today-agenda-row{grid-template-columns:44px 34px minmax(0,1fr) 44px;gap:4px}
}

@media(max-width:700px){
  .topbar{height:calc(64px + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px);padding-left:max(14px,env(safe-area-inset-left,0px));padding-right:max(14px,env(safe-area-inset-right,0px))}
  .content{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-bottom:max(100px,calc(84px + env(safe-area-inset-bottom,0px)))}
}

@media print{body:has(#view-audition.active) .field-sheet-program li,body:has(#view-audition.active) .field-sheet-logistics{break-inside:avoid}.field-sheet-program,.field-sheet-logistics{display:block!important}}

.recovery-actions{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:17px}
.connection-state.warning{border-left:4px solid #9a5f48;background:color-mix(in srgb,#9a5f48 7%,var(--paper))}
.connection-state.warning>span{color:#7f4736}

/* One frozen practice contract is the whole active-session surface. */
.planned-session-active #session-form>.progress,.planned-session-active #session-form>.modal-step,.planned-session-active #session-form>.form-actions,.planned-session-active #session-phase-brief{display:none!important}
.session-active-block{grid-template-columns:1fr;align-items:stretch;gap:18px;padding:18px}
.session-active-block>header{display:flex;align-items:center;justify-content:space-between;gap:18px}
.session-active-block>header>div:first-child{min-width:0}
.session-active-block>header>div:first-child span,.session-active-block>header>div:first-child strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.session-active-block>header>div:first-child span{color:var(--muted);font-size:10px;font-weight:750}
.session-active-block>header>div:first-child strong{font:400 20px/1.3 Georgia,serif;margin-top:3px}
.session-current-step{display:grid;gap:9px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}
.session-current-step>span{color:var(--accent,var(--deep));font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.session-current-step h3{font:400 clamp(21px,3vw,30px)/1.35 Georgia,serif;margin:0;max-width:32ch}
.session-current-step>p{color:var(--muted);font-size:12px;line-height:1.55;margin:0;max-width:68ch}
.session-current-step>p b{color:var(--deep)}
.session-current-step details{max-width:68ch}
.session-current-step summary{display:flex;align-items:center;min-height:44px;color:var(--teal);cursor:pointer;font-size:12px;font-weight:750}
.session-current-step ol,.practice-guide-details ol{display:grid;gap:8px;color:var(--muted);font-size:12px;line-height:1.5;margin:4px 0 8px;padding-left:20px}
.session-current-step li.current{color:var(--deep);font-weight:750}
.session-current-step li.complete{color:var(--muted);text-decoration:line-through;text-decoration-thickness:1px}
.session-clock-actions{display:flex;justify-content:flex-end;gap:9px}
.practice-guide-details>strong{color:var(--deep);margin-top:9px}

@media(max-width:600px){
  .session-active-block{grid-template-columns:1fr;gap:14px;padding:14px}
  .session-active-block>header{align-items:flex-start}
  .session-active-block>header>div:first-child strong{white-space:normal}
  .session-clock-actions{grid-column:auto;flex-wrap:wrap}
  .session-clock-actions button{flex:1 1 calc(50% - 5px)}
  .session-current-step h3{font-size:22px}
}

/* Keep Today restrained without hiding its structure from assistive technology. */
.today-plan-card.has-plan .today-plan-header>div:first-child{display:block!important;position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.today-agenda-row .today-block-check{cursor:default}
.today-block-copy h3,.session-current-step h3{overflow-wrap:anywhere}
.start-block-button{border-color:var(--deep);background:var(--deep)}
.modal-backdrop{padding-top:max(24px,env(safe-area-inset-top,0px))}
