:root{--feature-panel-radius:18px;--feature-panel-border:rgba(184,154,106,0.2);--feature-panel-bg:radial-gradient(120% 160% at 0% 0%,rgba(212,184,150,0.16),transparent 58%),linear-gradient(155deg,rgba(255,255,255,0.96),rgba(248,242,232,0.9));--feature-panel-shadow:0 10px 26px rgba(28,24,20,0.05),inset 0 1px 0 rgba(255,255,255,0.62);--feature-panel-padding:18px 20px;--feature-summary-gap:6px;--feature-eyebrow-size:0.62rem;--feature-eyebrow-tracking:0.13em;--feature-body-size:0.86rem;--feature-body-line:1.62;--feature-meta-size:0.74rem}.guests-shell,.vendors-page-shell{min-height:100vh}.budget-ai-summary,.budget-card,.budget-panel,.budget-summary-card,.guests-headcard,.guests-rsvp-donut-wrap,.guests-summary-card,.timeline-grid-wrap,.vendor-ai-summary-box,.vendor-coverage-shell,.vendor-filters,.vendor-list-card,.vendors-head,.vendors-priority-action-card{border-radius:var(--feature-panel-radius);border:1px solid var(--feature-panel-border);background:var(--feature-panel-bg);box-shadow:var(--feature-panel-shadow)}.guests-headcard,.vendors-head{padding:var(--feature-panel-padding);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);overflow:hidden}.guests-headcard:before{content:none}.guests-headcard__content{max-width:1200px;margin:0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.guests-headcard__eyebrow,.vendors-head__eyebrow{font-size:var(--feature-eyebrow-size);font-weight:700;letter-spacing:var(--feature-eyebrow-tracking);text-transform:uppercase;color:var(--gold-dk);margin:0 0 6px}.guests-headcard h1,.guests-headcard__title h1,.vendors-head h1,.vendors-head__title h1{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.5rem,2.8vw,2rem);font-weight:700;color:var(--ink);margin:0 0 6px;line-height:1.08;letter-spacing:-.02em}.guests-headcard p,.guests-headcard__title p,.vendors-head p,.vendors-head__title p{margin:0;font-size:var(--feature-body-size);color:var(--ink-60);line-height:1.58}.vendors-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.vendors-head__actions{display:flex;align-items:center;gap:8px;flex-shrink:0;padding-top:4px}.budget-ai-summary,.budget-summary-card,.guests-summary-card,.vendor-ai-summary-box{padding:var(--feature-panel-padding)}.budget-ai-summary,.guests-summary-card,.vendor-ai-summary-box{display:flex;flex-direction:column;gap:var(--feature-summary-gap)}.guests-summary-card__eyebrow,.weddly-feature-summary__eyebrow{margin:0;font-size:var(--feature-eyebrow-size);font-weight:700;letter-spacing:var(--feature-eyebrow-tracking);text-transform:uppercase;color:var(--gold-dk)}.budget-ai-summary__text,.guests-summary-card__text,.vendor-ai-summary-box,.weddly-feature-summary__body{margin:0;font-size:var(--feature-body-size);line-height:var(--feature-body-line);color:var(--ink-80)}.guests-summary-card__meta,.vendor-ai-summary-box small,.weddly-feature-summary__meta{margin:0;font-size:var(--feature-meta-size);color:var(--ink-60)}.budget-summary-card__label{font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-dk)}.budget-summary-card__value{margin-top:6px;font-size:1.42rem;line-height:1.08;font-weight:700}.budget-summary-card__meta{margin-top:4px;font-size:var(--feature-meta-size);color:var(--ink-60)}.budget-btn,.guests-btn,.vendor-btn{min-height:var(--btn-height-md);padding:var(--btn-padding-md);border-radius:var(--btn-radius-md);border:1px solid var(--btn-primary-border);background:var(--btn-primary-bg);color:var(--btn-primary-fg);display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-family-sans);font-size:var(--btn-font-size);font-weight:var(--btn-font-weight);letter-spacing:var(--btn-letter-spacing);line-height:1;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .12s ease,box-shadow .2s ease,opacity .18s ease;box-shadow:var(--btn-primary-shadow)}.budget-btn:hover,.guests-btn:hover,.vendor-btn:hover{background:var(--btn-primary-bg-hover);border-color:var(--btn-primary-border-hover);color:var(--btn-primary-fg);transform:translateY(-1px);box-shadow:var(--btn-primary-shadow-hover)}.budget-btn:disabled,.guests-btn:disabled,.vendor-btn:disabled{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none}.timeline-btn,.wb-btn{min-height:var(--btn-height-md);padding:var(--btn-padding-md);border-radius:var(--btn-radius-md);border:1px solid transparent;background:transparent;color:var(--ink-80);box-shadow:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-family-sans);font-size:var(--btn-font-size);font-weight:var(--btn-font-weight);letter-spacing:var(--btn-letter-spacing);line-height:1;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .12s ease,box-shadow .2s ease,opacity .18s ease}.timeline-btn{border:1px solid var(--btn-secondary-border);background:var(--btn-secondary-bg);color:var(--btn-secondary-fg);box-shadow:none}.timeline-btn:hover{background:var(--btn-secondary-bg-hover);border-color:var(--btn-secondary-border-hover);color:var(--btn-secondary-fg-hover);transform:translateY(-1px);box-shadow:var(--btn-hover-shadow)}.timeline-btn:disabled,.wb-btn:disabled{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none}.budget-btn--ghost,.guests-btn--ghost,.timeline-btn,.vendor-btn--ghost,.wb-btn--ghost,.wb-btn--secondary{border-color:var(--btn-secondary-border);background:var(--btn-secondary-bg);color:var(--btn-secondary-fg);box-shadow:none}.budget-btn--ghost:hover,.guests-btn--ghost:hover,.timeline-btn:hover,.vendor-btn--ghost:hover,.wb-btn--ghost:hover,.wb-btn--secondary:hover{background:var(--btn-secondary-bg-hover);border-color:var(--btn-secondary-border-hover);color:var(--btn-secondary-fg-hover);box-shadow:var(--btn-hover-shadow)}.guests-btn--danger,.vendor-btn--danger,.wb-btn--danger{border-color:transparent;background:var(--btn-danger-bg);color:var(--btn-danger-fg)}.guests-btn--danger:hover,.vendor-btn--danger:hover,.wb-btn--danger:hover{background:var(--btn-danger-bg-hover);color:var(--btn-danger-fg)}.guests-btn--danger-ghost,.vendor-btn--danger-ghost{border-color:var(--btn-danger-ghost-border);background:transparent;color:var(--btn-danger-ghost-fg);box-shadow:none}.guests-btn--danger-ghost:hover,.vendor-btn--danger-ghost:hover{background:var(--btn-danger-ghost-bg-hover);border-color:var(--btn-danger-ghost-border-hover);color:var(--btn-danger-ghost-fg)}.guests-btn--accent,.guests-btn--sweetheart,.timeline-btn--buffer,.timeline-btn--column,.timeline-btn--event{border-color:var(--btn-soft-border);background:var(--btn-soft-bg);color:var(--btn-soft-fg);box-shadow:none}.guests-btn--accent:hover,.guests-btn--sweetheart:hover,.timeline-btn--buffer:hover,.timeline-btn--column:hover,.timeline-btn--event:hover{background:var(--btn-soft-bg-hover);border-color:var(--btn-soft-border);color:var(--btn-soft-fg);box-shadow:var(--btn-hover-shadow)}.budget-btn--small,.guests-btn--small,.vendor-btn--small,.wb-btn--sm{min-height:var(--btn-height-sm);padding:var(--btn-padding-sm);font-size:var(--btn-font-size-sm);border-radius:var(--btn-radius-sm)}.budget-icon-btn,.guests-icon-btn,.wb-btn--icon{width:var(--btn-size-icon);height:var(--btn-size-icon);min-width:var(--btn-size-icon);min-height:var(--btn-size-icon);padding:0;border-radius:var(--btn-radius-sm);border:1px solid var(--btn-icon-border);background:var(--btn-icon-bg);color:var(--btn-icon-fg);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .12s ease,box-shadow .2s ease,opacity .18s ease}.budget-icon-btn:hover,.guests-icon-btn:hover,.wb-btn--icon:hover{background:var(--btn-icon-bg-hover);border-color:var(--btn-icon-border-hover);color:var(--btn-icon-fg-hover);transform:translateY(-1px);box-shadow:var(--btn-hover-shadow)}.budget-icon-btn:disabled,.guests-icon-btn:disabled,.wb-btn--icon:disabled{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none}.timeline-btn--primary,.wb-btn--primary{border-color:var(--btn-primary-border);color:var(--btn-primary-fg);background:var(--btn-primary-bg);box-shadow:var(--btn-primary-shadow)}.timeline-btn--primary:hover,.wb-btn--primary:hover{background:var(--btn-primary-bg-hover);border-color:var(--btn-primary-border-hover);color:var(--btn-primary-fg);box-shadow:var(--btn-primary-shadow-hover)}.wb-btn--full{width:100%;justify-content:center}.budget-modal-backdrop,.guests-modal-backdrop,.vendor-modal-overlay{position:fixed;inset:0;background:rgba(28,24,20,.48);z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.budget-modal,.guests-modal,.vendor-modal{background:#fff;border-radius:20px;box-shadow:0 32px 80px rgba(28,24,20,.18);max-width:520px;width:100%;max-height:90vh;overflow-y:auto;padding:24px}.guests-modal--wide,.vendor-budget-fix-modal{max-width:680px}.guests-modal__head,.vendor-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.guests-modal__head h3,.vendor-modal__title{margin:0;font-size:1rem;font-weight:700;color:var(--ink)}.guests-modal__head p,.vendor-modal__head-copy p{margin:4px 0 0;font-size:.82rem;color:var(--ink-60)}.budget-modal-actions,.guests-modal__actions,.vendor-modal__actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid rgba(184,154,106,.15)}.vendor-modal__x{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid rgba(184,154,106,.2);background:transparent;color:var(--ink-60);cursor:pointer;flex-shrink:0;transition:background .15s,color .15s}.vendor-modal__x:hover{background:rgba(184,154,106,.1);color:var(--ink)}.budget-error,.guests-error-line,.vendor-error{margin:8px 0;padding:8px 12px;border-radius:8px;background:var(--red-soft);border:1px solid rgba(192,57,43,.2);color:var(--red);font-size:.8rem}.budget-success{margin:8px 0;padding:8px 12px;border-radius:8px;background:rgba(143,169,140,.12);border:1px solid rgba(143,169,140,.3);color:#4a7c41;font-size:.8rem}.budget-input,.budget-textarea,.guests-input,.guests-textarea,.vendor-notes-textarea{width:100%;border-radius:10px;border:1px solid rgba(184,154,106,.28);background:rgba(255,255,255,.9);color:var(--ink);padding:9px 12px;font-family:Poppins,sans-serif;font-size:.84rem;line-height:1.5;transition:border-color .15s,box-shadow .15s}.budget-input:focus,.budget-textarea:focus,.guests-input:focus,.guests-textarea:focus,.vendor-notes-textarea:focus{outline:none;border-color:rgba(184,154,106,.5);box-shadow:0 0 0 3px rgba(184,154,106,.14)}.budget-input--lg{font-size:1.1rem;padding:12px 14px}.budget-textarea,.guests-textarea,.vendor-notes-textarea{resize:vertical;min-height:80px}.budget-field,.guests-field,.vendor-field{display:flex;flex-direction:column;gap:5px}.budget-field--full,.guests-field--full,.vendor-field--full{grid-column:1/-1}.budget-field-label,.guests-field label{font-size:.74rem;font-weight:650;color:var(--ink-60);letter-spacing:.02em}.budget-hint{font-size:.72rem;color:var(--ink-30);line-height:1.4;margin-top:2px}.budget-select,.guests-select,.vendor-filter-select,.vendor-status-select{width:100%;padding:8px 12px;border-radius:10px;border:1px solid rgba(184,154,106,.28);background:rgba(255,255,255,.9);color:var(--ink);font-family:Poppins,sans-serif;font-size:.84rem;cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.budget-panel,.guests-panel,.vendor-list-card,.vendor-section-panel{border-radius:16px;border:1px solid rgba(184,154,106,.18);background:rgba(255,255,255,.92);box-shadow:0 6px 20px rgba(28,24,20,.05);padding:18px}.budget-panel__head,.guests-panel__head,.vendor-section-panel__head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.budget-panel__title{margin:0;font-size:.94rem;font-weight:700;color:var(--ink);letter-spacing:-.01em}.budget-panel__sub{margin:2px 0 0;font-size:.78rem;color:var(--ink-60)}.budget-segmented,.vendor-segmented{display:inline-flex;border-radius:10px;border:1px solid rgba(184,154,106,.25);overflow:hidden;background:rgba(255,255,255,.8)}.budget-segmented button,.vendor-segmented button{padding:7px 14px;font-size:.78rem;font-weight:650;background:transparent;color:var(--ink-60);cursor:pointer;border:none;border-right:1px solid rgba(184,154,106,.2);transition:background .15s,color .15s}.budget-segmented button:last-child,.vendor-segmented button:last-child{border-right:none}.budget-segmented button.active,.budget-segmented button[aria-selected=true],.vendor-segmented button.active,.vendor-segmented button[aria-selected=true]{background:var(--gold);color:#fff}@media (max-width:480px){.budget-modal,.guests-modal,.vendor-modal{padding:16px;border-radius:14px}.budget-modal-actions,.guests-modal__actions,.vendor-modal__actions{flex-direction:column;gap:6px}.budget-modal-actions>*,.guests-modal__actions>*,.vendor-modal__actions>*{width:100%}.budget-input,.budget-textarea,.guests-input,.guests-textarea,.vendor-notes-textarea{font-size:16px}.budget-panel,.guests-panel,.vendor-list-card,.vendor-section-panel{padding:14px;border-radius:14px}.guests-headcard,.vendors-head{padding:16px 14px}.budget-btn,.guests-btn,.vendor-btn{min-height:44px}.budget-icon-btn,.guests-icon-btn{width:40px;height:40px;min-width:40px;min-height:40px}.budget-segmented button,.vendor-segmented button{padding:8px 10px;font-size:.74rem}.budget-ai-summary,.budget-summary-card,.guests-summary-card,.vendor-ai-summary-box{padding:14px}}