[hidden]{display:none!important}
:root{--paper:#fffdf9;--milk:#faf8f4;--wine:#660810;--green:#0a3428;--sage:#70866a;--ink:#243e34;--muted:#647268;--line:#d9ded5;--serif:'Forum',Georgia,serif;--sans:'Onest',Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--milk);color:var(--ink);font:14px/1.65 var(--sans)}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,.file-button{cursor:pointer;border:1px solid #bcc8b9;border-radius:6px;background:var(--paper);color:var(--green);padding:10px 14px;font-size:12px;font-weight:600;line-height:1.5;transition:background .15s,border-color .15s}button:hover,.file-button:hover{background:#eef1e9;border-color:var(--sage)}button:active{transform:translateY(1px)}button:disabled{cursor:default;opacity:.45;transform:none}a:focus-visible,button:focus-visible,.file-button:focus-visible{outline:2px solid var(--wine);outline-offset:4px}.primary{background:var(--wine);border-color:var(--wine);color:white}.primary:hover{background:#4e080d;border-color:#4e080d}.quiet{border-color:transparent;background:transparent;color:#65534f}.small{font-size:11px;padding:5px 8px}input,textarea,select{display:block;width:100%;min-width:0;padding:10px 12px;background:#fff;border:1px solid #bcc8b9;color:var(--green);border-radius:5px;font-size:13px;line-height:1.5}textarea{resize:vertical;min-height:86px}input:focus,textarea:focus,select:focus{outline:2px solid #70866a;outline-offset:1px}input::placeholder,textarea::placeholder{color:#737970}label{display:block;margin-bottom:6px;color:var(--green);font-size:12px;font-weight:500}.skip{position:absolute;top:-100px;left:20px;background:var(--paper);padding:10px;z-index:10}.skip:focus{top:10px}.top{max-width:1440px;margin:auto;padding:25px 40px;display:flex;gap:24px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:block;line-height:0}.brand img{max-width:155px;width:100%;height:auto}.top nav{display:flex;gap:28px;font-size:12px}.top nav a{text-decoration:none}.top nav a:hover{color:var(--wine)}main{max-width:1440px;margin:auto;padding:0 40px}.intro{max-width:940px;padding:40px 0 30px}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--sage);margin:0 0 9px}h1,h2,h3,h4,p{margin-top:0}h1{font:400 clamp(38px,4.6vw,66px)/1.05 var(--serif);letter-spacing:-.025em;color:var(--wine);margin:0 0 12px}.subtitle{font:400 clamp(23px,2vw,30px)/1.25 var(--serif);margin-bottom:12px;color:var(--green)}.description{max-width:790px;font-size:14px;color:#4e6155;margin-bottom:0}.workspace{display:grid;grid-template-columns:minmax(340px,440px) minmax(0,1fr);gap:36px;align-items:start}.workspace[hidden]{display:none}.editor{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:24px}.panel-heading,.form-section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.panel-heading{padding-bottom:18px;border-bottom:1px solid var(--line)}.panel-heading h2,.preview-toolbar h2{font:400 30px/1.1 var(--serif);margin:0;color:var(--green)}#editor-count{font-size:11px;color:var(--muted)}.template-picker{padding:22px 0}.template-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}#template-help{font-size:11px;line-height:1.6;color:var(--muted);margin:9px 0 0}.form-section{padding:24px 0 4px;border-top:1px solid var(--line)}.form-section>h3,.form-section-heading h3{font-size:15px;font-weight:600;color:var(--wine);margin:0 0 18px}.form-section-heading h3{margin:0}.form-section-heading{margin-bottom:18px}.field{margin-bottom:16px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.repeat-item{padding:16px;margin-bottom:15px;border:1px solid var(--line);border-radius:6px;background:#fafbf8}.repeat-top{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-bottom:15px;font-size:11px;color:var(--muted)}.repeat-top>div{display:flex;gap:2px}.repeat-item .field:last-child{margin-bottom:0}.check-label{display:flex;gap:9px;align-items:center;margin-bottom:15px;font-size:11px}.check-label input{width:16px;height:16px;accent-color:var(--wine)}.draft-actions{display:flex;flex-wrap:wrap;gap:9px;padding-top:24px;margin-top:18px;border-top:1px solid var(--line)}.local-note{font-size:11px;line-height:1.7;color:var(--muted);margin:18px 0 0}.preview-area{min-width:0;position:sticky;top:20px}.preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}.output-actions{display:flex;flex-wrap:wrap;gap:8px}.print-hint{color:var(--muted);font-size:11px;max-width:560px;margin-bottom:20px}.paper{--doc-accent:var(--wine);background:#fffdf9;border:1px solid #e0e0d6;box-shadow:0 12px 35px #0a34280b;min-height:700px;padding:clamp(25px,3.6vw,55px);overflow-wrap:anywhere}.paper.tone-green{--doc-accent:var(--green)}.doc-brand{padding-bottom:16px;margin-bottom:24px;border-bottom:2px solid var(--doc-accent);font-size:11px;font-weight:600;letter-spacing:.07em;color:var(--doc-accent)}.paper>h2{font:400 clamp(30px,3vw,45px)/1.08 var(--serif);letter-spacing:-.02em;color:var(--doc-accent);margin-bottom:20px}.doc-meta{font-size:12px;color:#536454;margin-bottom:30px}.doc-meta p{margin-bottom:5px}.doc-section{margin:28px 0 0}.doc-section h3,.doc-contact h3{font:400 26px/1.15 var(--serif);color:var(--doc-accent);margin-bottom:14px}.paper p{white-space:normal}.doc-section p{font-size:13px;line-height:1.8;margin-bottom:10px}.doc-task,.doc-material{padding:15px 0;border-bottom:1px solid var(--line);break-inside:avoid}.doc-task-heading{display:flex;gap:14px;align-items:baseline}.doc-task-heading>span,.doc-step{font:400 23px/1.2 var(--serif);color:var(--sage)}.doc-task h4,.doc-material h4{font-size:14px;font-weight:600;margin-bottom:8px}.paper .doc-task-meta{font-size:10px;color:var(--muted)}.doc-task p:last-child,.doc-material p:last-child{margin-bottom:0}.memo-block{display:grid;grid-template-columns:30px minmax(0,1fr);gap:16px;break-inside:avoid}.doc-contact{margin-top:30px;padding:22px;background:#eef1e9;break-inside:avoid}.doc-contact p{font-size:13px;margin:0}.doc-footnote{border-top:1px solid var(--line);padding-top:20px;margin-top:30px;font-size:11px;color:var(--muted)}.document-note{font-size:11px;color:var(--muted);margin:18px 0 0;max-width:650px}.preview-empty,.empty{font-size:13px;color:#697469;line-height:1.8;padding:20px 0}.status{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:5;width:max-content;max-width:calc(100% - 36px);border-radius:6px;background:var(--green);box-shadow:0 8px 30px #0a34282b;color:#fff;padding:12px 20px;font-size:12px}.status:empty{display:none}.below{max-width:720px;padding:60px 0 40px}.below h2{font:400 36px/1.15 var(--serif);color:var(--wine);margin-bottom:15px}.below p{font-size:14px;color:var(--muted)}.below a{color:var(--wine);font-size:13px;font-weight:600}footer{max-width:1360px;margin:0 auto 30px;padding-top:25px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;font-size:11px;color:var(--muted)}footer>a:first-child{color:var(--green);font:400 23px var(--serif);text-decoration:none}.notice{padding:20px;border:1px solid var(--wine);color:var(--wine)}
@media(min-width:1100px){.editor{max-height:calc(100dvh - 60px);overflow:auto;scrollbar-gutter:stable}}
@media(max-width:1099px){.workspace{grid-template-columns:minmax(300px,.9fr) minmax(0,1fr);gap:22px}.preview-toolbar{align-items:start;flex-direction:column;gap:15px}.editor{padding:18px}.preview-area{position:static}.top,main{padding-left:24px;padding-right:24px}footer{margin-left:24px;margin-right:24px}.paper{padding:26px}.two-fields{grid-template-columns:1fr}.repeat-top{align-items:start}}
@media(max-width:760px){.top{padding:20px 18px;align-items:start}.brand img{max-width:125px}.top nav{flex-direction:column;gap:4px;text-align:right;font-size:10px}main{padding:0 18px}.intro{padding:30px 0 24px}h1{font-size:43px}.subtitle{font-size:26px}.description{font-size:13px}.workspace{grid-template-columns:1fr;gap:30px}.preview-toolbar{flex-direction:row;align-items:center}.preview-toolbar h2{font-size:27px}.output-actions{justify-content:end;max-width:180px}.output-actions button{font-size:10px;padding:8px 10px}.paper{min-height:500px;padding:28px 23px}.paper>h2{font-size:36px}.two-fields{grid-template-columns:1fr 1fr}.below{padding:44px 0 30px}footer{flex-wrap:wrap;margin-left:18px;margin-right:18px}.status{bottom:12px;font-size:11px}.template-controls button{padding:8px 11px}}
@media print{@page{size:A4;margin:16mm}html,body{margin:0!important;background:white!important;color:#172d23}body>header,.intro,.editor,.preview-toolbar,.print-hint,.document-note,.status,.below,footer,.skip,noscript{display:none!important}main,.workspace,.preview-area{display:block!important;width:100%!important;max-width:none!important;padding:0!important;margin:0!important;position:static!important}.paper{background:white!important;box-shadow:none!important;border:0!important;padding:0!important;min-height:0!important;font-size:11pt}.paper>h2{font-size:30pt}.doc-section p,.doc-contact p{font-size:10pt}.doc-section h3{font-size:18pt;break-after:avoid}.doc-meta{font-size:10pt}.doc-brand{font-size:9pt}a{color:inherit!important;text-decoration:underline}.paper .preview-empty{display:none}.doc-contact{background:transparent;border-left:2px solid var(--doc-accent);padding:12px 16px}.doc-task,.doc-material,.memo-block{break-inside:avoid}p{orphans:3;widows:3}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.form-error { color:#660810; font-size:12px; margin:0 0 16px; } .form-error:empty { display:none; }

/* Phosphor duotone icons: shared weight, semantic use, brand colours */
.ui-icon { display:inline-block; flex:none; width:20px; height:20px; vertical-align:middle; fill:currentColor; color:inherit; }
button .ui-icon { width:18px; height:18px; margin-right:7px; }
.small .ui-icon { width:15px; height:15px; margin-right:4px; }
.intro-heading { display:flex; gap:22px; align-items:center; margin-bottom:15px; }
.intro-heading h1 { margin:0; }
.intro-symbol { display:flex; align-items:center; justify-content:center; flex:none; width:76px; height:76px; border:1px solid #d9ded5; border-radius:14px; background:#edf0e7; color:#660810; }
.intro-symbol .ui-icon { width:46px; height:46px; }
.panel-heading h2, .preview-toolbar h2, .form-section h3, .doc-section>h3, .doc-contact h3 { display:flex; gap:10px; align-items:center; }
.panel-heading h2>.ui-icon, .preview-toolbar h2>.ui-icon { width:23px; height:23px; color:#70866a; }
.form-section h3>.ui-icon { width:21px; height:21px; }
.doc-section>h3>.ui-icon, .doc-contact h3>.ui-icon { width:23px; height:23px; }
.doc-step .ui-icon { width:27px; height:27px; color:var(--doc-accent); }
@media(max-width:1099px) { .repeat-top { flex-wrap:wrap; } .repeat-top>div { flex-wrap:wrap; } }
@media(max-width:760px) { .intro-heading { gap:14px; align-items:flex-start; } .intro-symbol { width:54px; height:54px; border-radius:11px; } .intro-symbol .ui-icon { width:34px; height:34px; } .intro-heading h1 { font-size:38px; } .panel-heading h2, .preview-toolbar h2 { gap:8px; } .output-actions button .ui-icon { width:15px; height:15px; margin-right:5px; } }
@media print { .doc-step .ui-icon { width:22px; height:22px; } .doc-section>h3>.ui-icon, .doc-contact h3>.ui-icon { width:20px; height:20px; } }
