:root{--bg:#0b0d12;--bg-soft:#12151c;--card:#161a22;--border:#232834;--text:#e8eaed;--muted:#9aa3b2;--accent:#4c8dff;--accent-hover:#3a7bff;--accent-soft:rgba(76,141,255,0.12);--success:#35c98a;--danger:#ff5c5c;--radius:14px;--maxw:1080px}*{box-sizing:border-box}body,html{padding:0;margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;-webkit-font-smoothing:antialiased;line-height:1.6}a{color:inherit;text-decoration:none}.container{max-width:var(--maxw);margin:0 auto;padding:0 20px}.site-footer,.site-header{border-bottom:1px solid var(--border)}.site-footer{border-bottom:none;border-top:1px solid var(--border);margin-top:80px;padding:40px 0;color:var(--muted);font-size:14px}.site-footer a:hover{color:var(--text)}.nav{display:flex;align-items:center;justify-content:space-between;height:64px}.brand{font-weight:700;font-size:19px;letter-spacing:-.02em}.brand span{color:var(--accent)}.nav-links{display:flex;gap:26px;font-size:15px;color:var(--muted)}.nav-links a:hover{color:var(--text)}.hero{padding:72px 0 40px;text-align:center}.hero h1{font-size:clamp(30px,5vw,48px);line-height:1.1;letter-spacing:-.03em;margin:0 0 18px}.hero p.sub{font-size:clamp(17px,2.4vw,20px);color:var(--muted);max-width:640px;margin:0 auto}.uploader{max-width:640px;margin:36px auto 0}.dropzone{border:2px dashed var(--border);border-radius:var(--radius);background:var(--bg-soft);padding:48px 24px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s}.dropzone.drag,.dropzone:hover{border-color:var(--accent);background:var(--accent-soft)}.dropzone strong{color:var(--accent)}.dropzone .hint{color:var(--muted);font-size:14px;margin-top:8px}.result{margin-top:22px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;text-align:left}.result h3{margin:0 0 12px;font-size:15px;color:var(--muted);font-weight:600}.result pre{white-space:pre-wrap;word-wrap:break-word;margin:0;font-family:inherit;font-size:15px}.progress{color:var(--muted);font-size:15px;display:flex;align-items:center;gap:10px;justify-content:center;margin-top:22px}.spinner{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.quota-note{text-align:center;color:var(--muted);font-size:13px;margin-top:14px}.paywall{border-color:var(--accent);background:var(--accent-soft)}section.block{padding:56px 0}section.block h2{font-size:clamp(24px,3.5vw,32px);letter-spacing:-.02em;margin:0 0 14px;text-align:center}section.block>.container>p.lead{color:var(--muted);text-align:center;max-width:680px;margin:0 auto 8px}.pricing{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;margin-top:34px}@media (max-width:760px){.pricing{grid-template-columns:1fr}}.tier{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:26px 22px}.tier.hl{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.tier .tname{font-size:15px;color:var(--muted);font-weight:600}.tier .price{font-size:34px;font-weight:700;letter-spacing:-.02em;margin:6px 0 2px}.tier .price small{font-size:15px;color:var(--muted);font-weight:400}.tier ul{list-style:none;padding:0;margin:18px 0 0;font-size:15px}.tier li{padding:6px 0 6px 26px;position:relative;color:var(--text)}.tier li:before{content:"✓";position:absolute;left:0;color:var(--success);font-weight:700}.btn{display:inline-block;background:var(--accent);color:#fff;padding:12px 22px;border-radius:10px;font-weight:600;font-size:15px;border:none;cursor:pointer;transition:background .15s}.btn:hover{background:var(--accent-hover)}.btn.block{width:100%;margin-top:20px;text-align:center}.btn.ghost{background:transparent;border:1px solid var(--border);color:var(--text)}.btn.ghost:hover{border-color:var(--accent);background:var(--accent-soft)}.prose{max-width:760px;margin:0 auto;padding:48px 0 0}.prose h1{font-size:32px;letter-spacing:-.02em;margin:0 0 8px}.prose h2{font-size:21px;margin:34px 0 10px}.prose li,.prose p{color:var(--text)}.prose .muted{color:var(--muted)}.prose table{border-collapse:collapse;width:100%;margin:16px 0}.prose td{border:1px solid var(--border);padding:10px 14px;vertical-align:top}.prose td:first-child{color:var(--muted);width:40%}.badge-missing{color:var(--danger);font-style:italic}.faq{max-width:760px;margin:24px auto 0}.faq details{border-bottom:1px solid var(--border);padding:16px 0}.faq summary{cursor:pointer;font-weight:600;font-size:16px;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq p{color:var(--muted);margin:10px 0 0}