:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color-scheme:dark;--bg: #0b0d10;--bg-soft: #101318;--panel: rgba(18, 21, 27, .86);--panel-solid: #12151b;--text: #eef1f5;--muted: #9098a6;--subtle: #687080;--border: rgba(180, 190, 210, .12);--border-strong: rgba(180, 190, 210, .22);--accent: #6da7ff;--accent-2: #72e0bd;--danger: #ef6a7a;--warning: #dca84c;--shadow: 0 18px 45px rgba(0, 0, 0, .25);--radius: 10px}:root[data-theme=light]{color-scheme:light;--bg: #f5f6f8;--bg-soft: #eceff3;--panel: rgba(255, 255, 255, .88);--panel-solid: #ffffff;--text: #171a20;--muted: #626b7a;--subtle: #7c8490;--border: rgba(18, 25, 38, .11);--border-strong: rgba(18, 25, 38, .18);--accent: #246bfe;--accent-2: #0d9775;--danger: #d6384f;--warning: #a87312;--shadow: 0 18px 45px rgba(30, 41, 59, .09)}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-width:0;color:var(--text);background:radial-gradient(circle at 20% -10%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 32rem),radial-gradient(circle at 90% 10%,color-mix(in srgb,var(--accent-2) 12%,transparent),transparent 28rem),var(--bg);transition:background-color .22s ease,color .22s ease}button,input,textarea{font:inherit}a{color:inherit}button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border:1px solid transparent;border-radius:8px;padding:9px 13px;color:#fff;background:var(--accent);font-weight:700;font-size:14px;line-height:1;text-decoration:none;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,opacity .18s ease}button:hover,.btn:hover{transform:translateY(-1px)}button:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn.secondary{background:var(--panel-solid);color:var(--text);border-color:var(--border-strong)}.btn.ghost{background:transparent;color:var(--muted);border-color:var(--border)}.btn.danger{background:transparent;color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}.icon{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.logo-mark{width:30px;height:30px;fill:none;stroke:var(--accent);stroke-width:1.8;stroke-linejoin:round}input,textarea{width:100%;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--panel-solid) 85%,transparent);color:var(--text);padding:10px 12px;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}input:focus,textarea:focus{border-color:color-mix(in srgb,var(--accent) 65%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}textarea{min-height:88px;resize:vertical}label{display:grid;gap:7px;color:var(--muted);font-size:13px}.boot{display:grid;min-height:100vh;place-items:center;color:var(--muted)}.fade-in{animation:fade-in .26s ease both}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;transition-duration:1ms!important}}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(420px,100%);padding:28px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.login-card h1{margin:22px 0 8px;font-size:clamp(30px,4vw,40px);letter-spacing:-.04em}.login-card p{margin:0 0 24px;color:var(--muted);line-height:1.55}.login-card form{display:grid;gap:14px}.app-shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:20px 14px;border-right:1px solid var(--border);background:color-mix(in srgb,var(--bg) 78%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 8px;margin-bottom:24px;color:var(--text);font-weight:800;letter-spacing:-.02em}.sidebar nav{display:grid;gap:3px}.sidebar a{display:flex;align-items:center;gap:10px;color:var(--muted);text-decoration:none;padding:10px 11px;border-radius:8px;font-weight:650;font-size:14px;transition:background .18s ease,color .18s ease}.sidebar a.active,.sidebar a:hover{color:var(--text);background:color-mix(in srgb,var(--accent) 11%,transparent)}.sidebar-footer{display:grid;gap:8px;margin-top:auto}.sidebar-footer .btn{width:100%;justify-content:flex-start}.content{width:100%;max-width:1920px;padding:clamp(18px,2.1vw,34px)}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.page-header h1{margin:0;font-size:clamp(28px,3vw,38px);letter-spacing:-.045em}.page-header p{margin:7px 0 0;color:var(--muted)}.page-actions,.button-row,.row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:14px}.stat,.panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.stat{padding:17px;min-width:0}.stat span{display:block;color:var(--muted);font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.07em}.stat strong{display:block;margin-top:7px;font-size:clamp(25px,2.4vw,34px);letter-spacing:-.04em}.stat.green strong{color:var(--accent-2)}.stat.amber strong{color:var(--warning)}.stat.red strong{color:var(--danger)}.panel{padding:15px;margin-bottom:14px;overflow:hidden}.panel.compact{display:grid;gap:12px}.panel h2{margin:0 0 13px;font-size:16px;letter-spacing:-.02em}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.search{max-width:min(420px,100%)}.table-wrap{width:100%;overflow-x:auto;overscroll-behavior-x:contain}table{width:100%;min-width:760px;border-collapse:collapse}th,td{padding:11px 12px;border-bottom:1px solid var(--border);text-align:left;font-size:13px;vertical-align:middle}th{color:var(--subtle);font-weight:760;white-space:nowrap;background:color-mix(in srgb,var(--panel-solid) 70%,transparent);position:sticky;top:0;z-index:1}td{color:color-mix(in srgb,var(--text) 92%,var(--muted))}tr{transition:background .16s ease}tr:hover td{background:color-mix(in srgb,var(--accent) 5%,transparent)}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:70px;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:820;text-transform:uppercase;letter-spacing:.025em}.badge.good{color:color-mix(in srgb,var(--accent-2) 86%,var(--text));background:color-mix(in srgb,var(--accent-2) 12%,transparent)}.badge.warn{color:color-mix(in srgb,var(--warning) 86%,var(--text));background:color-mix(in srgb,var(--warning) 14%,transparent)}.badge.bad{color:color-mix(in srgb,var(--danger) 88%,var(--text));background:color-mix(in srgb,var(--danger) 13%,transparent)}.badge.muted{color:var(--muted);background:color-mix(in srgb,var(--muted) 10%,transparent)}.muted-text{color:var(--muted);line-height:1.5}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.open-secret{white-space:nowrap;color:var(--text)}.small-input{width:78px;padding:7px 9px}.error-box{border:1px solid color-mix(in srgb,var(--danger) 38%,transparent);background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--danger);border-radius:8px;padding:10px 12px}.error-cell{max-width:420px;color:var(--danger);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.success-text{color:var(--accent-2);font-weight:750}.check{display:flex;align-items:center;grid-template-columns:auto 1fr;gap:10px}.check input{width:auto}.settings-form{display:grid;gap:13px;max-width:760px}.secrets-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}@media(min-width:1600px){.content{padding-left:46px;padding-right:46px}table{min-width:980px}}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:12px;border-right:0;border-bottom:1px solid var(--border)}.brand{margin-bottom:10px}.sidebar nav{grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto;padding-bottom:4px}.sidebar-footer{display:flex;margin-top:10px}.sidebar-footer .btn{width:auto}.page-header{flex-direction:column}.toolbar{align-items:stretch;flex-direction:column}.search{max-width:none}}@media(max-width:640px){.content{padding:14px}.panel{padding:12px}.page-actions,.button-row,.row-actions{align-items:stretch;flex-direction:column}.btn{width:100%}}
