:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #f4f6f8;--panel: #ffffff;--panel-subtle: #f8fafb;--line: #d9e0e7;--line-strong: #c8d2dc;--text: #16202d;--text-strong: #0b1220;--muted: #637083;--primary: #0f766e;--primary-strong: #115e59;--primary-soft: #e4f4f2;--accent: #4f46e5;--accent-soft: #ecebff;--danger: #b42318;--danger-soft: #fde8e7;--success: #067647;--success-soft: #e7f6ed;--warning: #a15c07;--warning-soft: #fff2d6;--info: #175cd3;--info-soft: #e8f1ff;--sidebar: #171b22;--sidebar-2: #202631;--sidebar-text: #e6ebf1;--sidebar-muted: #99a6b8;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .06);--shadow-sm: 0 8px 22px rgba(15, 23, 42, .08);--shadow-md: 0 18px 55px rgba(15, 23, 42, .16);--radius: 8px}*{box-sizing:border-box}html,body{background:var(--bg)}body{margin:0;min-width:320px;min-height:100vh;color:var(--text)}button,input{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid rgba(15,118,110,.18);outline-offset:2px}input{width:100%;min-height:40px;border:1px solid var(--line);border-radius:6px;padding:9px 11px;background:#fff;color:var(--text);transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}input:hover{border-color:var(--line-strong)}input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0f766e1f}h1,h2,p{margin:0;letter-spacing:0}h1,h2{color:var(--text-strong)}p{color:var(--muted);margin-top:6px;line-height:1.45}label{display:grid;gap:7px;margin-top:14px;color:#354258;font-size:13px;font-weight:600}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(180deg,#ffffffc7,#f4f6f8f0),radial-gradient(circle at top left,rgba(79,70,229,.1),transparent 32%),var(--bg)}.login-panel{width:min(440px,100%);background:#fffffff5;border:1px solid rgba(217,224,231,.9);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow-md)}.login-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:var(--radius);background:var(--primary-soft);color:var(--primary);margin-bottom:16px}.login-panel h1{font-size:27px;line-height:1.15}.login-panel .btn{width:100%;margin-top:18px}.btn{min-height:38px;border-radius:6px;border:1px solid transparent;padding:8px 13px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;text-decoration:none;white-space:nowrap;font-weight:700;font-size:13px;line-height:1;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.btn:hover{box-shadow:var(--shadow-xs)}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--primary);color:#fff}.btn.primary:hover{background:var(--primary-strong)}.btn.outline{border-color:var(--line);background:#fff;color:#253246}.btn.outline:hover{border-color:var(--line-strong);background:var(--panel-subtle)}.btn.quiet{background:#eef3f7;color:#26364a}.btn.quiet:hover{background:#e5ebf1}.btn.danger{background:var(--danger);color:#fff}.btn:disabled{opacity:.65;cursor:not-allowed;box-shadow:none;transform:none}.app-shell{min-height:100vh;display:grid;grid-template-columns:268px minmax(0,1fr);background:var(--bg)}.sidebar{color:var(--sidebar-text);background:var(--sidebar);display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.08)}.brand{min-height:72px;display:flex;align-items:center;gap:12px;padding:18px;background:var(--sidebar-2);border-bottom:1px solid rgba(255,255,255,.08)}.brand svg{width:40px;height:40px;padding:9px;border-radius:var(--radius);background:var(--primary);color:#fff}.brand strong{color:#fff}.brand small{display:block;color:var(--sidebar-muted);margin-top:3px;font-size:12px}.sidebar nav{display:grid;gap:3px;padding:12px 10px}.sidebar a{min-height:40px;color:#cdd6e2;text-decoration:none;display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:6px;font-size:14px;transition:background .14s ease,color .14s ease}.sidebar a svg{color:#9fb0c2}.sidebar a.active{background:#0f766e38;color:#fff;box-shadow:inset 3px 0 0 var(--primary)}.sidebar a.active svg,.sidebar a:hover svg{color:#fff}.sidebar a:hover{background:#ffffff14;color:#fff}.workspace{min-width:0;display:flex;flex-direction:column}.topbar{min-height:68px;background:#ffffffeb;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:12px 22px;box-shadow:var(--shadow-xs);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topbar>div{display:grid;text-align:right}.topbar strong{color:var(--text-strong);font-size:14px}.topbar span{color:var(--muted);font-size:12px}.content{min-height:0;padding:22px;overflow:auto}.page-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px}.page-header h1{font-size:24px;line-height:1.18}.page-actions,.form-actions,.row-actions,.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.page-actions{justify-content:flex-end}.stats{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin-bottom:16px}.stat{min-height:88px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:15px;display:grid;grid-template-columns:40px minmax(0,1fr);gap:4px 11px;align-items:center;box-shadow:var(--shadow-xs)}.stat>span{width:38px;height:38px;display:grid;place-items:center;border-radius:var(--radius);background:var(--primary-soft);color:var(--primary);grid-row:span 2}.stat small{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase}.stat strong{min-width:0;color:var(--text-strong);font-size:21px;line-height:1.2;overflow-wrap:anywhere}.toolbar{margin-bottom:12px}.search{flex:1;min-width:240px;min-height:38px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:6px;padding:0 11px;background:var(--panel-subtle);color:var(--muted)}.search input{min-height:36px;border:0;padding-left:0;background:transparent;box-shadow:none}.search input:focus{box-shadow:none}.table-shell,.form-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-xs)}.form-panel{padding:20px}table{width:100%;min-width:980px;border-collapse:separate;border-spacing:0;font-size:13px}th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:middle}th{position:sticky;top:0;z-index:1;background:#f3f6f9;color:#46556a;font-size:12px;font-weight:700}td{background:#fff;color:#283548}tbody tr:hover td{background:#fbfcfd}.row-actions button{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);background:#fff;border-radius:6px;cursor:pointer;color:#26364a;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.row-actions button:hover{background:var(--primary-soft);border-color:#9ccfca;color:var(--primary-strong);box-shadow:var(--shadow-xs)}.status{display:inline-flex;align-items:center;justify-content:center;min-height:24px;border-radius:999px;padding:3px 9px;background:#eef2f6;color:#344054;font-size:12px;font-weight:700;white-space:nowrap}.status.active,.status.succeeded{background:var(--success-soft);color:var(--success)}.status.provisioning,.status.pending,.status.running{background:var(--warning-soft);color:var(--warning)}.status.failed,.status.suspended,.status.archived{background:var(--danger-soft);color:var(--danger)}.ok{color:var(--success);font-weight:700}.bad{color:var(--danger);font-weight:700}.form-grid,.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.preview-strip,.detail-grid{margin-top:16px;border:1px solid var(--line);background:var(--panel-subtle);border-radius:var(--radius);padding:12px;display:grid;gap:8px}.detail-grid div{display:grid;gap:4px}.detail-grid span,.preview-strip span{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase}.error,.notice{margin-top:12px;border-radius:var(--radius);padding:11px 13px;font-size:14px;font-weight:600;border:1px solid transparent}.error{background:var(--danger-soft);color:var(--danger);border-color:#f7c3bf}.notice{background:var(--info-soft);color:var(--info);border-color:#c5dafc}.form-actions{justify-content:flex-end;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#b9c4cf;border:3px solid transparent;border-radius:999px;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}@media(max-width:1180px){.stats{grid-template-columns:repeat(2,minmax(150px,1fr))}}@media(max-width:920px){.app-shell{grid-template-columns:76px minmax(0,1fr)}.brand{justify-content:center;padding:16px 10px}.brand div,.sidebar a span{display:none}.sidebar a{justify-content:center;padding:10px}.page-header,.topbar{flex-direction:column;align-items:stretch}.topbar{justify-content:flex-start}.topbar>div{text-align:left}.content{padding:16px}.stats,.form-grid,.detail-grid{grid-template-columns:1fr}}@media(max-width:640px){.app-shell{min-height:100vh;grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:20}.brand{min-height:58px;justify-content:flex-start}.brand div,.sidebar a span{display:block}.sidebar nav{display:flex;gap:6px;overflow-x:auto;padding:8px 10px 12px}.sidebar a{flex:0 0 auto}.content{padding:14px}.page-header h1{font-size:21px}.page-actions .btn,.toolbar .btn{flex:1 1 140px}.search{min-width:100%}}
