.panel.rsvp-summary-panel{padding:15px 17px 12px}
.registration-toggle{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 0;padding-top:12px;border-top:1px solid var(--line);font-size:14px}
.registration-toggle[hidden]{display:none}
.rsvp-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.rsvp-stat{min-height:82px;display:flex;flex-direction:column;justify-content:center;padding:4px 18px;border-right:1px solid var(--line)}
.rsvp-stat:first-child{padding-left:2px}
.rsvp-stat:last-child{border-right:0}
.rsvp-stat strong{font:600 27px 'DM Sans',sans-serif;letter-spacing:-1.3px;color:var(--ink)}
.rsvp-stat span{margin-top:3px;color:var(--muted);font-size:12px;font-weight:600}
.rsvp-stat.attending strong{color:#3d7659}.rsvp-stat.declined strong{color:#a76559}.rsvp-stat.pending strong{color:#a77b3f}
.rsvp-group-total{grid-column:1/-1;padding:8px 2px 0;border-top:1px solid var(--line);color:var(--muted);font-size:10px}
.rsvp-group-total strong{color:var(--green);font-size:12px}
.breakdown-details{border-top:1px solid var(--line);padding-top:9px;margin-top:10px}
.breakdown-details>summary{cursor:pointer;color:var(--muted);font-size:11px;font-weight:600;list-style:none}
.breakdown-details>summary::-webkit-details-marker{display:none}
.breakdown-details>summary::before{content:'＋';display:inline-block;width:18px;color:var(--green)}
.breakdown-details[open]>summary::before{content:'−'}
.breakdown-details .controls{margin-top:10px}
.guest-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.guest-list-toolbar>div:first-child{display:flex;align-items:center;gap:12px;flex-wrap:wrap;flex:1}
.guest-list-toolbar .csv-actions{margin:0}
.guest-group-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:13px 0 4px;padding:9px 10px;background:#f8f8f5;border:1px solid #f0efeb;border-radius:10px}
.guest-group-tools>span{margin-right:auto}
.guest-group-tools .btn{padding:7px 10px}
.guest-group-tools .btn:disabled{opacity:.48;cursor:not-allowed}
#boardScreen #guestGroupTools .btn:disabled{background:var(--paper);color:var(--muted);border-color:var(--line);opacity:.55;cursor:not-allowed;box-shadow:none;transform:none;filter:none}
.guest-group-tools .guest-side-bulk{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-left:auto}
.guest-side-bulk label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px}
.guest-side-bulk select{padding:7px 8px}
.guest-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:13px 0 4px;padding:9px 10px;background:#f8f8f5;border:1px solid #f0efeb;border-radius:10px}
.guest-toolbar .guest-edit-label{margin-right:4px;color:var(--muted);font-size:10px}
.guest-toolbar .spacer{flex:1}
.guest-toolbar .guest-side-bulk{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.guest-toolbar .guest-side-bulk label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px}
.guest-toolbar .guest-side-bulk select{padding:7px 8px}
.guest-toolbar #groupNameInput{max-width:min(190px,40vw)}
.guest-toolbar button,.guest-toolbar input,.guest-toolbar select{font-size:10px}
#guestActions #addGuest{display:inline-flex!important}
#tbody tr.connected-guest td:nth-child(2){border-left:3px solid #d4b69a}
#tbody tr.connected-guest.group-start td:nth-child(2){border-left-color:#a77b3f;border-top-color:#ded2c3}
#tbody tr.connected-guest.group-end td:nth-child(2){border-bottom-color:#ded2c3}
#tbody tr:has([data-group][value]:not([value=""])) td:nth-child(2){border-left:3px solid #d4b69a}
#tbody tr.selected-guest{background:#f3f7f2}
#thead input[type=checkbox],#tbody input[type=checkbox][data-guest-select],#selectVisible{width:15px;height:15px;accent-color:var(--green);cursor:pointer}
.guest-select-cell{width:34px;min-width:34px;text-align:center!important}
.rsvp-add-fab{position:fixed;right:28px;bottom:28px;z-index:35;width:56px;height:56px;border:0;border-radius:50%;display:none;place-items:center;background:#4c46e8;color:white;box-shadow:0 8px 22px #22204740;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}
.rsvp-add-fab.is-visible{display:grid}
.rsvp-add-fab:hover{transform:translateY(-2px);box-shadow:0 12px 28px #22204752}
.rsvp-add-fab:focus-visible{outline:3px solid #bdb9ff;outline-offset:3px}
.rsvp-add-fab>span:first-child{font:400 35px/1 'DM Sans',sans-serif;margin-top:-3px}
.rsvp-add-fab-label{position:absolute;right:66px;white-space:nowrap;background:#292c28;color:#fff;padding:7px 10px;border-radius:7px;font-size:11px;opacity:0;transform:translateX(4px);pointer-events:none;transition:opacity .15s ease,transform .15s ease}
.rsvp-add-fab:hover .rsvp-add-fab-label,.rsvp-add-fab:focus-visible .rsvp-add-fab-label{opacity:1;transform:translateX(0)}
.guest-tag-field{position:relative;display:flex;align-items:center;gap:10px;min-width:0;padding:3px 0}
.guest-tag-label{flex:0 0 auto;color:var(--muted);font-size:11px}
.guest-tag-trigger{width:auto!important;min-width:135px;max-width:min(210px,65vw);padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:500 12px 'DM Sans',sans-serif;text-align:left;cursor:pointer}
.guest-tag-trigger::after{content:'⌄';float:right;margin-left:18px;color:var(--muted)}
.guest-tag-trigger[aria-expanded=true]{border-color:#a7b9aa;background:#f8faf7}
.guest-tag-values{display:none!important}
.guest-tag-popover{position:fixed;z-index:10000;width:min(230px,calc(100vw - 28px));max-height:min(250px,48vh);overflow:auto;padding:7px;display:grid;gap:2px;border:1px solid #dfe5de;border-radius:11px;background:#fff;box-shadow:0 14px 36px #1f312327}
.guest-tag-choice{display:flex!important;align-items:center;gap:9px;padding:8px 9px;border-radius:7px;color:var(--ink)!important;font-size:12px!important;cursor:pointer}
.guest-tag-choice:hover{background:#f4f7f3}
.guest-tag-choice input{flex:0 0 auto;width:15px!important;height:15px;margin:0;accent-color:var(--green)}
@media(max-width:700px){
  .panel.rsvp-summary-panel{padding:10px 12px}
  .rsvp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rsvp-stat{min-height:67px;padding:5px 10px;border-right:0}
  .rsvp-stat:nth-child(odd){border-right:1px solid var(--line)}
  .rsvp-stat:nth-child(n+3){border-top:1px solid var(--line)}
  .rsvp-stat:first-child{padding-left:10px}
  .rsvp-stat strong{font-size:23px}
  .rsvp-stat span{font-size:11px}
  .guest-list-toolbar{align-items:stretch}
  .guest-list-toolbar>div:first-child{display:grid;grid-template-columns:1fr;gap:7px}
  .guest-list-toolbar .search{min-width:0;width:100%}
  .guest-list-toolbar .csv-actions{justify-content:flex-start}
  .guest-toolbar{align-items:flex-start}
  .guest-toolbar .guest-edit-label,.guest-toolbar .spacer{flex:1 0 100%}
  .guest-toolbar .guest-side-bulk{flex:1 0 100%;margin:2px 0 0}
  .guest-toolbar .guest-side-bulk label{flex:1}
  .guest-toolbar .guest-side-bulk select{max-width:120px}
  .rsvp-add-fab{right:17px;bottom:calc(82px + env(safe-area-inset-bottom));width:54px;height:54px}
}




/* Guests page: persistent response summary and batch controls. */
.rsvp-stat[type=button]{font:inherit;text-align:left;cursor:pointer;transition:box-shadow .15s}
.rsvp-stat[type=button]:hover{box-shadow:0 0 0 1px var(--green)}
.rsvp-stat[aria-pressed=true]{box-shadow:0 0 0 2px var(--green)}
.rsvp-stat:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.guest-batch-undo{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:10px 12px;margin:8px 0;border:1px solid #d3e2d3;border-radius:10px;background:#edf5ed;color:var(--green);font-size:12px}
#boardScreen .breakdown-details{display:none!important}
#boardScreen #rsvpStats{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
#boardScreen .rsvp-stat{border:1px solid var(--line);border-radius:12px;padding:14px 18px;min-height:84px;background:#fafbf8}
#boardScreen .rsvp-stat.attending{background:#edf5ed}
#boardScreen .rsvp-stat.pending{background:#fff6e6}
#boardScreen .rsvp-stat.declined{background:#f6efed}
#boardScreen .guest-select-cell{display:table-cell!important;width:36px;min-width:36px}
#boardScreen .guest-toolbar{display:flex!important;gap:8px;padding:10px;margin:12px 0}
#boardScreen #guestGroupTools[hidden],#boardScreen .guest-batch-undo[hidden]{display:none!important}
.guest-bulk-label{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted)}
.guest-bulk-label select{max-width:155px;padding:7px}
#tbody select[data-key=rsvp]{border-radius:20px;padding:7px 10px;font-weight:600}
#tbody select[data-response=Yes]{background:#e8f3e8;color:#356544}
#tbody select[data-response=Waiting]{background:#fff1d7;color:#88652c}
#tbody select[data-response=No]{background:#f4e7e3;color:#925548}
.guest-column-edit{margin-left:7px;border:0;background:transparent;color:var(--green);cursor:pointer;padding:4px;font-size:14px}
.tag-dropdown>summary[aria-disabled=true]{opacity:.5;cursor:default}
#guestActions #addGuest{display:inline-flex!important}
@media(max-width:700px){#boardScreen .rsvp-stat{padding:10px;min-height:70px}.guest-bulk-label{flex-wrap:wrap}}
