@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_246ccd{font-family:Geist,Geist Fallback;font-style:normal}.__variable_246ccd{--font-geist-sans:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e038a29029a234f2-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_c29908{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_c29908{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}:root{--bg:#fff7fb;--text:#26131c;--muted:#725b66;--card:rgba(255,255,255,0.78);--line:rgba(137,76,102,0.18);--brand:#e84c88;--brand-dark:#bd2d66;--gold:#c38b2e;--shadow:0 24px 70px rgba(120,40,76,0.17)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:radial-gradient(circle at top left,rgba(255,199,226,.7),transparent 36rem),radial-gradient(circle at bottom right,rgba(255,226,164,.6),transparent 30rem),var(--bg);font-family:var(--font-geist-sans),ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}.container{width:min(1120px,calc(100% - 32px));margin-inline:auto}.nav{display:flex;justify-content:space-between;padding:24px 0}.logo,.nav{align-items:center}.logo{display:inline-flex;gap:10px;font-weight:850;letter-spacing:-.04em;font-size:22px}.logo-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:14px;background:linear-gradient(135deg,#ff78ad,#ffcd74);box-shadow:var(--shadow)}.nav-links{display:flex;gap:14px;color:var(--muted);font-size:14px}.btn,.nav-links{align-items:center}.btn{display:inline-flex;justify-content:center;gap:8px;border:1px solid transparent;border-radius:999px;padding:12px 18px;font-weight:750;cursor:pointer;transition:.2s ease;background:var(--brand);color:#fff;box-shadow:0 16px 35px rgba(232,76,136,.22)}.btn:hover{transform:translateY(-1px);background:var(--brand-dark)}.btn.secondary{background:rgba(255,255,255,.72);color:var(--text);border-color:var(--line);box-shadow:none}.btn.small{padding:9px 13px;font-size:13px}.hero{display:grid;grid-template-columns:1.05fr .95fr;grid-gap:44px;gap:44px;padding:56px 0 72px}.badge,.hero{align-items:center}.badge{display:inline-flex;gap:8px;color:#8a3159;border:1px solid var(--line);background:rgba(255,255,255,.58);border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700}h1{font-size:clamp(42px,7vw,76px);line-height:.94;letter-spacing:-.075em;margin:20px 0}h2{font-size:clamp(30px,5vw,48px);letter-spacing:-.055em;line-height:1;margin:0 0 14px}p{line-height:1.75;color:var(--muted)}.lead{font-size:18px;max-width:640px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.card,.hero-card,.panel-card{border:1px solid var(--line);background:var(--card);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:32px;box-shadow:var(--shadow)}.hero-card{padding:28px;position:relative;overflow:hidden}.hero-card:before{content:"";position:absolute;width:220px;height:220px;border-radius:999px;background:rgba(232,76,136,.16);top:-80px;right:-70px}.envelope{min-height:430px;border-radius:28px;padding:28px;background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,245,250,.58)),repeating-linear-gradient(-45deg,transparent 0 22px,rgba(232,76,136,.08) 22px 24px);position:relative;border:1px solid rgba(232,76,136,.16)}.envelope h3{font-size:32px;line-height:1.05;letter-spacing:-.04em;margin:14px 0}.envelope .stamp{position:absolute;right:24px;top:24px;display:grid;place-items:center;width:74px;height:74px;border:2px dashed rgba(232,76,136,.48);border-radius:20px;transform:rotate(8deg);color:var(--brand);font-size:30px}.section{padding:56px 0}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px}.card{padding:24px}.card h3{margin:0 0 8px;letter-spacing:-.03em;font-size:22px}.event-page{min-height:100vh;padding:28px 16px 70px}.page-shell{width:min(1020px,100%);margin:0 auto;display:grid;grid-gap:22px;gap:22px}.narrow-shell{width:min(820px,100%)}.page-menu{position:-webkit-sticky;position:sticky;top:12px;z-index:20;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:10px;border:1px solid var(--line);background:rgba(255,255,255,.78);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:999px;box-shadow:0 14px 40px rgba(120,40,76,.12)}.page-menu a{padding:10px 14px;border-radius:999px;font-size:14px;color:var(--muted)}.page-menu a:hover{background:rgba(232,76,136,.08);color:var(--text)}.hero-story{display:grid;grid-template-columns:1fr .9fr;grid-gap:26px;gap:26px;align-items:center}.panel-card{padding:clamp(22px,3.5vw,36px);overflow:hidden;position:relative}.apology-card:before,.birthday-cover:before,.cover-card:before,.love-cover:before{content:"";position:absolute;inset:-80px auto auto -70px;width:220px;height:220px;border-radius:999px;background:rgba(232,76,136,.08)}.cover-copy,.cover-media{position:relative;z-index:1}.eyebrow-text{margin:18px 0 0;text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:800;color:#9a5b78}.hero-photo,.single-photo{width:100%;object-fit:cover;border-radius:28px;border:1px solid var(--line);box-shadow:0 22px 50px rgba(48,14,28,.14)}.hero-photo{min-height:420px;max-height:540px}.single-photo{aspect-ratio:4/3;margin:18px auto 0}.hero-placeholder{min-height:360px;display:grid;place-items:center;border-radius:28px;border:1px dashed rgba(232,76,136,.3);background:linear-gradient(135deg,rgba(255,255,255,.8),rgba(255,244,248,.65));color:var(--muted);text-align:center;padding:20px}.mini-meta{display:flex;flex-wrap:wrap;gap:14px;margin-top:18px;color:var(--muted)}.mini-meta span{border:1px solid var(--line);background:rgba(255,255,255,.72);border-radius:999px;padding:9px 12px;font-size:14px}.story-section{display:grid;grid-gap:14px;gap:14px}.meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.meta-tile{border:1px solid var(--line);background:rgba(255,255,255,.7);border-radius:24px;padding:18px;display:grid;grid-gap:8px;gap:8px}.meta-tile span{text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:#92566f;font-weight:700}.meta-tile strong{font-size:18px}.section-text{margin-top:0}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.gallery-item{margin:0;overflow:hidden;border-radius:22px;border:1px solid var(--line);background:rgba(255,255,255,.72);min-height:200px}.gallery-item img{width:100%;height:100%;min-height:200px;object-fit:cover}.letter-box{display:grid;grid-gap:14px;gap:14px;border:1px solid rgba(232,76,136,.16);background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,248,251,.82));border-radius:28px;padding:clamp(22px,3vw,30px)}.letter-box p{margin:0;color:#432333;font-size:18px;line-height:1.9}.signature-block{text-align:center;color:var(--muted);margin-top:14px}.signature-block strong{display:block;margin-top:6px;color:var(--text);font-size:24px}.inline-notice{display:inline-flex;margin-top:18px}.birthday-cover .cover-copy h1{margin-bottom:8px}.apology-card,.love-cover{text-align:center}.preview-page{min-height:100vh;display:grid;place-items:center;padding:36px 16px}.public-card{width:min(760px,100%);border-radius:38px;background:rgba(255,255,255,.84);border:1px solid var(--line);box-shadow:var(--shadow);padding:clamp(24px,6vw,54px);text-align:center;position:relative;overflow:hidden}.public-card:after,.public-card:before{content:"";position:absolute;border-radius:999px;z-index:0}.public-card:before{inset:-80px auto auto -90px;width:220px;height:220px;background:rgba(232,76,136,.12)}.public-card:after{right:-70px;bottom:-90px;width:230px;height:230px;background:rgba(255,196,95,.16)}.public-card>*{position:relative;z-index:1}.public-card h1{font-size:clamp(38px,8vw,72px);margin-top:12px}.message{white-space:pre-wrap;color:#4a2636;font-size:clamp(17px,3vw,21px);line-height:1.85;margin:28px auto;max-width:620px}.meta-box{display:grid;grid-gap:10px;gap:10px;background:rgba(255,247,251,.74);border:1px solid var(--line);border-radius:24px;padding:18px;margin:24px 0;text-align:left}.signature{margin-top:28px;color:var(--muted)}.signature strong{color:var(--text);display:block;font-size:22px}.admin-layout{display:grid;grid-template-columns:1fr 1fr;grid-gap:22px;gap:22px;align-items:start;padding:32px 0 80px}.admin-layout-wide{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}.form{display:grid;grid-gap:14px;gap:14px}.field{display:grid;grid-gap:7px;gap:7px}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.label{font-size:13px;font-weight:800;color:#6a384e}.input,.select,.textarea{border:1px solid var(--line);border-radius:18px;padding:13px 14px;background:rgba(255,255,255,.74);outline:none;color:var(--text)}.textarea{min-height:170px;resize:vertical}.textarea-small{min-height:118px}.notice{border:1px solid rgba(232,76,136,.22);background:rgba(255,255,255,.62);color:#7b3d59;border-radius:20px;padding:14px 16px;font-size:14px;line-height:1.55}.list{display:grid;grid-gap:12px;gap:12px}.order-item{display:flex;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--line);background:rgba(255,255,255,.55);border-radius:18px}.order-item strong{display:block}.order-item span{color:var(--muted);font-size:13px}.sidebar-sticky{position:-webkit-sticky;position:sticky;top:16px}.footer{padding:42px 0;color:var(--muted);font-size:14px}.theme-gold{--brand:#b77b22;--brand-dark:#916019;--bg:#fff9eb}.theme-blue{--brand:#4b82dd;--brand-dark:#2762b8;--bg:#f3f8ff}.theme-lilac{--brand:#9a61d6;--brand-dark:#7d42bc;--bg:#fbf6ff}@media (max-width:960px){.admin-layout,.admin-layout-wide,.hero,.hero-story{grid-template-columns:1fr}.sidebar-sticky{position:static}}@media (max-width:850px){.gallery-grid,.grid-3,.meta-grid,.two-col{grid-template-columns:1fr}.nav{align-items:flex-start;gap:16px;flex-direction:column}.nav-links{flex-wrap:wrap}.nav-links,.page-menu{justify-content:flex-start}.page-menu{border-radius:24px}}.auth-layout{min-height:calc(100vh - 110px);display:grid;place-items:center;padding-top:40px;padding-bottom:70px}.auth-card{width:min(560px,100%)}.link-button{border:0;background:transparent;color:var(--muted);font:inherit;cursor:pointer;padding:0}.link-button:hover{color:var(--text)}.upload-button{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;justify-content:center;border:1px dashed rgba(232,76,136,.38);background:rgba(255,255,255,.62);color:#7b3d59;border-radius:999px;padding:10px 14px;font-size:13px;font-weight:800;cursor:pointer}.upload-button:hover{background:rgba(232,76,136,.08)}.btn.danger{background:#fff1f1;color:#b42323;border-color:rgba(180,35,35,.18);box-shadow:none}.btn.danger:hover{background:#ffe1e1;color:#8d1717}.order-item-wide{align-items:flex-start;flex-direction:column}.order-item-wide>div:first-child span{display:block;margin-top:3px}.order-actions{margin-top:10px!important;gap:8px}.open-overlay{position:fixed;inset:0;z-index:999;display:grid;place-items:center;padding:22px;background:radial-gradient(circle at top left,rgba(255,199,226,.95),transparent 32rem),radial-gradient(circle at bottom right,rgba(255,226,164,.9),transparent 30rem),rgba(255,247,251,.96);animation:softFadeIn .45s ease both}.open-card{width:min(560px,100%);padding:clamp(26px,6vw,46px);border-radius:36px;border:1px solid var(--line);background:rgba(255,255,255,.84);box-shadow:var(--shadow);text-align:center;position:relative;overflow:hidden}.open-card:before{content:"";position:absolute;width:240px;height:240px;left:-120px;top:-100px;border-radius:999px;background:rgba(232,76,136,.12)}.open-card>*{position:relative;z-index:1}.open-card h1{font-size:clamp(42px,9vw,72px)}.page-locked{filter:blur(10px);transform:scale(.985);pointer-events:none;max-height:100vh;overflow:hidden}.page-opened{animation:pageRise .6s ease both}.share-card{text-align:center}.qr-wrap{width:min(260px,100%);margin:18px auto;border:1px solid var(--line);border-radius:28px;padding:14px;background:#fff;box-shadow:0 16px 45px rgba(120,40,76,.1)}.qr-wrap img{width:100%;height:auto}.center-actions{justify-content:center}@keyframes softFadeIn{0%{opacity:0}to{opacity:1}}@keyframes pageRise{0%{opacity:.2;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width:560px){.order-actions .btn.small{flex:1 1 auto}}.mobile-only{display:none}body,html{max-width:100%;overflow-x:hidden}.container{max-width:1120px}.nav,.nav-links{min-width:0}.nav-links a,.nav-links button{white-space:nowrap}.event-page{overflow-x:hidden}.card,.cover-copy,.cover-media,.narrow-shell,.page-shell,.panel-card{min-width:0}.hero-photo{width:100%;aspect-ratio:4/5}.single-photo{max-height:520px}.sidebar-sticky{max-height:calc(100vh - 32px);overflow:auto}.order-actions{width:100%}.order-actions .btn{white-space:nowrap}.share-card{width:100%}@media (max-width:760px){:root{--shadow:0 18px 44px rgba(120,40,76,0.13)}body{background:radial-gradient(circle at top left,rgba(255,199,226,.58),transparent 24rem),radial-gradient(circle at bottom right,rgba(255,226,164,.48),transparent 22rem),var(--bg)}.container{width:min(100% - 22px,1120px)}.nav{padding:14px 0 10px;gap:12px}.logo{font-size:19px;letter-spacing:-.035em}.logo-mark{width:34px;height:34px;border-radius:12px}.nav-links{width:100%;display:flex;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;gap:8px;padding:4px 0 8px;scrollbar-width:none}.nav-links::-webkit-scrollbar{display:none}.nav-links a,.nav-links button{flex:0 0 auto;border:1px solid var(--line);background:rgba(255,255,255,.66);border-radius:999px;padding:9px 12px;font-size:13px}.link-button{border:1px solid var(--line)}h1{font-size:clamp(36px,14vw,54px);line-height:.98;letter-spacing:-.065em}h2{font-size:clamp(28px,10vw,40px);line-height:1.02}.lead{font-size:16px;line-height:1.68}.hero{gap:24px;padding:28px 0 44px}.card,.hero-card,.panel-card{border-radius:24px}.card,.hero-card,.panel-card{padding:18px}.envelope{min-height:330px;padding:20px;border-radius:22px}.envelope h3{font-size:26px}.envelope .stamp{width:56px;height:56px;font-size:23px;border-radius:16px}.section{padding:34px 0}.actions{gap:10px;margin-top:20px}.actions .btn{flex:1 1 auto}.btn{padding:11px 15px}.event-page{padding:16px 11px 104px}.page-shell{gap:16px}.page-menu{position:fixed;left:10px;right:10px;bottom:12px;top:auto;z-index:80;display:flex;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain;gap:7px;padding:9px;border-radius:22px;scrollbar-width:none;background:rgba(255,255,255,.88);box-shadow:0 18px 50px rgba(40,14,28,.18)}.page-menu::-webkit-scrollbar{display:none}.page-menu a{flex:0 0 auto;padding:9px 12px;font-size:13px;background:rgba(255,247,251,.88);border:1px solid rgba(137,76,102,.12)}.hero-story{gap:18px}.birthday-cover,.cover-card{padding-top:22px}.hero-photo{min-height:0;aspect-ratio:4/5}.hero-photo,.single-photo{max-height:none;border-radius:22px}.single-photo{aspect-ratio:4/3}.hero-placeholder{min-height:260px;border-radius:22px}.mini-meta{gap:8px}.mini-meta span{font-size:13px;padding:8px 10px}.meta-grid{gap:10px}.meta-tile{border-radius:18px;padding:14px}.meta-tile strong{font-size:16px;overflow-wrap:anywhere}.gallery-grid{gap:10px}.gallery-item{border-radius:18px}.gallery-item,.gallery-item img{min-height:220px}.letter-box{padding:18px;border-radius:22px}.letter-box p{font-size:16px;line-height:1.78}.signature-block strong{font-size:21px}.qr-wrap{width:min(220px,100%);border-radius:22px}.open-card{border-radius:28px;padding:26px 20px}.open-card h1{font-size:clamp(38px,14vw,56px)}.admin-layout,.admin-layout-wide{padding:18px 0 60px;gap:16px}.admin-layout h1{font-size:36px!important}.sidebar-sticky{position:static;max-height:none;overflow:visible}.form{gap:12px}.input,.select,.textarea{border-radius:15px;padding:12px;font-size:15px}.textarea{min-height:150px}.textarea-small{min-height:110px}.notice,.order-item{border-radius:16px;padding:12px}.order-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;grid-gap:8px;gap:8px}.order-actions .btn,.order-actions a,.upload-button{width:100%;justify-content:center}.auth-layout{min-height:calc(100vh - 120px);padding-top:20px}}@media (max-width:430px){.container{width:min(100% - 18px,1120px)}.badge{font-size:12px;padding:7px 10px}.event-page{padding-inline:8px}.card,.panel-card{padding:16px;border-radius:22px}.hero-photo,.hero-placeholder,.single-photo{border-radius:18px}.gallery-item,.gallery-item img{min-height:190px}.order-actions{grid-template-columns:1fr}.actions .btn{width:100%}.page-menu{left:8px;right:8px;bottom:8px}.page-menu a{font-size:12px;padding:8px 10px}}