:root{--bg:#08080a;--bg-raised:#101014;--bg-panel:#131318;--border:#ffffff14;--border-strong:#ffffff24;--text:#f4f4f6;--text-dim:#9a9aa4;--text-faint:#5c5c66;--red:#e10600;--red-bright:#ff2e3f;--green:#2dd977;--yellow:#f5c542;--blue:#4da3ff;--grey:#8a8f98;--mono:"SF Mono", ui-monospace, "Cascadia Code", "JetBrains Mono", Menlo, monospace;--sans:-apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", Roboto, sans-serif;--ease:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}::selection{background:#e1060059}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{border:2px solid var(--bg);background:#26262c;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#34343c}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}h1,h2,h3,h4{letter-spacing:-.02em;font-weight:600}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.btn-primary{background:var(--red);color:#fff;letter-spacing:.01em;transition:all .3s var(--ease);border-radius:12px;align-items:center;gap:10px;padding:14px 30px;font-size:15px;font-weight:600;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 0 #e1060000}.btn-primary:after{content:"";width:55%;height:100%;transition:left .6s var(--ease);background:linear-gradient(105deg,#0000,#ffffff47,#0000);position:absolute;top:0;left:-80%;transform:skew(-18deg)}.btn-primary:hover{background:#ff1a14;transform:translateY(-2px);box-shadow:0 14px 44px -10px #e10600a6}.btn-primary:hover:after{left:130%}.btn-primary:active{transform:translateY(0)}.btn-ghost{color:var(--text);border:1px solid var(--border-strong);transition:all .25s var(--ease);background:0 0;border-radius:10px;align-items:center;gap:8px;padding:13px 24px;font-size:15px;font-weight:500;display:inline-flex}.btn-ghost:hover{background:#ffffff0a;border-color:#ffffff4d}.chip{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.analysis-view{flex-direction:column;height:100vh;display:flex;overflow:hidden}.analysis-bar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(16px);z-index:5;background:#0e0e12d1;justify-content:space-between;align-items:center;gap:20px;padding:14px 24px;display:flex}.analysis-file{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.analysis-actions{gap:10px;display:flex}.bar-btn{padding:9px 18px;font-size:13px}.analysis-body{flex:1;grid-template-columns:1fr 460px;min-height:0;display:grid}.viewport{background:radial-gradient(ellipse 80% 60% at 50% 40%, #101014 0%, var(--bg) 100%);min-width:0;position:relative}.viewport canvas{display:block}.report-panel{border-left:1px solid var(--border);background:var(--bg-raised);flex-direction:column;display:flex;overflow-y:auto}.report-summary{border-bottom:1px solid var(--border);flex-direction:column;align-items:center;padding:28px 24px 18px;display:flex}.score-ring{width:150px;height:150px;position:relative}.score-ring-value{flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:absolute;inset:0}.score-number{font-size:42px;font-weight:700;line-height:1}.score-caption{letter-spacing:.18em;text-transform:uppercase;color:var(--text-faint);font-size:10px}.summary-counts{gap:10px;margin-top:18px;display:flex}.count-pill{border:1px solid var(--border);background:var(--bg-panel);transition:all .22s var(--ease);border-radius:12px;flex-direction:column;align-items:center;gap:2px;min-width:68px;padding:10px 16px;display:flex}.count-pill:hover{border-color:var(--border-strong);transform:translateY(-1px)}.count-pill.active{border-color:currentColor}.count-pill .count-value{font-size:20px;font-weight:700}.count-pill .count-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);font-size:10px}.count-pill.status-pass .count-value{color:var(--green)}.count-pill.status-warning .count-value{color:var(--yellow)}.count-pill.status-fail .count-value{color:var(--red-bright)}.count-pill.status-manual .count-value{color:var(--grey)}.penalty-total{color:var(--red-bright);letter-spacing:.06em;margin-top:14px;font-size:12px}.model-facts{border-bottom:1px solid var(--border);color:var(--text-faint);letter-spacing:.02em;flex-direction:column;gap:5px;padding:16px 24px;font-size:11.5px;display:flex}.report-filters{background:var(--bg-raised);z-index:2;border-bottom:1px solid var(--border);gap:6px;padding:14px 24px;display:flex;position:sticky;top:0}.filter-tab{color:var(--text-dim);transition:all .2s var(--ease);border:1px solid #0000;border-radius:8px;padding:7px 14px;font-size:13px}.filter-tab:hover{color:var(--text);background:#ffffff0a}.filter-tab.active{color:var(--text);border-color:var(--border-strong);background:#ffffff12}.rule-groups{padding:8px 24px 40px}.rule-group-title{letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);margin:22px 0 10px;font-size:11px}.rule-card{text-align:left;border:1px solid var(--border);width:100%;transition:border-color .22s var(--ease), transform .22s var(--ease), box-shadow .22s var(--ease);background:linear-gradient(160deg,#16161ce6,#0f0f13e6);border-radius:14px;margin-bottom:10px;padding:14px 16px;display:block;position:relative;overflow:hidden}.rule-card:before{content:"";background:radial-gradient(240px circle at var(--mx,50%) var(--my,50%), #ffffff0e, transparent 65%);opacity:0;transition:opacity .25s var(--ease);pointer-events:none;position:absolute;inset:0}.rule-card:hover:before{opacity:1}.rule-card:hover{border-color:var(--border-strong);transform:translateY(-1px);box-shadow:0 10px 34px -14px #000000d9}.rule-card.selected{border-color:#4da3ff80;box-shadow:0 0 0 1px #4da3ff40,0 12px 40px -16px #000000e6}.rule-card.status-fail{border-left:3px solid var(--red-bright)}.rule-card.status-warning{border-left:3px solid var(--yellow)}.rule-card.status-pass{border-left:3px solid var(--green)}.rule-card.status-manual{border-left:3px solid var(--grey)}.rule-card-head{align-items:center;gap:10px;display:flex}.rule-id{color:var(--text-faint);letter-spacing:.06em;flex-shrink:0;font-size:11px}.rule-name{flex:1;min-width:0;font-size:14px;font-weight:600}.chip.status-pass{color:var(--green);background:#2dd9771f}.chip.status-warning{color:var(--yellow);background:#f5c5421f}.chip.status-fail{color:var(--red-bright);background:#ff2e3f24}.chip.status-manual{color:var(--grey);background:#8a8f9824}.rule-card-metrics{flex-wrap:wrap;gap:8px 18px;margin-top:9px;display:flex}.metric{color:var(--text-dim);font-size:12px}.metric em{color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em;margin-right:6px;font-size:10.5px;font-style:normal}.metric.penalty{color:var(--red-bright)}.rule-card-detail{border-top:1px solid var(--border);margin-top:12px;overflow:hidden}.rule-desc{color:var(--text-faint);margin-top:12px;font-size:12.5px;line-height:1.6}.rule-explanation{color:var(--text);margin-top:10px;font-size:13.5px;line-height:1.6}.rule-remedy{color:var(--text-dim);background:#4da3ff0f;border:1px solid #4da3ff2e;border-radius:10px;margin-top:10px;padding:10px 12px;font-size:13px;line-height:1.6}.rule-remedy strong{color:var(--blue);text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px;font-size:11px;display:block}.rule-footer{color:var(--text-faint);letter-spacing:.05em;text-transform:uppercase;gap:16px;margin-top:12px;font-size:10.5px;display:flex}.empty-filter{color:var(--text-faint);text-align:center;padding:32px 0;font-size:14px}.progress-overlay{z-index:100;-webkit-backdrop-filter:blur(14px);background:#08080ae6;place-items:center;display:grid;position:fixed;inset:0}.progress-card{background:var(--bg-panel);border:1px solid var(--border-strong);border-radius:20px;width:min(440px,90vw);padding:32px 36px;box-shadow:0 40px 120px -30px #000000e6}.progress-title{align-items:center;gap:12px;margin-bottom:24px;font-size:19px;font-weight:600;display:flex}.progress-pulse{background:var(--red);border-radius:50%;width:10px;height:10px;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{0%,to{box-shadow:0 0 #e1060080}50%{box-shadow:0 0 0 9px #e1060000}}.progress-stages{flex-direction:column;gap:12px;list-style:none;display:flex}.progress-stage{color:var(--text-faint);align-items:center;gap:12px;font-size:14px;transition:color .3s;display:flex}.progress-stage.active{color:var(--text)}.progress-stage.done{color:var(--text-dim)}.stage-marker{border:1.5px solid var(--border-strong);border-radius:50%;flex-shrink:0;place-items:center;width:18px;height:18px;transition:all .3s;display:grid}.progress-stage.active .stage-marker{border-color:var(--red);box-shadow:0 0 12px #e1060080}.progress-stage.done .stage-marker{border-color:var(--green)}.progress-detail{color:var(--text-faint);letter-spacing:.04em;min-height:16px;margin-top:22px;font-size:11.5px}@media (width<=1080px){.analysis-body{grid-template-rows:46vh 1fr;grid-template-columns:1fr}.report-panel{border-left:none;border-top:1px solid var(--border)}}.anantam-topbar{z-index:999;pointer-events:none;justify-content:space-between;align-items:center;width:100%;padding:1.5rem 2.5rem;display:flex;position:fixed;top:0;left:0}.anantam-brand{letter-spacing:-.04em;color:#fff;pointer-events:auto;font-family:Orbitron,sans-serif;font-size:1.4rem;font-weight:800;text-decoration:none}.anantam-dot{color:#e30613}.anantam-topbar-right{pointer-events:auto;align-items:center;gap:1.5rem;display:flex}.anantam-brand-sub{color:#ffffff80;letter-spacing:.02em;font-family:Orbitron,sans-serif;font-size:1.1rem;font-weight:500}.landing{position:relative}.stage{z-index:0;position:fixed;inset:0}.stage canvas{display:block}.stage-vignette{z-index:1;pointer-events:none;background:radial-gradient(120% 90% at 50% 45%,#0000 55%,#040406b8 100%),linear-gradient(#04040680,#0000 18% 84%,#04040699);position:fixed;inset:0}#topbar{z-index:50;mix-blend-mode:difference;pointer-events:none;justify-content:space-between;align-items:center;padding:24px 42px;display:flex;position:fixed;top:0;left:0;right:0}.brand{letter-spacing:.42em;font-family:Orbitron,sans-serif;font-size:15px;font-weight:800}.brand span{color:var(--red,#e01235);-webkit-text-fill-color:var(--red,#e01235)}.brand-sub{letter-spacing:.34em;color:var(--text-faint,#8b8f96);text-transform:uppercase;font-family:Orbitron,sans-serif;font-size:11px}.rail{z-index:40;flex-direction:column;gap:14px;display:flex;position:fixed;top:50%;right:26px;transform:translateY(-50%)}.rail-dot{width:5px;height:5px;transition:all .5s var(--ease);background:#ffffff2e;border-radius:50%}.rail-dot.active{background:var(--red);transform:scale(1.5);box-shadow:0 0 10px #e10600b3}.chapter{z-index:2;pointer-events:none;align-items:center;min-height:100vh;padding:0 max(6vw,40px);display:flex;position:relative}.chapter button,.chapter a,.chapter .story-card,.chapter .upload-stage{pointer-events:auto}.chapter-hero{align-items:flex-end;padding-bottom:13vh}.hero-copy{max-width:760px}.hero-eyebrow{letter-spacing:.32em;color:var(--red-bright);margin-bottom:26px;font-size:11.5px}.hero-title{letter-spacing:-.045em;flex-wrap:wrap;gap:0 1.8rem;font-size:clamp(58px,8.2vw,118px);font-weight:700;line-height:.98;display:flex}.hero-word{text-shadow:0 8px 60px #000c;display:inline-block}.hero-red{color:var(--red);text-shadow:0 0 90px #e1060073}.hero-sub{color:var(--text-dim);text-shadow:0 2px 24px #000000e6;max-width:480px;margin-top:30px;font-size:19px;line-height:1.6}.hero-actions{gap:14px;margin-top:42px;display:flex}.hero-hint{letter-spacing:.34em;color:var(--text-faint);flex-direction:column;align-items:center;gap:10px;font-size:10px;display:flex;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.hint-line{background:linear-gradient(to bottom, transparent, var(--red));width:1px;height:44px;animation:2.4s ease-in-out infinite hintPulse}@keyframes hintPulse{0%,to{opacity:.25;transform-origin:top;transform:scaleY(.55)}50%{opacity:1;transform:scaleY(1)}}.chapter-story.align-right{justify-content:flex-end}.chapter-story.align-center{justify-content:center}.story-card{-webkit-backdrop-filter:blur(18px);background:linear-gradient(155deg,#0e0e14b8,#09090d8c);border:1px solid #ffffff14;border-radius:22px;max-width:480px;padding:40px 44px;box-shadow:0 40px 100px -40px #000000e6,inset 0 1px #ffffff0f}.story-index{color:#ffffff12;margin-bottom:-20px;font-size:44px;font-weight:700;line-height:1;display:block}.story-kicker{letter-spacing:.3em;color:var(--red-bright);margin-bottom:16px;font-size:11px;display:block}.story-card h2{letter-spacing:-.03em;margin-bottom:18px;font-size:clamp(30px,3.2vw,42px);line-height:1.08}.story-card p{color:var(--text-dim);font-size:16px;line-height:1.7}.chapter-upload{flex-direction:column;justify-content:center;gap:0;min-height:108vh;padding-top:14vh;padding-bottom:16vh}.upload-stage{flex-direction:column;align-items:center;width:100%;display:flex}.upload-header{text-align:center;margin-bottom:44px}.upload-header h2{letter-spacing:-.035em;font-size:clamp(40px,4.6vw,62px)}.upload-header p{color:var(--text-dim);margin-top:16px;font-size:17px}.upload-kicker{letter-spacing:.3em;color:var(--red-bright);font-size:11px;font-family:var(--mono);margin-bottom:18px;display:block}.dropzone{text-align:center;-webkit-backdrop-filter:blur(20px);width:min(680px,92vw);transition:all .35s var(--ease);cursor:pointer;background:linear-gradient(160deg,#101016a8,#0a0a0e80);border:1px solid #ffffff1a;border-radius:26px;padding:64px 48px;position:relative;overflow:hidden;box-shadow:0 40px 120px -40px #000000e6}.dropzone:before,.dropzone:after{content:"";width:26px;height:26px;transition:all .35s var(--ease);pointer-events:none;border:1.5px solid #4da3ff8c;position:absolute}.dropzone:before{border-bottom:none;border-right:none;border-top-left-radius:8px;top:14px;left:14px}.dropzone:after{border-top:none;border-left:none;border-bottom-right-radius:8px;bottom:14px;right:14px}.dropzone:hover,.dropzone.dragging{border-color:#e106008c;transform:translateY(-3px);box-shadow:0 40px 120px -40px #000000e6,0 0 90px -30px #e1060080}.dropzone:hover:before,.dropzone:hover:after,.dropzone.dragging:before,.dropzone.dragging:after{border-color:var(--red);width:34px;height:34px}.dropzone.dragging{transform:scale(1.015)}.dropzone .scanline{opacity:0;pointer-events:none;background:linear-gradient(90deg,#0000,#4da3ffd9,#0000);height:2px;position:absolute;top:-2px;left:0;right:0}.dropzone:hover .scanline,.dropzone.dragging .scanline{opacity:1;animation:scan 2.1s var(--ease) infinite}@keyframes scan{0%{opacity:0;top:0}12%{opacity:1}88%{opacity:1}to{opacity:0;top:100%}}.dropzone-icon{margin-bottom:22px}.dropzone h3{letter-spacing:-.02em;margin-bottom:10px;font-size:23px}.dropzone p{color:var(--text-dim);font-size:15px}.dropzone-formats{justify-content:center;gap:10px;margin-top:26px;display:flex}.format-chip{border:1px solid var(--border);color:var(--text-dim);font-size:12px;font-family:var(--mono);letter-spacing:.08em;transition:all .25s var(--ease);border-radius:999px;padding:5px 14px}.dropzone:hover .format-chip{border-color:var(--border-strong);color:var(--text)}.upload-privacy{color:var(--text-faint);align-items:center;gap:8px;margin-top:22px;font-size:13px;display:flex}.sample-row{color:var(--text-faint);align-items:center;gap:14px;margin-top:30px;font-size:14px;display:flex}.sample-row .btn-ghost{-webkit-backdrop-filter:blur(12px);background:#0a0a0e80}.upload-error{text-align:left;-webkit-backdrop-filter:blur(12px);background:#ff2e3f14;border:1px solid #ff2e3f59;border-radius:14px;width:min(680px,92vw);margin-top:22px;padding:18px 22px}.upload-error strong{color:var(--red-bright);margin-bottom:6px;font-size:14px;display:block}.upload-error span{color:var(--text-dim);font-size:14px;line-height:1.5}.footer{color:var(--text-faint);border-top:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:24px 40px;font-size:12.5px;display:flex;position:absolute;bottom:0;left:0;right:0}@media (width<=900px){.nav{padding:16px 20px}.nav-platform,.nav-divider{display:none}.rail{right:12px}.chapter{padding:0 24px}.chapter-hero{padding-bottom:18vh}.story-card{padding:30px 28px}.footer{text-align:center;flex-direction:column;gap:8px;padding:18px 24px}}
