.holiday-card-editor{margin-block:2rem;padding-block:1.5rem;border-top:1px solid var(--border);color:var(--text)}
.holiday-card-editor>p{max-width:72ch;margin-block:0 1rem}.holiday-card-editor [hidden],.holiday-card-static [hidden]{display:none!important}
.holiday-card-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,420px);gap:2rem;margin-top:1.5rem;align-items:start}
.holiday-card-fields{display:grid;gap:1rem;min-width:0}.holiday-card-fields label{display:grid;gap:.4rem;font-weight:600}
.holiday-card-fields input,.holiday-card-fields textarea,.holiday-card-fields select{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);padding:.75rem;max-width:100%;width:100%;caret-color:var(--accent)}
.holiday-card-fields textarea{resize:vertical}.holiday-card-fields select option{background:var(--bg);color:var(--text)}
.holiday-card-note,.holiday-card-preview figcaption{font-size:.9rem;color:var(--text-secondary);font-weight:400;line-height:1.6}
.holiday-card-preview{margin:0;min-width:0}.holiday-card-preview canvas{display:block;width:100%;height:auto;border-radius:12px;background:#f5f5fa}.holiday-card-preview figcaption{margin-top:.6rem}
.holiday-card-actions{display:flex;gap:.6rem;flex-wrap:wrap}.holiday-card-actions button,.holiday-card-actions a,.holiday-card-editor [data-card-open]{font:inherit;font-weight:600;border:1px solid var(--input-border);background:var(--bg-alt);color:var(--text);border-radius:12px;padding:.7rem 1rem;cursor:pointer;text-align:center;min-height:44px;text-decoration:none}
.holiday-card-actions :hover,.holiday-card-editor [data-card-open]:hover{background:var(--surface-hover)}
.holiday-card-actions :disabled,.holiday-card-actions [aria-disabled=true]{opacity:.55;cursor:default}
.holiday-card-actions .card-primary{background:var(--accent);color:var(--bg);border-color:var(--accent)}
.holiday-card-actions .card-primary:hover{background:var(--accent-hover,var(--accent))}
.holiday-card-editor :focus-visible,.holiday-card-static :focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.holiday-card-output{min-width:0}.holiday-card-output>.holiday-card-actions,.holiday-card-static>.holiday-card-actions{margin-top:1rem}
.holiday-card-other{margin-top:1rem}.holiday-card-other summary{cursor:pointer;min-height:44px;padding-block:.6rem;color:var(--text);font-weight:600}.holiday-card-other textarea{width:100%;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--input-border);padding:.75rem;caret-color:var(--accent)}
.holiday-card-static{max-width:540px}.holiday-card-static [data-card-status]{margin-block:.6rem 1rem}.holiday-card-output [data-card-status]{font-size:.9rem;line-height:1.6;color:var(--text-secondary)}
.holiday-card-editor [data-card-status]{margin-top:1rem;min-height:1.6em;max-width:72ch}
@media(max-width:700px){.holiday-card-layout{grid-template-columns:minmax(0,1fr);gap:1.5rem}.holiday-card-preview{max-width:420px;margin-inline:auto;width:100%}.holiday-card-actions>*{flex:1 1 160px}.holiday-card-editor{padding-inline:0}}
@media(prefers-reduced-motion:reduce){.holiday-card-editor *{scroll-behavior:auto;transition:none!important}}
