:root{--dark:#211927;--ink:#3a2535;--wine:#66354d;--rose:#a96279;--rose2:#d7a1aa;--gold:#b89864;--cream:#fffaf1;--paper:#fffaf2;--muted:#846f75;--line:#eadbd4;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{margin:0;font-family:var(--sans);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #e29ea9;outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.55}[hidden]{display:none!important}.grain{position:fixed;inset:0;pointer-events:none;opacity:.16;z-index:9;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.24'/%3E%3C/svg%3E")}.invitation-page{min-height:100vh;min-height:100dvh;color:#fff;background:radial-gradient(ellipse at 50% 36%,#583a4d 0%,#352736 48%,#1b1522 100%);overflow-x:hidden}.ambient{position:fixed;z-index:0;pointer-events:none;border-radius:50%;filter:blur(7px);opacity:.35}.ambient-a{width:36vw;height:36vw;min-width:300px;min-height:300px;left:-17vw;top:-16vw;background:radial-gradient(circle,#a76a7a,transparent 68%)}.ambient-b{width:47vw;height:47vw;min-width:340px;min-height:340px;right:-17vw;bottom:-25vw;background:radial-gradient(circle,#8b5f6b,transparent 72%)}.floating-heart{position:fixed;color:#e1a5b0;pointer-events:none;opacity:.45;z-index:0;font-family:var(--serif);animation:float 7s ease-in-out infinite}.heart-a{left:9%;top:25%;font-size:39px}.heart-b{right:11%;top:22%;font-size:28px;animation-delay:-3s}.heart-c{right:17%;bottom:15%;font-size:42px;animation-delay:-2s}@keyframes float{50%{transform:translateY(-18px) rotate(13deg);opacity:.75}}
.invite-shell{position:relative;z-index:1;min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:38px 20px}.envelope-scene{text-align:center;width:min(100%,750px);padding-bottom:28px;animation:fadeUp .85s both}.mini-eyebrow{display:flex;justify-content:center;align-items:center;gap:14px;font-size:10px;letter-spacing:.35em;text-transform:uppercase;color:#d8b6b9}.mini-line{width:31px;height:1px;background:#b18b8c}.scene-headline{font:500 clamp(64px,12vw,109px)/.95 var(--serif);letter-spacing:-.045em;margin:23px 0 15px}.scene-headline em{font-weight:400;color:#eeb2bb}.headline-star{font:17px var(--sans);color:var(--gold);vertical-align:top;margin:12px}.scene-subtitle{font-size:13px;color:#e3ced1;line-height:1.8;letter-spacing:.015em}.envelope-button{position:relative;border:0;background:transparent;width:min(100%,475px);aspect-ratio:1.32;display:block;margin:38px auto 20px;padding:0;perspective:1000px;-webkit-tap-highlight-color:transparent}.envelope-shadow{position:absolute;bottom:7%;left:14%;width:72%;height:11%;border-radius:50%;background:#110a16;filter:blur(22px);opacity:.45}.envelope{position:absolute;display:block;inset:11% 3% 8%;filter:drop-shadow(0 24px 20px #130b1680)}.envelope-back{position:absolute;inset:0;z-index:0;background:#efd9cd;border:2px solid #e7c8b9;clip-path:polygon(0 0,100% 0,100% 100%,0 100%);border-radius:6px}.envelope-left{position:absolute;inset:0;z-index:3;background:linear-gradient(145deg,#f5e8dc 15%,#dac0b5 100%);clip-path:polygon(0 0,55% 57%,0 100%)}.envelope-right{position:absolute;inset:0;z-index:3;background:linear-gradient(215deg,#f5e9db 5%,#dbc3b7 100%);clip-path:polygon(100% 0,45% 57%,100% 100%)}.envelope-bottom{position:absolute;inset:0;z-index:4;background:linear-gradient(0deg,#efe0d3,#f6e9dc);clip-path:polygon(0 100%,50% 48%,100% 100%)}.envelope-flap{position:absolute;inset:0;z-index:6;background:linear-gradient(180deg,#f5e9de,#e7d0c1);clip-path:polygon(0 0,100% 0,50% 59%);transform-origin:50% 0;transition:transform .8s cubic-bezier(.2,.8,.25,1);backface-visibility:hidden}.letter-preview{position:absolute;top:5%;left:9%;width:82%;height:88%;z-index:2;background:#fffaf1;border:1px solid #e7d9cb;box-shadow:0 2px 12px #683f4626;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font:600 clamp(17px,3.5vw,24px)/1.3 var(--serif);color:var(--ink);letter-spacing:.08em;transition:transform 1s cubic-bezier(.25,.85,.3,1) .3s}.letter-flourish{color:var(--gold);font-size:26px}.letter-line{height:1px;width:75px;background:#c6a486}.letter-small{font:italic 20px var(--serif);letter-spacing:0;color:#af6d83}.wax-seal{position:absolute;left:50%;top:56%;transform:translate(-50%,-50%);width:116px;height:116px;border-radius:50%;background:radial-gradient(circle at 35% 25%,#ca8195,#8e455f 67%,#773b50);z-index:8;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 6px 13px #58304466,0 0 0 6px #a96678,0 0 0 7px #dfacc0;transition:opacity .35s,transform .45s}.wax-heart{font-size:32px;line-height:1;color:#fff1e6}.wax-seal small{font:600 9px/1.35 var(--sans);color:#fff4ed;letter-spacing:.045em;margin-top:3px}.envelope-button:hover:not(:disabled) .wax-seal{transform:translate(-50%,-50%) scale(1.08)}.envelope-button.opening .envelope-flap{transform:rotateX(180deg);z-index:1}.envelope-button.opening .wax-seal{opacity:0;transform:translate(-50%,-55%) scale(.6)}.envelope-button.opening .letter-preview{transform:translateY(-43%)}.tap-hint{font-size:12px;letter-spacing:.04em;color:#f0d1d3}.tap-hint span{padding:0 8px;color:var(--gold)}.fine-print{font-size:10px;letter-spacing:.18em;text-transform:uppercase;margin-top:35px;color:#af9ca8}
.paper-scene{width:100%;animation:paperAppear .95s cubic-bezier(.2,.75,.25,1) both}.paper-wrap{max-width:850px;margin:auto;padding:26px 0}.paper-card{background:radial-gradient(circle at 10% 5%,#fffcf5,var(--paper) 66%,#f9f2e8);color:var(--ink);border-radius:5px;box-shadow:0 28px 85px #110b1a99,0 0 0 1px #d8c6b3;position:relative}.paper-card:before,.paper-card:after{content:'';height:9px;position:absolute;background:#f0e7dc;border-radius:0 0 5px 5px;bottom:-9px;left:9px;right:9px;box-shadow:0 8px 20px #1113}.paper-card:after{left:18px;right:18px;bottom:-16px;height:7px;z-index:-1;background:#e6d7c8}.paper-inner{position:relative;border:1px solid #e5d4c4;margin:16px;padding:45px clamp(18px,5vw,66px) 38px;text-align:center}.paper-corner{font:36px var(--serif);position:absolute;color:#c6a37e;opacity:.6}.paper-corner-tl{top:3px;left:12px}.paper-corner-tr{top:3px;right:12px;transform:scaleX(-1)}.paper-corner-bl{bottom:3px;left:12px;transform:scaleY(-1)}.paper-corner-br{bottom:3px;right:12px;transform:rotate(180deg)}.invite-mark{font:34px var(--serif);color:var(--wine);height:54px}.invite-mark span{font:15px var(--sans);color:#b77588}.invite-eyebrow{font:700 10px/1.5 var(--sans);color:#9a7372;letter-spacing:.3em;text-transform:uppercase}.paper-inner h2,.success-scene h2{font:500 clamp(61px,9vw,91px)/1.07 var(--serif);margin:10px 0;color:var(--wine);letter-spacing:-.04em}.paper-inner h2 em,.success-scene h2 em{color:#b17288;font-weight:400}.pink-period{color:#c595a4}.invite-intro{font:400 24px/1.34 var(--serif);color:#785d65;margin:13px 0 22px}.ornament{color:#b97889;display:flex;align-items:center;gap:18px;justify-content:center;margin:26px auto}.ornament span{height:1px;width:80px;background:#d9bdbc}.detail-grid{border-top:1px solid #e8dcd0;border-bottom:1px solid #e8dcd0;display:grid;grid-template-columns:1fr 1fr;margin:22px 0 33px}.detail-cell{padding:24px 12px;display:flex;flex-direction:column;align-items:center;gap:7px}.detail-cell:first-child{border-right:1px solid #e8dcd0}.detail-icon{font-size:22px;color:var(--gold)}.detail-label{font-size:10px;letter-spacing:.19em;font-weight:700;color:#a28583}.detail-cell strong{font:600 25px/1.16 var(--serif);color:#543d49}.section-divider{display:flex;align-items:center;justify-content:center;gap:13px;margin:15px 0 12px}.section-divider span:first-child,.section-divider span:last-child{width:28px;height:1px;background:#d5b4aa}.section-divider span:nth-child(2){font-size:9px;letter-spacing:.2em;color:#a27c79;font-weight:700}.paper-inner h3{font:600 clamp(34px,6vw,43px)/1.07 var(--serif);margin:12px 0 4px}.choose-help{font-size:12px;color:#977d7c;margin:6px 0 20px}.food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:26px}.food-option{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #e8d8d1;background:#fffdf8;color:#553844;padding:20px 6px 15px;min-height:137px;border-radius:11px;transition:.2s ease;box-shadow:0 3px 14px #7a4c3c08}.food-option:hover,.restaurant-option:hover{border-color:#c78d9f;transform:translateY(-2px)}.food-option.selected,.restaurant-option.selected{background:#fff1f2;border-color:#b97088;box-shadow:0 0 0 1px #b97088,0 5px 20px #b970881c}.food-option .food-emoji{font-size:31px;margin-bottom:9px}.food-option>span:nth-child(2){font:600 23px var(--serif)}.food-option small{font-size:10px;color:#ad9191;margin-top:2px}.option-check{position:absolute;top:8px;right:10px;color:#ab5f77;font:700 15px var(--sans);opacity:0}.selected .option-check{opacity:1}.restaurant-section{animation:fadeUp .35s both}.restaurant-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:15px 0 25px}.restaurant-option{display:flex;align-items:center;gap:9px;text-align:left;padding:15px;background:#fffdf8;border:1px solid #e8d8d1;border-radius:9px;color:#65444e;transition:.2s}.restaurant-option .radio-look{width:17px;height:17px;flex:0 0 17px;border:1.5px solid #be9c9d;border-radius:50%;position:relative}.restaurant-option.selected .radio-look:after{content:'';position:absolute;inset:3px;background:#ac637c;border-radius:50%}.restaurant-option .restaurant-name{flex:1;font:600 20px/1.1 var(--serif)}.restaurant-option .restaurant-star{font-size:18px;color:#c7a06c}.remarks-area{text-align:left;margin:32px auto 17px;max-width:590px}.remarks-area label{display:block;color:#6f4c58;font:600 23px var(--serif);margin-bottom:8px}.remarks-area label span{font:400 12px var(--sans);color:#9f8887}.remarks-area textarea{width:100%;resize:vertical;max-height:220px;border:1px solid #e0cfc6;border-radius:8px;background:#fffdf9;min-height:88px;line-height:1.5;font-size:13px;color:#523e46;padding:14px}.remarks-area textarea::placeholder{color:#b09b9b}.char-counter{text-align:right;font-size:10px;color:#988481;margin-top:5px}.promise-box{text-align:left;background:#f8f0e9;border-left:3px solid #c08a92;border-radius:0 9px 9px 0;padding:17px 22px 15px;position:relative;max-width:590px;margin:18px auto 24px}.promise-mark{position:absolute;right:14px;top:10px;color:#be8796}.promise-box p{font:13px/1.75 var(--sans);color:#70575a;margin:0 0 12px}.promise-box p:last-child{margin-bottom:0}.promise-box em{font-style:italic;color:#985269;font-weight:700}.accept-zone{max-width:590px;margin:auto}.accept-button{display:flex;align-items:center;justify-content:center;gap:17px;width:100%;min-height:56px;background:linear-gradient(100deg,#96536d,#70374e);color:white;border:0;border-radius:7px;padding:12px 19px;letter-spacing:.04em;font-size:13px;font-weight:700;box-shadow:0 7px 20px #8f566052;transition:transform .2s,box-shadow .2s}.accept-button:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 10px 24px #8f56606b}.button-heart{font-size:20px;color:#ffd9db}.accept-subtitle{font:italic 19px var(--serif);color:#ab838a;margin:12px}.form-message{font-size:12px;color:#a3314b;min-height:0;margin:9px 0}.form-message:empty{display:none}.toast{position:fixed;z-index:100;bottom:28px;left:50%;transform:translate(-50%,20px);background:#fff8f1;color:#523844;border-radius:9px;box-shadow:0 13px 35px #100d18ad;padding:12px 19px;opacity:0;transition:.25s;pointer-events:none;font-size:12px;max-width:90vw;text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}.setup-banner{position:fixed;top:0;left:0;right:0;z-index:20;background:#fff1d3;color:#593e2d;font-size:12px;text-align:center;padding:10px 14px;box-shadow:0 3px 10px #0003}.success-scene{position:relative;text-align:center;background:#fffaf1;color:var(--ink);border:1px solid #ddc8b6;border-radius:5px;padding:64px clamp(26px,7vw,80px);width:min(100%,690px);box-shadow:0 28px 85px #110b1a99;animation:paperAppear .8s both;overflow:hidden}.success-heart{font-size:66px;color:#ac6680;animation:heartbeat 2.2s infinite;margin-bottom:15px}.success-copy{font:24px var(--serif);color:#825f6b}.success-summary{max-width:460px;margin:33px auto 20px;border-top:1px solid #eadcd1;text-align:left}.success-summary>div{padding:17px 7px;border-bottom:1px solid #eadcd1;display:flex;align-items:baseline;justify-content:space-between;gap:15px}.success-summary span{font-size:11px;color:#a08680}.success-summary strong{font:600 22px var(--serif);text-align:right;color:#60374b}.success-footer{font:italic 27px var(--serif);color:#ae6680}.confetti span{position:absolute;color:#b67589;animation:confetti 4s infinite;pointer-events:none}@keyframes confetti{0%{transform:translateY(-100px) rotate(0);opacity:0}20%{opacity:.8}90%{opacity:.6}100%{transform:translateY(650px) rotate(380deg);opacity:0}}@keyframes heartbeat{50%{transform:scale(1.12)}}@keyframes fadeUp{from{opacity:0;transform:translateY(19px)}to{opacity:1;transform:translateY(0)}}@keyframes paperAppear{from{opacity:0;transform:translateY(55px) scale(.95) rotate(-1deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}
/* private dashboard */
.dashboard-page{background:#f7f2ee;min-height:100vh;color:#463743}.dash-container{position:relative;max-width:1210px;padding:0 24px 55px;margin:auto}.dash-topbar{min-height:88px;display:flex;align-items:center;gap:20px;border-bottom:1px solid #e8dcd7}.dash-brand{text-decoration:none;color:#513748;display:flex;align-items:center;gap:12px;font:600 27px/1 var(--serif);margin-right:auto}.dash-brand small{display:block;font:700 9px/1.7 var(--sans);letter-spacing:.17em;color:#a07d84}.brand-heart{width:45px;height:45px;display:grid;place-items:center;background:#885169;color:#fff;border-radius:50%;font-size:22px}.admin-badge{border:1px solid #d9ccc8;border-radius:50px;padding:8px 13px;color:#8b7379;font-size:9px;letter-spacing:.1em;font-weight:700}.secondary-button{background:#fff;border:1px solid #ddcbd0;border-radius:7px;color:#725263;padding:10px 13px;font-size:11px;font-weight:700;white-space:nowrap}.secondary-button:hover{background:#f4e9eb}.login-scene{min-height:calc(100vh - 90px);display:grid;place-items:center;padding:50px 0}.login-card{width:min(100%,425px);background:#fff;border:1px solid #eddfda;border-radius:15px;padding:42px;box-shadow:0 18px 60px #653d3c14}.login-icon{font-size:29px;color:#b57c90;border:1px solid #edd9dd;border-radius:50%;width:61px;height:61px;display:grid;place-items:center;margin-bottom:19px}.login-card h1{font:600 58px/1 var(--serif);color:#5b394c;margin:10px 0}.login-card h1 em{color:#b4718a}.login-card>p:not(.invite-eyebrow){font-size:12px;color:#8c7880;line-height:1.7;margin-bottom:28px}.login-card form{display:flex;flex-direction:column;gap:10px}.login-card label{font-size:12px;color:#68555c;font-weight:700;margin-top:6px}.login-card input{border:1px solid #dfd1d2;border-radius:8px;padding:13px;font-size:13px;background:#fffdfb}.login-card .accept-button{margin-top:12px}.login-message{font-size:12px;line-height:1.5;color:#ad3453;margin-top:14px}.dash-intro{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:45px 0 28px}.dash-intro h1{font:600 clamp(37px,5vw,57px)/1.12 var(--serif);color:#5e3b4d;margin:7px 0}.dash-intro h1 em{color:#b26e84}.dash-intro p:last-child{font-size:12px;color:#98838b}.live-pill{white-space:nowrap;display:flex;align-items:center;gap:8px;color:#78626b;font-size:11px}.live-pill span{height:9px;width:9px;background:#61a785;border-radius:50%;box-shadow:0 0 0 4px #61a78527}.dash-notice{border:1px solid #eac7ba;background:#fff8ea;color:#8d503e;padding:14px;margin-bottom:18px;font-size:12px;border-radius:9px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.stat-card{background:#fff;border:1px solid #ebddda;border-radius:13px;padding:21px 22px;min-height:165px;display:flex;flex-direction:column;box-shadow:0 6px 24px #4e2a2810}.stat-icon{font-size:23px;color:#b4758c;margin-bottom:9px}.stat-card small{font-size:10px;color:#9c858a;letter-spacing:.1em;font-weight:700}.stat-card strong{font:600 48px/1.2 var(--serif);color:#58384c;margin:4px 0}.stat-card>span:last-child{font-size:10px;color:#9b8a8e}.dash-layout{display:grid;grid-template-columns:1.17fr .83fr;gap:16px;margin-top:16px}.dash-panel{background:#fff;border:1px solid #ebddda;border-radius:13px;padding:24px;box-shadow:0 6px 24px #4e2a2810;min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:13px;border-bottom:1px solid #f0e6e3}.panel-heading small{font-size:10px;letter-spacing:.14em;font-weight:700;color:#a77b88}.panel-heading h2{font:600 29px/1.1 var(--serif);color:#624253;margin:7px 0 0}.panel-decoration{font:30px var(--serif);color:#c9a39e}.empty-reply,.empty-selection{text-align:center;min-height:210px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:#9d858b;padding:26px}.waiting-icon{font:56px var(--serif);color:#c799a7}.empty-reply strong{font:600 27px var(--serif);color:#6e515c}.empty-reply p{font-size:12px;line-height:1.7;max-width:320px;margin:0}.reply-details{padding:20px 0 5px}.reply-details .reply-pill{display:inline-block;background:#e9f5ed;color:#347858;border-radius:24px;padding:6px 12px;font-size:10px;font-weight:700;letter-spacing:.08em}.reply-details dl{display:grid;grid-template-columns:120px 1fr;gap:15px 10px;margin:25px 0}.reply-details dt{font-size:11px;color:#9d8790}.reply-details dd{margin:0;font:600 22px/1.2 var(--serif);color:#58394c;overflow-wrap:anywhere}.reply-details .note{padding:16px;background:#f9f2ee;border-radius:8px;color:#664753;font-size:13px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.reply-details .note-title{font-size:10px;letter-spacing:.15em;color:#a48588;font-weight:700;margin-bottom:8px}.selection-lines{padding:14px 0}.selection-row{display:flex;align-items:flex-start;gap:11px;padding:12px 0;border-bottom:1px solid #f0e6e3}.selection-symbol{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:#f9ebee;color:#a86b7f}.selection-row .selection-what{font-size:10px;color:#ad9297;text-transform:uppercase;letter-spacing:.05em}.selection-row strong{display:block;font:600 21px var(--serif);color:#5b3d50;margin-top:3px}.selection-row .selection-time{font-size:10px;color:#ad9398}.dash-helper{font-size:10px;color:#a08b91;line-height:1.5;margin-top:12px}.activity-panel{margin-top:16px}.activity-actions{display:flex;gap:10px}.filter-bar{display:flex;align-items:center;gap:11px;padding:17px 0 13px;font-size:11px;color:#8c7380}.filter-bar select{border:1px solid #e4d5d8;border-radius:6px;padding:9px 12px;background:#fff;color:#624a55;max-width:200px}.filter-bar span{margin-left:auto;color:#a18d90}.table-scroll{overflow:auto;max-height:430px}.activity-table{width:100%;border-collapse:collapse;text-align:left;min-width:680px}.activity-table th{background:#fbf7f5;font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:#a08c93;font-weight:700;padding:13px 10px;position:sticky;top:0}.activity-table td{border-top:1px solid #f1e8e6;padding:14px 10px;font-size:11px;color:#745d69}.activity-table td:nth-child(3){font-weight:700;color:#5f4352;overflow-wrap:anywhere}.event-pill{display:inline-block;background:#f5e9ef;border-radius:20px;padding:5px 10px;color:#94647a;font-size:10px;font-weight:700}.event-pill.accepted{background:#e7f3e9;color:#397352}.empty-table{text-align:center!important;color:#9e8b92!important;padding:50px!important}.dash-bottom-note{margin:24px 0;text-align:center;font-size:10px;color:#97838a;line-height:1.7}
@media(max-width:760px){.invite-shell{padding:22px 12px}.envelope-scene{padding:45px 0}.envelope-button{margin:35px auto 22px}.wax-seal{width:89px;height:89px}.wax-heart{font-size:27px}.wax-seal small{font-size:8px}.scene-headline{font-size:73px}.paper-inner{padding:32px 15px 27px;margin:9px}.paper-wrap{padding:7px 0 18px}.paper-inner h2{font-size:69px}.invite-intro{font-size:21px}.detail-cell strong{font-size:23px}.food-grid{gap:7px}.food-option{min-height:126px;padding:17px 3px 11px}.food-option .food-emoji{font-size:27px}.food-option>span:nth-child(2){font-size:20px}.food-option small{font-size:8px}.restaurant-options{gap:8px}.restaurant-option{padding:13px 10px}.restaurant-option .restaurant-name{font-size:19px}.promise-box{padding:16px 14px}.promise-box p{font-size:12px}.paper-corner{font-size:26px}.detail-grid{margin-bottom:28px}.dash-container{padding:0 14px 35px}.dash-topbar{min-height:75px}.admin-badge{display:none}.dash-intro{padding:32px 0 23px;display:block}.dash-intro h1{font-size:43px}.live-pill{margin-top:16px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-card{padding:17px 15px;min-height:145px}.stat-card strong{font-size:42px}.stat-card small{font-size:9px}.dash-layout{grid-template-columns:1fr;gap:12px}.dash-panel{padding:19px}.panel-heading h2{font-size:27px}.login-card{padding:26px 22px}.login-scene{padding:30px 0}.success-scene{padding:49px 19px}.success-scene h2{font-size:58px}}
@media(max-width:390px){.scene-headline{font-size:59px}.mini-eyebrow{font-size:8px}.tap-hint{font-size:10px}.wax-seal{width:76px;height:76px}.wax-heart{font-size:23px}.wax-seal small{font-size:7px}.paper-inner{padding:27px 11px}.paper-inner h2{font-size:59px}.food-option .food-emoji{font-size:24px}.food-option>span:nth-child(2){font-size:18px}.food-option small{font-size:8px}.restaurant-option .restaurant-name{font-size:16px}.detail-cell strong{font-size:21px}.success-summary>div{display:block}.success-summary strong{display:block;text-align:left;margin-top:6px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Keep the playful promise beside the acceptance button on desktop. */
.decision-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(180px,.85fr);gap:16px;align-items:center;margin:24px auto 0;max-width:670px}.decision-layout .promise-box{margin:0;max-width:none}.decision-layout .accept-zone{min-width:0;max-width:none}.decision-layout .accept-button{padding:15px 8px;gap:7px;line-height:1.5}.decision-layout .accept-subtitle{font-size:16px}
@media(max-width:650px){.decision-layout{display:block}.decision-layout .promise-box{margin-bottom:20px}.decision-layout .accept-button{min-height:56px;padding:13px}}
