/* OurMoment v2.23 — photo-album mode, guest page parity, compact filters and vendor profile refresh */

/* Reduced photo-album dashboard */
.album-dashboard223{display:grid;gap:20px}.album-intro223{background:linear-gradient(125deg,color-mix(in srgb,var(--paper) 82%,#f1d9d2 18%),color-mix(in srgb,var(--paper) 86%,#dfe8db 14%))}.album-intro223 h2{margin:8px 0}.album-area223{text-decoration:none;display:grid;gap:7px;transition:transform .16s ease,border-color .16s ease}.album-area223:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--rose) 50%,var(--line))}.album-area223>span{font-size:11px;letter-spacing:.12em;color:var(--muted)}.album-area223 h2,.album-area223 p{margin:0}.settings-section-grid223{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}

/* Guest list filter */
.guest-filter223{padding:0!important;overflow:hidden}.guest-filter223>summary{padding:13px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;list-style-position:inside}.guest-filter223[open]>summary{border-bottom:1px solid var(--line)}.guest-filter223 form{padding:6px 18px 18px;display:grid;grid-template-columns:minmax(0,1fr) 220px auto;gap:12px;align-items:end}.guest-filter223 form .field{margin:8px 0}.guest-filter223 .btn{margin-bottom:8px}

/* Guest page: same centered hierarchy as dashboard preview */
.invitation-preview,.wedding,.wedding-content{text-align:center}.wedding{max-width:1120px}.wedding-hero223{display:flex;flex-direction:column;align-items:center;padding-top:clamp(24px,5vw,58px)}.wedding-hero223 .couple-photo,.invitation-preview .couple-photo{order:1;width:min(100%,760px);height:auto;max-height:620px;aspect-ratio:4/3;object-fit:cover;margin:0 auto 26px;border-radius:24px}.guest-couple-name223{order:2;margin:0 auto 10px!important;font-size:clamp(40px,7vw,76px)!important;line-height:1.05;max-width:980px}.guest-date223{order:3;margin:0!important;font-size:clamp(22px,3.2vw,36px);font-family:Georgia,serif;letter-spacing:.03em}.guest-countdown223,.guest-countdown-preview223{order:4;margin:8px 0 0!important;font-size:clamp(18px,2.5vw,30px)!important;font-family:inherit;color:var(--accent);font-variant-numeric:tabular-nums}.guest-divider223{order:5;width:min(520px,74%);height:1px;margin:28px auto 4px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.72}.invitation-preview .guest-divider223{margin:22px auto}.guest-message223{max-width:760px;margin:0 auto 28px;text-align:center}.guest-location223,.guest-info-block223{max-width:820px;margin:34px auto!important;text-align:center}.guest-section-label223{margin:0 0 7px!important;text-transform:uppercase;letter-spacing:.18em;font-size:11px!important;font-weight:700;color:var(--accent)!important}.guest-location223 h2,.guest-location223 h3{margin:0 0 9px;font-size:clamp(26px,4vw,42px);color:var(--ink);font-family:Georgia,serif}.guest-address223{color:var(--muted)}.wedding .map-card21{max-width:820px;margin:22px auto;text-align:left}.wedding-content{padding-top:28px}.wedding-content>section{margin-inline:auto}.wedding-nav{margin-top:4px}.wedding-nav a{text-align:center}

/* Separate couple-name fonts. These use safe local stacks so no third-party font request is required. */
.name-font-signature{font-family:"Segoe Script","Snell Roundhand","Apple Chancery","Brush Script MT","URW Chancery L",cursive!important;font-weight:400!important;letter-spacing:.01em}.name-font-calligraphy{font-family:"Snell Roundhand","Apple Chancery","URW Chancery L",cursive!important;font-weight:400!important}.name-font-handwritten{font-family:"Bradley Hand","Segoe Print","Comic Sans MS",cursive!important;font-weight:400!important}.name-font-script{font-family:"Brush Script MT","Segoe Script",cursive!important;font-weight:400!important}.name-font-romantic{font-family:Georgia,"Times New Roman",serif!important;font-style:italic;font-weight:400!important}.name-font-classic{font-family:Georgia,"Times New Roman",serif!important;font-weight:400!important}.name-font-modern{font-family:Arial,Helvetica,sans-serif!important;font-weight:300!important;letter-spacing:.02em}.font-serif{font-family:Georgia,"Times New Roman",serif}.font-clean{font-family:Arial,Helvetica,sans-serif}.font-handwritten{font-family:"Segoe Print","Bradley Hand",cursive}.font-handwritten h1,.font-handwritten h2,.font-handwritten h3{font-family:"Segoe Print","Bradley Hand",cursive}

/* Guest page is intentionally always light; no appearance button is shown there. */
.wedding .theme-toggle-button{display:none!important}

/* Vendor search filters */
.vendor-filter-panel223{padding:0!important;overflow:hidden}.vendor-filter-panel223>summary{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:15px 20px;font-weight:700;list-style-position:inside}.vendor-filter-panel223[open]>summary{border-bottom:1px solid var(--line)}.vendor-filter-panel223 form{padding:10px 20px 20px}.filter-grid223{grid-template-columns:minmax(220px,.9fr) minmax(0,1.1fr)}.vendor-category-filter223,.region-picker223{padding:10px!important;margin:6px 0!important}.vendor-category-filter223 legend,.region-picker223 legend{font-size:12px}.vendor-category-filter223 .choices.compact,.region-picker223 .choices.compact{grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:6px}.vendor-category-filter223 .choices.compact>label,.region-picker223 .choices.compact>label{padding:7px 9px;font-size:12px;border-radius:10px}.region-picker223 .region-group22{grid-template-columns:62px 1fr;gap:8px;padding:6px 0}.region-picker223 .region-group22>strong{font-size:10px}.filter-summary-hint223{font-size:11px;color:var(--muted);font-weight:400}

/* Vendor profile layout */
.modal-v2.wide:has(.business-profile223){padding:26px;width:min(1220px,calc(100vw - 24px))}.business-profile223{max-width:1160px;border-radius:26px}.business-hero223{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:26px;padding:34px;background:linear-gradient(120deg,#f6e8e2,#edf1e8);border-bottom:1px solid var(--line)}.business-avatar223{width:132px;height:132px}.business-title223 h1{margin:7px 0 8px}.business-title223 p{margin:4px 0}.business-categories223{font-weight:700}.business-regions223{color:var(--muted)}.business-content223{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:0}.business-main223{min-width:0}.business-aside223{border-left:1px solid var(--line);background:color-mix(in srgb,var(--paper) 94%,var(--bg) 6%)}.business-section223{padding:28px 30px;border-bottom:1px solid var(--line);text-align:left}.business-section223:last-child{border-bottom:0}.business-section223 h2{margin:5px 0 14px}.section-kicker223{text-transform:uppercase;letter-spacing:.14em;font-size:10px;font-weight:800;color:var(--muted)}.business-contact223 a{overflow-wrap:anywhere}.business-profile223 .media-gallery{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}

/* Rating: selecting N fills all stars to the left */
.stars223 label{transition:color .12s ease,transform .12s ease}.stars223 label.active{color:#bb9560}.stars223 label:hover{transform:translateY(-1px)}

@media(max-width:900px){.business-hero223{grid-template-columns:auto 1fr}.business-cta223{grid-column:1/-1}.business-cta223 .btn{width:100%}.business-content223{grid-template-columns:1fr}.business-aside223{border-left:0;border-top:1px solid var(--line)}.guest-filter223 form{grid-template-columns:1fr 1fr}.guest-filter223 .btn{grid-column:1/-1}.filter-grid223{grid-template-columns:1fr}.settings-section-grid223{grid-template-columns:1fr}.region-picker223 .region-group22{grid-template-columns:1fr}.vendor-category-filter223 .choices.compact,.region-picker223 .choices.compact{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.business-hero223{grid-template-columns:1fr;text-align:center}.business-avatar223{margin:auto}.business-cta223{grid-column:auto}.business-section223{padding:22px 18px}.guest-filter223 form{grid-template-columns:1fr}.guest-filter223 .btn{grid-column:auto}.guest-couple-name223{font-size:clamp(36px,12vw,58px)!important}.guest-date223{font-size:clamp(19px,6vw,27px)}.guest-countdown223,.guest-countdown-preview223{font-size:clamp(17px,5vw,23px)!important}.wedding-hero223 .couple-photo{border-radius:18px}.vendor-category-filter223 .choices.compact,.region-picker223 .choices.compact{grid-template-columns:1fr 1fr}}
