:root{--ink: #1d5267;--accent: #5f8a3a;--text: #222;--paper: #fffefa;--ui-bg: #f3f1ec;--ui-card: #fff;--ui-text: #1f2328;--ui-muted: #6b6f76;--ui-line: #dcd8cf;--ui-brand: #1d5267}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--ui-bg: #17191c;--ui-card: #212429;--ui-text: #e8e6e1;--ui-muted: #9aa0a6;--ui-line: #3a3e44;--ui-brand: #7fb6c9}}:root[data-theme=dark]{--ui-bg: #17191c;--ui-card: #212429;--ui-text: #e8e6e1;--ui-muted: #9aa0a6;--ui-line: #3a3e44;--ui-brand: #7fb6c9}*{box-sizing:border-box}html,body{margin:0}body{background:var(--ui-bg);color:var(--ui-text);font:15px/1.45 "Source Sans 3",system-ui,sans-serif}.app{display:grid;grid-template-columns:360px 1fr;min-height:100vh}.ui{background:var(--ui-card);border-right:1px solid var(--ui-line);padding:20px;overflow-y:auto;max-height:100vh;position:sticky;top:0}.ui h1{font-size:22px;margin:8px 0 6px}.back{color:var(--ui-muted);text-decoration:none;font-size:13px}.hint,.sub{color:var(--ui-muted);font-size:13px}.sub{display:block;font-weight:400}.ui label{display:block;font-weight:600;font-size:14px;margin:12px 0 0}.ui input:not([type=checkbox]):not([type=file]),.ui select,.ui textarea{display:block;width:100%;margin-top:4px;padding:8px 10px;font:inherit;font-weight:400;color:var(--ui-text);background:var(--ui-bg);border:1px solid var(--ui-line);border-radius:8px}.ui input[type=file]{margin-top:6px;font-size:13px;font-weight:400;max-width:100%}.ui textarea{resize:vertical}.ui details{border-top:1px solid var(--ui-line);margin-top:18px;padding-top:10px}.ui summary{cursor:pointer;font-weight:600}.actions,.row{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap;align-items:center}.ui .check{display:flex;gap:6px;align-items:center;margin:0;font-weight:400}button{font:inherit;padding:9px 14px;border-radius:8px;border:1px solid var(--ui-line);background:var(--ui-bg);color:var(--ui-text);cursor:pointer}button.primary{background:var(--ui-brand);border-color:var(--ui-brand);color:#fff;font-weight:600;padding:10px 22px}:root:not([data-theme=light]) button.primary{color:#fff}.names-nav{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.names-nav button{padding:3px 9px;font-size:13px;border-radius:999px}.names-nav button[aria-pressed=true]{border-color:var(--ui-brand);color:var(--ui-brand);font-weight:600}.stage{padding:24px;display:flex;justify-content:center;align-items:flex-start;overflow:hidden}.scaler .sheet{box-shadow:0 6px 30px #0000002e}.sheet{position:relative;width:210mm;height:297mm;overflow:hidden;background:var(--paper);color:var(--text);-webkit-print-color-adjust:exact;print-color-adjust:exact}.sheet .frame{position:absolute;inset:0;width:100%;height:100%}.sheet .watermark{position:absolute;left:50%;top:100mm;width:112mm;transform:translate(-50%);opacity:.05}.sheet.no-watermark .watermark{display:none}.sheet .content{position:absolute;inset:20mm 22mm;display:flex;flex-direction:column;align-items:center;text-align:center}.sheet .emblem{width:66mm;height:66mm;flex:none;margin-top:1mm}.sheet .emblem .logo{mix-blend-mode:multiply}.sheet .ring{font-family:var(--f-title);font-weight:600}.sheet.no-ring .scallop,.sheet.no-ring .ring,.sheet.no-logo .emblem{display:none}.sheet.no-logo .title{margin-top:45mm;font-size:48pt}.sheet.no-logo .body{font-size:17pt;margin-top:10mm}.sheet .title{font-family:var(--f-title);font-weight:600;color:var(--ink);font-size:34pt;line-height:1.1;margin:4mm 0 0;white-space:nowrap;letter-spacing:.01em}.sheet .salutation{font-family:var(--f-body);font-style:italic;font-size:15pt;color:var(--accent);margin:7mm 0 0}.sheet .salutation:empty{display:none}.sheet .name{font-family:var(--f-name);color:var(--ink);font-size:36pt;line-height:1.25;margin:1mm 0 0;min-height:17mm;width:130mm;border-bottom:.3mm solid color-mix(in srgb,var(--accent) 55%,transparent);white-space:nowrap}.sheet .divider{width:110mm;flex:none;margin-top:7mm}.sheet .body{font-family:var(--f-body);font-weight:500;font-size:14.5pt;line-height:1.42;margin:6mm 0 0;max-width:148mm;hyphens:auto;text-wrap:pretty}.sheet .spacer{flex:1}.sheet .signers{display:flex;justify-content:space-evenly;width:100%;gap:4mm}.sheet .signer{flex:1 1 0;min-width:0}.sheet .signer b{display:block;font-family:var(--f-body);font-style:italic;font-weight:600;font-size:14pt;color:var(--ink)}.sheet .signer span{display:block;font-family:var(--f-body);font-size:11pt;color:var(--accent)}.sheet .date{font-family:var(--f-body);font-weight:500;font-size:14pt;margin:11mm 0 2mm}#print{display:none}@media (max-width: 860px){.app{grid-template-columns:1fr}.ui{position:static;max-height:none;border-right:0;border-bottom:1px solid var(--ui-line);padding:16px}.stage{padding:16px}}@page{size:A4 portrait;margin:0}@media print{body{background:#fff}.app{display:none}#print{display:block}#print .sheet{break-inside:avoid;break-after:page;page-break-after:always}#print.shrink .sheet{zoom:.9;margin:0 auto}#print .sheet:last-child{break-after:auto;page-break-after:auto}}
