/* LETTER_TEMPLATE_V1 — a letter template on a paper sheet: highlighted [placeholders], copy and print.
   Renderer: components/content/letter-template.php; script: assets/js/letter-template.js. */
.cms-letter{box-sizing:border-box;width:min(100%,var(--ej-measure,760px));margin:clamp(24px,4vw,40px) auto}
.cms-letter__head{display:grid;gap:8px;margin-bottom:14px}
.cms-letter__variant{justify-self:start;padding:6px 11px;border-radius:999px;color:var(--color-dark-bg,#161523);background:var(--color-accent-2,#f3b44e);font:700 12px/1 var(--font-body,system-ui);letter-spacing:.02em}
.cms-letter__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin:0 0 14px}
.cms-letter__legend{margin:0;color:var(--color-text-muted,#64748b);font-size:14px}
.cms-letter__actions{display:flex;flex-wrap:wrap;gap:8px}
.cms-letter__btn{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border:1px solid color-mix(in srgb,var(--color-text,#20212a) 16%,transparent);border-radius:999px;color:var(--color-text,#20212a);background:var(--color-bg,#fff);font:600 14px/1 var(--font-body,system-ui);cursor:pointer;transition:border-color .2s ease,background-color .2s ease,color .2s ease}
.cms-letter__btn:hover{border-color:var(--color-accent,#14a3a8)}
.cms-letter__btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cms-letter__btn.is-done{border-color:var(--color-accent,#14a3a8);color:var(--color-accent,#14a3a8)}
.cms-letter__btn .cms-letter__icon-done{display:none}
.cms-letter__btn.is-done .cms-letter__icon-copy{display:none}
.cms-letter__btn.is-done .cms-letter__icon-done{display:block}
.cms-letter__actions{position:relative}
.cms-letter__status{position:absolute;right:0;bottom:calc(100% + 6px);padding:5px 10px;border-radius:8px;color:#fff;background:var(--color-dark-bg,#161523);font:600 13px/1.2 var(--font-body,system-ui);white-space:nowrap;opacity:0;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}
.cms-letter__status.is-visible{opacity:1;transform:none}
.cms-letter__sheet{position:relative;box-sizing:border-box;padding:clamp(26px,5vw,56px) clamp(22px,5vw,60px);border:1px solid color-mix(in srgb,var(--color-text,#20212a) 10%,transparent);border-radius:6px;color:#22252b;background:#fffdf8;box-shadow:0 1px 2px rgba(0,0,0,.05),0 12px 30px rgba(22,21,35,.08);font-family:Georgia,"Times New Roman",serif;font-size:16px;line-height:1.65;overflow-wrap:anywhere}
.cms-letter__sheet p{margin:0 0 1em}
.cms-letter__sender{margin-bottom:1.6em}
.cms-letter__recipient{width:fit-content;max-width:100%;margin:0 0 1.6em auto}
.cms-letter__place{text-align:right}
.cms-letter__subject{margin:1.4em 0!important}
.cms-letter__closing{margin-top:1.4em!important}
.cms-letter__signature{margin-top:1.8em!important;text-align:right}
.cms-letter__attachments{margin-top:1.8em;padding-top:1em;border-top:1px solid rgba(0,0,0,.1);font-size:15px}
.cms-letter__attachments p{margin:0 0 .4em!important;font-weight:700}
.cms-letter__attachments ul{margin:0;padding-left:1.2em}
.cms-letter__ph{padding:0 .2em;border-radius:3px;color:inherit;background:color-mix(in srgb,var(--color-accent-2,#f3b44e) 38%,transparent);font-style:normal;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.cms-letter__plain{display:none}
@media (max-width:600px){.cms-letter__recipient{margin-left:0}.cms-letter__place,.cms-letter__signature{text-align:left}.cms-letter__sheet{font-size:15px}}
/* Print: the letter alone, on A4. */
@media print{
  html.letter-printing body > *:not(#letter-print){display:none!important}
  @page{size:A4;margin:22mm 20mm}
  #letter-print .cms-letter__sheet{padding:0;border:0;box-shadow:none;background:none;color:#000;font-size:11.5pt}
  #letter-print .cms-letter__ph{background:none;padding:0}
}
@media screen{#letter-print{display:none}}
