:root{--bg:#faf7f0;--surface:#fff;--surface-subtle:#f2ece1;--border:#e4dcd0;--border-dark:#cfc5b4;--text:#1a1a1a;--text-2:#5c5549;--text-muted:#8c8273;--accent:#c1502e;--accent-hover:#a33f21;--accent-light:#f7ebe7;--chip-heuristics-bg:#eae3d2;--chip-heuristics-text:#423828;--chip-vt-bg:#e1e8e6;--chip-vt-text:#1c4035;--risk-low:#2e6f40;--risk-low-bg:#e8f2ec;--risk-medium:#b86b14;--risk-medium-bg:#fdf5e6;--risk-high:#c1502e;--risk-high-bg:#fbece8;--risk-critical:#9e1f1f;--risk-critical-bg:#f8e6e6}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;font-size:15px}body{background-color:var(--bg);color:var(--text);min-height:100vh;font-family:Outfit,system-ui,sans-serif;font-weight:400;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{color:var(--text);letter-spacing:-.02em;font-family:Fraunces,serif;font-style:normal;font-weight:600;line-height:1.15}h1{font-size:32px}@media (width>=600px){h1{font-size:42px}}@media (width>=1024px){h1{font-size:50px}}.mono{font-family:IBM Plex Mono,monospace}a{color:var(--accent);text-decoration:none;transition:color .15s}a:hover{color:var(--accent-hover)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.container{width:100%;max-width:920px;margin-inline:auto;padding-inline:24px}.topbar{background:var(--bg);border-bottom:1px solid var(--border);z-index:100;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex;position:sticky;top:0}.topbar__brand{align-items:center;gap:10px;text-decoration:none;display:flex}.topbar__mark{background:var(--accent);color:#fff;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;font-family:Fraunces,serif;font-size:16px;font-weight:700;display:flex}.topbar__wordmark{color:var(--text);letter-spacing:-.01em;font-family:Fraunces,serif;font-size:18px;font-weight:600}.topbar__wordmark span{color:var(--accent)}.topbar__nav{align-items:center;gap:24px;display:flex}.topbar__nav a{color:var(--text-2);font-size:14px;font-weight:500}.topbar__nav a:hover{color:var(--text)}.hero{text-align:left;padding:56px 0 24px}.hero__eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin-bottom:12px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:500}.hero__title{max-width:680px;color:var(--text);margin-bottom:16px}.hero__tagline{color:var(--text-2);max-width:600px;font-size:17px;line-height:1.5}.accepted-inputs{flex-wrap:wrap;align-items:center;gap:12px 24px;padding:16px 0 32px;display:flex}.accepted-input-item{color:var(--text-2);background:var(--surface-subtle);border:1px solid var(--border);border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:13px;font-weight:500;display:flex}.input-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;margin-bottom:12px;padding:24px;box-shadow:0 4px 20px #00000008}@media (width>=600px){.input-card{padding:32px}}.input-card__textarea{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);resize:vertical;border-radius:10px;outline:none;min-height:130px;padding:16px;font-family:Outfit,sans-serif;font-size:15px;line-height:1.6;transition:border-color .2s,box-shadow .2s}.input-card__textarea::placeholder{color:var(--text-muted)}.input-card__textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.input-card__actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;display:flex}.attach-btn{color:var(--text-2);background:var(--surface-subtle);border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:10px 18px;font-size:13px;font-weight:500;transition:border-color .15s,color .15s,background .15s;display:flex}.attach-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--surface)}.attached-file-info{color:var(--accent);align-items:center;gap:8px;font-family:IBM Plex Mono,monospace;font-size:13px;display:flex}.attached-file-info__remove{cursor:pointer;color:var(--text-muted);background:0 0;border:none;font-size:16px;line-height:1}.attached-file-info__remove:hover{color:var(--accent)}.btn-primary{background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:12px 28px;font-family:Outfit,sans-serif;font-size:15px;font-weight:600;transition:background .15s,transform .1s;display:inline-flex}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.disclaimer{color:var(--text-muted);margin-bottom:24px;font-size:12px;line-height:1.5}.disclaimer a{color:var(--text-2);text-decoration:underline}.results-section{padding:32px 0;animation:.35s fadeSlideIn}.verdict-header{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:16px;margin-bottom:24px;padding:24px;display:flex}@media (width>=600px){.verdict-header{flex-direction:row;justify-content:space-between;align-items:center}}.verdict-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;align-items:center;gap:8px;padding:8px 18px;font-family:IBM Plex Mono,monospace;font-size:14px;font-weight:600;display:inline-flex}.verdict-badge--low{background:var(--risk-low-bg);color:var(--risk-low)}.verdict-badge--medium{background:var(--risk-medium-bg);color:var(--risk-medium)}.verdict-badge--high{background:var(--risk-high-bg);color:var(--risk-high)}.verdict-badge--critical{background:var(--risk-critical-bg);color:var(--risk-critical)}.verdict-score{font-family:Fraunces,serif;font-size:36px;font-weight:600}.evidence-grid{grid-template-columns:1fr;gap:20px;margin-bottom:24px;display:grid}@media (width>=600px){.evidence-grid{grid-template-columns:repeat(2,1fr)}}.evidence-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;padding:20px;display:flex}.evidence-card--heuristics{border-top:4px solid var(--accent)}.evidence-card--vt{border-top:4px solid #2e6f40}.evidence-card--ai-disabled{background:var(--surface-subtle);border:1px dashed var(--border-dark);opacity:.7}.evidence-card__header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.evidence-chip{text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:4px 10px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600}.evidence-chip--heuristics{background:var(--chip-heuristics-bg);color:var(--chip-heuristics-text)}.evidence-chip--vt{background:var(--chip-vt-bg);color:var(--chip-vt-text)}.evidence-chip--disabled{color:#7a7060;background:#e4dcd0}.evidence-card__content{flex-direction:column;gap:8px;display:flex}.evidence-tag{background:var(--surface-subtle);color:var(--text);border:1px solid var(--border);word-break:break-word;border-radius:6px;padding:6px 10px;font-family:IBM Plex Mono,monospace;font-size:12px;line-height:1.4}.recommendations-box{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:24px;padding:20px}.recommendations-box__title{margin-bottom:12px;font-family:Fraunces,serif;font-size:18px}.recommendations-list{flex-direction:column;gap:8px;list-style:none;display:flex}.recommendations-list li{color:var(--text-2);gap:10px;font-size:14px;display:flex}.recommendations-list li:before{content:"•";color:var(--accent);font-weight:700}.report-copy-row{background:var(--surface);border:1px solid var(--border);border-radius:10px;align-items:center;gap:12px;margin-bottom:24px;padding:12px 16px;display:flex}.report-copy-link{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;flex:1;font-family:IBM Plex Mono,monospace;font-size:12px;overflow:hidden}.btn-copy{background:var(--surface-subtle);border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:6px;padding:6px 12px;font-size:12px;font-weight:500}.btn-copy:hover{border-color:var(--accent);color:var(--accent)}.loading-state{color:var(--text-2);flex-direction:column;align-items:center;gap:14px;padding:48px 0;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-state{background:var(--risk-high-bg);border:1px solid var(--risk-high);color:var(--risk-high);border-radius:10px;margin-bottom:24px;padding:16px 20px}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#1a1a1a8c;justify-content:center;align-items:center;padding:24px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg);border:1px solid var(--border);border-radius:16px;outline:none;flex-direction:column;width:100%;max-width:680px;max-height:85vh;animation:.25s cubic-bezier(.16,1,.3,1) modalSlide;display:flex;box-shadow:0 12px 36px #00000026}.modal-header{border-bottom:1px solid var(--border);background:var(--surface);border-radius:16px 16px 0 0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-title{color:var(--text);font-family:Fraunces,serif;font-size:22px}.modal-close-btn{background:var(--surface-subtle);border:1px solid var(--border);width:32px;height:32px;color:var(--text-2);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:14px;transition:all .15s;display:flex}.modal-close-btn:hover{background:var(--accent-light);color:var(--accent);border-color:var(--accent)}.modal-body{color:var(--text);padding:24px;line-height:1.6;overflow-y:auto}.modal-body h2{color:var(--text);margin:20px 0 8px;font-family:Fraunces,serif;font-size:18px}.modal-body h2:first-child{margin-top:0}.modal-body ul{margin-bottom:16px;padding-left:20px}.modal-body li{margin-bottom:6px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlide{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:center;align-items:center;gap:16px 32px;width:100%;margin-top:60px;padding:32px 24px;display:flex}.footer a{color:var(--text-2);white-space:nowrap;font-size:14px;font-weight:500;transition:color .15s}.footer a:hover{color:var(--accent)}@media (width<=600px){.footer{gap:12px 20px;padding:24px 16px}.footer a{font-size:13px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
