.closing-letter-workspace { color: #253044; display: grid; gap: 18px; min-width: 0; }
.closing-letter-heading > div > span, .closing-letter-label { font-size: 11px; color: var(--heirlo-muted, #5d6b82); font-weight: 500; }
.closing-letter-heading h3 { font-size: 25px; margin: 6px 0; font-weight: 600; }
.closing-letter-heading p, .closing-letter-template p, .closing-letter-hint { font-size: 13px; color: var(--heirlo-muted, #5d6b82); line-height: 1.6; margin: 6px 0 14px; }
.closing-letter-template, .closing-letter-card { background: white; border: 1px solid var(--heirlo-border, #e2e7f0); border-radius: 10px; padding: 20px; min-width: 0; }
.closing-letter-template { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.closing-letter-template strong { display: block; font-size: 15px; margin-top: 6px; overflow-wrap: anywhere; }
.closing-letter-template p { margin-bottom: 0; }
.closing-letter-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.closing-letter-workspace button { width: auto; padding: 8px 12px; min-height: 38px; margin: 0; border: 1px solid var(--heirlo-border-strong, #cbd3e1); border-radius: 6px; background: white; color: var(--heirlo-text-secondary, #475569); font-size: 13px; box-shadow: none; }
.closing-letter-workspace button:hover:not(:disabled) { color: var(--heirlo-primary, #a41f35); border-color: var(--heirlo-primary, #a41f35); }
.closing-letter-workspace button:disabled { opacity: .5; cursor: not-allowed; }
.closing-letter-workspace button.closing-letter-primary { background: var(--heirlo-primary, #a41f35); color: white; border-color: var(--heirlo-primary, #a41f35); }
.closing-letter-workspace button:focus-visible, .closing-letter-workspace input:focus-visible { outline: 2px solid var(--heirlo-primary, #a41f35); outline-offset: 3px; }
.closing-letter-grid { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,1fr); gap: 18px; }
.closing-letter-card h4 { margin: 0 0 12px; font-size: 16px; font-weight: 600; }
.closing-letter-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin: 18px 0; }
.closing-letter-fields label { display: grid; gap: 6px; font-size: 12px; color: #526075; }
.closing-letter-fields label:last-child { grid-column: 1 / -1; }
.closing-letter-fields input { width: 100%; min-width: 0; margin: 0; min-height: 40px; padding: 9px 11px; border: 1px solid var(--heirlo-border-strong, #cbd3e1); border-radius: 6px; font-size: 13px; background: white; }
.closing-letter-card dl { margin: 18px 0; }
.closing-letter-card dl > div { padding: 10px 0; border-bottom: 1px solid #eef1f5; }
.closing-letter-card dt { font-size: 11px; color: var(--heirlo-muted, #5d6b82); }
.closing-letter-card dd { margin: 5px 0 0; font-size: 13px; overflow-wrap: anywhere; }
.closing-letter-card .closing-letter-hint { margin-top: 16px; }
.closing-letter-saved-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.closing-letter-saved-heading > span { font-size: 12px; color: var(--heirlo-muted, #5d6b82); }
.closing-letter-file { display: flex; align-items: center; justify-content: space-between; gap: 16px; border-top: 1px solid var(--heirlo-border, #e2e7f0); padding: 14px 0; }
.closing-letter-file > div:first-child { min-width: 0; }
.closing-letter-file strong { font-size: 13px; font-weight: 500; overflow-wrap: anywhere; }
.closing-letter-file small { display: block; font-size: 11px; color: var(--heirlo-muted, #5d6b82); margin-top: 5px; }
[data-closing-letter-status] { font-size: 12px; color: #526075; margin: 12px 0 0; }
[data-closing-letter-status]:empty { display: none; }
@media(max-width:1000px) { .closing-letter-grid { grid-template-columns: minmax(0,1fr); } .closing-letter-template, .closing-letter-file { flex-direction: column; align-items: stretch; } }
@media(max-width:600px) { .closing-letter-fields { grid-template-columns: minmax(0,1fr); } .closing-letter-workspace button { min-height: 44px; } .closing-letter-card, .closing-letter-template { padding: 16px; } }
