.app-shell[data-v-cbab8bb5]{grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;display:grid}.sidebar[data-v-cbab8bb5]{background:var(--panel);border-right:1px solid var(--panel-border);flex-direction:column;gap:24px;height:100vh;padding:24px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand[data-v-cbab8bb5]{padding:0 8px}.sidebar-title[data-v-cbab8bb5]{background:linear-gradient(135deg, var(--accent), var(--accent-strong));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.25rem}.sidebar-nav[data-v-cbab8bb5]{flex-direction:column;gap:4px;display:flex}.nav-item[data-v-cbab8bb5]{border-radius:var(--radius-sm);color:var(--muted);align-items:center;gap:12px;padding:12px 14px;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .12s,color .12s;display:flex}.nav-item[data-v-cbab8bb5]:hover{color:var(--text);background:#ffffff0f;text-decoration:none}.nav-item.is-active[data-v-cbab8bb5]{color:var(--accent);background:#79a5ff24}.nav-icon[data-v-cbab8bb5]{text-align:center;flex-shrink:0;width:24px;font-size:1.15rem}.main-content[data-v-cbab8bb5]{width:100%;max-width:1200px;padding:32px}@media (width<=768px){.app-shell[data-v-cbab8bb5]{grid-template-columns:56px 1fr}.sidebar[data-v-cbab8bb5]{padding:16px 6px}.nav-label[data-v-cbab8bb5],.sidebar-title[data-v-cbab8bb5]{display:none}.nav-item[data-v-cbab8bb5]{justify-content:center;padding:12px 8px}.main-content[data-v-cbab8bb5]{padding:20px 16px}}.toast-container[data-v-bbd938af]{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;top:20px;right:20px}.toast[data-v-bbd938af]{border-radius:var(--radius-sm);color:var(--text);pointer-events:auto;max-width:360px;padding:12px 20px;font-size:.9rem;font-weight:600;box-shadow:0 4px 16px #0000004d}.toast-success[data-v-bbd938af]{background:var(--success);color:#fff}.toast-error[data-v-bbd938af]{background:var(--danger);color:#fff}.toast-info[data-v-bbd938af]{background:var(--accent);color:#fff}.toast-warn[data-v-bbd938af]{background:var(--warning);color:#111}.toast-enter-active[data-v-bbd938af]{transition:all .25s ease-out}.toast-leave-active[data-v-bbd938af]{transition:all .2s ease-in}.toast-enter-from[data-v-bbd938af],.toast-leave-to[data-v-bbd938af]{opacity:0;transform:translate(60px)}.app-loading{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.loading-spinner{border:3px solid var(--panel-border);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}:root,[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#07111f;--bg-gradient-1:#79a5ff2e;--bg-gradient-2:#93f0d926;--panel:#0c182ad1;--panel-solid:#0c1829;--panel-border:#7696ff2e;--text:#eef3ff;--text-secondary:#c8d4f0;--muted:#aab8dd;--accent:#79a5ff;--accent-strong:#93f0d9;--danger:#ff8c8c;--warning:#ffd27a;--success:#93f0d9;--shadow:0 20px 60px #00000059;--input-bg:#030a14b3;--input-border:#ffffff1f;--hover-overlay:#ffffff0f;--sidebar-w:240px;--radius-sm:12px;--radius-md:16px;--radius-lg:20px}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f8fafc;--bg-gradient-1:#79a5ff1f;--bg-gradient-2:#93f0d914;--panel:#ffffffeb;--panel-solid:#fff;--panel-border:#0032781f;--text:#0f172a;--text-secondary:#334155;--muted:#64748b;--accent:#3b82f6;--accent-strong:#10b981;--danger:#ef4444;--warning:#f59e0b;--success:#10b981;--shadow:0 20px 60px #00000014;--input-bg:#ffffffe6;--input-border:#00000026;--hover-overlay:#0000000a}*,:before,:after{box-sizing:border-box}html{transition:background-color .3s,color .3s}body,.panel,.sidebar,input,textarea,select,button,.btn,.nav-item,.badge{transition:background-color .3s,color .3s,border-color .3s,box-shadow .3s}body{background:radial-gradient(circle at top left, var(--bg-gradient-1), transparent 35%), radial-gradient(circle at top right, var(--bg-gradient-2), transparent 30%), var(--bg);min-height:100vh;color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,.btn{border-radius:var(--radius-md);font:inherit;cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-weight:700;transition:transform .14s,opacity .14s,background-color .2s,box-shadow .2s;display:inline-flex}button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}button:active{transform:translateY(0)}button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#05111b}.btn-primary:hover{filter:brightness(1.1)}.btn-ghost{background:var(--hover-overlay);color:var(--text);border:1px solid var(--input-border)}.btn-ghost:hover{background:rgba(var(--accent), .1);border-color:var(--accent)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{filter:brightness(1.1)}input,textarea,select{border-radius:var(--radius-md);border:1px solid var(--input-border);background:var(--input-bg);width:100%;color:var(--text);font:inherit;padding:12px 14px}input::placeholder,textarea::placeholder{color:var(--muted)}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}label{color:var(--muted);gap:6px;font-size:.88rem;font-weight:600;display:grid}.panel{border:1px solid var(--panel-border);background:var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:24px}.stack{gap:14px;display:grid}.stack-sm{gap:8px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.badge{text-transform:uppercase;letter-spacing:.08em;background:var(--hover-overlay);border-radius:999px;justify-content:center;align-items:center;padding:4px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.badge-ok{color:var(--success);background:#10b98126}.badge-high{color:var(--danger);background:#ef444426}.badge-medium{color:var(--warning);background:#f59e0b26}.badge-low,.badge-foundational{color:var(--success);background:#10b98126}.badge-missing,.badge-danger{color:var(--danger);background:#ef444426}.badge-warn{color:var(--warning);background:#f59e0b26}.badge-info{color:var(--accent);background:#3b82f626}.empty-state{color:var(--muted);text-align:center;padding:32px 16px}.meta-line{color:var(--muted);font-size:.88rem}.error-line{color:var(--danger);font-size:.88rem}.action-row{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.muted{color:var(--muted)}.theme-toggle{background:var(--hover-overlay);border:1px solid var(--panel-border);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:0;font-size:1.2rem;display:flex}.theme-toggle:hover{background:var(--accent);color:var(--bg);border-color:var(--accent)}@media (width<=1024px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=768px){.grid-2,.grid-3{grid-template-columns:1fr}}@media (width<=640px){.grid-4{grid-template-columns:1fr}}
