.sw-wedding-place-cards{box-sizing:border-box;max-width:100%;margin:1.25rem 0;padding:1rem;border:1px solid var(--oat-deep);border-radius:12px;background:var(--paper);overflow-wrap:anywhere}
.sw-wedding-place-cards__fields{min-width:0;margin:0;padding:0;border:0}
.sw-wedding-place-cards__fields legend{margin-bottom:.65rem;font-weight:700}
.sw-wedding-place-cards__field{display:grid;gap:.35rem;margin:.85rem 0;font-weight:650}
.sw-wedding-place-cards__field input,.sw-wedding-place-cards__field textarea,.sw-wedding-place-cards__field select{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:.65rem;border:1px solid var(--moss);border-radius:6px;background:var(--linen);color:var(--ink);font:inherit}
.sw-wedding-place-cards__field input,.sw-wedding-place-cards__field select{min-height:44px}
.sw-wedding-place-cards__field textarea{min-height:8rem;resize:vertical}
.sw-wedding-place-cards__field [aria-invalid="true"]{border:2px solid var(--cranberry);outline:2px solid color-mix(in srgb,var(--cranberry) 25%,transparent)}
.sw-wedding-place-cards__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0}
.sw-wedding-place-cards button{box-sizing:border-box;min-height:44px;max-width:100%;padding:.6rem .85rem;border:0;border-radius:6px;background:var(--pine);color:var(--paper);font:inherit;font-weight:700;cursor:pointer}
.sw-wedding-place-cards button:disabled{opacity:.55;cursor:not-allowed}
.sw-wedding-place-cards button:focus-visible,.sw-wedding-place-cards input:focus-visible,.sw-wedding-place-cards textarea:focus-visible,.sw-wedding-place-cards select:focus-visible{outline:3px solid var(--cranberry);outline-offset:2px}
.sw-wedding-place-cards__count,.sw-wedding-place-cards__status{min-height:1.4em;overflow-wrap:anywhere}
.sw-wedding-place-cards__status{color:var(--cranberry)}
.sw-wedding-place-cards__hint,.sw-wedding-place-cards__privacy{font-size:.95rem;color:var(--moss)}
.sw-wedding-place-cards__print-sheet{display:none}
@page wedding-place-cards-a4{size:A4 portrait;margin:10mm}
@page wedding-place-cards-letter{size:letter portrait;margin:10mm}
@media print{
  body.sw-wedding-place-cards-printing{box-sizing:border-box!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important}
  body.sw-wedding-place-cards-printing>*:not(.sw-wedding-place-cards__print-sheet){display:none!important}
  body.sw-wedding-place-cards-printing>.sw-wedding-place-cards__print-sheet{display:block!important;position:static!important;width:auto!important;margin:0!important;padding:0!important;background:#fff!important;color:#111!important}
  body.sw-wedding-place-cards-printing .sw-wedding-place-cards__page[data-paper="a4"]{page:wedding-place-cards-a4}
  body.sw-wedding-place-cards-printing .sw-wedding-place-cards__page[data-paper="letter"]{page:wedding-place-cards-letter}
  body.sw-wedding-place-cards-printing .sw-wedding-place-cards__page{display:grid!important;box-sizing:border-box!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,101.6mm)!important;gap:6mm!important;width:100%!important;height:276mm!important;margin:0!important;padding:0!important;break-after:page!important;page-break-after:always!important;background:#fff!important;color:#111!important}
  body.sw-wedding-place-cards-printing .sw-wedding-place-cards__page[data-paper="letter"]{height:258.4mm!important}
  body.sw-wedding-place-cards-printing .sw-wedding-place-cards__page:last-child{break-after:auto!important;page-break-after:auto!important}
  body.sw-wedding-place-cards-printing .sw-wedding-place-cards__card{position:relative!important;display:block!important;box-sizing:border-box!important;width:88.9mm!important;height:101.6mm!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;border:.3mm solid #333!important;break-inside:avoid!important;page-break-inside:avoid!important;background:#fff!important;color:#111!important}
  body.sw-wedding-place-cards-printing .sw-wedding-place-cards__card::after{position:absolute;top:50%;right:0;left:0;border-top:.25mm dashed #666;content:""}
  body.sw-wedding-place-cards-printing .sw-wedding-place-cards__front{position:absolute!important;top:50%!important;right:0!important;bottom:0!important;left:0!important;display:flex!important;box-sizing:border-box!important;min-width:0!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2mm!important;padding:4mm!important;text-align:center!important;overflow-wrap:anywhere!important;font-family:Arial,sans-serif!important}
  body.sw-wedding-place-cards-printing .sw-wedding-place-cards__guest{display:block!important;max-width:100%!important;font-size:18pt!important;line-height:1.15!important;font-weight:700!important;overflow-wrap:anywhere!important;word-break:break-word!important}
  body.sw-wedding-place-cards-printing .sw-wedding-place-cards__guest--medium{font-size:16pt!important}
  body.sw-wedding-place-cards-printing .sw-wedding-place-cards__guest--long{font-size:14pt!important}
  body.sw-wedding-place-cards-printing .sw-wedding-place-cards__table-label{display:block!important;max-width:100%!important;font-size:9pt!important;line-height:1.2!important;overflow-wrap:anywhere!important;word-break:break-word!important}
}
