.admin-page { display:block; height:calc(100vh - 50px); overflow:auto; padding:30px clamp(18px,4vw,58px) 60px; color:#173643; }
.admin-hero { max-width:1400px; margin:0 auto 22px; }
.admin-hero h1 { margin:6px 0; font-size:clamp(30px,4vw,46px); }
.admin-hero p { margin:0; color:#657d87; }
.admin-hero-meta { display:flex; align-items:center; justify-content:space-between; gap:14px; }.admin-external-links { display:flex; flex-wrap:wrap; gap:8px; }.admin-kuma-link,.admin-search-link,.admin-cloudflare-link,.admin-connect-link,.admin-shelly-link { display:inline-flex; align-items:center; min-height:38px; padding:0 14px; border-radius:9px; background:#5b3f91; color:#fff; font-size:13px; font-weight:850; text-decoration:none; }.admin-search-link { background:#176789; }.admin-cloudflare-link{background:#d96716}.admin-connect-link{background:#b51f4d}.admin-shelly-link{background:#1696c8}
.admin-service-strip { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; max-width:1400px; margin:0 auto 14px; }.admin-service-strip a { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:8px; padding:11px 13px; border-radius:11px; background:#fff; color:#173643; text-decoration:none; box-shadow:0 5px 18px rgba(18,70,89,.08); }.admin-service-strip i,.admin-integrity i { width:10px; height:10px; border-radius:50%; background:#22c55e; }.admin-service-strip .is-critical i,.admin-integrity .is-warning i{background:#ef4444}.admin-service-strip .is-info i{background:#3b82f6}.admin-service-strip span{font-weight:850}.admin-service-strip strong{color:#6a818b;font-size:11px}
.admin-attention{max-width:1400px;margin:0 auto 16px;padding:16px;border-radius:14px;background:#fff;box-shadow:0 7px 25px rgba(18,70,89,.1)}.admin-attention header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.admin-attention header span{color:#6a818b;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.admin-attention h2{margin:2px 0 0;font-size:20px}.admin-attention header>strong{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff0d9;color:#9a5500}.admin-attention>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:8px}.admin-attention a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;border-radius:9px;background:#fff8eb;color:#173643;text-decoration:none}.admin-attention a.is-critical{background:#ffebe9}.admin-attention a i,.admin-attention>p i{width:10px;height:10px;border-radius:50%;background:#eab308}.admin-attention a.is-critical i{background:#ef4444}.admin-attention a span{display:grid;gap:3px}.admin-attention a small{color:#687f89;line-height:1.35}.admin-attention a b{color:#176789}.admin-attention.is-clear{border-left:5px solid #22c55e}.admin-attention.is-clear header>strong{background:#ddf4e5;color:#176438}.admin-attention>p{display:flex;align-items:center;gap:9px;margin:0}.admin-attention>p i{background:#22c55e}.admin-attention>p span{color:#687f89}
.admin-message { max-width:1400px; margin:0 auto 14px; padding:12px 15px; border-radius:10px; font-weight:750; }
.admin-message.is-success { background:#ddf4e5; color:#176438; }.admin-message.is-error { background:#ffebe9; color:#a12620; }
.admin-nav { position:sticky; z-index:5; top:0; display:flex; gap:8px; max-width:1400px; margin:0 auto 18px; padding:9px; overflow:auto; border-radius:13px; background:rgba(238,246,249,.94); backdrop-filter:blur(10px); }
.admin-nav a { padding:8px 12px; border-radius:999px; background:#fff; color:#176789; text-decoration:none; font-size:13px; font-weight:800; white-space:nowrap; }
.admin-section { max-width:1400px; margin:0 auto 20px; padding:20px; scroll-margin-top:70px; border-radius:16px; background:#fff; box-shadow:0 7px 25px rgba(18,70,89,.1); }
.admin-section-heading { display:flex; justify-content:space-between; align-items:end; gap:15px; margin-bottom:15px; }.admin-section-heading span { color:#6a818b; font-size:11px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }.admin-section-heading h2 { margin:3px 0 0; font-size:21px; }.admin-section-heading a { color:#176789; font-weight:800; text-decoration:none; }
.admin-status-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:10px; }.admin-status-card { display:grid; gap:5px; padding:13px; border-left:5px solid #22c55e; border-radius:10px; background:#f2f8fa; }.admin-status-card.is-warning { border-left-color:#eab308; }.admin-status-card.is-critical { border-left-color:#ef4444; }.admin-status-card small { color:#71868f; }
.admin-jobs { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:8px; margin:15px 0; }.admin-jobs div { display:flex; justify-content:space-between; gap:10px; padding:10px 12px; border-radius:9px; background:#edf5f7; }.admin-jobs time { color:#5d7480; font-size:12px; }
.admin-form { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:14px; align-items:end; }.admin-form label { display:grid; gap:6px; color:#536e79; font-size:12px; font-weight:800; }.admin-form input,.admin-form select { width:100%; height:42px; padding:0 11px; border:1px solid #b9cdd5; border-radius:8px; background:#fff; color:#173643; font:inherit; }.admin-form small { color:#7a8e96; font-weight:500; line-height:1.4; }.admin-check { display:flex!important; align-items:center; align-self:center; grid-template-columns:auto 1fr; }.admin-check input,.admin-sitemap input { width:18px; height:18px; accent-color:#00658b; }
.admin-save,.admin-action { min-height:42px; padding:0 17px; border:0; border-radius:9px; background:#00658b; color:#fff; font-weight:850; cursor:pointer; }.admin-action { background:#5b3f91; }
.admin-metric-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:10px; }.admin-metric-grid article { display:grid; gap:5px; padding:14px; border-radius:11px; background:#edf5f7; }.admin-metric-grid span { color:#637b85; font-size:11px; font-weight:850; text-transform:uppercase; }.admin-metric-grid strong { font-size:18px; }.admin-metric-grid .is-ok,.admin-ok{color:#19713c}.admin-metric-grid .is-critical{color:#b42318}.admin-ok,.admin-note{margin:14px 0 0}.admin-warning{display:grid;gap:7px;margin-top:14px;padding:12px;border-radius:9px;background:#ffebe9;color:#9c251d}.admin-warning code{white-space:pre-wrap}
.admin-explained-metric{grid-column:span 2}.admin-explained-metric strong{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.admin-explained-metric em{padding:3px 7px;border-radius:999px;background:#dde8ec;color:#536e79;font-size:10px;font-style:normal;text-transform:uppercase}.admin-explained-metric em.is-ok{background:#d9f4e2;color:#176438}.admin-explained-metric em.is-warning{background:#fff1c7;color:#845900}.admin-explained-metric em.is-critical{background:#ffddd9;color:#a12620}.admin-explained-metric small{color:#647b85;line-height:1.4}
.admin-security-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:12px; margin-top:14px; }.admin-security-grid>div { padding:14px; border:1px solid #dce8ec; border-radius:11px; }.admin-security-grid h3 { margin:0 0 10px; font-size:15px; }.admin-security-grid p { display:flex; justify-content:space-between; gap:10px; margin:6px 0; }.admin-security-grid code { overflow-wrap:anywhere; }
.admin-heading-actions{display:flex;gap:12px}.admin-archive-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.admin-archive-grid article{display:grid;gap:4px;padding:13px;border-radius:10px;background:#edf5f7}.admin-archive-grid span{color:#637b85;font-size:11px;font-weight:850;text-transform:uppercase}.admin-archive-grid strong{font-size:18px}.admin-archive-grid small{color:#6a818b}.admin-integrity{display:grid;gap:9px;margin-top:15px}.admin-integrity article{padding:12px 14px;border-left:4px solid #22c55e;border-radius:9px;background:#f2f8fa}.admin-integrity article.is-warning{border-left-color:#ef4444;background:#fff1f0}.admin-integrity article.is-acknowledged{border-left-color:#3b82f6;background:#eff6ff}.admin-integrity article>div{display:flex;align-items:center;gap:9px}.admin-integrity article span{color:#6a818b;font-size:12px}.admin-integrity p{margin:8px 0 0;line-height:1.5}.admin-integrity p strong{margin-left:8px}.admin-integrity article.is-acknowledged i{background:#3b82f6}.admin-gap-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:12px;padding-top:12px;border-top:1px solid rgba(180,35,24,.15)}.admin-gap-form label{display:grid;gap:6px}.admin-gap-form label span{font-size:12px}.admin-gap-form input{width:100%;height:40px;padding:0 10px;border:1px solid #c7d7dd;border-radius:8px;background:#fff;color:#173643}.admin-gap-form button{min-height:40px;padding:0 14px;border:0;border-radius:8px;background:#176789;color:#fff;font-weight:850;cursor:pointer}.admin-gap-history{margin-top:10px}.admin-gap-history summary{cursor:pointer;color:#1d4f91;font-size:12px;font-weight:850}.admin-gap-acknowledged{display:grid!important;gap:4px!important;margin-top:10px;padding:11px;border-radius:8px;background:rgba(59,130,246,.09)}.admin-gap-acknowledged strong{color:#1d4f91}.admin-gap-acknowledged small{color:#657d87}
.admin-growth-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-top:14px}.admin-growth-grid article{display:grid;gap:4px;padding:13px;border:1px solid #dce8ec;border-radius:10px}.admin-growth-grid span{color:#637b85;font-size:11px;font-weight:850;text-transform:uppercase}.admin-growth-grid strong{font-size:17px}.admin-growth-grid small{color:#6a818b;line-height:1.35}
.admin-action-grid { display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }.admin-download { display:inline-grid; place-items:center; min-height:42px; padding:0 17px; border-radius:9px; background:#2d6d59; color:#fff; font-weight:850; text-decoration:none; }
.admin-backups { display:grid; gap:8px; margin-top:14px; }.admin-backups article { display:flex; justify-content:space-between; align-items:center; gap:15px; padding:12px; border-radius:10px; background:#edf5f7; }.admin-backups article>div { display:flex; align-items:center; gap:12px; }.admin-backups article>div:first-child { display:grid; gap:3px; }.admin-backups span { color:#657d87; font-size:12px; }.admin-backups form { display:inline; }.admin-backups button,.admin-audit button { padding:7px 10px; border:0; border-radius:7px; background:#7b3f3f; color:#fff; font-weight:800; cursor:pointer; }.admin-backups a { color:#176789; font-weight:800; text-decoration:none; }
.admin-backup-actions{display:flex;flex-wrap:wrap;gap:10px}.admin-backup-actions form{margin:0}.admin-backup-actions button:disabled{cursor:not-allowed;opacity:.48}.admin-cloud-backup-status{display:grid;gap:4px;margin:14px 0;padding:12px;border-left:4px solid #22c55e;border-radius:9px;background:#edf8f1}.admin-cloud-backup-status.is-warning{border-left-color:#eab308;background:#fff8df}.admin-cloud-backup-status span{color:#657d87;font-size:12px}.admin-cloud-backups{margin-bottom:18px}
.admin-room-grid,.admin-threshold-grid { grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); }
.admin-stations-section>.admin-section-heading>strong{color:#607984;font-size:12px}.admin-station-manager{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.admin-station-manager>section{min-width:0;border:1px solid #d6e4e9;border-radius:12px;overflow:hidden}.admin-station-manager>section>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;background:#edf5f7}.admin-station-manager h3{margin:0;font-size:15px}.admin-station-manager header small{display:block;margin-top:2px;color:#6d838c}.admin-station-manager input[type=search]{width:min(270px,50%);height:38px;padding:0 10px;border:1px solid #b9cdd5;border-radius:8px;background:#fff;color:#173643}.admin-station-catalog,.admin-station-selected{height:420px;overflow:auto;padding:7px}.admin-station-catalog>button,.admin-station-selected>article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px;width:100%;min-height:52px;margin-bottom:6px;padding:8px 10px;border:0;border-radius:8px;background:#f5f9fa;color:#173643;text-align:left}.admin-station-catalog>button{cursor:pointer}.admin-station-catalog>button:hover{background:#e2f0f4}.admin-station-catalog span,.admin-station-selected article>span:nth-child(2){display:grid;gap:2px}.admin-station-catalog small,.admin-station-selected small{color:#6b818a;font-size:10px}.admin-station-catalog i{padding:3px 6px;border-radius:999px;background:#dff3e5;color:#176438;font-size:9px;font-style:normal;font-weight:850;text-transform:uppercase}.admin-station-catalog i.is-historical{background:#ece8f5;color:#61478c}.admin-station-catalog b{font-size:20px;color:#087097}.admin-station-selected>article{grid-template-columns:auto minmax(0,1fr) auto;border:1px solid #dce8ec;background:#fff}.admin-station-selected>article.is-dragging{opacity:.45}.admin-station-drag{color:#8da0a7;cursor:grab;font-weight:900;letter-spacing:-3px}.admin-station-selected article>div{display:flex;gap:4px}.admin-station-selected button{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:6px;background:#e5f0f3;color:#176789;font-weight:900;cursor:pointer}.admin-station-selected [data-station-remove]{background:#f7e7e5;color:#a12620}.admin-station-save{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:13px}.admin-station-save small{color:#657d87;line-height:1.4}
.admin-station-catalog>button[hidden]{display:none}
.admin-sitemap { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:10px; }.admin-sitemap label { display:flex; align-items:center; gap:10px; padding:11px; border-radius:9px; background:#edf5f7; }.admin-sitemap label.is-readonly { opacity:.62; cursor:not-allowed; }.admin-sitemap label.is-readonly small { margin-left:auto; text-align:right; font-size:10px; }.admin-sitemap .admin-save { grid-column:1/-1; justify-self:start; }
.admin-audit { display:grid; gap:7px; }.admin-audit article { display:grid; grid-template-columns:145px minmax(160px,.6fr) 110px minmax(0,2fr); gap:10px; align-items:start; padding:10px; border-bottom:1px solid #e3ecef; font-size:12px; }.admin-audit code { overflow-wrap:anywhere; white-space:pre-wrap; }
.admin-audit-filter{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr)) auto auto;gap:10px;align-items:end;margin-bottom:10px;padding:12px;border-radius:10px;background:#edf5f7}.admin-audit-filter label{display:grid;gap:5px}.admin-audit-filter label span{color:#536e79;font-size:11px;font-weight:850}.admin-audit-filter select,.admin-audit-filter input{width:100%;height:40px;padding:0 9px;border:1px solid #b9cdd5;border-radius:8px;background:#fff;color:#173643}.admin-audit-filter button,.admin-audit-filter>a{display:grid;place-items:center;min-height:40px;padding:0 13px;border:0;border-radius:8px;background:#176789;color:#fff;font-weight:850;text-decoration:none;cursor:pointer}.admin-audit-filter>a{background:#657d87}.admin-audit-count{margin:7px 0;color:#6a818b;font-size:12px}
html.dark .admin-page { color:#eaf3f5; } html.dark .admin-nav { background:rgba(24,29,31,.94); } html.dark .admin-nav a,html.dark .admin-section,html.dark .admin-form input,html.dark .admin-form select,html.dark .admin-service-strip a,html.dark .admin-gap-form input,html.dark .admin-attention,html.dark .admin-station-selected>article,html.dark .admin-station-manager input[type=search] { background:#242a2d;color:#eef5f7; } html.dark .admin-status-card,html.dark .admin-jobs div,html.dark .admin-sitemap label,html.dark .admin-metric-grid article,html.dark .admin-backups article,html.dark .admin-archive-grid article,html.dark .admin-integrity article,html.dark .admin-audit-filter,html.dark .admin-station-manager>section>header,html.dark .admin-station-catalog>button { background:#30383c;color:#eef5f7; } html.dark .admin-security-grid>div,html.dark .admin-growth-grid article,html.dark .admin-station-manager>section { border-color:#3b4549; } html.dark .admin-audit article { border-bottom-color:#3b4549; }
@media(max-width:900px){.admin-station-manager{grid-template-columns:1fr}.admin-station-catalog,.admin-station-selected{height:340px}}
@media(max-width:750px){.admin-audit article{grid-template-columns:1fr}.admin-section-heading,.admin-hero-meta{align-items:start;flex-direction:column}.admin-external-links,.admin-heading-actions{width:100%}.admin-service-strip{grid-template-columns:1fr}.admin-nav{border-radius:0}.admin-sitemap .admin-save{width:100%}.admin-backups article,.admin-backups article>div{align-items:flex-start;flex-direction:column}.admin-station-manager>section>header,.admin-station-save{align-items:stretch;flex-direction:column}.admin-station-manager input[type=search]{width:100%}.admin-station-save .admin-save{width:100%}}
