.ai-panel{position:relative;margin:0 0 28px;padding:clamp(18px,4vw,28px);border:1px solid #2f4a78;border-radius:16px;background:linear-gradient(150deg,#101a2e,#0e1420);box-shadow:0 14px 44px #0004,inset 0 1px 0 #ffffff12}
.ai-kicker{display:inline-block;margin:0 0 10px;padding:3px 10px;border:1px solid #3b5f9a;border-radius:999px;background:#12223d;color:#bfdbfe;font:700 11px ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase}
.ai-panel h2{margin:0 0 6px;font-size:21px;line-height:1.25}
.ai-panel p{color:#b1bfd1;font-size:15px;margin:6px 0}
.ai-panel details{margin:12px 0}
.ai-panel summary{cursor:pointer;color:#bfdbfe;font-weight:650;font-size:14px}
.ai-preview{margin:8px 0 0;padding:12px;max-height:220px;overflow:auto;border:1px solid #2b3850;border-radius:9px;background:#080c13;color:#dbeafe;font:13px/1.5 ui-monospace,SFMono-Regular,monospace;white-space:pre-wrap;overflow-wrap:anywhere}
.ai-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0}
.ai-actions button{min-height:44px;padding:10px 18px;border:1px solid #3b82f6;border-radius:9px;background:#2563eb;color:#fff;font:600 14px system-ui;cursor:pointer;transition:background-color .15s,border-color .15s}
.ai-actions button:hover:not(:disabled){background:#1d4ed8;border-color:#60a5fa}
.ai-actions button:disabled{opacity:.7;cursor:progress}
.ai-actions button:focus-visible,.ai-panel a:focus-visible,.ai-panel summary:focus-visible{outline:3px solid #93c5fd;outline-offset:3px;border-radius:6px}
.ai-status{color:#b1bfd1;font-size:14px}
.ai-panel[aria-busy=true] .ai-status:before{content:"";display:inline-block;width:14px;height:14px;margin:0 8px -2px 0;border:2px solid #3b5f9a;border-top-color:#93c5fd;border-radius:50%;animation:ai-spin .8s linear infinite}
.ai-panel[aria-busy=true] .ai-result{opacity:.6}
@keyframes ai-spin{to{transform:rotate(360deg)}}
.ai-result{margin-top:10px}
.ai-summary{padding:14px 16px;border:1px solid #2b3850;border-left:3px solid #60a5fa;border-radius:9px;background:#172033;color:#f3f4f6;font-size:16px;line-height:1.6}
.ai-issues{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:10px}
.ai-issue{padding:14px 16px;border:1px solid #2b3850;border-radius:10px;background:#111827}
.ai-issue h3{margin:0 0 6px;font-size:16px;line-height:1.4}
.ai-issue p{margin:4px 0;font-size:15px;color:#cbd5e1}
.ai-badge{display:inline-block;margin-right:8px;padding:2px 9px;border:1px solid #3b5f9a;border-radius:999px;font:700 11px ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;background:#1d3559;color:#bfdbfe;vertical-align:1px}
.ai-badge-high{background:#5b1d1d;border-color:#b45454;color:#fecaca}.ai-badge-medium{background:#5b3d12;border-color:#b0852c;color:#fde68a}.ai-badge-low{background:#1d3a2c;border-color:#3d8f66;color:#bbf7d0}
.ai-issue:has(.ai-badge-high){border-left:3px solid #f87171}.ai-issue:has(.ai-badge-medium){border-left:3px solid #fbbf24}.ai-issue:has(.ai-badge-low){border-left:3px solid #4ade80}
.ai-fix{margin-top:8px!important;padding:8px 10px;border-radius:7px;background:#0a101b;color:#bfdbfe!important}
.ai-note{font-size:13px!important;color:#9aa9bf!important}
.ai-warning{display:flex;gap:10px;align-items:flex-start;margin:14px 0 6px!important;padding:10px 12px;border:1px solid #6b5420;border-radius:9px;background:#221b0a;color:#fde68a!important;font-size:14px!important}
.ai-warning:before{content:"!";flex:0 0 20px;height:20px;border-radius:50%;background:#fbbf24;color:#241a02;font:800 13px/20px system-ui;text-align:center}
@media(max-width:600px){.ai-panel{padding:16px}.ai-actions button{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){.ai-panel[aria-busy=true] .ai-status:before{animation:none}}
@media print{.ai-panel{display:none}}
