:root{color:#1f211f;background:#eeece6;font-family:PingFang SC,Microsoft YaHei,Noto Sans CJK SC,sans-serif;font-synthesis:none;--ink: #202522;--muted: #777a73;--line: #deddd6;--paper: #f7f1e8;--wine: #6c2527;--wine-deep: #4f1b1d;--sage: #526157}*{box-sizing:border-box}html{background:#eeece6}body{margin:0;min-width:320px;min-height:100vh;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%}.loading-shell{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:18px;background:#f4f0e9;color:#555950}.loading-mark,.login-panel__mark{width:52px;height:52px;display:grid;place-items:center;border:1px solid #8f5a4d;color:var(--wine);font-family:Songti SC,"Noto Serif CJK SC",serif;font-size:26px}.loading-shell p{margin:0;font-size:13px;letter-spacing:.12em}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.35fr) minmax(420px,.65fr);background:#f7f4ee}.login-visual{position:relative;min-height:720px;overflow:hidden;color:#fff}.login-visual>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.login-visual__veil{position:absolute;top:0;right:0;bottom:0;left:0;background:#1012107a}.login-visual__brand{position:absolute;top:48px;left:54px;display:flex;align-items:center;gap:16px}.login-visual__brand>span{width:46px;height:46px;border:1px solid rgba(255,255,255,.7);display:grid;place-items:center;font-family:Songti SC,serif;font-size:22px}.login-visual__brand p{margin:0;font:11px/1.2 Georgia,serif;letter-spacing:.28em}.login-visual__copy{position:absolute;left:9%;bottom:11%}.login-visual__copy small{font-size:13px;letter-spacing:.35em;color:#e8d6bc}.login-visual__copy h1{margin:22px 0 0;font:500 clamp(34px,3.5vw,58px)/1.45 "Songti SC","Noto Serif CJK SC",serif;letter-spacing:.06em}.login-panel{display:grid;place-items:center;padding:60px}.login-panel form{width:min(100%,390px)}.login-panel .eyebrow{margin:38px 0 12px;color:#9c7568;font:10px/1 Georgia,serif;letter-spacing:.25em}.login-panel h2{margin:0;font:500 34px/1.3 Songti SC,"Noto Serif CJK SC",serif;letter-spacing:.08em;color:#262b27}.login-panel__hint{margin:12px 0 38px;color:#81837d;font-size:14px}.login-panel label{display:grid;gap:10px;color:#555a54;font-size:13px;font-weight:600}.login-panel input{height:50px;border:1px solid #d8d7d0;background:#fff;padding:0 15px;outline:none;transition:.2s}.login-panel input:focus{border-color:#8e695e;box-shadow:0 0 0 3px #6c252714}.form-error{margin:12px 0 -12px;color:#b23b3e;font-size:12px}.primary-button{margin-top:26px;border:0;width:100%;height:50px;background:var(--wine-deep);color:#fff;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600;letter-spacing:.08em}.primary-button:disabled{opacity:.65;cursor:wait}.login-panel__foot{margin:24px 0 0;text-align:center;color:#a0a29d;font-size:11px}.admin-shell{min-height:100vh;display:flex;background:#efeee9}.sidebar{position:fixed;inset:0 auto 0 0;width:226px;padding:30px 20px 22px;display:flex;flex-direction:column;color:#dce0d9;background:#202622;z-index:10}.sidebar__brand{display:flex;align-items:center;gap:12px;padding:0 10px 30px;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar__brand>span{width:40px;height:40px;border:1px solid #a37b6b;display:grid;place-items:center;color:#e1c8b4;font:22px Songti SC,serif}.sidebar__brand div{display:grid;gap:3px}.sidebar__brand strong{font:600 17px Songti SC,serif;letter-spacing:.18em}.sidebar__brand small{color:#929b94;font:8px Georgia,serif;letter-spacing:.25em}.sidebar nav{padding-top:28px}.sidebar nav p{margin:0 10px 10px;color:#737e76;font-size:10px;letter-spacing:.16em}.sidebar nav button,.sidebar nav a{width:100%;min-height:42px;padding:0 12px;border:0;color:#aeb6b0;background:transparent;display:flex;align-items:center;gap:11px;border-radius:4px;text-decoration:none;font-size:13px;text-align:left}.sidebar nav .is-active{color:#fff;background:#343c36}.sidebar__status{margin-top:auto;padding:15px 12px;background:#ffffff0b;display:flex;align-items:flex-start;gap:10px}.status-dot{width:7px;height:7px;border-radius:50%;margin-top:5px;background:#9c7568}.status-dot--live{background:#7eaa8a;box-shadow:0 0 0 4px #7eaa8a1f}.sidebar__status div{display:grid;gap:3px}.sidebar__status strong{font-size:11px;font-weight:600}.sidebar__status small{font-size:9px;color:#7f8a82}.sidebar__logout{margin-top:12px;border:0;padding:10px 12px;background:transparent;color:#8e9890;display:flex;gap:9px;align-items:center;font-size:11px}.workspace{width:calc(100% - 226px);margin-left:226px;min-width:0}.workspace__header{height:96px;padding:0 clamp(24px,3vw,46px);background:#f9f8f4;border-bottom:1px solid #deddd6;display:flex;align-items:center;justify-content:space-between;gap:24px}.workspace__header p{margin:0 0 4px;color:#97998f;font-size:10px;letter-spacing:.15em}.workspace__header h1{margin:0;font:600 22px/1.2 Songti SC,serif;letter-spacing:.08em}.header-actions{display:flex;align-items:center;gap:9px}.ghost-button,.publish-button{min-height:38px;border:1px solid #d7d6cf;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#fff;color:#4d524d;text-decoration:none;font-size:12px}.ghost-button:hover{border-color:#a7aaa2}.publish-button{border-color:var(--wine-deep);background:var(--wine-deep);color:#fff}.ghost-button:disabled,.publish-button:disabled{opacity:.55;cursor:wait}.workspace__content{padding:26px clamp(24px,3vw,46px) 50px;display:grid;grid-template-columns:minmax(560px,1fr) 430px;gap:26px;align-items:start}.editor-header__title{min-width:0;display:flex;align-items:center;gap:16px}.editor-header__title>button{min-width:max-content;min-height:38px;padding:0 12px;border:1px solid #deddd6;background:#fff;color:#60655f;display:inline-flex;align-items:center;gap:6px;font-size:11px}.editor-header__title>div{min-width:0}.editor-header__title p{max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-card{min-width:0;background:#faf9f6;border:1px solid #deddd7;box-shadow:0 10px 35px #282c280a}.section-tabs{min-height:56px;padding:0 18px;border-bottom:1px solid #e2e1da;display:flex;align-items:stretch;gap:2px;overflow-x:auto}.section-tabs button{position:relative;min-width:max-content;border:0;padding:0 12px;background:transparent;color:#898c86;display:flex;align-items:center;gap:6px;font-size:12px}.section-tabs button:after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:2px;background:transparent}.section-tabs button.is-active{color:var(--wine);font-weight:600}.section-tabs button.is-active:after{background:var(--wine)}.editor-card__body{padding:28px}.editor-heading{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid #e8e7e1}.editor-heading p{margin:0 0 6px;color:var(--wine);font-size:10px;letter-spacing:.18em}.editor-heading h2{margin:0;font:500 19px/1.3 Songti SC,serif;letter-spacing:.06em}.editor-heading button{width:34px;height:34px;border:1px solid #dcdbd5;background:#fff;color:#7d817a;display:grid;place-items:center}.editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px}.field{min-width:0;display:grid;gap:8px;color:#5c605a;font-size:12px;font-weight:600}.field--wide{grid-column:1 / -1}.field>input,.field>textarea{width:100%;border:1px solid #dcdad3;background:#fff;color:#282d29;padding:11px 12px;outline:none;border-radius:2px;font-size:13px;font-weight:400;transition:.2s;resize:vertical}.field>input{height:42px}.field>input:focus,.field>textarea:focus{border-color:#9d786c;box-shadow:0 0 0 3px #6c25270f}.field>small{color:#a0a29d;font-size:10px;font-weight:400}.coordinate-note{display:flex;gap:12px;padding:15px;color:#5b6a60;background:#edf0eb;font-size:12px}.coordinate-note>svg{flex:0 0 auto;margin-top:1px}.coordinate-note div{display:grid;gap:3px}.coordinate-note strong{font-weight:600}.coordinate-note span{color:#879088;font-size:10px}.editor-grid--images{gap:18px}.image-uploader{min-width:0;display:grid;gap:8px}.image-uploader--wide{grid-column:1 / -1}.image-uploader__head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#5c605a;font-size:12px;font-weight:600}.image-uploader__head small{color:#a3a49f;font-size:9px;font-weight:400}.image-uploader__body{position:relative;height:148px;overflow:hidden;background:#ddd}.image-uploader--wide .image-uploader__body{height:210px}.image-uploader__body>img{width:100%;height:100%;object-fit:cover}.image-uploader__button{position:absolute;right:10px;bottom:10px;min-height:32px;padding:0 11px;display:flex;align-items:center;gap:6px;color:#fff;background:#191e1bdb;font-size:10px;font-weight:500;cursor:pointer}.image-uploader__button input{display:none}.image-uploader__caption{height:38px;border:1px solid #dcdad3;background:#fff;padding:0 11px;color:#444a45;font-size:11px;outline:none}.share-card{display:grid;grid-template-columns:180px 1fr;gap:18px;padding:14px;border:1px solid #dddcd5;background:#fff}.share-card img{width:180px;aspect-ratio:1.25;object-fit:cover}.share-card div{display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.share-card small{color:#a1a39e;font-size:10px}.share-card strong{margin-top:11px;font:500 16px/1.55 Songti SC,serif}.share-card span{margin-top:12px;color:#8d9089;font-size:11px}.collection-content{padding:28px clamp(24px,3vw,46px) 54px}.collection-overview{min-height:178px;padding:32px 36px;color:#fff;background:#303733;display:flex;align-items:center;justify-content:space-between;gap:40px;overflow:hidden;position:relative}.collection-overview:after{content:"雅";position:absolute;right:-8px;bottom:-52px;color:#ffffff06;font:190px/1 Songti SC,serif;pointer-events:none}.collection-overview>div:first-child{position:relative;z-index:1;max-width:620px}.collection-overview p{margin:0 0 13px;color:#c3a08e;font:9px/1 Georgia,serif;letter-spacing:.28em}.collection-overview h2{margin:0;font:500 clamp(22px,2vw,30px)/1.4 "Songti SC","Noto Serif CJK SC",serif;letter-spacing:.06em}.collection-overview>div:first-child>span{display:block;margin-top:12px;color:#aeb5af;font-size:12px}.collection-overview__stats{position:relative;z-index:1;min-width:330px;display:grid;grid-template-columns:1fr 1px 1fr 1px 1fr;align-items:center;gap:20px}.collection-overview__stats div{display:grid;justify-items:center;gap:4px}.collection-overview__stats strong{font:500 31px/1.2 Georgia,serif}.collection-overview__stats span{color:#929d95;font-size:10px}.collection-overview__stats i{width:1px;height:38px;background:#ffffff1f}.collection-heading{margin:31px 0 15px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.collection-heading h2{margin:0;font:600 18px/1.3 Songti SC,serif;letter-spacing:.06em}.collection-heading p{margin:6px 0 0;color:#8b8e87;font-size:11px}.invitation-records{display:grid;gap:12px}.invitation-record{min-width:0;border:1px solid #deddd7;background:#faf9f6;box-shadow:0 8px 24px #282c2809}.invitation-record__main{min-width:0;padding:22px 24px 20px;display:flex;justify-content:space-between;align-items:flex-start;gap:30px}.invitation-record__title{min-width:0}.invitation-record__title h3{margin:10px 0 0;overflow:hidden;color:#282d29;font:600 18px/1.35 Songti SC,serif;letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap}.invitation-record__title p{margin:5px 0 0;color:#9a9c96;font-size:10px}.record-status{width:max-content;min-height:22px;padding:0 8px;border:1px solid #dedbd3;border-radius:12px;color:#878a84;background:#f3f1ec;display:inline-flex;align-items:center;gap:6px;font-size:9px}.record-status i{width:5px;height:5px;border-radius:50%;background:#a4a49f}.record-status--published{border-color:#cfdcd2;color:#587061;background:#edf3ee}.record-status--published i{background:#6d9878;box-shadow:0 0 0 3px #6d98781f}.record-status--changes{border-color:#e5d5ba;color:#8a6731;background:#faf3e6}.record-status--changes i{background:#b98a43}.record-status--archived{color:#777b76;background:#e9eae7}.invitation-record__meta{flex:0 1 560px;padding-top:7px;display:grid;grid-template-columns:repeat(3,minmax(125px,1fr));gap:10px 24px;color:#696e68;font-size:11px}.invitation-record__meta span{min-width:0;display:flex;align-items:center;gap:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invitation-record__meta svg{flex:0 0 auto;color:#a18276}.invitation-record__link{min-height:42px;padding:0 24px;border-top:1px solid #eceae4;background:#f6f4ef;display:flex;align-items:center;justify-content:space-between;gap:16px}.invitation-record__link>div{min-width:0;display:flex;align-items:center;gap:8px;color:#9a9d97}.invitation-record__link code{overflow:hidden;color:#7f847e;font:10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;text-overflow:ellipsis;white-space:nowrap}.invitation-record__link button{flex:0 0 auto;border:0;padding:5px 0 5px 10px;color:var(--wine);background:transparent;font-size:10px}.invitation-record__actions{min-height:52px;padding:8px 15px 8px 19px;border-top:1px solid #e8e6df;display:flex;align-items:center;gap:3px}.record-action{min-height:34px;padding:0 10px;border:0;color:#666b65;background:transparent;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none;font-size:11px}.record-action:hover{background:#efede8;color:#343a35}.record-action--primary{color:var(--wine);font-weight:600}.record-action--danger{margin-left:auto;color:#9d5555}.record-action--danger:hover{color:#873c3e;background:#f7eaea}.collection-empty{min-height:330px;border:1px dashed #d6d4cc;background:#faf9f6a6;display:grid;place-content:center;justify-items:center;text-align:center}.collection-empty>div{width:56px;height:56px;display:grid;place-items:center;color:#9b786b;background:#eee7df}.collection-empty h2{margin:18px 0 0;font:500 20px Songti SC,serif}.collection-empty p{margin:9px 0 0;color:#8c8f88;font-size:11px}.collection-empty .publish-button{margin-top:22px}.workspace-state{min-height:calc(100vh - 96px);display:grid;place-content:center;justify-items:center;gap:15px;color:#686d67}.workspace-state p{margin:0;font-size:12px}.workspace-state--error h2{margin:0;font:500 20px Songti SC,serif}.workspace-state--error>div{margin-top:8px;display:flex;gap:8px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;padding:24px;background:#14181594;display:grid;place-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{position:relative;width:min(100%,460px);padding:34px;color:#2b302c;background:#faf9f6;border:1px solid rgba(255,255,255,.5);box-shadow:0 28px 80px #0000003d}.modal>p:first-of-type{margin:0 0 10px;color:#9c7568;font:9px/1 Georgia,serif;letter-spacing:.24em}.modal h2{margin:0;padding-right:35px;font:500 23px/1.4 Songti SC,serif;letter-spacing:.05em}.modal__close{position:absolute;top:22px;right:22px;width:34px;height:34px;border:0;color:#858982;background:transparent;display:grid;place-items:center}.modal__close:hover{color:#373d38;background:#efede8}.modal-form{margin-top:27px}.modal-form label{display:grid;gap:9px;color:#5b605a;font-size:12px;font-weight:600}.modal-form input{width:100%;height:46px;padding:0 13px;border:1px solid #d9d7d0;color:#292e2a;background:#fff;outline:none;font-size:13px}.modal-form input:focus{border-color:#9d786c;box-shadow:0 0 0 3px #6c25270f}.modal-form__hint{margin:10px 0 0;color:#93968f;font-size:10px;line-height:1.6}.modal__actions{margin-top:27px;display:flex;justify-content:flex-end;gap:8px}.danger-button{min-height:38px;padding:0 14px;border:1px solid #873c3e;color:#fff;background:#873c3e;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:12px}.danger-button:disabled{opacity:.55;cursor:wait}.delete-dialog__copy{margin-top:24px;padding:17px;color:#5c605a;background:#f0eee8}.delete-dialog__copy strong{color:#303530;font:600 15px Songti SC,serif}.delete-dialog__copy p{margin:8px 0 0;font-size:11px;line-height:1.7}.delete-dialog__copy .delete-dialog__notice{padding-top:10px;border-top:1px solid #ddd8cd;color:#8a6731}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #a47463;outline-offset:2px}.phone-preview-panel{position:sticky;top:20px;background:#303733;padding:18px 20px 16px;min-height:calc(100vh - 142px)}.phone-preview-panel__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;color:#fff}.phone-preview-panel__head>div:first-child{display:grid;gap:2px}.phone-preview-panel__head span{font-size:12px;font-weight:600}.phone-preview-panel__head small{color:#818a83;font-size:9px}.phone-preview-panel__head>div:last-child{color:#8d9890;display:flex;align-items:center;gap:6px;font-size:9px}.phone-preview-panel__head i{width:6px;height:6px;border-radius:50%;background:#84aa8c}.phone-frame{position:relative;width:min(100%,342px);height:min(73vh,710px);margin:0 auto;padding:11px 8px 10px;border:1px solid #5a625c;border-radius:32px;background:#101311;box-shadow:0 18px 45px #0000003d}.phone-frame__speaker{position:absolute;top:16px;left:50%;transform:translate(-50%);width:62px;height:17px;border-radius:20px;background:#101311;z-index:5}.phone-frame__screen{position:relative;width:100%;height:100%;overflow-y:auto;scrollbar-width:none;border-radius:24px;background:var(--paper);transform:translateZ(0)}.phone-frame__screen::-webkit-scrollbar{display:none}.preview-hint{margin:12px 0 0;display:flex;justify-content:center;align-items:center;gap:6px;color:#89938c;font-size:9px}.public-preview{width:100%;min-height:100vh;display:flex;justify-content:center;background:#d7d3ca}.preview-state{min-height:100vh;padding:40px 24px;color:#303530;background:#f4f0e9;display:grid;place-content:center;justify-items:center;text-align:center}.preview-state__mark{width:52px;height:52px;margin-bottom:24px;border:1px solid #8f5a4d;color:var(--wine);display:grid;place-items:center;font:26px Songti SC,serif}.preview-state p{margin:0;color:#9a7568;font:9px Georgia,serif;letter-spacing:.28em}.preview-state h1{margin:17px 0 0;font:500 24px/1.45 Songti SC,serif;letter-spacing:.06em}.preview-state span{margin-top:10px;color:#91948e;font-size:11px}.invitation{--invitation-width: 390px;position:relative;width:min(100%,var(--invitation-width));min-height:100vh;overflow-x:hidden;padding-bottom:calc(92px + env(safe-area-inset-bottom));color:#171713;background-color:#f7f0e6;background-image:var(--paper-image);background-size:540px auto;box-shadow:0 0 45px #0000001f}.invitation--embedded{--invitation-width: 100%;box-shadow:none;min-height:0}.invitation__masthead{position:relative;min-height:216px;padding:48px 24px 24px;text-align:center;overflow:hidden}.invitation__masthead:before{content:"";position:absolute;width:160px;height:160px;border:38px solid rgba(154,78,58,.06);border-radius:50%;top:-80px;right:-70px}.masthead__seal{position:absolute;top:32px;left:27px;width:25px;height:25px;display:grid;place-items:center;background:#8b3431;color:#f5e6d6;font:13px Songti SC,serif}.masthead__eyebrow{margin:0;color:#9a6659;font:9px/1 Georgia,serif;letter-spacing:.38em}.invitation__masthead h1{margin:22px 0 0;font:500 clamp(58px,17vw,72px)/1 "Songti SC","Noto Serif CJK SC",serif;letter-spacing:.18em;text-indent:.18em}.masthead__script{margin:7px 0 0;color:#c8846d;font:italic 22px/1.1 Snell Roundhand,Brush Script MT,cursive;letter-spacing:.08em}.masthead__line{width:32px;height:1px;margin:20px auto 0;background:#7f302e}.invitation__hero{position:relative;margin:0 12px;height:232px;overflow:hidden;color:#fff;background:#1e211e}.invitation__hero>img{width:100%;height:100%;object-fit:cover}.hero__veil{position:absolute;top:0;right:0;bottom:0;left:0;background:#0b0d0b7a}.hero__content{position:absolute;top:0;right:0;bottom:0;left:0;padding:29px 26px;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;text-align:left}.hero__kicker{padding-bottom:13px;color:#d7bd99;font:8px Georgia,serif;letter-spacing:.3em}.hero__content strong{font:500 24px/1.35 Songti SC,serif;letter-spacing:.09em}.hero__content>span:last-child{margin-top:11px;color:#ffffffc2;font-size:10px;letter-spacing:.15em}.section-pad{padding-left:34px;padding-right:34px}.invitation__letter{padding-top:52px;padding-bottom:44px}.letter__honorific{margin:0;font-size:15px;font-weight:600}.letter__greeting{margin:8px 0 0;font:500 15px/1.65 Songti SC,serif;letter-spacing:.03em}.letter__rule{width:24px;height:1px;margin:29px 0 24px;background:#a05e4c}.date-block{display:flex;align-items:baseline;gap:11px}.date-block p{margin:0;font:600 26px/1.2 Songti SC,serif;letter-spacing:.03em}.date-block span{color:#585b55;font-size:13px}.letter__lunar{margin:18px 0 0;font-size:17px;font-weight:600}.meal-time{margin-top:21px;display:flex;align-items:baseline;gap:10px}.meal-time span{font-size:15px;font-weight:600}.meal-time strong{font:600 21px Georgia,serif;letter-spacing:.02em}.invitation__details{padding-top:36px;padding-bottom:40px;background:#fffaf48a}.detail-row{min-height:45px;display:grid;grid-template-columns:86px 1fr;align-items:center;border-bottom:1px solid rgba(80,66,55,.12);font-size:13px}.detail-row>span{color:#7c756c}.detail-row strong{font-weight:600}.detail-row--phone{grid-template-columns:86px 1fr auto}.detail-row--phone button{height:28px;padding:0 10px;border:1px solid #6f6e67;border-radius:14px;background:transparent;display:flex;align-items:center;gap:3px;font-size:10px}.venue-card{position:relative;width:calc(100% - 34px);min-height:124px;margin:14px 17px 0;padding:0;border:0;color:#fff;text-align:left;overflow:hidden;background:#343b37}.venue-card>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.venue-card__veil{position:absolute;top:0;right:0;bottom:0;left:0;background:#1c221ec7}.venue-card__copy{position:absolute;top:0;right:77px;bottom:0;left:0;padding:23px 20px;display:flex;flex-direction:column;justify-content:center}.venue-card__copy small{font-size:11px;color:#d9d9d2}.venue-card__copy strong{margin-top:9px;font:500 13px/1.55 Songti SC,serif}.venue-card__action{position:absolute;top:0;right:0;bottom:0;width:76px;border-left:1px solid rgba(255,255,255,.22);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:11px}.invitation__highlights{padding-top:66px;padding-bottom:61px;text-align:center}.invitation__highlights .ornament{margin-bottom:25px;color:#9e6657;font:8px Georgia,serif;letter-spacing:.38em}.invitation__highlights p{margin:10px 0;font:600 16px/1.45 Songti SC,serif;letter-spacing:.12em}.invitation__gallery{padding:0 10px;display:grid;gap:10px}.invitation__gallery figure{position:relative;margin:0;min-height:255px;overflow:hidden;background:#222}.invitation__gallery img{width:100%;height:255px;object-fit:cover}.invitation__gallery figcaption{position:absolute;left:18px;right:18px;bottom:15px;padding-top:10px;border-top:1px solid rgba(255,255,255,.42);color:#fff;font-size:10px;letter-spacing:.08em;text-shadow:0 1px 5px rgba(0,0,0,.7)}.invitation__closing{padding:70px 20px 58px;display:grid;justify-items:center;text-align:center}.invitation__closing span{color:#9d685b;font-size:10px;letter-spacing:.4em;text-indent:.4em}.invitation__closing strong{margin-top:12px;font:500 30px Songti SC,serif;letter-spacing:.18em;text-indent:.18em}.invitation__closing p{margin:20px 0 0;color:#6d6d67;font-size:10px;letter-spacing:.16em}.invitation__actions{position:fixed;bottom:12px;left:50%;z-index:8;width:min(calc(100% - 32px),358px);min-height:58px;margin:0;padding-bottom:env(safe-area-inset-bottom);border:1px solid rgba(255,255,255,.2);border-radius:30px;background:#232724f5;color:#fff;display:grid;grid-template-columns:1fr 1px 1fr 1px 1fr;align-items:center;box-shadow:0 9px 25px #0000002e;transform:translate(-50%)}.invitation__actions button{height:56px;padding:0 5px;border:0;background:transparent;color:#fff;font-size:11px;letter-spacing:.03em}.invitation__actions i{width:1px;height:16px;background:#ffffff52}.invitation--embedded .invitation__masthead{min-height:216px;padding-top:48px}.invitation--embedded .invitation__masthead h1{font-size:58px}.invitation--embedded .invitation__hero{height:232px}.invitation--embedded .hero__content strong{font-size:20px;letter-spacing:.06em;white-space:nowrap}.toast{position:fixed;right:28px;bottom:26px;z-index:30;min-height:46px;padding:0 17px 0 10px;display:flex;align-items:center;gap:10px;color:#fff;background:#29332c;box-shadow:0 12px 35px #0003;font-size:12px}.toast--error{background:#7f2f31}.toast__mark{width:25px;height:25px;border-radius:50%;background:#ffffff24;display:grid;place-items:center}@media(max-width:1180px){.workspace__content{grid-template-columns:minmax(500px,1fr) 380px}.phone-preview-panel{padding-left:15px;padding-right:15px}.invitation-record__meta{grid-template-columns:repeat(2,minmax(125px,1fr))}}@media(max-width:1020px){.sidebar{width:190px}.workspace{width:calc(100% - 190px);margin-left:190px}.workspace__content{display:block}.phone-preview-panel{position:relative;top:auto;margin-top:24px;min-height:auto}.phone-frame{height:710px}.collection-overview{align-items:flex-start;flex-direction:column;gap:28px}.collection-overview__stats{width:min(100%,430px)}}@media(max-width:760px){.login-shell{display:block}.login-visual{min-height:310px}.login-visual__brand{top:26px;left:26px}.login-visual__copy{left:26px;bottom:30px}.login-visual__copy h1{font-size:30px}.login-panel{padding:42px 24px}.sidebar{position:static;width:100%;min-height:auto;padding:18px}.sidebar nav,.sidebar__status,.sidebar__logout{display:none}.sidebar__brand{padding:0;border:0}.admin-shell{display:block}.workspace{width:100%;margin-left:0}.workspace__header{height:auto;padding:18px;display:block}.editor-header__title{align-items:flex-start}.header-actions{margin-top:16px;flex-wrap:wrap}.workspace__content,.collection-content{padding:16px}.collection-overview{min-height:auto;padding:25px 22px}.collection-overview__stats{min-width:0;gap:10px}.collection-overview__stats strong{font-size:25px}.collection-heading{align-items:center}.invitation-record__main{display:block;padding:20px}.invitation-record__meta{margin-top:18px;grid-template-columns:1fr;gap:9px}.invitation-record__link{padding:7px 20px}.invitation-record__actions{padding:8px 10px;flex-wrap:wrap}.record-action{padding-left:8px;padding-right:8px}.record-action--danger{margin-left:0}.editor-card__body{padding:20px 16px}.editor-grid{grid-template-columns:1fr}.field--wide,.image-uploader--wide{grid-column:auto}.section-tabs{padding:0 6px}.section-tabs button{padding:0 9px}.phone-preview-panel{margin-top:16px}.modal-backdrop{padding:14px}.modal{padding:28px 22px 22px}.modal__close{top:14px;right:14px}}@media(max-width:430px){.public-preview{display:block}.invitation{width:100%;box-shadow:none}}
