*{box-sizing:border-box}body{margin:0;background:#ffffff;color:#263f39;font-family:system-ui,'Malgun Gothic',sans-serif}header{display:flex;align-items:center;gap:18px;padding:24px 6%;background:#fff;border-bottom:1px solid #ddd}header small{display:block;color:#74817c;margin-top:6px}.logo{font-size:42px}header button{margin-left:auto}main{max-width:1100px;margin:40px auto;padding:0 24px}h1{font-size:32px}h2{font-size:23px}.card{background:#fff;border:1px solid #e0e4dc;border-radius:20px;padding:28px;margin-bottom:20px}.hero{background:#254d42;color:#fff}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.icon{font-size:40px;color:#bfa56c}.muted{color:#74817c;font-size:14px}label{display:block;margin:14px 0 6px;font-size:14px}input,select,textarea{font:inherit;width:100%;padding:12px;border:1px solid #bac6bf;border-radius:8px;background:white}textarea{min-height:84px}button{font:inherit;cursor:pointer;border:0;border-radius:9px;padding:11px 18px;background:#315c4d;color:white;margin:5px 5px 5px 0}button.secondary{background:#e9ece4;color:#315c4d}button:disabled{opacity:.5}.login{max-width:460px;margin:60px auto}.error{color:#a03529;padding:10px 0}nav{display:flex;flex-wrap:wrap;margin-bottom:22px}table{border-collapse:collapse;width:100%}td,th{text-align:left;padding:14px 9px;border-bottom:1px solid #e5e9e3}.scroll{overflow:auto}.row{display:flex;justify-content:space-between;gap:15px;align-items:center}.badge{padding:5px 10px;background:#edf1e6;border-radius:20px;font-size:13px}.task{border-left:4px solid #c7b279;padding-left:16px}dialog{border:0;border-radius:16px;max-width:640px;width:92%;max-height:90vh;overflow:auto}dialog::backdrop{background:#173e3666}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.fields .wide{grid-column:1/-1}@media(max-width:600px){main{padding:0 14px;margin-top:24px}.card{padding:20px}.fields{grid-template-columns:1fr}.row{flex-wrap:wrap}h1{font-size:26px}header{padding:18px}}

.card,article,td{overflow-wrap:anywhere}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b47b22;outline-offset:3px}.grid{min-width:0}@media(max-width:380px){.grid{grid-template-columns:1fr}header{gap:8px}.logo{font-size:28px}}

