/* Invitation layout from the accepted Studio prototype; colors follow the
   active theme. Pointer geometry and preparation remain in dating-invitation.js. */
.invitation-sheet.dating-invitation{
 --invite-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
 inset:auto 25px calc(24px + var(--invitation-keyboard,0px)) auto;
 width:min(430px,calc(100vw - 48px));height:min(730px,85dvh);
 max-height:min(730px,85dvh);margin:0;grid-template-rows:32px auto auto minmax(0,1fr) auto auto;
 border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink);
 font:14px/1.55 var(--invite-font);box-shadow:0 10px 70px #0005;
}
.invitation-sheet .invitation-handle{min-height:32px;height:32px;padding:0}
.invitation-sheet .invitation-grip{width:32px;height:3px;background:var(--line);border-radius:4px}
.invitation-sheet .invitation-handle-text{top:9px;right:18px;font:400 9px/1.5 var(--invite-font)}
.invitation-sheet .invitation-heading{padding:8px 22px 18px}
.invitation-sheet .invitation-heading .eyebrow{padding:0;font:400 9px/1.5 var(--invite-font);letter-spacing:1.5px;color:var(--muted)}
.invitation-sheet .invitation-heading h2{margin:9px 0 0;font:500 25px/1.16 var(--invite-font);letter-spacing:-.7px;color:var(--ink)}
.invitation-sheet .invitation-steps{display:flex;gap:10px;padding:0 22px 14px;border-color:var(--line)}
.invitation-sheet .invitation-step{flex:1;min-width:0;gap:6px;padding:0;font:400 9px/1.5 var(--invite-font)}
.invitation-sheet .invitation-step-number{width:21px;height:21px;flex-basis:21px;font:400 10px/1 ui-monospace,Consolas,monospace}
.invitation-sheet .invitation-step[aria-current=step]{color:var(--ink);font-weight:400}
.invitation-sheet .invitation-step.is-complete{color:var(--muted)}
.invitation-sheet .invitation-step.is-complete .invitation-step-number{background:none;border-color:var(--line);color:var(--wine)}
.invitation-sheet .invitation-body,.invitation-sheet.is-review .invitation-body{padding:17px 22px;scrollbar-gutter:auto}
.invitation-sheet .invitation-intro{font:400 11px/1.8 var(--invite-font);margin:0 0 14px;color:var(--muted)}
.invitation-sheet input,.invitation-sheet textarea{min-height:46px;padding:12px 13px;border:1px solid var(--line);border-radius:4px;background:var(--white);color:var(--ink);font:400 14px/1.5 var(--invite-font)}
.invitation-sheet .invitation-message{min-height:105px;resize:vertical}
.invitation-sheet .invitation-options{display:block;margin:0}
.invitation-sheet .invitation-group{font:400 9px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);margin:22px 0 9px}
.invitation-sheet .invitation-group:before{display:none}
.invitation-sheet .invitation-option{
 display:flex;align-items:center;gap:12px;width:100%;padding:10px 0;margin:0 0 4px;
 border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;color:var(--ink);text-align:left;
}
.invitation-sheet .invitation-option.is-both{padding-left:10px;border-left:2px solid var(--wine)}
.invitation-sheet .invitation-option.is-theirs{padding-left:10px;border-left:2px solid #b3677c}
.invitation-sheet .invitation-option.is-mine{padding-left:10px;border-left:2px solid #7899b7}
.invitation-sheet .invitation-option[aria-pressed=true]{outline:1px solid var(--wine);outline-offset:2px;background:transparent}
.invitation-sheet .invitation-event-picture{width:52px;height:57px;flex-basis:52px;border-radius:0;background:var(--paper);overflow:hidden}
.invitation-sheet .invitation-option strong{display:block;margin:0;font:500 12px/1.5 var(--invite-font);color:var(--ink)}
.invitation-sheet .invitation-option small{display:block;margin:5px 0 0;font:400 10px/1.7 var(--invite-font);color:var(--muted)}
.invitation-sheet .invitation-chosen:not(:empty){background:none;border-radius:0;border-bottom:1px solid var(--line);padding:8px 0;font:400 11px/1.5 var(--invite-font)}
.invitation-sheet .invitation-chosen .button{border:0;background:none;font-size:10px;padding:4px 0;color:var(--muted)}
.invitation-sheet .invitation-date{margin-top:17px;gap:8px;font:400 12px/1.5 var(--invite-font);color:var(--muted)}
.invitation-sheet .invitation-count{font:400 10px/1.5 var(--invite-font);margin-top:6px}
.invitation-sheet .invitation-footer{padding:12px 22px;gap:7px;background:var(--white);border-color:var(--line)}
.invitation-sheet .invitation-footer-main{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:9px}
.invitation-sheet .invitation-footer .button{font:550 11px/1.5 var(--invite-font);min-height:43px;padding:10px;border:1px solid var(--line);border-radius:5px}
.invitation-sheet .invitation-footer .button.wine{border-color:var(--wine);background:var(--wine);color:#fffefb}
.invitation-sheet .invitation-footer .button.ghost{background:none;color:var(--ink)}
.invitation-sheet .invitation-footer-links{gap:12px;justify-content:space-between}
.invitation-sheet .invitation-skip,.invitation-sheet .invitation-text-action{min-height:25px;padding:5px 0;font:400 9px/1.5 var(--invite-font);color:var(--muted)}
.invitation-sheet .invitation-summary{padding:0;margin:0 0 12px;border:1px solid var(--line);border-radius:0;background:transparent}
.invitation-sheet .invitation-recipient{padding:12px 15px;font:400 9px/1.4 ui-monospace,Consolas,monospace;letter-spacing:1px;background:var(--paper);color:var(--muted)}
.invitation-sheet .invitation-summary-place{padding:16px;gap:12px}
.invitation-sheet .invitation-summary-place strong,.invitation-sheet .invitation-summary-like{font:500 21px/1.2 var(--invite-font);letter-spacing:-.4px;color:var(--ink)}
.invitation-sheet .invitation-summary-place strong{margin:0 0 7px}
.invitation-sheet .invitation-summary-address{font:400 12px/1.6 var(--invite-font)}
.invitation-sheet .invitation-summary-date,.invitation-sheet .invitation-summary-message{padding:16px;border-color:var(--line)}
.invitation-sheet .invitation-summary small{font:400 10px/1.5 var(--invite-font);margin-bottom:8px;color:var(--muted)}
.invitation-sheet .invitation-summary-date span{font:400 12px/1.6 var(--invite-font)}
.invitation-sheet .invitation-summary-message p{font:400 20px/1.6 var(--invite-font);color:var(--ink)}
.invitation-sheet .invitation-compact{padding:0 20px;font:550 11px/1.5 var(--invite-font)}
.invitation-sheet .invitation-compact>span:last-child{font-size:10px}
.invitation-sheet.is-collapsed{height:76px;max-height:76px}
html[data-theme=dark] .invitation-sheet.dating-invitation{background:#232221;box-shadow:0 10px 70px #000a}
html[data-theme=dark] .invitation-sheet .invitation-footer{background:#232221}
html[data-theme=dark] .invitation-sheet .invitation-option{background:transparent}
html[data-theme=dark] .invitation-sheet .invitation-option[aria-pressed=true]{background:#282726}
html[data-theme=dark] .invitation-sheet .invitation-summary{background:transparent}
html[data-theme=dark] .invitation-sheet .invitation-footer .button.wine{color:#121212}
.prototype-discover-heading .dating-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%}
.prototype-discover-heading .dating-title-row h1{margin:0;font:500 32px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:-1px}
.prototype-discover-heading .dating-title-row .dating-guide-open{margin:0;align-self:center}
@media(max-width:768px){
 .invitation-sheet.dating-invitation{inset:auto 0 var(--invitation-keyboard,0px);width:100%;max-width:100%;height:calc(var(--invitation-viewport,100dvh)*.85);max-height:calc(var(--invitation-viewport,100dvh)*.85);border-radius:11px 11px 0 0}
 .invitation-sheet .invitation-heading{padding-inline:20px}
 .invitation-sheet .invitation-steps{padding-inline:20px;gap:8px}
 .invitation-sheet .invitation-body,.invitation-sheet.is-review .invitation-body{padding:17px 20px}
 .invitation-sheet .invitation-footer{padding:11px 20px max(11px,env(safe-area-inset-bottom))}
 .invitation-sheet input,.invitation-sheet textarea{font-size:16px}
 .invitation-sheet .invitation-footer .button{min-height:44px}
 .invitation-sheet .invitation-compact{padding-inline:17px}
 .invitation-sheet.dating-invitation.is-collapsed{inset:auto 9px calc(75px + env(safe-area-inset-bottom));width:calc(100% - 18px);height:76px;max-height:76px;border:1px solid var(--line);border-radius:11px}
 .prototype-discover-heading .dating-title-row h1{font-size:29px}
}
@media(max-width:350px){.invitation-sheet .invitation-step{font-size:8px}}
