:root{--ink:#1c332b;--muted:#53685d;--green:#285f49;--paper:#fffefa;--ground:#f4f5ef;--line:#dce5d9;--gold:#ebd59c;--radius:20px}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{margin:0;font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--ground);color:var(--ink)}h1,h2,h3,p{margin:0}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible,.drop:focus-within,summary:focus-visible{outline:3px solid #a57e2a;outline-offset:3px}.shell{width:min(1100px,calc(100% - 48px));margin:auto}
.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.header-inner,.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:67px}.brand{display:inline-flex;align-items:center;gap:9px;text-decoration:none;font-weight:780;font-size:21px;letter-spacing:-.04em}.header-link{font-size:13px;font-weight:650;color:#416253;text-underline-offset:4px}.header-link span{margin-left:4px}
.hero{display:grid;grid-template-columns:1.06fr .94fr;align-items:center;background:radial-gradient(ellipse at 82% 65%,#375d4c,#1f4538 55%,#1a382e);color:#faf8eb;margin-top:26px;border-radius:27px;overflow:hidden;position:relative}.hero-copy{padding:44px 0 44px 48px;z-index:1}.eyebrow,.section-tag{font-size:11px;letter-spacing:.17em;font-weight:760}.eyebrow{color:#f0daa5;display:flex;align-items:center;gap:9px}.eyebrow span{width:17px;height:1px;background:#f0daa5}.hero h1{font-family:Georgia,serif;font-weight:500;font-size:clamp(43px,6vw,72px);letter-spacing:-.055em;line-height:.99;margin:15px 0 19px}.hero p:not(.eyebrow){max-width:340px;color:#e2ebdc;font-size:16px}.hero-link{display:inline-flex;align-items:center;gap:12px;margin-top:20px;color:#f0daa5;font-size:13px;font-weight:730;text-underline-offset:4px}.hero-art{position:relative;align-self:stretch;display:grid;place-items:center}.hero-art svg{width:100%;height:auto}.hero-art span{position:absolute;bottom:16px;right:22px;font:10px ui-monospace,monospace;letter-spacing:.14em;color:#dbe2bc}.hero-art i{display:inline-block;width:15px;height:1px;vertical-align:middle;background:#adbf9a}
.workbench,.results,.guide{scroll-margin-top:14px;margin-top:20px;border-radius:var(--radius);border:1px solid var(--line);background:var(--paper);padding:24px 27px;box-shadow:0 8px 28px #243f2c08}.section-heading,.run-bar,.file-tools{display:flex;justify-content:space-between;align-items:center;gap:12px}.section-tag{color:#526f5d;margin-bottom:4px}.section-heading h2,.guide h2{font-size:27px;line-height:1.2;letter-spacing:-.04em}.section-heading p:not(.section-tag),.guide-intro>p:last-child{color:var(--muted);font-size:14px;margin-top:5px}.input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:17px}.input-card{border:1px solid var(--line);border-radius:16px;padding:14px;min-width:0}.card-heading{display:flex;align-items:center;gap:10px;margin-bottom:11px}.card-heading h3{font-size:15px}.card-heading p{font-size:12px;color:var(--muted)}.step{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#e9f0e2;color:#345c44;font-weight:750;flex:none}
.drop{min-height:108px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-align:center;border:1px dashed #a7baa8;border-radius:12px;background:#f2f6ee;cursor:pointer;padding:7px}.drop:hover{background:#eaf2e8}.drop strong{font-size:14px}.drop span{font-size:11px;color:var(--muted)}.file-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.upload-icon{width:20px;height:20px;margin-bottom:3px;color:var(--green)}.input-card.has-file .drop{min-height:42px;flex-direction:row}.input-card.has-file .drop strong{margin:0 4px}.input-card.has-file .drop span{display:none}.input-card.has-file .upload-icon{width:16px;height:16px;margin:0}
.file-tools{margin-top:8px;font-size:12px}.file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-button{border:0;background:transparent;color:var(--green);text-decoration:underline;text-underline-offset:3px;font-size:12px;padding:6px}.page-picker{display:flex;align-items:center;gap:8px;margin:6px 0 0;font-size:13px}.page-picker select{min-height:34px;border:1px solid #bac8b9;border-radius:6px;background:#fff;padding:2px 8px;color:var(--ink)}.preview{position:relative;margin-top:7px;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:white}.preview canvas{display:block;width:100%;height:auto}.overlays{position:absolute;inset:0;pointer-events:none}.ring-box{position:absolute;border:2px solid #8b5b16;background:#e9c96e45;border-radius:4px}.ring-box.active{border-color:#19573c;background:#79b27e66}.file-error{margin-top:7px;color:#943e27;font-size:13px}.run-bar{margin-top:14px}.run-bar p{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted)}.run-bar p svg{width:15px;height:15px;flex:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:9px;min-height:42px;padding:8px 14px;font-size:13px;font-weight:750}.outline{background:var(--paper);color:var(--green);border:1px solid #b4c6b6}.outline:not(:disabled):hover{background:#edf4ea}.primary{border:1px solid var(--green);background:var(--green);color:white}.primary:not(:disabled):hover{background:#174d37}.status{border-radius:9px;background:#edf4e8;padding:10px 12px;font-size:13px;margin-top:12px}.status.error{color:#863821;background:#faeee6}
.manual{border-top:1px solid var(--line);margin-top:15px;padding-top:10px;font-size:13px}.manual summary{cursor:pointer;color:#315d47;font-weight:680}.manual p{margin-top:8px;color:var(--muted)}.manual label{display:grid;gap:6px;font-weight:650}.manual textarea{width:100%;min-height:80px;border:1px solid #b9c8b8;border-radius:8px;padding:7px 9px;resize:vertical;font:13px/1.5 ui-monospace,monospace}.manual button{margin-top:10px}
.match-list{display:grid;gap:7px;margin-top:13px}.match{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#f3f6ee;border:1px solid var(--line);border-radius:9px;padding:8px 10px;flex-wrap:wrap}.match strong{font:700 14px ui-monospace,monospace;overflow-wrap:anywhere}.match .text-button{min-height:35px}.result-note{font-size:12px;color:var(--muted);margin-top:12px}.guide{display:grid;grid-template-columns:.9fr 1.1fr;gap:14px 26px}.guide ol{margin:0;padding-left:20px;font-size:14px;color:var(--muted)}.guide li{padding-left:4px;margin-bottom:8px}.guide li strong,.supported strong{color:var(--ink)}.supported{font-size:12px;color:var(--muted);grid-column:1/-1;border-top:1px solid var(--line);padding-top:10px}.supported strong{margin-right:6px}
footer{margin-top:21px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.footer-inner .brand{font-size:17px;color:var(--ink)}
@media(max-width:700px){.shell{width:calc(100% - 28px)}.header-inner,.footer-inner{min-height:55px}.hero{margin-top:14px;display:block;border-radius:19px}.hero-copy{position:relative;padding:23px 17px}.hero h1{font-size:43px}.hero p:not(.eyebrow){max-width:226px;font-size:13px}.hero-art{position:absolute;right:-77px;bottom:3px;width:245px;opacity:.38}.hero-art span{display:none}.workbench,.results,.guide{padding:15px;margin-top:13px;border-radius:16px}.section-heading{align-items:flex-start;flex-wrap:wrap}.section-heading h2,.guide h2{font-size:23px}.input-grid{gap:8px;margin-top:12px}.input-card{padding:8px}.card-heading{gap:6px}.card-heading p{display:none}.card-heading h3{font-size:12px}.step{height:23px;width:23px;font-size:12px}.drop strong{font-size:12px}.drop span{font-size:10px}.run-bar{align-items:stretch;flex-direction:column-reverse;gap:7px}.run-bar p{justify-content:center}.guide{display:block}.guide ol,.supported{margin-top:12px}.match strong{font-size:12px}}@media(max-width:340px){.input-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

