:root{--ink:#172033;--muted:#68748a;--line:#e6eaf0;--canvas:#f5f7fb;--panel:#fff;--blue:#246bfd;--blue-soft:#eef4ff;--green:#16834a;--orange:#d56a18;--shadow:0 10px 30px rgba(27,45,82,.07)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--canvas)}button,input,select{font:inherit}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:#172238;color:#fff;padding:28px 18px;display:flex;flex-direction:column;z-index:3}.brand{display:flex;gap:12px;align-items:center;padding:0 10px 28px}.brand-mark{width:46px;height:46px;border-radius:15px;background:linear-gradient(145deg,#ffc749,#ff8a1e);display:grid;place-items:center;color:#3f2a00;font-size:23px;font-weight:900;box-shadow:0 8px 20px rgba(255,160,31,.24)}.brand strong,.brand span,.operator strong,.operator span{display:block}.brand strong{font-size:18px}.brand span{color:#aeb8ca;font-size:12px;margin-top:4px}.nav{display:grid;gap:7px}.nav-item{width:100%;border:0;background:transparent;color:#bac4d4;border-radius:12px;padding:12px 14px;display:flex;gap:12px;align-items:center;cursor:pointer;text-align:left}.nav-item span{width:27px;height:27px;border-radius:8px;background:#24324b;display:grid;place-items:center;color:#8fa1bc;font-size:12px}.nav-item:hover,.nav-item.active{background:#263754;color:#fff}.nav-item.active span{background:#3476f6;color:#fff}.sidebar-foot{margin-top:auto;padding:16px 12px;color:#c3cddd;font-size:13px;line-height:1.8}.sidebar-foot i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#38c67d;margin-right:8px}.sidebar-foot small{color:#8190a7}.main{margin-left:248px;min-height:100vh;padding:0 34px 42px}.topbar{height:92px;display:flex;align-items:center;justify-content:space-between}.topbar h1{margin:0;font-size:24px}.topbar p{margin:6px 0 0;color:var(--muted);font-size:13px}.operator{display:flex;align-items:center;gap:10px;background:#fff;padding:9px 13px;border:1px solid var(--line);border-radius:14px}.operator-avatar{width:36px;height:36px;border-radius:12px;background:#fff3da;color:#9e6417;display:grid;place-items:center;font-weight:800}.operator strong{font-size:13px}.operator span{font-size:11px;color:var(--muted);margin-top:3px}.environment-banner{display:flex;gap:12px;align-items:center;background:#fff7e8;border:1px solid #f4dfb2;color:#70501d;padding:12px 16px;border-radius:12px;font-size:13px;margin-bottom:24px}.environment-banner strong{background:#f4b947;color:#4e3302;border-radius:7px;padding:4px 8px;font-size:12px}.view{display:none}.view.active{display:block}.status-hero{min-height:190px;border-radius:22px;background:linear-gradient(120deg,#1c5fe7,#3a83f6 62%,#6ca6ff);padding:34px 38px;color:#fff;display:flex;align-items:center;justify-content:space-between;box-shadow:0 18px 45px rgba(36,107,253,.2)}.eyebrow{font-size:11px;letter-spacing:1.8px;opacity:.75}.status-hero h2{font-size:30px;margin:12px 0}.status-hero p{margin:0;max-width:680px;color:#eaf1ff;line-height:1.7}.hero-badge{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.32);padding:12px 17px;border-radius:999px;font-size:13px}.hero-badge i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#70efa9;margin-right:8px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0}.metric{background:#fff;border:1px solid var(--line);border-radius:17px;padding:20px;box-shadow:var(--shadow)}.metric span,.metric small{display:block}.metric span{font-size:13px;color:var(--muted)}.metric strong{display:block;font-size:30px;margin:10px 0}.metric .text-value{font-size:22px}.metric .success{color:var(--green)}.metric small{font-size:11px;color:#93a0b2}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow)}.full-panel{min-height:570px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.panel-head h3{margin:0;font-size:18px}.panel-head p{margin:6px 0 0;color:var(--muted);font-size:12px}.timeline{list-style:none;margin:0;padding:0}.timeline li{display:flex;gap:12px;align-items:flex-start;position:relative;padding-bottom:20px}.timeline li:not(:last-child):before{content:"";position:absolute;left:14px;top:29px;width:2px;height:calc(100% - 3px);background:#e4e9f1}.timeline b{width:30px;height:30px;border-radius:10px;background:#edf0f5;color:#8b98aa;display:grid;place-items:center;z-index:1}.timeline .done b{background:#e4f6ec;color:var(--green)}.timeline .current b{background:#eaf1ff;color:var(--blue)}.timeline strong,.timeline span{display:block}.timeline strong{font-size:13px}.timeline span{font-size:12px;color:var(--muted);margin-top:4px}.security-list{display:grid;gap:12px}.security-list>div{display:flex;gap:12px;align-items:center;padding:10px;background:#f8f9fc;border-radius:12px}.security-list i{width:31px;height:31px;border-radius:10px;background:#eef0f4;color:#8b96a8;display:grid;place-items:center;font-style:normal}.security-list i.ok{background:#e4f6ec;color:var(--green)}.security-list strong,.security-list small{display:block}.security-list strong{font-size:13px}.security-list small{font-size:11px;color:var(--muted);margin-top:3px}.toolbar-head{align-items:center}.primary-button,.secondary-button{border:0;border-radius:10px;padding:10px 15px;font-weight:700;cursor:pointer}.primary-button{background:var(--blue);color:#fff;box-shadow:0 7px 18px rgba(36,107,253,.2)}.primary-button.disabled{background:#aeb8c8;box-shadow:none;cursor:not-allowed}.secondary-button{background:#edf1f6;color:#4e5b70}.filters{display:flex;gap:10px;align-items:center;background:#f8f9fc;padding:12px;border-radius:13px;margin-bottom:14px}.filters input,.filters select{height:38px;border:1px solid #dce2eb;border-radius:9px;background:#fff;padding:0 12px;color:var(--ink)}.filters input{min-width:320px}.data-label{margin-left:auto;border-radius:999px;padding:6px 10px;background:#eaf1ff;color:#2a63c7;font-size:11px;font-weight:700}.data-label.warning{background:#fff1df;color:#b25d16}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:13px}table{border-collapse:collapse;width:100%;min-width:900px}th,td{padding:14px 15px;text-align:left;border-bottom:1px solid #edf0f4;font-size:12px;vertical-align:middle}th{background:#fafbfc;color:#718096;font-weight:600}tbody tr:hover{background:#fafcff}td strong,td small{display:block}td small{color:var(--muted);margin-top:4px}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;background:#eef4ff;color:#3768c5;font-size:11px;font-weight:700}.status-pill.orange{background:#fff1df;color:#b65b10}.status-pill.green{background:#e7f7ed;color:var(--green)}.status-pill.muted{background:#edf0f4;color:#657287}.empty-state{text-align:center;padding:60px;color:var(--muted)}.notice-card{background:#fff8eb;border:1px solid #f3dfba;border-radius:12px;padding:14px 16px;margin-top:16px}.notice-card strong{font-size:13px}.notice-card p{font-size:12px;color:#78613d;line-height:1.7;margin:5px 0 0}.authorization-grid{grid-template-columns:1fr 1.2fr}.auth-illustration{height:165px;display:flex;align-items:center;justify-content:center;gap:18px}.link-node{width:70px;height:70px;border-radius:22px;background:#fff2d8;color:#9b6418;display:grid;place-items:center;font-size:22px;font-weight:900}.link-node.platform{background:#eaf1ff;color:#2866cf;font-size:13px;text-align:center}.auth-illustration span{width:80px;height:3px;background:repeating-linear-gradient(90deg,#cbd4e2 0 7px,transparent 7px 13px)}.form-note{font-size:12px;color:var(--muted);line-height:1.7}.field-label{font-size:12px;font-weight:700;display:block;margin:15px 0 7px}.copy-field{display:flex}.copy-field input,.readonly-field{height:42px;border:1px solid #dce2eb;background:#f8f9fc;padding:0 12px;color:#415067}.copy-field input{flex:1;border-radius:10px 0 0 10px}.copy-field button{border:0;background:#273851;color:#fff;padding:0 16px;border-radius:0 10px 10px 0;cursor:pointer}.readonly-field{display:flex;align-items:center;border-radius:10px}.check-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.check-list p{margin:0;font-size:12px;color:#43516a}.check-list i{font-style:normal;color:var(--green);margin-right:6px}.check-list .pending i{color:#9aa5b4}dialog{border:0;padding:0;border-radius:18px;box-shadow:0 25px 80px rgba(18,32,61,.25);width:min(520px,calc(100% - 30px))}dialog::backdrop{background:rgba(14,24,43,.5)}.dialog-card{padding:24px}.dialog-head{display:flex;justify-content:space-between}.dialog-head h3{margin:0}.dialog-head p{margin:5px 0 18px;color:var(--muted);font-size:12px}.icon-button{border:0;background:transparent;font-size:25px;color:#7d899b;cursor:pointer}.dialog-card label{display:block;font-size:12px;font-weight:700;margin-top:13px}.dialog-card label input{display:block;width:100%;height:42px;border:1px solid #dce2eb;border-radius:10px;padding:0 11px;margin-top:7px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}#toast{position:fixed;right:28px;bottom:28px;background:#172238;color:#fff;padding:12px 16px;border-radius:10px;box-shadow:var(--shadow);font-size:13px;opacity:0;transform:translateY(15px);pointer-events:none;transition:.2s;z-index:20}#toast.show{opacity:1;transform:translateY(0)}@media(max-width:1050px){.metric-grid{grid-template-columns:repeat(2,1fr)}.two-column{grid-template-columns:1fr}.filters input{min-width:180px}.authorization-grid{grid-template-columns:1fr}}@media(max-width:760px){.sidebar{position:static;width:auto;padding:16px}.nav{grid-template-columns:repeat(4,1fr)}.nav-item{justify-content:center;padding:9px;font-size:0}.nav-item span{font-size:12px}.sidebar-foot{display:none}.main{margin:0;padding:0 16px 30px}.topbar{height:80px}.operator{display:none}.environment-banner{align-items:flex-start;line-height:1.5}.status-hero{padding:28px 22px}.hero-badge{display:none}.status-hero h2{font-size:24px}.metric-grid{grid-template-columns:1fr 1fr}.filters{flex-wrap:wrap}.filters input,.filters select{min-width:0;width:100%}.data-label{margin-left:0}.check-list{grid-template-columns:1fr}}
