:root {
  color-scheme: light;
  --ink: #13211d; --muted: #68756f; --paper: #f3f1e9; --card: rgba(255,255,255,.82);
  --line: rgba(19,33,29,.11); --mint: #bfe8d0; --forest: #173e33; --sun: #ffbd73;
  --shadow: 0 18px 50px rgba(23,62,51,.11); --radius: 26px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; color: var(--ink); background:
  radial-gradient(circle at 8% -5%, #d8eee1 0, transparent 34rem),
  radial-gradient(circle at 92% 10%, #f7d4a7 0, transparent 27rem), var(--paper); }
button,input { font: inherit; }
button { cursor: pointer; }
.shell { width: min(1180px, calc(100% - 32px)); margin: 0 auto; padding: 28px 0 70px; }
.topbar { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:36px; }
.brand { display:flex; align-items:center; gap:12px; font-weight:780; letter-spacing:-.03em; font-size:24px; }
.mark { width:42px; height:42px; border-radius:14px; background:var(--forest); display:grid; place-items:center; color:var(--mint); box-shadow:0 8px 22px rgba(23,62,51,.18); }
.mark svg { width:25px; }
.user-actions { display:flex; align-items:center; gap:10px; }
.admin-button { border:1px solid rgba(23,62,51,.18);background:linear-gradient(135deg,#173e33,#275f4d);color:white;border-radius:14px;padding:10px 15px;font-weight:760;box-shadow:0 8px 22px rgba(23,62,51,.15); }
.admin-button:hover { transform:translateY(-1px);box-shadow:0 12px 26px rgba(23,62,51,.23); }
.avatar { width:38px;height:38px;border-radius:50%;background:var(--mint);display:grid;place-items:center;font-weight:750; }
.ghost,.primary,.mode-button,.power,.temp-button { border:0; border-radius:14px; transition:.18s ease; }
.ghost { background:rgba(255,255,255,.55); padding:10px 14px; color:var(--ink); }
.ghost:hover { background:white; transform:translateY(-1px); }
.primary { background:var(--forest); color:white; padding:13px 18px; font-weight:700; box-shadow:0 10px 25px rgba(23,62,51,.18); }
.primary:hover { transform:translateY(-1px); box-shadow:0 14px 30px rgba(23,62,51,.24); }
.hero { display:grid; grid-template-columns:1.35fr .65fr; align-items:end; gap:30px; margin-bottom:30px; }
.eyebrow { margin:0 0 9px; text-transform:uppercase; letter-spacing:.14em; font-size:12px; font-weight:800; color:#527164; }
h1 { font-family: Georgia, 'Times New Roman', serif; font-size:clamp(42px,7vw,75px); line-height:.92; letter-spacing:-.055em; font-weight:500; margin:0; max-width:750px; }
.hero-side { padding-bottom:4px; }
.hero-side p { color:var(--muted); line-height:1.55; }
.select { width:100%; border:1px solid var(--line); border-radius:15px; background:rgba(255,255,255,.65); padding:13px 14px; color:var(--ink); }
.status { display:flex; align-items:center; gap:8px; font-size:13px; color:var(--muted); margin-top:10px; }
.dot { width:8px;height:8px;border-radius:50%;background:#e19562;box-shadow:0 0 0 4px rgba(225,149,98,.14); }
.dot.online { background:#4c9d72; box-shadow:0 0 0 4px rgba(76,157,114,.14); }
.mode-panel { display:flex; align-items:center; justify-content:space-between; gap:16px; background:rgba(255,255,255,.58); border:1px solid var(--line); padding:12px; border-radius:22px; margin-bottom:22px; backdrop-filter:blur(12px); }
.mode-label { padding:0 8px; font-weight:700; }
.modes { display:flex; gap:7px; flex-wrap:wrap; justify-content:flex-end; }
.mode-button { padding:10px 13px; background:transparent; color:var(--muted); }
.mode-button.active { background:var(--forest); color:white; }
.system-controls { display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:-8px 0 16px; }
.system-controls label { display:block;background:rgba(255,255,255,.58);border:1px solid var(--line);border-radius:18px;padding:14px;font-size:12px;font-weight:750; }
.system-controls label > span { display:block;margin:0 0 8px; }
.system-controls .select { padding:10px 12px;background:white; }
.system-controls small { display:block;color:var(--muted);font-weight:450;line-height:1.35;margin-top:7px; }
.system-controls select:disabled { opacity:.58;cursor:not-allowed; }
.zones { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.zone-card { position:relative; overflow:hidden; background:var(--card); border:1px solid rgba(255,255,255,.75); box-shadow:var(--shadow); border-radius:var(--radius); padding:23px; min-height:310px; }
.zone-card::after { content:''; position:absolute; width:170px;height:170px;border-radius:50%;right:-80px;top:-80px;background:var(--tint,#dcece3);opacity:.55; }
.zone-head { position:relative; z-index:1; display:flex;justify-content:space-between;align-items:center; }
.zone-name { font-weight:760; font-size:18px; }
.subtle { color:var(--muted); font-size:13px; }
.power { width:43px;height:43px;display:grid;place-items:center;background:#edf0ec;color:#88928e;font-size:18px; }
.power.on { background:var(--forest);color:white; }
.temperature { margin:22px 0 17px; display:flex; align-items:flex-start; gap:5px; }
.temperature strong { font-size:70px;line-height:.9;letter-spacing:-.07em;font-weight:580; }
.temperature sup { font-size:22px;margin-top:8px;color:var(--muted); }
.temperature-row { display:flex;align-items:center;justify-content:space-between;gap:14px; }
.climate-icon { position:relative;z-index:1;width:62px;height:62px;border-radius:20px;display:grid;place-items:center;background:#edf1ee;color:#84928c;flex:0 0 auto; }
.climate-icon svg { width:42px;height:42px;overflow:visible; }.climate-icon svg * { fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round;transform-origin:center; }
.climate-icon.cooling { background:#e2f0f5;color:#4c8fa7; }.climate-icon.heating { background:#fff0dc;color:#d77d35; }.climate-icon.fan { background:#dfefe7;color:#398066; }.climate-icon.drying { background:#e7e7f6;color:#696bab; }
.climate-icon.active.cooling { box-shadow:0 0 0 7px rgba(76,143,167,.09); }.climate-icon.active .snow { animation:snow-turn 8s linear infinite; }
.climate-icon.active.heating { animation:heat-halo 2.2s ease-in-out infinite; }.climate-icon.active .sun-rays { animation:sun-pulse 2.2s ease-in-out infinite; }
.climate-icon.active .fan-blades { animation:fan-turn 1.2s linear infinite; }
.climate-icon.drying .drop-main { fill:rgba(105,107,171,.09); }.climate-icon.active .bubble { animation:bubble-rise 1.8s ease-in infinite; }.climate-icon.active .b2 { animation-delay:.7s; }
@keyframes snow-turn { to { transform:rotate(360deg); } }
@keyframes fan-turn { to { transform:rotate(360deg); } }
@keyframes sun-pulse { 50% { transform:scale(1.1);opacity:.75; } }
@keyframes heat-halo { 50% { box-shadow:0 0 0 11px rgba(215,125,53,.08); } }
@keyframes bubble-rise { 0% { transform:translateY(5px);opacity:0; } 40% { opacity:1; } 100% { transform:translateY(-9px);opacity:0; } }
.reading { display:flex; gap:18px; color:var(--muted); font-size:13px; }
.reading b { color:var(--ink); font-weight:700; }
.demand.active { color:#267454; font-weight:750; }
.error-pill { color:#a7523d; font-weight:750; }
.details-link { border:0; background:transparent; color:#3e6959; font-size:12px; font-weight:750; padding:12px 0 0; }
.zone-controls { position:absolute; bottom:22px; left:23px; right:23px; display:flex;align-items:center;justify-content:space-between; }
.setpoint-label { color:var(--muted);font-size:12px; }
.setpoint-value { font-size:20px;font-weight:750; }
.stepper { display:flex;gap:7px; }
.temp-button { width:42px;height:42px;background:#edf0ec;color:var(--ink);font-size:20px; }
.temp-button:hover { background:var(--mint); }
.bottom-grid { display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px; }
.system-block { margin:0 0 34px; }
.system-heading { display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 4px 14px; }
.system-heading .eyebrow { margin-bottom:4px; }
.system-heading h2 { margin:0;font-family:Georgia,serif;font-weight:500;font-size:30px;letter-spacing:-.035em; }
.system-health { color:#34795d;background:#dceee4;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:750; }
.system-health.warning { color:#964d3d;background:#f4ded8; }
.telemetry-strip { display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:20px;overflow:hidden;margin-bottom:12px; }
.telemetry-strip > div { background:rgba(255,255,255,.68);padding:15px 16px; }
.telemetry-strip span { display:block;color:var(--muted);font-size:11px;margin-bottom:5px; }
.telemetry-strip strong { font-size:16px; }
.utility-card { background:rgba(255,255,255,.55); border:1px solid var(--line); border-radius:22px; padding:20px; }
.utility-card h2 { margin:0 0 7px; font-size:17px; }
.utility-card p { margin:0 0 16px; color:var(--muted); font-size:14px; line-height:1.45; }
.control-launchers { grid-template-columns:repeat(2,1fr); }
.control-card { position:relative;overflow:hidden;min-height:170px; }.control-card-icon { width:45px;height:45px;border-radius:14px;display:grid;place-items:center;font-size:22px;margin-bottom:18px; }.scene-icon { background:#e6daf0;color:#78599a; }.insight-icon { background:#d9eee4;color:#35765d; }
.auth-page { min-height:100vh; display:grid;grid-template-columns:1.1fr .9fr; }
.auth-art { padding:clamp(35px,7vw,90px);display:flex;flex-direction:column;justify-content:space-between;background:var(--forest);color:white;overflow:hidden;position:relative; }
.auth-art::before,.auth-art::after { content:'';position:absolute;border-radius:50%;filter:blur(2px); }
.auth-art::before { width:430px;height:430px;right:-160px;top:-90px;background:#295e4d; }
.auth-art::after { width:320px;height:320px;left:-100px;bottom:-120px;background:#d69d5f;opacity:.8; }
.auth-art h1 { position:relative;z-index:1;max-width:600px; }
.auth-art .brand { position:relative;z-index:1; }
.auth-art .mark { background:var(--mint);color:var(--forest); }
.auth-copy { position:relative;z-index:1;max-width:540px;color:#c4d5ce;line-height:1.6; }
.auth-form-wrap { display:grid;place-items:center;padding:35px; }
.auth-form { width:min(420px,100%); }
.auth-form h2 { font-family:Georgia,serif;font-size:38px;font-weight:500;letter-spacing:-.04em;margin:0 0 8px; }
.auth-form > p { color:var(--muted);margin:0 0 28px; }
.field { display:block;margin:0 0 16px;font-size:13px;font-weight:650; }
.field input { display:block;width:100%;margin-top:7px;border:1px solid var(--line);border-radius:14px;padding:14px;background:rgba(255,255,255,.7);outline:none; }
.field input:focus { border-color:#6fa58e;box-shadow:0 0 0 4px rgba(111,165,142,.14); }
.auth-form .primary { width:100%;margin-top:5px; }
.switch-auth { margin-top:20px;text-align:center;color:var(--muted);font-size:14px; }
.link-button { border:0;background:none;color:var(--forest);font-weight:750;padding:0; }
.empty { max-width:650px;margin:80px auto;text-align:center;background:rgba(255,255,255,.6);border:1px solid var(--line);border-radius:30px;padding:50px; }
.empty h1 { font-size:50px;margin-bottom:18px; }
.inline-form { display:flex;gap:9px;margin-top:20px; }
.inline-form input { flex:1;border:1px solid var(--line);border-radius:14px;padding:13px;background:white; }
.dialog-backdrop { position:fixed;inset:0;z-index:10;background:rgba(10,21,17,.48);backdrop-filter:blur(6px);display:grid;place-items:center;padding:20px; }
.dialog { width:min(520px,100%);max-height:90vh;overflow:auto;background:#faf9f4;border-radius:26px;padding:25px;box-shadow:0 28px 80px rgba(0,0,0,.25); }
.dialog-wide { width:min(930px,100%);padding:30px; }
.dialog h2 { margin:0 0 7px;font-family:Georgia,serif;font-size:30px;font-weight:500; }
.dialog p { color:var(--muted);line-height:1.5; }
.dialog-actions { display:flex;justify-content:flex-end;gap:9px;margin-top:20px; }
.code { text-align:center;font-size:35px;letter-spacing:.18em;font-weight:800;background:#e5eee8;padding:17px;border-radius:16px;margin:18px 0;user-select:all; }
pre { overflow:auto;background:#111b18;color:#d8eee3;border-radius:14px;padding:15px;font-size:12px;line-height:1.45; }
.detail-title { display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:18px; }
.detail-title .eyebrow { margin-bottom:4px; }.detail-title h2 { font-size:42px;margin:0; }
.detail-hero { display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0; }
.detail-hero > div { background:#e8efe9;border-radius:18px;padding:16px; }
.detail-hero span,.detail-item span { display:block;color:var(--muted);font-size:11px;margin-bottom:6px; }
.detail-hero strong { font-size:22px; }
.detail-section { border-top:1px solid var(--line);padding:21px 0 4px; }
.detail-section h3 { margin:0 0 14px;font-size:15px; }
.detail-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:9px; }
.detail-item { padding:12px;background:rgba(255,255,255,.75);border:1px solid var(--line);border-radius:14px;min-width:0; }
.detail-item strong { display:block;font-size:13px;overflow-wrap:anywhere; }
.detail-item.good strong,.detail-item.active strong { color:#287455; }
.advanced-form { display:grid;grid-template-columns:1.4fr 1fr auto;gap:12px;align-items:end; }
.advanced-form .field { margin:0; }.advanced-form small { display:block;color:var(--muted);margin-top:4px;font-weight:400; }
.diagnostic-ok { color:#287455;background:#e0efe7;border-radius:14px;padding:14px;font-weight:700; }
.has-errors { background:#fae7e1;margin:16px -16px 0;padding:20px 16px;border-radius:16px; }
.error-list { color:#943f31; }
.raw-data { margin-top:20px;border-top:1px solid var(--line);padding-top:18px; }
.raw-data summary { cursor:pointer;font-weight:750; }
.history-empty { color:var(--muted);background:rgba(255,255,255,.65);border:1px dashed var(--line);padding:24px;text-align:center;border-radius:14px; }
.chart-wrap { background:rgba(255,255,255,.7);border:1px solid var(--line);border-radius:16px;padding:12px; }
.history-chart { width:100%;height:auto;overflow:visible; }
.history-chart line { stroke:#cad4cf;stroke-width:1; }.history-chart polyline { fill:none;stroke-linecap:round;stroke-linejoin:round; }
.temperature-line { stroke:#1d5946;stroke-width:4; }.setpoint-line { stroke:#e99a53;stroke-width:2;stroke-dasharray:7 6; }
.chart-legend { display:flex;gap:16px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:11px;padding:3px 6px; }
.chart-legend i { display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px; }.temp-dot { background:#1d5946; }.setpoint-dot { background:#e99a53; }
.center-tabs { display:flex;gap:6px;margin:20px 0;border-bottom:1px solid var(--line);padding-bottom:10px;overflow-x:auto; }
.center-tabs button { border:0;background:transparent;color:var(--muted);padding:10px 13px;border-radius:12px;white-space:nowrap;font-weight:700; }.center-tabs button.active { background:var(--forest);color:white; }
.center-pane { display:none; }.center-pane.active { display:block; }
.center-section { padding:5px 0 25px; }.center-section + .center-section { border-top:1px solid var(--line);padding-top:24px; }.center-section h3 { margin:0 0 5px; }
.section-title { display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px; }.section-title p { margin:4px 0 0; }.mini { padding:9px 13px;font-size:12px;white-space:nowrap; }
.scene-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:10px; }.scene-card { border:1px solid var(--line);background:white;border-radius:18px;padding:16px;text-align:left;color:var(--ink); }.scene-card:hover { transform:translateY(-2px);box-shadow:var(--shadow); }.scene-card > span { width:36px;height:36px;border-radius:12px;background:#e8efe9;display:grid;place-items:center;font-size:20px;margin-bottom:16px; }.scene-card strong,.scene-card small { display:block; }.scene-card small { color:var(--muted);margin-top:6px;line-height:1.4; }
.automation-list { display:grid;gap:8px; }.automation-row,.alert-row { width:100%;border:1px solid var(--line);background:white;border-radius:16px;padding:13px 15px;display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;text-align:left;color:var(--ink); }.automation-row.disabled { opacity:.55; }.automation-time { font-size:18px;font-weight:800; }.automation-row small,.automation-row strong,.alert-row small,.alert-row strong { display:block; }.automation-row small,.alert-row small { color:var(--muted);margin-top:3px; }.automation-row i { font-style:normal;font-size:11px;color:#34795d; }.rule-glyph { width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:#e5eee9; }
.stats-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:14px; }.recommendations { display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px; }.recommendation { border-radius:16px;padding:15px;background:white;border-left:4px solid #6e9b87; }.recommendation.warning { border-left-color:#df934c; }.recommendation.critical { border-left-color:#ba5140; }.recommendation p { margin:6px 0 0; }
.alert-row > i { width:10px;height:10px;border-radius:50%;background:#d99a53; }.alert-row > i.critical { background:#bc5142; }.alert-row.read { opacity:.55; }
.people-grid { display:flex;gap:10px;flex-wrap:wrap;margin-top:14px; }.person { background:white;border:1px solid var(--line);border-radius:16px;padding:12px;min-width:140px;display:grid;grid-template-columns:35px 1fr;column-gap:9px; }.person > span { grid-row:span 2;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:var(--mint);font-weight:800; }.person strong,.person small { display:block; }.person small { color:var(--muted); }
.timeline { display:grid;gap:0;margin-top:14px; }.timeline > div { display:grid;grid-template-columns:20px 1fr;gap:10px;padding:0 0 18px; }.timeline i { width:9px;height:9px;border-radius:50%;background:#7aa890;margin-top:4px;box-shadow:0 0 0 5px #e3eee8; }.timeline strong,.timeline small { display:block; }.timeline small { color:var(--muted);margin-top:3px; }
.action-builder { display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px; }.action-builder .field { margin-bottom:14px; }.field select { margin-top:7px; }
.day-picker { display:flex;gap:7px;margin:14px 0 18px; }.day-picker input { position:absolute;opacity:0; }.day-picker span { width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#e9ece9;color:var(--muted);font-weight:700;cursor:pointer; }.day-picker input:checked + span { background:var(--forest);color:white; }
.toast { position:fixed;z-index:30;left:50%;bottom:24px;transform:translate(-50%,30px);opacity:0;background:var(--ink);color:white;padding:12px 17px;border-radius:14px;box-shadow:var(--shadow);transition:.25s;pointer-events:none; }
.toast.show { transform:translate(-50%,0);opacity:1; }
.support-banner { position:sticky;top:0;z-index:9;display:flex;align-items:center;justify-content:center;gap:28px;background:#17231f;color:white;padding:12px 22px;box-shadow:0 8px 30px rgba(14,28,23,.2); }
.support-banner div { display:flex;gap:12px;align-items:center; }.support-banner strong { color:#ffcb87; }.support-banner span { color:#c9d5d0;font-size:13px; }
.support-banner button { border:1px solid rgba(255,255,255,.25);background:white;color:#17231f;border-radius:11px;padding:8px 12px;font-weight:800; }
.admin-dialog { width:min(1120px,100%);background:#f6f5ef; }
.admin-head { display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:22px;border-bottom:1px solid var(--line); }
.admin-head h2 { font-size:42px;margin:0; }.admin-head p:last-child { margin:8px 0 0; }
.admin-kpis { display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin:20px 0; }
.admin-kpis article { background:white;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:0 8px 24px rgba(23,62,51,.05); }
.admin-kpis span,.admin-kpis small { display:block;color:var(--muted);font-size:11px; }.admin-kpis strong { display:block;font-size:34px;letter-spacing:-.05em;margin:6px 0 3px; }
.admin-kpis .kpi-alert { background:#fff2e7;border-color:#f0c9a7; }.admin-kpis .kpi-alert strong { color:#a85832; }
.admin-section { border-top:1px solid var(--line);padding:24px 0 5px; }.admin-section h3 { margin:0 0 5px; }.admin-section .section-title { margin-bottom:15px; }
.admin-search { width:min(310px,100%);border:1px solid var(--line);border-radius:14px;padding:11px 13px;background:white; }
.admin-user-list { display:grid;gap:8px; }.admin-user-row { display:grid;grid-template-columns:42px minmax(220px,1fr) auto auto;align-items:center;gap:13px;background:white;border:1px solid var(--line);border-radius:17px;padding:12px; }
.admin-user-avatar { width:42px;height:42px;border-radius:14px;background:#dcece4;display:grid;place-items:center;font-weight:850;color:#245c49; }
.admin-user-row strong,.admin-user-row small { display:block; }.admin-user-row small { color:var(--muted);margin-top:4px;font-size:11px; }.role-badge { display:inline-block!important;background:#1d5140;color:white;border-radius:999px;padding:3px 7px;margin-left:5px;font-size:9px;vertical-align:2px; }
.admin-user-facts { display:flex;gap:7px; }.admin-user-facts span { background:#f0f2ef;color:var(--muted);border-radius:999px;padding:7px 9px;font-size:10px;white-space:nowrap; }.row-actions { display:flex;gap:6px; }
.admin-home-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:10px; }.admin-home-grid > article { background:white;border:1px solid var(--line);border-radius:18px;padding:16px; }.admin-home-top { display:flex;justify-content:space-between;align-items:center;gap:10px; }.admin-home-grid article > small { color:var(--muted);line-height:1.5; }
.admin-home-stats { display:flex;gap:8px;margin:18px 0 12px; }.admin-home-stats span { background:#f0f3f0;border-radius:10px;padding:8px 10px;color:var(--muted);font-size:11px; }.admin-home-stats b { color:var(--ink);font-size:15px; }
.health-badge { border-radius:999px;padding:5px 8px;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap; }.health-badge.good { background:#dcefe4;color:#287455; }.health-badge.warning { background:#fff0d9;color:#9b6529; }.health-badge.danger { background:#f7ded7;color:#a04434; }.health-badge.neutral { background:#edf0ee;color:#6e7a75; }
.admin-error { color:#9c4334;background:#fae6df;border-radius:10px;padding:9px;font-size:11px;overflow-wrap:anywhere; }
.admin-audit { margin-top:15px;display:grid;gap:0; }.admin-audit > div { display:grid;grid-template-columns:18px 1fr;gap:8px;padding:0 0 16px; }.admin-audit i { width:8px;height:8px;border-radius:50%;background:#5b967d;box-shadow:0 0 0 5px #dfece6;margin-top:4px; }.admin-audit strong,.admin-audit small { display:block; }.admin-audit small { color:var(--muted);margin-top:3px; }
.user-diagnostics { grid-template-columns:1fr;margin-top:20px; }.user-diagnostics .detail-grid { margin-top:14px; }.support-confirm { text-align:center; }.support-confirm .field { text-align:left;margin-top:22px; }.support-lock { width:58px;height:58px;margin:0 auto 17px;border-radius:19px;display:grid;place-items:center;background:#dcece4;color:#235b48;font-size:28px; }
@media (max-width:760px) {
  .shell { width:min(100% - 22px,1180px);padding-top:16px; }
  .topbar { margin-bottom:28px; }.user-actions .ghost span { display:none; }
  .hero { grid-template-columns:1fr;gap:18px; }.hero h1 { font-size:52px; }.hero-side { display:flex;gap:12px;align-items:center; }.hero-side .select { flex:1; }.hero-side p { display:none; }
  .mode-panel { align-items:flex-start;flex-direction:column; }.modes { justify-content:flex-start; }.system-controls { grid-template-columns:1fr; }
  .system-heading { align-items:flex-start; }.system-heading h2 { font-size:25px; }.system-health { max-width:130px;text-align:center; }
  .telemetry-strip { grid-template-columns:repeat(2,1fr); }.telemetry-strip > div:last-child { grid-column:span 2; }
  .zones,.bottom-grid { grid-template-columns:1fr; }.zone-card { min-height:290px; }.temperature strong { font-size:62px; }
  .dialog-wide { padding:22px 17px; }.detail-title h2 { font-size:34px; }.detail-hero,.detail-grid { grid-template-columns:repeat(2,1fr); }.advanced-form { grid-template-columns:1fr; }
  .scene-grid,.stats-grid,.recommendations,.action-builder { grid-template-columns:1fr; }.section-title { flex-direction:column; }.control-launchers { grid-template-columns:1fr; }.day-picker { gap:4px; }.day-picker span { width:34px;height:34px; }.temperature-row { align-items:flex-start; }.climate-icon { width:55px;height:55px;border-radius:17px; }
  .auth-page { grid-template-columns:1fr; }.auth-art { min-height:270px;padding:30px; }.auth-art h1 { font-size:45px; }.auth-copy { display:none; }.auth-form-wrap { padding:35px 22px; }
  .support-banner { align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 12px; }.support-banner div { display:block; }.support-banner strong,.support-banner span { display:block; }.support-banner span { margin-top:3px;font-size:11px; }.support-banner button { flex:0 0 auto;font-size:11px; }
  .admin-button { padding:9px 11px;font-size:12px; }.admin-head h2 { font-size:32px; }.admin-kpis { grid-template-columns:repeat(2,1fr); }.admin-user-row { grid-template-columns:42px 1fr; }.admin-user-facts,.admin-user-row .row-actions { grid-column:1/-1; }.admin-user-row .row-actions { justify-content:flex-end; }.admin-home-grid { grid-template-columns:1fr; }.admin-search { width:100%; }.admin-section .section-title { display:grid; }.admin-kpis strong { font-size:28px; }
}
@media (prefers-reduced-motion:reduce) { .climate-icon *,.climate-icon { animation:none!important;transition:none!important; } }
