/* TrainSkool Studio — shared design system, inspired by the supplied calendar. */
:root {
  --ink:#202039; --ink-soft:#41475e; --muted:#65728c; --paper:#f7f8fc;
  --surface:#fff; --surface-subtle:#f7f8fc; --surface-alt:#eef3fa; --ivory:#f7f8fc;
  --line:#e8ecf4; --line-strong:#c9d4e7; --teal:#0875ed; --teal-bright:#0065d4;
  --teal-vivid:#0875ed; --teal-deep:#0753a8; --teal-soft:#eaf4ff;
  --redesign-accent:#0969d6; --redesign-soft:#eaf4ff; --navy:#202039;
  --gold:#956517; --gold-soft:#fff3d8; --danger:#c83451; --success:#217958;
  --studio-cyan:#99e8eb; --studio-coral:#ff647c; --studio-green:#70cea0;
  --font-display:var(--font-sans); --radius:18px; --radius-sm:12px; --radius-lg:24px;
  --shadow:0 8px 32px #25365908; --shadow-sm:0 3px 12px #25365905;
  --shadow-lg:0 16px 42px #2536590d; --shadow-brand:0 6px 20px #0875ed20;
  --grad-brand:linear-gradient(120deg,#0875ed,#319bff);
  --grad-brand-deep:linear-gradient(120deg,#0875ed,#0b60c7);
}
:root[data-theme=dark] {
  --ink:#edf2ff; --ink-soft:#ccd6ed; --muted:#a6b4cf; --paper:#141b2c; --ivory:#141b2c;
  --surface:#1d273c; --surface-subtle:#172136; --surface-alt:#26344e;
  --line:#33405b; --line-strong:#536783; --redesign-soft:#223d60; --teal-soft:#223d60;
  --redesign-accent:#8ac6ff; --teal:#8ac6ff; --navy:#edf2ff;
  --gold:#f4d18c; --success:#80dbb0; --danger:#ff9eb0;
}
body {background:var(--paper);color:var(--ink);font-size:14px;line-height:1.65}
body h1,body h2,body h3,body h4,body strong,body b,body .brand,body button,body .primary-link {font-weight:600!important}
body h1 {letter-spacing:-.045em;line-height:1.14}
body h2 {letter-spacing:-.025em;line-height:1.3}
body h3 {letter-spacing:-.015em;line-height:1.4}
body p,body li,body label,body input,body select,body textarea {font-size:.9375rem}
a,button,input,select,textarea {transition:background .16s,border-color .16s,box-shadow .16s}
a:hover {color:var(--redesign-accent)}
body button,body .primary-link {border-radius:12px;background:#0875ed;border-color:#0875ed;color:white;box-shadow:none}
body button:hover,body .primary-link:hover {background:#0062cc;border-color:#0062cc;box-shadow:var(--shadow-brand)}
body .outline-link,body .outline-button,body .ghost,body .text-button {background:var(--surface);border:1px solid var(--line);color:var(--redesign-accent);border-radius:12px}
body .outline-link:hover,body .outline-button:hover,body .ghost:hover,body .text-button:hover {background:var(--redesign-soft);color:var(--redesign-accent);border-color:var(--line-strong)}
body .decline-button {color:var(--danger);border-color:var(--danger)}
body button:disabled {box-shadow:none}
body input:not([type=checkbox]):not([type=radio]),body select,body textarea {background:var(--surface-subtle);border-color:var(--line);border-radius:12px;min-height:46px}
body input:focus,body select:focus,body textarea:focus {border-color:var(--teal);box-shadow:0 0 0 3px var(--redesign-soft)}
body :focus-visible {outline:3px solid var(--redesign-accent)!important;outline-offset:3px!important}
.eyebrow {text-transform:uppercase;letter-spacing:.12em;font-size:.7rem!important;font-weight:600!important}
.site-header,.dashboard-header {min-height:84px;border-color:var(--line);padding:18px 32px;gap:22px;background:var(--surface)!important}
.brand {font-size:1.2rem;letter-spacing:-.045em}.brand img {width:34px;height:34px}
.desktop-nav {gap:24px}.desktop-nav a {font-size:.85rem}.header-actions a {padding:10px 16px}
.site-header .search-bar {background:var(--paper);border-radius:12px}
.site-footer {background:var(--surface)!important;font-size:.85rem;padding:30px 36px;gap:24px}.site-footer nav {gap:18px}
.studio-rail {display:none}
.studio-icon {width:20px;height:20px;flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.studio-rail nav {display:grid;gap:7px;margin-top:38px}
.studio-rail nav a {display:flex;align-items:center;gap:13px;min-height:48px;padding:12px 14px;color:var(--muted);border-radius:12px;font-size:.875rem}
.studio-rail nav a[aria-current=page],.studio-rail nav a:hover {background:var(--redesign-soft);color:var(--redesign-accent)}
.studio-rail-label {margin-top:32px;color:var(--muted);font-size:.67rem!important;letter-spacing:.12em;text-transform:uppercase}
.studio-rail-card {margin-top:auto;background:var(--redesign-soft);border-radius:18px;padding:20px;display:grid;gap:12px}
.studio-rail-card p {font-size:.8rem}.studio-rail-card a {padding:11px 14px;text-align:center}
.studio-rail-foot {display:flex;align-items:center;gap:10px;margin:24px 12px 0;font-size:.82rem;color:var(--muted)}
@media(min-width:1280px) {
  body.studio-public {padding-left:230px}
  .studio-public .studio-rail {display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;width:230px;padding:30px 18px;background:var(--surface);border-right:1px solid var(--line);overflow-y:auto;z-index:30}
  .studio-rail>.brand {padding:0 12px}
  .studio-public .site-header>.brand {display:none}
  .studio-public .site-header {padding:18px 36px}
  .studio-public .site-header .desktop-nav {display:none}
  .studio-public .site-header:before {content:'Your learning workspace';font-size:.875rem;color:var(--muted)}
  .studio-public .site-header .header-actions {margin-left:auto}
}
.ts-container {width:min(1240px,calc(100% - 64px))}
.ts-hero {padding:42px 0 28px;gap:36px;grid-template-columns:1.1fr 1fr}
.ts-hero>div:first-child {padding:26px 0}
.ts-hero h1 {font-size:clamp(2.6rem,4vw,4.5rem);max-width:640px;margin:16px 0 22px}
.ts-hero .lead {font-size:1rem;line-height:1.8;max-width:540px}
.ts-hero .eyebrow {display:inline-flex;padding:6px 12px;border-radius:8px;background:var(--redesign-soft)}
.ts-note {font-size:.78rem!important;line-height:1.8}
.ts-guide {border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}
.ts-guide:before {content:'';display:block;width:40px;height:5px;background:var(--studio-cyan);border-radius:4px;margin-bottom:20px}
.ts-guide h2 {font-size:1.6rem}.ts-guide p {font-size:.875rem}
body .ts-choice {background:var(--paper);color:var(--ink);border-color:var(--line);border-radius:12px;padding:13px 16px;font-weight:400!important}
body .ts-choice[aria-pressed=true],body .ts-choice:hover {background:var(--redesign-soft);border-color:var(--teal);color:var(--redesign-accent)}
.ts-section {padding:28px 0}.ts-section-head h2 {font-size:1.65rem}.ts-section-head p {font-size:.875rem}
.ts-course-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ts-course-card {max-width:none;grid-template-columns:104px minmax(0,1fr);padding:20px;gap:18px;border-radius:20px;box-shadow:var(--shadow);align-items:center}
.ts-course-card:hover,.catalog-card:hover {box-shadow:var(--shadow-lg);border-color:var(--line-strong)}
.ts-course-card h3 {font-size:1rem}.ts-course-card p {font-size:.8rem}
.ts-cover {min-height:126px;border-radius:14px;background:#c9f2f1;color:#225f6b}
.ts-course-card:nth-child(3n+2) .ts-cover {background:#e7eaff;color:#505789}.ts-course-card:nth-child(3n) .ts-cover {background:#ffe2e7;color:#974356}
.ts-cover img {width:42px;height:42px}.ts-cover span {font-size:.7rem}
.ts-steps {gap:20px;border:0;padding-top:24px}.ts-steps article {padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:18px}
.ts-steps article>span {display:inline-block;padding:5px 10px;background:var(--redesign-soft);border-radius:8px;font-size:.75rem}
.ts-steps article:nth-child(2)>span {background:#daf6ee;color:#246950}.ts-steps article:nth-child(3)>span {background:#ffe5eb;color:#a43351}
.ts-steps h3 {font-size:1.05rem}.ts-steps p {font-size:.875rem}
.ts-teach {background:#0875ed;border-radius:22px;padding:32px}.ts-teach h2 {font-size:1.8rem}.ts-teach .eyebrow {color:#cff5ff!important}
.catalog-page {padding:34px 32px}.catalog-layout {grid-template-columns:210px minmax(0,1fr);gap:24px}
.filters,.catalog-card,.cl-section,.cl-purchase,.login-card,.ts-guide-result {border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
.catalog-card {padding:24px;grid-template-columns:125px minmax(0,1fr) 110px;gap:22px}.catalog-card h2 {font-size:1.2rem}
.filters {padding:22px}.page-heading h1 {font-size:2.6rem}.ts-catalog-help {border-radius:14px}
.cl-hero {background:var(--paper)!important}.cl-hero .cl-wrap {gap:32px}.cl-title {font-size:clamp(2rem,3.5vw,3.2rem)}
.cl-purchase {border-top:4px solid #0875ed}.cl-section-btn {border-radius:10px}
.auth-layout {gap:44px;margin:40px auto;width:min(1040px,calc(100% - 64px));align-items:center}
.auth-promise {padding:32px!important;border-radius:24px;background:var(--redesign-soft)!important}
.auth-promise h1,.auth-promise h2,.auth-promise p,.auth-promise li,.auth-promise .auth-list span {color:var(--ink)}
.auth-promise .auth-list span:before,.auth-promise li:before {color:var(--redesign-accent)}
.auth-promise h1 {font-size:2.5rem}.auth-promise .auth-list {margin-top:24px}.login-card {padding:30px}.auth-list span {font-size:.9rem}
.ts-form-progress li {font-size:.75rem;border-top-width:4px}.ts-form-progress li[aria-current=step] {border-color:#0875ed}
.dashboard-header {padding:18px 28px;position:sticky;top:0;z-index:35;box-shadow:none}
.dashboard-header .brand {width:218px}.portal-label {border:0;background:var(--redesign-soft);color:var(--redesign-accent);padding:5px 11px;border-radius:8px;font-size:.75rem}
.dashboard-shell {grid-template-columns:246px minmax(0,1fr)}
.dashboard-nav {padding:24px 16px;border-right:1px solid var(--line);top:84px;height:calc(100dvh - 84px);scrollbar-width:thin}
.dashboard-nav a {gap:12px;padding:11px 13px;border-radius:10px;min-height:44px;font-size:.83rem;margin:4px 0;color:var(--muted)}
.dashboard-nav a.selected {box-shadow:inset 3px 0 #0875ed;color:var(--redesign-accent);background:var(--redesign-soft)}
.dashboard-nav a .studio-icon {color:#91a7c5;width:19px;height:19px;flex-basis:19px}.dashboard-nav a.selected .studio-icon {color:#0875ed}
.nav-group-label {font-size:.65rem!important;text-transform:uppercase;letter-spacing:.13em!important;padding:10px 0 4px;color:var(--muted)}
.dashboard-nav .ts-nav-search {font-size:.8rem;border:0;background:var(--paper);margin-bottom:20px}
.dashboard-main {padding:32px 36px;max-width:1680px}.dashboard-title {margin-bottom:24px}.dashboard-title h1 {font-size:1.85rem;margin-top:5px}
.dashboard-main {grid-template-columns:minmax(0,1fr)}
.dashboard-section,.dashboard-overview,.studio-calendar,.studio-insights,.stat-card,.studio-plot,.studio-week-scroll {min-width:0}
.dashboard-section.panel,.panel,.stat-card {border-color:var(--line);border-radius:18px;box-shadow:var(--shadow)}
.dashboard-section.panel {padding:26px}.panel-head h2 {font-size:1.4rem}.panel-head p {font-size:.875rem}
.stat-grid {gap:18px;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));margin-bottom:24px}
.stat-card {padding:22px;position:relative;overflow:hidden;border:1px solid var(--line)}
.stat-card:before {content:'';display:block;width:28px;height:4px;background:#0875ed;border-radius:4px;margin-bottom:17px}
.stat-card:nth-child(4n+2):before {background:var(--studio-cyan)}.stat-card:nth-child(4n+3):before {background:var(--studio-coral)}.stat-card:nth-child(4n+4):before {background:var(--studio-green)}
.admin-control .stat-grid {grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:18px;margin-bottom:24px}
.admin-control .stat-card {background:var(--surface);border-radius:18px;padding:22px;box-shadow:var(--shadow)}
.admin-control .stat-card:before {position:static;display:block;width:28px;height:4px;opacity:1;margin-bottom:17px}
.admin-control .stat-card .stat-value {font-size:1.85rem;letter-spacing:-.045em}
.admin-control .stat-card .stat-label {font-size:.8rem;letter-spacing:0;text-transform:none}
.admin-control .dashboard-section.panel {border-radius:18px;padding:26px}
.admin-control .panel-head h2,.admin-control .dashboard-section.panel>h2 {font-size:1.4rem}
.admin-control .control-card,.admin-control .work-card {background:var(--surface);border-radius:14px}
.stat-card strong {font-size:1.85rem;letter-spacing:-.045em}.stat-card span,.stat-card p {font-size:.8rem}
.ts-next-steps {padding:24px 28px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow);position:relative}
.ts-next-steps h2 {font-size:1.4rem}.ts-next-steps p {max-width:800px;font-size:.85rem}.ts-next-steps .ts-actions {margin-top:16px}
.dashboard-record,.record-card,.course-record,.control-card,.application-card,.community-post,.mail-message,.chat-thread,.ts-guide-result {border-radius:14px!important;border-color:var(--line)!important;background:var(--surface);box-shadow:none}
.dashboard-record {padding:20px}.dashboard-record h3 {font-size:1.1rem}.record-row {gap:16px}.record-actions {gap:10px}
.badge,.status-pill {border-radius:7px;background:var(--redesign-soft);color:var(--redesign-accent);font-size:.72rem;padding:4px 9px}
.badge.verified,.status-pill.active,.status-pill.approved {background:#e1f6ed;color:#24694f}.status-pill.pending,.status-pill.pending-review {background:#fff2d9;color:#885e11}
.status-pill.failed,.status-pill.rejected {background:#ffe5eb;color:#a43351}
.progress-track,.bar-track {background:var(--surface-alt);border-radius:10px}.progress-fill,.bar-fill {background:#0875ed;border-radius:10px}
body table {font-size:.85rem}body th {font-size:.75rem;letter-spacing:.015em;background:var(--paper);color:var(--muted)}body td,body th {padding:14px 16px;border-color:var(--line)}
tr:hover td {background:var(--surface-subtle)}.table-wrap,.table-scroll,#report-table,#students-roster {overflow-x:auto}
.cw-overlay {background:var(--paper)}.cw-head,.cw-foot,.cw-rail {background:var(--surface)}.cw-rail-step {border-radius:10px!important}.cw-body {padding:36px 48px}.cw-q {font-size:1.8rem}
.empty-state {background:var(--paper);border:1px dashed var(--line-strong);border-radius:14px;font-size:.875rem;padding:24px}
.theme-toggle {background:var(--surface)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:50%!important;z-index:50}
/* Charts and calendar use SVG attributes, never inline CSS (strict CSP). */
.studio-insights {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}
.studio-chart {background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:24px;min-width:0;box-shadow:var(--shadow);margin:0}
.studio-chart h3 {font-size:1.05rem;margin:0 0 5px}.studio-chart .studio-caption {font-size:.77rem;color:var(--muted);margin-bottom:16px}
.studio-chart svg {display:block;width:100%;height:auto;overflow:visible}.studio-chart .chart-grid {stroke:var(--line);stroke-dasharray:4 6}
.studio-plot {overflow-x:auto;scrollbar-width:thin;padding:4px 0}
.dashboard-overview {display:flex;flex-direction:column}
.dashboard-overview>.stat-grid {order:0}.dashboard-overview>.studio-calendar {order:1}
.dashboard-overview>.studio-insights {order:2}.dashboard-overview>.ts-next-steps {order:3}
.dashboard-overview>.achievements-heading,.dashboard-overview>.badge-grid {order:4}
.studio-chart svg text {font-family:var(--font-sans);fill:var(--muted);font-size:11px}.studio-chart .chart-value {fill:var(--ink);font-size:12px;font-weight:600!important}
.studio-chart .chart-bar,.studio-chart .chart-point {fill:#0875ed}.studio-chart .chart-line {fill:none;stroke:#0875ed;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}
.studio-chart .chart-area {fill:#0875ed;opacity:.08}.studio-chart .chart-track {stroke:var(--surface-alt);fill:none;stroke-width:17}
.studio-chart .chart-ring {stroke:#0875ed;fill:none;stroke-width:17;stroke-linecap:round}.studio-chart .chart-ring-value {font-size:29px;fill:var(--ink);font-weight:600!important}
.studio-chart .chart-bar-1 {fill:#45bdc7}.studio-chart .chart-bar-2 {fill:#ff647c}.studio-chart .chart-bar-3 {fill:#78cda4}
.studio-chart details {margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.studio-chart summary {cursor:pointer;font-size:.77rem;color:var(--redesign-accent)}
.studio-chart details>div {overflow:auto}.studio-chart table {margin-top:12px}.studio-chart td,.studio-chart th {padding:8px;font-size:.78rem}
.studio-donut {display:grid;grid-template-columns:150px 1fr;align-items:center;gap:18px;min-height:180px}.studio-donut p {font-size:.85rem}.studio-donut strong {font-size:1.5rem;display:block}
.studio-legend {display:flex;gap:16px;flex-wrap:wrap;font-size:.75rem;color:var(--muted)}.studio-legend span:before {content:'';width:8px;height:8px;border-radius:50%;background:#0875ed;display:inline-block;margin-right:7px}.studio-legend span:nth-child(2):before {background:var(--studio-cyan)}.studio-legend span:nth-child(3):before {background:var(--studio-coral)}
.studio-calendar {padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:20px;margin:24px 0;box-shadow:var(--shadow)}
.studio-calendar-head {display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:20px}.studio-calendar h2 {font-size:1.25rem}.studio-calendar-head p {font-size:.76rem;color:var(--muted);margin-top:5px}
.studio-calendar-controls {display:flex;align-items:center;gap:7px}.studio-calendar-controls button {min-width:38px;min-height:38px;padding:6px 12px}.studio-calendar-controls button:first-child,.studio-calendar-controls button:last-child {font-size:1.1rem}
.studio-week-scroll {overflow:auto;border-radius:14px;scrollbar-width:thin;outline-offset:3px}.studio-week {min-width:740px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:var(--paper);border:1px solid var(--line);border-radius:14px;min-height:235px}
.studio-day {padding:12px 8px;border-right:1px dashed var(--line-strong)}.studio-day:last-child {border-right:0}.studio-day header {text-align:center;border-bottom:1px dashed var(--line-strong);padding-bottom:12px;margin-bottom:14px}
.studio-day header span {display:block;font-size:.7rem;color:var(--muted)}.studio-day header strong {display:inline-flex;align-items:center;justify-content:center;width:29px;height:29px;font-size:.8rem;margin-top:4px;border-radius:50%}.studio-day.today header strong {background:#0875ed;color:white}
.studio-session {border-radius:10px;padding:10px;background:#e8f3ff;color:#175b9b;margin:8px 0;border-left:3px solid #0875ed;overflow-wrap:anywhere}
.studio-session:nth-child(3n) {background:#d6f5f5;border-color:#40b9c3;color:#235e68}.studio-session:nth-child(3n+1) {background:#ffe4e9;border-color:#ff647c;color:#8e3452}
.studio-day:nth-child(3n+2) .studio-session {background:#d6f5f5;border-color:#40b9c3;color:#235e68}.studio-day:nth-child(3n) .studio-session {background:#ffe4e9;border-color:#ff647c;color:#8e3452}
.studio-session strong {display:block;font-size:.76rem}.studio-session p {font-size:.65rem;margin-top:4px}.studio-day-empty {font-size:.7rem!important;color:var(--muted);text-align:center;padding:30px 0}
.studio-calendar-foot {display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:16px;font-size:.75rem;color:var(--muted)}
.studio-calendar-foot a {font-size:.8rem}.studio-calendar .studio-empty-week {font-size:.8rem;color:var(--muted);margin:12px 0 0}
.studio-home-insights {margin:6px 0 18px}.studio-home-insights .studio-chart {padding:22px}.studio-home-insights .studio-chart h3 {font-size:1rem}
.studio-home-insights .studio-chart svg {max-height:190px}
@media(min-width:761px) {.dashboard-overview>.ts-next-steps {border-left:4px solid var(--studio-cyan)}}
@media(max-width:1100px) {.ts-hero{gap:24px}.ts-course-grid{grid-template-columns:1fr}.catalog-card{grid-template-columns:100px minmax(0,1fr)}.card-price{grid-column:2}.dashboard-main{padding:26px}.studio-donut{grid-template-columns:120px 1fr}.studio-chart{padding:20px}}
@media(max-width:760px) {
 .site-header .header-actions{width:auto;flex:0 1 auto;margin-left:auto}.site-header .header-actions .outline-link{display:inline-flex}.site-header .header-actions>a{flex:none;width:auto}
 .site-header,.dashboard-header{padding:16px;gap:12px;position:relative}.dashboard-header .brand{width:auto}.site-header .desktop-nav{gap:22px}.site-header .header-actions{gap:7px}.header-actions a{padding:8px 11px;font-size:.8rem}.site-header .brand{font-size:1.05rem}
 .ts-container{width:calc(100% - 32px)}.ts-hero{grid-template-columns:1fr;padding:18px 0;gap:20px}.ts-hero>div:first-child{padding:12px 0}.ts-hero h1{font-size:2.8rem}.ts-guide{padding:23px}.ts-section{padding:22px 0}.ts-section-head{flex-wrap:wrap;gap:12px}.ts-course-card{grid-template-columns:86px minmax(0,1fr);padding:17px;gap:15px}.ts-cover{min-height:112px}.ts-steps{grid-template-columns:1fr;gap:14px}.ts-teach{padding:25px}.ts-teach h2{font-size:1.55rem}
 .catalog-page{padding:26px 16px}.catalog-layout{grid-template-columns:1fr}.catalog-card{padding:16px;grid-template-columns:76px minmax(0,1fr);gap:15px}.page-heading h1{font-size:2rem}.filters{padding:18px}
 .auth-layout{width:calc(100% - 32px);grid-template-columns:1fr;gap:20px;margin:24px auto}.auth-promise{padding:24px!important}.auth-promise h1{font-size:1.9rem}.login-card{padding:24px}
 .dashboard-shell{display:block}.dashboard-nav{height:auto;top:0;max-height:65dvh}.dashboard-main{padding:22px 16px}.dashboard-title h1{font-size:1.65rem}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat-card{padding:18px}.stat-card strong{font-size:1.65rem}.dashboard-section.panel{padding:20px}.ts-next-steps{padding:22px}.ts-next-steps .ts-actions a{font-size:.8rem;padding:10px 12px}
 .studio-insights{grid-template-columns:1fr;gap:16px;margin:20px 0}.studio-chart{padding:20px}.studio-calendar{padding:18px;margin:20px 0}.studio-calendar-head{align-items:start}.studio-donut{grid-template-columns:130px 1fr}.studio-week{min-width:700px}.studio-calendar-controls{margin-left:auto}
 .studio-plot svg{min-width:500px}.studio-plot svg text{font-size:14px}.studio-plot svg .chart-value{font-size:14px}.studio-chart .studio-caption{line-height:1.65}
 .admin-control .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-control .stat-card{padding:18px}.admin-control .stat-card .stat-value{font-size:1.65rem}.admin-control .dashboard-section.panel{padding:20px}
 .site-footer{padding:26px 20px}.site-footer nav{gap:15px}.cw-body{padding:24px}.record-row{flex-wrap:wrap}.form-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
