:root{--bg:#0a0a0f;--bg-2:#0f0f1a;--glass:#ffffff0b;--glass-strong:#ffffff14;--glass-inner:#ffffff08;--border-glass:#ffffff1a;--border-glass-strong:#ffffff2e;--text:#f2f3f8;--text-muted:#98a0b3;--text-faint:#757d90;--blue:#3b82f6;--blue-2:#2563eb;--indigo:#6366f1;--violet:#8b5cf6;--purple:#a855f7;--accent-grad:linear-gradient(135deg, var(--blue), var(--blue-2));--accent-grad-hover:linear-gradient(135deg, #4c8bff, #3468ea);--accent-ink:#f8faff;--good:#34d399;--good-ink:#052e21;--warn:#e0a72e;--warn-ink:#2b1a02;--crit:#f0596b;--crit-ink:#34040f;--high:#fb923c;--high-ink:#2b1502;--viewport-bg:#08080d;--shadow-soft:0 6px 22px #00000052;--shadow-lift:0 12px 32px #2563eb24, 0 4px 14px #00000061;--focus-ring:#6f9bff;--radius:8px;--radius-lg:11px;--radius-xl:14px;--ease:cubic-bezier(.2, .7, .2, 1);--mono:"JetBrains Mono", monospace}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4{text-wrap:balance;margin:0;font-family:Space Grotesk,Inter,sans-serif}.mono{font-variant-numeric:tabular-nums;font-family:JetBrains Mono,ui-monospace,monospace}button{font-family:inherit}a{color:var(--blue)}::selection{background:var(--violet);color:#fff}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:4px}.ambient{z-index:0;background:radial-gradient(ellipse 120% 80% at 50% -10%, var(--bg-2), var(--bg) 60%);pointer-events:none;position:fixed;inset:0;overflow:hidden}.blob{filter:blur(110px);opacity:.22;will-change:transform;border-radius:50%;position:absolute}.blob-1{background:radial-gradient(circle, var(--blue), transparent 70%);width:46vw;height:46vw;top:-14vw;left:-8vw}.blob-2{background:radial-gradient(circle, var(--blue-2), transparent 70%);opacity:.16;width:38vw;height:38vw;bottom:-12vw;right:-6vw}.blob-3{background:radial-gradient(circle, var(--indigo), transparent 72%);opacity:.12;width:30vw;height:30vw;top:32vh;right:18vw}.app-splash{z-index:999;background:var(--bg);transition:opacity .4s var(--ease), visibility .4s var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex;position:fixed;inset:0}.app-splash.hide{opacity:0;visibility:hidden;pointer-events:none}.app-splash-logo{filter:drop-shadow(0 0 12px #3b82f68c);width:40px;height:40px;animation:4.5s ease-in-out infinite logoFloat}.app-splash-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);font-family:JetBrains Mono,monospace;font-size:11px}@media (prefers-reduced-motion:reduce){.app-splash-logo{animation:none!important}}html,body{overflow:hidden auto}.app{z-index:1;flex-direction:column;gap:16px;height:100dvh;padding:16px;display:flex;position:relative}@media (width>=700px){.app{gap:18px;padding:20px 22px}}.topbar,footer.roadmap-note{flex-shrink:0}.glass{background:var(--glass);-webkit-backdrop-filter:blur(20px)saturate(140%);border:1px solid var(--border-glass);box-shadow:var(--shadow-soft)}.topbar{z-index:20;border-radius:var(--radius-lg);animation:fadeSlideIn .5s var(--ease) both;flex-wrap:wrap;align-items:center;gap:16px;padding:12px 18px;display:flex;position:sticky;top:20px;overflow:hidden}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tabIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.topbar,.viewer-panel,.sidebar,footer.roadmap-note,.ai-bar,.material-card,.issue-card,.suggestion,.tabpanel.active,.intro,.drop-card,.drop-icon,.loading-card,.ai-msg,.inspector{animation:none!important}}.brand{color:inherit;align-items:center;gap:9px;text-decoration:none;display:flex}.brand-logo{filter:drop-shadow(0 0 8px #3b82f68c);width:26px;height:26px;animation:4.5s ease-in-out infinite logoFloat}@keyframes logoFloat{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-2px)rotate(-3deg)}}@media (prefers-reduced-motion:reduce){.brand-logo{animation:none!important}}.brand-mark{letter-spacing:-.01em;color:var(--text);font-family:Space Grotesk,sans-serif;font-size:21px;font-weight:700;line-height:1}.brand-mark span{background:var(--accent-grad);color:#0000;-webkit-background-clip:text;background-clip:text}.brand-tag{color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em;border-left:1px solid var(--border-glass-strong);padding-left:10px;font-family:JetBrains Mono,monospace;font-size:10.5px}.topbar-spacer{flex:1}.file-chip{background:var(--glass-inner);border:1px solid var(--border-glass);color:var(--text-muted);border-radius:999px;align-items:center;gap:8px;max-width:320px;padding:7px 12px 7px 10px;font-family:JetBrains Mono,monospace;font-size:12px;display:flex}.file-chip strong{color:var(--text);font-family:Inter,sans-serif;font-weight:500}.file-chip .dot{color:var(--text-faint)}.btn{border:1px solid var(--border-glass-strong);background:var(--glass-strong);color:var(--text);cursor:pointer;transition:transform .22s var(--ease), box-shadow .22s var(--ease), border-color .22s var(--ease), background .22s var(--ease);border-radius:999px;align-items:center;gap:7px;padding:9px 16px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex;position:relative}.btn svg{flex-shrink:0;width:15px;height:15px}.btn:hover{border-color:#ffffff52;transform:translateY(-1px);box-shadow:0 6px 20px #00000059}.btn:active{transform:translateY(0)}.btn-accent{background:var(--accent-grad);color:var(--accent-ink);border-color:#0000;box-shadow:0 4px 18px #6366f159}.btn-accent:hover{background:var(--accent-grad-hover);box-shadow:0 8px 28px #8b5cf680}.btn-ghost{border-color:var(--border-glass);color:var(--text-muted);background:0 0;padding:9px 14px}.btn-ghost:hover{background:var(--glass-inner);color:var(--text);border-color:var(--border-glass-strong)}.btn-sm{padding:6px 12px;font-size:12px}.workspace{flex:1;grid-template:"left viewer right"minmax(280px,1fr)"aibar aibar aibar"/300px 1fr 300px;gap:14px;min-height:0;display:grid}@media (width<=1100px){.workspace{grid-template:"viewer"minmax(420px,1.3fr)"left"minmax(170px,.75fr)"right"minmax(170px,.75fr)"aibar"/1fr}}.viewer-panel{border-radius:var(--radius-xl);animation:fadeSlideIn .5s var(--ease) 60ms both;grid-area:viewer;position:relative;overflow:hidden}.viewer-panel canvas{touch-action:none;cursor:grab;width:100%;height:100%;display:block}.viewer-panel canvas:active{cursor:grabbing}.viewer-hud{z-index:4;color:#c7cde0;pointer-events:none;font-family:JetBrains Mono,monospace;font-size:11px;position:absolute}.hud-stats{text-shadow:0 1px 4px #0009;flex-direction:column;gap:2px;display:flex;bottom:20px;left:22px}.hud-stats .label{color:#7b84a8;letter-spacing:.06em;text-transform:uppercase;font-size:9.5px}.hud-controls-hint{text-align:right;color:#7b84a8;text-shadow:0 1px 4px #0009;bottom:20px;right:22px}.view-toolbar{z-index:5;-webkit-backdrop-filter:blur(16px)saturate(140%);border:1px solid var(--border-glass);box-shadow:var(--shadow-soft);background:#0e0e168c;border-radius:999px;gap:2px;padding:3px;display:flex;position:absolute;top:16px;left:50%;transform:translate(-50%)}.view-toolbar button{pointer-events:auto;color:#c7cde0;letter-spacing:.03em;cursor:pointer;white-space:nowrap;transition:background .2s var(--ease), color .2s var(--ease);background:0 0;border:none;border-radius:999px;padding:7px 13px;font-family:JetBrains Mono,monospace;font-size:10.5px}.view-toolbar button:hover{color:#fff;background:#ffffff14}.view-toolbar button.active{background:var(--accent-grad);color:#fff}.error-banner{z-index:8;border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(16px)saturate(140%);max-width:min(520px,100% - 32px);box-shadow:var(--shadow-soft);animation:popIn .3s var(--ease) both;background:#1e0a0eeb;border:1px solid #f0596b66;align-items:flex-start;gap:10px;padding:13px 14px 13px 16px;display:flex;position:absolute;top:16px;left:50%;transform:translate(-50%)}.error-banner-icon{color:var(--crit);flex-shrink:0;margin-top:1px;font-size:14px}.error-banner-text{color:var(--text);flex:1;font-size:12.5px;line-height:1.55}.error-banner-close{color:var(--text-faint);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:2px;font-size:13px;line-height:1}.error-banner-close:hover{color:var(--text)}@media (prefers-reduced-motion:reduce){.error-banner{animation:none}}.threshold-bar{z-index:5;-webkit-backdrop-filter:blur(16px)saturate(140%);border:1px solid var(--border-glass);border-radius:var(--radius-lg);max-width:190px;box-shadow:var(--shadow-soft);background:#0e0e168c;flex-direction:column;gap:10px;padding:12px 13px;display:flex;position:absolute;top:16px;left:16px}@media (width<=700px){.threshold-bar{max-width:none;top:68px;left:16px;right:16px}.hud-controls-hint{display:none}.hud-stats{right:22px}}.threshold-row{flex-direction:column;gap:5px;display:flex}.threshold-row .row-label{color:#9199b8;text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;font-size:10.5px;display:flex}.threshold-row .row-label b{color:#fff;letter-spacing:0;text-transform:none;font-family:JetBrains Mono,monospace;font-weight:500}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;outline-offset:4px;cursor:pointer;width:100%;height:3px;transition:filter .2s var(--ease);background:0 0;border-radius:2px;margin:9px 0}input[type=range]::-webkit-slider-runnable-track{background:#ffffff29;border-radius:2px;height:3px}input[type=range]::-moz-range-track{background:#ffffff29;border:none;border-radius:2px;height:3px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:linear-gradient(135deg, var(--blue), var(--violet));cursor:pointer;width:14px;height:14px;transition:transform .18s var(--ease), box-shadow .18s var(--ease);border:2px solid #0a0a0f99;border-radius:50%;margin-top:-5.5px;box-shadow:0 0 8px #8b5cf699}input[type=range]::-moz-range-thumb{background:linear-gradient(135deg, var(--blue), var(--violet));cursor:pointer;width:14px;height:14px;transition:transform .18s var(--ease), box-shadow .18s var(--ease);border:2px solid #0a0a0f99;border-radius:50%;box-shadow:0 0 8px #8b5cf699}input[type=range]:hover::-webkit-slider-thumb,input[type=range]:active::-webkit-slider-thumb{transform:scale(1.15);box-shadow:0 0 14px #8b5cf6d9}input[type=range]:hover::-moz-range-thumb,input[type=range]:active::-moz-range-thumb{transform:scale(1.15);box-shadow:0 0 14px #8b5cf6d9}@media (pointer:coarse){input[type=range]{margin:14px 0}input[type=range]::-webkit-slider-thumb{width:22px;height:22px;margin-top:-9.5px}input[type=range]::-moz-range-thumb{width:22px;height:22px}.field-track::-webkit-slider-thumb{width:22px;height:22px;margin-top:-9px}.field-track::-moz-range-thumb{width:22px;height:22px}.switch{width:44px;height:25px}.switch .track:before{width:19px;height:19px}.switch input:checked+.track:before{transform:translate(19px)}}select,.nsel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--glass-inner);border:1px solid var(--border-glass-strong);color:var(--text);border-radius:var(--radius);cursor:pointer;transition:border-color .2s var(--ease), box-shadow .2s var(--ease);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239aa3ba' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;background-size:13px;padding:7px 30px 7px 10px;font-family:inherit;font-size:12.5px}select:hover,.nsel:hover{border-color:#ffffff57}select:focus-visible,.nsel:focus-visible{border-color:var(--violet);box-shadow:0 0 0 3px #8b5cf638}select option,.nsel option{color:var(--text);background:#14141f}.threshold-bar select{color:#fff;background-color:#ffffff0f;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c7cde0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");border-color:#ffffff29}.dropzone{z-index:6;text-align:center;cursor:pointer;transition:background .2s var(--ease);overscroll-behavior:contain;flex-direction:column;justify-content:safe center;align-items:center;gap:14px;padding:20px 24px;display:flex;position:absolute;inset:0;overflow-y:auto}.dropzone.dragover{background:#6366f10f}.intro{max-width:460px;animation:fadeSlideIn .6s var(--ease) both;flex-direction:column;gap:4px;display:flex}.intro-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);font-family:JetBrains Mono,monospace;font-size:10.5px}.intro-heading{color:#f2f3fb;font-family:Space Grotesk,sans-serif;font-size:clamp(21px,3vw,29px);font-weight:600;line-height:1.18}.intro-heading span{background:var(--accent-grad);color:#0000;-webkit-background-clip:text;background-clip:text}.intro-body{color:#8991ac;font-size:13.5px;line-height:1.55}.drop-card{border-radius:var(--radius-xl);border:1.5px dashed var(--border-glass-strong);background:var(--glass-inner);-webkit-backdrop-filter:blur(6px);width:min(300px,84%);transition:transform .25s var(--ease), border-color .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease);animation:fadeSlideIn .6s var(--ease) .1s both, cardGlow 3.6s ease-in-out infinite;flex-direction:column;align-items:center;gap:6px;padding:16px 22px;display:flex;position:relative}@keyframes cardGlow{0%,to{box-shadow:0 0 0 1px #ffffff0d,0 10px 30px #0000004d}50%{box-shadow:0 0 0 1px #8b5cf63d,0 10px 34px #6366f12e}}.dropzone:hover .drop-card,.dropzone.dragover .drop-card{background:#8b5cf612;border-style:solid;border-color:#8b5cf699;transform:translateY(-3px)scale(1.02);box-shadow:0 0 0 1px #8b5cf652,0 22px 50px #6366f133}.drop-icon{width:28px;height:28px;animation:3.2s ease-in-out infinite floatIcon}.drop-icon svg{width:100%;height:100%}@keyframes floatIcon{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.drop-card h2{color:#f2f3fb;font-family:Space Grotesk,sans-serif;font-size:16.5px;font-weight:600}.drop-card p{color:#8991ac;font-size:12px}.drop-card .btn{margin-top:2px}@media (width<=700px){.drop-card{gap:4px;padding:12px 18px}.drop-icon{width:20px;height:20px}.drop-card h2{font-size:14.5px}}.onboard-step{animation:fadeSlideIn .6s var(--ease) both;flex-direction:column;align-items:center;gap:8px;display:flex}@media (width<=700px){.onboard-step{gap:4px}}.onboard-context{text-align:left;flex-direction:column;gap:6px;width:min(340px,90%);display:flex}.onboard-context .autofix-textarea{width:100%}@media (width<=700px){.onboard-context{display:none}}.sample-picker{text-align:center;flex-direction:column;align-items:center;gap:5px;width:min(460px,92%);display:flex}.sample-picker-label{color:var(--text-muted);font-size:11.5px}.sample-picker-grid{flex-wrap:wrap;justify-content:center;gap:5px;display:flex}.sample-pick{border:1px solid var(--border-glass);background:var(--glass-inner);color:var(--text-muted);cursor:pointer;transition:border-color .2s var(--ease), color .2s var(--ease), background .2s var(--ease), transform .2s var(--ease);border-radius:999px;align-items:center;gap:4px;padding:5px 10px;font-family:Inter,sans-serif;font-size:11px;display:inline-flex}.sample-pick:hover{border-color:var(--border-glass-strong);color:var(--text);transform:translateY(-1px)}.sample-pick:disabled{opacity:.6;cursor:default;transform:none}.sample-pick-icon{opacity:.85;font-size:11.5px}.projects-panel{text-align:left;border-radius:var(--radius-lg);background:var(--glass-inner);border:1px solid var(--border-glass);width:min(460px,92%);margin-bottom:4px;padding:14px 16px}.projects-panel-head{flex-direction:column;gap:2px;margin-bottom:10px;display:flex}.projects-panel-note{color:var(--text-faint);font-size:10.5px;line-height:1.4}.projects-list{flex-direction:column;gap:6px;max-height:160px;display:flex;overflow-y:auto}.project-row{border-radius:var(--radius);border:1px solid var(--border-glass);background:var(--glass);padding:8px 30px 8px 10px;position:relative}.project-row-main{justify-content:space-between;align-items:center;gap:8px;display:flex}.project-row-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.project-row-status{white-space:nowrap;font-size:10px;font-weight:600}.project-row-status.crit{color:var(--crit)}.project-row-status.warn{color:var(--warn)}.project-row-status.good{color:var(--good)}.project-row-meta{color:var(--text-faint);margin-top:2px;font-size:10.5px}.project-row-remove{width:20px;height:20px;color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:11px;display:flex;position:absolute;top:6px;right:6px}.project-row-remove:hover{background:var(--glass-strong);color:var(--text)}.loading-overlay{z-index:7;backdrop-filter:blur(10px);color:#c7cde0;background:#08080db8;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:12px;display:flex;position:absolute;inset:0}.loading-card{border-radius:var(--radius-xl);background:var(--glass);border:1px solid var(--border-glass);min-width:220px;box-shadow:var(--shadow-lift);animation:popIn .3s var(--ease) both;flex-direction:column;align-items:center;gap:14px;padding:28px 34px;display:flex}.spinner{border:2.5px solid #ffffff1f;border-top-color:var(--violet);border-right-color:var(--blue);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-bar{background:#ffffff1a;border-radius:2px;width:150px;height:3px;overflow:hidden}.loading-bar-fill{background:var(--accent-grad);border-radius:2px;width:40%;height:100%;animation:1.1s ease-in-out infinite loadingBarSlide}@keyframes loadingBarSlide{0%{transform:translate(-100%)}to{transform:translate(350%)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}.loading-bar-fill{opacity:.5;width:100%;animation:none}}.fix-toast{z-index:8;-webkit-backdrop-filter:blur(16px)saturate(140%);border:1px solid var(--border-glass-strong);box-shadow:var(--shadow-lift);color:var(--text);max-width:min(520px,84%);animation:popIn .28s var(--ease) both;background:#0e0e16d9;border-radius:999px;align-items:center;gap:12px;padding:10px 16px;font-size:12.5px;display:flex;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.fix-toast-undo{border:1px solid var(--border-glass-strong);color:var(--text);cursor:pointer;transition:background .18s var(--ease), border-color .18s var(--ease);background:0 0;border-radius:999px;flex-shrink:0;padding:4px 12px;font-family:inherit;font-size:11.5px;font-weight:600}.fix-toast-undo:hover{background:var(--glass-inner);border-color:#fff6}.suggestion .btn-fix{margin-top:10px}.sidebar-left{grid-area:left}.sidebar-right{grid-area:right;position:relative}.sidebar{border-radius:var(--radius-xl);min-height:0;animation:fadeSlideIn .5s var(--ease) .1s both;flex-direction:column;display:flex;overflow:hidden}.tabs{border-bottom:1px solid var(--border-glass);flex-shrink:0;gap:4px;padding:6px;display:flex}.tab{text-align:center;border-radius:var(--radius);color:var(--text-muted);letter-spacing:.03em;cursor:pointer;transition:background .2s var(--ease), color .2s var(--ease);background:0 0;border:none;flex:1;padding:10px 8px;font-size:12.5px;font-weight:600}.tab:hover{background:var(--glass-inner);color:var(--text)}.tab.active{background:var(--glass-strong);color:var(--text);box-shadow:inset 0 0 0 1px var(--border-glass-strong)}.count{background:var(--crit);min-width:16px;color:var(--crit-ink);border-radius:8px;margin-left:6px;padding:0 4px;font-family:JetBrains Mono,monospace;font-size:10px;display:inline-block}.count.zero{color:var(--text-faint);background:#ffffff1f}.process-card-grid{flex-direction:column;gap:6px;display:flex}.process-card{border-radius:var(--radius-lg);border:1px solid var(--border-glass);background:var(--glass-inner);color:var(--text-muted);text-align:left;cursor:pointer;transition:border-color .2s var(--ease), background .2s var(--ease), color .2s var(--ease), transform .2s var(--ease);align-items:center;gap:11px;padding:9px 11px;display:flex}.process-card:hover{border-color:var(--border-glass-strong);color:var(--text);transform:translate(1px)}.process-card.active{background:var(--accent-grad);color:var(--accent-ink);border-color:#0000;box-shadow:0 6px 18px #6366f14d}.process-card-icon{background:#ffffff12;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:14px;display:flex}.process-card.active .process-card-icon{background:#fff3}.process-card-text{flex-direction:column;gap:1px;min-width:0;display:flex}.process-card-name{font-family:Space Grotesk,sans-serif;font-size:12.5px;font-weight:600}.process-card-desc{opacity:.85;font-size:10.5px;line-height:1.3}.automates-grid{flex-direction:column;gap:6px;display:flex}.automates-item{border:1px solid var(--border-glass);border-radius:var(--radius);background:var(--glass-inner);color:var(--text-muted);align-items:center;gap:9px;padding:8px 10px;font-size:12px;display:flex}.automates-ico{background:var(--accent-grad);width:20px;height:20px;color:var(--accent-ink);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;display:inline-flex}.tabpanel{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:16px;display:none;overflow:hidden auto}.tabpanel.active{animation:tabIn .3s var(--ease) both;display:block}.inspector{z-index:5;background:var(--bg-2);animation:tabIn .25s var(--ease) both;flex-direction:column;display:flex;position:absolute;inset:0}.inspector-head{border-bottom:1px solid var(--border-glass);flex-shrink:0;padding:10px 14px}.inspector-back{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px 2px;font-size:12.5px;font-weight:600}.inspector-back:hover{color:var(--text)}.inspector-body{flex-direction:column;flex:1;gap:18px;padding:16px;display:flex;overflow-y:auto}.inspector-title-row{align-items:center;gap:10px;display:flex}.inspector-title{color:var(--text);font-size:14px;font-weight:700}.inspector-grid{border-top:1px solid var(--border-glass);border-bottom:1px solid var(--border-glass);grid-template-columns:1fr 1fr;gap:12px 16px;padding:12px 0;display:grid}.inspector-field{flex-direction:column;gap:2px;display:flex}.inspector-field .l{color:var(--text-faint);text-transform:uppercase;letter-spacing:.03em;font-size:10px}.inspector-field .v{color:var(--text);font-family:JetBrains Mono,monospace;font-size:12.5px}.inspector-block-label{color:var(--text-faint);text-transform:uppercase;letter-spacing:.03em;margin-bottom:5px;font-size:10.5px}.inspector-block p{color:var(--text-muted);font-size:12.5px;line-height:1.55}.inspector-fix-btn{margin-top:8px}.inspector-no-fix{color:var(--text-faint);font-size:12px;line-height:1.5;display:block}.panel-section{margin-bottom:20px}.panel-section:last-child{margin-bottom:0}.section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint);align-items:center;gap:8px;margin-bottom:10px;font-size:11px;display:flex}.section-title:after{content:"";background:var(--border-glass);flex:1;height:1px}.material-details summary{cursor:pointer;list-style:revert}.material-details:not([open]) summary{margin-bottom:0}.material-summary-hint{color:var(--text-faint);text-transform:none;letter-spacing:0;font-size:10px;font-weight:400}.material-results-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);margin:16px 0 8px;font-size:11px}.stat-row{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.stat-tile{border:1px solid var(--border-glass);border-radius:var(--radius);background:var(--glass-inner);transition:border-color .2s var(--ease), transform .2s var(--ease);padding:11px 10px}.stat-tile .n{font-family:Space Grotesk,sans-serif;font-size:25px;font-weight:700;line-height:1}.stat-tile .l{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:4px;font-size:10.5px}.stat-tile:hover{border-color:var(--border-glass-strong);transform:translateY(-2px)}.stat-tile.crit{border-color:#fb718566}.stat-tile.crit .n{color:var(--crit)}.stat-tile.warn{border-color:#fbbf2466}.stat-tile.warn .n{color:var(--warn)}.stat-tile.good .n{color:var(--good)}.readiness-status{color:var(--text);padding-bottom:10px;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700}.readiness-status.crit{color:var(--crit)}.readiness-status.warn{color:var(--warn)}.readiness-status.good{color:var(--good)}.readiness-row{grid-template-columns:auto 1fr;align-items:stretch;gap:12px;margin-bottom:8px;display:grid}.readiness-score{border-radius:var(--radius);border:1px solid var(--border-glass);background:var(--glass-inner);flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:84px;padding:10px 16px;display:flex}.readiness-n{color:var(--text);font-family:Space Grotesk,sans-serif;font-size:30px;font-weight:700;line-height:1}.readiness-n.crit{color:var(--crit)}.readiness-n.warn{color:var(--warn)}.readiness-n.good{color:var(--good)}.readiness-l{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;text-align:center;margin-top:3px;font-size:9.5px;line-height:1.3}.readiness-stats{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.readiness-how{color:var(--text-faint);font-size:11px}.readiness-how summary{cursor:pointer;padding:4px 0}.readiness-how p{padding:6px 0 2px;line-height:1.5}.recommendation-body{color:var(--text-muted);font-size:12.5px;line-height:1.55}.coverage-summary{color:var(--text-muted);margin-bottom:8px;font-size:12px;line-height:1.5}.coverage-block{margin-top:10px}.coverage-block-label{color:var(--text-faint);text-transform:uppercase;letter-spacing:.03em;margin-bottom:5px;font-size:10.5px}.coverage-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.coverage-list li{color:var(--text-muted);padding-left:14px;font-size:12px;line-height:1.45;position:relative}.coverage-list li:before{content:"·";color:var(--text-faint);position:absolute;left:4px}.process-compare-list{flex-direction:column;gap:6px;margin-top:10px;display:flex}.process-compare-row{border-radius:var(--radius);border:1px solid var(--border-glass);background:var(--glass-inner);grid-template-columns:1fr auto;grid-template-areas:"name status""detail detail";gap:3px 8px;padding:9px 10px;display:grid}.process-compare-row.current{border-color:var(--border-glass-strong)}.process-compare-name{color:var(--text);grid-area:name;font-size:12.5px;font-weight:600}.process-compare-current-tag{color:var(--text-faint);text-transform:uppercase;letter-spacing:.03em;font-size:9.5px;font-weight:500}.process-compare-status{grid-area:status;justify-self:end}.process-compare-detail{color:var(--text-faint);grid-area:detail;font-size:11px;line-height:1.4}.revision-log-list{flex-direction:column;gap:6px;display:flex}.revision-entry{border-radius:var(--radius);border:1px solid var(--border-glass);background:var(--glass-inner);padding:8px 10px}.revision-entry-head{justify-content:space-between;align-items:center;margin-bottom:3px;display:flex}.revision-entry-num{color:var(--violet);font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600}.revision-entry-time{color:var(--text-faint);font-size:10px}.revision-entry-label{color:var(--text);font-size:12px;line-height:1.4}.revision-entry-detail{color:var(--text-muted);margin-top:2px;font-size:11px;line-height:1.4}.empty-note{color:var(--text-muted);background:var(--glass-inner);border:1px dashed var(--border-glass-strong);border-radius:var(--radius);text-align:center;padding:14px;font-size:12.5px}.issue-card{border:1px solid var(--border-glass);border-left:3px solid var(--border-glass-strong);border-radius:var(--radius);background:var(--glass-inner);cursor:pointer;transition:border-color .2s var(--ease), background .2s var(--ease), transform .2s var(--ease), box-shadow .2s var(--ease);animation:popIn .35s var(--ease) both;margin-bottom:8px;padding:10px 11px}.issue-card:hover{background:var(--glass-strong);box-shadow:var(--shadow-soft);transform:translateY(-2px)}.issue-card.crit{border-left-color:var(--crit)}.issue-card.warn{border-left-color:var(--warn)}.issue-card .row1{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.issue-card .title{font-size:12.5px;font-weight:600}.issue-card .metric{color:var(--text-muted);white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:11.5px}.issue-card .metric.crit{color:var(--crit)}.issue-card .metric.warn{color:var(--warn)}.issue-card .desc{color:var(--text-muted);margin-top:4px;font-family:JetBrains Mono,monospace;font-size:12px}.chip{letter-spacing:.02em;border-radius:999px;align-items:center;gap:5px;padding:3px 8px;font-size:10.5px;font-weight:600;display:inline-flex}.chip.crit{color:var(--crit);background:#f0596b24}.chip.high{color:var(--high);background:#fb923c29}.chip.warn{color:var(--warn);background:#e0a72e29}.chip.good{color:var(--good);background:#34d39924}.chip.info{background:var(--glass-inner);color:var(--text-muted);border:1px solid var(--border-glass)}.suggestion{border-radius:var(--radius);background:var(--glass-inner);border:1px solid var(--border-glass);animation:popIn .35s var(--ease) both;margin-bottom:8px;padding:12px 13px}.suggestion .s-title{align-items:center;gap:7px;margin-bottom:4px;font-size:12.5px;font-weight:600;display:flex}.suggestion .s-body{color:var(--text-muted);font-size:12px}.dot-marker{border-radius:50%;flex-shrink:0;width:7px;height:7px;box-shadow:0 0 6px}.dot-marker.crit{background:var(--crit);color:var(--crit)}.dot-marker.warn{background:var(--warn);color:var(--warn)}.dot-marker.good{background:var(--good);color:var(--good)}.field{margin-bottom:16px}.field label{color:var(--text);justify-content:space-between;align-items:baseline;margin-bottom:7px;font-size:12px;font-weight:600;display:flex}.field label .val{color:var(--blue);font-family:JetBrains Mono,monospace;font-weight:500}.field-track{-webkit-appearance:none;background:#ffffff1f;border-radius:2px;width:100%;height:4px}.field-track::-webkit-slider-thumb{-webkit-appearance:none;background:linear-gradient(135deg, var(--blue), var(--violet));border:2px solid var(--bg);width:15px;height:15px;box-shadow:0 0 0 1px var(--border-glass-strong), 0 0 10px #8b5cf680;cursor:pointer;border-radius:50%;margin-top:-5.5px}.field-track::-moz-range-thumb{background:linear-gradient(135deg, var(--blue), var(--violet));border:2px solid var(--bg);cursor:pointer;border-radius:50%;width:15px;height:15px}.toggle-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.toggle-row .th{font-size:12px;font-weight:600}.switch{flex-shrink:0;width:38px;height:21px;position:relative}.switch input{opacity:0;width:0;height:0}.switch .track{border:1px solid var(--border-glass);cursor:pointer;transition:background .2s var(--ease);background:#ffffff24;border-radius:999px;position:absolute;inset:0}.switch .track:before{content:"";width:15px;height:15px;transition:transform .2s var(--ease);background:#e9ebf5;border-radius:50%;position:absolute;top:2px;left:2px}.switch input:checked+.track{background:var(--accent-grad);border-color:#0000}.switch input:checked+.track:before{background:#fff;transform:translate(17px)}.material-card{border:1px solid var(--border-glass);border-radius:var(--radius-lg);background:var(--glass-inner);transition:border-color .2s var(--ease), transform .2s var(--ease), box-shadow .2s var(--ease);animation:popIn .4s var(--ease) both;cursor:pointer;margin-bottom:10px;padding:13px 14px}.material-card:hover{box-shadow:var(--shadow-lift);border-color:var(--border-glass-strong);transform:translateY(-2px)}.material-card.top{border-color:#8b5cf68c;box-shadow:0 0 0 1px #8b5cf659,0 0 24px #6366f129}.mc-head{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.mc-name{font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:700}.mc-full{color:var(--text-faint);font-size:11px}.mc-match{background:var(--accent-grad);color:#0000;white-space:nowrap;-webkit-background-clip:text;background-clip:text;font-family:JetBrains Mono,monospace;font-size:15px;font-weight:600}.mc-stats{color:var(--text-muted);flex-wrap:wrap;gap:6px 14px;margin:8px 0;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.mc-stats span b{color:var(--text);font-family:Inter,sans-serif;font-weight:500}.mc-notes{color:var(--text-muted);margin-bottom:8px;font-size:12px}.mc-badges{flex-wrap:wrap;gap:5px;margin-bottom:8px;display:flex}.mc-goodfor{flex-wrap:wrap;gap:5px;display:flex}.tag{background:var(--glass-strong);color:var(--text-muted);border:1px solid var(--border-glass);border-radius:999px;padding:2px 8px;font-size:10px}.warn-banner{border-radius:var(--radius);color:var(--text);background:#fbbf2414;border:1px solid #fbbf244d;align-items:flex-start;gap:9px;margin-bottom:12px;padding:11px 12px;font-size:12px;display:flex}.ai-intro{color:var(--text-muted);margin-bottom:10px;font-size:12px;line-height:1.5}.toggle-row .th-sub{color:var(--text-faint);margin-top:2px;font-size:10.5px;font-weight:400;display:block}.autofix-label{color:var(--text);margin-bottom:6px;font-size:11.5px;font-weight:600;display:block}.autofix-textarea{resize:vertical;background:var(--glass-inner);border:1px solid var(--border-glass-strong);border-radius:var(--radius);width:100%;min-height:44px;color:var(--text);transition:border-color .2s var(--ease), box-shadow .2s var(--ease);margin-bottom:10px;padding:8px 10px;font-family:inherit;font-size:12px;line-height:1.5}.autofix-textarea::placeholder{color:var(--text-faint)}.autofix-textarea:focus-visible{border-color:var(--violet);outline:none;box-shadow:0 0 0 3px #8b5cf638}.autofix-btn{justify-content:center;width:100%}.autofix-log{flex-direction:column;gap:6px;margin-top:10px;display:flex}.autofix-entry{border-radius:var(--radius);background:var(--glass-inner);border:1px solid var(--border-glass);animation:popIn .3s var(--ease) both;align-items:flex-start;gap:8px;padding:8px 10px;font-size:11.5px;line-height:1.5;display:flex}.autofix-entry .ae-icon{flex-shrink:0;font-family:JetBrains Mono,monospace}.autofix-entry.applied{border-color:#34d39959}.autofix-entry.applied .ae-icon{color:var(--good)}.autofix-entry.skip{color:var(--text-muted)}.autofix-entry.skip .ae-icon{color:var(--text-faint)}.autofix-entry.loading{color:var(--text-muted);font-style:italic}.ai-question{border-radius:var(--radius);animation:popIn .3s var(--ease) both;background:#6366f114;border:1px solid #8b5cf659;padding:10px 11px;font-size:11.5px;line-height:1.5}.ai-question .aq-head{color:var(--text);align-items:flex-start;gap:7px;margin-bottom:8px;display:flex}.ai-question .aq-icon{flex-shrink:0}.ai-question .aq-enable{color:var(--text);cursor:pointer;transition:background .18s var(--ease), border-color .18s var(--ease);background:#8b5cf629;border:1px solid #8b5cf680;border-radius:999px;padding:5px 11px;font-size:11px;font-weight:600}.ai-question .aq-enable:hover{background:#8b5cf647;border-color:#8b5cf6b3}.btn-explain{justify-content:center;width:100%}.explain-panel{border-radius:var(--radius);background:var(--glass-inner);border:1px solid var(--border-glass);animation:popIn .3s var(--ease) both;margin-top:10px;padding:12px 13px}.explain-body{color:var(--text);white-space:pre-wrap;font-size:12.5px;line-height:1.6}.explain-body.loading,.explain-body.error{color:var(--text-muted);font-style:italic}.explain-body.error{color:var(--crit);font-style:normal}.guide-intro{color:var(--text-muted);font-size:12px;line-height:1.55}.guide-intro a{color:var(--blue)}.guide-item{border-radius:var(--radius);background:var(--glass-inner);border:1px solid var(--border-glass);animation:popIn .35s var(--ease) both;margin-bottom:8px;padding:12px 13px}.guide-item:last-child{margin-bottom:0}.gi-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:5px;display:flex}.gi-title{font-size:12.5px;font-weight:600}.gi-body{color:var(--text-muted);font-size:12px;line-height:1.55}.ai-bar{border-radius:var(--radius-xl);animation:fadeSlideIn .5s var(--ease) .14s both;flex-direction:column;grid-area:aibar;gap:10px;padding:12px 16px 14px;display:flex;position:relative;overflow:hidden}.ai-bar:before{content:"";background:var(--accent-grad);opacity:.55;height:1px;position:absolute;top:0;left:14%;right:14%}.ai-bar-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.ai-bar-brand{color:var(--text);letter-spacing:.01em;align-items:center;gap:7px;font-family:Space Grotesk,sans-serif;font-size:12.5px;font-weight:600;display:inline-flex}.ai-bar-brand-dot{background:var(--accent-grad);border-radius:50%;width:6px;height:6px;animation:2.4s ease-in-out infinite aiBarPulse;box-shadow:0 0 8px #8b5cf6b3}@keyframes aiBarPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.8)}}.ai-bar-toggle{border:1px solid var(--border-glass);width:24px;height:24px;color:var(--text-muted);cursor:pointer;transition:transform .25s var(--ease), background .2s var(--ease), color .2s var(--ease);background:0 0;border-radius:50%;justify-content:center;align-items:center;display:flex}.ai-bar-toggle:hover{background:var(--glass-inner);color:var(--text)}.ai-bar-toggle svg{width:13px;height:13px;transition:transform .25s var(--ease)}.ai-bar-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.ai-bar-messages{max-height:0;transition:max-height .35s var(--ease);flex-direction:column;gap:10px;display:flex;overflow:hidden auto}.ai-bar-messages.expanded{max-height:280px}.ai-msg{max-width:82%;animation:popIn .3s var(--ease) both;white-space:pre-wrap;border-radius:14px;padding:9px 13px;font-size:12.5px;line-height:1.55}.ai-msg-user{background:var(--accent-grad);color:var(--accent-ink);border-bottom-right-radius:4px;align-self:flex-end}.ai-msg-ai{background:var(--glass-inner);border:1px solid var(--border-glass);color:var(--text);border-bottom-left-radius:4px;align-self:flex-start}.ai-msg-ai.error{color:var(--crit);border-color:#fb718573}.ai-msg-typing{align-items:center;gap:4px;padding:3px 0;display:inline-flex}.ai-msg-typing span{background:var(--text-muted);border-radius:50%;width:5px;height:5px;animation:1.1s ease-in-out infinite aiTypingBounce}.ai-msg-typing span:nth-child(2){animation-delay:.15s}.ai-msg-typing span:nth-child(3){animation-delay:.3s}@keyframes aiTypingBounce{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.ai-bar-prompts{scrollbar-width:none;gap:7px;padding-bottom:1px;display:flex;overflow-x:auto}.ai-bar-prompts::-webkit-scrollbar{display:none}.ai-chip{background:var(--glass-inner);border:1px solid var(--border-glass);color:var(--text-muted);white-space:nowrap;cursor:pointer;transition:transform .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease), background .2s var(--ease);border-radius:999px;flex-shrink:0;padding:6px 12px;font-size:11.5px;font-weight:500}.ai-chip:hover{color:var(--text);background:#8b5cf61a;border-color:#8b5cf680;transform:translateY(-1px)}.ai-chip:disabled{opacity:.5;cursor:default;transform:none}.ai-bar-input-row{background:var(--glass-inner);border:1px solid var(--border-glass-strong);transition:border-color .2s var(--ease), box-shadow .2s var(--ease);border-radius:999px;align-items:center;gap:10px;padding:8px 8px 8px 14px;display:flex}.ai-bar-input-row:focus-within{border-color:#8b5cf699;box-shadow:0 0 0 3px #8b5cf624}.ai-bar-icon{opacity:.85;flex-shrink:0;font-size:14px}.ai-bar-input{min-width:0;color:var(--text);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:13px}.ai-bar-input::placeholder{color:var(--text-faint)}.ai-bar-send{background:var(--accent-grad);width:30px;height:30px;color:var(--accent-ink);cursor:pointer;transition:transform .2s var(--ease), box-shadow .2s var(--ease), opacity .2s var(--ease);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 4px 14px #6366f159}.ai-bar-send svg{width:14px;height:14px}.ai-bar-send:hover:not(:disabled){transform:translateY(-1px)scale(1.04);box-shadow:0 6px 20px #8b5cf680}.ai-bar-send:disabled{opacity:.45;cursor:default;box-shadow:none}@media (width<=700px){.ai-bar{padding:10px 12px 12px}.ai-bar-messages.expanded{max-height:200px}.ai-msg{max-width:90%}}@media (prefers-reduced-motion:reduce){.ai-bar-brand-dot,.ai-msg-typing span{animation:none!important}}footer.roadmap-note{border-radius:var(--radius-lg);color:var(--text-faint);animation:fadeSlideIn .5s var(--ease) .14s both;flex-wrap:wrap;gap:8px;padding:11px 20px;font-size:11.5px;display:flex;overflow:hidden}footer.roadmap-note b{background:var(--accent-grad);color:#0000;-webkit-background-clip:text;background-clip:text}@media (width<=700px){footer.roadmap-note{display:none}}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#ffffff38}.sr-only{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}
