:root{--bg-page: #f1f5f9;--bg-surface: #ffffff;--bg-surface-alt: #f8fafc;--bg-hover: #f8fafc;--bg-input: #f8fafc;--bg-input-focus: #ffffff;--text-primary: #1e293b;--text-heading: #0f172a;--text-body: #475569;--text-secondary: #64748b;--text-tertiary: #94a3b8;--text-strong: #334155;--border-primary: #e2e8f0;--border-secondary: #cbd5e1;--border-subtle: #f1f5f9;--shadow-sm: rgba(0, 0, 0, .03);--shadow-md: rgba(0, 0, 0, .07);--btn-primary-bg: #1d4ed8;--btn-primary-hover: #1e40af;--btn-default-bg: #0f172a;--btn-default-color: #f8fafc;--btn-default-hover: #1e293b;--badge-bg: #e2e8f0;--bg-critical: #fef2f2;--bg-critical-strong: #fee2e2;--bg-high: #fff7ed;--bg-medium: #fef9c3;--bg-medium-light: #fefce8;--bg-low: #dbeafe;--bg-low-light: #eff6ff;--bg-info: #f1f5f9;--bg-success: #dcfce7;--bg-success-light: #f0fdf4;--bg-pending: #fef3c7;--bg-error: #fef2f2;--bg-error-strong: #fee2e2;--border-error: #fecaca;--border-success: #bbf7d0;--grade-SSS: #a855f7;--grade-SSS-text: #a855f7;--grade-SSS-badge-bg: #f3e8ff;--grade-SSS-badge-text: #7e22ce;--grade-SS: #8b5cf6;--grade-SS-text: #8b5cf6;--grade-SS-badge-bg: #ede9fe;--grade-SS-badge-text: #6d28d9;--grade-S: #06b6d4;--grade-S-text: #06b6d4;--grade-S-badge-bg: #cffafe;--grade-S-badge-text: #0e7490;--grade-A: #22c55e;--grade-A-text: #16a34a;--grade-A-badge-bg: var(--bg-success);--grade-A-badge-text: #166534;--grade-B: #3b82f6;--grade-B-text: #2563eb;--grade-B-badge-bg: var(--bg-low);--grade-B-badge-text: #1e40af;--grade-C: #eab308;--grade-C-text: #ca8a04;--grade-C-badge-bg: var(--bg-medium);--grade-C-badge-text: #854d0e;--grade-D: #f97316;--grade-D-text: #ea580c;--grade-D-badge-bg: var(--bg-high);--grade-D-badge-text: #9a3412;--grade-F: #ef4444;--grade-F-text: #dc2626;--grade-F-badge-bg: var(--bg-critical-strong);--grade-F-badge-text: #991b1b}[data-theme=dark]{--bg-page: #0c0f1a;--bg-surface: #151929;--bg-surface-alt: #1a1f33;--bg-hover: #1e2440;--bg-input: #1a1f33;--bg-input-focus: #151929;--text-primary: #e2e8f0;--text-heading: #f1f5f9;--text-body: #cbd5e1;--text-secondary: #94a3b8;--text-tertiary: #64748b;--text-strong: #e2e8f0;--border-primary: #1e293b;--border-secondary: #334155;--border-subtle: #1e293b;--shadow-sm: rgba(0, 0, 0, .3);--shadow-md: rgba(0, 0, 0, .4);--btn-primary-bg: #2563eb;--btn-primary-hover: #1d4ed8;--btn-default-bg: #e2e8f0;--btn-default-color: #0f172a;--btn-default-hover: #cbd5e1;--badge-bg: #1e293b;--bg-critical: rgba(239, 68, 68, .1);--bg-critical-strong: rgba(239, 68, 68, .15);--bg-high: rgba(249, 115, 22, .1);--bg-medium: rgba(234, 179, 8, .12);--bg-medium-light: rgba(234, 179, 8, .08);--bg-low: rgba(59, 130, 246, .12);--bg-low-light: rgba(59, 130, 246, .08);--bg-info: rgba(148, 163, 184, .06);--bg-success: rgba(34, 197, 94, .12);--bg-success-light: rgba(34, 197, 94, .08);--bg-pending: rgba(234, 179, 8, .12);--bg-error: rgba(239, 68, 68, .1);--bg-error-strong: rgba(239, 68, 68, .15);--border-error: rgba(239, 68, 68, .2);--border-success: rgba(34, 197, 94, .2);--grade-SSS-badge-bg: rgba(168, 85, 247, .15);--grade-SSS-badge-text: #c084fc;--grade-SS-badge-bg: rgba(139, 92, 246, .15);--grade-SS-badge-text: #a78bfa;--grade-S-badge-bg: rgba(6, 182, 212, .15);--grade-S-badge-text: #22d3ee;--grade-A-badge-text: #4ade80;--grade-B-badge-text: #60a5fa;--grade-C-badge-text: #eab308;--grade-D-badge-text: #fb923c;--grade-F-badge-text: #f87171}.theme-transitioning,.theme-transitioning *,.theme-transitioning *:before,.theme-transitioning *:after{transition:background-color .3s ease,color .2s ease,border-color .3s ease,box-shadow .3s ease!important}*{margin:0;padding:0;box-sizing:border-box}body{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-page);color:var(--text-primary);line-height:1.6}.app-layout{display:flex;min-height:100vh}.main-content{flex:1;margin-left:260px;min-height:100vh;min-width:0;overflow-x:hidden;background:var(--bg-surface-alt)}.main-inner{padding:2rem 2.5rem 3rem}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.75rem}.page-header-text{min-width:0}.page-title{font-size:1.45rem;font-weight:700;color:var(--text-heading);letter-spacing:-.5px;margin:0;line-height:1.2}.page-subtitle{font-size:.88rem;color:var(--text-tertiary);margin:.25rem 0 0;font-weight:400}h2{font-size:1rem;font-weight:600;margin-bottom:0;color:var(--text-heading);letter-spacing:-.2px}h3{font-size:.82rem;font-weight:600;margin-bottom:0;color:var(--text-body)}.site-form{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:12px;padding:1.1rem 1.25rem;margin-bottom:1.5rem;box-shadow:0 1px 3px var(--shadow-sm);animation:card-enter .2s ease both}.form-header{display:flex;align-items:center;gap:.4rem;margin-bottom:.85rem}.form-header svg{width:18px;height:18px;color:#3b82f6}.form-header h2{margin:0}.form-row{display:flex;gap:.6rem;align-items:flex-end}.form-field{display:flex;flex-direction:column;gap:.3rem;flex:1}.form-field-url{flex:1.8}.form-field label{font-size:.72rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px}input{flex:1;padding:.5rem .75rem;background:var(--bg-input);border:1px solid var(--border-primary);border-radius:8px;color:var(--text-primary);font-size:.85rem;transition:all .15s ease;font-family:inherit}input:focus{outline:none;border-color:#3b82f6;background:var(--bg-input-focus);box-shadow:0 0 0 3px #3b82f61a}input::placeholder{color:var(--text-tertiary)}button{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.5rem 1rem;background:var(--btn-default-bg);color:var(--btn-default-color);border:1px solid transparent;border-radius:8px;cursor:pointer;font-size:.82rem;font-weight:500;white-space:nowrap;transition:all .15s ease;font-family:inherit}button:hover{background:var(--btn-default-hover)}button:disabled{opacity:.45;cursor:not-allowed}button svg{width:15px;height:15px;flex-shrink:0}.btn-primary{background:var(--btn-primary-bg);color:#fff}.btn-primary:hover{background:var(--btn-primary-hover)}.btn-with-icon svg{width:14px;height:14px}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border-primary)}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-strong);border-color:var(--border-secondary)}.btn-ghost-danger{color:var(--text-tertiary)}.btn-ghost-danger:hover{background:var(--bg-error);color:#dc2626;border-color:var(--border-error)}.btn-ghost-danger svg{width:14px;height:14px}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover{background:#b91c1c}.btn-secondary{background:var(--badge-bg);color:var(--text-body)}.btn-secondary:hover{background:var(--border-secondary)}.btn-back{background:transparent;color:var(--text-secondary);border:1px solid var(--border-primary);margin-bottom:1.25rem;align-self:flex-start}.btn-back:hover{background:var(--bg-hover);color:var(--text-strong)}.btn-small{padding:.3rem .65rem;font-size:.76rem}.btn-spinner{display:inline-block;width:13px;height:13px;border:2px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.85rem}.section-count{font-size:.7rem;font-weight:700;color:var(--text-secondary);background:var(--badge-bg);padding:.1rem .45rem;border-radius:5px}.empty-state{display:flex;flex-direction:column;align-items:center;padding:3.5rem 1rem;color:var(--text-tertiary)}.empty-state svg{width:44px;height:44px;margin-bottom:.85rem;opacity:.3}.empty-state p{font-size:.95rem;font-weight:500;color:var(--text-secondary)}.empty-state span{font-size:.82rem;margin-top:.2rem}@keyframes card-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes finding-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}table{width:100%;border-collapse:collapse;font-size:.82rem}th,td{text-align:left;padding:.55rem .85rem;border-bottom:1px solid var(--border-subtle)}th{color:var(--text-secondary);font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.4px;background:var(--bg-surface-alt)}tbody tr:hover{background:var(--bg-surface-alt)}.url-cell{max-width:350px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.18rem .55rem;border-radius:6px;font-size:.72rem;font-weight:600;letter-spacing:.2px}.badge-pending{background:var(--bg-pending);color:#92400e}.badge-running{background:var(--bg-low);color:#1e40af}.badge-completed{background:var(--bg-success);color:#166534}.badge-failed{background:var(--bg-error-strong);color:#991b1b}.badge-pulse{display:inline-block;width:6px;height:6px;background:#3b82f6;border-radius:50%;animation:pulse-dot 1.2s ease infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.status-ok{color:#16a34a;font-weight:600}.status-error{color:#dc2626;font-weight:600}.error{display:flex;align-items:center;gap:.4rem;color:#dc2626;font-size:.82rem;margin-top:.6rem;background:var(--bg-error);padding:.5rem .75rem;border-radius:8px;border:1px solid var(--border-error)}.error svg{width:15px;height:15px;flex-shrink:0}.empty{color:var(--text-tertiary);font-style:italic;padding:1.25rem 0;text-align:center;font-size:.85rem}.tabs{display:flex;gap:.25rem;margin-bottom:1.25rem;background:var(--bg-page);border-radius:10px;padding:.25rem}.tabs button{flex:1;background:none;color:var(--text-secondary);border:none;border-radius:8px;padding:.5rem .85rem;font-weight:500;font-size:.82rem;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:.35rem}.tabs button:hover{color:var(--text-primary);background:var(--bg-hover)}.tabs button.active{color:var(--text-heading);background:var(--bg-surface);font-weight:600;box-shadow:0 1px 3px var(--shadow-md)}.tab-count{font-size:.68rem;font-weight:700;color:var(--text-tertiary);background:var(--badge-bg);padding:.08rem .4rem;border-radius:4px}.tabs button.active .tab-count{background:var(--btn-default-bg);color:var(--btn-default-color)}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#00000073;animation:card-enter .15s ease both}.confirm-dialog{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:12px;padding:1.5rem;max-width:380px;width:90%;box-shadow:0 8px 30px var(--shadow-md);animation:card-enter .2s ease both}.confirm-dialog h3{font-size:.95rem;font-weight:700;color:var(--text-heading);margin:0 0 .5rem}.confirm-dialog p{font-size:.85rem;color:var(--text-body);margin:0 0 1.25rem;line-height:1.45}.confirm-actions{display:flex;gap:.5rem;justify-content:flex-end}.sidebar{width:260px;background:#0f172a;display:flex;flex-direction:column;flex-shrink:0;position:fixed;top:0;left:0;bottom:0;z-index:10;overflow-y:auto;border-right:1px solid rgba(255,255,255,.06)}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.sidebar-header{display:flex;align-items:center;gap:.65rem;padding:1.25rem 1.25rem 1rem}.sidebar-logo{width:32px;height:32px;flex-shrink:0}.sidebar-logo img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 5px rgba(255,255,255,.25))}.sidebar-brand{font-size:1.05rem;font-weight:600;color:#e2e8f0;letter-spacing:-.3px}.sidebar-brand span{color:#60a5fa;font-weight:700}.sidebar-nav{padding:.25rem .75rem 0}.sidebar-nav-item{display:flex;align-items:center;gap:.6rem;width:100%;padding:.55rem .75rem;background:transparent;color:#94a3b8;border:none;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s ease;text-align:left;font-family:inherit}.sidebar-nav-item:hover{background:#ffffff0f;color:#e2e8f0}.sidebar-nav-item.active{background:#3b82f626;color:#60a5fa;font-weight:600}.sidebar-nav-item svg{width:18px;height:18px;flex-shrink:0}.sidebar-divider{height:1px;background:#ffffff0f;margin:.65rem 1.25rem}.sidebar-section{padding:0 .75rem;flex:1;min-height:0;overflow-y:auto}.sidebar-section-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;margin-bottom:.5rem;gap:.5rem}.sidebar-add-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;background:#ffffff0f;border:none;border-radius:5px;color:#64748b;cursor:pointer;transition:all .15s ease;flex-shrink:0}.sidebar-add-btn svg{width:14px;height:14px}.sidebar-add-btn:hover{background:#3b82f633;color:#60a5fa}.sidebar-section-title{font-size:.68rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.6px}.sidebar-section-count{font-size:.62rem;font-weight:700;color:#64748b;background:#ffffff14;padding:.08rem .35rem;border-radius:4px}.sidebar-sites{display:flex;flex-direction:column;gap:.15rem}.sidebar-site-item{display:flex;align-items:flex-start;gap:.55rem;width:100%;padding:.5rem .75rem;background:transparent;color:#94a3b8;border:none;border-radius:7px;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .15s ease;text-align:left;font-family:inherit}.sidebar-site-item:hover{background:#ffffff0f;color:#e2e8f0}.sidebar-site-item.active{background:#3b82f61f;color:#93bbfd;font-weight:600}.sidebar-site-item.active .sidebar-site-dot{filter:brightness(1.15);box-shadow:0 0 6px currentColor}.sidebar-site-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;margin-top:5px}.sidebar-site-info{display:flex;flex-direction:column;gap:.1rem;min-width:0;flex:1}.sidebar-site-row{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.sidebar-site-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.sidebar-site-grade{font-size:.6rem;font-weight:700;padding:.05rem .3rem;border-radius:3px;flex-shrink:0;line-height:1.4}.sidebar-site-grade-SSS{background:#a855f726;color:var(--grade-SSS)}.sidebar-site-grade-SS{background:#8b5cf626;color:var(--grade-SS)}.sidebar-site-grade-S{background:#06b6d426;color:var(--grade-S)}.sidebar-site-grade-A{background:#22c55e26;color:var(--grade-A)}.sidebar-site-grade-B{background:#3b82f626;color:var(--grade-B)}.sidebar-site-grade-C{background:#eab30826;color:var(--grade-C)}.sidebar-site-grade-D{background:#f9731626;color:var(--grade-D)}.sidebar-site-grade-F{background:#ef444426;color:var(--grade-F)}.sidebar-site-meta{font-size:.68rem;color:#475569;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.sidebar-empty{color:#475569;font-size:.78rem;padding:.5rem .75rem;font-style:italic;margin:0}.sidebar-footer{padding:.85rem 1.25rem;border-top:1px solid rgba(255,255,255,.06);margin-top:auto;flex-shrink:0;display:flex;align-items:center;gap:.5rem}.sidebar-footer-info{display:flex;align-items:center;gap:.4rem;font-size:.72rem;color:#475569}.sidebar-footer-info svg{width:14px;height:14px;flex-shrink:0}.theme-toggle-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:8px;color:#94a3b8;cursor:pointer;transition:all .15s ease;margin-bottom:.6rem}.theme-toggle-btn:hover{background:#ffffff14;color:#e2e8f0}.theme-toggle-btn svg{width:18px;height:18px}.site-list{margin-top:.5rem}.site-card{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:12px;margin-bottom:.6rem;overflow:hidden;box-shadow:0 1px 2px var(--shadow-sm);transition:all .2s ease;animation:card-enter .3s ease both}.site-card:hover{box-shadow:0 2px 10px var(--shadow-md)}.site-card-expanded{box-shadow:0 4px 16px var(--shadow-md);border-color:var(--border-secondary)}.site-header{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1.1rem;gap:1rem}.site-info{cursor:pointer;display:flex;align-items:center;gap:.65rem;flex:1;min-width:0;transition:opacity .15s}.site-info:hover{opacity:.8}.site-icon{width:34px;height:34px;background:var(--bg-page);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.site-icon svg{width:16px;height:16px;color:var(--text-secondary)}.site-text{display:flex;flex-direction:column;min-width:0}.site-text strong{font-size:.9rem;font-weight:600;color:var(--text-heading);letter-spacing:-.1px}.site-url{font-size:.78rem;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-chevron{width:18px;height:18px;color:var(--border-secondary);flex-shrink:0;transition:transform .2s ease}.site-chevron-open{transform:rotate(180deg);color:var(--text-secondary)}.site-actions{display:flex;gap:.35rem;flex-shrink:0}.audit-list{border-top:1px solid var(--border-primary);padding:.85rem 1.1rem;background:var(--bg-surface-alt);animation:card-enter .2s ease both}.audit-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.65rem}.audit-rows{display:flex;flex-direction:column;gap:.35rem}.audit-row{display:flex;align-items:center;gap:.75rem;padding:.55rem .75rem;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:8px;font-size:.82rem;transition:border-color .15s}.audit-row:hover{border-color:var(--border-secondary)}.audit-id{font-weight:700;color:var(--text-tertiary);font-size:.78rem;min-width:2.5rem;font-variant-numeric:tabular-nums}.audit-date{color:var(--text-secondary);font-size:.78rem;flex:1;font-variant-numeric:tabular-nums}.audit-row-actions{display:flex;gap:.3rem;margin-left:auto;flex-shrink:0}.dashboard-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin-bottom:1.5rem}.metric-card{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;padding:1rem;box-shadow:0 1px 2px var(--shadow-sm)}.metric-label{display:block;font-size:.72rem;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.4px;margin-bottom:.3rem}.metric-value{font-size:1.6rem;font-weight:800;color:var(--text-heading);letter-spacing:-.5px;line-height:1.2;display:flex;align-items:baseline;gap:.4rem}.metric-detail{font-size:.75rem;font-weight:500;color:var(--text-tertiary);margin-top:.25rem;display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.metric-severity-dots{display:inline-flex;align-items:center;gap:.4rem}.metric-sev-item{display:inline-flex;align-items:center;gap:.15rem;font-size:.72rem;font-weight:600}.metric-sev-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.metric-sev-dot.critical{background:var(--grade-F)}.metric-sev-dot.high{background:var(--grade-D)}.metric-sev-dot.medium{background:var(--grade-C)}.metric-sev-dot.low{background:var(--grade-B)}.metric-sev-dot.info{background:#94a3b8}.trend-improving{color:#16a34a}.trend-worsening{color:#dc2626}.trend-stable{color:var(--text-tertiary)}.trend-arrow{font-size:.85rem;line-height:1}.trend-count{font-size:.7rem;color:var(--text-tertiary)}.site-grid-toolbar{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.site-grid-toolbar select{padding:.4rem .6rem;border:1px solid var(--border-primary);border-radius:7px;background:var(--bg-surface);color:var(--text-body);font-size:.8rem;font-family:inherit;cursor:pointer}.grade-filter-btns{display:flex;gap:.25rem}.grade-filter-btn{padding:.3rem .55rem;border:1px solid var(--border-primary);border-radius:6px;background:var(--bg-surface);color:var(--text-secondary);font-size:.72rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s ease}.grade-filter-btn:hover{background:var(--bg-hover);color:var(--text-heading)}.grade-filter-btn.active{background:var(--btn-primary-bg);color:#fff;border-color:var(--btn-primary-bg)}.critical-toggle{display:flex;align-items:center;gap:.35rem;font-size:.78rem;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;margin-left:auto}.critical-toggle input{accent-color:#ef4444}.site-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;margin-bottom:1.5rem}.site-grid-empty{grid-column:1 / -1;text-align:center;padding:2rem;color:var(--text-tertiary);font-size:.88rem}.site-card-v2{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;padding:1rem;box-shadow:0 1px 2px var(--shadow-sm);cursor:pointer;transition:all .15s ease;display:flex;flex-direction:column;gap:.5rem}.site-card-v2:hover{box-shadow:0 4px 12px var(--shadow-md);border-color:var(--border-secondary)}.site-card-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.site-card-name{font-size:.92rem;font-weight:700;color:var(--text-heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.site-card-url{font-size:.72rem;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-bar{height:4px;background:var(--border-primary);border-radius:2px;overflow:hidden}.score-bar-fill{height:100%;border-radius:2px;transition:width .4s ease}.score-bar-fill-SSS{background:var(--grade-SSS)}.score-bar-fill-SS{background:var(--grade-SS)}.score-bar-fill-S{background:var(--grade-S)}.score-bar-fill-A{background:var(--grade-A)}.score-bar-fill-B{background:var(--grade-B)}.score-bar-fill-C{background:var(--grade-C)}.score-bar-fill-D{background:var(--grade-D)}.score-bar-fill-F{background:var(--grade-F)}.score-bar-fill-none{background:var(--border-secondary)}.severity-dots{display:flex;align-items:center;gap:.5rem}.severity-dot-item{display:flex;align-items:center;gap:.15rem;font-size:.7rem;font-weight:600;color:var(--text-secondary)}.severity-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.severity-dot.critical{background:var(--grade-F)}.severity-dot.high{background:var(--grade-D)}.severity-dot.medium{background:var(--grade-C)}.severity-dot.low{background:var(--grade-B)}.severity-dot.info{background:#94a3b8}.site-card-error{display:flex;align-items:flex-start;gap:.35rem;padding:.4rem .55rem;border-radius:6px;background:color-mix(in srgb,var(--grade-F) 10%,transparent);border:1px solid color-mix(in srgb,var(--grade-F) 25%,transparent);font-size:.7rem;line-height:1.35;color:var(--grade-F);overflow:hidden}.site-card-error svg{flex-shrink:0;margin-top:1px}.site-card-error span{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.site-card-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:auto}.site-card-date{font-size:.72rem;color:var(--text-tertiary)}.site-card-actions{display:flex;align-items:center;gap:.35rem}.site-card-audit-btn{padding:.3rem .65rem;border:1px solid var(--border-primary);border-radius:6px;background:var(--bg-surface);color:var(--text-body);font-size:.72rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s ease}.site-card-audit-btn:hover{background:var(--bg-hover);border-color:var(--border-secondary)}.site-card-spinner{width:14px;height:14px;border:2px solid var(--border-primary);border-top-color:var(--btn-primary-bg);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.site-card-progress{font-size:.68rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.site-card-no-audit{font-size:.75rem;color:var(--text-tertiary);font-style:italic}.attention-section{margin-bottom:1.5rem}.attention-title{font-size:.78rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;margin-bottom:.5rem;display:flex;align-items:center;gap:.4rem}.attention-title svg{width:14px;height:14px;color:var(--grade-D)}.attention-scroll{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.25rem;-webkit-overflow-scrolling:touch}.attention-scroll::-webkit-scrollbar{height:3px}.attention-scroll::-webkit-scrollbar-track{background:transparent}.attention-scroll::-webkit-scrollbar-thumb{background:var(--border-secondary);border-radius:2px}.attention-card{flex:0 0 auto;min-width:180px;max-width:240px;background:var(--bg-surface);border:1px solid var(--border-primary);border-left:3px solid var(--grade-D);border-radius:8px;padding:.65rem .8rem;cursor:pointer;transition:all .15s ease}.attention-card:hover{box-shadow:0 4px 12px var(--shadow-md);border-color:var(--border-secondary)}.attention-card-name{font-size:.82rem;font-weight:700;color:var(--text-heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:.25rem}.attention-card-detail{display:flex;align-items:center;gap:.4rem;font-size:.72rem}.attention-delta{color:var(--grade-F-text);font-weight:700}.attention-delta-arrow{font-size:.7rem}.sidebar-search{padding:0;margin-bottom:.5rem}.sidebar-search input{width:100%;padding:.4rem .75rem;border:1px solid rgba(255,255,255,.1);border-radius:7px;background:#ffffff0d;color:#e2e8f0;font-size:.78rem;font-family:inherit;outline:none;transition:border-color .15s ease}.sidebar-search input::placeholder{color:#475569}.sidebar-search input:focus{border-color:#3b82f666}.sidebar-site-dot-SSS{background:var(--grade-SSS)}.sidebar-site-dot-SS{background:var(--grade-SS)}.sidebar-site-dot-S{background:var(--grade-S)}.sidebar-site-dot-A{background:var(--grade-A)}.sidebar-site-dot-B{background:var(--grade-B)}.sidebar-site-dot-C{background:var(--grade-C)}.sidebar-site-dot-D{background:var(--grade-D)}.sidebar-site-dot-F{background:var(--grade-F)}.sidebar-site-dot-none{background:#475569}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.6rem;margin-bottom:1.5rem}.summary-card{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;padding:1rem;box-shadow:0 1px 2px var(--shadow-sm)}.summary-label{display:block;font-size:.72rem;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.4px;margin-bottom:.3rem}.big-number{font-size:1.6rem;font-weight:800;color:var(--text-heading);letter-spacing:-.5px;line-height:1.2}.audit-report{margin-top:0}.report-loading{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:3rem 0;color:var(--text-secondary);font-size:.88rem}.report-top{margin-bottom:1.5rem}.report-header{margin-top:.75rem}.report-title-row{display:flex;align-items:center;gap:.6rem;margin-bottom:.3rem}.report-title-row h2{font-size:1.2rem;font-weight:700;letter-spacing:-.3px;margin:0}.report-meta{display:flex;align-items:center;gap:.5rem;font-size:.78rem;color:var(--text-tertiary)}.report-meta-sep{width:3px;height:3px;background:var(--border-secondary);border-radius:50%;flex-shrink:0}.cookies-table{overflow-x:auto;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;box-shadow:0 1px 2px var(--shadow-sm)}.cookies-table table{margin:0}.cookies-table th:first-child,.cookies-table td:first-child{padding-left:1.1rem}.cookies-table td strong{font-weight:600;color:var(--text-heading)}.flag-yes,.flag-no{display:inline-block;padding:.1rem .5rem;border-radius:5px;font-size:.72rem;font-weight:600}.flag-yes{color:#166534;background:var(--bg-success)}.flag-no{color:#991b1b;background:var(--bg-error-strong)}.cookie-row-insecure{background:var(--bg-error)}.cookie-row-insecure:hover{background:var(--bg-error-strong)}.score-card{border-left:3px solid var(--border-primary)}.score-card-SSS{border-left-color:var(--grade-SSS)}.score-card-SS{border-left-color:var(--grade-SS)}.score-card-S{border-left-color:var(--grade-S)}.score-card-A{border-left-color:var(--grade-A)}.score-card-B{border-left-color:var(--grade-B)}.score-card-C{border-left-color:var(--grade-C)}.score-card-D{border-left-color:var(--grade-D)}.score-card-F{border-left-color:var(--grade-F)}.score-display{display:flex;align-items:baseline;gap:.6rem}.score-grade{font-size:2.2rem;font-weight:800;line-height:1;letter-spacing:-1px}.score-grade-SSS{color:var(--grade-SSS-text)}.score-grade-SS{color:var(--grade-SS-text)}.score-grade-S{color:var(--grade-S-text)}.score-grade-A{color:var(--grade-A-text)}.score-grade-B{color:var(--grade-B-text)}.score-grade-C{color:var(--grade-C-text)}.score-grade-D{color:var(--grade-D-text)}.score-grade-F{color:var(--grade-F-text)}.score-value{font-size:1.1rem;font-weight:700;color:var(--text-body)}.score-max{font-size:.8rem;font-weight:500;color:var(--text-tertiary)}.score-badge{display:inline-flex;align-items:center;padding:.15rem .5rem;border-radius:6px;font-size:.7rem;font-weight:700;letter-spacing:.3px}.score-badge-SSS{background:var(--grade-SSS-badge-bg);color:var(--grade-SSS-badge-text)}.score-badge-SS{background:var(--grade-SS-badge-bg);color:var(--grade-SS-badge-text)}.score-badge-S{background:var(--grade-S-badge-bg);color:var(--grade-S-badge-text)}.score-badge-A{background:var(--grade-A-badge-bg);color:var(--grade-A-badge-text)}.score-badge-B{background:var(--grade-B-badge-bg);color:var(--grade-B-badge-text)}.score-badge-C{background:var(--grade-C-badge-bg);color:var(--grade-C-badge-text)}.score-badge-D{background:var(--grade-D-badge-bg);color:var(--grade-D-badge-text)}.score-badge-F{background:var(--grade-F-badge-bg);color:var(--grade-F-badge-text)}.asset-toolbar{display:flex;flex-wrap:wrap;gap:1.25rem;margin-bottom:1rem;padding:.85rem 1rem;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;box-shadow:0 1px 2px var(--shadow-sm)}.asset-toolbar-group{display:flex;align-items:center;gap:.5rem}.asset-toolbar-label{font-size:.72rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;flex-shrink:0}.asset-toolbar-filters{display:flex;gap:.3rem;flex-wrap:wrap}.asset-cards{display:flex;flex-direction:column;gap:.5rem}.asset-card{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;overflow:hidden;box-shadow:0 1px 3px var(--shadow-sm);transition:box-shadow .15s}.asset-card:hover{box-shadow:0 2px 8px var(--shadow-md)}.asset-card-header{display:flex;align-items:center;gap:.6rem;padding:.7rem 1rem;cursor:pointer;-webkit-user-select:none;user-select:none;overflow:hidden}.asset-card-header:hover{background:var(--bg-hover)}.asset-status{font-size:.75rem;font-weight:700;color:#16a34a;background:var(--bg-success);padding:.15rem .45rem;border-radius:5px;flex-shrink:0}.asset-status-error{color:#991b1b;background:var(--bg-error-strong)}.asset-type-badge{font-size:.7rem;font-weight:600;color:#1e40af;background:var(--bg-low-light);padding:.15rem .5rem;border-radius:5px;flex-shrink:0;text-transform:uppercase;letter-spacing:.3px}.asset-url{flex:1;font-size:.85rem;color:var(--text-heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.asset-card-meta{font-size:.75rem;color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}.asset-chevron{width:16px;height:16px;color:var(--border-secondary);flex-shrink:0;transition:transform .2s ease}.asset-chevron-open{transform:rotate(180deg);color:var(--text-secondary)}.asset-card-details{border-top:1px solid var(--border-subtle);padding:1rem;display:flex;flex-direction:column;gap:.85rem}.asset-card-details-with-preview{flex-direction:row;gap:1rem}.asset-card-details-with-preview .asset-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.85rem}.asset-card-details-with-preview .asset-preview{flex:1;min-width:0}.asset-preview{display:flex;flex-direction:column;gap:.35rem}.asset-preview-label{font-size:.7rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.asset-preview-frame{background:var(--bg-surface-alt);border:1px solid var(--border-primary);border-radius:8px;overflow:auto;position:relative;max-height:600px}.asset-preview-image{display:flex;align-items:center;justify-content:center;overflow:hidden}.asset-preview-image img{max-width:100%;max-height:100%;object-fit:contain}.asset-preview-iframe{width:100%;height:100%;border:none;background:#fff}.asset-preview-code{margin:0;padding:.85rem 0;font-size:.78rem;font-family:SF Mono,Cascadia Code,Fira Code,Menlo,monospace;color:#e2e8f0;line-height:1.65;white-space:pre;-moz-tab-size:2;tab-size:2;background:#0f172a;border-radius:8px;border:1px solid #1e293b;overflow-x:auto}.code-line{display:flex;padding:0 1rem 0 0}.code-line:hover{background:#ffffff0a}.code-line-num{display:inline-block;width:3.5rem;text-align:right;padding-right:1rem;color:#475569;-webkit-user-select:none;user-select:none;flex-shrink:0;border-right:1px solid #1e293b;margin-right:1rem}.code-line-content{flex:1;min-width:0}.sh-comment{color:#6b7280;font-style:italic}.sh-tag{color:#7dd3fc;font-weight:600}.sh-attr{color:#fbbf24}.sh-string{color:#86efac}.sh-keyword{color:#c4b5fd;font-weight:600}.sh-property{color:#5eead4}.sh-selector{color:#7dd3fc}.sh-number{color:#fdba74}.sh-literal{color:#93c5fd}.sh-punct{color:#94a3b8}.sh-entity{color:#fda4af}.sh-regex{color:#fdba74}.asset-preview-empty{display:flex;align-items:center;justify-content:center;width:100%;min-height:120px;color:var(--text-tertiary);font-size:.8rem;font-style:italic}.asset-detail-row strong{display:block;font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;margin-bottom:.25rem}.asset-full-url{font-size:.85rem;color:#1e40af;word-break:break-all;text-decoration:none}.asset-full-url:hover{text-decoration:underline}.asset-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.6rem}.asset-detail-item{background:var(--bg-surface-alt);border:1px solid var(--border-primary);border-radius:8px;padding:.55rem .75rem;display:flex;flex-direction:column;gap:.15rem}.asset-detail-label{font-size:.7rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;font-weight:600}.asset-detail-item>span:last-child{font-size:.9rem;font-weight:600;color:var(--text-heading)}.asset-headers{display:flex;flex-direction:column;gap:.4rem}.asset-headers>strong{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.asset-headers-list{background:var(--bg-surface-alt);border:1px solid var(--border-primary);border-radius:8px;overflow:hidden;font-size:.8rem}.asset-header-row{display:flex;gap:.75rem;padding:.35rem .75rem;border-bottom:1px solid var(--border-subtle)}.asset-header-row:last-child{border-bottom:none}.asset-header-key{font-weight:600;color:var(--text-strong);min-width:180px;flex-shrink:0}.asset-header-value{color:var(--text-body);word-break:break-all;min-width:0}.severity-badge{display:inline-block;padding:.2rem .55rem;border-radius:6px;font-size:.7rem;font-weight:700;letter-spacing:.4px;flex-shrink:0;text-transform:uppercase}.severity-critical{background:var(--bg-critical-strong);color:#991b1b}.severity-high{background:var(--bg-high);color:#9a3412}.severity-medium{background:var(--bg-medium);color:#854d0e}.severity-low{background:var(--bg-low);color:#1e40af}.summary-card-critical{border-left:3px solid #ef4444}.summary-card-critical .big-number{color:#dc2626}.summary-card-high{border-left:3px solid #f97316}.summary-card-high .big-number{color:#ea580c}.summary-card-medium{border-left:3px solid #eab308}.summary-card-medium .big-number{color:#ca8a04}.summary-subtitle{font-size:.75rem;color:var(--text-tertiary);margin-top:.15rem;font-weight:500}.findings-filters{display:flex;gap:.4rem;margin-bottom:1.25rem;flex-wrap:wrap}.filter-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.38rem .75rem;background:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border-primary);border-radius:8px;font-size:.78rem;font-weight:500;cursor:pointer;transition:all .2s ease}.filter-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--text-tertiary)}.filter-btn.active{background:var(--btn-default-bg);color:var(--btn-default-color);border-color:var(--btn-default-bg);font-weight:600}.filter-count{background:#0000000f;color:inherit;font-size:.7rem;font-weight:700;padding:.1rem .4rem;border-radius:5px;min-width:1.2rem;text-align:center}.filter-btn.active .filter-count{background:#ffffff26}.filter-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.filter-dot-critical{background:#ef4444}.filter-dot-high{background:#f97316}.filter-dot-medium{background:#eab308}.filter-dot-low{background:#3b82f6}.filter-dot-info{background:#94a3b8}.severity-filter-critical.active{background:#991b1b;border-color:#991b1b;color:#fff}.severity-filter-high.active{background:#9a3412;border-color:#9a3412;color:#fff}.severity-filter-medium.active{background:#854d0e;border-color:#854d0e;color:#fff}.severity-filter-low.active{background:#1e40af;border-color:#1e40af;color:#fff}.severity-filter-info.active{background:#475569;border-color:#475569;color:#fff}.severity-filter-critical.active .filter-dot,.severity-filter-high.active .filter-dot,.severity-filter-medium.active .filter-dot,.severity-filter-low.active .filter-dot,.severity-filter-info.active .filter-dot{background:#ffffff80}.findings-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;color:var(--text-tertiary)}.findings-empty svg{width:40px;height:40px;margin-bottom:.75rem;opacity:.4}.findings-empty p{font-size:.9rem;font-style:italic}.findings-list{display:flex;flex-direction:column;gap:.5rem}.finding-card{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;overflow:hidden;border-left:3px solid var(--border-primary);box-shadow:0 1px 2px var(--shadow-sm);transition:all .2s ease;animation:finding-enter .25s ease both}.finding-card:hover{box-shadow:0 2px 8px var(--shadow-md)}.finding-expanded{box-shadow:0 4px 16px var(--shadow-md);border-color:var(--border-secondary)}.finding-critical{border-left-color:#ef4444}.finding-high{border-left-color:#f97316}.finding-medium{border-left-color:#eab308}.finding-low{border-left-color:#3b82f6}.finding-info{border-left-color:#94a3b8}.finding-header{display:flex;align-items:center;gap:.65rem;padding:.75rem 1rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s}.finding-header:hover{background:var(--bg-hover)}.finding-icon{width:20px;height:20px;flex-shrink:0}.finding-icon-critical{color:#ef4444}.finding-icon-high{color:#f97316}.finding-icon-medium{color:#eab308}.finding-icon-low{color:#3b82f6}.finding-icon-info{color:#94a3b8}.finding-header-text{flex:1;display:flex;align-items:center;gap:.6rem;min-width:0}.finding-title{font-size:.88rem;font-weight:500;color:var(--text-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finding-chevron{width:18px;height:18px;color:var(--text-tertiary);flex-shrink:0;transition:transform .2s ease}.finding-chevron-open{transform:rotate(180deg)}.severity-badge{display:inline-block;padding:.15rem .5rem;border-radius:5px;font-size:.65rem;font-weight:700;letter-spacing:.5px;flex-shrink:0;text-transform:uppercase}.severity-critical{background:var(--bg-critical);color:#dc2626}.severity-high{background:var(--bg-high);color:#ea580c}.severity-medium{background:var(--bg-medium-light);color:#ca8a04}.severity-low{background:var(--bg-low-light);color:#2563eb}.severity-info{background:var(--bg-info);color:#64748b}.finding-details{padding:0 1rem 1rem;border-top:1px solid var(--border-subtle);animation:finding-enter .2s ease both}.finding-description{font-size:.84rem;color:var(--text-body);margin:.75rem 0;line-height:1.65;white-space:pre-wrap}.finding-meta{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.85rem}.finding-meta-chip{display:flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--text-secondary);background:var(--bg-surface-alt);border:1px solid var(--border-subtle);border-radius:6px;padding:.35rem .65rem}.finding-meta-chip svg{width:13px;height:13px;flex-shrink:0;opacity:.5}.finding-meta-label{font-weight:600;color:var(--text-body);margin-right:.15rem}.finding-evidence-url{word-break:break-all;color:var(--text-secondary)}.finding-recommendation{background:var(--bg-success-light);border:1px solid var(--border-success);border-radius:8px;padding:.85rem;font-size:.84rem}.finding-recommendation-header{display:flex;align-items:center;gap:.4rem;margin-bottom:.45rem}.finding-recommendation-header svg{width:16px;height:16px;color:#16a34a;flex-shrink:0}.finding-recommendation-header strong{color:#15803d;font-size:.8rem;font-weight:700;letter-spacing:.2px}.finding-recommendation-body{color:var(--text-strong);line-height:1.6;margin:0;white-space:pre-wrap}.finding-code-block{background:#0f172a;color:#cbd5e1;font-family:SF Mono,Cascadia Code,Fira Code,Menlo,monospace;font-size:.75rem;line-height:1.55;padding:.85rem 1rem;border-radius:8px;overflow-x:auto;margin:.5rem 0;white-space:pre;border:1px solid #1e293b}.summary .table-wrapper{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;overflow:hidden;box-shadow:0 1px 3px var(--shadow-sm)}.summary .table-wrapper table{margin:0}.error{color:#dc2626;font-size:.9rem;margin-top:.5rem;background:var(--bg-error);padding:.6rem .85rem;border-radius:8px;border:1px solid var(--border-error)}.empty{color:var(--text-secondary);font-style:italic;padding:1.5rem 0;text-align:center}.findings-group{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;overflow:hidden;box-shadow:0 1px 2px var(--shadow-sm)}.findings-group-header{display:flex;align-items:center;gap:.6rem;width:100%;padding:.75rem 1rem;background:none;border:none;border-left:3px solid var(--border-primary);border-radius:0;cursor:pointer;font-family:inherit;color:inherit}.findings-group-header:hover{background:var(--bg-hover)}.findings-group-critical{border-left-color:#ef4444}.findings-group-high{border-left-color:#f97316}.findings-group-medium{border-left-color:#eab308}.findings-group-low{border-left-color:#3b82f6}.findings-group-info{border-left-color:#94a3b8}.findings-group-name{flex:1;text-align:left;font-size:.9rem;font-weight:600;color:var(--text-heading)}.findings-group-count{font-size:.68rem;font-weight:700;color:var(--text-secondary);background:var(--badge-bg);padding:.1rem .45rem;border-radius:5px}.findings-group-body{border-top:1px solid var(--border-subtle);padding:.5rem;display:flex;flex-direction:column;gap:.35rem}.findings-group-body .finding-card{box-shadow:none;border-color:var(--border-subtle)}.summary-insights{display:flex;gap:1rem;margin:1.5rem 0}.summary-donut{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;padding:1.25rem;flex:0 0 280px;box-shadow:0 1px 2px var(--shadow-sm)}.summary-donut h3,.summary-top-findings h3,.score-timeline-card h3{margin-bottom:.85rem}.donut-content{display:flex;align-items:center;gap:1.25rem}.donut-svg{width:110px;height:110px;flex-shrink:0}.donut-total-num{font-size:22px;font-weight:800;fill:var(--text-heading)}.donut-total-label{font-size:10px;font-weight:500;fill:var(--text-tertiary);text-transform:uppercase;letter-spacing:.3px}.donut-legend{display:flex;flex-direction:column;gap:.4rem}.donut-legend-item{display:flex;align-items:center;gap:.45rem;font-size:.78rem}.donut-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.donut-legend-name{color:var(--text-secondary);flex:1}.donut-legend-count{font-weight:700;color:var(--text-heading);min-width:1.2rem;text-align:right}.summary-top-findings{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;padding:1.25rem;flex:1;min-width:0;box-shadow:0 1px 2px var(--shadow-sm)}.top-findings-list{display:flex;flex-direction:column;gap:.5rem}.top-finding-item{display:flex;align-items:center;gap:.65rem;padding:.6rem .75rem;background:var(--bg-surface-alt);border:1px solid var(--border-subtle);border-radius:8px;border-left:3px solid var(--border-primary)}.top-finding-critical{border-left-color:#ef4444}.top-finding-high{border-left-color:#f97316}.top-finding-medium{border-left-color:#eab308}.top-finding-low{border-left-color:#3b82f6}.top-finding-info{border-left-color:#94a3b8}.top-finding-text{display:flex;flex-direction:column;min-width:0}.top-finding-title{font-size:.85rem;font-weight:500;color:var(--text-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-finding-checker{font-size:.72rem;color:var(--text-tertiary)}.score-timeline-card{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;padding:1.25rem;margin-bottom:1.5rem;box-shadow:0 1px 2px var(--shadow-sm)}.timeline-svg{width:100%;height:auto;display:block}.timeline-label{font-size:10px;fill:var(--text-tertiary);font-weight:500}.timeline-date{font-size:9px;fill:var(--text-tertiary);font-weight:500}@media(max-width:768px){.summary-insights{flex-direction:column}.summary-donut{flex:auto}}@media(max-width:480px){.donut-content{flex-direction:column;align-items:flex-start}}.audit-list-header-actions,.diff-controls{display:flex;align-items:center;gap:.35rem}.diff-checkbox{width:16px;height:16px;accent-color:#1d4ed8;cursor:pointer;flex-shrink:0}.diff-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.6rem;margin-bottom:1.5rem}.diff-card-fixed{border-left:3px solid #22c55e}.diff-card-fixed .big-number{color:#16a34a}.diff-card-new{border-left:3px solid #ef4444}.diff-card-new .big-number{color:#dc2626}.diff-score-comparison{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.diff-score-values{font-size:1.3rem;font-weight:800;color:var(--text-heading);letter-spacing:-.3px}.diff-score-arrow{color:var(--text-tertiary);font-weight:400}.diff-delta-positive{color:#16a34a;font-weight:700;font-size:.9rem}.diff-delta-negative{color:#dc2626;font-weight:700;font-size:.9rem}.diff-section{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;overflow:hidden;margin-bottom:.6rem;box-shadow:0 1px 2px var(--shadow-sm)}.diff-section-fixed{border-left:3px solid #22c55e}.diff-section-new{border-left:3px solid #ef4444}.diff-section-persistent{border-left:3px solid #94a3b8}.diff-section-header{display:flex;align-items:center;gap:.6rem;padding:.7rem 1rem;width:100%;background:none;border:none;border-radius:0;cursor:pointer;color:inherit;font-family:inherit}.diff-section-header:hover{background:var(--bg-hover)}.diff-section-title{font-size:.88rem;font-weight:600;color:var(--text-heading)}.diff-section-count{font-size:.68rem;font-weight:700;color:var(--text-secondary);background:var(--badge-bg);padding:.1rem .45rem;border-radius:5px}.diff-section-chevron{width:16px;height:16px;color:var(--text-tertiary);margin-left:auto;transition:transform .2s ease}.diff-section-chevron-open{transform:rotate(180deg)}.diff-section-body{border-top:1px solid var(--border-subtle)}.diff-item{display:flex;align-items:center;gap:.6rem;padding:.55rem 1rem;font-size:.82rem;border-bottom:1px solid var(--border-subtle)}.diff-item:last-child{border-bottom:none}.diff-item-fixed{background:var(--bg-success-light)}.diff-item-new{background:var(--bg-error)}.diff-item-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-heading)}.diff-item-checker{font-size:.72rem;color:var(--text-tertiary);flex-shrink:0}.diff-item-meta{font-size:.75rem;color:var(--text-secondary);flex-shrink:0}.diff-hero{display:flex;align-items:center;gap:1.5rem;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:12px;padding:1.5rem 2rem;margin-bottom:1rem;box-shadow:0 2px 8px var(--shadow-sm)}.diff-hero-side{flex:1;min-width:0}.diff-hero-label{display:block;font-size:.72rem;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.4rem}.diff-hero-grade-row{display:flex;align-items:baseline;gap:.5rem;margin-bottom:.65rem}.diff-hero-grade{font-size:2.2rem;font-weight:800;line-height:1;letter-spacing:-1px}.diff-hero-value{font-size:1.1rem;font-weight:700;color:var(--text-body)}.diff-hero-max{font-size:.8rem;font-weight:500;color:var(--text-tertiary)}.diff-hero-bar{height:8px;background:var(--bg-page);border-radius:4px;overflow:hidden}.diff-hero-bar-fill{height:100%;border-radius:4px;transform-origin:left;animation:diff-bar-fill 1s ease-out}.diff-hero-bar-SSS{background:#a855f7}.diff-hero-bar-SS{background:#8b5cf6}.diff-hero-bar-S{background:#06b6d4}.diff-hero-bar-A{background:#22c55e}.diff-hero-bar-B{background:#3b82f6}.diff-hero-bar-C{background:#eab308}.diff-hero-bar-D{background:#f97316}.diff-hero-bar-F{background:#ef4444}@keyframes diff-bar-fill{0%{transform:scaleX(0)}}.diff-hero-center{display:flex;flex-direction:column;align-items:center;gap:.2rem;flex-shrink:0;padding:0 .5rem}.diff-hero-arrow-icon{width:28px;height:28px;color:var(--border-secondary);animation:diff-arrow-pulse 2s ease-in-out infinite}@keyframes diff-arrow-pulse{0%,to{opacity:.5}50%{opacity:1}}.diff-hero-delta{font-size:1.2rem;font-weight:800;letter-spacing:-.5px;animation:diff-delta-enter .5s ease .6s both}.diff-hero-delta-up{color:#16a34a}.diff-hero-delta-down{color:#dc2626}.diff-hero-delta-neutral{color:var(--text-secondary)}.diff-hero-delta-label{font-size:.72rem;color:var(--text-tertiary);font-weight:500;animation:diff-delta-enter .5s ease .75s both}@keyframes diff-delta-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.diff-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.5rem}.diff-stat{display:flex;flex-direction:column;align-items:center;gap:.2rem;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;padding:1.25rem 1rem;box-shadow:0 1px 2px var(--shadow-sm)}.diff-stat-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:.35rem}.diff-stat-icon svg{width:20px;height:20px}.diff-stat-icon-fixed{background:var(--bg-success);color:#16a34a}.diff-stat-icon-new{background:var(--bg-error-strong);color:#dc2626}.diff-stat-icon-persistent{background:var(--bg-info);color:var(--text-secondary)}.diff-stat-number{font-size:1.6rem;font-weight:800;color:var(--text-heading);line-height:1.2;letter-spacing:-.5px}.diff-stat-fixed .diff-stat-number{color:#16a34a}.diff-stat-new .diff-stat-number{color:#dc2626}.diff-stat-label{font-size:.78rem;color:var(--text-secondary);font-weight:500}@media(max-width:768px){.diff-hero{flex-direction:column;gap:1rem;padding:1.25rem}.diff-hero-side{width:100%}.diff-hero-center{flex-direction:row;gap:.6rem}.diff-hero-arrow-icon{transform:rotate(90deg)}}@media(max-width:480px){.diff-stats{grid-template-columns:1fr}}.site-page{display:flex;flex-direction:column;gap:1.25rem}.sp-hero{display:flex;align-items:center;gap:1.5rem;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:14px;padding:1.5rem;box-shadow:0 1px 3px var(--shadow-sm);overflow:hidden}.sp-hero-left{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex-shrink:0}.sp-hero-grade{display:flex;align-items:center;gap:.4rem}.sp-hero-delta{font-size:.78rem;font-weight:700;border-radius:6px;padding:.1rem .4rem}.sp-hero-delta.positive{color:#16a34a;background:var(--bg-success)}.sp-hero-delta.negative{color:#dc2626;background:var(--bg-critical)}.sp-hero-center{flex:1;min-width:0;display:flex;flex-direction:column;gap:.3rem}.sp-hero-name{margin:0;font-size:1.35rem;font-weight:700;color:var(--text-heading);line-height:1.25}.sp-hero-url{display:inline-flex;align-items:center;gap:.25rem;font-size:.78rem;color:var(--text-secondary);text-decoration:none;word-break:break-all}.sp-hero-url:hover{color:var(--btn-primary-bg)}.sp-hero-stats{display:flex;gap:1.25rem;margin-top:.75rem}.sp-stat{display:flex;flex-direction:column;gap:.05rem}.sp-stat-value{font-size:1.1rem;font-weight:800;color:var(--text-heading);line-height:1.2}.sp-stat-label{font-size:.68rem;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.3px}.sp-hero-actions{display:flex;flex-wrap:wrap;gap:.4rem;flex-shrink:0;align-items:center}.sp-gauge{position:relative;width:120px;height:95px}.sp-gauge-svg{width:100%;height:100%}.sp-gauge-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding-top:10px;gap:2px}.sp-gauge-score{font-size:1.5rem;font-weight:800;color:var(--text-heading);line-height:1;letter-spacing:-.5px}.sp-gauge-max{font-size:.68rem;color:var(--text-tertiary);font-weight:500}.sp-gauge-placeholder{width:120px;height:95px;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:var(--text-tertiary);background:var(--bg-surface-alt);border-radius:50%}.score-badge-lg{font-size:1rem;padding:.2rem .65rem;font-weight:800}.score-badge-none{background:var(--badge-bg);color:var(--text-tertiary)}.sp-insights{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.sp-section{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:12px;padding:1.25rem;box-shadow:0 1px 2px var(--shadow-sm)}.sp-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.sp-section-title{margin:0 0 .75rem;font-size:.85rem;font-weight:700;color:var(--text-strong);text-transform:uppercase;letter-spacing:.3px}.sp-section-header .sp-section-title{margin-bottom:0}.sp-section-actions{display:flex;align-items:center;gap:.5rem}.sp-severity-bar-section{display:flex;flex-direction:column;gap:.75rem}.sp-severity-stacked-bar{display:flex;height:14px;border-radius:7px;overflow:hidden;background:var(--border-primary)}.sp-severity-segment{min-width:3px;transition:width .4s ease}.sp-severity-segment-critical{background:var(--grade-F)}.sp-severity-segment-high{background:var(--grade-D)}.sp-severity-segment-medium{background:var(--grade-C)}.sp-severity-segment-low{background:var(--grade-B)}.sp-severity-segment-info{background:#94a3b8}.sp-severity-legend{display:flex;flex-wrap:wrap;gap:.65rem}.sp-severity-legend-item{display:flex;align-items:center;gap:.3rem;font-size:.75rem}.sp-severity-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.sp-severity-legend-dot.critical{background:var(--grade-F)}.sp-severity-legend-dot.high{background:var(--grade-D)}.sp-severity-legend-dot.medium{background:var(--grade-C)}.sp-severity-legend-dot.low{background:var(--grade-B)}.sp-severity-legend-dot.info{background:#94a3b8}.sp-severity-legend-label{color:var(--text-secondary);font-weight:500}.sp-severity-legend-count{color:var(--text-heading);font-weight:700}.sp-timeline-svg{width:100%;max-height:140px}.sp-timeline-empty{font-size:.78rem;color:var(--text-tertiary);font-style:italic;padding:1rem 0}.sp-top-findings{display:flex;flex-direction:column;gap:.5rem}.sp-top-finding{display:flex;align-items:center;gap:.65rem;padding:.6rem .8rem;border-radius:8px;background:var(--bg-surface-alt);border-left:3px solid transparent;transition:background .15s ease}.sp-top-finding:hover{background:var(--bg-hover)}.sp-top-finding-critical{border-left-color:var(--grade-F)}.sp-top-finding-high{border-left-color:var(--grade-D)}.sp-top-finding-medium{border-left-color:var(--grade-C)}.sp-top-finding-low{border-left-color:var(--grade-B)}.sp-top-finding-info{border-left-color:#94a3b8}.sp-finding-severity-badge{flex-shrink:0;font-size:.62rem;font-weight:700;padding:.15rem .4rem;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.sp-finding-severity-badge.critical{background:var(--bg-critical-strong);color:var(--grade-F-text)}.sp-finding-severity-badge.high{background:var(--bg-high);color:var(--grade-D-text)}.sp-finding-severity-badge.medium{background:var(--bg-medium);color:var(--grade-C-text)}.sp-finding-severity-badge.low{background:var(--bg-low);color:var(--grade-B-text)}.sp-finding-severity-badge.info{background:var(--bg-info);color:var(--text-secondary)}.sp-finding-text{display:flex;flex-direction:column;gap:.1rem;min-width:0}.sp-finding-title{font-size:.82rem;font-weight:600;color:var(--text-heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-finding-checker{font-size:.7rem;color:var(--text-tertiary)}.sp-checker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem}.sp-checker-card{display:flex;align-items:center;gap:.5rem;padding:.55rem .75rem;border-radius:8px;background:var(--bg-surface-alt);border:1px solid var(--border-subtle);transition:background .15s ease}.sp-checker-card:hover{background:var(--bg-hover)}.sp-checker-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.sp-checker-dot.critical{background:var(--grade-F)}.sp-checker-dot.high{background:var(--grade-D)}.sp-checker-dot.medium{background:var(--grade-C)}.sp-checker-dot.low{background:var(--grade-B)}.sp-checker-dot.info{background:#94a3b8}.sp-checker-name{flex:1;min-width:0;font-size:.78rem;font-weight:600;color:var(--text-heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-checker-count{font-size:.7rem;color:var(--text-tertiary);white-space:nowrap}.sp-diff-controls{display:flex;align-items:center;gap:.4rem}.sp-diff-check{width:16px;height:16px;accent-color:var(--btn-primary-bg);cursor:pointer;flex-shrink:0}.sp-audit-list{display:flex;flex-direction:column;gap:0}.sp-audit-row{display:flex;align-items:center;gap:.65rem;padding:.65rem 0;border-bottom:1px solid var(--border-primary);font-size:.8rem}.sp-audit-row:last-child{border-bottom:none}.sp-audit-row-running{background:color-mix(in srgb,var(--btn-primary-bg) 4%,transparent);margin:0 -1.25rem;padding-left:1.25rem;padding-right:1.25rem}.sp-audit-id{font-weight:600;color:var(--text-secondary);font-size:.75rem;min-width:2.5rem}.sp-audit-mini-bar{display:flex;align-items:center;gap:.4rem;flex:0 0 100px}.sp-audit-mini-bar-track{flex:1;height:5px;border-radius:3px;background:var(--border-primary);overflow:hidden}.sp-audit-mini-bar-fill{height:100%;border-radius:3px;transition:width .3s ease}.sp-audit-mini-score{font-size:.68rem;font-weight:700;color:var(--text-secondary);min-width:28px;text-align:right}.sp-audit-progress{font-size:.72rem;color:var(--text-secondary);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sp-audit-error{font-size:.72rem;color:var(--grade-F);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sp-audit-date{color:var(--text-tertiary);font-size:.72rem;white-space:nowrap;margin-left:auto}.sp-audit-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.sp-empty{font-size:.82rem;color:var(--text-tertiary);font-style:italic;padding:1rem 0;margin:0}.btn-small{padding:.3rem .65rem;font-size:.72rem;border-radius:6px}.score-badge-sm{font-size:.68rem;padding:.12rem .45rem}@media(max-width:768px){.sp-hero{flex-direction:column;align-items:stretch;gap:1rem}.sp-hero-left{flex-direction:row;gap:1rem;align-items:center}.sp-hero-actions{flex-direction:row;align-items:center}.sp-insights{grid-template-columns:1fr}}@media(max-width:640px){.sp-hero-stats{gap:.75rem}.sp-audit-row{flex-wrap:wrap}.sp-audit-date{margin-left:0}.sp-audit-mini-bar{flex:1 1 100%;order:10}.sp-checker-grid{grid-template-columns:1fr}}.auth-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;height:100vh;color:var(--text-secondary);font-size:.95rem}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--bg-base);padding:1rem}.auth-card{width:100%;max-width:400px;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:12px;padding:2.5rem 2rem;text-align:center}.auth-logo{width:56px;height:56px;margin:0 auto .75rem}.auth-logo img{width:100%;height:100%;object-fit:contain}.auth-title{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem}.auth-title span{color:var(--accent)}.auth-subtitle{font-size:.875rem;color:var(--text-secondary);margin:0 0 .25rem}.auth-description{font-size:.8rem;color:var(--text-tertiary);margin:0 0 1.5rem}.auth-form{display:flex;flex-direction:column;gap:.875rem;text-align:left;margin-top:1.5rem}.auth-label{display:flex;flex-direction:column;gap:.3rem;font-size:.8rem;font-weight:500;color:var(--text-secondary)}.auth-input{padding:.6rem .75rem;border:1px solid var(--border-primary);border-radius:8px;background:var(--bg-base);color:var(--text-primary);font-size:.875rem;outline:none;transition:border-color .15s}.auth-input:focus{border-color:var(--accent)}.auth-btn{margin-top:.5rem;width:100%;justify-content:center;padding:.65rem;font-size:.9rem}.auth-error{background:var(--severity-critical-bg, rgba(239, 68, 68, .08));color:var(--severity-critical, #ef4444);border:1px solid var(--severity-critical, #ef4444);border-radius:8px;padding:.5rem .75rem;font-size:.8rem}.admin-panel{max-width:1200px}.admin-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}@media(max-width:768px){.admin-layout{grid-template-columns:1fr}}.admin-layout-full{grid-template-columns:1fr;max-width:600px}.admin-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.admin-header h2{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.admin-form{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:12px;padding:1.25rem;margin-bottom:1.5rem;display:flex;flex-direction:column;gap:.75rem}.admin-form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:600px){.admin-form-row{grid-template-columns:1fr}}.admin-user-list{display:flex;flex-direction:column;gap:.5rem}.admin-user-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;cursor:pointer;transition:border-color .15s}.admin-user-row:hover{border-color:var(--text-tertiary)}.admin-user-row.selected{border-color:var(--accent)}.admin-user-info{flex:1;display:flex;flex-direction:column;gap:.1rem}.admin-user-name{font-size:.875rem;font-weight:500;color:var(--text-primary)}.admin-user-email{font-size:.75rem;color:var(--text-tertiary)}.admin-role-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.2rem .5rem;border-radius:6px}.admin-role-admin{background:var(--severity-high-bg, rgba(245, 158, 11, .1));color:var(--severity-high, #f59e0b)}.admin-role-user{background:var(--severity-info-bg, rgba(59, 130, 246, .1));color:var(--severity-info, #3b82f6)}.admin-detail-panel{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:12px;padding:1.25rem}.admin-detail-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--border-primary)}.admin-detail-header-info{flex:1;min-width:0}.admin-detail-name{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .15rem}.admin-detail-email{font-size:.8rem;color:var(--text-tertiary);margin:0 0 .5rem}.admin-detail-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:none;color:var(--text-tertiary);cursor:pointer;border-radius:6px;flex-shrink:0;transition:color .15s,background .15s}.admin-detail-close:hover{color:var(--text-primary);background:var(--bg-base)}.admin-detail-close svg{width:16px;height:16px}.admin-detail-section-title{font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0 0 .75rem}.admin-site-list{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem}.admin-site-check{display:flex;align-items:center;gap:.6rem;padding:.5rem .6rem;border-radius:8px;transition:background .15s}.admin-site-check:hover{background:var(--bg-base)}.admin-site-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);flex-shrink:0;cursor:pointer}.admin-site-check-info{display:flex;flex-direction:column;gap:.05rem;min-width:0;cursor:pointer}.admin-site-check-name{font-size:.8rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-site-check-url{font-size:.7rem;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-detail-message{font-size:.8rem;color:var(--text-tertiary);padding:.75rem;background:var(--bg-base);border-radius:8px;text-align:center}.sidebar-user-section{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.sidebar-user-info{display:flex;flex-direction:column;gap:.05rem;flex:1;min-width:0}.sidebar-user-name{font-size:.8rem;font-weight:500;color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-role{font-size:.65rem;color:#475569;text-transform:uppercase;letter-spacing:.04em}.sidebar-logout-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;background:none;color:#475569;cursor:pointer;border-radius:6px;flex-shrink:0;transition:color .15s,background .15s}.sidebar-logout-btn:hover{color:var(--severity-critical, #ef4444);background:var(--severity-critical-bg, rgba(239, 68, 68, .08))}.sidebar-logout-btn svg{width:16px;height:16px}.mobile-menu-btn{display:none;position:fixed;top:.75rem;left:.75rem;z-index:20;width:40px;height:40px;padding:0;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:10px;box-shadow:0 2px 8px var(--shadow-md);color:var(--text-strong);cursor:pointer;align-items:center;justify-content:center}.mobile-menu-btn svg{width:20px;height:20px}.mobile-menu-btn:hover{background:var(--bg-hover);color:var(--text-heading)}.sidebar-overlay{display:none}@media(max-width:768px){.sidebar{transform:translate(-100%);transition:transform .25s ease}.sidebar.sidebar-open{transform:translate(0)}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.main-content{margin-left:0}.main-inner{padding:3.5rem 1rem 2rem}.mobile-menu-btn{display:flex}.page-header{flex-direction:column;gap:.75rem}.form-row{flex-direction:column}.summary-grid,.diff-summary-grid,.dashboard-metrics{grid-template-columns:repeat(2,1fr)}.site-grid{grid-template-columns:1fr}.site-grid-toolbar{flex-wrap:wrap;gap:.4rem}.critical-toggle{margin-left:0}.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.tabs button{flex:0 0 auto;min-width:0}.asset-card-details-with-preview{flex-direction:column}.audit-row{flex-wrap:wrap;gap:.4rem}.audit-date{width:100%;order:3}.site-header{flex-wrap:wrap}.asset-card-header{flex-wrap:wrap;gap:.4rem}.asset-header-key{min-width:120px}.finding-header-text{flex-wrap:wrap;gap:.3rem}}@media(max-width:480px){.summary-grid,.diff-summary-grid,.dashboard-metrics{grid-template-columns:1fr}.main-inner{padding:3.5rem .75rem 1.5rem}.asset-detail-grid{grid-template-columns:1fr}}[data-theme=dark] .badge-pending{color:#fbbf24}[data-theme=dark] .badge-running{color:#60a5fa}[data-theme=dark] .badge-completed{color:#4ade80}[data-theme=dark] .badge-failed{color:#f87171}[data-theme=dark] .asset-status{color:#4ade80}[data-theme=dark] .asset-status-error{color:#f87171}[data-theme=dark] .asset-type-badge{color:#60a5fa}[data-theme=dark] .severity-medium{color:#eab308}[data-theme=dark] .severity-info{color:#94a3b8}[data-theme=dark] .severity-critical{color:#f87171}[data-theme=dark] .severity-high{color:#fb923c}[data-theme=dark] .severity-low{color:#60a5fa}[data-theme=dark] .finding-recommendation-header strong{color:#4ade80}[data-theme=dark] .asset-full-url{color:#60a5fa}[data-theme=dark] .filter-count{background:#ffffff0f}
