.print-spacing-controls { display:flex; gap:8px; align-items:center; }
.print-newspaper-border { display:grid; gap:8px; margin-top:12px; }
.print-newspaper-border[hidden] { display:none; }
.mourning-print-sheet.print-newspaper-sheet { border:1px solid #d8dcdd; }
.print-newspaper-sheet::after { content:""; position:absolute; inset:3.5mm; background:none; border:var(--newspaper-border-width,.6pt) var(--newspaper-border-style,solid) var(--newspaper-border-color,#252d30); pointer-events:none; z-index:1001; }
.print-spacing-controls label { display:grid; gap:2px; font-size:11px; }
.print-spacing-controls input { width:78px; min-width:0; }
.mourning-layout-element, .family-layout-element { align-items:flex-start; }
.mourning-layout-element [data-layout-content], .family-layout-element [data-family-layout-content] { padding:0; min-height:0; }
.mourning-layout-element [data-layout-content][contenteditable="true"], .family-layout-element [data-family-layout-content][contenteditable="true"] { padding:0; min-height:100%; }
.mourning-layout-content[contenteditable="true"]:empty::before, .family-layout-content[contenteditable="true"]:empty::before { content:none; }
.mourning-layout-element .mourning-layout-drag, .family-layout-element .family-layout-drag { left:-27px; }
.mourning-layout-element .mourning-layout-remove, .family-layout-element .family-layout-remove { right:-27px; }
@font-face { font-family:Allura; src:url('/assets/print-fonts/Allura-Regular.ttf') format('truetype'); font-display:swap; }
@font-face { font-family:'Great Vibes'; src:url('/assets/print-fonts/GreatVibes-Regular.ttf') format('truetype'); font-display:swap; }
@font-face { font-family:Sacramento; src:url('/assets/print-fonts/Sacramento-Regular.ttf') format('truetype'); font-display:swap; }
@font-face { font-family:Parisienne; src:url('/assets/print-fonts/Parisienne-Regular.ttf') format('truetype'); font-display:swap; }
@font-face { font-family:Marcellus; src:url('/assets/print-fonts/Marcellus-Regular.ttf') format('truetype'); font-display:swap; }
@font-face { font-family:Prata; src:url('/assets/print-fonts/Prata-Regular.ttf') format('truetype'); font-display:swap; }
@font-face { font-family:Questrial; src:url('/assets/print-fonts/Questrial-Regular.ttf') format('truetype'); font-display:swap; }
@font-face { font-family:Abel; src:url('/assets/print-fonts/Abel-Regular.ttf') format('truetype'); font-display:swap; }
@font-face { font-family:'Cinzel Decorative'; src:url('/assets/print-fonts/CinzelDecorative-Regular.ttf') format('truetype'); font-display:swap; }
@font-face { font-family:'Cinzel Decorative'; src:url('/assets/print-fonts/CinzelDecorative-Bold.ttf') format('truetype'); font-weight:700; font-display:swap; }
@font-face { font-family:Lato; src:url('/assets/print-fonts/Lato-Regular.ttf') format('truetype'); font-display:swap; }
@font-face { font-family:Lato; src:url('/assets/print-fonts/Lato-Bold.ttf') format('truetype'); font-weight:700; font-display:swap; }
@font-face { font-family:Lato; src:url('/assets/print-fonts/Lato-Italic.ttf') format('truetype'); font-style:italic; font-display:swap; }
@font-face { font-family:Lato; src:url('/assets/print-fonts/Lato-BoldItalic.ttf') format('truetype'); font-style:italic; font-weight:700; font-display:swap; }
@font-face { font-family:'Crimson Text'; src:url('/assets/print-fonts/CrimsonText-Regular.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Crimson Text'; src:url('/assets/print-fonts/CrimsonText-Bold.ttf') format('truetype'); font-weight:700; font-style:normal; font-display:swap; }
@font-face { font-family:'Crimson Text'; src:url('/assets/print-fonts/CrimsonText-Italic.ttf') format('truetype'); font-weight:400; font-style:italic; font-display:swap; }
@font-face { font-family:'Crimson Text'; src:url('/assets/print-fonts/CrimsonText-BoldItalic.ttf') format('truetype'); font-weight:700; font-style:italic; font-display:swap; }
@font-face { font-family:'Cardo'; src:url('/assets/print-fonts/Cardo-Regular.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Cardo'; src:url('/assets/print-fonts/Cardo-Bold.ttf') format('truetype'); font-weight:700; font-style:normal; font-display:swap; }
@font-face { font-family:'Cardo'; src:url('/assets/print-fonts/Cardo-Italic.ttf') format('truetype'); font-weight:400; font-style:italic; font-display:swap; }
@font-face { font-family:'Lusitana'; src:url('/assets/print-fonts/Lusitana-Regular.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Lusitana'; src:url('/assets/print-fonts/Lusitana-Bold.ttf') format('truetype'); font-weight:700; font-style:normal; font-display:swap; }
@font-face { font-family:'Goudy Bookletter 1911'; src:url('/assets/print-fonts/GoudyBookletter1911-Regular.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Pinyon Script'; src:url('/assets/print-fonts/PinyonScript-Regular.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Alex Brush'; src:url('/assets/print-fonts/AlexBrush-Regular.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Italianno'; src:url('/assets/print-fonts/Italianno-Regular.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Tangerine'; src:url('/assets/print-fonts/Tangerine-Regular.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Tangerine'; src:url('/assets/print-fonts/Tangerine-Bold.ttf') format('truetype'); font-weight:700; font-style:normal; font-display:swap; }
@font-face { font-family:'Courgette'; src:url('/assets/print-fonts/Courgette-Regular.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Barlow'; src:url('/assets/print-fonts/Barlow-Regular.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Barlow'; src:url('/assets/print-fonts/Barlow-Bold.ttf') format('truetype'); font-weight:700; font-style:normal; font-display:swap; }
@font-face { font-family:'Barlow'; src:url('/assets/print-fonts/Barlow-Italic.ttf') format('truetype'); font-weight:400; font-style:italic; font-display:swap; }
@font-face { font-family:'Barlow'; src:url('/assets/print-fonts/Barlow-BoldItalic.ttf') format('truetype'); font-weight:700; font-style:italic; font-display:swap; }
@font-face { font-family:'Overlock'; src:url('/assets/print-fonts/Overlock-Regular.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Overlock'; src:url('/assets/print-fonts/Overlock-Bold.ttf') format('truetype'); font-weight:700; font-style:normal; font-display:swap; }
@font-face { font-family:'Overlock'; src:url('/assets/print-fonts/Overlock-Italic.ttf') format('truetype'); font-weight:400; font-style:italic; font-display:swap; }
@font-face { font-family:'Overlock'; src:url('/assets/print-fonts/Overlock-BoldItalic.ttf') format('truetype'); font-weight:700; font-style:italic; font-display:swap; }
@font-face { font-family:'Berkshire Swash'; src:url('/assets/print-fonts/BerkshireSwash-Regular.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
.print-font-control { display:flex; align-items:center; gap:8px; }
.print-font-control select { width:165px; min-height:34px; font-size:14px; }
.print-font-control span { font-size:12px; }
.print-font-upload { margin-top:16px; padding-top:12px; border-top:1px solid #dedee4; }
.print-font-upload summary { cursor:pointer; font-weight:600; margin-bottom:12px; }
.print-font-upload > label { display:grid; gap:6px; margin:12px 0; }
.print-font-upload input:not([type="checkbox"]) { width:100%; min-width:0; box-sizing:border-box; }
.print-font-upload [data-font-name] { min-height:40px; padding:8px 10px; border:1px solid #bbc9c9; border-radius:4px; background:#fff; color:#303139; font:inherit; }
.print-font-upload input[type="file"] { font:inherit; font-size:12px; }
.print-font-upload input[type="file"]::file-selector-button { padding:8px; margin-right:6px; border:1px solid #bbc9c9; border-radius:4px; color:#303139; background:#fff; cursor:pointer; }
.print-font-upload button[data-font-upload] { display:inline-flex; gap:6px; align-items:center; }
.print-font-upload .print-font-rights { display:flex; align-items:flex-start; gap:8px; font-size:13px; line-height:1.5; }
.print-font-rights input { flex:none; margin-top:3px; }
.print-font-upload [role="status"] { font-size:13px; overflow-wrap:anywhere; }
