@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--paper:#f8f7f3;--white:#fff;--ink:#2d332d;--muted:#85877e;--line:#e8e8df;--green:#52634c;--green-dark:#3e5038;--sage:#edf0e7;--sand:#efe8dc;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif;--radius:16px}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:13px/1.6 var(--sans);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible{outline:3px solid #b7c49e;outline-offset:4px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #a4b78e;outline-offset:1px}svg{width:19px;height:19px;flex-shrink:0;vertical-align:middle}button svg{pointer-events:none}button{color:inherit}img{max-width:100%;display:block}::selection{background:#dbe4cc}.serif{font-family:var(--serif)}.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:10px;font-weight:700}.flex{display:flex;align-items:center;gap:12px}.spread{display:flex;align-items:center;justify-content:space-between;gap:16px}.stack{display:flex;flex-direction:column;gap:20px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:9px;background:#fff;min-height:42px;padding:10px 16px;font-size:11px;font-weight:700;transition:background .18s,transform .18s}.btn:hover{background:#f2f4ed}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--green);color:white;border-color:var(--green)}.btn.primary:hover{background:var(--green-dark)}.btn.ghost{background:transparent;border-color:transparent}.btn.small{min-height:32px;padding:6px 11px;font-size:10px}.btn.danger{color:#a64a47;background:#fff9f8}.icon-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:white;width:35px;height:35px;border-radius:9px}.icon-btn:hover{background:var(--sage)}.icon-btn svg{width:16px;height:16px}.badge{display:inline-flex;gap:5px;align-items:center;border-radius:30px;padding:5px 9px;background:var(--sage);color:var(--green);font-size:9px;letter-spacing:.4px;font-weight:700;white-space:nowrap}.badge.sand{background:#f5eee1;color:#967d47}.badge.pink{background:#f9e9e5;color:#a7685b}.badge.gray{background:#f0f0eb;color:#7e8175}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor}.sidebar{position:fixed;inset:0 auto 0 0;width:224px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:34px 19px 20px;z-index:25}.brand{display:flex;align-items:center;gap:10px;padding:0 12px 35px}.brand-mark{width:34px;height:34px;background:var(--green);display:grid;place-items:center;border-radius:10px;color:#fff}.brand-mark svg{width:24px;height:24px}.brand-name{font-family:var(--serif);font-size:30px;font-weight:600;letter-spacing:-1px;line-height:1}.brand-sub{font-size:8px;letter-spacing:2.1px;color:var(--muted);margin-top:6px;text-transform:uppercase}.side-label{font-size:8px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:#a3a698;padding:15px 14px 10px}.nav-link{display:flex;align-items:center;gap:12px;padding:13px 14px;margin-bottom:5px;border-radius:9px;color:#828578;font-size:11px;font-weight:600}.nav-link svg{width:17px;height:17px}.nav-link:hover{color:var(--green);background:#f7f8f4}.nav-link.active{color:var(--green-dark);background:var(--sage)}.nav-link.active:after{content:'';width:5px;height:5px;background:var(--green);border-radius:50%;margin-left:auto}.sidebar-bottom{margin-top:auto}.demo-card{padding:16px;background:#f6f5ef;border-radius:12px;margin:18px 3px}.demo-card p{font-size:10px;color:#888c7f;margin-top:7px;line-height:1.7}.demo-card .eyebrow{font-size:8px;letter-spacing:1px}.user-card{border-top:1px solid var(--line);padding:18px 8px 0;display:flex;align-items:center;gap:10px}.avatar{height:34px;width:34px;background:#ebe6dc;border-radius:50%;display:grid;place-items:center;color:#7b786c;font-family:var(--serif);font-size:15px}.user-card strong{font-size:10px;display:block}.user-card small{font-size:9px;color:var(--muted)}.workspace{margin-left:224px;min-height:100vh}.topbar{height:76px;padding:0 40px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.72);display:flex;align-items:center;justify-content:space-between;gap:20px}.breadcrumbs{font-size:10px;color:#999c90;display:flex;align-items:center;gap:12px}.breadcrumbs span:last-child{color:var(--ink);font-weight:600}.top-actions{display:flex;align-items:center;gap:14px}.save-status{font-size:9px;color:var(--muted);display:flex;gap:6px;align-items:center}.save-status svg{width:13px;height:13px;color:#7c9471}.topbar .avatar{width:28px;height:28px;font-size:12px}.main{padding:34px 40px 50px;max-width:1570px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px}.page-heading h1{font:500 39px/1.15 var(--serif);letter-spacing:-1px}.page-heading .eyebrow{color:#949a87;font-size:8px;margin-bottom:9px}.page-heading p{color:#929587;margin-top:9px;font-size:10px}.mobile-header{display:none}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.card-head{padding:21px 24px 17px;border-bottom:1px solid #f0f0e9;display:flex;justify-content:space-between;align-items:center}.card-head h2{font:600 23px var(--serif);letter-spacing:-.3px}.card-body{padding:24px}.welcome-hero{height:284px;border-radius:17px;overflow:hidden;position:relative;background:#e7e7db;margin-bottom:25px;display:flex;align-items:center}.welcome-hero img{position:absolute;right:0;top:0;width:63%;height:100%;object-fit:cover;object-position:50% 66%}.welcome-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#eeeede 5%,#eeeede 30%,#eeeedecc 43%,transparent 69%)}.hero-copy{position:relative;z-index:1;padding:34px 35px;max-width:56%}.hero-copy .eyebrow{font-size:8px;letter-spacing:2.4px;color:#7e876d;margin-bottom:12px}.hero-copy h2{font:500 50px/.98 var(--serif);letter-spacing:-1.8px}.hero-copy p{font-size:10px;color:#838977;margin:15px 0 20px;max-width:235px}.hero-meta{position:absolute;bottom:22px;right:25px;z-index:2;color:#fff;font-size:9px;letter-spacing:2px;text-shadow:0 1px 10px #333}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:28px}.stat{padding:18px 21px;position:relative}.stat-label{font-size:9px;color:#8a8f7e;display:flex;justify-content:space-between;align-items:center}.stat-label svg{width:15px;height:15px;color:#a1ac92}.stat-value{font:500 37px/1.25 var(--serif);margin-top:5px;letter-spacing:-1px}.stat-foot{font-size:8px;color:#a0a594;margin-top:2px}.dashboard-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:22px}.section-link{font-size:9px;color:var(--green);font-weight:700;display:inline-flex;gap:7px;align-items:center}.section-link svg{width:13px;height:13px}.step{display:flex;align-items:flex-start;gap:13px;padding:16px 0;border-bottom:1px solid #f1f1eb}.step:last-child{border-bottom:0}.step-icon{width:35px;height:35px;display:grid;place-items:center;background:#f3f4ed;border-radius:10px;color:#7c8c6a}.step-icon svg{width:17px;height:17px}.step strong{display:block;font-size:10px;margin-bottom:3px}.step p{font-size:9px;color:#999d8d}.step .icon-btn{margin-left:auto;border:0;width:27px;background:transparent}.activity-row{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #f1f1eb;align-items:center}.activity-row:last-child{border:0}.activity-row .avatar{width:31px;height:31px;font-size:12px;background:#f0ebdf}.activity-row strong{font-size:10px}.activity-row p{font-size:9px;color:#9b9f91;margin-top:2px}.activity-row .badge{margin-left:auto}.quiet-note{font-size:9px;color:#a4a797;text-align:center;margin-top:27px;display:flex;justify-content:center;gap:6px;align-items:center}.quiet-note svg{width:13px;height:13px}.editor-layout{display:grid;grid-template-columns:minmax(340px,1fr) minmax(360px,.95fr);gap:28px;align-items:start}.editor-form .card{margin-bottom:18px}.editor-form .card-head{padding:17px 21px}.editor-form .card-head h2{font-size:22px}.editor-form .card-body{padding:20px}.field{display:block;margin-bottom:16px}.field:last-child{margin-bottom:0}.field-label{display:block;font-size:10px;color:#737a68;font-weight:600;margin-bottom:7px}.field input,.field textarea,.field select,.search-input{display:block;width:100%;border:1px solid #e5e7dd;background:#fff;border-radius:8px;padding:10px 12px;color:#49533f;font-size:11px;min-height:40px;transition:border .15s}.field input:hover,.field textarea:hover{border-color:#c2cab6}.field textarea{resize:vertical;min-height:85px;line-height:1.8}.field small{display:block;color:#9ba28f;font-size:9px;margin-top:6px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.template-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.template-option{position:relative;background:#fff;border:1px solid #e7e7de;border-radius:10px;text-align:left;padding:7px;overflow:hidden}.template-option.selected{border:2px solid #728365;padding:6px}.template-mini{height:116px;border-radius:6px;background:#ecebdd;overflow:hidden;position:relative;display:grid;place-items:center;text-align:center}.template-mini img{height:100%;width:100%;object-fit:cover;object-position:50% 64%}.template-mini:after{content:'';position:absolute;inset:0;background:#14201722}.template-mini-text{position:absolute;color:#fff;font:25px/.9 var(--serif);top:17px;left:0;right:0;z-index:1;text-shadow:0 2px 8px #0005}.template-mini.light{background:#f5f0e4}.template-mini.light:after{display:none}.template-mini.light .template-mini-text{color:#6d7758;top:26px;text-shadow:none}.template-mini.light:before{content:'✧';font-size:50px;color:#b7ba9b;position:absolute;right:7px;bottom:-5px}.template-option strong{font-size:10px;display:block;padding:10px 3px 0}.template-option small{font-size:8px;color:#9da18e;padding-left:3px}.template-check{position:absolute;right:13px;bottom:21px;width:16px;height:16px;border-radius:50%;background:var(--green);color:white;display:grid;place-items:center}.template-check svg{width:11px;height:11px}.color-swatches{display:flex;gap:8px}.swatch{height:27px;width:27px;border:3px solid white;border-radius:50%;outline:1px solid #e0e1d5;background:var(--swatch)}.swatch.selected{outline:2px solid #7a886b}.editor-preview{position:sticky;top:20px;background:#eeeee6;border:1px solid #e3e5d9;border-radius:15px;padding:17px 22px 22px;text-align:center}.preview-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.preview-toolbar .eyebrow{font-size:8px;color:#8d947f;letter-spacing:1.4px}.device-tabs{display:flex;gap:3px;border:1px solid #dce0d1;background:#f5f6f0;border-radius:6px;padding:3px}.device-tabs button{border:0;padding:4px 8px;border-radius:4px;background:transparent;color:#9da38f}.device-tabs button.active{background:white;color:#58654c;box-shadow:0 1px 4px #303b1c12}.device-tabs svg{width:13px;height:13px}.phone-frame{width:280px;height:550px;border:6px solid #313831;border-radius:33px;background:#fff;overflow:hidden;margin:0 auto;box-shadow:0 16px 35px #343b2524;position:relative}.phone-frame iframe{border:0;width:100%;height:100%;background:#ede9dc}.phone-frame:before{content:'';width:66px;height:12px;background:#313831;border-radius:0 0 8px 8px;position:absolute;top:0;left:50%;transform:translateX(-50%);z-index:3}.phone-frame.desktop-frame{width:100%;height:550px;border-width:4px;border-radius:12px}.phone-frame.desktop-frame:before{display:none}.preview-note{font-size:8px;color:#949b85;margin-top:16px;display:flex;align-items:center;justify-content:center;gap:5px}.preview-note svg{width:12px;height:12px}.preview-link{margin-top:15px;font-size:10px;color:#68765a;display:inline-flex;align-items:center;gap:7px}.blocks{display:flex;flex-direction:column;gap:9px}.block-row{display:flex;align-items:center;gap:9px;border:1px solid #e9eadf;border-radius:9px;padding:11px 10px;background:#fff}.block-row>.icon{color:#8d987e;display:grid;place-items:center;width:25px}.block-row strong{font-size:10px;display:block}.block-row small{font-size:8px;color:#a1a68f}.block-tools{display:flex;gap:3px;margin-left:auto}.block-tools .icon-btn{width:25px;height:27px;border:0;border-radius:4px}.block-tools .icon-btn svg{width:13px;height:13px}.switch{appearance:none;width:28px;height:17px;background:#d7dbcf;border-radius:20px;border:0;position:relative;cursor:pointer}.switch:checked{background:#738267}.switch:after{content:'';width:11px;height:11px;background:white;border-radius:50%;position:absolute;top:3px;left:3px;transition:transform .2s}.switch:checked:after{transform:translateX(11px)}.photo-field{position:relative;height:108px;background:#eee;border-radius:10px;overflow:hidden;cursor:pointer;display:block}.photo-field img{width:100%;height:100%;object-fit:cover;object-position:50% 57%;filter:brightness(.8)}.photo-field span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;color:#fff;font-size:10px;font-weight:600}.photo-field input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}.guest-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.search-wrap{position:relative;width:280px}.search-wrap svg{position:absolute;left:12px;top:12px;width:15px;height:15px;color:#8e977f}.search-input{padding-left:36px;background:white}.filter-tabs{display:flex;gap:5px;flex-wrap:wrap}.filter-tab{border:1px solid transparent;background:transparent;padding:8px 13px;font-size:10px;color:#919985;border-radius:7px}.filter-tab.active{background:var(--sage);color:#526346;border-color:#e0e5d5;font-weight:700}.table-wrap{overflow:auto}.guest-table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}.guest-table th{font-size:8px;letter-spacing:1px;text-transform:uppercase;color:#a0a690;font-weight:600;padding:16px 23px;border-bottom:1px solid var(--line);background:#fcfcf9}.guest-table td{padding:17px 23px;border-bottom:1px solid #f0f0e9;font-size:10px;color:#8d957e}.guest-table tr:last-child td{border:0}.guest-table td:first-child{color:#414c38}.guest-person{display:flex;align-items:center;gap:11px}.guest-person strong{font-size:10px;display:block}.guest-person small{font-size:8px;color:#a1a58f;display:block;margin-top:3px}.guest-person .avatar{width:31px;height:31px;font-size:12px}.table-actions{display:flex;gap:6px}.table-actions button{height:29px;width:29px;border:0;background:#f6f7f1;border-radius:6px;color:#8b9679}.table-actions svg{width:13px;height:13px}.table-footer{padding:17px 24px;display:flex;justify-content:space-between;font-size:9px;color:#a0a68f;border-top:1px solid var(--line)}.empty{text-align:center;padding:60px 20px;color:#98a089}.empty svg{width:32px;height:32px;margin-bottom:15px}.empty h3{font:28px var(--serif);color:#69765b;margin-bottom:7px}.empty p{font-size:11px}.empty .btn{margin-top:18px}.settings-layout{max-width:800px}.settings-layout .card{margin-bottom:20px}.info-banner{padding:15px 19px;border:1px solid #e0e5d4;border-radius:10px;background:#f0f3e9;color:#7a876a;font-size:10px;display:flex;align-items:flex-start;gap:10px;margin-bottom:22px}.info-banner svg{width:15px;height:15px;margin-top:1px}.task-row{display:flex;gap:12px;align-items:center;padding:16px 0;border-bottom:1px solid #f0f0e8}.task-row:last-child{border:0}.task-row input{accent-color:var(--green);width:16px;height:16px}.task-row strong{font-size:11px}.task-row small{display:block;font-size:9px;color:#a0a78f}.task-row.done strong{text-decoration:line-through;color:#9aa38c}.task-row .badge{margin-left:auto}.org-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.table-seating{width:145px;height:145px;border-radius:50%;border:1px solid #dce2d0;background:#eff2e7;margin:20px auto 30px;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#7e8b6b}.table-seating strong{font:24px var(--serif)}.table-seating small{font-size:9px}.seat{position:absolute;width:25px;height:25px;border-radius:50%;background:white;border:1px solid #dce1d0;display:grid;place-items:center;font-size:7px;top:calc(50% + var(--y));left:calc(50% + var(--x));transform:translate(-50%,-50%)}.seating-guests{display:flex;flex-wrap:wrap;gap:7px;justify-content:center}.seating-guests span{padding:5px 9px;background:#f1f3ea;border-radius:5px;font-size:9px;color:#7a8768}.wedding-card{display:grid;grid-template-columns:190px 1fr;overflow:hidden;max-width:700px}.wedding-card img{height:220px;width:100%;object-fit:cover;object-position:50% 68%}.wedding-card .card-body{display:flex;flex-direction:column;justify-content:center}.wedding-card h2{font:38px var(--serif);margin:5px 0}.wedding-card p{font-size:10px;color:#929b82}.wedding-card .btn{align-self:flex-start;margin-top:20px}.modal-backdrop{position:fixed;inset:0;z-index:100;background:#1c271a66;backdrop-filter:blur(5px);display:flex;justify-content:center;align-items:center;padding:20px}.modal{background:#fcfcf9;width:min(580px,100%);max-height:90dvh;overflow:auto;border-radius:18px;box-shadow:0 25px 100px #17221040}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:23px 27px;border-bottom:1px solid var(--line)}.modal-header h2{font:500 29px var(--serif)}.modal-body{padding:25px 27px}.modal-footer{display:flex;justify-content:flex-end;gap:9px;padding:17px 27px;border-top:1px solid var(--line);background:#f8f9f4}.person-form{background:#fff;padding:15px;border:1px solid var(--line);border-radius:10px;margin-bottom:12px}.person-form .spread{margin-bottom:10px}.person-form .eyebrow{font-size:8px;color:#9aa58b}.person-form .two-col{grid-template-columns:1.5fr 1fr}.form-error{font-size:10px;color:#a64a47;margin-bottom:12px}.copy-field{display:flex;gap:7px}.copy-field input{min-width:0;flex:1;border:1px solid var(--line);padding:10px;border-radius:7px;font-size:10px;background:white;color:#858e75}.share-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.share-options .btn{min-height:52px}.modal-description{font-size:11px;color:#88927a;line-height:1.9;margin-bottom:20px}.toast-visible{transform:translate(-50%,0)!important;opacity:1!important}#toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;z-index:200;background:#2e3a29;color:#fff;padding:12px 21px;border-radius:10px;font-size:11px;box-shadow:0 6px 25px #2222;transition:.2s;max-width:calc(100vw - 30px);text-align:center}.guest-page{--accent:#52634c;background:#f6f3eb;min-height:100vh}.guest-prototype{position:fixed;top:0;left:0;right:0;background:#fffef9ed;backdrop-filter:blur(10px);z-index:25;height:38px;display:flex;justify-content:space-between;align-items:center;padding:0 18px;border-bottom:1px solid #e4e3d7;font-size:9px;color:#8a907d}.guest-prototype a{display:flex;align-items:center;gap:6px;font-size:9px;color:#596c4b;font-weight:700}.guest-prototype svg{width:12px;height:12px}.guest-inner{max-width:650px;margin:auto;background:#fbf8f1;box-shadow:0 0 70px #15241008}.invitation-hero{height:100dvh;min-height:630px;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;overflow:hidden;color:white;padding:85px 26px 40px}.guest-page:not(.embedded) .invitation-hero{padding-top:110px}.invitation-hero .cover-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 65%;z-index:0}.invitation-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#1b261e66,#1b261e05 42%,#1b261e22 65%,#1720178c)}.hero-top,.hero-bottom{position:relative;z-index:1}.hero-top{width:100%}.invitation-overline{font-size:9px;letter-spacing:4px;font-weight:500;text-transform:uppercase;margin-bottom:22px}.invitation-names{font:400 64px/.9 var(--serif);letter-spacing:-2px}.invitation-names em{display:block;font-size:40px;margin:13px 0;font-weight:400}.invitation-date{display:inline-block;margin-top:27px;font-size:9px;letter-spacing:2.5px;border-top:1px solid #ffffff66;border-bottom:1px solid #ffffff66;padding:12px 4px}.hero-bottom{margin-top:auto}.hero-bottom .intro{font-size:10px;color:#ffffffe3;line-height:1.9;max-width:290px;margin:auto}.hero-bottom h2{font:400 29px/1.2 var(--serif);margin-top:10px}.scroll-hint{margin-top:27px;display:flex;align-items:center;flex-direction:column;gap:8px;font-size:7px;letter-spacing:2px;text-transform:uppercase;color:#ffffffb3}.scroll-hint svg{width:16px;height:16px}.guest-section{padding:65px 34px;text-align:center;position:relative;border-bottom:1px solid #e7e5d9}.guest-section h2{font:400 40px/1.1 var(--serif);letter-spacing:-.6px;margin:15px 0 20px;color:var(--accent)}.guest-section .section-icon{color:var(--accent);opacity:.8}.guest-section .section-icon svg{width:28px;height:28px;stroke-width:1}.guest-section p{font-size:12px;color:#858772;line-height:1.9;max-width:420px;margin:0 auto}.guest-section .tiny-label{font-size:8px;letter-spacing:2px;color:#9ca089;text-transform:uppercase;display:block;margin:22px 0 5px}.guest-section h3{font:500 26px var(--serif);color:#647153}.guest-section .btn{margin:18px auto 0;border-color:#dbe0ce;color:var(--accent);background:transparent}.guest-section:nth-child(even){background:#f2f0e6}.guest-section .leaf-rule{font:24px var(--serif);color:#aeb397;display:block;letter-spacing:8px;margin:25px auto 0}.rsvp-person{background:#fff9;border:1px solid #e2e4d5;border-radius:12px;padding:20px 16px;margin:18px auto;max-width:390px;text-align:left}.rsvp-person strong{font:500 25px var(--serif);color:#5c6e50}.rsvp-options{display:grid;grid-template-columns:repeat(3,1fr);background:#eeeee3;border-radius:8px;padding:4px;gap:3px;margin-top:13px}.rsvp-option{background:transparent;border:1px solid transparent;border-radius:6px;padding:9px 3px;font-size:9px;color:#969e88;display:flex;justify-content:center;align-items:center;gap:4px}.rsvp-option svg{width:12px;height:12px}.rsvp-option.selected{background:white;color:var(--accent);border-color:#dce1ce;box-shadow:0 1px 4px #26331808}.rsvp-person .field{margin-top:14px}.rsvp-person .field-label{font-size:9px}.rsvp-note{font-size:9px!important;color:#a3a48e!important}.countdown{display:flex;justify-content:center;gap:22px;margin-top:25px}.countdown strong{font:400 38px var(--serif);color:var(--accent);display:block}.countdown span{font-size:8px;letter-spacing:1px;color:#969d82;display:block}.guest-footer{padding:28px;text-align:center;background:#eaeedf;color:#899779;font-size:9px;letter-spacing:1px}.guest-footer .brand-name{font-size:24px;color:#697c58;display:block;margin-bottom:7px}.timeline{margin-top:25px;display:grid;gap:22px}.timeline-item{display:grid;grid-template-columns:65px 1fr;text-align:left;gap:17px;border-left:1px solid #d8ddc7;padding-left:20px;position:relative}.timeline-item:before{content:'';width:7px;height:7px;border:2px solid var(--accent);background:#f8f7ee;border-radius:50%;position:absolute;left:-5px;top:8px}.timeline-item strong{font:23px var(--serif);color:var(--accent)}.timeline-item p{font-size:11px}.guest-gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.guest-gallery img{height:210px;width:100%;object-fit:cover;border-radius:90px 90px 3px 3px;object-position:50% 65%}.guest-gallery img:last-child{border-radius:3px 3px 90px 90px;object-position:30% 90%;filter:grayscale(1)}.invitation-light .invitation-hero{background:#eeedde;color:#667453}.invitation-light .invitation-hero:after{background:radial-gradient(ellipse at 50% 20%,transparent 30%,#e9ebdcaa 100%)}.invitation-light .cover-photo{inset:auto;top:36%;width:75%;height:43%;border-radius:150px 150px 4px 4px;object-position:50% 70%}.invitation-light .invitation-names{font-size:58px}.invitation-light .invitation-names em{font-size:26px;margin:5px}.invitation-light .invitation-date{border-color:#a5b08f;margin-top:18px}.invitation-light .hero-bottom .intro,.invitation-light .scroll-hint{color:#869575}.embedded .guest-inner{box-shadow:none}.embedded .invitation-hero{min-height:510px;padding:57px 16px 20px}.embedded .invitation-names{font-size:46px}.embedded .invitation-names em{font-size:28px;margin:10px}.embedded .invitation-overline{font-size:7px;margin-bottom:16px}.embedded .invitation-date{font-size:7px;margin-top:20px;padding:9px}.embedded .hero-bottom .intro{font-size:8px}.embedded .hero-bottom h2{font-size:23px}.embedded .scroll-hint{margin-top:16px;font-size:6px}.embedded .guest-section{padding:40px 18px}.embedded .guest-section h2{font-size:32px}.embedded .guest-section p{font-size:10px}.embedded .countdown{gap:15px}.embedded .countdown strong{font-size:27px}.envelope-screen{position:fixed;inset:0;background:#eef0e6;z-index:70;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:25px;text-align:center;transition:opacity .6s,transform .6s}.envelope-screen.opening{opacity:0;transform:scale(1.05);pointer-events:none}.envelope-screen>.eyebrow{font-size:8px;letter-spacing:3px;color:#909b82;margin-bottom:25px}.envelope-screen h1{font:400 48px/1.2 var(--serif);color:#596c4d;margin-bottom:30px}.envelope{width:280px;height:180px;background:#d7dec8;position:relative;border:1px solid #c7d0b8;box-shadow:0 20px 40px #3c4b2020;cursor:pointer;border-radius:3px}.envelope:before{content:'';position:absolute;inset:0;background:#e3e7d8;clip-path:polygon(0 0,100% 0,50% 58%)}.envelope:after{content:'';position:absolute;inset:0;background:#dfe4d4;clip-path:polygon(0 100%,0 12%,50% 65%,100% 12%,100% 100%)}.wax-seal{position:absolute;width:54px;height:54px;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-30%);background:#667857;box-shadow:0 3px 8px #35442344,inset 0 0 0 4px #748764;z-index:1;display:grid;place-items:center;color:#edf0e1;font:italic 23px var(--serif);border:1px solid #53654a}.envelope-hint{margin-top:34px;color:#8f9b7f;font-size:8px;letter-spacing:2px}.envelope-screen .small-note{font-size:9px;max-width:290px;margin-top:15px;color:#a3ab96}.demo-header-note{font-size:9px;color:#98a18c;max-width:320px;line-height:1.8}.new-wedding{border:1px dashed #c7d0b9;background:#f2f4eb;border-radius:15px;padding:25px;display:flex;align-items:center;gap:20px;max-width:700px;margin-top:20px}.new-wedding svg{width:26px;height:26px;color:#7a8c67}.new-wedding h3{font:25px var(--serif);color:#667953}.new-wedding p{font-size:10px;color:#9aa58b}.new-wedding .btn{margin-left:auto}.guest-error{max-width:500px;margin:15vh auto;padding:35px;text-align:center}.guest-error h1{font:45px var(--serif);margin-bottom:15px}.guest-error p{color:var(--muted);margin-bottom:20px}
@media(min-width:1500px){.main{padding-top:45px}.editor-layout{grid-template-columns:minmax(370px,1.05fr) minmax(390px,.95fr)}.phone-frame{height:620px;width:315px}.editor-preview{padding-bottom:25px}.welcome-hero{height:320px}.hero-copy h2{font-size:59px}}
@media(max-width:1150px){.sidebar{width:195px;padding-left:12px;padding-right:12px}.workspace{margin-left:195px}.main{padding:28px 25px}.topbar{padding:0 25px}.editor-layout{grid-template-columns:minmax(300px,1fr) minmax(310px,.9fr);gap:18px}.editor-preview{padding-left:12px;padding-right:12px}.phone-frame{width:255px;height:520px}.hero-copy h2{font-size:42px}.hero-copy{padding:25px}.guest-table td,.guest-table th{padding-left:16px;padding-right:16px}.topbar .save-status{display:none}}
@media(max-width:950px){.sidebar{width:175px;padding-left:9px;padding-right:9px}.brand{padding-left:8px;gap:8px}.brand-name{font-size:27px}.brand-mark{width:30px;height:30px}.nav-link{padding:12px 10px;font-size:10px;gap:8px}.workspace{margin-left:175px}.main{padding:25px 20px}.topbar{padding:0 20px}.editor-layout{grid-template-columns:1fr}.editor-preview{position:relative;top:0;max-width:460px;margin:auto;width:100%}.phone-frame{width:280px;height:550px}.dashboard-grid{grid-template-columns:1fr}.welcome-hero{height:265px}.hero-copy h2{font-size:39px}.stats{gap:9px}.stat{padding:14px}.stat-label{font-size:8px}.stat-value{font-size:31px}.org-grid{grid-template-columns:1fr}.page-heading h1{font-size:34px}.page-heading>.flex{flex-wrap:wrap;justify-content:flex-end;gap:7px}.guest-toolbar{flex-wrap:wrap}.search-wrap{width:100%}.page-heading{gap:10px}.guest-table .group-col{display:none}}
@media(max-width:680px){.sidebar{display:none}.workspace{margin-left:0;padding-bottom:75px}.topbar{height:58px;padding:0 18px;background:#fff}.breadcrumbs{font-size:9px;gap:7px}.top-actions{gap:7px}.topbar .btn{font-size:9px;padding:7px 10px;min-height:32px}.topbar .avatar{display:none}.mobile-header{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:40;background:#ffffffed;backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:9px 5px max(10px,env(safe-area-inset-bottom));justify-content:space-around;gap:2px}.mobile-header a{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:8px;color:#9ba58c;min-width:55px}.mobile-header a.active{color:var(--green);font-weight:700}.mobile-header svg{width:19px;height:19px}.main{padding:24px 17px 35px}.page-heading{align-items:flex-start;margin-bottom:22px}.page-heading h1{font-size:33px}.page-heading p{font-size:9px;max-width:220px}.page-heading .btn{min-height:34px;padding:8px 10px;font-size:9px;white-space:nowrap}.page-heading .btn svg{width:14px;height:14px}.page-heading .eyebrow{font-size:7px}.welcome-hero{height:290px;margin-bottom:18px}.welcome-hero img{width:75%;object-position:53% 67%}.welcome-hero:after{background:linear-gradient(90deg,#eeeede 0%,#eeeede 20%,#eeeedece 36%,#eeeede11 75%)}.hero-copy{max-width:73%;padding:25px 20px}.hero-copy h2{font-size:43px}.hero-copy p{font-size:9px;max-width:170px}.hero-copy .eyebrow{font-size:7px;max-width:160px;line-height:1.8}.hero-copy .btn{font-size:9px;min-height:35px;padding:8px 11px}.hero-meta{font-size:7px;right:15px;bottom:15px;letter-spacing:1px}.stats{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px}.stat{padding:15px 17px}.stat-value{font-size:34px}.stat-label{font-size:9px}.stat-foot{font-size:8px}.dashboard-grid{gap:17px}.card-head{padding:18px 19px}.card-head h2{font-size:23px}.card-body{padding:18px 20px}.step{padding:14px 0}.quiet-note{font-size:8px}.editor-layout{gap:20px}.editor-form .card-body{padding:18px}.editor-preview{max-width:100%;padding:17px}.phone-frame{width:280px;height:550px;max-width:100%}.editor-form .card-head{padding:16px 18px}.guest-table th{font-size:7px;padding:13px 12px}.guest-table td{padding:15px 12px;font-size:9px}.guest-table .status-col{padding-left:3px;padding-right:4px}.guest-table .table-actions{gap:2px}.table-actions button{width:25px}.guest-person{gap:8px}.guest-person .avatar{width:27px;height:27px;font-size:11px}.guest-person strong{font-size:9px}.guest-person small{font-size:7px}.badge{font-size:8px;padding:4px 7px}.guest-toolbar{margin-bottom:16px;gap:12px}.filter-tabs{gap:3px}.filter-tab{padding:7px 10px;font-size:9px}.table-footer{padding:14px 16px;font-size:8px}.two-col{gap:10px}.modal-backdrop{padding:12px}.modal{max-height:94dvh;border-radius:14px}.modal-header{padding:19px}.modal-header h2{font-size:26px}.modal-body{padding:20px}.modal-footer{padding:16px 20px}.modal-description{font-size:10px}.share-options{grid-template-columns:1fr}.wedding-card{grid-template-columns:120px 1fr}.wedding-card h2{font-size:30px}.wedding-card .card-body{padding:18px}.wedding-card img{height:220px}.new-wedding{padding:18px;gap:13px;flex-wrap:wrap}.new-wedding h3{font-size:23px}.new-wedding .btn{margin-left:0}.org-grid{gap:18px}#toast{bottom:87px;font-size:10px}.guest-page #toast{bottom:20px}.guest-prototype{font-size:8px;padding:0 12px}.guest-prototype a{font-size:8px}.guest-section{padding:55px 25px}.guest-section p{font-size:11px}.guest-section h2{font-size:37px}.invitation-hero{min-height:640px}.guest-page:not(.embedded) .invitation-hero{padding-top:100px}.invitation-names{font-size:66px}.guest-page.embedded .invitation-hero{min-height:510px}.guest-inner{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.brand-sub{display:block}.brand-mark{flex-shrink:0}
.direct-intro{margin-top:0;margin-bottom:8px}.direct-sample{display:flex;align-items:center;gap:10px;padding:14px;background:#f2f5ec;border:1px solid #dfe6d5;border-radius:10px}.direct-song-info{display:block;flex:1;min-width:0}.direct-song-info strong{display:block;font-size:10px;line-height:1.5}.direct-song-info small{display:block;font-size:9px;line-height:1.6;color:#8a947b}.direct-preview{width:32px;height:32px;flex-shrink:0;border-radius:50%;color:var(--green)}.direct-preview svg{width:14px;height:14px}.direct-preview.preview-playing{background:var(--green);color:white;border-color:var(--green)}.direct-preview:disabled{opacity:.3}.direct-catalog-help{padding:11px 14px;font-size:9px;line-height:1.7;color:#92997f;background:#fcfcf9;border-top:1px solid var(--line)}.direct-song-list{max-height:355px}.direct-song-row{display:flex;align-items:center;gap:9px;min-height:80px;padding:13px 12px;border-top:1px solid #efefe7;background:#fff}.direct-song-row.song-selected{background:var(--sage);box-shadow:inset 3px 0 var(--green)}.direct-song-row .song-number{width:21px}.direct-song-actions{display:flex;gap:5px;align-items:center;flex-shrink:0}.direct-song-actions .btn{font-size:8px;padding:5px 8px;min-height:31px}.direct-song-actions .direct-preview{width:29px;height:29px}.direct-song-upload{position:relative;overflow:hidden;cursor:pointer}.direct-song-upload input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.direct-audio-status{display:block;margin-top:3px;font-size:8px;color:#b29c78;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.direct-audio-status.audio-ready{color:#81956b}.direct-selected-preview{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0 18px;font-size:10px;color:#7f8d6f}.direct-missing{padding:12px 14px;background:#f8f0e5;color:#9d855e;border-radius:9px;font-size:10px;line-height:1.8;margin-bottom:15px}.direct-sample .btn{font-size:9px;min-height:32px;padding:6px 11px}@media(max-width:420px){.direct-song-row{gap:5px;padding-left:7px;padding-right:7px}.direct-song-row .song-number{width:17px;font-size:14px}.direct-song-actions{gap:3px}.direct-song-actions .btn{padding:5px 6px;font-size:7px}.direct-song-info strong{font-size:9px}.direct-song-info small{font-size:8px}.direct-song-actions .direct-preview{width:26px;height:26px}.direct-audio-status{font-size:7px}.direct-catalog summary{font-size:9px;padding-left:11px;padding-right:11px}}
.music-catalog-intro{font:500 22px/1.2 var(--serif);margin:0 0 18px}.song-catalog{margin:18px 0 22px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.song-catalog summary{display:flex;justify-content:space-between;gap:8px;padding:13px 14px;background:#f7f8f3;font-size:10px;font-weight:700;cursor:pointer}.song-catalog summary span{font-size:8px;color:#7b8b6c;font-weight:500}.song-list{max-height:275px;overflow:auto;scrollbar-width:thin;scrollbar-color:#c9d0bf transparent}.song-choice{display:flex;align-items:center;gap:11px;width:100%;padding:12px 13px;border:0;border-top:1px solid #efefe7;background:#fff;text-align:left;color:var(--ink);min-height:59px}.song-choice:hover{background:#f5f7f0}.song-choice.song-selected{background:var(--sage);box-shadow:inset 3px 0 var(--green)}.song-number{display:grid;place-items:center;width:25px;height:29px;flex-shrink:0;font:500 17px var(--serif);color:#8b967d}.song-selected .song-number{color:var(--green)}.song-info{flex:1;min-width:0}.song-info strong{display:block;font-size:10px;font-weight:700}.song-info small{display:block;font-size:9px;color:#8d957f;margin-top:2px}.song-mood{font-size:7px;background:#f4f3ed;border-radius:20px;padding:4px 6px;color:#8f967f;white-space:nowrap}.song-preview{padding:14px;background:#f5f6ef;border-radius:10px;border:1px solid var(--line);margin-bottom:18px}.song-selected-title{display:flex;gap:7px;align-items:center;font-size:10px;margin-bottom:12px;color:#6c775e}.song-selected-title svg{width:17px;height:17px}.spotify-frame{display:block;border:0;border-radius:12px;width:100%;height:152px;background:#202020}.song-service-link{display:inline-block;font-size:9px;color:var(--green);font-weight:700;margin-top:9px}.music-provider-note{display:flex;align-items:flex-start;gap:9px;padding:13px;border-radius:9px;background:#f5f4ec;color:#8a927f;margin-top:18px;font-size:9px;line-height:1.8}.music-provider-note svg{width:17px;height:17px;margin-top:2px}.music-service-panel{position:fixed;z-index:45;bottom:20px;right:20px;width:340px;max-width:calc(100vw - 40px);background:#fffef8f5;border:1px solid #ffffff70;border-radius:17px;box-shadow:0 5px 30px #202b202a;backdrop-filter:blur(12px);overflow:hidden}.music-service-toggle{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:0;background:transparent;text-align:left;color:var(--green)}.music-service-toggle>span:nth-child(2){flex:1;min-width:0}.music-service-toggle strong{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.music-service-toggle small{display:block;font-size:8px;opacity:.75;margin-top:2px}.service-toggle-icon{font-size:22px;line-height:1}.service-toggle-icon svg{width:17px;height:17px}.music-service-body{padding:0 9px 10px}.music-service-body[hidden]{display:none}.embedded .music-service-panel{bottom:10px;right:10px;max-width:calc(100% - 20px)}.embedded .music-service-toggle{padding:7px 8px;gap:7px}.embedded .music-service-toggle strong{font-size:10px}.embedded .music-service-toggle small{font-size:7px}.embedded .music-service-toggle .music-disc{width:28px;height:28px}.embedded .song-mood{display:none}
.music-enable,.music-autoplay{font-size:11px;color:#68745e}.music-enable{margin-bottom:20px}.music-editor-actions{display:flex;gap:9px;flex-wrap:wrap}.music-upload{position:relative;overflow:hidden;cursor:pointer}.music-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}.music-helper{font-size:9px;line-height:1.8;color:#8a927f;margin-top:10px}.music-autoplay{margin:22px 0}.music-volume .field-label{display:flex;justify-content:space-between}.music-volume input[type=range]{accent-color:var(--green);min-height:24px;padding:0;border:0}.music-disabled{opacity:.5}.invitation-music{position:fixed;right:22px;bottom:22px;z-index:45;display:flex;align-items:center;gap:10px;border:1px solid #ffffff60;padding:9px 12px 9px 9px;border-radius:50px;background:#fffef6eb;box-shadow:0 4px 24px #26302022;backdrop-filter:blur(12px);color:#52634c;text-align:left}.music-disc{width:35px;height:35px;border-radius:50%;background:#52634c;color:#fff;display:grid;place-items:center}.music-disc svg{width:18px;height:18px}.invitation-music strong{display:block;font-size:10px}.invitation-music small{display:block;font-size:8px;opacity:.7}.music-play-icon svg{width:17px;height:17px}.music-playing .music-disc{animation:music-turn 8s linear infinite}.embedded .invitation-music{right:10px;bottom:10px;padding:6px}.embedded .invitation-music>span:nth-child(2){display:none}.embedded .music-disc{width:28px;height:28px}.embedded .music-play-icon{padding-right:4px}@keyframes music-turn{to{transform:rotate(360deg)}}
@media(max-width:680px){.welcome-hero{height:350px}.hero-copy{max-width:78%;padding:22px 20px}.hero-copy h2{font-size:34px;line-height:1.02}.hero-copy p{display:none}.hero-copy .btn{margin-top:24px}}
