@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600;700&family=DM+Sans:wght@400;500;600;700;800&display=swap";:root{color:#221b3f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--font-display:"Cormorant Garamond", Georgia, serif;--ink-strong:#241d46;--ink-soft:#5a537d;--ink-muted:#8a83af;--accent:#8b6cf6;--accent-strong:#6c4fe0;--accent-cool:#d9d0ff;--accent-petal:#f2e9ff;--accent-risk:#d65f89;--border-soft:#614fa724;--surface:#ffffffbd;--surface-strong:#ffffffd6;--surface-soft:#f9f5ffcc;--shadow-soft:0 24px 60px #4d389114;--shadow-glow:0 28px 70px #8465e924;background:radial-gradient(circle at 0 0,#e4daffeb 0%,#0000 34%),radial-gradient(circle at 88% 8%,#f4e8ffe0 0%,#0000 28%),radial-gradient(circle at 50% 100%,#e1ebffc7 0%,#0000 38%),linear-gradient(#fcfaff 0%,#f7f4ff 42%,#fbfbff 100%);font-family:DM Sans,system-ui,sans-serif;font-weight:500;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;color:var(--ink-strong);background:radial-gradient(circle at 0 0,#e4daffeb 0%,#0000 34%),radial-gradient(circle at 88% 8%,#f4e8ffe0 0%,#0000 28%),radial-gradient(circle at 50% 100%,#e1ebffc7 0%,#0000 38%),linear-gradient(#fcfaff 0%,#f7f4ff 42%,#fbfbff 100%);margin:0}button,input,textarea{font:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}img,svg{display:block}a{color:inherit;text-decoration:none}#root{min-height:100vh}.auth-screen,.app-shell{min-height:100vh;position:relative;overflow:hidden}.ambient{z-index:0;filter:blur(56px);opacity:.44;pointer-events:none;border-radius:999px;width:32rem;height:32rem;position:fixed;inset:auto}.auth-screen{grid-template-rows:auto 1fr;gap:1.25rem;padding:1.25rem;display:grid}.auth-topbar,.auth-card,.auth-modal,.surface,.score-overview{z-index:1;border:1px solid var(--border-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffc7;position:relative;box-shadow:0 28px 80px #12383e14}.auth-card h1,.hero-copy h1,.score-overview h1{max-width:12ch;font-family:var(--font-display);letter-spacing:-.04em;color:var(--ink-strong);margin:0;font-size:clamp(2.8rem,5vw,4.3rem);line-height:.96}.auth-copy,.hero-copy p,.score-overview p{max-width:52ch;color:var(--ink-soft);margin:0;font-size:1rem;line-height:1.68}.auth-topbar{border-radius:1.45rem;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.05rem;display:flex}.auth-topbar__hint{color:var(--ink-muted);font-size:.9rem}.auth-stage{z-index:1;place-items:center;min-height:calc(100vh - 7.5rem);display:grid;position:relative}.auth-card{border-radius:1.75rem;gap:1rem;width:min(100%,30rem);padding:1.45rem;display:grid}.auth-helper{border-top:1px solid #4b777b1f;flex-direction:column;gap:.7rem;padding-top:.35rem;display:flex}.auth-helper__row{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.auth-helper__row strong{color:var(--ink-strong)}.auth-helper__row span{color:var(--ink-muted);text-align:right}.auth-modal-backdrop{z-index:30;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0e1f242e;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.auth-modal{border-radius:1.7rem;gap:1rem;width:min(100%,31rem);padding:1.4rem;display:grid}.auth-modal__top{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.auth-modal__top h2{color:var(--ink-strong);margin:0}.auth-modal__close{border:1px solid var(--border-soft);color:var(--ink-soft);background:#ffffffb8;border-radius:999px;padding:.55rem .8rem;font-weight:700}.student-access-list{gap:.9rem;display:grid}.login-form{border:1px solid var(--border-soft);background:#ffffffb8;border-radius:1.35rem;gap:.85rem;padding:1rem;display:grid}.auth-subpanel{gap:.95rem;padding-top:.45rem;display:grid}.auth-tabs{flex-wrap:wrap;gap:.55rem;display:inline-flex}.auth-tab{border:1px solid var(--border-soft);color:var(--ink-soft);background:#ffffffb8;border-radius:999px;padding:.72rem .95rem;font-weight:700;transition:border-color .18s,background-color .18s,color .18s,box-shadow .18s}.auth-tab--active{color:var(--ink-strong);background:linear-gradient(135deg,#ecfbf3f0,#f0f8ffeb);border-color:#56c09a57;box-shadow:0 12px 28px #56c09a1f}.brand-signature{align-items:center;gap:.8rem;min-width:0;display:inline-flex}.brand-signature__mark{background:radial-gradient(circle at 0 0,#b8dfffa6,#0000 55%),linear-gradient(145deg,#ecfbf3fa,#f0f8fffa);border:1px solid #56c09a3d;border-radius:.95rem;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;display:inline-flex;box-shadow:inset 0 1px #ffffffb3}.brand-signature__mark span{letter-spacing:.16em;color:var(--accent-strong);font-size:.82rem;font-weight:800}.brand-signature__copy{gap:.1rem;min-width:0;display:grid}.brand-signature__copy strong{color:var(--ink-strong);font-size:.98rem;line-height:1.05}.brand-signature__copy span{color:var(--ink-muted);font-size:.76rem;line-height:1.2}.brand-signature--compact .brand-signature__copy strong{font-size:.9rem}.brand-signature--compact .brand-signature__copy span{font-size:.72rem}.access-card,.student-row,.session-preview,.client-card,.chip,.nav-pill{transition:transform .18s,border-color .18s,background-color .18s,box-shadow .18s}.access-card{border:1px solid var(--border-soft);text-align:left;background:#ffffffb8;border-radius:1.25rem;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;width:100%;padding:1.05rem 1.1rem;display:grid}.access-card:hover,.student-row:hover,.session-preview:hover,.client-card:hover,.nav-pill:hover,.chip:hover{border-color:#56c09a61;transform:translateY(-1px);box-shadow:0 20px 34px #56c09a1f}.access-card--admin{background:linear-gradient(135deg,#56c09a29,#ffffffd6)}.access-card strong,.student-row strong,.session-preview strong,.metric-stat strong,.score-stat strong,.info-pill strong{color:var(--ink-strong);font-weight:700;display:block}.access-card span,.student-row span,.session-preview span,.metric-stat span,.score-stat span,.info-pill span,.field-label,.composer-hint{color:var(--ink-muted)}.access-icon,.brand-mark,.record-button,.icon-button{justify-content:center;align-items:center;display:inline-flex}.brand-mark,.access-icon{width:3rem;height:3rem;color:var(--accent-strong);background:linear-gradient(135deg,#56c09a24,#b8dfff42);border-radius:1rem}.avatar{width:2.6rem;height:2.6rem;color:var(--ink-strong);background:linear-gradient(135deg,#56c09a2e,#b8dfff4d);border-radius:999px;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.avatar--large{width:3rem;height:3rem}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--accent-strong);align-items:center;gap:.55rem;margin-bottom:.35rem;font-size:.78rem;font-weight:700;display:inline-flex}.eyebrow--soft{color:var(--ink-muted)}.info-pill,.role-chip,.context-chip,.status-badge,.meta-inline,.chip{border-radius:999px;align-items:center;gap:.45rem;display:inline-flex}.info-pill,.role-chip,.context-chip,.chip{background:#ffffffbd;border:1px solid #4b777b24;padding:.62rem .9rem}.info-pill{flex-direction:column;align-items:flex-start;gap:.25rem;min-width:10rem}.topbar,.main-stage{z-index:1;width:min(100%,1480px);margin-inline:auto;position:relative}.topbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffd1;border:1px solid #4b777b1f;border-radius:1.35rem;grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:clamp(1rem,2vw,2rem);margin-bottom:1.1rem;padding:.78rem .92rem;display:grid}.brand-block,.current-user,.student-row,.parameter-card__score,.feedback-card__header,.recording-row{align-items:center;gap:.85rem;display:flex}.brand-block strong,.section-heading h2,.section-heading h3,.bubble p,.feedback-card h3,.score-overview h2{color:var(--ink-strong)}.nav-pills{flex-wrap:nowrap;justify-content:center;justify-self:center;gap:.5rem;width:max-content;min-width:0;display:flex}.nav-pill{color:var(--ink-soft);background:0 0;border:1px solid #0000;border-radius:999px;flex:none;align-items:center;gap:.55rem;padding:.68rem .92rem;font-size:.92rem;display:inline-flex;position:relative}.nav-pill__badge,.message-unread-badge{color:#fff;letter-spacing:.01em;background:linear-gradient(135deg,#7a5cebf5,#6249d5f5);border-radius:999px;justify-content:center;align-items:center;min-width:1.2rem;height:1.2rem;padding-inline:.34rem;font-size:.7rem;font-weight:700;display:inline-flex}.nav-pill__badge{margin-left:.15rem}.content-tabs{flex-wrap:wrap;gap:.65rem;display:flex}.difficulty-panel{gap:.9rem;margin-bottom:1rem;display:grid}.difficulty-slider{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;display:grid}.difficulty-option{text-align:left;background:#ffffffc2;border:1px solid #6c4fe01a;border-radius:1.25rem;gap:.35rem;padding:.95rem 1rem;transition:border-color .18s,background-color .18s,box-shadow .18s,transform .18s;display:grid}.difficulty-option strong{color:var(--ink-strong);font-size:.95rem}.difficulty-option span{color:var(--ink-soft);font-size:.88rem;line-height:1.5}.difficulty-option:hover{border-color:#8b6cf638;transform:translateY(-1px)}.difficulty-option--active{background:linear-gradient(135deg,#f5eefff5,#e2d9ffe6);border-color:#8b6cf647;box-shadow:0 16px 30px #6c4fe01a}.difficulty-note{line-height:1.5}.content-tab{min-height:2.9rem;color:var(--ink-soft);background:#ffffffb8;border:1px solid #6c4fe01a;border-radius:999px;justify-content:center;align-items:center;padding:.76rem 1rem;font-weight:700;transition:border-color .18s,background-color .18s,color .18s,box-shadow .18s,transform .18s;display:inline-flex}.content-tab:hover{border-color:#8b6cf638;transform:translateY(-1px)}.content-tab--active{color:var(--ink-strong);background:linear-gradient(135deg,#f5eefff5,#e0d6ffeb);border-color:#8b6cf642;box-shadow:0 12px 24px #765adc1a}.nav-pill--active{color:var(--ink-strong);background:linear-gradient(135deg,#56c09a1f,#b8dfff3d);border-color:#56c09a52}.topbar-side{justify-self:end;align-items:center;gap:.8rem;min-width:0;margin-left:auto;display:flex}.profile-trigger{background:0 0;border:0;min-width:0;padding:0}.profile-trigger:hover .current-user{opacity:.92}.current-user{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.8rem;min-width:0;max-width:15rem;padding-left:0;display:grid}.current-user strong{color:var(--ink-strong);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;display:block;overflow:hidden}.current-user span{color:var(--ink-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;display:block;overflow:hidden}.icon-button{border:1px solid var(--border-soft);background:#ffffffd6;border-radius:999px;width:2.5rem;height:2.5rem}.main-stage{min-height:calc(100vh - 8rem)}.page-stack{gap:1.35rem;width:min(100%,1410px);margin-inline:auto;display:grid}.hero-panel{border:1px solid var(--border-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:radial-gradient(circle at 0 0,#56c09a2e,#0000 38%),radial-gradient(circle at 100% 100%,#b8dfff3d,#0000 42%),#fbfffdd6;border-radius:2rem;grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr);gap:1.3rem;padding:clamp(1.6rem,4vw,2.6rem);display:grid;box-shadow:0 24px 70px #13434714}.hero-panel--setup,.hero-panel--admin{align-items:stretch}.hero-copy{flex-direction:column;justify-content:space-between;gap:1rem;display:flex}.hero-copy h1{max-width:13.5ch}.hero-score-panel,.product-card{background:#ffffffd1;border:1px solid #4b777b1f;border-radius:1.5rem;padding:1.25rem}.hero-score-panel{align-content:flex-start;gap:1rem;display:grid}.content-hero-meta{flex-wrap:wrap;gap:.8rem;display:flex}.score-stat strong{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);line-height:1}.score-rail,.progress-pill{background:#446f771f;border-radius:999px;width:100%;height:.56rem;position:relative;overflow:hidden}.score-rail--wide{height:.72rem}.score-rail__fill,.progress-pill__fill{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--accent-strong));position:absolute;inset:0 auto 0 0}.product-card strong{margin-bottom:.5rem;font-size:1.12rem;display:block}.button-row,.button-column,.field-grid,.feedback-pair,.metrics-strip,.setup-grid,.dashboard-grid,.simulation-layout,.admin-grid,.content-grid,.result-layout,.message-layout{gap:1rem;display:grid}.button-row{flex-wrap:wrap;display:flex}.button-column{align-content:start}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid--login{grid-template-columns:minmax(0,1.2fr) minmax(7rem,.8fr)}.button{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;min-height:3rem;padding:.8rem 1.1rem;font-weight:700;display:inline-flex}.button--primary{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff;box-shadow:0 16px 28px #2b8f7138}.button--ghost{border-color:var(--border-soft);color:var(--ink-strong);background:#ffffffbd}.button--danger{color:#9a3855;background:linear-gradient(135deg,#fff1f4f5,#ffe6ecf0);border-color:#b14e672e}.metrics-strip,.metrics-strip--compact{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-board,.dashboard-board__main,.dashboard-board__aside,.criterion-list{gap:1rem;display:grid}.dashboard-board__layout{grid-template-columns:minmax(0,1.55fr) minmax(17rem,.85fr);align-items:start;gap:1rem;display:grid}.board-selector{flex-wrap:wrap;gap:.75rem;display:flex}.board-chip{border:1px solid var(--border-soft);text-align:left;background:#ffffffb8;border-radius:1.15rem;align-items:center;gap:.8rem;min-width:0;padding:.8rem .95rem;display:inline-flex}.board-chip--active{background:linear-gradient(135deg,#f7f4fffa,#ffffffe6);border-color:#6c4fe033;box-shadow:0 16px 32px #6c4fe01a}.board-chip__avatar{min-width:2.7rem;height:2.7rem;color:var(--accent-strong);letter-spacing:.04em;background:#6c4fe01f;border-radius:999px;justify-content:center;align-items:center;padding-inline:.7rem;font-weight:800;display:inline-flex}.board-chip__copy{gap:.12rem;min-width:0;display:grid}.board-chip__copy strong,.board-chip__copy span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.board-chip__copy span{color:var(--ink-muted);font-size:.88rem}.metric-stat{border:1px solid var(--border-soft);background:#ffffffad;border-radius:1.4rem;padding:1rem 1.1rem}.metric-stat strong{font-family:var(--font-display);margin-top:.45rem;font-size:2.05rem;line-height:1}.score-overview--board{border:1px solid var(--border-soft);background:#ffffffd6;grid-template-columns:minmax(10rem,.7fr) minmax(0,1.3fr);gap:1rem;padding:1.25rem 1.35rem;display:grid}.score-overview__value{align-content:start;gap:.15rem;display:grid}.score-overview__value strong{font-family:var(--font-display);font-size:clamp(3rem,5vw,4.25rem);line-height:.92}.score-overview__value span{color:var(--ink-soft);font-size:1.3rem;font-weight:700}.score-overview__value p,.score-overview__summary p,.board-panel p,.criterion-card__note{margin:0}.score-overview__value p{color:var(--ink-soft);line-height:1.5}.score-overview__summary{align-content:center;gap:.85rem;display:grid}.score-rail--board,.score-rail--criterion{height:.42rem}.board-panel{border:1px solid var(--border-soft);background:#ffffffa8;border-radius:1.35rem;gap:.65rem;padding:1rem 1.05rem;display:grid}.board-panel h3{margin:0;font-size:1.1rem}.board-panel--stats{gap:.35rem}.board-stat{border-bottom:1px solid #6c4fe014;justify-content:space-between;align-items:baseline;gap:.8rem;padding-block:.35rem;display:flex}.board-stat:last-child{border-bottom:0}.board-stat span{color:var(--ink-muted)}.board-stat strong{color:var(--ink-strong)}.board-task-list{margin:0}.criterion-card{border:1px solid var(--border-soft);background:#ffffffd1;border-radius:1.35rem;padding:1.05rem 1.15rem}.criterion-card__header,.criterion-card__score{justify-content:space-between;align-items:baseline;gap:.85rem;display:flex}.criterion-card__score{flex-wrap:wrap;align-items:center}.criterion-card__score>span:first-child{color:var(--ink-strong);font-weight:800}.criterion-card__notes{gap:.45rem;margin-top:.8rem;display:grid}.criterion-card__note{line-height:1.55}.criterion-card__note--positive{color:#4d7e60}.criterion-card__note--improve{color:#8e5b71}.dashboard-grid,.setup-grid,.admin-grid,.result-layout{grid-template-columns:minmax(0,1.5fr) minmax(18rem,.9fr)}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.simulation-layout{grid-template-columns:minmax(0,1.12fr) minmax(21rem,.88fr);align-items:start}.message-layout{grid-template-columns:minmax(18rem,.84fr) minmax(0,1.1fr);align-items:start}.surface,.score-overview{border-radius:1.7rem;padding:1.35rem}.surface--sidebar{align-content:start}.section-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.section-heading--compact{margin-top:1.25rem;margin-bottom:.9rem}.section-heading h2,.section-heading h3{margin:0;font-size:1.3rem}.section-heading p,.compact-list,.task-list,.session-preview span,.voice-card span{color:var(--ink-soft);margin:0;line-height:1.65}.parameter-list,.student-list,.session-preview-list,.persona-editor,.rubric-grid,.script-branch-list,.recent-turns{gap:.85rem;display:grid}.parameter-row,.session-preview,.mini-turn,.client-card,.persona-card,.rubric-card,.script-branch-card,.voice-card,.message-bubble{border:1px solid var(--border-soft);background:#ffffffb8;border-radius:1.3rem;padding:1rem}.student-row__content,.empty-state{gap:.3rem;display:grid}.student-row{justify-content:space-between}.student-row__content{text-align:left;flex:auto;min-width:0}.empty-state{background:#ffffff94;border:1px dashed #4b777b2e;border-radius:1.3rem;padding:1rem}.empty-state--tall{align-content:center;min-height:14rem}.inline-actions{flex-wrap:wrap;gap:.75rem;display:flex}.inline-actions--spread{justify-content:space-between;align-items:center}.knowledge-composer,.knowledge-card{background:linear-gradient(#ffffffe6,#f8f3ffc7);border:1px solid #6c4fe01a;box-shadow:0 14px 28px #5d46ad0f}.knowledge-composer{border-radius:1.5rem;gap:1rem;padding:1.25rem;display:grid}.knowledge-composer__header,.knowledge-card__header,.knowledge-modal__top{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.knowledge-composer__header h3,.knowledge-card strong,.knowledge-modal__top h2{color:var(--ink-strong);margin:0}.knowledge-composer__header p,.knowledge-card p{color:var(--ink-soft);margin:.2rem 0 0;line-height:1.55}.knowledge-file-row,.knowledge-grid,.knowledge-modal__body{gap:1rem;display:grid}.knowledge-grid{grid-template-columns:repeat(auto-fit,minmax(16.5rem,1fr))}.knowledge-mark{width:3.15rem;height:3.15rem;color:var(--accent-strong);background:linear-gradient(145deg,#f5effffa,#e0d6ffe6);border-radius:1rem;flex:none;justify-content:center;align-items:center;display:inline-flex;box-shadow:inset 0 1px #ffffffd9}.knowledge-mark--small{border-radius:.95rem;width:2.7rem;height:2.7rem}.knowledge-card{text-align:left;border-radius:1.4rem;gap:.9rem;padding:1rem;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid}.knowledge-card:hover{border-color:#8b6cf638;transform:translateY(-2px);box-shadow:0 20px 36px #6c4fe01a}.knowledge-card__meta{justify-items:end;gap:.4rem;display:grid}.knowledge-card__type{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}.knowledge-modal{gap:1.1rem;width:min(100%,62rem);display:grid}.knowledge-modal__meta{flex-wrap:wrap;gap:.8rem;display:flex}.knowledge-modal__text{min-height:20rem}.import-note{color:var(--ink-soft);background:#f7f4ffbf;border:1px solid #6c4fe01f;border-radius:1rem;padding:.8rem .95rem;line-height:1.5}.import-note--success{color:#2f6b41;background:#f1fbf7d1;border-color:#56c09a2e}.import-note--error{color:#8e5b71;background:#fff2f7e0;border-color:#c360802e}.parameter-row__meta,.parameter-card__header,.client-card__top,.message-bubble__meta,.mini-turn>div{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.parameter-row__score{align-items:center;gap:.55rem;display:flex}.status-badge{color:var(--ink-soft);background:#f1fbf7eb;border:1px solid #4b777b1a;padding:.36rem .75rem;font-size:.82rem;font-weight:700}.status-badge--accent{color:var(--accent-strong);background:#56c09a24}.tone-strong{color:#2f6b41;background:#56c09a2e}.task-list{padding-left:1.15rem}.session-preview,.student-row{text-align:left;width:100%}.session-preview{gap:.45rem;display:grid}.session-preview>div{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.text-input,.text-area,.file-input{border:1px solid var(--border-soft);width:100%;color:var(--ink-strong);font:inherit;background:#ffffffdb;border-radius:1rem;padding:.85rem 1rem}.file-input{cursor:pointer}.file-input::file-selector-button{color:var(--ink-strong);font:inherit;cursor:pointer;background:linear-gradient(135deg,#8b6cf61f,#fffffff5);border:1px solid #6c4fe024;border-radius:999px;margin-right:.85rem;padding:.62rem .9rem;font-weight:700}.text-input--login{text-align:center;max-width:7rem;font-family:var(--font-display);font-size:2rem;line-height:1}.text-area{resize:vertical;min-height:7.6rem}.text-area--compact{min-height:5.4rem}.field-label{gap:.45rem;font-size:.92rem;display:grid}.field-label__meta{align-items:center;gap:.45rem;display:inline-flex}.field-help{width:1.15rem;height:1.15rem;color:var(--accent-strong);cursor:help;background:#ffffffc7;border:1px solid #786ad73d;border-radius:999px;outline:none;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:inline-flex;position:relative}.field-help__tooltip{z-index:5;color:#fffffff5;opacity:0;pointer-events:none;background:#1f1b45f5;border-radius:1rem;width:min(16rem,48vw);padding:.75rem .9rem;font-size:.8rem;line-height:1.45;transition:opacity .16s,transform .16s;position:absolute;top:50%;left:calc(100% + .65rem);transform:translateY(-50%)translate(-.25rem);box-shadow:0 16px 32px #1f1b4538}.field-help:hover .field-help__tooltip,.field-help:focus-visible .field-help__tooltip{opacity:1;transform:translateY(-50%)translate(0)}.client-type-grid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.9rem;display:grid}.client-card{text-align:left;gap:.75rem;display:grid}.client-card--active,.chip--active,.student-row--active{background:linear-gradient(135deg,#ecfbf3f5,#f0f8fff5);border-color:#56c09a59;box-shadow:0 14px 28px #56c09a1f}.meta-inline{color:var(--ink-muted);flex-wrap:wrap;font-size:.88rem;display:inline-flex}.meta-inline--spaced{justify-content:space-between;gap:1rem;display:flex}.simulation-topline{flex-wrap:wrap;gap:.8rem;display:flex}.simulation-dialog{gap:1.1rem;display:grid}.bubble{border-radius:1.6rem;padding:1.25rem}.bubble--student{background:linear-gradient(135deg,#f0fbf6f0,#ffffffd6)}.bubble-label{color:var(--ink-muted);margin-bottom:.55rem;font-size:.84rem;font-weight:700;display:inline-block}.bubble p,.best-reply p,.message-bubble p,.mini-turn p{margin:0;line-height:1.72}.feedback-stack,.feedback-card{gap:1rem;display:grid}.feedback-card{background:#ffffffd1;border:1px solid #56c09a2e;border-radius:1.4rem;padding:1.2rem}.feedback-card__header h3,.score-overview h1{font-family:var(--font-display);font-size:clamp(2.6rem,5vw,4rem);line-height:.95}.feedback-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.feedback-pair--single{grid-template-columns:1fr}.feedback-pair ul,.feedback-pair p{color:var(--ink-soft);margin:0}.feedback-pair ul{padding-left:1.1rem}.best-reply{background:linear-gradient(135deg,#ecfbf3d6,#f0f8ffe6);border-radius:1.2rem;padding:1rem}.compact-list{padding-left:1.1rem}.mini-turn strong{display:block}.chip-row{flex-wrap:wrap;gap:.55rem;margin-bottom:1rem;display:flex}.chip{padding:.68rem .9rem}.rubric-grid,.script-branch-list{grid-template-columns:repeat(auto-fit,minmax(18rem,1fr))}.message-surface{gap:1rem;min-width:0;display:grid}.message-thread{gap:.8rem;width:100%;max-height:32rem;padding-right:.25rem;display:grid;overflow:auto}.message-bubble{max-width:min(44rem,85%)}.simulation-layout>*,.message-layout>*,.dashboard-grid>*,.admin-grid>*,.content-grid>*,.result-layout>*{min-width:0}.message-bubble--mine{background:linear-gradient(135deg,#ecfbf3e6,#f0f8ffeb);margin-left:auto}.message-unread-badge{flex:none;margin-left:.8rem}.voice-card{gap:.6rem;margin-top:.65rem;display:grid}.score-overview{justify-content:space-between;align-items:flex-start;gap:1.2rem;display:flex}.score-overview__main{gap:1rem;display:grid}.result-list,.parameter-card{gap:.95rem;display:grid}.feedback-line{margin:0;line-height:1.65}.feedback-line--negative{color:#b14e67}.voice-composer{background:#ffffffd1;border:1px solid #4b777b1f;border-radius:1.45rem;gap:.95rem;padding:1rem;display:grid}.voice-composer--compact{margin-top:.4rem}.record-button{min-width:13rem;color:var(--ink-strong);background:linear-gradient(135deg,#56c09a24,#b8dfff42);border-radius:999px;padding:.84rem 1.1rem;font-weight:700}.wave-bars{align-items:center;gap:.34rem;display:flex}.wave-bars__bar{background:#446f772e;border-radius:999px;width:.24rem;height:1rem}.wave-bars__bar--live{background:linear-gradient(180deg, var(--accent), var(--accent-strong));animation:.9s ease-in-out infinite wave}.wave-bars__bar--live:nth-child(2n){animation-delay:.12s}.wave-bars__bar--live:nth-child(3n){animation-delay:.24s}.field-error{color:#b14e67;margin:0}.status-dot{background:var(--accent);border-radius:999px;width:.52rem;height:.52rem}.status-dot--strong{background:#2b8f71}.inline-audio-player{background:#ffffffd1;border:1px solid #4b777b1f;border-radius:1rem;grid-template-columns:auto minmax(7rem,1fr) auto;align-items:center;gap:.75rem;margin-top:.85rem;padding:.8rem .95rem;display:grid}.inline-audio-player--compact{margin-top:0}.audio-chip{min-height:2.4rem;color:var(--ink-strong);background:linear-gradient(135deg,#56c09a24,#b8dfff3d);border-radius:999px;align-items:center;gap:.45rem;padding:.6rem .8rem;font-weight:700;display:inline-flex}.audio-range{width:100%;accent-color:var(--accent-strong)}.audio-time,.audio-note{color:var(--ink-muted);font-size:.85rem}.audio-note{grid-column:1/-1}.topbar svg,.button svg,.eyebrow svg,.brand-mark svg,.record-button svg,.icon-button svg,.nav-pill svg{width:1rem;height:1rem}@keyframes wave{0%,to{opacity:.5;transform:scaleY(.7)}50%{opacity:1;transform:scaleY(1.5)}}.auth-screen:before,.app-shell:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(#ffffff6b,#fff0),radial-gradient(circle at 18% 10%,#e1d2ff94,#0000 28%),radial-gradient(circle at 82% 12%,#f8e8ff75,#0000 24%),radial-gradient(circle at 50% 100%,#dee8ff57,#0000 28%);position:fixed;inset:0}.ambient{filter:blur(78px);opacity:.72}.ambient-left{background:radial-gradient(circle,#b096ff38,#0000 68%);top:-10rem;left:-12rem}.ambient-right{background:radial-gradient(circle,#e8d6ff57,#0000 70%);bottom:-8rem;right:-10rem}.auth-topbar,.auth-card,.auth-modal,.surface,.score-overview{background:linear-gradient(180deg, var(--surface-strong), var(--surface));box-shadow:var(--shadow-soft);border-color:#6c4fe01a}.auth-screen{gap:1.4rem;padding:1.4rem}.auth-topbar{background:linear-gradient(135deg,#ffffffe6,#f7f1ffc7);border-radius:1.65rem;padding:1rem 1.2rem}.auth-topbar__hint{color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase;font-size:.82rem}.auth-stage{width:min(100%,1180px);margin:0 auto}.auth-card{width:min(100%,34rem);box-shadow:var(--shadow-glow);background:linear-gradient(160deg,#fffffff0,#f7f1ffdb);border-radius:1.9rem;gap:1.15rem;padding:1.75rem}.auth-card h1,.hero-copy h1,.score-overview h1{color:var(--ink-strong);text-wrap:balance}.auth-copy,.hero-copy p,.score-overview p{color:var(--ink-soft)}.login-form{background:linear-gradient(#ffffffdb,#f6f1ffbd);border-color:#6c4fe01c;border-radius:1.5rem;padding:1.15rem}.auth-helper{border-top-color:#6c4fe01a;gap:.9rem;padding-top:.7rem}.auth-helper__row{background:#f7f2ff99;border:1px solid #6c4fe014;border-radius:1.1rem;padding:.8rem .9rem}.auth-modal-backdrop{background:#1e153a2e}.auth-modal{box-shadow:var(--shadow-glow);background:linear-gradient(160deg,#fffffff2,#f7f1ffe0);border-radius:1.9rem}.auth-modal__close{background:#f9f5ffe6;border-color:#6c4fe01a}.brand-signature{gap:.92rem}.brand-signature__mark{background:radial-gradient(circle at 30% 30%,#ffffffe6,#0000 42%),linear-gradient(145deg,#f4eefffa,#e0d6fff0);border:1px solid #6c4fe029;border-radius:1.05rem;width:3rem;height:3rem;box-shadow:inset 0 1px #ffffffd6,0 18px 34px #765adc24}.brand-signature__mark span{color:var(--accent-strong);letter-spacing:.18em;font-size:.8rem}.brand-signature__copy{gap:.16rem}.brand-signature__copy strong{letter-spacing:-.03em;font-size:1rem}.brand-signature__copy span{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);font-size:.72rem}.brand-signature--compact .brand-signature__mark{border-radius:.9rem;width:2.5rem;height:2.5rem}.access-card:hover,.student-row:hover,.session-preview:hover,.client-card:hover,.nav-pill:hover,.chip:hover{border-color:#8b6cf647;box-shadow:0 20px 34px #6c4fe01f}.avatar{color:var(--accent-strong);background:linear-gradient(145deg,#f5effffa,#e0d6ffe6);box-shadow:inset 0 1px #ffffffd9}.eyebrow{color:var(--accent-strong)}.eyebrow--soft,.access-card span,.student-row span,.session-preview span,.metric-stat span,.score-stat span,.info-pill span,.field-label,.composer-hint{color:var(--ink-muted)}.info-pill,.role-chip,.context-chip,.chip{background:#f9f5ffd6;border-color:#6c4fe01a}.app-shell{padding:1.3rem 1.45rem 1.7rem}.topbar{box-shadow:var(--shadow-soft);background:linear-gradient(135deg,#ffffffe0,#f7f2ffc2);border-color:#6c4fe01a;border-radius:1.75rem;margin-bottom:1.25rem;padding:.9rem 1.12rem}.nav-pills{gap:.35rem}.nav-pill{color:var(--ink-soft);border:1px solid #0000;padding:.66rem .9rem}.nav-pill--active{color:var(--ink-strong);background:linear-gradient(135deg,#f5eefff5,#e0d6ffeb);border-color:#8b6cf63d;box-shadow:inset 0 1px #ffffffd1,0 12px 24px #765adc1f}.topbar-side{flex:none;gap:.8rem}.current-user{padding:0}.current-user>div:last-child{min-width:0}.current-user strong,.current-user span{text-align:right}.current-user span{white-space:nowrap;text-overflow:ellipsis;max-width:11rem;overflow:hidden}.icon-button{background:#f9f5ffe0;border-color:#6c4fe01a}.hero-panel{box-shadow:var(--shadow-soft);background:radial-gradient(circle at 100% 0,#d5c9ff61,#0000 28%),radial-gradient(circle at 0 100%,#ebe3ff6b,#0000 34%),linear-gradient(145deg,#ffffffe6,#f7f2ffc7);border-color:#6c4fe01a;position:relative;overflow:hidden}.hero-panel>*{z-index:1;position:relative}.hero-copy{gap:1.2rem}.hero-copy h1{max-width:12.5ch;font-size:clamp(3rem,5.2vw,4.6rem)}.hero-score-panel,.product-card,.metric-stat,.parameter-row,.session-preview,.mini-turn,.client-card,.persona-card,.rubric-card,.script-branch-card,.voice-card,.message-bubble,.feedback-card,.voice-composer,.inline-audio-player{background:linear-gradient(#ffffffe0,#f8f3ffbd);border-color:#6c4fe01a;box-shadow:0 14px 28px #5d46ad0f}.hero-score-panel,.product-card{border-radius:1.65rem}.score-stat strong,.metric-stat strong,.feedback-card__header h3,.score-overview h1{color:var(--ink-strong)}.score-rail,.progress-pill{background:#6c4fe01c}.score-rail__fill,.progress-pill__fill{background:linear-gradient(90deg, var(--accent), var(--accent-strong))}.button{transition:transform .18s,box-shadow .18s,border-color .18s,background-color .18s}.button:hover{transform:translateY(-1px)}.button--primary{background:linear-gradient(135deg,#8b6cf6,#6c4fe0 72%,#5a41c7);box-shadow:0 18px 34px #6c4fe03d}.button--ghost{background:#faf7ffd6;border-color:#6c4fe01a}.metric-stat{border-radius:1.55rem}.metric-stat strong{font-size:2.2rem}.surface,.score-overview{border-radius:1.9rem}.section-heading p,.compact-list,.task-list,.session-preview span,.voice-card span,.meta-inline{color:var(--ink-soft)}.empty-state{background:#f8f3ff9e;border-color:#6c4fe01f}.status-badge{color:var(--ink-soft);background:#f4eeffeb;border-color:#6c4fe01a}.status-badge--accent,.tone-strong{color:var(--accent-strong);background:#8b6cf624}.tone-partial{color:#6556a9;background:#d9d0ff70}.tone-risk{color:#b34874;background:#d65f8924}.text-input,.text-area,.file-input{background:#ffffffeb;border-color:#6c4fe01a;box-shadow:inset 0 1px #ffffffd6}.text-input:focus,.text-area:focus,.file-input:focus{border-color:#8b6cf66b;outline:none;box-shadow:0 0 0 4px #8b6cf61a,inset 0 1px #ffffffe6}.client-card--active,.chip--active,.student-row--active,.auth-tab--active{background:linear-gradient(135deg,#f5eefff5,#e2d9ffe6);border-color:#8b6cf63d;box-shadow:0 16px 30px #6c4fe01a}.bubble{border:1px solid #6c4fe014;box-shadow:inset 0 1px #ffffffd1}.bubble--client{background:linear-gradient(135deg,#f3ecffeb,#fffffff0)}.bubble--student,.message-bubble--mine,.best-reply{background:linear-gradient(135deg,#f0f5ffeb,#f6f0ffeb)}.feedback-line--positive{color:var(--accent-strong)}.record-button,.audio-chip{color:var(--ink-strong);background:linear-gradient(135deg,#f5eefff5,#e0d6ffe6)}.record-button--active{color:#b34874;background:#d65f8924}.wave-bars__bar{background:#6c4fe01f}.wave-bars__bar--live{background:linear-gradient(180deg, var(--accent), var(--accent-strong))}.audio-range{accent-color:var(--accent-strong)}.field-error,.audio-note{color:#b34874}.field-note{color:var(--accent-strong);margin:0;font-weight:600}.settings-surface,.settings-form{gap:1rem;display:grid}@media (width<=1180px){.hero-panel,.dashboard-grid,.dashboard-board__layout,.setup-grid,.simulation-layout,.admin-grid,.content-grid,.result-layout,.message-layout{grid-template-columns:1fr}.auth-hero,.auth-stage{min-height:auto}.metrics-strip,.metrics-strip--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid,.field-grid--login,.difficulty-slider,.knowledge-grid{grid-template-columns:1fr}.topbar{gap:1rem;padding-inline:.95rem}.nav-pill{padding-inline:.8rem}.current-user{max-width:12rem}.auth-topbar{justify-content:flex-start}}@media (width>=1500px){.topbar,.main-stage{width:min(100%,1500px)}.page-stack{width:min(100%,1440px)}.simulation-layout{grid-template-columns:minmax(0,1.06fr) minmax(22rem,.84fr)}.message-layout{grid-template-columns:minmax(19rem,.8fr) minmax(0,1fr)}}@media (width<=980px){.topbar{grid-template-columns:auto auto;align-items:start}.nav-pills{grid-column:1/-1;justify-content:center;justify-self:center}.topbar-side{justify-self:end}}@media (width<=760px){.app-shell,.auth-screen{padding:1rem}.auth-topbar,.auth-card,.auth-modal,.surface,.score-overview,.hero-panel{border-radius:1.4rem}.metrics-strip,.metrics-strip--compact,.feedback-pair,.score-overview--board,.inline-audio-player{grid-template-columns:1fr}.auth-topbar,.auth-helper__row,.knowledge-composer__header,.knowledge-card__header,.knowledge-modal__top{flex-direction:column;align-items:flex-start}.topbar{grid-template-columns:1fr;gap:.9rem}.nav-pills{flex-wrap:nowrap;justify-content:flex-start;justify-self:stretch;width:100%;padding-bottom:.1rem;overflow-x:auto}.content-tabs{flex-wrap:nowrap;width:100%;padding-bottom:.1rem;overflow-x:auto}.board-selector{flex-wrap:nowrap;padding-bottom:.1rem;overflow-x:auto}.board-chip{min-width:14rem}.topbar-side{justify-content:space-between;justify-self:stretch;width:100%}.current-user span,.current-user strong{text-align:left;max-width:100%}.message-bubble{max-width:100%}.button-row{flex-direction:column}.button{width:100%}.score-overview{flex-direction:column}.auth-hero h1,.hero-copy h1,.score-overview h1{max-width:100%;font-size:clamp(2.4rem,13vw,4rem)}}
