@charset "UTF-8";
:root{--green:#123c30;--deep:#092b23;--gold:#d4b474;--gold-ink:#8a662b;--ink:#233c32;--muted:#6d7870;--paper:#fff;--canvas:#f5f5ef;--line:#e2e5dc;--danger:#a83f3d;--soft:#edf3ec;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--shadow:0 14px 46px #123c3010}
*{box-sizing:border-box}body{margin:0;font:14px/1.6 var(--sans);color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.5}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.15}h1,h2{font-family:var(--serif);font-weight:400}h1{font-size:36px;letter-spacing:-1px}h2{font-size:25px;letter-spacing:-.5px}h3{font-size:16px}small{font-size:12px}svg{width:20px;height:20px;flex-shrink:0}button svg{vertical-align:middle}input,select,textarea{width:100%;background:white;border:1px solid #d5ddd2;border-radius:9px;padding:11px 12px;color:var(--ink);min-width:0}textarea{min-height:105px;resize:vertical;line-height:1.55}input[type=color]{height:44px;padding:5px;cursor:pointer}input[type=checkbox],input[type=radio]{width:18px;height:18px;accent-color:var(--green);flex-shrink:0}input[type=range]{padding:0;accent-color:var(--green);height:28px}input:focus,select:focus,textarea:focus{outline:3px solid #d7e6d7;border-color:#547662}button:focus-visible,a:focus-visible{outline:3px solid #b38d42;outline-offset:4px}button:disabled:focus-visible{outline:none}label{display:block;font-size:12px;font-weight:700;margin-bottom:6px}label small{font-weight:400;color:var(--muted)}.field{margin-bottom:17px}.field:last-child{margin-bottom:0}.help{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.5}.row{display:flex;gap:12px;align-items:center}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.span-2{grid-column:1/-1}.mt{margin-top:20px}.muted{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:1.8px;text-transform:uppercase;font-weight:700;color:var(--gold-ink);margin-bottom:8px}.btn{border:1px solid var(--green);background:var(--green);color:white;border-radius:8px;padding:11px 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.4;font-weight:600;min-height:43px}.btn:hover{background:#205341}.btn.secondary{background:white;color:var(--green);border-color:#d4ddd2}.btn.secondary:hover{background:var(--soft)}.btn.gold{background:var(--gold);border-color:var(--gold);color:var(--deep)}.btn.small{padding:8px 12px;min-height:36px;font-size:12px}.btn.danger{background:#fff8f7;border-color:#eccdca;color:var(--danger)}.text-btn{border:0;background:none;color:var(--green);font-size:12px;font-weight:700;padding:9px 5px;display:inline-flex;gap:7px;align-items:center}.icon-btn{border:1px solid var(--line);border-radius:7px;background:white;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.icon-btn:hover{background:var(--soft)}.icon-btn.danger{color:var(--danger)}.pill{font-size:10px;font-weight:700;border-radius:30px;padding:5px 9px;display:inline-flex;gap:5px;align-items:center;line-height:1.5;background:var(--soft);color:#3c684c;white-space:nowrap}.pill.pending{background:#faf0d9;color:#8b6726}.pill.declined{background:#faeae7;color:#a04740}.pill.neutral{background:#eff0ed;color:#657069}.notice{background:#eef3eb;border:1px solid #d7e2d1;border-radius:10px;padding:13px 16px;font-size:12px;line-height:1.65;color:#486245}.notice.warn{background:#fbf4e4;border-color:#ecdfc0;color:#85672e}.error{color:var(--danger);font-size:12px;min-height:0}.error:not(:empty){background:#fff0ed;border-radius:7px;padding:9px 12px;margin:12px 0}.skip-link{position:absolute;top:-100px;left:10px;z-index:500;padding:12px;background:white}.skip-link:focus{top:10px}.demo-bar{min-height:31px;background:#e9e9de;color:#53634f;font-size:10px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:6px 30px}.demo-bar strong{letter-spacing:1.2px;font-size:9px}.live-dot{display:inline-block;width:6px;height:6px;background:#749266;border-radius:50%;margin-right:7px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:18px;background:white;padding:10px 30px;border-bottom:1px solid var(--line);min-height:83px}.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}.brand img{width:59px;height:59px;object-fit:contain}.brand>span{font:23px/1.2 var(--serif)}.brand small{display:block;letter-spacing:1.4px;font:7px/2.3 var(--sans);color:#7d8678}.site-nav{display:flex;align-items:center;gap:22px;font-size:11px;font-weight:500}.site-nav a:hover{color:var(--gold-ink)}.site-nav button{font-size:11px;background:transparent;border:0;font-weight:700;padding:10px 0;position:relative}.site-nav-active:after{content:'';position:absolute;bottom:-22px;left:0;right:0;height:3px;background:var(--gold)}.site-nav-active span{color:var(--gold-ink);font-size:7px;vertical-align:top;margin-left:3px}.workspace-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:11px 30px;background:#fff;border-bottom:1px solid var(--line)}.mode-tabs{display:flex;gap:4px;border:1px solid var(--line);border-radius:8px;padding:3px;background:#f7f8f4}.mode-tabs button{border:0;border-radius:5px;background:transparent;font-size:11px;padding:7px 14px;color:var(--muted)}.mode-tabs button.active{background:var(--green);color:white}.app-shell{display:grid;grid-template-columns:215px minmax(0,1fr);min-height:calc(100vh - 173px)}.sidebar{background:var(--green);color:#eef1e8;padding:29px 18px;display:flex;flex-direction:column;gap:24px}.event-badge{border-bottom:1px solid #ffffff21;padding:0 10px 23px}.event-badge .eyebrow{color:#b6c8b4;letter-spacing:1.6px;font-size:9px}.event-badge strong{display:block;font:23px/1.2 var(--serif);margin-bottom:10px}.event-badge span{font-size:10px;color:#bcccba}.side-nav{display:grid;gap:6px}.side-nav button{border:0;text-align:left;display:flex;align-items:center;gap:11px;border-radius:8px;color:#d0ddca;background:transparent;padding:12px 13px;font-size:12px}.side-nav button svg{width:18px;height:18px}.side-nav button:hover{background:#ffffff0a}.side-nav button.active{background:#e1c48c;color:var(--deep);font-weight:700}.side-bottom{margin-top:auto;border-top:1px solid #ffffff21;padding:20px 10px 2px;font-size:11px;color:#bbcfb6}.side-bottom strong{color:#e4e9dc;display:block;font:20px var(--serif);margin-bottom:9px}.main{padding:31px clamp(22px,3vw,46px) 50px;min-width:0}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.page-heading p{color:var(--muted);font-size:12px;margin-top:9px}.card{background:white;border:1px solid var(--line);border-radius:13px;box-shadow:0 3px 10px #123c3003}.card-pad{padding:23px}.card-title{padding:20px 23px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px}.card-title h3{font-size:14px;font-weight:600}.card-title .step{width:24px;height:24px;border-radius:50%;font-size:10px;display:inline-flex;align-items:center;justify-content:center;background:var(--soft);color:#55714b;margin-right:7px}.editor-grid{display:grid;grid-template-columns:minmax(300px,.92fr) minmax(340px,1.15fr);gap:25px;align-items:start}.editor-tabs{padding:6px;display:flex;gap:3px;border-bottom:1px solid var(--line)}.editor-tabs button{flex:1;border:0;background:transparent;padding:11px 6px;font-size:11px;color:var(--muted);border-radius:7px}.editor-tabs button.active{background:var(--soft);color:var(--green);font-weight:700}.form-body{padding:22px}.url-field{display:flex;align-items:center;gap:0;border:1px solid #d5ddd2;border-radius:9px;background:#f9faf6;padding-left:11px;font-size:11px;color:#687661;overflow:hidden}.url-field input{border:0;border-radius:0;background:white;font-size:12px;padding-left:3px}.url-field span{white-space:nowrap}.field-prefix{margin-top:6px;display:flex;align-items:center;gap:5px}.completion{display:flex;gap:14px;align-items:center;padding:18px 20px;background:#f0f3e9;border-radius:10px;margin-top:16px}.completion .circle{width:36px;height:36px;border:1px solid #c8d4bd;display:grid;place-items:center;border-radius:50%;flex-shrink:0;color:#6e855b}.completion strong{font-size:12px}.completion p{font-size:11px;color:#6a7861;margin-top:1px}.preview-column{position:sticky;top:18px;min-width:0}.preview-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:10px;letter-spacing:1.1px;font-weight:700;color:#6b7766}.device-tabs{display:flex;gap:2px;background:#eaece3;padding:3px;border-radius:7px}.device-tabs button{border:0;background:transparent;padding:4px 8px;color:#76836c;border-radius:4px}.device-tabs button svg{width:15px;height:15px}.device-tabs .active{background:white;color:var(--green);box-shadow:0 1px 3px #0001}.preview-frame{background:#fff;border:1px solid #d8ded1;border-radius:13px;overflow:hidden;box-shadow:var(--shadow);width:100%;margin:auto;transition:max-width .2s}.preview-frame.phone{max-width:310px}.browser-bar{display:flex;align-items:center;gap:10px;background:#f9faf7;padding:11px 13px;border-bottom:1px solid #e7e9e0}.browser-dots{display:flex;gap:4px}.browser-dots i{display:block;width:5px;height:5px;background:#d7dbcf;border-radius:50%}.browser-url{font-size:8px;text-align:center;flex:1;color:#77846b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-caption{text-align:center;font-size:10px;color:var(--muted);margin-top:12px}.event-mini .public-nav{padding:12px 18px;min-height:45px;gap:8px}.event-mini .monogram{font-size:16px}.event-mini .public-links{font-size:7px;gap:12px}.event-mini .event-hero{min-height:352px;padding:45px 22px}.event-mini .hero-title{font-size:clamp(33px,3.6vw,52px)!important;line-height:1.15}.event-mini .hero-kicker{font-size:8px;letter-spacing:2.3px}.event-mini .hero-subtitle{font-size:11px!important;max-width:280px}.event-mini .hero-meta{font-size:9px}.event-mini .hero-button{font-size:8px;padding:9px 14px}.event-mini .hero-divider{width:40px;margin:16px auto}.event-mini .hero-content{gap:13px}.event-mini .mini-message{padding:26px 23px;text-align:center}.event-mini .mini-message h3{font:23px var(--serif);margin-bottom:9px}.event-mini .mini-message p{font-size:10px!important;line-height:1.7;color:#74806d}.event-mini .mini-info{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin:0 20px;padding:14px 0;gap:10px}.event-mini .mini-info div{font-size:9px;text-align:center;color:var(--muted)}.event-mini .mini-info strong{font-size:10px;color:var(--green);display:block;margin-bottom:3px}.preview-frame.phone .public-links{display:none}.preview-frame.phone .hero-title{font-size:36px!important}.preview-frame.phone .event-hero{min-height:370px}.swatches{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.theme-choice{padding:12px 9px;text-align:left;border:1px solid var(--line);background:white;border-radius:9px;font-size:10px}.theme-choice.active{border-color:var(--green);box-shadow:0 0 0 1px var(--green)}.theme-choice .swatch{display:flex;margin-bottom:8px}.swatch i{width:18px;height:18px;border:2px solid white;margin-left:-3px;border-radius:50%}.format-bar{display:flex;gap:6px;flex-wrap:wrap}.format-bar button{width:38px;height:37px;border:1px solid var(--line);background:white;border-radius:7px;font-size:15px}.format-bar button.active{background:var(--green);color:white;border-color:var(--green)}.format-bar select{width:auto;flex:1;font-size:12px;min-width:110px;padding:8px}.format-bar input[type=color]{width:43px;height:37px}.upload-box{border:1px dashed #abbba1;border-radius:12px;padding:20px;text-align:center;background:#f9faf5;cursor:pointer;position:relative;overflow:hidden;display:block}.upload-box svg{width:28px;height:28px;display:block;margin:0 auto 10px;color:#6f8864}.upload-box strong{display:block;font-size:12px}.upload-box small{display:block;margin-top:5px;color:var(--muted);font-weight:400}.cover-thumb{width:100%;height:145px;object-fit:cover;border-radius:8px;margin-bottom:14px}.file-label input{position:absolute;width:1px;height:1px;opacity:0}.file-label:focus-within{outline:3px solid #b8cba9;outline-offset:3px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:24px}.metric{padding:18px 20px;background:white;border:1px solid var(--line);border-radius:11px}.metric>span{color:var(--muted);font-size:11px}.metric strong{display:block;font:35px/1.3 var(--serif);margin:8px 0 2px}.metric small{font-size:10px;color:var(--muted)}.metric.highlight{background:var(--green);border-color:var(--green);color:#fff}.metric.highlight span,.metric.highlight small{color:#c5d4bc}.toolbar{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:18px}.search-field{max-width:370px;position:relative;flex:1}.search-field svg{position:absolute;top:12px;left:12px;color:#819075;width:17px}.search-field input{padding-left:37px;font-size:12px}.filter-select{max-width:160px;font-size:12px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{text-align:left;text-transform:uppercase;font-size:9px;letter-spacing:.9px;color:#7c8971;background:#f9faf6;font-weight:600;padding:12px 19px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:17px 19px;border-bottom:1px solid #eef0e9;vertical-align:middle}tr:last-child td{border-bottom:0}td strong{display:block;font-size:12px;color:var(--green)}td small{display:block;font-size:10px;color:var(--muted);margin-top:3px;max-width:270px}.table-actions{display:flex;gap:6px;justify-content:flex-end}.check-row{display:flex;gap:10px;align-items:center;font-weight:400;font-size:12px;margin:0}.switch-row{display:flex;justify-content:space-between;gap:18px;align-items:center}.switch{position:relative;display:inline-flex;align-items:center;margin:0;flex-shrink:0}.switch input{position:absolute;opacity:0}.switch span{width:39px;height:23px;background:#ccd4c7;border-radius:20px;position:relative}.switch span:before{content:'';width:17px;height:17px;position:absolute;left:3px;top:3px;background:white;border-radius:50%;transition:transform .15s}.switch input:checked+span{background:var(--green)}.switch input:checked+span:before{transform:translateX(16px)}.switch input:focus-visible+span{outline:3px solid var(--gold);outline-offset:2px}.page-list{display:grid;gap:12px}.page-card{padding:17px 19px;display:flex;gap:16px;align-items:center}.page-icon{width:43px;height:43px;border-radius:10px;background:var(--soft);display:grid;place-items:center;color:#63805a;flex-shrink:0}.page-card h3{font-size:13px;margin-bottom:5px}.page-card p{font-size:11px;color:var(--muted)}.page-card .page-copy{flex:1;min-width:0}.page-card .page-copy p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:370px}.page-card.disabled{opacity:.68}.pages-layout{display:grid;grid-template-columns:1fr 290px;gap:23px}.section-aside{background:#eaeede;border:1px solid #dbe3d0;border-radius:12px;padding:25px;align-self:start}.section-aside h2{font-size:26px;margin:12px 0}.section-aside p{font-size:12px;color:#69785c}.section-aside ul{font-size:12px;color:#516548;padding-left:18px;line-height:2.2;margin-bottom:0}.tables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}.table-card{padding:21px}.table-shape{width:77px;height:77px;border-radius:50%;border:7px double #d9dfcd;background:#f0f3e8;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:18px auto;color:#587149}.table-shape strong{font:21px var(--serif)}.table-shape small{font-size:8px}.table-card .family-line{padding:9px 0;border-bottom:1px solid #edf0e6;display:flex;justify-content:space-between;font-size:11px;gap:10px}.capacity-bar{height:4px;background:#e9ede0;border-radius:10px;overflow:hidden;margin:12px 0}.capacity-bar>span{display:block;height:100%;background:#789363}.capacity-bar.over>span{background:var(--danger)}.empty{text-align:center;padding:35px 20px;color:var(--muted);font-size:12px}.empty svg{width:31px;height:31px;margin-bottom:10px;color:#9aab8d}.empty strong{display:block;color:var(--ink);margin-bottom:5px}.access-card{display:flex;align-items:center;gap:13px;border-bottom:1px solid var(--line);padding:18px 0}.access-card:last-child{border-bottom:0}.avatar{width:39px;height:39px;border-radius:50%;background:#e8eddf;color:#637a54;display:grid;place-items:center;font-size:13px;font-family:var(--serif);flex-shrink:0}.access-card .grow{flex:1;min-width:0}.access-card strong{font-size:12px;display:block;word-break:break-word}.access-card small{color:var(--muted);font-size:10px}.admin-layout{display:grid;grid-template-columns:minmax(300px,440px) minmax(300px,1fr);gap:25px}.event-card{padding:19px 21px;display:flex;gap:12px;align-items:center}.event-card+ .event-card{border-top:1px solid var(--line)}.event-card.active{background:#f0f4e9}.event-card h3{font:19px var(--serif);margin-bottom:4px}.event-card small{font-size:10px;color:var(--muted);word-break:break-all}.event-card .grow{flex:1;min-width:0}.login-layout{display:grid;grid-template-columns:1fr 1fr;min-height:470px}.login-photo{position:relative;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:33px;color:white;border-radius:13px 0 0 13px}.login-photo:before{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#092b23dd);border-radius:inherit}.login-photo div{z-index:1}.login-photo h2{font-size:37px;max-width:280px}.login-photo p{font-size:12px;color:#d9e4d4;margin-top:13px}.login-form{padding:36px 30px}.login-form h2{font-size:27px;margin:8px 0 12px}.login-form p{color:var(--muted);font-size:12px;margin-bottom:24px}.password-wrap{display:flex;border:1px solid #d5ddd2;border-radius:9px;overflow:hidden}.password-wrap input{border:0;border-radius:0}.password-wrap button{border:0;background:white;padding:8px;font-size:10px;color:var(--muted)}.credentials{background:#f1f5ec;border:1px solid #d6e1ce;padding:18px;border-radius:9px;margin:20px 0}.credentials code{font:20px/1.8 monospace;word-break:break-all;color:var(--green);display:block}.credentials label{color:#6a7d5e;font-size:10px;margin-bottom:2px}.credential-url{font-size:11px;word-break:break-all}.modal-backdrop{position:fixed;inset:0;background:#061c16a3;backdrop-filter:blur(4px);z-index:100;display:flex;align-items:flex-start;justify-content:center;padding:5vh 20px;overflow:auto}.modal{background:white;width:min(650px,100%);border-radius:14px;box-shadow:0 25px 80px #0003;margin:auto;position:relative}.modal.wide{width:min(850px,100%)}.modal-head{padding:24px 26px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.modal-head h2{font-size:25px}.modal-body{padding:23px 26px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:18px 26px;border-top:1px solid var(--line);background:#fafbf8;border-radius:0 0 14px 14px}.member-row{display:grid;grid-template-columns:minmax(120px,1.7fr) 100px 65px 112px 34px;gap:8px;align-items:end;padding:13px 0;border-bottom:1px solid var(--line)}.member-row .field{margin:0}.member-row input,.member-row select{font-size:11px;padding:9px 8px}.member-row label{font-size:10px}.member-row .remove-member{margin-bottom:1px}.members-heading{margin:22px 0 3px;font-size:13px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:var(--deep);color:white;padding:12px 22px;border-radius:10px;box-shadow:0 7px 25px #0002;z-index:250;font-size:12px;max-width:calc(100vw - 32px);opacity:0;pointer-events:none;transition:.2s}.toast.visible{opacity:1;transform:translate(-50%,0)}.toast.error-toast{background:#873b32}.public-shell{--event-accent:#b7975e;--event-bg:#faf8f2;--event-ink:#2c4436;min-height:70vh;background:var(--event-bg);color:var(--event-ink)}.public-nav{padding:19px 5%;display:flex;justify-content:space-between;gap:20px;align-items:center;background:var(--event-bg);border-bottom:1px solid #233c3215;min-height:75px}.monogram{font:28px var(--serif);color:var(--event-accent);white-space:nowrap}.public-links{display:flex;gap:22px;align-items:center;flex-wrap:wrap;font-size:10px}.public-links button{border:0;padding:5px 0;background:transparent;color:inherit;font:inherit;position:relative}.public-links button.current:after{content:'';position:absolute;left:0;right:0;bottom:-5px;background:var(--event-accent);height:1px}.public-links button.rsvp-nav{border:1px solid var(--event-accent);border-radius:3px;padding:8px 13px}.event-hero{min-height:570px;position:relative;background-size:cover;background-position:center;display:grid;place-items:center;padding:70px 30px;color:white;text-align:center}.event-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(#071e1a33,#071e1a8c),linear-gradient(0deg,rgba(0,0,0,var(--overlay,.25)),rgba(0,0,0,var(--overlay,.25)))}.hero-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:23px;width:100%}.hero-kicker{font-size:10px;letter-spacing:3.8px;text-transform:uppercase}.hero-title{font:68px/1.07 var(--serif);letter-spacing:-1.2px;max-width:100%;overflow-wrap:anywhere}.hero-subtitle{font-size:16px;line-height:1.65;max-width:620px;white-space:pre-line}.hero-meta{font-size:12px;letter-spacing:1.6px;text-transform:uppercase;display:flex;align-items:center;gap:15px;flex-wrap:wrap;justify-content:center}.hero-divider{width:55px;height:1px;background:#e5d4ae;margin:2px auto}.hero-button{background:var(--event-accent);border:1px solid var(--event-accent);color:#172d25;font-size:11px;letter-spacing:.4px;padding:14px 24px;border-radius:3px;font-weight:600;display:inline-block;margin-top:5px}.public-content{max-width:1060px;margin:auto;padding:65px 30px}.welcome-block{text-align:center;max-width:700px;margin:auto}.welcome-block h2{font-size:36px;margin:11px 0 20px}.welcome-block p{white-space:pre-line;line-height:1.9}.public-info{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;border-top:1px solid #203d3320;border-bottom:1px solid #203d3320;padding:28px 0;margin-top:45px}.public-info>div{text-align:center}.public-info svg{color:var(--event-accent);width:23px;height:23px;margin:0 auto 10px}.public-info strong{font:20px var(--serif);display:block;margin-bottom:8px}.public-info p{font-size:12px;line-height:1.6;white-space:pre-line;color:#75816d}.public-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}.public-card{border:1px solid #203d3325;border-radius:6px;padding:25px;text-align:left;background:#ffffff66;color:var(--event-ink)}.public-card svg{color:var(--event-accent);margin-bottom:15px}.public-card h3{font:22px var(--serif);margin-bottom:9px}.public-card p{font-size:12px;color:#7b826f}.public-footer{padding:28px 25px;border-top:1px solid #203d3320;text-align:center;color:#7e876f;font-size:10px}.public-footer .monogram{font-size:24px;margin-bottom:9px}.public-footer img{width:38px;height:38px;object-fit:contain;margin:17px auto 4px}.public-footer strong{color:var(--event-ink);font-size:10px;font-weight:400;letter-spacing:1px}.page-hero{text-align:center;padding:55px 25px 35px;background:linear-gradient(120deg,#e5eadb66,#efe2ce66)}.page-hero h2{font-size:45px}.page-hero p{font-size:12px;margin-top:12px;color:#77826c}.page-prose{max-width:720px;margin:auto;line-height:1.95;white-space:pre-line;overflow-wrap:anywhere}.public-page-content{max-width:960px;margin:auto;padding:45px 25px 65px}.rsvp-card{max-width:610px;margin:0 auto;background:white;border:1px solid #dee3d5;border-radius:12px;padding:30px}.rsvp-card h2{font-size:28px;margin-bottom:12px}.rsvp-card p{font-size:12px;color:var(--muted);margin-bottom:22px}.rsvp-member{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 0;border-bottom:1px solid var(--line)}.rsvp-member strong{font-size:13px;display:block}.rsvp-member small{font-size:10px;color:var(--muted)}.rsvp-member select{width:150px;flex-shrink:0;font-size:12px}.rsvp-success{text-align:center}.rsvp-success .success-check{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#e8f0e1;color:#58764b;margin:0 auto 20px}.rsvp-success h2{margin-bottom:12px}.rsvp-success p{margin-bottom:12px}.section-text-options{padding:12px;background:#f7f8f2;border:1px solid var(--line);border-radius:8px}.section-reorder{display:flex;gap:4px}.section-reorder .icon-btn{height:28px;width:28px}.mobile-heading{display:none}.path-demo{padding:10px 5%;font-size:10px;color:#7a876e;border-bottom:1px solid #233c3215;display:flex;gap:9px;align-items:center;background:#f2f4ec}.path-demo strong{font-weight:400;overflow-wrap:anywhere}.admin-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:22px}.preview-title-line{display:flex;align-items:center;gap:6px}.copyable{user-select:all}.danger-text{color:var(--danger)}.password-note{font-size:10px!important;padding:10px;background:#f3f5ee;border-radius:7px;line-height:1.6}.btn.full{width:100%}.checklist{display:grid;gap:9px;margin-top:18px;font-size:11px;color:#617653}.checklist span{display:flex;gap:7px;align-items:center}.checklist svg{width:15px;height:15px}.deadline-note{font-size:11px;padding:10px;background:#f5f6ee;border-radius:6px;color:#6b785f;margin:15px 0}.inline-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
@media(min-width:1600px){.main{max-width:1500px;margin:0 auto;width:100%}}
@media(max-width:1150px){.site-nav{gap:14px}.site-nav a:nth-child(-n+2){display:none}.app-shell{grid-template-columns:185px minmax(0,1fr)}.sidebar{padding:25px 12px}.main{padding:27px 23px 45px}.editor-grid{gap:18px;grid-template-columns:minmax(280px,1fr) minmax(300px,1fr)}.event-mini .public-links button:nth-child(n+3){display:none}.pages-layout{grid-template-columns:1fr}.section-aside{display:none}.admin-layout{grid-template-columns:1fr 1fr}.page-heading h1{font-size:31px}.hero-title{font-size:58px}.public-links{gap:14px}}
@media(max-width:920px){.app-shell{grid-template-columns:1fr}.sidebar{padding:10px 20px;display:block}.event-badge,.side-bottom{display:none}.side-nav{display:flex;gap:6px;overflow:auto}.side-nav button{flex-shrink:0;padding:10px;font-size:11px}.side-nav button svg{width:16px;height:16px}.main{padding:26px 24px 45px}.preview-column{top:15px}.public-nav{flex-direction:column;gap:11px;padding:15px}.public-links{justify-content:center}.event-mini .public-nav{flex-direction:row}.public-info{gap:16px}.site-nav a:first-child{display:none}}
@media(max-width:700px){h1{font-size:29px}.demo-bar{padding:7px 15px;min-height:32px;gap:8px}.demo-detail{display:none}.demo-bar #storage-state{font-size:9px}.site-header{padding:9px 16px;min-height:72px}.brand img{width:47px;height:47px}.brand>span{font-size:22px}.brand small{font-size:6px;letter-spacing:.8px}.site-nav a{display:none!important}.site-nav button{font-size:10px;max-width:115px;text-align:right}.site-nav-active:after{bottom:-20px}.site-nav-active span{display:none}.workspace-bar{padding:10px 12px;gap:6px}.mode-tabs{gap:1px;padding:3px;flex:1}.mode-tabs button{font-size:9px;padding:7px 8px;flex:1;line-height:1.4}.workspace-bar>.text-btn{font-size:9px;white-space:nowrap}.sidebar{padding:10px 12px}.side-nav button{font-size:10px;padding:8px 10px}.main{padding:23px 16px 35px}.page-heading{align-items:flex-start;gap:12px;margin-bottom:22px;flex-wrap:wrap}.page-heading h1{font-size:29px}.page-heading p{font-size:11px;margin-top:8px}.page-heading .btn{font-size:11px;min-height:37px;padding:9px 13px}.editor-grid{grid-template-columns:1fr;gap:24px}.preview-column{position:static}.editor-tabs button{font-size:11px}.form-body{padding:20px}.preview-frame{max-width:550px}.event-mini .hero-title{font-size:44px!important}.event-mini .public-links{font-size:8px}.event-mini .public-links button:nth-child(n+3){display:block}.event-mini .public-links button:nth-child(n+4){display:none}.event-mini .event-hero{min-height:350px}.metrics{grid-template-columns:1fr 1fr;gap:10px}.metric{padding:15px}.metric strong{font-size:30px;margin:5px 0}.metric>span{font-size:10px}.toolbar{gap:8px;flex-wrap:wrap}.toolbar .search-field{max-width:none;min-width:190px}.toolbar .btn{padding:10px;font-size:11px}.filter-select{max-width:145px}.card-pad{padding:19px}.card-title{padding:17px 19px}.switch-row{align-items:flex-start}.page-card{padding:15px 13px;gap:10px}.page-card .page-copy p{max-width:175px;font-size:10px}.page-icon{width:35px;height:35px;border-radius:8px}.page-card .btn{padding:7px 9px;font-size:10px}.page-card h3{font-size:12px}.section-reorder{display:none}.pages-layout{gap:0}.grid-2{gap:13px}.admin-layout{grid-template-columns:1fr}.admin-footer{flex-direction:column;align-items:flex-start}.public-links{font-size:9px;gap:10px 15px}.public-nav{padding:17px 13px}.monogram{font-size:23px}.event-hero{min-height:510px;padding:65px 20px}.hero-title{font-size:46px!important}.hero-subtitle{font-size:14px!important}.hero-meta{font-size:10px;gap:10px;letter-spacing:.7px}.hero-kicker{font-size:9px;letter-spacing:2.5px}.public-content{padding:45px 21px}.welcome-block h2{font-size:29px}.welcome-block p{font-size:14px!important}.public-info{grid-template-columns:1fr;margin-top:32px;padding:25px 0;gap:23px}.public-info>div+div{padding-top:23px;border-top:1px solid #203d3315}.public-cards{grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.public-card{padding:19px}.public-card h3{font-size:20px}.public-card p{font-size:11px}.page-hero{padding:35px 20px 28px}.page-hero h2{font-size:35px}.public-page-content{padding:28px 16px 45px}.rsvp-card{padding:23px 20px}.rsvp-member select{width:125px;font-size:11px}.rsvp-member strong{font-size:12px}.modal-backdrop{padding:16px 10px}.modal-head{padding:19px 19px 15px}.modal-body{padding:19px}.modal-head h2{font-size:23px}.modal-footer{padding:15px 19px}.member-row{grid-template-columns:minmax(125px,1fr) 80px 60px 30px;gap:7px}.member-row>.member-name{grid-column:1/3}.member-row>.member-age{grid-column:3}.member-row>.member-remove{grid-column:4;grid-row:1}.member-row>.member-kind{grid-column:1;grid-row:2}.member-row>.member-status{grid-column:2/4;grid-row:2}.member-row input,.member-row select{padding:8px}.member-row .icon-btn{width:30px;height:33px}.login-layout{grid-template-columns:1fr}.login-photo{min-height:190px;border-radius:14px 14px 0 0;padding:25px}.login-photo h2{font-size:30px;max-width:none}.login-photo p{margin-top:8px}.login-form{padding:25px}.access-card{flex-wrap:wrap;gap:9px}.access-card .grow{min-width:180px}.event-card{padding:16px}.event-card h3{font-size:18px}.url-field{font-size:10px}.url-field input{font-size:11px}.path-demo{font-size:9px;padding:9px 15px}.preview-caption{font-size:10px}.modal-footer .btn{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.event-mini .hero-title{font-size:clamp(20px,calc(var(--title-size,64px)*.72),64px)!important}
.event-mini .hero-subtitle{font-size:calc(var(--subtitle-size,16px)*.72)!important}
.event-mini .mini-message p{font-size:calc(var(--welcome-size,15px)*.72)!important}
.preview-frame.phone .hero-title{font-size:clamp(22px,calc(var(--title-size,64px)*.58),50px)!important}
@media(max-width:700px){.public-shell:not(.event-mini) .hero-title{font-size:clamp(24px,var(--title-size,64px),12vw)!important}.public-shell:not(.event-mini) .hero-subtitle{font-size:clamp(12px,var(--subtitle-size,16px),5vw)!important}.public-shell:not(.event-mini) .welcome-block p{font-size:clamp(12px,var(--welcome-size,15px),5vw)!important}}
.field,.sidebar,.editor-grid>div{min-width:0}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:920px){.app-shell{grid-template-columns:minmax(0,1fr)}.side-nav{scrollbar-width:thin;scrollbar-color:#769073 transparent}}
@media(max-width:700px){.editor-grid{grid-template-columns:minmax(0,1fr)}.editor-tabs button{min-width:0;line-height:1.5;padding:10px 5px}.url-field input{min-width:30px}}

/* Font choices have an embedded, readable sample on every device. */
.font-sample{margin-top:12px;background:#f7f7f0;border:1px solid #e3e7d9;border-radius:9px;padding:15px 17px;color:#294235;overflow-wrap:anywhere}
.font-sample>span{display:block;font:9px/1.5 Arial,Helvetica,sans-serif;letter-spacing:1.1px;color:#738065;margin-bottom:9px}
.font-sample p{font-size:28px;line-height:1.6;font-weight:400;margin:0;color:#294235}
.font-sample small{display:block;font-size:16px;line-height:1.8;color:#67775d;margin-top:2px}
.section-text-options select[name=font]{flex-basis:170px}

.event-hero{background-color:#153d31}.event-topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 5%;background:#f3efe4;border-bottom:1px solid var(--line);font-size:12px}.event-topbar select{max-width:300px}.event-topbar a{color:#123c30}.save-warning{padding:14px 5%;background:#fff2d7;color:#633f11;display:flex;gap:12px;flex-wrap:wrap;align-items:center}.save-warning[hidden]{display:none}body[data-event-mode=public] .path-demo{display:none}body[data-event-mode=public]{background:#faf8f2}.public-nav .public-links{flex-wrap:wrap}.workspace-bar{gap:12px;flex-wrap:wrap}.publish-actions{display:flex;gap:12px;align-items:center}.event-select-label{display:flex;align-items:center;gap:12px}.event-topbar [hidden]{display:none}@media(max-width:700px){.event-topbar{flex-wrap:wrap;padding:10px 5%}.event-select-label{width:100%;flex-wrap:wrap}.event-topbar select{max-width:100%;flex:1}.publish-actions{width:100%;flex-wrap:wrap}.workspace-bar .mode-tabs{overflow:auto;max-width:100%}.site-nav{display:none}.event-topbar .text-btn{font-size:12px}}
[hidden]{display:none!important}.topbar{display:flex;align-items:center;gap:16px;padding:12px 30px;background:white;border-bottom:1px solid var(--line)}.topbar-title strong,.topbar-title span{display:block}.topbar-title strong{font:23px/1.2 var(--serif)}.topbar-title span{font-size:11px;color:var(--muted);margin-top:5px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.event-picker{font-size:10px;color:var(--muted);margin:0;max-width:250px}.event-picker select{font-size:12px;padding:7px 10px;margin-top:3px}.inline-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.empty-state{padding:60px 25px;text-align:center}.empty-state p{margin:16px 0 24px}.top-actions .text-btn{white-space:nowrap}@media(max-width:850px){.topbar{padding:12px 18px;flex-wrap:wrap}.topbar-title{flex:1}.top-actions{width:100%;margin-left:0;gap:14px}.event-picker{flex:1;min-width:180px;max-width:none}.workspace-bar{padding:10px 18px}.workspace-bar>.inline-actions{margin-left:auto}.mode-tabs button{padding:8px 9px}}@media(max-width:450px){.topbar-title strong{font-size:21px}.topbar-title span{font-size:10px}.workspace-bar>.inline-actions{width:100%;justify-content:space-between}.top-actions .text-btn{padding:5px 0}.event-picker{flex-basis:100%}.mode-tabs{width:100%}.mode-tabs button{flex:1}.public-nav{align-items:flex-start}.public-links{justify-content:flex-end;gap:8px!important}}

/* Keep the editor and the live preview within reach. */
.editor-fields{min-width:0}
.preview-column{display:flex;flex-direction:column;max-height:calc(100dvh - var(--preview-top,18px) - 18px);top:18px;min-height:0}
.preview-label,.preview-jumps,.preview-caption{flex-shrink:0}
#live-preview{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#9da995 #eef0e8;padding:2px 5px 5px;border-radius:12px}
#live-preview:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.preview-jumps{display:flex;gap:5px;margin-bottom:12px;flex-wrap:wrap}
.preview-jumps button{border:1px solid var(--line);border-radius:20px;background:#fff;color:var(--green);font:inherit;font-size:11px;padding:7px 12px;min-height:34px}
.preview-jumps button:hover{background:#eaf0e6}
.preview-caption{line-height:1.5;margin:10px 0 0}
.mobile-editor-switch{display:none}
.moment-fields{border:1px solid var(--line);border-radius:12px;padding:18px;margin:22px 0;background:#fbfcf8}
.moment-heading,.moment-top{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.moment-heading h2{font:23px/1.2 var(--serif);margin:0}
.moment-heading p{font-size:11px;color:var(--muted);margin:5px 0 0;line-height:1.6}
.moment-number{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;font:12px/1 var(--sans);color:var(--green);background:#e9eedf}
.ceremony-switch{font-size:12px;line-height:1.6;align-items:flex-start;margin:0}
.ceremony-switch input{width:18px;height:18px;margin-top:2px;flex:none}
.ceremony-fields{min-width:0;padding:18px 0 0;margin:0;border:0}
.moment-fields .venue-picker{margin:8px 0 0}
.schedule-help{margin:-7px 0 24px}
.venue-name-link{color:inherit;text-underline-offset:4px;text-decoration-thickness:1px;overflow-wrap:anywhere}
.venue-name-link:hover{color:var(--event-accent)}
.event-schedule{margin-top:42px;padding-top:32px;border-top:1px solid #203d3320}
.schedule-heading{text-align:center;margin-bottom:26px}
.schedule-heading>span{display:flex;align-items:center;justify-content:center;gap:8px;font:12px var(--sans);color:var(--event-ink)}
.schedule-heading>span svg{width:18px;height:18px;color:var(--event-accent)}
.schedule-heading h2{font:34px/1.2 var(--serif);margin:12px 0;color:var(--event-ink)}
.schedule-heading p{font:13px/1.6 var(--sans);color:var(--event-ink);opacity:.8;margin:0}
.moment-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.event-moment{padding:28px;border:1px solid #203d3325;border-radius:12px;background:#ffffff66;min-width:0;color:var(--event-ink);text-align:left}
.event-moment .moment-number{background:var(--event-accent);color:#172d25}
.event-moment h3{font:28px/1.25 var(--serif);color:var(--event-ink);margin:0}
.event-moment h4{font:22px/1.4 var(--serif);margin:20px 0 10px;overflow-wrap:anywhere}
.moment-time{display:flex;align-items:center;gap:8px;font:15px/1.4 var(--sans);color:var(--event-ink);margin:0}
.moment-time svg{width:17px;height:17px;color:var(--event-accent)}
.moment-address{font:13px/1.8 var(--sans);white-space:pre-line;overflow-wrap:anywhere;color:var(--event-ink);opacity:.85;min-height:24px;margin:0}
.event-moment .gps-links{justify-content:flex-start;margin-top:20px}
.event-moment .gps-links a{display:flex;align-items:center;min-height:44px}
.event-mini .mini-message p{white-space:pre-line;overflow-wrap:anywhere}
.event-mini .mini-details{padding:0 20px 24px}
.event-mini .public-info{grid-template-columns:1fr;gap:14px;padding:20px 0;margin-top:0}
.event-mini .public-info>div+div{border-top:1px solid #203d3320;padding-top:14px}
.event-mini .public-info svg{width:18px;height:18px;margin-bottom:7px}
.event-mini .public-info strong{font-size:18px}
.event-mini .public-info p{font-size:12px;color:var(--event-ink)}
.event-mini .event-schedule{margin-top:0;padding-top:24px}
.event-mini .schedule-heading{margin-bottom:20px}
.event-mini .schedule-heading h2{font-size:25px}
.event-mini .schedule-heading p{font-size:11px}
.event-mini .moment-cards{grid-template-columns:1fr;gap:14px}
.event-mini .event-moment{padding:20px}
.event-mini .moment-top{margin-bottom:14px}
.event-mini .event-moment h3{font-size:24px}
.event-mini .event-moment h4{font-size:20px;margin-top:16px}
.event-mini .gps-links a{font-size:11px;min-height:40px}
@media(max-width:800px){
 .editor-grid{grid-template-columns:minmax(0,1fr)}
 .editor-grid[data-mobile-panel=edit]>.preview-column,.editor-grid[data-mobile-panel=preview]>.editor-fields{display:none}
 .preview-column{position:relative;top:auto;max-height:none;min-width:0}
 #live-preview{max-height:calc(100dvh - 174px);max-height:calc(100dvh - 174px - env(safe-area-inset-bottom));min-height:240px}
 .preview-frame{max-width:550px}
 .mobile-editor-switch{position:fixed;z-index:40;bottom:0;left:0;right:0;display:flex;gap:8px;justify-content:center;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fffffff5;box-shadow:0 -4px 20px #173b3014;border-top:1px solid var(--line)}
 .mobile-editor-switch button{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;max-width:260px;min-height:44px;padding:10px 15px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--green);font:600 13px var(--sans)}
 .mobile-editor-switch button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:white}
 .main:has(.editor-grid){padding-bottom:calc(104px + env(safe-area-inset-bottom))}
 .preview-label{font-size:11px}
 .preview-jumps button{min-height:40px}
 .moment-fields{padding:16px}
 .moment-cards{grid-template-columns:1fr}
 .schedule-heading h2{font-size:29px}
 .event-moment{padding:24px}
}
/* Event navigation: one compact header, with all pages available on every screen. */
.event-header{background:var(--event-bg);border-bottom:1px solid #203d3320}
.event-navigation{max-width:1480px;margin:auto;padding:16px 4%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center;color:var(--event-ink)}
.event-monogram{grid-column:1;grid-row:1;color:var(--event-accent);font-size:32px;line-height:1.2;text-decoration:none;white-space:nowrap;min-height:44px;display:flex;align-items:center}
.event-menu-links{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:2px 18px}
.event-menu-links a{display:flex;align-items:center;min-height:44px;color:inherit;text-decoration:none;font-size:13px;line-height:1.4;position:relative;padding:8px 0;overflow-wrap:anywhere;max-width:260px}
.event-menu-links a[aria-current="location"]{font-weight:700}
.event-menu-links a[aria-current="location"]:after{content:'';position:absolute;bottom:2px;left:0;width:28px;height:2px;background:var(--event-accent)}
.event-rsvp{grid-column:3;grid-row:1;display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid var(--event-accent);border-radius:5px;color:var(--event-ink);font-size:12px;line-height:1.4;text-align:center;text-decoration:none}
.event-rsvp[aria-current="location"]{font-weight:700;background:#ffffff80}
.event-menu-toggle{display:none;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 12px;background:transparent;border:1px solid #203d3328;border-radius:5px;font:inherit;font-size:13px;color:inherit;cursor:pointer}
.event-menu-toggle svg{width:19px;height:19px}
.event-navigation a:hover,.event-menu-toggle:hover{background:#ffffff60}
.event-navigation a:focus-visible,.event-menu-toggle:focus-visible,.public-card:focus-visible,.page-move:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.public-card{text-decoration:none;display:block;transition:border-color .15s,background .15s}
.public-card:hover{border-color:var(--event-accent);background:#ffffffa0}
.details-shortcut{text-align:center;margin:22px 0 0}
.details-shortcut a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:6px;color:var(--event-ink);font-size:14px;text-underline-offset:4px}
.details-shortcut svg{width:16px;height:16px}
.event-details-page .event-schedule,.event-details-page .public-info{margin-top:0;border-top:0;padding-top:0}
.details-rsvp-note{margin:32px auto 0;padding-top:28px;border-top:1px solid #203d3320;text-align:center;font-size:14px;line-height:1.7}
.details-rsvp-note .hero-button{display:inline-flex;min-height:44px;align-items:center;text-decoration:none;margin-top:18px}
.fixed-event-page{display:flex;align-items:flex-start;gap:16px;padding:22px;margin-bottom:22px}
.fixed-event-page h2{font-size:17px;margin:0 0 8px}
.fixed-event-page p,.page-order-help{font-size:13px;line-height:1.65;color:var(--muted)}
.fixed-event-page .text-btn{min-height:44px;margin-top:8px;text-align:left}
.page-order-help{margin:0 0 16px}
.page-card.ordered-page{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:14px;align-items:center;padding:20px}
.ordered-page .page-copy h3{font-size:16px;line-height:1.4;overflow-wrap:anywhere;margin:4px 0}
.ordered-page .page-copy p{white-space:normal;max-width:none;line-height:1.5;font-size:12px}
.page-position{font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.ordered-page.disabled{opacity:1;background:#f5f5f1}
.ordered-page.disabled .page-icon{opacity:.6}
.page-controls{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:14px}
.ordered-page .section-reorder{display:flex;gap:8px;flex-wrap:wrap}
.page-move{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:10px 12px;border:1px solid #203d3333;border-radius:6px;background:#fff;color:var(--green);font:inherit;font-size:12px;cursor:pointer}
.page-move span{font-size:19px;line-height:1}
.page-move:hover:enabled{background:#edf3ee;border-color:var(--green)}
.page-move:disabled{opacity:.4;cursor:default}
.ordered-page .page-edit{min-height:44px;font-size:12px;padding:10px 12px;white-space:nowrap}
.ordered-page .page-edit svg{width:15px;height:15px}
@media(max-width:1100px){
 .event-navigation{grid-template-columns:minmax(0,1fr) auto auto;gap:12px;padding:12px 20px}
 .event-monogram{font-size:30px}
 .event-rsvp{grid-column:2;font-size:12px;padding:8px 12px}
 .event-menu-toggle{display:flex;grid-column:3;grid-row:1}
 .event-menu-links{display:none;grid-column:1/-1;grid-row:2;gap:0;max-height:65vh;overflow-y:auto;border-top:1px solid #203d3320;padding-top:8px}
 .event-navigation[data-menu-open="true"] .event-menu-links{display:flex;flex-direction:column;align-items:stretch}
 .event-menu-links a{max-width:none;padding:13px 12px;font-size:15px;min-height:48px;border-radius:4px}
 .event-menu-links a[aria-current="location"]{background:#ffffff90}
 .event-menu-links a[aria-current="location"]:after{bottom:10px;left:0;top:10px;width:3px;height:auto}
}
@media(max-width:500px){
 .event-navigation{gap:8px;padding:12px 16px}
 .event-monogram{font-size:26px}
 .event-rsvp{font-size:11px;padding:8px 10px;max-width:124px}
 .event-menu-toggle{gap:5px;padding:8px 9px;font-size:12px}
 .fixed-event-page{padding:18px;gap:12px}
 .page-card.ordered-page{padding:16px;grid-template-columns:32px minmax(0,1fr) auto;gap:12px}
 .ordered-page .page-icon{width:32px;height:32px}
 .ordered-page .page-copy h3{font-size:15px}
 .ordered-page .page-copy p{font-size:12px;max-width:none}
 .page-controls{flex-wrap:wrap}
 .ordered-page .section-reorder{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px}
 .page-move{padding:9px 5px;font-size:11px;gap:5px}
 .ordered-page .page-edit{margin-left:auto}
}
/* The editor preview uses the same compact navigation regardless of viewport width. */
.event-mini .event-navigation{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;padding:10px 14px}
.event-mini .event-monogram{font-size:23px}
.event-mini .event-rsvp{grid-column:2;font-size:10px;padding:7px;max-width:100px;min-height:40px}
.event-mini .event-menu-toggle{display:flex;grid-column:3;grid-row:1;min-height:40px;font-size:11px;padding:7px;gap:5px}
.event-mini .event-menu-links{display:none;grid-column:1/-1;grid-row:2;gap:0;max-height:320px;overflow-y:auto;border-top:1px solid #203d3320;padding-top:6px}
.event-mini .event-navigation[data-menu-open="true"] .event-menu-links{display:flex;flex-direction:column;align-items:stretch}
.event-mini .event-menu-links a{max-width:none;min-height:44px;padding:10px 12px;font-size:13px}
.event-mini .event-menu-links a[aria-current="location"]:after{left:0;top:10px;bottom:10px;width:3px;height:auto}

/* Compact details keep the essentials together, including on a phone. */
.public-info{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px;padding:22px 0;text-align:left}
.public-info>div{min-width:0}.public-info>div+div{border:0;padding-top:0}
.public-info>div:last-child{grid-column:1/-1;border-top:1px solid #203d3320;padding-top:16px}
.public-info svg{width:18px;height:18px;margin:0 7px 7px 0;vertical-align:middle;display:inline-block}
.public-info strong{display:inline;font:600 12px/1.5 var(--sans);letter-spacing:.03em;color:var(--event-ink)}
.public-info p{font:15px/1.6 var(--sans);color:var(--event-ink);margin:2px 0 0;overflow-wrap:anywhere}
.public-info p .venue-name-link{font-weight:600}
.gps-links{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;margin:12px 0 0}
.gps-links a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:9px 12px;font:12px/1.4 var(--sans);border:1px solid #203d3340;border-radius:6px}
.event-schedule{margin-top:28px;padding-top:24px}.schedule-heading{margin-bottom:18px}.schedule-heading h2{font-size:28px;margin:10px 0}.schedule-heading p{font-size:13px}
.moment-cards{gap:14px}.event-moment{padding:20px}.moment-top{margin-bottom:12px;gap:9px}.event-moment h3{font-size:24px}.event-moment h4{font-size:19px;margin:12px 0 6px}.moment-number{width:29px;height:29px}.moment-address{font-size:13px;line-height:1.6}.event-moment .gps-links{margin-top:12px}.moment-time{font-size:14px}
.public-content{padding-top:38px;padding-bottom:38px}.public-page-content{padding:22px 24px 40px}.page-hero{padding:32px 24px 20px}.page-hero h2{margin:10px 0;line-height:1.2;overflow-wrap:anywhere}.page-hero p{margin:10px 0 0;line-height:1.6}.details-rsvp-note{margin-top:22px;padding-top:20px}
.public-cards{margin-top:28px;gap:14px}.public-card{padding:22px}.public-card h3{font-size:25px;line-height:1.2;margin:12px 0}.public-card p{font-size:13px;line-height:1.6}.public-card svg{width:24px;height:24px}
.event-mini .public-info{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px 0}.event-mini .public-info>div+div{border:0;padding:0}.event-mini .public-info>div:last-child{border-top:1px solid #203d3320;padding-top:12px}.event-mini .public-info strong{font:600 11px var(--sans)}.event-mini .public-info p{font-size:12px}.event-mini .event-moment{padding:16px}.event-mini .event-moment h3{font-size:22px}.event-mini .event-moment h4{font-size:17px}
.styled-event-page{--event-ink:var(--page-color);font-family:var(--page-font);font-size:var(--page-size);color:var(--page-color);font-style:var(--page-style);font-weight:var(--page-weight)}
.styled-event-page :is(h1,h2,h3,h4,p,label,select,input,textarea,button,a,small,strong,span,figcaption){font-family:var(--page-font);color:var(--page-color);font-style:var(--page-style)}
.styled-event-page :is(.page-hero>p,.moment-address,.moment-time,.public-info p,.page-prose,.rsvp-card>p,.rsvp-member label){font-size:var(--page-size);font-weight:var(--page-weight)}
.styled-event-page .hero-button{color:#172d25}.styled-event-page .help{font-size:13px}.styled-event-page .error{color:#a32f24}.styled-event-page .rsvp-member small{opacity:.75}
.event-countdown{display:flex;justify-content:center;align-items:baseline;gap:9px;margin:18px 0 0;line-height:1.2;flex-wrap:wrap}.event-countdown>span{font-size:.45em;letter-spacing:.04em}.event-countdown strong{font:inherit;font-variant-numeric:tabular-nums}.event-countdown small{font-size:.55em}.event-countdown+.hero-button{margin-top:22px}
.event-mini .event-countdown{font-size:24px!important;margin-top:14px;gap:7px}.countdown-settings{border-top:1px solid var(--line);padding-top:22px;margin-top:22px}.countdown-settings h3,.details-photos-editor h3{font-size:15px;margin-bottom:14px}.countdown-settings .grid-2{margin-top:15px}
.details-photos-editor{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:22px 0}.photo-upload{position:relative;cursor:pointer;overflow:hidden;display:inline-flex;align-items:center}.photo-upload input[type=file]{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.photo-upload:focus-within{outline:2px solid var(--green);outline-offset:3px}.photo-upload:has(input:disabled){opacity:.5;pointer-events:none}
.details-photo-list{display:grid;gap:12px}.details-photo-item{display:grid;grid-template-columns:64px minmax(0,1fr) 32px;gap:10px;align-items:center;padding-top:10px;border-top:1px solid var(--line)}.details-photo-item img{width:64px;height:64px;object-fit:cover;border-radius:6px}.details-photo-item .field{margin:0}.details-photo-item input{font-size:12px;padding:9px}.details-photo-item .icon-btn{width:32px}
.event-photo-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0 0}.event-photo-gallery figure{margin:0;min-width:0}.event-photo-gallery a{display:block}.event-photo-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:8px}.event-photo-gallery figcaption{font-size:13px;line-height:1.5;margin-top:8px;overflow-wrap:anywhere}
.inline-new-table{border-top:1px solid var(--line);padding:14px 0;margin:14px 0}.inline-new-table summary{cursor:pointer;color:var(--green);font-size:13px;min-height:38px;display:list-item;line-height:2.5}.inline-new-table .grid-2{margin-top:14px}.table-seat-summary{background:#f3f6ef;border:1px solid #dce4d7;border-radius:8px;padding:14px;font-size:13px}.table-seat-summary p{margin:7px 0 0;line-height:1.6}.table-seat-summary .error{margin-top:10px}.rsvp-person{border-bottom:1px solid #203d3320;padding:12px 0}.rsvp-person .rsvp-member{border:0;padding:0}.rsvp-person .rsvp-member label{font-size:14px;font-weight:600;margin:0}.rsvp-member small{display:block;font-size:11px;margin-top:4px}.rsvp-age{margin:12px 0 0;padding:12px;background:#f2f4ed;border-radius:6px}.rsvp-age label{font-size:12px;line-height:1.5}.rsvp-age input{max-width:190px;font-size:14px;background:#fff}.import-review{max-height:300px;overflow:auto;margin-top:18px}.import-review p{padding:12px 0;border-bottom:1px solid var(--line);line-height:1.6;font-size:13px}.import-errors{white-space:pre-line;line-height:1.7;font-size:14px}
@media(max-width:700px){.public-content{padding:30px 20px}.public-page-content{padding:18px 20px 30px}.public-info{gap:12px;margin-top:22px;padding:18px 0}.public-info p{font-size:14px}.public-info>div:last-child{padding-top:14px}.public-card{padding:18px}.public-card h3{font-size:23px}.public-card p{font-size:12px}.event-moment{padding:18px}.page-hero{padding:28px 20px 18px}.page-hero h2{font-size:clamp(26px,8vw,40px)!important}.event-countdown{font-size:clamp(20px,8vw,48px)!important}.event-photo-gallery{gap:12px}.event-photo-gallery figcaption{font-size:12px}.toolbar .filter-select{max-width:none;flex:1;min-width:145px}.heading-actions{flex-wrap:wrap}.rsvp-member select{width:140px;min-height:44px}.rsvp-member{gap:10px}.event-photo-gallery:has(figure:only-child){grid-template-columns:1fr}}
/* Guestbook: compact moderation and a quiet, readable public wall. */
.guestbook-settings{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;margin-bottom:24px}
.guestbook-settings h2{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:23px}
.guestbook-settings p{margin-top:8px;max-width:620px;color:var(--muted)}
.guestbook-setting-actions{display:flex;align-items:center;gap:12px;flex-shrink:0;flex-direction:column}
.message-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px}
.message-filters{display:flex;gap:6px;flex-wrap:wrap}
.message-filters button{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid #dce1d8;border-radius:8px;background:transparent;font-size:13px}
.message-filters button[aria-pressed=true]{background:var(--green);color:#fff;border-color:var(--green)}
.message-filters span{font-size:11px;min-width:20px;text-align:center;background:#7c927624;border-radius:4px;padding:1px 5px}
.message-filters button[aria-pressed=true] span{background:#ffffff24}
.message-badge{display:inline-block;border-radius:20px;padding:4px 10px;font:11px/1.4 var(--sans);white-space:nowrap}
.message-badge.pending{background:#f4ead3;color:#73571e}.message-badge.approved{background:#e7efe5;color:#315238}.message-badge.rejected{background:#edece8;color:#5d625b}
.message-list{display:grid;gap:14px}
.message-card{background:#ffffffa6;border:1px solid #293f3020;border-radius:12px;padding:22px;min-width:0}
.message-card-top{display:flex;align-items:center;gap:11px}.message-card-top>div{min-width:0;flex:1}.message-card-top strong{display:block;overflow-wrap:anywhere;font-size:14px}
.message-card-top time{display:block;font:11px/1.6 var(--sans);color:#727a6f;margin-top:2px}
.message-avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#d9dfcc62;flex-shrink:0;font:19px/1 Georgia,serif;color:#4d5c42}
.message-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75;margin-top:15px;font-size:15px}
.message-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #293f3014;margin-top:18px;padding-top:15px}
.message-card-bottom small{max-width:70%;color:var(--muted);font-size:11px;overflow-wrap:anywhere}.message-actions{display:flex;gap:8px;flex-shrink:0}
.message-actions .btn{min-height:44px}.message-empty{padding:32px 20px;text-align:center;border:1px dashed #293f3030;border-radius:12px;line-height:1.7;color:var(--muted)}
.message-error{padding:18px;border:1px solid #be89894d;border-radius:10px;margin-top:12px}.message-error p{margin-bottom:8px}.message-load-more{margin:20px auto 0;display:flex}
.guestbook-page{max-width:1100px}.guestbook-intro{white-space:pre-wrap;margin-bottom:26px;overflow-wrap:anywhere}.guestbook-layout{display:grid;grid-template-columns:minmax(270px,.85fr) minmax(0,1.15fr);gap:38px;align-items:start}
.guestbook-composer{padding:26px;background:#ffffff70;border:1px solid #293f301f;border-radius:14px}.guestbook-composer>h2{font-size:28px}.guestbook-composer>p{line-height:1.7;font-size:14px;margin-top:10px;opacity:.82}
.guestbook-composer form{margin-top:24px}.guestbook-composer fieldset{padding:0;margin:0;border:0;min-width:0}.guestbook-composer label{font-size:13px}.guestbook-composer input,.guestbook-composer textarea{font-size:16px}
.message-consent{display:flex;align-items:flex-start;gap:10px;margin:18px 0;font-weight:400!important;line-height:1.6}.message-consent input{margin-top:2px}.message-consent span{font-size:12px}
.message-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.message-send{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;margin-top:12px;font-size:14px;padding:13px 18px}
.message-approval-note{display:block;text-align:center;font-size:11px;line-height:1.6;margin-top:12px;opacity:.75}.guestbook-wall-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.guestbook-wall-heading h2{font-size:24px}.guestbook-wall-heading svg{color:var(--event-accent)}
.guestbook-page .message-body{font-family:var(--message-font);font-size:var(--message-size);color:var(--message-color);font-weight:var(--message-weight);font-style:var(--message-style);text-align:var(--message-align)}
.message-thanks{padding:20px 0;text-align:center}.message-thanks svg{width:36px;height:36px;color:var(--event-accent);margin-bottom:18px}.message-thanks h2{font-size:28px}.message-thanks p{font-size:14px;line-height:1.75;margin-top:14px}
@media(max-width:900px){.guestbook-settings{align-items:flex-start;flex-direction:column;gap:16px}.guestbook-setting-actions{flex-direction:row;flex-wrap:wrap}}
@media(max-width:700px){.guestbook-layout{grid-template-columns:1fr;gap:28px}.guestbook-composer{padding:22px}.guestbook-settings{padding:19px}.message-toolbar{align-items:flex-start;flex-wrap:wrap}.message-filters{gap:5px}.message-filters button{padding:10px 11px;font-size:12px}.message-card{padding:18px}.message-card-bottom{align-items:flex-start;flex-direction:column;gap:12px}.message-card-bottom small{max-width:100%}.message-actions{flex-wrap:wrap}.guestbook-wall-heading h2{font-size:23px}.message-body{font-size:14px}.message-card-top{gap:9px}.message-card-top strong{font-size:13px}.message-card-top .message-badge{padding:4px 7px;font-size:10px}}

/* The event is one continuous document. Menu links scroll to these sections. */
.event-linear-site>.event-header{position:sticky;top:0;z-index:30;background:var(--event-bg)}
.event-linear-section{scroll-margin-top:var(--event-nav-height,120px);border-top:1px solid #203d3315;outline:none}
.event-linear-home{border-top:0}
.event-linear-section:focus-visible{outline:2px solid var(--event-accent);outline-offset:-3px}
.event-linear-section .page-hero h2{font-size:40px;font-weight:400;margin:8px 0;line-height:1.2;overflow-wrap:anywhere}
.event-linear-section .page-prose{overflow-wrap:anywhere}
.event-linear-section .public-page-content:has(.page-prose:empty):not(:has(.mt,.section-external-link,.event-preview-note)){padding-top:0;padding-bottom:18px}
.section-external-link{text-align:center;margin-top:24px}.section-external-link a{text-decoration:none;display:inline-flex;min-height:44px;align-items:center;justify-content:center}
.event-preview-note{padding:15px;border:1px solid #203d3320;border-radius:8px;line-height:1.6;font-size:13px;color:var(--event-ink)}
.event-mini .event-linear-section{scroll-margin-top:12px}.event-mini .page-hero{padding:23px 18px 12px}.event-mini .page-hero h2{font-size:26px!important}.event-mini .public-page-content{padding:12px 18px 25px}.event-mini .public-content{padding:0}.event-mini .mini-message h2{font-size:25px;margin-bottom:9px}.event-mini .page-prose{font-size:13px!important}.event-mini .page-hero p{font-size:11px}.event-mini .event-preview-note{font-size:11px}
@media(max-width:700px){.event-linear-section .page-hero h2{font-size:clamp(26px,8vw,40px)!important}.event-linear-section .page-hero{padding-top:27px}.event-linear-section{scroll-margin-top:var(--event-nav-height,90px)}}
