:root{color-scheme:light;--ink:#242622;--paper:#f6f3e9;--white:#fffef9;--muted:#575d55;--line:#d0d2c6;--accent:#bd3d28;--green:#245c4b;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.7}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0}
button,select,textarea{font:inherit}
button,select{min-height:46px}
button{border:1.5px solid var(--ink);border-radius:7px;background:var(--white);color:var(--ink);padding:10px 17px;font-weight:700;cursor:pointer;transition:background .15s,transform .15s}
button:hover:not(:disabled){background:#eaece2;transform:translateY(-1px)}
button:disabled{cursor:not-allowed;color:#686d65;background:#e8e9e1;border-color:#b6bbae}
:focus-visible{outline:3px solid var(--green);outline-offset:4px}
textarea:focus-visible,select:focus-visible{outline-offset:2px}
.hero,main,footer{width:min(1120px,calc(100% - 48px));margin-inline:auto}
.hero{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:54px 0 42px}
.eyebrow{font-size:.83rem;font-weight:750;letter-spacing:.13em;color:var(--green);margin:0 0 16px}
h1{font-size:clamp(2.4rem,5.3vw,4.1rem);line-height:1.18;letter-spacing:.02em;margin:0;font-weight:900}
.title-dot{color:var(--accent)}
.lead{color:var(--muted);font-size:1rem;margin:22px 0 0}
.paper-preview{width:250px;flex-shrink:0;display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:17px;background:var(--white);border:2px solid var(--ink);box-shadow:7px 7px 0 #d8ddcd;transform:rotate(4deg)}
.preview-cell{height:110px;border:2px solid var(--ink);padding:6px;font-size:.72rem;font-weight:900;position:relative;overflow:hidden}
.shot{position:absolute;border:2px solid var(--green);bottom:17px;left:20%;width:60%;height:35px;background:#d8e6cc}
.shot-wide:after{content:"";position:absolute;left:-40px;right:-40px;bottom:-10px;border-top:2px solid var(--ink);transform:rotate(-12deg)}
.shot-close{border-radius:50%;width:65px;height:65px;left:22px;bottom:-12px;background:#ebba81;border-color:var(--ink)}
.preview-caption{grid-column:1/-1;text-align:center;font-size:.8rem;font-weight:700}
main{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:30px;align-items:start}
.sheet{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:25px}
.section-heading{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.step{font-size:.77rem;font-weight:900;background:var(--ink);color:var(--white);padding:3px 9px;border-radius:4px;letter-spacing:.08em}
h2{font-size:1.17rem;margin:0;line-height:1.5}
h3{font-size:1rem;margin:0}
h4{font-size:.78rem;margin:0}
p{margin:0 0 12px}
.input-label{display:block;font-size:.88rem;font-weight:750;margin-bottom:7px}
.hint{font-size:.8rem;color:var(--muted);line-height:1.8}
textarea{display:block;resize:vertical;min-height:175px;width:100%;padding:13px;border:1px solid #868e7d;border-radius:6px;background:#fff;color:var(--ink);line-height:1.85}
textarea::placeholder{color:#70766d}
textarea[aria-invalid="true"]{border:2px solid var(--accent)}
.input-meta{display:flex;align-items:start;gap:14px;justify-content:space-between;margin-top:8px;font-size:.69rem;color:var(--muted)}
#character-count{flex-shrink:0;font-size:.8rem;font-variant-numeric:tabular-nums;font-weight:750}
.error{color:#a32419;font-size:.85rem;margin:8px 0}
.error:empty{display:none}
.form-bottom{display:flex;justify-content:space-between;align-items:end;flex-wrap:wrap;gap:14px;margin-top:22px}
select{padding:8px 31px 8px 12px;border:1px solid #868e7d;border-radius:6px;color:var(--ink);background:#fff}
.primary{background:var(--accent);border-color:var(--accent);color:white}
.primary:hover:not(:disabled){background:#9e2f1d}
.primary span{margin-left:10px}
.method{margin-top:24px;padding-top:18px;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}
summary{cursor:pointer;color:var(--ink);font-weight:700;padding:5px 0}
.method p{margin-top:12px}
.workspace{min-width:0;padding-top:10px}
.empty-state{min-height:310px;border:2px dashed #bbc4b0;border-radius:12px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:28px;color:var(--green)}
.empty-state>p:not(.hint){font-weight:750}
.empty-mark{font-size:3.8rem;line-height:1.3;margin-bottom:17px}
.result-summary{font-size:.85rem;font-weight:700}
.template-note{padding:11px 13px;background:#e4eada;border-left:3px solid var(--green);font-size:.78rem;margin-bottom:20px}
.panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.panel{min-width:0;background:var(--white);border:2px solid var(--ink);box-shadow:3px 3px 0 #d7dbc9;padding:15px}
.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:14px}
.panel-heading h3{font-size:.92rem}
.panel-tag{font-size:.67rem;color:var(--muted)}
.source-label{color:var(--green)}
.source-text{white-space:pre-wrap;white-space:break-spaces;overflow-wrap:anywhere;font:inherit;font-size:.94rem;line-height:1.9;min-height:84px;margin:7px 0 17px}
.unassigned{font-size:.82rem;color:var(--muted)}
.template{background:#f0f1e8;padding:10px;font-size:.75rem;overflow-wrap:anywhere}
.template p:last-child{margin:0}
.template-label{font-weight:750;color:var(--green);margin-bottom:4px}
.detail-list{display:grid;grid-template-columns:4em minmax(0,1fr);gap:7px;font-size:.77rem;margin:14px 0 0}
dt{font-weight:750}
dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted)}
.export-actions{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 12px}
.export-actions button{font-size:.81rem}
.status{min-height:1.7em;color:var(--green);font-size:.86rem;font-weight:700;overflow-wrap:anywhere;margin-top:16px}
.manual-copy{margin-top:18px}
.manual-copy h3{margin-bottom:10px}
.manual-copy label{display:block;font-size:.8rem;font-weight:700;margin-bottom:8px}
footer{border-top:1px solid var(--line);margin-top:52px;padding:23px 0 30px;color:var(--muted);font-size:.76rem}
.brand{font-size:.78rem;font-weight:750;color:var(--ink);margin:15px 0 0;overflow-wrap:anywhere}
.noscript{margin:24px;padding:16px;border:2px solid var(--accent);background:var(--white)}
@media(max-width:900px){main{grid-template-columns:1fr}.editor{max-width:none}.paper-preview{width:210px}.preview-cell{height:95px}.workspace{padding-top:6px}}
@media(max-width:520px){.hero,main,footer{width:calc(100% - 30px)}.hero{padding:32px 0 28px}.paper-preview{display:none}.lead{font-size:.9rem}.sheet{padding:19px}.panels{grid-template-columns:1fr}.export-actions{flex-direction:column}.export-actions button{width:100%}.form-bottom{align-items:end}.primary{padding-inline:12px}.input-meta{gap:10px}.source-text{min-height:60px}}
@media(prefers-reduced-motion:reduce){button{transition:none}button:hover:not(:disabled){transform:none}}
@media print{body{background:white}.hero{padding:0 0 20px}.paper-preview,.editor,.export-actions,.manual-copy,footer,.status,.workspace>.hint{display:none!important}main{display:block;width:100%}.hero{width:100%}h1{font-size:25pt}.lead{font-size:10pt}.panels{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{break-inside:avoid;box-shadow:none}.workspace{padding:0}}
