:root{--bg:#0a0a0f;--bg-2:#111118;--bg-3:#18181f;--bg-4:#1e1e28;--surface:#1a1a24;--surface-2:#22222e;--border:#ffffff14;--border-2:#ffffff1f;--blue:#4d9fff;--blue-glow:#3b82f6;--blue-dim:#4d9fff26;--blue-dim2:#4d9fff14;--text:#f0f0f8;--text-2:#a0a0b8;--text-3:#606080;--green:#34d399;--red:#f87171;--radius:12px;--radius-sm:8px;--status-success:#34d399;--status-success-bg:#34d3991f;--status-success-border:#34d39933;--status-warn:#f59e0b;--status-warn-bg:#f59e0b1f;--status-warn-border:#f59e0b38;--status-danger:#ef4444;--status-danger-bg:#ef44441f;--status-danger-border:#ef444438;--status-neutral:var(--text-3);--status-neutral-bg:#ffffff0d;--status-neutral-border:var(--border)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;flex-direction:column;min-height:100vh;font-family:Inter,-apple-system,sans-serif;font-weight:400;display:flex;overflow-x:hidden}.bg-glow{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.bg-glow:before{content:"";background:radial-gradient(at bottom,#3b82f62e 0%,#3b82f60f 40%,#0000 70%);width:140%;height:60%;position:absolute;bottom:-20%;left:50%;transform:translate(-50%)}.bg-arc{pointer-events:none;z-index:0;border-top:1px solid #64a0ff1f;border-radius:50% 50% 0 0;width:120vw;height:280px;position:fixed;bottom:-60px;left:50%;transform:translate(-50%);box-shadow:0 -16px 60px #3b82f614}header{z-index:10;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a0a0fcc;align-items:center;gap:.75rem;padding:1.25rem 2rem;display:flex;position:relative}.logo{color:var(--text);letter-spacing:-.01em;align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;text-decoration:none;display:flex}.logo-dot{background:var(--blue);width:7px;height:7px;box-shadow:0 0 8px var(--blue);border-radius:50%}main{z-index:1;flex-direction:column;flex:1;align-items:center;padding:5rem 1.5rem 8rem;display:flex;position:relative}main.report-page{width:100%;max-width:960px;margin:0 auto;padding-top:3rem}.hero{text-align:center;max-width:600px;margin-bottom:2.5rem}.hero h1{letter-spacing:-.03em;color:var(--text);margin-bottom:1rem;font-size:clamp(1.8rem,4vw,2.4rem);font-weight:700;line-height:1.1}.hero h1 .accent{background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero p{color:var(--text-2);max-width:440px;margin:0 auto;font-size:.95rem;line-height:1.7}.section-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);margin-bottom:.75rem;padding-left:.25rem;font-size:.7rem;font-weight:500}.audit-input{flex-direction:column;gap:1rem;width:100%;max-width:640px;display:flex}.input-group{flex-direction:column;gap:.4rem;display:flex}.input-label{color:var(--text-2);letter-spacing:-.01em;font-size:.78rem;font-weight:500}.audit-input input[type=url],.audit-input input[type=text],.audit-input select{background:var(--surface);border:1px solid var(--border-2);color:var(--text);border-radius:8px;width:100%;padding:.75rem 1rem;font-family:Inter,-apple-system,sans-serif;font-size:.9rem;transition:border-color .15s,box-shadow .15s}.audit-input input:focus,.audit-input select:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-dim);outline:none}.audit-input input::placeholder{color:var(--text-3)}.audit-input select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23606080' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;padding-right:2.5rem}.audit-input select option{background:var(--surface);color:var(--text)}.toggle-group{flex-wrap:wrap;gap:.5rem;display:flex}.toggle-option{border:1px solid var(--border);color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border-radius:20px;padding:.5rem .9rem;font-family:Inter,-apple-system,sans-serif;font-size:.78rem;font-weight:500;transition:all .14s}.toggle-option:hover{color:var(--blue);border-color:#4d9fff66}.toggle-option.is-selected{background:var(--surface-2);border-color:var(--blue);color:var(--text)}.competitor-expand{width:100%}.competitor-expand summary{color:var(--text-3);cursor:pointer;-webkit-user-select:none;user-select:none;padding:.5rem 0;font-size:.78rem}.competitor-expand summary:hover{color:var(--text-2)}.competitor-expand[open]{flex-direction:column;gap:.5rem;display:flex}.btn-primary{background:var(--blue-glow);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;margin-top:.5rem;padding:.75rem 1.5rem;font-family:Inter,-apple-system,sans-serif;font-size:.9rem;font-weight:600;transition:all .15s;display:flex;box-shadow:0 0 20px #3b82f64d}.btn-primary:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 0 28px #3b82f673}.btn-primary:disabled{opacity:.3;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary svg{width:16px;height:16px}.audit-progress{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;width:100%;max-width:640px;padding:3rem 2rem}.progress-bar{background:var(--surface-2);border-radius:2px;height:3px;margin-bottom:1.5rem;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg, var(--blue-glow), #60a5fa);height:100%;box-shadow:0 0 8px var(--blue-dim);border-radius:2px;transition:width .4s;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.progress-message{color:var(--text-2);margin-bottom:.5rem;font-size:.9rem;transition:opacity .2s}.progress-phase{color:var(--text-3);font-size:.72rem}.score-gauge{flex-direction:column;align-items:center;gap:.5rem;display:flex;position:relative}.score-gauge svg{transform:rotate(-90deg)}.gauge-track{stroke:var(--surface-2);stroke-width:6px;fill:none}.gauge-fill{stroke-width:6px;stroke-linecap:round;fill:none;transition:stroke-dashoffset 1s}.gauge-fill.score-optimal{stroke:var(--status-success)}.gauge-fill.score-needs-improvement{stroke:var(--status-warn)}.gauge-fill.score-poor{stroke:var(--status-danger)}.gauge-number{font-variant-numeric:tabular-nums;font-size:2.5rem;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gauge-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-size:.7rem;font-weight:500}.score-gauge--small svg{width:60px;height:60px}.score-gauge--small .gauge-number{font-size:1rem}.score-gauge--medium svg{width:90px;height:90px}.score-gauge--medium .gauge-number{font-size:1.5rem}.score-gauge--large svg{width:150px;height:150px}.score-gauge--large .gauge-number{font-size:2.5rem}.finding-card{background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius);border-left:3px solid var(--text-3);flex-direction:column;gap:.75rem;padding:1.1rem 1.25rem;transition:background .15s;display:flex}.finding-card:hover{background:var(--surface-2)}.finding-card--pass{border-left-color:var(--status-success)}.finding-card--warn{border-left-color:var(--status-warn)}.finding-card--fail{border-left-color:var(--status-danger)}.finding-header{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.finding-id{letter-spacing:.05em;color:var(--text-3);font-size:.7rem;font-weight:500}.finding-name{color:var(--text);flex:1;font-size:.9rem;font-weight:600}.finding-observation,.finding-recommendation p{color:var(--text-2);font-size:.85rem;line-height:1.6}.finding-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.finding-source{color:var(--text-3);font-size:.68rem}.finding-ice{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:.68rem;font-weight:600}.status-badge{letter-spacing:.06em;text-transform:uppercase;border-radius:20px;flex-shrink:0;padding:.2rem .5rem;font-size:.65rem;font-weight:500}.badge-pass{background:var(--status-success-bg);color:var(--status-success);border:1px solid var(--status-success-border)}.badge-warn{background:var(--status-warn-bg);color:var(--status-warn);border:1px solid var(--status-warn-border)}.badge-fail{background:var(--status-danger-bg);color:var(--status-danger);border:1px solid var(--status-danger-border)}.badge-na{background:var(--status-neutral-bg);color:var(--status-neutral);border:1px solid var(--status-neutral-border)}.vital-sign-banner{background:var(--status-danger-bg);border:1px solid var(--status-danger-border);border-radius:var(--radius);align-items:flex-start;gap:1rem;margin-bottom:1.5rem;padding:1.25rem;display:flex}.vital-sign-banner svg{width:20px;height:20px;color:var(--status-danger);flex-shrink:0;margin-top:2px}.banner-title{color:var(--text);margin-bottom:.25rem;font-size:.9rem;font-weight:600}.banner-body{color:var(--text-2);font-size:.85rem;line-height:1.6}.action-plan{grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem;display:grid}.action-column{border-top:3px solid var(--border-2);flex-direction:column;gap:.75rem;padding-top:1rem;display:flex}.action-column--quickwins{border-top-color:var(--status-success)}.action-column--medium{border-top-color:var(--blue)}.action-column--strategic{border-top-color:var(--status-warn)}.action-description{color:var(--text-3);margin-top:-.5rem;margin-bottom:.5rem;font-size:.72rem}.score-dashboard{flex-wrap:wrap;justify-content:center;gap:2rem;padding:2rem 0;display:flex}.report-section{margin-bottom:2.5rem}.report-section h2{letter-spacing:-.02em;color:var(--text);margin-bottom:1rem;font-size:1.25rem;font-weight:600}.findings-list{flex-direction:column;gap:.75rem;display:flex}.executive-summary{background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius);margin-bottom:2rem;padding:1.5rem}.executive-summary p{color:var(--text-2);font-size:.9rem;line-height:1.8}.report-cover{text-align:center;border-bottom:1px solid var(--border);margin-bottom:2.5rem;padding:2rem 0 3rem}.report-cover .cover-url{color:var(--text-2);margin-top:1rem;font-size:.85rem}.report-cover .cover-date{color:var(--text-3);margin-top:.25rem;font-size:.72rem}.report-cover .cover-type{color:var(--text-3);text-transform:uppercase;letter-spacing:.12em;margin-top:1.5rem;font-size:.78rem}.methodology{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-top:2rem;padding:1.5rem}.methodology h3{margin-bottom:.75rem;font-size:.95rem;font-weight:600}.methodology p,.methodology li{color:var(--text-2);font-size:.85rem;line-height:1.7}.methodology ul{margin-top:.5rem;padding-left:1.5rem}footer{z-index:1;border-top:1px solid var(--border);color:var(--text-3);text-align:center;letter-spacing:.04em;background:#0a0a0f99;padding:1.25rem 2rem;font-size:.72rem;position:relative}footer span{opacity:.4;margin:0 .4em}.error-card{background:var(--status-danger-bg);border:1px solid var(--status-danger-border);border-radius:var(--radius);text-align:center;width:100%;max-width:640px;padding:2rem}.error-card h3{color:var(--status-danger);margin-bottom:.5rem;font-size:1rem;font-weight:600}.error-card p{color:var(--text-2);font-size:.85rem;line-height:1.6}.error-card .btn-primary{margin-top:1.5rem;display:inline-flex}@media (max-width:768px){.action-plan{grid-template-columns:1fr}.score-dashboard{gap:1rem}main{padding:2.5rem 1rem 6rem}}@media (max-width:600px){.toggle-group{flex-direction:column}.toggle-option{text-align:center;width:100%}header{padding:1rem 1.25rem}}
