.cc[data-astro-cid-kror3uvh]{z-index:100;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius);max-width:720px;box-shadow:var(--shadow-lg);flex-wrap:wrap;align-items:center;gap:12px 18px;margin-inline:auto;padding:16px 18px;display:flex;position:fixed;bottom:16px;left:16px;right:16px}.cc-text[data-astro-cid-kror3uvh]{color:var(--muted);flex:260px;margin:0;font-size:.9rem}.cc-actions[data-astro-cid-kror3uvh]{gap:10px;margin-left:auto;display:flex}.cc[data-astro-cid-kror3uvh] .btn[data-astro-cid-kror3uvh]{padding:9px 18px;font-size:.92rem}@media (width<=560px){.cc-actions[data-astro-cid-kror3uvh]{width:100%}.cc[data-astro-cid-kror3uvh] .btn[data-astro-cid-kror3uvh]{flex:1;justify-content:center}}:root{--bg:#fff;--bg-alt:#f5f8fc;--bg-soft:#eef3fb;--panel:#fff;--text:#16232f;--heading:#0b1b2b;--muted:#5b6b7c;--border:#e5ebf2;--border-strong:#d3dbe6;--brand:#2b74f0;--brand-ink:#1a5fd6;--brand-soft:#e9f1ff;--accent:#12b3a6;--ok:#12a15a;--danger:#e5484d;--radius:16px;--radius-sm:10px;--radius-lg:22px;--shadow-sm:0 1px 2px #1018280d, 0 1px 3px #10182814;--shadow-md:0 4px 12px #10182814, 0 2px 6px #1018280d;--shadow-lg:0 24px 60px -20px #10182840;--maxw:1120px;--font:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.6}h1,h2,h3,h4{color:var(--heading);letter-spacing:-.02em;font-weight:800;line-height:1.15}a{color:var(--brand);text-decoration:none}a:hover{color:var(--brand-ink)}img{max-width:100%}.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:22px}.narrow{max-width:780px}.site-header{z-index:50;backdrop-filter:saturate(180%)blur(12px);border-bottom:1px solid var(--border);background:#ffffffd9;position:sticky;top:0}.site-header .container{align-items:center;gap:24px;height:68px;display:flex}.brand{color:var(--heading);letter-spacing:-.02em;align-items:center;gap:10px;font-size:1.2rem;font-weight:800;display:inline-flex}.brand:hover{color:var(--heading)}.brand .mark{background:linear-gradient(135deg, var(--brand), #4b93ff);color:#fff;width:30px;height:30px;box-shadow:var(--shadow-sm);border-radius:9px;place-items:center;display:grid}.nav{align-items:center;gap:4px;margin-left:auto;display:flex}.nav a{color:var(--muted);border-radius:9px;padding:8px 14px;font-size:.94rem;font-weight:600}.nav a:hover{color:var(--heading);background:var(--bg-alt)}.nav a[aria-current=page]{color:var(--brand-ink);background:var(--brand-soft)}.nav-toggle{border:1px solid var(--border-strong);cursor:pointer;background:#fff;border-radius:10px;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;margin-left:auto;padding:0;display:none}.nav-toggle span{background:var(--heading);border-radius:2px;width:20px;height:2px;margin-inline:auto;transition:transform .2s,opacity .2s;display:block}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}@media (width<=760px){.site-header .container{flex-wrap:wrap;gap:10px;height:auto;min-height:64px;padding-block:11px}.nav-toggle{display:flex}.nav{border-top:1px solid var(--border);flex-direction:column;order:3;align-items:stretch;gap:2px;width:100%;margin-left:0;padding-top:6px;display:none}.nav.open{display:flex}.nav a{padding:12px 14px;font-size:1rem}}.btn{appearance:none;border-radius:var(--radius-sm);cursor:pointer;background:var(--brand);color:#fff;border:0;align-items:center;gap:9px;padding:13px 26px;font-family:inherit;font-size:1rem;font-weight:700;transition:background .15s,transform 50ms,box-shadow .15s;display:inline-flex;box-shadow:0 6px 16px -6px #2b74f099}.btn:hover{background:var(--brand-ink);color:#fff}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.btn.lg{border-radius:12px;padding:16px 34px;font-size:1.08rem}.btn.secondary{color:var(--heading);border:1px solid var(--border-strong);box-shadow:var(--shadow-sm);background:#fff}.btn.secondary:hover{background:var(--bg-alt);color:var(--heading)}.btn svg{width:20px;height:20px}.hero{text-align:center;padding-block:64px 40px}.hero h1{max-width:800px;margin:0 auto 18px;font-size:clamp(2.1rem,5vw,3.4rem)}.hero .lead{color:var(--muted);max-width:620px;margin:0 auto;font-size:clamp(1.05rem,2.2vw,1.28rem)}.eyebrow{color:var(--brand-ink);background:var(--brand-soft);border-radius:999px;align-items:center;gap:8px;margin-bottom:22px;padding:7px 15px;font-size:.85rem;font-weight:700;display:inline-flex}.eyebrow svg{width:16px;height:16px}.features{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:12px 30px;margin-top:30px;font-size:.95rem;font-weight:600;display:flex}.features span{align-items:center;gap:8px;display:inline-flex}.features svg{width:18px;height:18px;color:var(--ok)}.section{padding-block:34px}.section-alt{background:var(--bg-alt);border-block:1px solid var(--border)}.section-head{text-align:center;margin-bottom:8px}.section-head h2{margin:0 0 8px;font-size:clamp(1.5rem,3vw,2rem)}.section-head p{color:var(--muted);margin:0}.cat-block{margin-top:40px;scroll-margin-top:88px}.cat-title{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);border-bottom:1px solid var(--border);margin:0;padding-bottom:12px;font-size:.82rem;font-weight:700}.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:22px;display:grid}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:26px;transition:transform .18s,border-color .18s,box-shadow .18s;display:block}.card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-4px)}.card .icon{background:var(--brand-soft);width:52px;height:52px;color:var(--brand);border-radius:13px;place-items:center;margin-bottom:16px;display:grid}.card .icon svg{width:26px;height:26px}.card h3{margin:0 0 8px;font-size:1.15rem}.card p{color:var(--muted);margin:0;font-size:.96rem}.card .go{color:var(--brand);align-items:center;gap:6px;margin-top:16px;font-size:.94rem;font-weight:700;display:inline-flex}.card .go svg{width:16px;height:16px;transition:transform .15s}.card:hover .go svg{transform:translate(3px)}.tool-hero{text-align:center;padding-block:52px 8px}.tool-hero .icon{background:var(--brand-soft);width:60px;height:60px;color:var(--brand);border-radius:15px;place-items:center;margin-bottom:18px;display:inline-grid}.tool-hero .icon svg{width:30px;height:30px}.tool-hero h1{margin:0 0 14px;font-size:clamp(1.9rem,4vw,2.8rem)}.tool-hero p{color:var(--muted);max-width:600px;margin:0 auto;font-size:1.1rem}.uploader{max-width:720px;margin:34px auto 0}.dropzone{background:var(--panel);border:2px dashed var(--border-strong);border-radius:var(--radius-lg);text-align:center;cursor:pointer;box-shadow:var(--shadow-lg);flex-direction:column;align-items:center;gap:14px;padding:52px 28px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex;position:relative}.dropzone:hover,.dropzone.dragover{border-color:var(--brand);background:var(--brand-soft)}.dropzone .cta{pointer-events:none}.dropzone .hint{color:var(--muted);font-size:.95rem}.dropzone .formats{color:var(--muted);opacity:.8;font-size:.82rem}.uploader .privacy{color:var(--muted);justify-content:center;align-items:center;gap:8px;margin-top:18px;font-size:.9rem;display:flex}.uploader .privacy svg{width:17px;height:17px;color:var(--ok)}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);max-width:720px;box-shadow:var(--shadow-lg);margin:34px auto 0;padding:30px}.controls{flex-wrap:wrap;justify-content:center;align-items:end;gap:16px;margin-top:22px;display:flex}.field{text-align:left;flex-direction:column;gap:7px;display:flex}.field label{color:var(--heading);font-size:.85rem;font-weight:700}select,input[type=range]{color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:#fff;padding:11px 13px;font-family:inherit;font-size:.96rem}select:focus,input:focus{outline:2px solid var(--brand);outline-offset:1px;border-color:var(--brand)}.status{color:var(--muted);text-align:center;min-height:1.4em;margin-top:18px;font-size:.95rem}.status.err{color:var(--danger)}.status.ok{color:var(--ok)}.progress{background:var(--bg-soft);border-radius:999px;height:8px;margin-top:16px;display:none;overflow:hidden}.progress.on{display:block}.progress>i{background:linear-gradient(90deg, var(--brand), #4b93ff);width:0;height:100%;transition:width .25s;display:block}.result-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:26px;display:grid}@media (width<=640px){.result-grid{grid-template-columns:1fr}}.preview{background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);text-align:center;padding:14px}.preview h4{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px;font-size:.78rem;font-weight:700}.preview img{background-image:linear-gradient(45deg,#d7dee7 25%,#0000 25%),linear-gradient(-45deg,#d7dee7 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#d7dee7 75%),linear-gradient(-45deg,#0000 75%,#d7dee7 75%);background-position:0 0,0 9px,9px -9px,-9px 0;background-size:18px 18px;border-radius:8px;max-width:100%;max-height:320px}.filelist{flex-direction:column;gap:10px;margin:22px 0 0;padding:0;list-style:none;display:flex}.fileitem{background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:12px;padding:10px 14px;display:flex}.fileitem .fi-icon{color:var(--brand);flex:none;place-items:center;display:grid}.fileitem .fi-icon svg{width:22px;height:22px}.fileitem .fi-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.92rem;font-weight:600;overflow:hidden}.fileitem .fi-meta{color:var(--muted);flex:none;font-size:.82rem}.fileitem .fi-actions{flex:none;gap:4px;display:flex}.icon-btn{appearance:none;border:1px solid var(--border-strong);color:var(--muted);cursor:pointer;background:#fff;border-radius:8px;place-items:center;width:32px;height:32px;font-size:1rem;line-height:1;transition:background .12s,color .12s;display:grid}.icon-btn:hover:not(:disabled){background:var(--brand-soft);color:var(--brand-ink)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn svg{width:16px;height:16px}.thumbs{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;margin-top:24px;display:grid}.thumb{background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius-sm);text-align:center;padding:10px}.thumb img{max-width:100%;box-shadow:var(--shadow-sm);border-radius:6px}.thumb .cap{color:var(--muted);margin:8px 0;font-size:.8rem;display:block}.ocr-output{background:var(--bg-alt);width:100%;min-height:220px;color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);resize:vertical;margin-top:22px;padding:15px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.92rem}.article{max-width:760px;margin:60px auto 0;padding-inline:22px}.article h2{margin-top:40px;font-size:1.5rem}.article h3{color:var(--heading);margin-top:26px;font-size:1.12rem}.article p,.article li{color:var(--muted)}.article ol,.article ul{padding-left:20px}.article li{margin-bottom:6px}.ad-slot{max-width:var(--maxw);border:1px solid var(--border);border-radius:var(--radius);color:#aeb8c4;letter-spacing:.08em;text-transform:uppercase;background:var(--bg-alt);justify-content:center;align-items:center;min-height:100px;margin:40px auto;font-size:.75rem;display:flex}.site-footer{border-top:1px solid var(--border);color:var(--muted);background:var(--bg-alt);margin-top:70px;padding-block:34px;font-size:.92rem}.site-footer .container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 26px;display:flex}.site-footer nav{flex-wrap:wrap;gap:20px;display:flex}.site-footer a{color:var(--muted)}.site-footer a:hover{color:var(--heading)}.privacy-note{align-items:center;gap:8px;display:inline-flex}.privacy-note svg{width:17px;height:17px;color:var(--ok)}.donate-btn{padding:8px 16px;font-size:.9rem}.donate-btn svg{width:17px;height:17px}.recommend{max-width:760px;margin:46px auto 0}.recommend-title{margin:0 0 14px;font-size:1.15rem}.recommend-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.rec-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:6px;padding:18px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.rec-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);text-decoration:none;transform:translateY(-3px)}.rec-card strong{color:var(--heading);font-size:1.02rem}.rec-blurb{color:var(--muted);font-size:.92rem}.rec-cta{color:var(--brand);margin-top:4px;font-size:.9rem;font-weight:700}.rec-disclosure{color:var(--muted);opacity:.85;margin-top:12px;font-size:.8rem}@media (width<=560px){.hero{padding-block:40px 22px}.tool-hero{padding-block:34px 4px}.dropzone{padding:38px 18px}.dropzone .cta.btn.lg,.btn.lg{justify-content:center;width:100%}.controls{gap:12px}.controls .btn{justify-content:center;width:100%}.site-footer .container{text-align:center;flex-direction:column;justify-content:center}.site-footer nav{justify-content:center}}
