.web-audit .section-heading h1 { margin: 7px 0 8px; font-size: clamp(2.2rem,4.2vw,4.4rem); line-height: 1; letter-spacing: -.045em; }
.audit-form { padding: 28px; border: 1px solid var(--line-bright); border-radius: var(--radius); background: var(--panel); box-shadow: var(--shadow); }
.audit-form > label { display: block; margin-bottom: 10px; font-weight: 700; }
.audit-form__row { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 12px; }
.audit-form__row > svg { width: 24px; height: 24px; color: var(--cyan); }
.audit-form input { width: 100%; min-width: 0; padding: 14px 16px; border: 1px solid var(--line); border-radius: 6px; background: var(--bg-950); color: var(--text); user-select: text; -webkit-user-select: text; }
.audit-form input:focus-visible { outline: 2px solid var(--cyan); outline-offset: 2px; }
.audit-form input[aria-invalid="true"] { border-color: var(--danger); }
.audit-form p { margin: 10px 0 0; color: var(--muted); font-size: .78rem; }
.audit-status { min-height: 1.3em; color: var(--cyan)!important; }
.audit-form.is-loading button { opacity: .65; cursor: wait; }
.audit-scope { display: flex; gap: 8px; flex-wrap: wrap; margin: 18px 0 32px; }
.audit-scope span { padding: 7px 12px; border: 1px solid var(--line); border-radius: 99px; color: var(--muted); font-size: .73rem; background: var(--bg-900); }
.audit-results { display: grid; gap: 20px; }
.audit-summary { display: grid; grid-template-columns: 170px minmax(0,1fr) auto; align-items: center; gap: 25px; padding: 24px; border: 1px solid var(--line); background: var(--panel); border-radius: var(--radius); }
.audit-summary h2 { margin: 0 0 4px; font-size: 1.4rem; }.audit-summary a { color: var(--cyan); overflow-wrap: anywhere; }.audit-summary p { margin: 6px 0 0; color: var(--muted); font-size: .78rem; }
.audit-grade { display: grid; justify-items: center; padding: 15px; border: 1px solid var(--line); background: var(--bg-950); border-radius: 8px; --grade:var(--gold); }
.audit-grade[data-level="good"] { --grade:var(--green); }.audit-grade[data-level="poor"] { --grade:var(--danger); }
.audit-grade small { color: var(--muted); font: .58rem var(--font-mono); }.audit-grade strong { color: var(--grade); font: 700 3.7rem/1 var(--font-mono); }.audit-grade span { color: var(--grade); font-weight: 700; }
.audit-counts { display: grid; grid-template-columns: repeat(3,auto); gap: 7px; }.audit-counts span { padding: 7px 9px; border-radius: 4px; font-size: .7rem; text-align: center; }
.audit-counts .high { background:#641f33;color:#ffb5c1}.audit-counts .medium{background:#59451b;color:#ffe49e}.audit-counts .low{background:#663a22;color:#ffc59d}.audit-counts .pass{background:#174d37;color:#9bffd0}.audit-counts .info{background:#283d48;color:#d7e5ec}
.audit-overview { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }.audit-overview article { padding: 16px; border: 1px solid var(--line); background: var(--panel); border-radius: 7px; }.audit-overview small,.audit-overview strong { display:block }.audit-overview small { color:var(--muted);font-size:.68rem }.audit-overview strong{margin-top:5px;overflow-wrap:anywhere}
.audit-visuals,.audit-dependencies{padding:22px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(145deg,var(--panel),rgba(8,31,40,.94));overflow:hidden}.audit-visuals{position:relative}.audit-visuals::before{content:"";position:absolute;width:260px;height:260px;right:-120px;top:-130px;border-radius:50%;background:radial-gradient(circle,rgba(39,229,242,.12),transparent 68%);pointer-events:none;animation:audit-breathe 5s ease-in-out infinite}.audit-visuals__heading,.audit-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:18px}.audit-visuals h2,.audit-dependencies h2{margin:0;font-size:1.12rem}.audit-visuals p,.audit-dependencies p{margin:5px 0 0;color:var(--muted);font-size:.76rem}.audit-live-dot,#audit-catalog-date{color:var(--cyan);font:.61rem var(--font-mono);letter-spacing:.08em}.audit-live-dot::before{content:"";display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 0 rgba(74,237,164,.5);animation:audit-pulse 2s infinite}.audit-visuals__grid{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(360px,1.1fr);gap:16px;margin-top:18px}.audit-chart-card{padding:18px;border:1px solid var(--line);border-radius:7px;background:rgba(3,17,24,.74)}.audit-chart-card h3{margin:0;font-size:.92rem}.audit-chart-card small{display:block;margin-top:4px;color:var(--muted);font-size:.67rem}.audit-radar{max-width:360px;margin:8px auto 0}.audit-radar svg{display:block;width:100%;overflow:visible}.audit-radar__ring{fill:none;stroke:rgba(129,180,194,.23);stroke-width:1}.audit-radar__axis{stroke:rgba(129,180,194,.2)}.audit-radar__shape{fill:url(#audit-radar-glow);stroke:var(--cyan);stroke-width:2;transition:points .9s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(0 0 8px rgba(39,229,242,.22))}.audit-radar__dot{fill:var(--bg-950);stroke:var(--cyan);stroke-width:3}.audit-radar__label{fill:var(--muted);font:9px var(--font-mono)}.audit-radar__score{fill:var(--text);font:700 26px var(--font-mono)}.audit-radar__score-label{fill:var(--muted);font:8px var(--font-mono);letter-spacing:.12em}.audit-radar-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.audit-radar-controls button{display:flex;justify-content:space-between;gap:6px;padding:7px;border:1px solid var(--line);border-radius:4px;background:var(--bg-900);color:var(--muted);font-size:.64rem;cursor:pointer}.audit-radar-controls button:hover,.audit-radar-controls button:focus-visible{border-color:var(--cyan);color:var(--text);transform:translateY(-1px)}.audit-radar-controls b{color:var(--cyan)}.audit-heatmap{margin-top:24px;overflow-x:auto}.audit-heatmap__table{display:grid;grid-template-columns:minmax(95px,1.4fr) repeat(6,minmax(42px,1fr));gap:7px;min-width:510px;align-items:stretch}.audit-heatmap__corner,.audit-heatmap__column{align-self:end;padding:5px;color:var(--muted);font:.58rem var(--font-mono);text-align:center}.audit-heatmap__corner{text-align:left}.audit-heatmap__row,.audit-heatmap__cell{min-height:39px;border:1px solid var(--line);border-radius:4px;color:var(--text);cursor:pointer}.audit-heatmap__row{padding:7px;background:transparent;text-align:left;font-size:.67rem}.audit-heatmap__row:hover{color:var(--cyan)}.audit-heatmap__cell{font:700 .74rem var(--font-mono);background:color-mix(in srgb,var(--cell-color) calc(15% + var(--intensity)*70%),var(--bg-950))}.audit-heatmap__cell:hover,.audit-heatmap__cell:focus-visible{outline:2px solid var(--cyan);transform:scale(1.06);z-index:1}.audit-heatmap__cell.is-critical,.audit-heatmap__cell.is-high{--cell-color:#ff405d}.audit-heatmap__cell.is-medium{--cell-color:#f3b936}.audit-heatmap__cell.is-low{--cell-color:#ff8b4d}.audit-heatmap__cell.is-info{--cell-color:#4f8ca0}.audit-heatmap__cell.is-pass{--cell-color:#35d98a}
.audit-dependencies>div:last-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.audit-dependency{padding:14px;border:1px solid var(--line);border-left:3px solid var(--muted);border-radius:6px;background:var(--bg-900);animation:audit-rise .48s both}.audit-dependency[data-status="current"]{border-left-color:var(--green)}.audit-dependency[data-status="review"]{border-left-color:var(--gold)}.audit-dependency[data-status="outdated"]{border-left-color:var(--danger)}.audit-dependency>div{display:flex;justify-content:space-between;gap:12px}.audit-dependency span{padding:3px 7px;border-radius:99px;background:rgba(129,180,194,.12);color:var(--cyan);font:.59rem var(--font-mono)}.audit-dependency p{font-family:var(--font-mono)}.audit-dependency small{display:block;margin-top:9px;color:var(--muted);font:.6rem var(--font-mono)}
.audit-architecture{padding:22px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.audit-architecture>div:first-child{display:flex;align-items:end;justify-content:space-between;gap:20px}.audit-architecture h2{font-size:1.1rem;margin:0}.audit-architecture p{color:var(--muted);font-size:.75rem;margin:4px 0}.audit-architecture>div:last-child{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.audit-tech{padding:14px;border:1px solid var(--line);border-radius:6px;background:var(--bg-900)}.audit-tech small,.audit-tech strong,.audit-tech span{display:block}.audit-tech small{color:var(--cyan);font:.62rem var(--font-mono)}.audit-tech strong{margin:5px 0}.audit-tech span{color:var(--muted);font-size:.72rem}.audit-tech--empty{grid-column:1/-1;color:var(--muted);font-size:.8rem}
.audit-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.audit-actions small{color:var(--muted);font-size:.72rem}
.audit-tabs { display:flex;gap:8px;overflow-x:auto;padding-bottom:3px }.audit-tabs button { flex:0 0 auto;padding:9px 13px;border:1px solid var(--line);border-radius:99px;background:var(--bg-900);color:var(--muted);cursor:pointer }.audit-tabs button[aria-selected="true"]{border-color:var(--cyan);color:var(--cyan);background:rgba(39,229,242,.07)}
.audit-findings { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px }.audit-finding { padding:18px;border:1px solid var(--line);border-left:3px solid var(--muted);background:var(--panel);border-radius:6px }.audit-finding[data-level="critical"],.audit-finding[data-level="high"]{border-left-color:var(--danger)}.audit-finding[data-level="medium"]{border-left-color:var(--gold)}.audit-finding[data-level="low"]{border-left-color:#ffab70}.audit-finding[data-level="pass"]{border-left-color:var(--green)}.audit-finding h3{font-size:.92rem;margin:4px 0 8px}.audit-finding p{font-size:.79rem;color:var(--muted);margin:5px 0}.audit-finding small{color:var(--cyan);font:.64rem var(--font-mono)}.audit-finding b{display:block;margin-top:11px;font-size:.73rem;color:var(--text)}
.audit-finding{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;animation:audit-rise .45s both}.audit-finding:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.18)}.audit-finding pre{margin:9px 0 0;padding:11px;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--line);border-radius:4px;background:var(--bg-950);color:var(--green);font:.7rem/1.55 var(--font-mono);user-select:text;-webkit-user-select:text}
.audit-limitations { padding:20px;border:1px solid var(--line);border-radius:7px;background:var(--bg-900) }.audit-limitations h2{font-size:1rem;margin:0}.audit-limitations li{color:var(--muted);font-size:.78rem;margin:7px 0}
@keyframes audit-rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes audit-pulse{70%{box-shadow:0 0 0 8px rgba(74,237,164,0)}100%{box-shadow:0 0 0 0 rgba(74,237,164,0)}}@keyframes audit-breathe{50%{transform:scale(1.12);opacity:.72}}
.audit-heatmap__cell{background:color-mix(in srgb,var(--cell-color) var(--heat,15%),var(--bg-950))}
@media(max-width:900px){.audit-summary{grid-template-columns:140px 1fr}.audit-counts{grid-column:1/-1;grid-template-columns:repeat(5,1fr)}.audit-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-architecture>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-visuals__grid{grid-template-columns:1fr}}
@media(max-width:620px){.audit-form{padding:18px}.audit-form__row{grid-template-columns:1fr}.audit-form__row>svg{display:none}.audit-summary{grid-template-columns:1fr}.audit-counts{grid-template-columns:repeat(2,1fr)}.audit-overview,.audit-findings,.audit-architecture>div:last-child,.audit-dependencies>div:last-child{grid-template-columns:1fr}.audit-architecture>div:first-child,.audit-visuals__heading,.audit-section-heading{display:block}.audit-live-dot,#audit-catalog-date{display:block;margin-top:10px}.audit-grade{max-width:180px}.audit-visuals,.audit-dependencies{padding:16px}.audit-radar-controls{grid-template-columns:repeat(2,1fr)}}
@media(prefers-reduced-motion:reduce){.audit-visuals::before,.audit-live-dot::before,.audit-finding,.audit-dependency{animation:none}.audit-radar__shape{transition:none}.audit-finding,.audit-radar-controls button,.audit-heatmap__cell{transition:none}}
.audit-heatmap__cell{background:color-mix(in srgb,var(--cell-color) var(--heat,15%),var(--bg-950))}.audit-heatmap__cell[data-intensity="0"]{--heat:8%}.audit-heatmap__cell[data-intensity="1"]{--heat:24%}.audit-heatmap__cell[data-intensity="2"]{--heat:38%}.audit-heatmap__cell[data-intensity="3"]{--heat:52%}.audit-heatmap__cell[data-intensity="4"]{--heat:66%}.audit-heatmap__cell[data-intensity="5"]{--heat:80%}
.audit-radar{width:100%;max-width:620px;height:clamp(320px,34vw,520px);margin:8px auto 0;display:grid;place-items:center}.audit-radar svg{display:block;width:100%;height:100%;max-width:560px;aspect-ratio:1/1;overflow:visible}
.audit-radar svg text{stroke:none!important;stroke-width:0;paint-order:fill}.audit-radar__label{font-size:11px;font-weight:600}.audit-radar__score{font-size:30px;font-weight:800}.audit-radar__score-label{font-size:9px;font-weight:700}
.audit-chart-card{min-width:0}.audit-radar svg{max-height:100%}
@media(max-width:620px){.audit-radar{width:100%;max-width:100%;height:min(86vw,420px);min-height:250px}.audit-radar svg{width:100%;height:auto;max-width:100%;max-height:100%}}
