*{box-sizing:border-box}
:root{--bg:#0d1523;--sidebar:#111c2d;--surface:#172337;--surface-2:#1b2a40;--line:#293a52;--text:#f3f6fc;--muted:#91a1b8;--blue:#6da7ff;--green:#46d6a0;--amber:#f5bd62;--red:#f17c88}
html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:"DM Sans",Arial,sans-serif;font-size:14px}button,input{font:inherit}button{color:inherit}.app-shell{min-height:100vh;display:flex}
.sidebar{width:252px;min-width:252px;background:var(--sidebar);border-right:1px solid #24344b;padding:28px 18px 20px;display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;height:100vh;z-index:20}
.brand{display:flex;align-items:center;gap:12px;padding:0 8px 48px;text-decoration:none;color:inherit}.brand-mark{width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,#6da7ff,#326bd1);display:grid;place-items:center;font:800 23px Manrope;box-shadow:0 8px 24px #397fe344}.brand-copy strong,.brand-copy small{display:block}.brand-copy strong{font:800 13px Manrope;letter-spacing:1.7px}.brand-copy small{font-size:9px;color:#8395af;letter-spacing:1.5px;margin-top:5px}
.nav-caption,.eyebrow{font-size:9px;font-weight:700;letter-spacing:1.5px;color:#7e91ad}.nav-caption{padding:0 11px 12px}.main-nav{display:grid;gap:6px}.nav-item{height:46px;padding:0 12px;border:0;border-radius:9px;background:transparent;color:#aebbd0;text-decoration:none;display:flex;align-items:center;gap:13px;text-align:left;cursor:pointer;font-size:12px;transition:.18s}.nav-item:hover,.nav-item.active{background:#24344c;color:#fff}.nav-item.active{box-shadow:inset 3px 0 #6da7ff}.nav-icon{width:19px;text-align:center;font-size:17px;color:#8fbaff}.nav-count{margin-left:auto;color:#8ea1bb;background:#1b2b41;border-radius:20px;padding:3px 7px;font-size:9px}.nav-external{margin-left:auto;color:#91a4bf}.admin-nav{margin-top:4px}.sidebar-bottom{margin-top:auto}.sidebar-status{display:flex;gap:11px;align-items:center;padding:14px 12px;border:1px solid #2b4058;border-radius:10px;background:#17283a}.pulse-dot,.status-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 12px #46d6a077;flex:none}.sidebar-status strong,.sidebar-status small,.user-profile strong,.user-profile small{display:block}.sidebar-status strong{font-size:11px}.sidebar-status small{font-size:9px;color:#8799b2;margin-top:4px}.user-profile{display:flex;align-items:center;gap:10px;border-top:1px solid #29384e;margin-top:19px;padding:18px 5px 0}.user-avatar,.profile-avatar{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:#2c4566;color:#d8e8ff;font-size:10px;font-weight:700}.user-profile strong{font-size:11px}.user-profile small{font-size:9px;color:#8293aa;margin-top:4px}
.main-content{min-width:0;flex:1;padding:0 42px;max-width:1800px;margin:0 auto}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #26364b}.breadcrumb{font-size:11px;color:#8495ad}.breadcrumb b{font-weight:400;margin:0 11px;color:#52647d}.breadcrumb strong{color:#eaf0fa}.topbar-right{display:flex;align-items:center;gap:14px}.clock{text-align:right}.clock strong{display:block;font:700 13px Manrope}.clock small{display:block;font-size:9px;color:#8293aa;margin-top:4px}.profile-avatar{width:34px;height:34px}.mobile-menu{display:none}
.page{padding-bottom:8px}.hero{margin-top:29px;min-height:280px;border:1px solid #2e4c70;border-radius:17px;background:radial-gradient(ellipse at 77% 48%,#2b4c72 0%,transparent 36%),linear-gradient(112deg,#1b3554,#1a2b43 64%,#1d2b43);position:relative;overflow:hidden;padding:39px 42px;display:flex;align-items:center}.hero-content{position:relative;z-index:2}.eyebrow{display:flex;align-items:center;gap:9px;color:#8bbaff}.eyebrow-line{display:inline-block;width:20px;height:2px;background:#6da7ff}.hero h1,.catalog-hero h1{font:800 clamp(29px,3vw,42px)/1.15 Manrope;letter-spacing:-1.7px;margin:18px 0 11px}.hero h1 span,.catalog-hero h1 span{color:#80b3ff}.hero p,.catalog-hero p{margin:0;color:#b1c1d6;font-size:12px}.primary-button{border:0;border-radius:8px;padding:11px 15px;background:#4c8de9;color:white;text-decoration:none;display:inline-flex;align-items:center;gap:16px;font-size:11px;font-weight:700;cursor:pointer;box-shadow:0 7px 18px #2b6dcc35;transition:.18s}.primary-button:hover{background:#639ff3;transform:translateY(-1px)}.hero .primary-button{margin-top:24px}.hero-art{position:absolute;width:330px;height:260px;right:7%;top:10px;display:grid;place-items:center}.hero-orbit{position:absolute;border:1px solid #8bbaff25;border-radius:50%;transform:rotate(-25deg)}.orbit-one{width:300px;height:155px}.orbit-two{width:235px;height:220px;transform:rotate(55deg)}.hero-core{width:104px;height:104px;border-radius:28px;background:linear-gradient(145deg,#528ee1,#264e86);display:grid;place-items:center;font:800 58px Manrope;color:#eaf3ff;box-shadow:0 0 0 15px #80baff0b,0 20px 60px #07142699}.art-node{position:absolute;width:42px;height:42px;display:grid;place-items:center;border:1px solid #83b6ef45;background:#233f60;border-radius:13px;color:#b6d5ff;font-size:19px;box-shadow:0 8px 22px #07142655}.node-a{top:26px;left:65px}.node-b{right:31px;top:80px}.node-c{bottom:23px;left:85px}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:36px 0 17px}.section-heading h2,.catalog-toolbar h2{font:700 19px Manrope;margin:7px 0 5px}.section-heading p,.catalog-toolbar p{margin:0;color:#8798b0;font-size:11px}.muted-eyebrow{color:#7890ae}.status-actions{display:flex;align-items:center;gap:14px}.last-checked{font-size:10px;color:#8497b1}.secondary-button{height:37px;padding:0 13px;border:1px solid #3b506b;border-radius:8px;background:#1c2b40;color:#d5e4f8;display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:600;cursor:pointer;transition:.18s}.secondary-button:hover{background:#293f5c;border-color:#5c83b6}.secondary-button:disabled{opacity:.6;cursor:wait}
.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.summary-card{min-height:126px;border:1px solid #2a3c54;border-radius:12px;background:linear-gradient(145deg,#1a293e,#172337);padding:17px 18px}.summary-top{display:flex;align-items:center;justify-content:space-between;color:#a7b6ca;font-size:11px}.summary-icon{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;background:#273b54;color:#91baff;font-size:13px}.summary-card strong{display:block;font:800 29px Manrope;margin:8px 0 2px}.summary-card small{color:#71849e;font-size:9px}.online-card strong{color:var(--green)}.attention-card strong{color:var(--amber)}.offline-card strong{color:var(--red)}.services-heading{margin-top:36px}.text-button{border:0;background:transparent;color:#8dbaff;font-size:10px;cursor:pointer}.text-button:hover{color:#c4ddff}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.service-card{min-width:0;text-align:left;border:1px solid #2b3d55;border-radius:12px;background:#19273a;padding:17px;display:flex;flex-direction:column;cursor:pointer;transition:.2s}.service-card:hover{border-color:#5b8ed0;transform:translateY(-2px);background:#1d3049}.service-card-head{display:flex;justify-content:space-between;align-items:center}.service-app-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#253b57;color:#a8ccff;font-size:20px}.status-pill{display:inline-flex;align-items:center;gap:6px;font-size:8px;font-weight:700;letter-spacing:.7px}.status-pill i{width:6px;height:6px;border-radius:50%;background:currentColor}.status-pill.online{color:var(--green)}.status-pill.attention{color:var(--amber)}.status-pill.offline{color:var(--red)}.service-category{margin-top:17px;color:#80aeea;font-size:8px;letter-spacing:1.2px;text-transform:uppercase}.service-card>strong{font:700 14px Manrope;margin-top:6px}.service-message{font-size:10px;color:#9aabc0;margin-top:6px}.service-card-foot{display:flex;justify-content:space-between;border-top:1px solid #2b3b50;margin-top:15px;padding-top:11px;color:#7489a4;font-size:9px}.service-card-foot span:last-child{color:#8ebaff}.loading-state{grid-column:1/-1;border:1px dashed #354963;border-radius:12px;padding:35px;text-align:center;color:#92a4bd;font-size:11px}.error-state{color:#f28c96}.footnote{display:flex;gap:9px;margin:19px 0 0;color:#71849e;font-size:9px;line-height:1.6}.footnote span{color:#8bbaff}
.catalog-hero{margin-top:29px;min-height:190px;border:1px solid #2e4c70;border-radius:15px;background:linear-gradient(110deg,#1d3858,#1c2e47);padding:32px 36px;display:flex;align-items:center;justify-content:space-between}.catalog-hero h1{margin:14px 0 9px}.catalog-total{width:100px;height:100px;border:1px solid #759dcf40;background:#80baff0d;border-radius:23px;display:flex;flex-direction:column;align-items:center;justify-content:center}.catalog-total strong{font:800 32px Manrope;color:#a9ceff}.catalog-total span{font-size:8px;letter-spacing:1px;color:#8ba3c0;margin-top:3px}.catalog-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:32px 0 17px}.search-box{width:min(340px,45%);height:42px;display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid #30435d;border-radius:9px;background:#172438;color:#8ca2bf}.search-box>span{font-size:20px}.search-box input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:white;font-size:11px}.search-box input::placeholder{color:#7386a0}.search-box kbd{font-size:8px;color:#667b98;white-space:nowrap}.filter-row{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:18px}.filter-chip{padding:8px 12px;border:1px solid #2e4058;border-radius:7px;background:#172438;color:#91a2b9;font-size:9px;cursor:pointer;transition:.18s}.filter-chip:hover,.filter-chip.selected{background:#29466b;border-color:#4e7db6;color:#e6f1ff}.application-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.application-card{min-width:0;min-height:202px;padding:17px;text-align:left;border:1px solid #2b3d55;border-radius:12px;background:linear-gradient(145deg,#1a293e,#172337);display:flex;flex-direction:column;cursor:pointer;transition:.2s}.application-card:hover{transform:translateY(-3px);border-color:#5b8ed0;background:#1d3049;box-shadow:0 12px 30px #050c1666}.application-card[hidden]{display:none}.card-top{display:flex;align-items:center;justify-content:space-between}.app-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:22px}.app-icon.blue,.modal-app-icon.blue{background:#243e61;color:#8dbbff}.app-icon.green,.modal-app-icon.green{background:#20483f;color:#75d9b2}.app-icon.orange,.modal-app-icon.orange{background:#4b3b29;color:#f4c27b}.app-icon.purple,.modal-app-icon.purple{background:#3d3159;color:#c2a5ff}.app-icon.gray,.modal-app-icon.gray{background:#353e4c;color:#c5d0df}.card-arrow{color:#8093ac;font-size:17px}.app-tag{color:#82aee6;font-size:8px;letter-spacing:1.2px;margin-top:17px}.app-name{font:700 14px Manrope;margin-top:6px}.app-description{font-size:10px;color:#95a6bc;line-height:1.6;margin-top:6px;min-height:32px}.card-footer{display:flex;justify-content:space-between;gap:8px;align-items:center;border-top:1px solid #2b3b50;margin-top:auto;padding-top:12px;color:#778ba5;font-size:9px}.open-label{color:#8dbaff}.open-label b{font-weight:400}.empty-state{text-align:center;padding:65px 15px;color:#8295af}.empty-state>div{font-size:32px}.empty-state h3{color:#eef3fb;font:700 16px Manrope}.empty-state p{font-size:11px}
footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #25364b;margin-top:44px;padding:18px 0 22px;color:#71839c;font-size:9px}footer i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:6px}
.modal-backdrop{position:fixed;inset:0;z-index:50;background:#050b14c9;backdrop-filter:blur(7px);display:grid;place-items:center;padding:20px}.modal-backdrop[hidden]{display:none}.app-modal{position:relative;width:min(480px,100%);border:1px solid #3b506b;border-radius:17px;background:linear-gradient(145deg,#1c2c42,#142135);padding:27px;box-shadow:0 25px 90px #0009;animation:modal-in .18s ease}@keyframes modal-in{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-close{position:absolute;right:17px;top:14px;width:31px;height:31px;border:1px solid #344861;border-radius:8px;background:#22344b;color:#aebed2;font-size:21px;cursor:pointer}.modal-heading{display:flex;align-items:center;gap:14px;padding-right:35px}.modal-app-icon{width:49px;height:49px;border-radius:13px;display:grid;place-items:center;font-size:24px;background:#243e61;color:#8dbbff}.modal-heading h2{font:700 20px Manrope;margin:5px 0 0}.modal-description{font-size:11px;color:#9eafc4;line-height:1.6;margin:18px 0}.modal-status-panel{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border:1px solid #30445e;border-radius:11px;background:#17263a}.modal-label{display:block;color:#7e93ad;font-size:8px;letter-spacing:1.1px;font-weight:700}.modal-status-line{display:flex;align-items:center;gap:8px;margin-top:9px}.status-dot.online{background:var(--green);box-shadow:0 0 12px #46d6a077}.status-dot.attention{background:var(--amber);box-shadow:0 0 12px #f5bd6277}.status-dot.offline{background:var(--red);box-shadow:0 0 12px #f17c8877}.modal-status-text{font:700 12px Manrope}.modal-status-text.online{color:var(--green)}.modal-status-text.attention{color:var(--amber)}.modal-status-text.offline{color:var(--red)}.modal-http{text-align:right}.modal-http strong{display:block;margin-top:8px;font:700 12px Manrope;color:#e1eafa}.modal-meta{display:grid;gap:13px;padding:16px 2px}.modal-meta div span{display:block;color:#7e93ad;font-size:9px;margin-bottom:5px}.modal-meta div strong{display:block;color:#c8d5e6;font-size:10px;overflow-wrap:anywhere;font-weight:500}.modal-actions{display:flex;justify-content:space-between;gap:10px;margin-top:5px}.modal-actions .primary-button{justify-content:center}.modal-hint{font-size:9px;line-height:1.5;color:#71849d;margin:15px 0 0}.modal-open{overflow:hidden}
@media(max-width:1100px){.main-content{padding:0 27px}.application-grid,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-art{right:1%}}
@media(max-width:760px){.sidebar{position:fixed;left:0;top:0;transform:translateX(-105%);transition:transform .22s;box-shadow:15px 0 40px #0007}.sidebar.open{transform:translateX(0)}.main-content{padding:0 17px}.topbar{height:65px;gap:12px}.mobile-menu{display:block;border:0;background:transparent;color:#e9f1fc;font-size:20px;cursor:pointer}.breadcrumb{margin-right:auto;font-size:10px}.clock small{display:none}.hero{margin-top:19px;min-height:260px;padding:28px 23px}.hero h1{font-size:30px}.hero p{max-width:260px;line-height:1.6}.hero-art{opacity:.35;right:-100px;top:20px;transform:scale(.8)}.section-heading{align-items:flex-start;flex-direction:column;margin-top:28px}.status-actions{width:100%;justify-content:space-between}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.summary-card{padding:14px;min-height:112px}.summary-card strong{font-size:25px}.service-grid,.application-grid{grid-template-columns:1fr}.service-card{padding:16px}.catalog-hero{margin-top:19px;padding:25px 22px;min-height:165px}.catalog-hero h1{font-size:30px}.catalog-total{width:75px;height:75px;flex:none}.catalog-total strong{font-size:25px}.catalog-toolbar{align-items:stretch;flex-direction:column;margin-top:27px}.search-box{width:100%}.filter-row{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px}.filter-chip{white-space:nowrap}.application-card{min-height:185px}.status-heading{gap:14px}.last-checked{font-size:9px}footer{flex-direction:column}.app-modal{padding:22px}.modal-actions{flex-direction:column-reverse}.modal-actions>*{width:100%;justify-content:center}.modal-backdrop{padding:12px}}

/* v3 security and administration workspace */
.logout-form{display:inline-flex;margin-right:14px}.logout-button,.table-action{border:1px solid #38506c;background:#1b2b42;color:#a9c9f5;border-radius:8px;padding:8px 11px;cursor:pointer;font:inherit;font-size:12px}.logout-button:hover,.table-action:hover{background:#294361}.admin-toolbar{display:flex;justify-content:space-between;align-items:end;gap:18px;margin:34px 0 16px}.admin-toolbar h2{margin:7px 0}.admin-toolbar p{margin:0;color:#91a8c8;font-size:13px}.admin-table-wrap{overflow:auto;border:1px solid #2b405c;border-radius:13px;background:#142238;margin-bottom:26px}.admin-table{width:100%;border-collapse:collapse;min-width:760px;text-align:left;font-size:12px}.admin-table th{color:#91b9f3;text-transform:uppercase;font-size:10px;letter-spacing:1px;background:#1a2b43}.admin-table th,.admin-table td{padding:14px 15px;border-bottom:1px solid #2b405c}.admin-table td{color:#c7d6ea}.admin-table td small{display:block;color:#7892b5;margin-top:4px}.admin-table tr:last-child td{border-bottom:0}.url-cell{max-width:230px;overflow-wrap:anywhere;color:#8db8f5!important}.table-action{padding:6px 9px}.table-action.danger{color:#ff9aa8;border-color:#744354}.admin-note{display:flex;justify-content:space-between;gap:12px;padding:18px;border:1px solid #2b405c;border-radius:12px;color:#c7d6ea}.admin-note a{color:#80b4ff;text-decoration:none}.admin-form{max-height:90vh;overflow:auto}.admin-form h2{margin:8px 0 20px}.admin-form label{display:block;color:#a9bdd9;font-size:12px;margin:12px 0}.admin-form input:not([type=checkbox]),.admin-form textarea,.admin-form select{display:block;width:100%;margin-top:6px;padding:11px 12px;border-radius:8px;border:1px solid #38506c;background:#101b2c;color:#eef5ff;font:inherit}.admin-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-form .check-label{display:flex;align-items:center;gap:9px}.admin-form .modal-actions{justify-content:flex-end}.form-message{color:#ff9aa8;font-size:12px}.admin-form .modal-close{position:sticky;float:right;top:0}.status-pill{white-space:nowrap}.status-pill.online{color:#47d9a4}.status-pill.attention{color:#ffc66d}.status-pill.offline{color:#ff7787}
@media(max-width:700px){.admin-toolbar{align-items:flex-start;flex-direction:column}.admin-note{flex-direction:column}.logout-form{margin-right:6px}.admin-form .form-grid{grid-template-columns:1fr}}


/* Theme switcher */
.theme-toggle{height:34px;padding:0 11px;border:1px solid #3b506b;border-radius:8px;background:#1c2b40;color:#d5e4f8;display:inline-flex;align-items:center;gap:7px;font-size:10px;font-weight:600;cursor:pointer;white-space:nowrap}
.theme-toggle:hover{border-color:#6da7ff;background:#263b56}

/* Light theme: keep the same layout and brand accents, change surface contrast. */
:root[data-theme="light"]{color-scheme:light;--bg:#f3f6fb;--sidebar:#ffffff;--surface:#ffffff;--surface-2:#edf2f8;--line:#d8e1ec;--text:#172337;--muted:#61728a;--blue:#286fd1;--green:#149b70;--amber:#bd7918;--red:#d34f61}
:root[data-theme="light"] body{background:var(--bg);color:var(--text)}
:root[data-theme="light"] .sidebar{border-right-color:#dce4ee}
:root[data-theme="light"] .nav-item{color:#52647c}
:root[data-theme="light"] .nav-item:hover,:root[data-theme="light"] .nav-item.active{background:#e8f0fb;color:#1b3d68}
:root[data-theme="light"] .nav-count{background:#edf2f8;color:#526985}
:root[data-theme="light"] .sidebar-status{background:#f1f6fc;border-color:#dce5ef}
:root[data-theme="light"] .sidebar-status strong,:root[data-theme="light"] .user-profile strong{color:#203149}
:root[data-theme="light"] .user-profile{border-top-color:#e0e7f0}
:root[data-theme="light"] .topbar{border-bottom-color:#dce4ee}
:root[data-theme="light"] .breadcrumb strong{color:#1e2e45}
:root[data-theme="light"] .clock strong{color:#1e2e45}
:root[data-theme="light"] .hero,:root[data-theme="light"] .catalog-hero{background:linear-gradient(112deg,#e5effd,#dce9fa 64%,#eaf1fb);border-color:#c5d8f1;color:#172d4b}
:root[data-theme="light"] .hero p,:root[data-theme="light"] .catalog-hero p{color:#536b89}
:root[data-theme="light"] .hero-art .hero-orbit{border-color:#477eb329}
:root[data-theme="light"] .section-heading p,:root[data-theme="light"] .catalog-toolbar p{color:#657791}
:root[data-theme="light"] .summary-card{background:#fff;border-color:#dce4ee;box-shadow:0 3px 12px #19385b08}
:root[data-theme="light"] .summary-top{color:#53647c}
:root[data-theme="light"] .summary-icon{background:#edf3fb;color:#3977c5}
:root[data-theme="light"] .summary-card small{color:#78889e}
:root[data-theme="light"] .service-card,:root[data-theme="light"] .application-card{background:#fff;border-color:#dce4ee;color:#1c2d44;box-shadow:0 3px 12px #19385b08}
:root[data-theme="light"] .service-card:hover,:root[data-theme="light"] .application-card:hover{background:#f8fbff;border-color:#8fb4e3}
:root[data-theme="light"] .service-app-icon,:root[data-theme="light"] .app-icon{background:#edf3fb;color:#3977c5}
:root[data-theme="light"] .service-message,:root[data-theme="light"] .app-description{color:#61728a}
:root[data-theme="light"] .service-card-foot{border-top-color:#e5ebf2;color:#78889e}
:root[data-theme="light"] .service-card-foot span:last-child,:root[data-theme="light"] .open-label{color:#286fd1}
:root[data-theme="light"] .search-box,:root[data-theme="light"] .filter-chip{background:#fff;border-color:#d5dfeb;color:#52647c}
:root[data-theme="light"] .search-box input{color:#1e2e45}
:root[data-theme="light"] .search-box input::placeholder{color:#8997a9}
:root[data-theme="light"] .filter-chip:hover,:root[data-theme="light"] .filter-chip.selected{background:#e5effc;border-color:#9dbce2;color:#24558f}
:root[data-theme="light"] .admin-table-wrap{background:#fff;border-color:#dce4ee}
:root[data-theme="light"] .admin-table th{background:#edf3fa;color:#526985;border-bottom-color:#dce4ee}
:root[data-theme="light"] .admin-table td{color:#34465e;border-bottom-color:#e6ecf3}
:root[data-theme="light"] .admin-table tr:hover td{background:#f8fbff}
:root[data-theme="light"] .admin-table small{color:#8190a4}
:root[data-theme="light"] .secondary-button,:root[data-theme="light"] .theme-toggle,:root[data-theme="light"] .logout-button{background:#fff;border-color:#d1dce9;color:#38516f}
:root[data-theme="light"] .secondary-button:hover,:root[data-theme="light"] .theme-toggle:hover,:root[data-theme="light"] .logout-button:hover{background:#edf4fd;border-color:#9dbce2}
:root[data-theme="light"] .table-action{background:#f4f7fb;border-color:#d5dfeb;color:#315987}
:root[data-theme="light"] .table-action.danger{color:#c34455;border-color:#efc8ce;background:#fff7f8}
:root[data-theme="light"] .modal-backdrop{background:#18283dcc}
:root[data-theme="light"] .app-modal{background:#fff;border-color:#d3deeb;color:#1d2d43;box-shadow:0 25px 80px #1b355533}
:root[data-theme="light"] .app-modal p,:root[data-theme="light"] .app-modal label{color:#5e7088}
:root[data-theme="light"] .modal-status-box,:root[data-theme="light"] .admin-form input,:root[data-theme="light"] .admin-form textarea,:root[data-theme="light"] .admin-form select{background:#f4f7fb;border-color:#d7e1ed;color:#1d2d43}
:root[data-theme="light"] .modal-url,:root[data-theme="light"] .modal-meta{color:#667991}
:root[data-theme="light"] .footnote,:root[data-theme="light"] footer{color:#77879c}
:root[data-theme="light"] .loading-state{border-color:#ccd9e8;color:#657791}
@media(max-width:700px){.theme-toggle{height:32px;padding:0 8px}.theme-toggle span{display:none}}

/* Analytics v5 */
.analytics-toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:26px 0 18px}
.analytics-filters{display:flex;gap:12px;flex-wrap:wrap}
.analytics-filters label{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:700}
.analytics-filters select{min-width:175px;padding:11px 13px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit}
.analytics-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:18px}
.analytics-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px}
.analytics-panel{min-width:0;padding:22px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}
.analytics-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.analytics-panel-head h2{margin:5px 0 0;font-size:18px;color:var(--text)}
.chart-unit{font-size:11px;color:var(--muted)}.analytics-chart{min-height:235px;position:relative}
.analytics-chart svg{display:block;width:100%;height:auto;overflow:visible}
.chart-axis,.chart-gridline{stroke:var(--border);stroke-width:1}.chart-gridline{stroke-dasharray:4 5}
.chart-label{fill:var(--muted);font-size:11px}
.chart-summary{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:5px 0 8px}
.chart-summary strong{font-size:24px;color:var(--text)}.chart-summary span,.chart-summary small{font-size:11px;color:var(--muted)}
.analytics-empty{display:grid;place-items:center;min-height:190px;color:var(--muted);font-size:13px;text-align:center;padding:20px}
.analytics-details{margin-bottom:22px}.analytics-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.analytics-detail-grid div{display:grid;gap:7px;padding:14px;border-radius:11px;background:var(--surface-2,var(--bg))}
.analytics-detail-grid span{font-size:11px;color:var(--muted)}.analytics-detail-grid strong{font-size:13px;color:var(--text);overflow-wrap:anywhere}
.analytics-note{font-size:12px;line-height:1.7;color:var(--muted);margin:16px 0 0}
@media(max-width:900px){.analytics-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-chart-grid{grid-template-columns:1fr}}
@media(max-width:560px){.analytics-toolbar{align-items:stretch;flex-direction:column}.analytics-filters{display:grid;grid-template-columns:1fr}.analytics-filters select{width:100%}.analytics-kpi-grid{gap:9px}.analytics-detail-grid{grid-template-columns:1fr}.analytics-panel{padding:16px}}
