:root{--bg:#070a0f;--bg-elevated:#0c1118;--surface:#111821;--surface-2:#171f2b;--surface-3:#1e2836;--border:#94a3b81f;--border-strong:#94a3b838;--text:#eef3f9;--text-2:#9aa8ba;--text-3:#6b7a8f;--gold:#d4af37;--gold-soft:#d4af3724;--gold-hover:#e8c547;--green:#34d399;--green-soft:#34d3991f;--red:#f87171;--red-soft:#f871711f;--blue:#60a5fa;--blue-soft:#60a5fa1f;--radius:14px;--radius-sm:10px;--radius-xs:8px;--shadow:0 18px 50px #00000059;--font:"DM Sans", ui-sans-serif, system-ui, -apple-system, sans-serif;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--rail:268px}*{box-sizing:border-box}html,body,#app{background:radial-gradient(1200px 600px at 10% -10%, #d4af3714, transparent 55%), radial-gradient(900px 500px at 100% 0%, #60a5fa0d, transparent 50%), var(--bg);min-height:100%;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}::selection{background:#d4af3747}.mono{font-family:var(--mono);letter-spacing:-.02em}.tiny{font-size:.75rem}.muted{color:var(--text-2)}.dim{color:var(--text-3)}.err{color:var(--red);background:var(--red-soft);border-radius:var(--radius-xs);border:1px solid #f8717140;margin:.75rem 0 0;padding:.7rem .9rem;font-size:.875rem}.ok-msg{color:var(--green);background:var(--green-soft);border-radius:var(--radius-xs);border:1px solid #34d39940;margin:.75rem 0 0;padding:.7rem .9rem;font-size:.875rem}.empty{color:var(--text-3);text-align:center;padding:1.5rem .25rem;font-size:.9rem}.hint{color:var(--text-3);margin-top:1rem;font-size:.75rem;line-height:1.5}.logo-mark{letter-spacing:-.05em;width:42px;height:42px;color:var(--bg);background:linear-gradient(145deg, var(--gold-hover), var(--gold));border-radius:12px;flex-shrink:0;place-items:center;font-weight:700;display:grid;box-shadow:0 8px 24px #d4af3740}.logo-mark.sm{border-radius:10px;width:34px;height:34px;font-size:.8rem;box-shadow:0 4px 14px #d4af3733}.login-wrap{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.login-card{border:1px solid var(--border-strong);width:min(420px,100%);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(#171f2bf2,#111821fa);border-radius:20px;padding:2rem}.login-card .brand{align-items:center;gap:1rem;margin-bottom:1.75rem;display:flex}.login-card h1{letter-spacing:-.03em;margin:0;font-size:1.45rem;font-weight:650}.login-card .field{margin-bottom:1rem}.login-card .btn.primary{width:100%;height:44px;margin-top:.35rem;font-weight:600}.shell{grid-template-columns:var(--rail) 1fr;min-height:100vh;display:grid}.rail{border-right:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(#111821f2,#0c1118fa);flex-direction:column;height:100vh;padding:1.1rem .85rem;display:flex;position:sticky;top:0}.rail-brand{align-items:center;gap:.75rem;padding:.4rem .65rem 1.1rem;display:flex}.rail-brand .title{letter-spacing:-.02em;font-size:.98rem;font-weight:650}nav{flex-direction:column;flex:1;gap:.2rem;padding-right:.15rem;display:flex;overflow:auto}.nav-item{color:var(--text-2);text-align:left;border-radius:var(--radius-sm);align-items:center;gap:.7rem;padding:.72rem .85rem;transition:background .15s,color .15s,transform .15s;display:flex;position:relative}.nav-item:hover{color:var(--text);background:#ffffff08}.nav-item.active{background:var(--gold-soft);color:var(--text);box-shadow:inset 0 0 0 1px #d4af372e}.nav-item.active:before{content:"";background:var(--gold);border-radius:999px;width:3px;position:absolute;top:20%;bottom:20%;left:0}.nav-ico{opacity:.9;place-items:center;width:1.35rem;font-size:.95rem;display:grid}.rail-foot{border-top:1px solid var(--border);flex-direction:column;gap:.55rem;margin-top:.75rem;padding:.85rem .45rem .35rem;display:flex}.content{max-width:1180px;padding:1.6rem 2rem 3rem}.top{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.35rem;display:flex}.top h2{letter-spacing:-.03em;margin:0;font-size:1.4rem;font-weight:650}.top p{color:var(--text-2);margin:.3rem 0 0;font-size:.92rem}.top-actions{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.pill{background:var(--surface-2);border:1px solid var(--border);color:var(--text-2);border-radius:999px;padding:.42rem .75rem;font-size:.72rem}.stack{flex-direction:column;gap:1rem;display:flex}.card{border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(#171f2bb8,#111821eb);padding:1.15rem 1.25rem;box-shadow:0 10px 30px #0000002e}.card h3{letter-spacing:-.02em;margin:0 0 .9rem;font-size:.98rem;font-weight:600}.row{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.row.between{justify-content:space-between}.row.end{justify-content:flex-end;margin-top:.85rem}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;display:grid}.stats-3{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{position:relative;overflow:hidden;padding:1rem 1.05rem!important}.stat:after{content:"";pointer-events:none;background:radial-gradient(circle,#d4af371f,#0000 70%);width:120px;height:120px;position:absolute;top:auto;bottom:-40%;left:auto;right:-20%}.stat .label{color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:600}.stat .num{letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin-top:.45rem;font-size:1.55rem;font-weight:700}.form-grid{grid-template-columns:1fr 1fr;gap:.85rem;display:grid}.field{flex-direction:column;gap:.4rem;display:flex}.field.full{grid-column:1/-1}.field>span{color:var(--text-3);letter-spacing:.04em;text-transform:uppercase;font-size:.75rem;font-weight:600}.field input,.field select,.search{background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:var(--radius-xs);outline:none;padding:.72rem .85rem;transition:border-color .15s,box-shadow .15s}.field select{-webkit-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23d4af37' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .85rem center;background-repeat:no-repeat;padding-right:2.4rem}.field select option{background:var(--surface);color:var(--text);padding:.6rem}.field select:hover:not(:focus){border-color:#d4af374d}.field input:focus,.field select:focus,.search:focus{border-color:#d4af378c;box-shadow:0 0 0 3px #d4af371f}.search{width:100%;margin-bottom:.85rem}.check{color:var(--text-2);align-items:center;gap:.65rem;font-size:.92rem;display:flex}.check input{accent-color:var(--gold);width:1rem;height:1rem}.btn{border-radius:var(--radius-xs);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.4rem;padding:.62rem .95rem;font-size:.875rem;font-weight:600;transition:transform .12s,background .15s,border-color .15s,opacity .15s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn.primary{background:linear-gradient(180deg, var(--gold-hover), var(--gold));color:#0b0f14;box-shadow:0 8px 20px #d4af3733}.btn.primary:hover:not(:disabled){filter:brightness(1.05)}.btn.ghost{border-color:var(--border-strong);color:var(--text);background:0 0}.btn.ghost:hover:not(:disabled){background:#ffffff08}.btn.danger{background:var(--red-soft);color:#fecaca;border-color:#f8717147}.btn.danger:hover:not(:disabled){background:#f8717133}.btn.sm{border-radius:7px;padding:.35rem .6rem;font-size:.78rem}.btn.full{width:100%}.chip{letter-spacing:.02em;background:var(--surface-3);border:1px solid var(--border);color:var(--text-2);border-radius:999px;align-items:center;padding:.22rem .55rem;font-size:.72rem;font-weight:600;display:inline-flex}.chip.ok{background:var(--green-soft);color:#6ee7b7;border-color:#34d39947}.chip.bad{background:var(--red-soft);color:#fca5a5;border-color:#f8717147}.chip.gold{background:var(--gold-soft);color:#f0d78c;border-color:#d4af374d}.table{border-collapse:collapse;width:100%;font-size:.875rem}.table th{text-align:left;color:var(--text-3);text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid var(--border);padding:.55rem .5rem;font-size:.7rem;font-weight:650}.table td{vertical-align:middle;border-bottom:1px solid #94a3b814;padding:.75rem .5rem}.table tr:last-child td{border-bottom:0}.table tr:hover td{background:#ffffff04}.table .end{text-align:right}.prov-grid,.cli-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.7rem;display:grid}.prov,.cli-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.85rem .95rem;transition:border-color .15s,transform .15s}.prov:hover,.cli-card:hover{border-color:#d4af3747;transform:translateY(-1px)}.model-list{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);max-height:420px;overflow:auto}.model-row{border-bottom:1px solid #94a3b814;grid-template-columns:1fr auto auto;align-items:center;gap:.75rem;padding:.65rem .85rem;display:grid}.model-row:last-child{border-bottom:0}.model-row:hover{background:#ffffff05}.steps{color:var(--text-2);margin:0;padding-left:1.15rem;line-height:1.7}.steps li{margin-bottom:.35rem}.steps code,.muted code{background:var(--surface-3);border:1px solid var(--border);font-family:var(--mono);border-radius:6px;padding:.1rem .35rem;font-size:.8em}.card.accent{background:radial-gradient(500px 120px at 100% 0,#d4af3714,#0000 60%),linear-gradient(#171f2bcc,#111821f2);border-color:#d4af3738}@media (max-width:960px){.shell{grid-template-columns:1fr}.rail{border-right:0;border-bottom:1px solid var(--border);height:auto;position:relative}nav{flex-flow:wrap;gap:.35rem}.nav-item{padding:.55rem .7rem}.nav-item.active:before{display:none}.content{padding:1.1rem 1rem 2.5rem}.stats,.stats-3{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.top{flex-direction:column}}@media (max-width:560px){.stats,.stats-3{grid-template-columns:1fr}}
/*$vite$:1*/