/* Site surfaces follow the active theme; illustrated garment colors are renderer data. */
.school-uniform{--uniform-surface:#fff;--uniform-stage:#eaf0f8;--uniform-text:var(--ink,#15345d);--uniform-muted:var(--muted,#64758b);--uniform-line:var(--line,#e0e7ef);--uniform-focus:#bd9439;--uniform-gold:#8c6a1f;--uniform-selected:#ecf1fa;--uniform-error:#a22525;max-width:480px;min-width:0;width:100%;margin:0 auto 28px;color:var(--uniform-text);font:inherit;text-align:right;overflow-wrap:anywhere}
html[data-theme="dark"] .school-uniform{--uniform-surface:var(--dark-paper,#1a293c);--uniform-stage:#22364f;--uniform-focus:#d4af57;--uniform-gold:#e5c879;--uniform-selected:#2a405d;--uniform-error:#ffb4b4}
.school-uniform,.school-uniform *{box-sizing:border-box}
.school-uniform [hidden]{display:none!important}
.school-uniform button,.school-uniform input,.school-uniform select{font:inherit;touch-action:manipulation;min-height:44px}
.school-uniform button{cursor:pointer}
.school-uniform button:disabled,.school-uniform input:disabled,.school-uniform select:disabled{cursor:default;opacity:.5}
.school-uniform button:focus-visible,.school-uniform input:focus-visible,.school-uniform select:focus-visible,.school-uniform summary:focus-visible{outline:3px solid var(--uniform-focus);outline-offset:3px}
.school-uniform .uniform-description{margin:0 0 18px;color:var(--uniform-muted);font-size:14px;line-height:1.9}
body.school-app .school-uniform>.uniform-description{display:none}
.school-uniform .uniform-grade-label{display:flex;align-items:center;gap:15px;padding:12px 14px;margin:0 0 14px;border:1px solid var(--uniform-line);border-radius:13px;background:var(--uniform-surface);font-size:13px;font-weight:700}
.school-uniform .uniform-grade-label select{flex:1;min-width:0;max-width:100%;margin:0;padding:7px 9px;border:0;background:var(--uniform-surface);color:var(--uniform-text)}
.school-uniform .uniform-genders{display:flex;gap:4px;padding:5px;margin-bottom:15px;border:1px solid var(--uniform-line);border-radius:13px;background:var(--uniform-surface)}
.school-uniform .uniform-genders button{flex:1;min-width:0;padding:8px 5px;border:0;border-radius:9px;background:transparent;color:var(--uniform-muted);font-size:13px}
.school-uniform .uniform-genders button[aria-pressed="true"]{background:var(--uniform-selected);color:var(--uniform-text);font-weight:700}
.school-uniform .uniform-layout,.school-uniform .uniform-explorer,.school-uniform .uniform-editor{min-width:0}
.school-uniform .uniform-outfit{padding:13px 12px 12px;border:1px solid var(--uniform-line);border-radius:22px;background:var(--uniform-surface)}
.school-uniform .uniform-outfit-top{display:flex;justify-content:space-between;align-items:center;gap:8px;color:var(--uniform-muted);font-size:11px;line-height:1.8}
.school-uniform .uniform-outfit-top strong{min-width:0;color:var(--uniform-text);font-size:12px;font-weight:600}
.school-uniform .uniform-badge{display:flex;align-items:center;gap:5px;flex:none;color:var(--uniform-gold);font-size:11px}
.school-uniform .uniform-badge::before{content:"";width:5px;height:5px;flex:none;border-radius:50%;background:currentColor}
.school-uniform .uniform-art{position:relative;height:330px;overflow:hidden;direction:ltr;isolation:isolate;margin:7px 0 0;transition:height .25s ease}
.school-uniform .uniform-art::before{content:"";position:absolute;width:90%;height:74%;border-radius:50%;background:var(--uniform-stage);left:5%;top:16%;z-index:-1}
.school-uniform .uniform-art[data-zoom="true"]{height:460px}
.school-uniform .uniform-art canvas{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;user-select:none;pointer-events:none}
.school-uniform .uniform-art-feedback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;padding:16px;text-align:center;pointer-events:none}
.school-uniform .uniform-art-feedback p{max-width:280px;color:var(--uniform-muted);font-size:13px;line-height:1.9;margin:0}
.school-uniform .uniform-art-feedback button{pointer-events:auto}
.school-uniform .uniform-figure-names{display:flex;justify-content:space-around;direction:ltr;margin:0 0 4px;color:var(--uniform-muted);font-size:12px}
.school-uniform .uniform-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;min-height:44px}
.school-uniform .uniform-toolbar>span{font-size:13px;color:var(--uniform-muted)}
.school-uniform .uniform-zoom{display:flex;align-items:center;justify-content:center;gap:6px;flex:none;padding:7px 10px;border:1px solid var(--uniform-line);border-radius:11px;background:var(--uniform-surface);color:var(--uniform-text);font-size:12px}
.school-uniform .uniform-zoom>span:first-child{font:24px Arial,sans-serif;line-height:1}
.school-uniform .uniform-details{display:grid;gap:0;margin:5px 0 0;padding:0;list-style:none}
.school-uniform .uniform-details li{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--uniform-line);font-size:13px;line-height:1.8}
.school-uniform .uniform-details li:last-child{border-bottom:0}
.school-uniform .uniform-swatch{width:24px;height:24px;flex:none;border-radius:8px;background:var(--uniform-cloth);box-shadow:inset 0 0 0 1px #8b96a966}
.school-uniform .uniform-details strong{font-weight:600;flex:1;min-width:0}
.school-uniform .uniform-detail-value{max-width:56%;color:var(--uniform-muted);text-align:left}
.school-uniform .uniform-winter{margin-top:14px;padding:3px 13px;border:1px solid var(--uniform-line);border-radius:14px;background:var(--uniform-surface)}
.school-uniform .uniform-winter summary{display:flex;align-items:center;gap:8px;min-height:48px;list-style:none;font-size:13px;font-weight:700;cursor:pointer}
.school-uniform .uniform-winter summary::-webkit-details-marker{display:none}
.school-uniform .uniform-winter summary>span:first-child{font-size:20px;color:var(--uniform-gold)}
.school-uniform .uniform-chevron{margin-right:auto;transition:transform .2s}
.school-uniform .uniform-winter[open] .uniform-chevron{transform:rotate(180deg)}
.school-uniform .uniform-winter p{margin:0 0 12px;color:var(--uniform-muted);font-size:13px;line-height:1.9}
.school-uniform .uniform-fields{display:grid;gap:10px;margin-top:18px}
.school-uniform .uniform-color-field{display:flex;align-items:center;gap:11px;min-height:76px;padding:10px 12px;border:1px solid var(--uniform-line);border-radius:13px;background:var(--uniform-surface)}
.school-uniform .uniform-color-field>span{flex:1;min-width:0}
.school-uniform .uniform-color-field strong{display:block;font-size:13px;font-weight:700}
.school-uniform .uniform-color-field small{display:block;margin-top:3px;color:var(--uniform-muted);font-size:11px}
.school-uniform input[type="color"]{width:51px;min-width:51px;height:46px;padding:3px;border:1px solid var(--uniform-line);border-radius:10px;background:var(--uniform-stage);cursor:pointer}
.school-uniform .uniform-choose-gender{padding:16px;border:1px solid var(--uniform-line);border-radius:13px;background:var(--uniform-surface);font-size:14px;line-height:1.9;color:var(--uniform-muted)}
.school-uniform .uniform-guidance{margin:17px 0 0;font-size:12px;line-height:1.9;color:var(--uniform-muted)}
.school-uniform .uniform-actions{display:flex;gap:8px;margin-top:15px}
.school-uniform .uniform-save{flex:1;min-height:46px;padding:9px 12px;border:1px solid var(--uniform-text);border-radius:11px;background:var(--uniform-text);color:var(--uniform-surface);font-size:14px;font-weight:700}
.school-uniform .uniform-cancel,.school-uniform .uniform-reload,.school-uniform .uniform-presets{min-height:46px;padding:9px 15px;border:1px solid var(--uniform-line);border-radius:11px;background:var(--uniform-surface);color:var(--uniform-text);font-size:13px}
.school-uniform .uniform-presets{width:100%;margin-top:12px}
.school-uniform .uniform-status{min-height:24px;margin:9px 0 0;font-size:12px;line-height:1.9;color:var(--uniform-muted)}
.school-uniform .uniform-error{margin:8px 0 12px;font-size:13px;line-height:1.9;color:var(--uniform-error)}
body[data-active-view="uniform"] #school-group-picker{display:none}
@media(min-width:800px){.school-uniform-admin{max-width:780px}.school-uniform-admin .uniform-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:start}.school-uniform-admin .uniform-fields{margin-top:0}.school-uniform-admin .uniform-editor{padding-top:35px}.school-uniform-admin .uniform-actions{max-width:360px;margin-right:auto}}
@media(max-width:360px){.school-uniform .uniform-art{height:300px}.school-uniform .uniform-art[data-zoom="true"]{height:410px}.school-uniform .uniform-outfit{padding:12px 8px}.school-uniform .uniform-grade-label{gap:8px;padding:10px;font-size:12px}.school-uniform .uniform-outfit-top{gap:6px}.school-uniform .uniform-outfit-top strong{font-size:11px}.school-uniform .uniform-badge{font-size:10px}.school-uniform .uniform-details li{font-size:12px}}
@media(prefers-reduced-motion:reduce){.school-uniform *{transition:none!important}}
