:root{font-family:Microsoft YaHei UI,Microsoft YaHei,sans-serif;color:#17202a;background:#f4f7f8;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1fr) minmax(320px,.8fr);background:#f4f7f8}.login-panel{width:min(440px,calc(100% - 48px));margin:auto}.login-panel h1{font-size:34px;margin:52px 0 8px;letter-spacing:0}.login-panel>p{color:#63717a;margin:0 0 32px}.login-panel form{display:grid;gap:18px}.login-page aside{background:#17202a;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:64px;border-left:7px solid #0f766e}.login-page aside strong{font-size:28px}.login-page aside span{color:#a9bbc2;margin-top:8px}.brand-mark{display:flex;align-items:center;gap:9px;font-weight:700}.shell{min-height:100vh;display:grid;grid-template-columns:228px minmax(0,1fr)}.dashboard-heading{border-bottom:1px solid #dce5e7;padding-bottom:24px}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:26px}.metric-card{min-height:154px;display:grid;align-content:space-between;padding:20px;border:1px solid #dce5e7;border-radius:18px;background:#fff;box-shadow:0 14px 34px #17202a0e}.metric-card>span,.metric-card small{color:#63717a}.metric-card strong{font-size:clamp(34px,4vw,54px);line-height:1;font-variant-numeric:tabular-nums}.metric-card.positive{border-color:#9ed7c7;background:linear-gradient(145deg,#f1fbf7,#fff)}.metric-card.danger{border-color:#efc2b9;background:linear-gradient(145deg,#fff6f2,#fff)}.signal-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:18px;overflow:hidden;border-radius:18px;background:#2b3a43;color:#fff}.signal-strip>div{display:grid;gap:9px;padding:20px;background:#17202a}.signal-strip span,.signal-strip small{color:#a9bbc2}.signal-strip small{grid-column:1 / -1;padding:13px 18px;background:#22313a}@media(max-width:980px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.sidebar{background:#17202a;color:#edf5f5;padding:24px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.sidebar .brand-mark{padding:4px 10px}.edition{color:#8da0a8;font-size:12px;padding:7px 39px 24px}.sidebar nav{display:grid;gap:5px}.sidebar nav button,.logout{border:0;background:transparent;color:#aebfc5;display:flex;gap:11px;align-items:center;padding:11px 12px;border-radius:6px;text-align:left}.sidebar nav button.active{background:#25343a;color:#fff;box-shadow:inset 3px 0 #20a394}.logout{margin-top:auto}.workspace{padding:38px 44px 64px;min-width:0}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}.page-header h1{font-size:28px;margin:3px 0 5px}.page-header p{color:#6d7b83;margin:0}.eyebrow{color:#0f766e;font-size:12px;font-weight:700}.button{min-height:40px;border:1px solid #0f766e;background:#0f766e;color:#fff;border-radius:6px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600}.button:hover{background:#0b655e}.button:disabled{opacity:.55;cursor:wait}.button.secondary{background:#fff;color:#26343b;border-color:#cbd5d9}.button.danger{background:#fff;color:#b73535;border-color:#e7bcbc}.icon-button{width:36px;height:36px;border:0;background:transparent;border-radius:4px;font-size:24px;color:#66767d}.table-section{background:#fff;border:1px solid #dfe6e8;border-radius:7px;overflow:hidden}.table-toolbar{height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid #e7ecee}.text-button{border:0;background:transparent;color:#0f766e;display:inline-flex;align-items:center;gap:7px}.loading{padding:50px;text-align:center;color:#78878e}table{width:100%;border-collapse:collapse}.publish-statistics,.device-overview{margin-top:18px}.publish-statistics .table-toolbar>div{display:grid;gap:3px}.publish-statistics .table-toolbar small,.publish-statistics td small{display:block;margin-top:3px;color:#7a888e;font-size:10px}.publish-statistics td{white-space:nowrap}.publish-statistics .danger-number{color:#ad3f3a;font-weight:700}.table-scroll{overflow-x:auto}th{color:#68777e;font-size:12px;text-align:left;background:#f8fafb;padding:11px 16px}td{padding:15px 16px;border-top:1px solid #edf1f2}tbody tr{cursor:pointer}tbody tr:hover{background:#f8fbfb}td small{display:block;color:#7b898f;margin-top:4px}.status-tag{display:inline-flex;padding:3px 8px;border-radius:999px;font-size:12px;background:#eef2f3;color:#526168}.status-tag.positive{background:#e4f4ef;color:#08685d}.status-tag.warning{background:#fff3d9;color:#946115}.status-tag.danger{background:#fae9e7;color:#aa3731}.field{display:grid;gap:7px;color:#435158;font-size:13px}.field input,.field select,.field textarea,select{height:42px;border:1px solid #cbd5d9;border-radius:5px;background:#fff;padding:0 11px;color:#17202a}.field textarea{min-height:110px;padding:11px;resize:vertical}.field input:focus,.field select:focus{outline:3px solid #cbe9e5;border-color:#0f766e}.field textarea:focus{outline:3px solid #cbe9e5;border-color:#0f766e}.checkbox-field{display:flex;align-items:center;gap:8px;color:#435158;font-size:13px}.row-actions{display:flex;gap:7px}.row-actions button{border:1px solid #bfd1d3;border-radius:5px;background:#fff;color:#0f766e;padding:5px 9px}.releases-table code{color:#43575d;font-size:12px}.modal-backdrop{position:fixed;inset:0;z-index:50;background:#111d227a;display:grid;place-items:center;padding:24px}.modal{width:min(720px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;border-radius:7px;box-shadow:0 24px 60px #0e1e2440}.modal>header{height:64px;padding:0 22px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5ebed}.modal h2{font-size:19px;margin:0}.form-grid{padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid .full{grid-column:1 / -1}.form-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:5px}.form-error,.error-banner{color:#a62e2e;background:#fceceb;border:1px solid #efc5c2;border-radius:5px;padding:10px 12px}.error-banner{margin-bottom:16px}.empty-state{padding:70px 24px;text-align:center}.empty-state strong{font-size:17px}.empty-state p{color:#718087;margin:8px 0 0}.one-time-secret{padding:28px;display:grid;gap:16px}.one-time-secret p{color:#64747a;margin:0}.one-time-secret code{background:#eef5f4;color:#0a645b;padding:16px;border-radius:5px;font-size:16px}.service-rail{padding:28px 26px 18px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px}.service-rail i{height:4px;background:linear-gradient(90deg,#0f766e 0 72%,#d8e2e4 72%);border-radius:2px}.service-rail div{display:grid;gap:4px}.service-rail span,dt{font-size:12px;color:#718087}.service-rail strong{font-family:Bahnschrift,sans-serif}.details{padding:0 26px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.details div{border-top:1px solid #e6ecee;padding-top:12px}.details dd{margin:6px 0}.action-bar{padding:24px 26px;border-top:1px solid #e4eaec;margin-top:20px;display:flex;align-items:flex-end;gap:9px}.action-bar .field{margin-right:auto}@media(max-width:800px){.login-page{grid-template-columns:1fr}.login-panel{width:calc(100% - 52px);min-width:0}.login-panel form,.login-panel .field,.login-panel input,.login-panel .button{width:100%;max-width:100%;min-width:0}.login-panel form{grid-template-columns:minmax(0,1fr)}.login-page aside{display:none}.shell{grid-template-columns:72px minmax(0,1fr)}.sidebar .brand-mark{font-size:0}.edition,.sidebar nav button:not(.active){font-size:0}.sidebar nav button{justify-content:center}.workspace{padding:26px 20px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:1}.page-header{align-items:flex-start;flex-direction:column}.details{grid-template-columns:1fr}.action-bar{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