/* UI/UX review: readable states, compact summaries and narrow-screen controls */
.muted,header small{color:#596b62}.hero{position:relative}.hero .badge{color:#254d42;background:#edf1e6}.hero-icon{position:absolute;right:28px;top:18px;font-size:58px;color:#c7b279}.hero h2{padding-right:55px}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}.summary-grid>div{display:grid;grid-template-columns:30px 1fr;gap:6px 8px}.summary-grid span{grid-row:span 2;font-size:24px;color:#dfd0a8}.summary-grid small{display:block;color:#e1e9e3}.summary-grid strong{font-weight:600}.section-icon{display:inline-grid;place-items:center;width:34px;height:34px;margin-right:10px;border-radius:10px;background:#edf1e6;color:#315c4d}.card h2{margin-top:0}.card p,.card strong,article p{white-space:pre-wrap}article{padding:18px 0;border-bottom:1px solid #dce3db}.empty{padding:20px;background:#f4f6f0;border-radius:12px}.save-notice{color:#254d42;font-weight:600;min-height:1em}.save-notice:empty{display:none}nav button[aria-current]{box-shadow:inset 0 -3px #c7b279}textarea:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #936014;outline-offset:3px}button{min-height:44px}dialog{padding:24px}dialog h2{margin-top:0}dialog output{display:block;padding:16px;border:2px solid #315c4d;font-size:20px;user-select:all;overflow-wrap:anywhere}pre{white-space:pre-wrap;overflow-wrap:anywhere}input,select,textarea,.fields>div{min-width:0}.error:empty{display:none}[aria-busy=true]{cursor:progress}h1:focus{outline:none}.scroll{max-width:100%}td{max-width:280px}th{font-size:14px}header .logo{flex-shrink:0}#app{scroll-margin-top:20px}.skip-link{position:fixed;top:-80px;left:12px;background:#254d42;color:white;padding:12px;z-index:10}.skip-link:focus{top:12px}@media(max-width:600px){.summary-grid{grid-template-columns:1fr}.hero-icon{font-size:44px}.card{padding:20px}header small{font-size:12px}header button{flex-shrink:0;padding:10px}nav{gap:4px}nav button{flex:1 1 100px;margin:0}dialog .fields{display:block}.scroll table{min-width:580px}.row{gap:8px}#admin-pager .row,#pager .row{justify-content:center}.login{margin:20px auto}h1{font-size:24px}main{margin-top:24px}}
.loading{max-width:1100px;margin:20px auto;padding:0 24px;color:#315c4d}
/* Shared design system from the reviewed member/operator proposal. */
:root{--ink:#253c34;--green:#315c4d;--green-dark:#24473b;--line:#dce4db;--muted:#526459;--surface:#fff;--canvas:#ffffff}
body{background:var(--canvas);color:var(--ink);font-size:16px;line-height:1.65}header{padding:16px max(24px,calc((100% - 1220px)/2));gap:12px}header .logo{font-size:30px;border:1px solid var(--green);border-radius:12px;width:44px;height:44px;display:grid;place-items:center}header strong{font-size:18px}header small{font-size:12px;margin-top:1px}h1{font-size:30px;line-height:1.35;letter-spacing:-.035em;margin:0 0 10px}h2{font-size:20px;line-height:1.45;letter-spacing:-.02em}h3{font-size:17px}p{margin:12px 0;overflow-wrap:anywhere}.muted{font-size:14px;color:var(--muted)}.card{border-color:var(--line);border-radius:14px;padding:24px;margin-bottom:20px;min-width:0}.card h2{margin-bottom:14px}.row h2{margin-bottom:0}button{font-size:14px;font-weight:600;min-height:44px;background:var(--green)}button.secondary{background:#eef2e9;color:#2d5143;border:1px solid #d5dfd1}button:hover:not(:disabled){filter:brightness(.96)}button:disabled{opacity:1;background:#e8ece5;color:#69756c;cursor:default}label{font-size:14px;font-weight:550}input,select,textarea{line-height:1.5;color:var(--ink);border-color:#afbeb1}table{font-size:14px}th{font-size:13px;background:#f5f7f2}td{line-height:1.6}dialog{border:1px solid var(--line);padding:28px}summary{cursor:pointer;min-height:44px;display:list-item;padding:10px 0}summary:focus-visible,a:focus-visible{outline:3px solid #936014;outline-offset:3px}.badge{font-size:12px;padding:5px 9px;border-radius:6px;white-space:normal;line-height:1.4}.status-danger{background:#fae9e5;color:#972e25}.status-info{background:#e4edf6;color:#274e73}.status-neutral{background:#edf0e9;color:#526459}.eyebrow{font-size:12px;letter-spacing:.06em}.page-intro{margin:4px 0 22px}article:last-child{border-bottom:0}.stats-scope{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:20px 0 14px}.stats-scope p{margin:0}.segmented{display:flex;gap:3px;border:1px solid var(--line);padding:3px;border-radius:9px;background:#edf1e8}.segmented button{background:transparent;color:#526459;margin:0;padding:8px 12px;white-space:nowrap}.segmented button[aria-pressed=true]{background:white;color:var(--green);box-shadow:0 1px 3px #243a2917}.ops-metrics{gap:14px;margin:16px 0 20px}.metric{border:1px solid var(--line);border-radius:12px;line-height:1.5;padding:20px;cursor:default}.metric small{font-size:13px}.metric strong{font-variant-numeric:tabular-nums;font-size:32px;margin:8px 0}button.metric{cursor:pointer}.chart-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:20px}.stats-chart{max-width:100%;margin-top:12px}.stats-chart svg{width:100%;height:auto;display:block}.stats-chart text{font:12px system-ui,'Malgun Gothic',sans-serif;fill:#526459}.stats-chart .chart-value{fill:#264c3b;font-weight:650}.chart-gridline{stroke:#e0e7dd;stroke-dasharray:3 3;fill:none}.chart-class,.chart-dot{fill:#315c4d}.chart-consult{fill:#788ca8}.chart-trial{fill:#b88c46}.chart-line{stroke:#315c4d;stroke-width:2;fill:none;pointer-events:none}.chart-legend{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;margin:12px 0}.chart-legend span:before{content:'';display:inline-block;width:9px;height:9px;margin-right:6px;border-radius:2px}.class-key:before{background:#315c4d}.consult-key:before{background:#788ca8}.trial-key:before{background:#b88c46}.chart-data{font-size:14px;color:var(--green)}.chart-table{overflow:auto}.chart-data table{font-size:13px;table-layout:fixed}.chart-data th,.chart-data td{padding:9px 5px;max-width:none;overflow-wrap:anywhere}.chart-data caption{text-align:left;padding:8px 0;color:var(--muted)}.chart-data tfoot{font-weight:650}.alert-graph{margin:20px 0}.alert-row{display:grid;grid-template-columns:103px minmax(0,1fr) 34px;gap:12px;font-size:14px;align-items:center;margin-bottom:11px}.alert-row strong{text-align:right;font-variant-numeric:tabular-nums}.alert-row meter{width:100%;height:14px;accent-color:var(--green)}.ops-toolbar label{margin-top:0}.event-time strong{font-variant-numeric:tabular-nums}.event-content p{font-size:14px}
main.director-workspace{position:relative;max-width:1300px;margin:28px auto;min-height:750px;padding:0 28px 0 250px}.director-workspace>nav{position:absolute;left:20px;top:0;width:205px;display:flex;flex-direction:column;gap:5px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}.director-workspace>nav button{margin:0;background:white;color:#526459;border:0;text-align:left;padding:11px 14px}.director-workspace>nav button[aria-current]{background:#eaf0e5;color:var(--green);box-shadow:none;border-left:3px solid var(--green)}.director-workspace>nav:after{content:'';display:block;height:90px;margin-top:14px;border-radius:10px;background:url('/assets/studio/studio-640.webp') 70% 50%/cover}.director-workspace>.row:first-child .badge{background:#eaf0e5}.director-workspace>section .row{align-items:center}
main.login-workspace{max-width:1300px;margin:24px auto;padding:0 24px}.login-layout{display:grid;grid-template-columns:1.05fr 1fr;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff;min-height:610px}.login-art{position:relative;min-height:610px;isolation:isolate;background:#ffffff;overflow:hidden}.login-art>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:64% 50%;z-index:-2}.login-art:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,#172c25e8);z-index:-1}.login-copy{position:absolute;left:36px;right:24px;bottom:38px;color:white}.login-copy .eyebrow{color:#e1e5d6}.login-copy h2{font-size:35px;line-height:1.45}.login-copy p{color:#e1e5d6}.login-form-wrap{display:flex;align-items:center;justify-content:center;padding:40px}.login-card{width:100%;max-width:365px}.login-card h1{margin:10px 0}.login-card form{margin-top:24px}.login-card form>button{width:100%;margin:24px 0 0}.login-help{margin-top:22px;font-size:13px}.login-card .eyebrow{color:#715927}
@media(max-width:1000px){main.director-workspace{padding-left:218px;padding-right:20px}.director-workspace>nav{width:180px}.chart-grid{grid-template-columns:1fr}.metric{padding:16px}.metric small{font-size:12px}.metric strong{font-size:29px}}
@media(max-width:800px){main.director-workspace{padding:0 20px;min-height:0}.director-workspace>nav{position:static;width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:10px;margin:16px 0 22px}.director-workspace>nav button{text-align:center;font-size:13px;padding:8px}.director-workspace>nav:after{display:none}.ops-columns{grid-template-columns:1fr}.login-copy h2{font-size:28px}.login-copy{left:24px}.login-form-wrap{padding:28px}}
@media(max-width:600px){header{padding:14px 16px}header .logo{width:36px;height:38px;font-size:24px}header strong{font-size:16px}header small{font-size:11px}main.director-workspace{padding:0 16px;margin-top:22px}h1{font-size:25px}h2{font-size:19px}.card{padding:20px}.ops-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric{padding:15px}.metric strong{font-size:30px}.metric small{font-size:12px}.chart-grid{gap:0}.stats-scope{align-items:flex-start;flex-wrap:wrap}.stats-scope p{font-size:13px}.segmented button{padding:8px 11px}.login-layout{grid-template-columns:1fr;min-height:0}.login-art{min-height:220px}.login-copy{bottom:22px;left:24px}.login-copy h2{font-size:25px;margin:8px 0}.login-copy>p:last-child{display:none}.login-form-wrap{padding:28px 24px 34px}main.login-workspace{padding:0 16px;margin:20px auto}.alert-row{grid-template-columns:100px minmax(0,1fr) 28px;gap:8px;font-size:13px}.chart-data table{min-width:0}.ops-toolbar{gap:12px}.ops-toolbar button{font-size:13px}.ops-toolbar>div{min-width:0}.card p{white-space:pre-wrap}.director-workspace nav button{font-size:12px}}
@media(max-width:350px){header small{max-width:145px}.ops-metrics{gap:8px}.metric{padding:13px}.metric small{font-size:12px}.director-workspace>nav{grid-template-columns:repeat(2,minmax(0,1fr))}.login-form-wrap{padding:24px 20px}.chart-data th,.chart-data td{font-size:12px;padding:8px 3px}.card{padding:17px}.alert-row{grid-template-columns:100px minmax(0,1fr) 24px}}
@media(prefers-reduced-motion:no-preference){.ops-metrics .metric{animation:gentle-entry .2s ease-out}@keyframes gentle-entry{from{opacity:.6}to{opacity:1}}}
.eyebrow{font-size:13px;font-weight:600;letter-spacing:.04em;color:#596b62;margin:0 0 6px}.ops-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:18px}.ops-toolbar>div{flex:1 1 155px}.ops-toolbar input,.ops-toolbar select{margin:6px 0 0}.ops-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:22px 0}.metric{display:flex;flex-direction:column;align-items:flex-start;width:100%;text-align:left;color:#254d42;background:#fff;margin:0;padding:22px}.metric small{font-size:14px;color:#596b62}.metric strong{font-size:34px;margin-top:8px}.metric strong span{font-size:14px;margin-left:6px}.ops-columns{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:20px}.ops-columns .card{margin-bottom:20px}.event-card{display:flex;gap:20px;align-items:flex-start}.event-time{display:flex;flex-direction:column;flex:0 0 65px;padding-top:5px;color:#254d42}.event-time strong{font-size:20px}.event-time small{margin-top:5px;color:#596b62}.event-content{flex:1;min-width:0}.event-content h3{margin:0}.event-content p{margin:10px 0}.event-kind{font-size:13px;border:1px solid #cbd9cc;border-radius:6px;padding:3px 7px;margin-right:5px}.status-good{background:#e2f1e9;color:#21523b}.status-attention{background:#fff0d8;color:#744706}.status-neutral{background:#edf1e6;color:#315c4d}.check{display:flex;gap:10px;align-items:center;line-height:1.5;margin:14px 0}.check input{width:20px;height:20px;margin:0;flex-shrink:0}#event-preview-result .empty{margin:16px 0}#op-template{min-height:120px}.ops-columns>div,.ops-columns>section{min-width:0}@media(max-width:760px){.ops-columns{grid-template-columns:1fr}.ops-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:400px){.metric{padding:16px}.metric strong{font-size:28px}.event-card{gap:10px}.event-time{flex-basis:58px}.ops-toolbar{gap:12px}.ops-metrics{gap:10px}.event-content .row{align-items:flex-start}.event-content button{width:100%}}

/* Instagram links: no remote video, thumbnails or tracking scripts. */

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}


/* Links in director lesson details retain their existing appearance. */
.instagram-link{display:inline-flex;gap:10px;align-items:center;background:#315c4d;color:#fff;border-radius:8px;padding:11px 14px;text-decoration:none;font-weight:600}.instagram-link:hover{background:#244737}.instagram-link:focus-visible{outline:3px solid #927945;outline-offset:4px}

/* Accessible brand link; scales with the available header space. */
.site-brand { display:block; width:248px; max-width:100%; min-width:0; flex:0 1 248px; }
.site-brand img { display:block; width:100%; height:auto; }
header #logout { flex-shrink:0; }
@media(max-width:480px) { .site-brand { width:224px; flex-basis:224px; } }
