:root{--ink:#1b1918;--ink-soft:#4a4542;--muted:#7d756f;--gold:#b08d57;--gold-deep:#8f6f3f;--gold-tint:#f4ecdf;--cream:#faf7f2;--paper:#fff;--blush:#f6ece8;--line:#e9e1d6;--ok:#4f7a5a;--ok-tint:#e8f1ea;--danger:#a23b3b;--danger-tint:#fbeaea;--radius:14px;--radius-sm:10px;--shadow:0 1px 2px #1b19180a, 0 8px 24px #1b19180f;--serif:"Cormorant Garamond", Georgia, "Times New Roman", serif;--sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body{background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.55}h1,h2,h3{font-family:var(--serif);letter-spacing:.01em;margin:0 0 .4em;font-weight:600;line-height:1.15}h1{font-size:clamp(1.9rem,3.5vw,2.6rem)}h2{font-size:1.6rem}h3{font-size:1.3rem}a{color:var(--gold-deep)}.muted{color:var(--muted)}.small{font-size:.875rem}.eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:.14em;color:var(--gold-deep);flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .5rem;font-size:.72rem;font-weight:600;display:flex}.lede{color:var(--ink-soft);font-size:1.1rem}.btn{border:1px solid var(--ink);background:var(--paper);color:var(--ink);font:500 .95rem var(--sans);cursor:pointer;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.6rem 1.1rem;text-decoration:none;transition:background .15s,color .15s,transform 50ms;display:inline-flex}.btn:hover:not(:disabled){background:var(--ink);color:var(--cream)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--ink);color:var(--cream)}.btn-primary:hover:not(:disabled){background:var(--gold-deep);border-color:var(--gold-deep)}.btn-lg{padding:.8rem 1.6rem;font-size:1rem}.link-button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:.875rem}.link-button:hover{color:var(--ink);text-decoration:underline}.chip{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);font:500 .82rem var(--sans);cursor:pointer;border-radius:999px;padding:.35rem .8rem}.chip:hover:not(:disabled){border-color:var(--gold);color:var(--ink);background:var(--gold-tint)}.chip:disabled{opacity:.5;cursor:not-allowed}.app-header{background:var(--paper);border-bottom:1px solid var(--line);z-index:10;justify-content:space-between;align-items:center;gap:1rem;padding:.6rem clamp(1rem,4vw,2.5rem);display:flex;position:sticky;top:0}.brand{color:var(--ink);align-items:center;gap:.75rem;text-decoration:none;display:flex}.brand-logo{mix-blend-mode:multiply;width:auto;height:48px}.brand-title{font-family:var(--serif);border-left:1px solid var(--line);padding-left:.75rem;font-size:1.25rem;font-weight:600}.app-nav{align-items:center;gap:1.25rem;font-size:.92rem;display:flex}.app-nav a{color:var(--ink-soft);border-bottom:2px solid #0000;padding:.25rem 0;text-decoration:none}.app-nav a.active{color:var(--ink);border-color:var(--gold)}.nav-user{color:var(--muted);border-left:1px solid var(--line);padding-left:1.25rem}.page{max-width:1040px;margin:0 auto;padding:clamp(1.5rem,4vw,3rem) clamp(1rem,4vw,2.5rem) 4rem}.hero{margin-bottom:2rem}.hero h1{max-width:22ch}.demo-badge{font:600 .66rem var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);background:var(--blush);vertical-align:middle;border:1px dashed #d8b9ad;border-radius:999px;padding:.12rem .55rem;display:inline-block}.soon{font:600 .66rem var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--gold-deep);background:var(--gold-tint);vertical-align:middle;border-radius:999px;margin-left:.4rem;padding:.12rem .55rem;display:inline-block}.error-banner{background:var(--danger-tint);color:var(--danger);border-radius:var(--radius-sm);border:1px solid #efc9c9;justify-content:space-between;align-items:flex-start;gap:1rem;margin:0 0 1.25rem;padding:.75rem 1rem;font-size:.92rem;display:flex}.error-banner ul{margin:0;padding-left:1.1rem}.progress{background:var(--line);border-radius:999px;height:8px;margin:.75rem 0 .4rem;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--gold), var(--gold-deep));border-radius:inherit;height:100%;transition:width .4s}.login{background:radial-gradient(ellipse at top, var(--paper), var(--cream) 70%);place-items:center;min-height:calc(100vh - 70px);padding:2rem 1rem;display:grid}.login-card{text-align:center;background:var(--paper);border:1px solid var(--line);width:min(460px,100%);box-shadow:var(--shadow);border-radius:20px;padding:2.5rem 2rem 2rem}.login-logo{mix-blend-mode:multiply;width:200px;max-width:70%}.login-card h2.eyebrow{justify-content:center;margin-top:1.75rem}.user-choices{gap:.75rem;margin:1rem 0 1.5rem;display:grid}.user-choice{text-align:left;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);width:100%;font:inherit;cursor:pointer;align-items:center;gap:1rem;padding:.9rem 1rem;transition:border-color .15s,box-shadow .15s;display:flex}.user-choice:hover{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-tint)}.user-choice strong,.user-choice .muted{display:block}.user-choice .muted{font-size:.85rem}.user-initial{background:var(--ink);width:42px;height:42px;color:var(--cream);font-family:var(--serif);border-radius:50%;flex:none;place-items:center;font-size:1.3rem;display:grid}.fine-print{color:var(--muted);margin:0;font-size:.78rem}.continue-card{background:var(--ink);color:var(--cream);box-shadow:var(--shadow);border-radius:20px;justify-content:space-between;align-items:center;gap:2rem;margin-bottom:1.5rem;padding:clamp(1.5rem,3vw,2.25rem);display:flex}.continue-card .eyebrow{color:var(--gold)}.continue-card .muted{color:#c8bfb5}.continue-card .progress{background:#3a3532;max-width:420px}.continue-body{flex:1}.continue-card .btn-primary{background:var(--gold);border-color:var(--gold);color:var(--ink)}.continue-card .btn-primary:hover{background:var(--cream);border-color:var(--cream);color:var(--ink)}.tiles{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.tile{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);padding:1.25rem 1.25rem 1rem;text-decoration:none;transition:border-color .15s,transform .15s;display:block}a.tile:hover{border-color:var(--gold);transform:translateY(-2px)}.tile p{color:var(--ink-soft);margin:0;font-size:.92rem}.tile.is-disabled{background:0 0;border-style:dashed}.tile.is-disabled h3,.tile.is-disabled p{color:var(--muted)}.tile .soon{margin:.4rem 0 0;display:table}.lesson{grid-template-columns:280px minmax(0,1fr);min-height:calc(100vh - 70px);display:grid}.lesson-rail{background:var(--paper);border-right:1px solid var(--line);align-self:start;height:calc(100vh - 70px);padding:1.5rem 1.25rem;position:sticky;top:70px;overflow-y:auto}.rail-back{color:var(--muted);margin-bottom:1.25rem;font-size:.85rem;text-decoration:none;display:inline-block}.rail-back:hover{color:var(--ink)}.rail-title{font-size:1.45rem}.rail-steps{gap:.25rem;margin:1.25rem 0 0;padding:0;list-style:none;display:grid}.rail-step a,.rail-step .is-locked{border-radius:var(--radius-sm);color:var(--ink-soft);align-items:center;gap:.65rem;padding:.55rem .6rem;font-size:.92rem;text-decoration:none;display:flex}.rail-step a:hover{background:var(--cream)}.rail-step.is-active a{background:var(--gold-tint);color:var(--ink);font-weight:500}.rail-step .is-locked{color:#b6aea6}.step-dot{border:1px solid var(--line);background:var(--paper);border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:.75rem;font-weight:600;display:inline-grid}.is-done .step-dot{background:var(--ok);border-color:var(--ok);color:#fff}.is-active .step-dot{border-color:var(--gold);color:var(--gold-deep)}.lesson-main{flex-direction:column;gap:1.5rem;width:100%;max-width:860px;margin:0 auto;padding:clamp(1.25rem,3vw,2.5rem);display:flex}.teach-card,.chat-panel,.complete-card,.progress-card,.placeholder-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(1.25rem,3vw,2rem)}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown h3{font-size:1.35rem}.markdown ul,.markdown ol{padding-left:1.25rem}.markdown li{margin:.3rem 0}.markdown blockquote{border-left:3px solid var(--gold);background:var(--gold-tint);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-family:var(--serif);margin:1.25rem 0 0;padding:.9rem 1.1rem;font-size:1.2rem;font-style:italic}.markdown blockquote p{margin:0}.chat-panel,.chat-thread{flex-direction:column;gap:1rem;display:flex}.chat-row{align-items:flex-start;gap:.75rem;display:flex}.chat-user{justify-content:flex-end}.chat-avatar{background:var(--ink);width:36px;height:36px;color:var(--gold);font-family:var(--serif);border-radius:50%;flex:none;place-items:center;font-size:1.25rem;font-style:italic;display:grid}.chat-bubble{background:var(--cream);border:1px solid var(--line);border-radius:4px 16px 16px;max-width:min(620px,85%);padding:.75rem 1rem}.chat-user .chat-bubble{background:var(--ink);color:var(--cream);border-color:var(--ink);border-radius:16px 4px 16px 16px}.chat-user.is-pending .chat-bubble{opacity:.6}.chat-author{letter-spacing:.08em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:.25rem;font-size:.72rem;font-weight:600}.chat-user .chat-author{color:var(--gold)}.chat-text{white-space:pre-wrap;margin:0}.chat-typing{gap:5px;padding:1rem 1.1rem;display:flex}.chat-typing span{background:var(--gold);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite blink}.chat-typing span:nth-child(2){animation-delay:.15s}.chat-typing span:nth-child(3){animation-delay:.3s}@keyframes blink{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.quick-prompts{flex-wrap:wrap;gap:.5rem;display:flex}.composer{align-items:flex-end;gap:.6rem;display:flex}.composer textarea{resize:vertical;border:1px solid var(--line);border-radius:var(--radius-sm);min-height:52px;max-height:220px;font:inherit;background:var(--paper);color:var(--ink);flex:1;padding:.75rem .9rem}.composer textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-tint);outline:none}.continue-bar{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem;display:flex}.continue-bar.is-ready{color:var(--ok);font-weight:500}.complete-card .actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.progress-card{margin-bottom:1.25rem}.progress-card header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.progress-card header p{margin:0}.block-status{gap:.5rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.block-status li{color:var(--ink-soft);align-items:center;gap:.65rem;display:flex}.block-status li.is-current{color:var(--ink);font-weight:500}.coming-later{border:1px dashed var(--line);border-radius:var(--radius);margin:1.5rem 0;padding:1rem 1.25rem}.demo-tools{text-align:right}.step-kind{letter-spacing:.1em;text-transform:uppercase;color:var(--gold-deep);font-size:.66rem;font-weight:600;display:block}.rail-step .is-locked .step-kind{color:inherit}.rail-step.is-scenario .step-dot{border-style:dashed;border-color:var(--gold)}.rail-step.is-scenario.is-done .step-dot{border-style:solid;border-color:var(--ok)}.block-status li>span:nth-child(2){flex:0 auto}.scenario-card{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(1.25rem,3vw,2rem)}.scenario-head{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.scenario-head h1{margin:0}.scenario-head p{margin:.2rem 0 0}.client-initial{background:var(--blush);width:56px;height:56px;font-family:var(--serif);color:var(--ink);border:1px solid #e6cfc6;border-radius:50%;flex:none;place-items:center;font-size:1.7rem;display:grid}.client-file{background:var(--cream);border:1px dashed var(--line);border-radius:var(--radius-sm);margin-top:1.25rem;padding:1rem 1.25rem}.client-file ul{margin:.25rem 0 .5rem;padding-left:1.2rem}.client-file li{margin:.2rem 0}.client-file p{margin:0}.drill-divider{color:var(--gold-deep);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:.75rem;margin:.5rem 0;font-size:.75rem;font-weight:600;display:flex}.drill-divider:before,.drill-divider:after{content:"";border-top:1px dashed var(--gold);flex:1}.working-note{color:var(--gold-deep);margin:0;font-size:.9rem;font-style:italic}.feedback-card{border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:var(--radius);background:linear-gradient(180deg, var(--gold-tint), var(--paper) 120px);gap:.9rem;padding:1.25rem 1.4rem;display:grid}.feedback-card.fb-strong{border-left-color:var(--ok);background:linear-gradient(180deg, var(--ok-tint), var(--paper) 120px)}.feedback-card.fb-needs_work{border-left-color:var(--danger);background:linear-gradient(180deg, var(--blush), var(--paper) 120px)}.feedback-card header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.feedback-card header .eyebrow{margin:0}.verdict{font:600 .72rem var(--sans);letter-spacing:.04em;white-space:nowrap;border-radius:999px;padding:.2rem .65rem;display:inline-block}.verdict-strong{background:var(--ok-tint);color:var(--ok)}.verdict-developing{background:var(--gold-tint);color:var(--gold-deep)}.verdict-needs_work{background:var(--danger-tint);color:var(--danger)}.fb-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem;display:grid}.fb-list h4{font:600 .8rem var(--sans);letter-spacing:.04em;margin:0 0 .35rem}.fb-list ul{margin:0;padding-left:1.1rem;font-size:.94rem}.fb-list li{margin:.25rem 0}.fb-good h4{color:var(--ok)}.fb-improve h4{color:var(--gold-deep)}.fb-missed h4{color:var(--danger)}.fb-why{margin:0;font-size:.94rem}.fb-skills{flex-wrap:wrap;gap:.4rem;display:flex}.skill-chip{font:500 .75rem var(--sans);border:1px solid var(--line);background:var(--paper);white-space:nowrap;border-radius:999px;padding:.2rem .6rem;display:inline-block}.skill-chip.level-strength{color:var(--ok);border-color:#bcd4c2}.skill-chip.level-developing{color:var(--gold-deep);border-color:#e3d2b4}.skill-chip.level-needs_work{color:var(--danger);border-color:#efc9c9}.fb-confidence{border-radius:var(--radius-sm);background:var(--cream);color:var(--ink-soft);margin:0;padding:.6rem .8rem}.fb-next{border-top:1px solid var(--line);align-items:flex-start;gap:.75rem;padding-top:.9rem;font-weight:500;display:flex}.bar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.continue-bar.is-remediate{color:var(--danger);font-weight:500}.focus-card{background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:var(--radius);align-items:flex-start;gap:1rem;margin-bottom:1.5rem;padding:1.1rem 1.25rem;display:flex}.focus-card .eyebrow{margin-bottom:.2rem}.focus-card h3{margin:0 0 .2rem}.focus-card p{margin:.15rem 0}.profile-focus{margin:0 0 1rem}.skill-list{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.skill-list li{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding:.65rem 0;display:flex}.skill-list p{margin:.15rem 0 0}.skill-meta{flex:none;align-items:center;gap:.5rem;display:flex}.trend{font-size:.78rem;font-weight:600}.trend-improved{color:var(--ok)}.trend-declined{color:var(--danger)}@media (width<=820px){.lesson{grid-template-columns:minmax(0,1fr)}.composer,.continue-bar,.progress-card header{flex-direction:column;align-items:stretch}.lesson-rail{border-right:none;border-bottom:1px solid var(--line);height:auto;position:static}.continue-card{flex-direction:column;align-items:stretch}.brand-title{display:none}.app-nav{gap:.75rem}.nav-user{display:none}.chat-bubble{max-width:100%}}.lab-card{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(1.25rem,3vw,2rem)}.lab-card h1{margin:.25rem 0 .75rem}.lab-columns{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem 1.5rem;margin-top:1.25rem;display:grid}.lab-steps,.lab-photo-guide{margin:.4rem 0 0;padding-left:1.2rem}.lab-steps li,.lab-photo-guide li{margin:.3rem 0}.lab-checklist{background:var(--cream);border:1px dashed var(--line);border-radius:var(--radius-sm);margin-top:1.25rem;padding:1rem 1.25rem}.lab-checklist header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.lab-checklist ul,.lab-eval-checks{gap:.6rem;margin:.5rem 0 0;padding:0;list-style:none;display:grid}.checkpoint{align-items:flex-start;gap:.65rem;display:flex}.checkpoint p{margin:.1rem 0 0}.cp-icon{width:1.5rem;height:1.5rem;font:700 .8rem var(--sans);border:1px solid var(--line);background:var(--paper);color:var(--muted);border-radius:999px;flex:none;place-items:center;display:grid}.cp-looks_correct .cp-icon{background:var(--ok-tint);color:var(--ok);border-color:#bcd4c2}.cp-needs_improvement .cp-icon{background:var(--danger-tint);color:var(--danger);border-color:#efc9c9}.lab-result{font:600 .72rem var(--sans);letter-spacing:.04em;white-space:nowrap;border-radius:999px;padding:.2rem .65rem;display:inline-block}.lab-result-complete{background:var(--ok-tint);color:var(--ok)}.lab-result-need_photo{background:var(--gold-tint);color:var(--gold-deep)}.lab-result-needs_improvement{background:var(--danger-tint);color:var(--danger)}.lab-eval.lab-eval-complete{border-left-color:var(--ok)}.lab-eval.lab-eval-needs_improvement{border-left-color:var(--danger)}.lab-eval p{margin:0}.lab-unseen,.lab-compare{color:var(--ink-soft)}.lab-request{border-radius:var(--radius-sm);background:var(--gold-tint);color:var(--ink);margin:0;padding:.6rem .8rem}.chat-after{margin:.75rem 0 0 2.75rem}.lab-photos{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.lab-photos figure{justify-items:start;gap:.2rem;margin:0;display:grid}.lab-photos img,.lab-previews img{object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line);width:120px;height:90px;display:block}.chat-user .lab-photos .link-button,.chat-user .lab-photos-removed{color:var(--gold-tint)}.lab-upload{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);gap:.75rem;padding:1rem 1.25rem;display:grid}.lab-upload header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.lab-file{cursor:pointer;align-items:center;gap:.75rem;display:flex}.lab-file input{opacity:0;width:1px;height:1px;position:absolute}.lab-file input:focus-visible+.btn{outline:2px solid var(--gold);outline-offset:2px}.lab-previews{flex-wrap:wrap;gap:.5rem;display:flex}.lab-upload textarea{resize:vertical;width:100%;font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--cream);padding:.6rem .75rem}.lab-consent{color:var(--ink-soft);align-items:flex-start;gap:.6rem;display:flex}.lab-consent input{margin-top:.2rem}.form-errors{color:var(--danger);margin:0;padding-left:1.1rem}.lab-upload-actions{justify-content:flex-end;display:flex}@media (width<=820px){.chat-after{margin-left:0}.lab-upload-actions .btn{width:100%}}.ask-new{text-align:center;width:100%;margin:.75rem 0 1rem}.ask-list-title{margin-top:.5rem}.ask-list{gap:.15rem;margin:.4rem 0 0;padding:0;list-style:none;display:grid}.ask-list a{border-radius:var(--radius-sm);color:var(--ink-soft);gap:.1rem;padding:.5rem .6rem;text-decoration:none;display:grid}.ask-list a:hover{background:var(--gold-tint);color:var(--ink)}.ask-list a.active{background:var(--paper);border:1px solid var(--line);color:var(--ink)}.ask-list-name{font-weight:500;line-height:1.3}.ask-head{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.ask-head h1{margin:.2rem 0 0}.ask-intro{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:var(--radius);box-shadow:var(--shadow);align-items:flex-start;gap:.9rem;padding:1.25rem 1.4rem;display:flex}.ask-intro p{margin:0 0 .6rem}.ask-starters .chip{text-align:left;white-space:normal;line-height:1.35}.ask-composer{gap:.6rem;display:grid}.ask-attach{cursor:pointer;align-items:center;display:flex}.ask-attach input{opacity:0;width:1px;height:1px;position:absolute}.ask-attach input:focus-visible+.btn{outline:2px solid var(--gold);outline-offset:2px}.ask-attachment{border:1px dashed var(--line);border-radius:var(--radius-sm);background:var(--cream);align-items:flex-start;gap:.75rem;padding:.75rem;display:flex}.ask-attachment img{object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line);width:96px;height:72px}.ask-attachment>div{gap:.35rem;display:grid}.ask-footnote{margin:0}@media (width<=820px){.ask-head{flex-direction:column;align-items:stretch}}.viz-views{border:none;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem;margin:0;padding:0;display:grid}.viz-views legend{margin-bottom:.4rem}.viz-view{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--cream);cursor:pointer;align-items:flex-start;gap:.5rem;padding:.6rem .75rem;display:flex}.viz-view:has(input:checked){border-color:var(--gold);background:var(--gold-tint)}.viz-view>span{gap:.1rem;display:grid}.viz-photos{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);gap:1rem;padding:1rem 1.25rem;display:grid}.viz-photo-strip{flex-wrap:wrap;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.viz-photo-strip li{justify-items:start;gap:.2rem;display:grid}.viz-photo-strip li>button:first-child{border-radius:var(--radius-sm);cursor:pointer;text-align:left;font:inherit;color:inherit;background:0 0;border:2px solid #0000;gap:.25rem;padding:.35rem;display:grid}.viz-photo-strip li.is-active>button:first-child{border-color:var(--gold);background:var(--gold-tint)}.viz-photo-strip img{object-fit:cover;border-radius:6px;width:132px;height:99px}.viz-add{border:1px dashed var(--line);border-radius:var(--radius-sm);background:var(--cream);width:146px;height:128px;color:var(--ink-soft);font:500 .9rem var(--sans);cursor:pointer}.viz-read ul{margin:.4rem 0;padding-left:1.2rem}.viz-read p{margin:.4rem 0 0}.viz-style{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:var(--radius);gap:1rem;padding:1.25rem 1.4rem;display:grid}.viz-style h2,.preview-gallery h2{margin:0}.style-picker{gap:.9rem;display:grid}.style-presets{flex-wrap:wrap;gap:.5rem;display:flex}.chip.is-active{border-color:var(--gold);background:var(--gold-tint);color:var(--ink)}.style-control{gap:.35rem;display:grid}.segmented{flex-wrap:wrap;gap:.35rem;display:flex}.segmented button{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);font:500 .85rem var(--sans);cursor:pointer;border-radius:999px;padding:.35rem .8rem}.segmented button.is-active{background:var(--ink);border-color:var(--ink);color:var(--cream)}.segmented button:disabled{opacity:.6;cursor:default}.preview-gallery{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);gap:.9rem;padding:1.25rem 1.4rem;display:grid}.preview-gallery header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.preview-gallery p{margin:0}.sim-badge{font:700 .68rem var(--sans);letter-spacing:.08em;text-transform:uppercase;background:var(--ink);color:var(--gold-tint);border-radius:999px;padding:.2rem .6rem;display:inline-block}.compare-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;display:grid}.compare-row figure{gap:.35rem;margin:0;display:grid}.compare-row img{aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line);width:100%}.compare-row figure.is-preview img{border-color:var(--ink)}.compare-row figcaption{font:500 .85rem var(--sans);color:var(--ink-soft)}.preview-list{flex-wrap:wrap;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.preview-list label{border-radius:var(--radius-sm);cursor:pointer;border:2px solid #0000;gap:.25rem;width:132px;padding:.35rem;display:grid;position:relative}.preview-list label.is-active{border-color:var(--gold);background:var(--gold-tint)}.preview-list input{opacity:0;position:absolute}.preview-list img{object-fit:cover;border-radius:6px;width:100%;height:84px}.rail-session{justify-items:start;gap:.35rem;margin:.6rem 0 .4rem;display:grid}.head-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.help-requested{color:var(--ok);margin:0}.help-form{gap:.4rem;width:min(100%,420px);display:grid}.help-form textarea{width:100%;font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--cream);resize:vertical;padding:.5rem .65rem}.flag-badge{font:600 .72rem var(--sans);letter-spacing:.04em;white-space:nowrap;border-radius:999px;padding:.2rem .65rem;display:inline-block}.flag-Normal{background:var(--ok-tint);color:var(--ok)}.flag-Flagged{background:var(--gold-tint);color:var(--gold-deep)}.flag-HelpRequested{background:var(--danger-tint);color:var(--danger)}.summary-card,.summary-view{gap:1rem;display:grid}.summary-headline{font-size:1.05rem}.summary-facts{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.6rem 1.25rem;margin:0;display:grid}.summary-facts div{background:var(--cream);border-radius:var(--radius-sm);padding:.6rem .8rem}.summary-facts dt{font:600 .72rem var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.summary-facts dd{margin:.2rem 0 0}.summary-practical h4{margin:0 0 .35rem}.summary-practical p,.summary-next{margin:0}.summary-photos{flex-wrap:wrap;gap:.6rem;margin-top:.5rem;display:flex}.summary-photos figure{gap:.2rem;width:160px;margin:0;display:grid}.summary-photos img{object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line);width:160px;height:110px}.summary-footer{border-top:1px solid var(--line);gap:.4rem;padding-top:.75rem;display:grid}.summary-footer p{margin:0}.history-list,.dash-list,.review-list{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.history-list li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 0;display:flex}.history-list p{margin:.25rem 0 0}.history-actions{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.dash-tabs{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.dash-tabs button{border:1px solid var(--line);background:var(--paper);font:500 .9rem var(--sans);color:var(--ink-soft);cursor:pointer;border-radius:999px;padding:.45rem .95rem}.dash-tabs button.is-active{background:var(--ink);border-color:var(--ink);color:var(--cream)}.dash-row>a,.dash-student{background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--line);border-radius:var(--radius);color:inherit;gap:.5rem;padding:1rem 1.25rem;text-decoration:none;display:grid}.dash-row>a:hover{box-shadow:var(--shadow)}.flag-row-Flagged>a,.review-flags.flag-row-Flagged{border-left-color:var(--gold)}.flag-row-HelpRequested>a,.review-flags.flag-row-HelpRequested{border-left-color:var(--danger)}.dash-row header,.dash-student header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.dash-flags{margin:0;padding-left:1.1rem;font-size:.9rem}.dash-flags li{margin:.15rem 0}.dash-summary{color:var(--ink-soft);margin:0}.dash-summary span{margin-top:.2rem;display:block}.review .rail-back{margin-bottom:.5rem;display:inline-block}.review-progress{gap:.25rem;max-width:420px;display:grid}.review-flags{border-left:4px solid var(--ok)}.review-list li{border-top:1px solid var(--line);padding:.6rem 0}.review-list li>strong{margin-right:.5rem}.review-list p{margin:.3rem 0 0}.review-upload{grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:1rem;display:grid}.review-upload ul{margin:.3rem 0 0;padding-left:1.1rem}.review-transcript{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.review-transcript li{border-radius:var(--radius-sm);background:var(--cream);padding:.6rem .8rem}.review-transcript li.chat-user{background:var(--gold-tint)}.review-transcript p{margin:.2rem 0 0}@media (width<=820px){.history-list li,.review-upload{flex-direction:column;grid-template-columns:minmax(0,1fr);align-items:stretch}}
