:root{--bg:#f3f5f1;--panel:#fff;--ink:#17201a;--muted:#68736c;--line:#dce2dc;--accent:#166534;--accent2:#dcfce7;--danger:#b42318;--shadow:0 18px 55px rgba(22,42,28,.09);font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.login-shell{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 15%,#d7f5df,transparent 34%),radial-gradient(circle at 85% 80%,#e4ead9,transparent 30%),#f4f6f1;padding:24px}.login-card{width:min(430px,100%);background:rgba(255,255,255,.88);backdrop-filter:blur(14px);padding:42px;border:1px solid rgba(255,255,255,.9);border-radius:26px;box-shadow:var(--shadow)}.brand-mark{width:52px;height:52px;border-radius:16px;background:var(--ink);color:#baf7c9;display:grid;place-items:center;font:bold 25px Georgia;margin-bottom:24px}.brand-mark.small{width:34px;height:34px;border-radius:10px;font-size:17px;margin:0}.eyebrow{margin:0 0 7px;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.18em}.login-card h1,.main h1{margin:0;font-size:31px;letter-spacing:-.04em}.muted{color:var(--muted);line-height:1.6}.login-card label,.dialog-form label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:700;margin-top:24px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:11px;background:#fbfcfa;color:var(--ink);padding:12px 13px;outline:none;transition:.15s}input:focus,select:focus,textarea:focus{border-color:#62a976;box-shadow:0 0 0 3px rgba(34,139,70,.12)}textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.primary,.ghost{border-radius:11px;padding:11px 16px;font-weight:750;border:1px solid transparent}.primary{background:var(--ink);color:white}.primary:hover{background:#294034}.ghost{background:white;border-color:var(--line);color:var(--ink)}.wide{width:100%;margin-top:22px}.error-text{color:var(--danger);font-size:13px;min-height:20px}.app-shell{min-height:100vh;display:grid;grid-template-columns:230px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:22px 17px;background:#142018;color:#edf7ef;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;font-weight:800;padding:0 7px 25px}.sidebar nav{display:grid;gap:5px}.sidebar nav button{border:0;background:transparent;color:#aebbb1;text-align:left;border-radius:10px;padding:12px 14px}.sidebar nav button:hover,.sidebar nav button.active{background:#26362b;color:#fff}.sidebar-foot{margin-top:auto;color:#9fb0a3;font-size:12px;padding:14px 8px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.status-dot{width:8px;height:8px;border-radius:50%;background:#5ee784;box-shadow:0 0 14px #5ee784}.link-button{margin-left:auto;background:none;border:0;color:#c7d3c9;font-size:12px}.main{padding:34px 42px;min-width:0}.main>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:34px}.page{display:none}.page.active{display:block}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.summary-card,.panel,.item-card,.table-wrap{background:var(--panel);border:1px solid var(--line);border-radius:17px;box-shadow:0 8px 26px rgba(25,50,32,.04)}.summary-card{padding:22px}.summary-card span{font-size:12px;color:var(--muted)}.summary-card strong{display:block;font-size:34px;margin-top:8px}.panel{padding:24px;margin-top:18px}.panel h2,.section-head h2{margin:0 0 5px;font-size:19px}.architecture{display:flex;justify-content:space-between;align-items:center;gap:30px}.architecture>div:first-child{max-width:470px}.flow{display:flex;align-items:center;gap:10px;white-space:nowrap}.flow span{padding:12px 14px;background:#f2f6f2;border:1px solid var(--line);border-radius:10px;font-size:12px;font-weight:750}.flow b{color:#72a57f}.endpoint{display:flex;align-items:center;gap:12px;background:#142018;color:#d9fbe2;padding:13px 14px;border-radius:11px;margin-top:15px;overflow:hidden}.endpoint code{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.copy-button{margin-left:auto;border:0;background:#314438;color:white;border-radius:8px;padding:7px 10px;white-space:nowrap}.small-text{font-size:12px}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.item-card{padding:20px}.item-card h3{margin:12px 0 6px;font-size:17px}.item-top{display:flex;justify-content:space-between;align-items:center}.provider-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--accent2);color:var(--accent);font-weight:850}.pill{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef2ee;color:#667168;font-size:11px}.pill.ok{background:#e3f8e8;color:#1b6d35}.pill.off{background:#f3e8e6;color:#9a3128}.card-meta{display:grid;gap:7px;margin:16px 0;color:var(--muted);font-size:12px}.card-meta div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-actions{display:flex;gap:8px;border-top:1px solid var(--line);padding-top:14px}.small-button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 9px;font-size:12px}.small-button.danger{color:var(--danger)}.empty{padding:42px;text-align:center;color:var(--muted);border:1px dashed #cbd3cb;border-radius:16px;grid-column:1/-1}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:14px 16px;text-align:left;border-bottom:1px solid #edf0ed;white-space:nowrap}th{color:#69736b;font-size:11px;text-transform:uppercase;letter-spacing:.06em;background:#fafbfa}tbody tr:last-child td{border-bottom:0}td code{font-size:12px;color:#255c36;background:#eef5ef;padding:4px 6px;border-radius:5px}dialog{border:0;padding:0;border-radius:20px;width:min(720px,calc(100% - 32px));box-shadow:0 30px 100px rgba(0,0,0,.22)}dialog::backdrop{background:rgba(11,20,14,.56);backdrop-filter:blur(3px)}.dialog-form{padding:26px}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between}.dialog-head h2{margin:0}.icon-button{width:34px;height:34px;border-radius:9px;border:1px solid var(--line);background:white;font-size:21px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.form-grid label{margin-top:18px}.span-2{grid-column:span 2}.toggle{flex-direction:row!important;align-items:center}.toggle input{width:auto}.form-note{font-size:12px;color:var(--muted);background:#f3f6f2;padding:10px 12px;border-radius:9px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.secret-dialog{width:min(620px,calc(100% - 32px))}.secret code{white-space:normal;word-break:break-all}.toast{position:fixed;right:24px;bottom:24px;background:#17251b;color:white;border-radius:11px;padding:12px 16px;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;z-index:99}.toast.show{opacity:1;transform:none}.toast.error{background:#8f251e}@media(max-width:1050px){.summary-grid{grid-template-columns:repeat(2,1fr)}.card-grid{grid-template-columns:repeat(2,1fr)}.architecture{align-items:flex-start;flex-direction:column}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:static;height:auto}.sidebar nav{grid-template-columns:repeat(5,1fr);overflow:auto}.sidebar-foot{display:none}.main{padding:24px 16px}.main>header{align-items:flex-start}.card-grid,.summary-grid{grid-template-columns:1fr}.architecture{display:block}.flow{overflow:auto;margin-top:20px}.form-grid{display:block}.span-2{grid-column:auto}.sidebar .brand{padding-bottom:14px}}
