#envelope-container{position:fixed;top:0;left:0;height:100vh;width:100vw;display:flex;justify-content:center;align-items:center;z-index:9999;background-color:#ededed;opacity:1;transition:opacity 2s ease-out;perspective:1000px}#envelope-container.fading-out{opacity:0;pointer-events:none}#envelope{height:100%;width:100%;overflow:hidden;background-color:#ededed}#envelope:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(/assets/envelope-background-BWDGl5j_.jpeg);background-size:cover;background-repeat:no-repeat;background-blend-mode:multiply;opacity:.3;pointer-events:none}#upper-triangle{position:relative;transform:rotate(45deg);top:calc(0% - (max(100vh,60vw)/2));left:calc(50% - (max(100vh,60vw)/2));height:max(100vh,60vw);width:max(100vh,60vw);z-index:10;box-shadow:10px -10px 18px 11px #949494;background:linear-gradient(0deg,#fff,#9b9999)}#upper-triangle:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(/assets/envelope-background-BWDGl5j_.jpeg);background-size:cover;background-repeat:no-repeat;background-blend-mode:multiply;opacity:.3;pointer-events:none}#upper-triangle.opening{animation:moveTriangleUp 2s ease-out forwards}#lower-triangle{position:relative;top:calc(10% - (max(100vh,60vw)/2));left:calc(50% - (max(100vh,60vw)/2));height:max(100vh,60vw);width:max(100vh,60vw);z-index:5;transform:rotate(45deg);background-color:#fff0;opacity:1;border-left:5px solid #ebebeb;box-shadow:2px -2px 18px 1px #949494}#lower-triangle.opening{animation:fadeDownTriangle .5s ease-out forwards}#envelope-content-container{height:100%;width:100%;transform:rotate(-45deg)}#envelope-content{position:absolute;bottom:-10%;left:calc(50% - 150px);width:300px;text-align:center}#envelope-content h1{font-size:3rem}#envelope-content h2{font-size:1.2rem;font-family:var(--font-)}#envelope-content h1,#envelope-content h2{font-family:var(--font-script);font-weight:400;letter-spacing:.05em}#envelope-content h2 i{font-family:var(--font-script);font-weight:400;font-style:italic;letter-spacing:.02em}#envelope-content p{font-family:var(--font-display);font-weight:400;font-style:italic}#envelope-content.opening{animation:moveContentUp .5s ease-out forwards}@keyframes moveTriangleUp{0%{transform:rotateX(0) rotate(45deg)}to{transform:rotateX(90deg) rotate(45deg)}}@keyframes moveContentUp{0%{opacity:1}to{opacity:0}}@keyframes fadeDownTriangle{0%{opacity:1}to{opacity:0}}.app{min-height:100vh;position:relative;overflow-x:clip}.wedding-content{min-height:100vh;background-color:#fff;max-width:480px;margin:0 auto;container-type:inline-size;--invitation-gutter: 6cqw;--text-area: calc(100cqw - 2 * var(--invitation-gutter));overflow-x:clip}.welcome-section{width:100%;background-color:#fff}.welcome-hero{width:100%;line-height:0}.welcome-hero-image{display:block;width:100%;height:auto}.welcome-text{text-align:center;padding:0 0 var(--space-xl);margin-top:-.5rem}.welcome-greeting{font-family:var(--font-script);font-size:calc(var(--text-area) / 17.5);font-weight:600;color:var(--color-charcoal);line-height:1.15;letter-spacing:.12em;margin-bottom:var(--space-lg);padding:0 var(--invitation-gutter);box-sizing:border-box;white-space:nowrap;width:100%;max-width:100%}.welcome-message{font-family:var(--font-display);font-size:calc(var(--text-area) / 19);font-weight:300;font-style:normal;color:var(--color-charcoal);line-height:1.4;letter-spacing:.04em;max-width:var(--text-area);margin:0 auto;padding:0 var(--invitation-gutter);box-sizing:border-box;white-space:pre-line}.save-the-date-section{width:100%;background-color:#fff}.hands-block{width:100%;line-height:0;padding:0}.hands-image{display:block;width:100%;height:auto}.calendar-block{width:100%;line-height:0;padding:var(--space-sm) var(--space-lg) 0}.calendar-image{display:block;width:100%;height:auto}.save-the-date-banner{overflow:hidden;padding:var(--space-3xl) 0 var(--space-2xl);-webkit-user-select:none;user-select:none}.save-the-date-row{font-family:var(--font-display);font-size:calc(var(--text-area) / 17);font-weight:100;text-transform:uppercase;letter-spacing:.12em;color:#262626;white-space:nowrap;line-height:1.6;margin:0}.save-the-date-row--offset{margin-left:-2.5rem}@media(min-width:768px){.welcome-text{padding-bottom:var(--space-3xl)}.save-the-date-row--offset{margin-left:-3rem}}.countdown-section{width:100%;background-color:#fff;margin-top:20cqw}.countdown-header{text-align:center;padding:var(--space-lg) var(--invitation-gutter) var(--space-xl)}.countdown-title{font-family:var(--font-script);font-size:calc(var(--text-area) / 18.5);font-weight:600;color:#900;line-height:1.15;letter-spacing:.1em;margin:0 0 var(--space-lg);padding:0;box-sizing:border-box;white-space:nowrap;max-width:100%}.countdown-timer{display:flex;align-items:flex-start;justify-content:center;gap:.35rem}.countdown-unit{display:flex;flex-direction:column;align-items:center;min-width:3.5rem}.countdown-value{font-family:var(--font-display);font-size:calc(var(--text-area) / 10.5);font-weight:1000;color:var(--color-charcoal);line-height:1;font-variant-numeric:tabular-nums}.countdown-label{font-family:var(--font-display);font-size:calc(var(--text-area) / 28);font-weight:600;color:var(--color-charcoal);margin-top:var(--space-sm)}.countdown-separator{font-family:var(--font-display);font-size:calc(var(--text-area) / 10.5);font-weight:600;color:var(--color-charcoal);line-height:1;padding-top:.05rem}.countdown-photo{width:100%;line-height:0}.countdown-photo-image{display:block;width:100%;height:auto}.rsvp-cta{text-align:center;padding:var(--space-xl) 0 var(--space-3xl)}.rsvp-cta-heading{font-family:var(--font-display);font-size:calc(var(--text-area) / 17);font-weight:1000;font-style:italic;text-transform:uppercase;letter-spacing:.06em;color:var(--color-charcoal);margin:0 0 var(--space-md);padding:0 var(--invitation-gutter);box-sizing:border-box;white-space:nowrap;max-width:100%}.rsvp-cta-deadline{font-family:var(--font-display);font-size:calc(var(--text-area) / 20);font-weight:400;color:var(--color-charcoal);line-height:1.5;letter-spacing:.02em;max-width:calc(var(--text-area) - 8cqw);margin:0 auto var(--space-md);padding:0 calc(var(--invitation-gutter) * 1.5);box-sizing:border-box}.rsvp-cta-heart{display:block;width:calc(var(--text-area) / 10);height:auto;margin:0 auto var(--space-md)}.rsvp-cta-button{display:inline-block;padding:.6rem 2.25rem;border:2.5px solid #990000;border-radius:var(--radius-full);background:transparent;font-family:var(--font-display);font-size:calc(var(--text-area) / 24);font-weight:600;font-style:italic;text-transform:uppercase;letter-spacing:.12em;color:#900;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.rsvp-cta-button:hover{background-color:#900;color:#fff}.program-section{position:relative;width:100%;line-height:normal}.program-section-bg{display:block;width:100%;height:auto}.program-section-foreground{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:5.25cqw 2.5cqw}.program-sheet-wrap{position:relative;width:100%;height:94%;line-height:normal;filter:drop-shadow(2px 4px 14px rgba(148,148,148,.28));--program-scale: 1.09;transform:scale(var(--program-scale));transform-origin:center center}.program-sheet{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#fff;-webkit-mask-image:url(/assets/white-sheet-program-CARmHy3A.svg);mask-image:url(/assets/white-sheet-program-CARmHy3A.svg);-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;pointer-events:none}.program-sheet:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/assets/envelope-background-BWDGl5j_.jpeg);background-size:cover;background-repeat:no-repeat;background-blend-mode:multiply;opacity:.3;pointer-events:none}.program-sheet-content{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;flex-direction:column;align-items:center;padding:10% 7% 11%;box-sizing:border-box}.program-title{margin:0 0 3.5cqw;font-family:var(--font-script);font-size:calc(var(--text-area) / 19);font-weight:400;color:#2f2f2f;text-align:center;white-space:nowrap;max-width:100%;flex-shrink:0}.program-timeline{position:relative;display:flex;flex-direction:column;flex:1;width:100%;min-height:0}.program-timeline-line{position:absolute;top:var(--program-line-inset-top, 7%);left:50%;height:calc(100% - var(--program-line-inset-top, 7%) - var(--program-line-inset-bottom, 2%));width:auto;transform:translate(-50%);z-index:0;pointer-events:none}.program-timeline-row{position:absolute;left:0;right:0;top:var(--dot-position);display:grid;grid-template-columns:1fr 4.5cqw 1fr;align-items:start;z-index:1}.program-timeline-cell--left{display:flex;justify-content:flex-end;padding-right:1.25cqw}.program-timeline-cell--right{display:flex;justify-content:flex-start;padding-left:1.25cqw}.program-timeline-marker{align-self:stretch}.program-event-link{display:block;max-width:100%;color:inherit;text-decoration:none;cursor:pointer}.program-event-link:hover .program-event-time,.program-event-link:hover .program-event-name,.program-event-link:hover .program-event-location{color:#900}.program-event-link:focus-visible{outline:2px solid #990000;outline-offset:2px;border-radius:2px}.program-event-inner{--event-time-anchor: 7.65cqw ;display:flex;flex-direction:column;max-width:100%;transform:translateY(calc(-1 * var(--event-time-anchor)))}.program-event-inner:has(.program-event-icon--cake){--event-time-anchor: 8.5cqw }.program-timeline-cell--left .program-event-inner{align-items:flex-end;text-align:right}.program-timeline-cell--right .program-event-inner{align-items:flex-start;text-align:left}.program-event-icon{display:block;width:5cqw;height:5cqw;object-fit:contain;flex-shrink:0}.program-event-icon--cake{width:6.2cqw;height:6.2cqw;margin-top:0;margin-bottom:-.35cqw}.program-event-time{margin:0;font-family:var(--font-display);font-size:calc(var(--text-area) / 23);font-weight:600;font-style:normal;font-synthesis:none;color:#2f2f2f;line-height:1.2}.program-event-name{margin:0;font-family:var(--font-display);font-size:calc(var(--text-area) / 35);font-weight:400;font-style:italic;color:#2f2f2f;line-height:1.25}.program-event-location{margin:0;font-family:var(--font-display);font-size:calc(var(--text-area) / 40);font-weight:400;font-style:italic;color:#2f2f2f;line-height:1.25}.details-section{width:100%;background-color:#fff;line-height:normal}.details-hero{position:relative;padding:2cqw 0 5cqw;overflow:hidden;transform:rotate(5deg)}.details-pattern{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;gap:.15cqw;padding:2cqw 0;pointer-events:none}.details-pattern-row{margin:10cqw 0 0;font-family:var(--font-script);font-size:calc(var(--text-area) / 9.5);font-weight:400;color:#900;line-height:1.05;letter-spacing:.05em;word-spacing:.28em;white-space:nowrap}.details-pattern-row--offset{margin-left:-5.5cqw}.details-photo-frame{position:relative;z-index:1;width:55%;margin:0 auto;box-shadow:0 3px 14px #00000024;margin-top:55cqw}.details-photo{display:block;width:100%;height:auto}.details-blocks{margin-top:10cqw;padding:4cqw var(--invitation-gutter) 9cqw;text-align:center}.details-block+.details-block{margin-top:15.5cqw}.details-block-title{margin:0 0 2.25cqw;font-family:var(--font-script);font-size:calc(var(--text-area) / 16);font-weight:400;color:#900;line-height:1.15}.details-block-text{margin:5cqw auto 0;max-width:80%;font-family:var(--font-display);font-size:calc(var(--text-area) / 24.5);font-weight:300;font-style:italic;color:#000;line-height:1.38;text-align:center}.dress-code-section{width:100%;background-color:#fff;line-height:normal;padding-bottom:10cqw;margin-top:17cqw}.dress-code-visual{display:flex;align-items:center;justify-content:flex-end;min-height:58cqw;margin-bottom:10cqw}.dress-code-label-wrap{flex:1;display:flex;align-items:center;justify-content:center;min-width:0;overflow:visible}.dress-code-label{margin:0;font-family:var(--font-display);font-size:calc(var(--text-area) / 5.2);font-weight:300;font-style:italic;font-synthesis:none;letter-spacing:.14em;line-height:1;color:#900;text-transform:uppercase;white-space:nowrap;transform:rotate(-90deg)}.dress-code-photo{display:block;width:70%;flex-shrink:0;height:auto;object-fit:cover;object-position:center top}.dress-code-content{padding:0 var(--invitation-gutter);text-align:center}.dress-code-theme-lead{margin:0 0 2cqw;font-family:var(--font-display);font-size:calc(var(--text-area) / 14.5);font-weight:300;font-style:italic;color:#000;line-height:1.35}.dress-code-theme-title{margin:0 0 4cqw;font-family:var(--font-script);font-size:calc(var(--text-area) / 16);font-weight:200;color:#900;line-height:1.15}.dress-code-theme-text{margin:10cqw auto 7cqw;max-width:90%;font-family:var(--font-display);font-size:calc(var(--text-area) / 21);font-weight:400;font-style:italic;color:#000;line-height:1.38}.dress-code-palette{display:grid;grid-template-columns:repeat(4,1fr);row-gap:5.5cqw;column-gap:1.75cqw;max-width:88%;margin:20cqw auto 6cqw}.dress-code-palette-swatch{display:block;width:70%;height:auto}.dress-code-footer{margin:12cqw auto 0;max-width:90%;font-family:var(--font-display);font-size:calc(var(--text-area) / 18);font-weight:300;font-style:italic;color:#000;line-height:1.38}.rsvp-form-section{display:none;width:100%;background-color:#fff;line-height:normal}.rsvp-form-section--open{display:block}.rsvp-form{padding:var(--space-2xl) var(--invitation-gutter) var(--space-3xl);box-sizing:border-box}.rsvp-form-header{text-align:center;margin-bottom:var(--space-2xl)}.rsvp-form-title{margin:0 0 var(--space-md);font-family:var(--font-display);font-size:calc(var(--text-area) / 20);font-weight:1000;font-style:italic;text-transform:uppercase;letter-spacing:.06em;color:var(--color-charcoal)}.rsvp-form-deadline{margin:0 0 var(--space-lg);font-family:var(--font-display);font-size:calc(var(--text-area) / 24);font-weight:400;font-style:italic;color:var(--color-charcoal);line-height:1.4}.rsvp-form-header-heart{display:block;width:calc(var(--text-area) / 2);height:auto;margin:0 auto}.rsvp-fieldset{margin:0 0 var(--space-xl);padding:0;border:none;min-width:0}.rsvp-question{display:block;margin:0 0 var(--space-md);font-family:var(--font-display);font-size:calc(var(--text-area) / 26);font-weight:1000;font-style:italic;text-transform:uppercase;letter-spacing:.05em;color:var(--color-charcoal);text-align:start;line-height:1.25}.rsvp-choice-row{display:grid;gap:10cqw}.rsvp-choice-row--two{grid-template-columns:1fr 1fr}.rsvp-choice-row--two .rsvp-choice{padding:3.5cqw 3cqw;justify-content:center;gap:3.5cqw}.rsvp-choice-row--two .rsvp-choice-icon{width:8.25cqw;height:10.5cqw}.rsvp-choice-row--two .rsvp-choice-label{flex:0 1 auto;font-size:calc(var(--text-area) / 32)}.rsvp-drink-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3cqw 6cqw;margin-bottom:5cqw}.rsvp-choice{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:3cqw;padding:.5cqw 2cqw;border:1.5px solid #b8b8b8;border-radius:.75rem;background:#fff;cursor:pointer;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.rsvp-choice--selected{border-color:#900;background-color:#9900000a}.rsvp-choice--drink{padding:.5cqw 4cqw}.rsvp-choice--full{width:100%;align-items:center;justify-content:center}.rsvp-choice--full .rsvp-choice-label{flex:0 1 auto;text-align:center}.rsvp-choice-icon{display:block;width:4cqw;height:6cqw;object-fit:contain;flex-shrink:0}.rsvp-choice--drink .rsvp-choice-icon{width:6cqw;height:6cqw}.rsvp-choice-label{flex:1;min-width:0;font-family:var(--font-display);font-size:calc(var(--text-area) / 35);font-weight:400;font-style:italic;color:var(--color-charcoal);line-height:1.25;text-align:left}.rsvp-children-counter{display:flex;align-items:center;gap:2.5cqw;margin-top:3cqw;padding-top:3cqw;border-top:1px dashed #c8c8c8}.rsvp-children-counter-label{font-family:var(--font-display);font-size:calc(var(--text-area) / 26);font-weight:400;font-style:italic;color:var(--color-charcoal)}.rsvp-children-counter-controls{display:inline-flex;align-items:center;gap:1.5cqw}.rsvp-counter-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;width:1.25rem;height:1.25rem;padding:0;border:1.5px solid #0000005a;border-radius:50%;background:transparent;font-family:var(--font-body);font-size:1.25rem;font-weight:400;line-height:1;color:#00000078;cursor:pointer}.rsvp-counter-value{display:inline-flex;align-items:center;justify-content:center;flex:0 0 2.25rem;width:2.25rem;font-family:var(--font-display);font-size:calc(var(--text-area) / 24);font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-charcoal);text-align:center}.rsvp-slider-wrap{display:flex;align-items:center;gap:2cqw;margin-bottom:1.5cqw}.rsvp-fieldset--drinking .rsvp-question{font-size:calc(var(--text-area) / 32);font-weight:400;text-transform:none;letter-spacing:0;text-align:center}.rsvp-fieldset--drinking .rsvp-slider-wrap{justify-content:center;width:min(78cqw,100%);margin-inline:auto}.rsvp-fieldset--drinking .rsvp-slider-track-wrap{flex:0 1 52cqw;width:52cqw;max-width:100%}.rsvp-slider-icon{display:block;width:9cqw;height:auto;flex-shrink:0}.rsvp-slider-track-wrap{flex:1;padding:.5rem 0}.rsvp-slider{width:100%;height:8px;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:999px;cursor:pointer;background:transparent}.rsvp-slider::-webkit-slider-runnable-track{height:8px;border-radius:999px;background:#d9d9d9}.rsvp-fieldset--drinking .rsvp-slider::-webkit-slider-runnable-track{background:linear-gradient(to right,#990000 0%,#990000 var(--slider-fill, 50%),#ebebeb var(--slider-fill, 50%),#ebebeb 100%);box-shadow:inset 0 1px 2px #0000000f}.rsvp-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;margin-top:-5px;border:2px solid #990000;border-radius:50%;background:#fff}.rsvp-fieldset--drinking .rsvp-slider::-webkit-slider-thumb{width:20px;height:20px;margin-top:-6px;border:none;background:linear-gradient(180deg,#f8f8f8,#d4d4d4);box-shadow:0 1px 3px #0000002e}.rsvp-slider::-moz-range-track{height:8px;border-radius:999px;background:#d9d9d9}.rsvp-fieldset--drinking .rsvp-slider::-moz-range-track{background:#ebebeb;box-shadow:inset 0 1px 2px #0000000f}.rsvp-slider::-moz-range-progress{height:8px;border-radius:999px;background:#900}.rsvp-slider::-moz-range-thumb{width:18px;height:18px;border:2px solid #990000;border-radius:50%;background:#fff}.rsvp-fieldset--drinking .rsvp-slider::-moz-range-progress{height:8px}.rsvp-fieldset--drinking .rsvp-slider::-moz-range-thumb{width:20px;height:20px;border:none;background:linear-gradient(180deg,#f8f8f8,#d4d4d4);box-shadow:0 1px 3px #0000002e}.rsvp-slider-caption{display:flex;flex-direction:column;align-items:center;gap:.35rem;text-align:center}.rsvp-slider-rank{font-family:var(--font-display);font-size:calc(var(--text-area) / 24);font-weight:700;color:var(--color-charcoal)}.rsvp-slider-label{font-family:var(--font-display);font-size:calc(var(--text-area) / 28);font-weight:400;font-style:italic;color:var(--color-charcoal)}.rsvp-fieldset:has(.rsvp-textarea){margin-bottom:var(--space-lg)}.rsvp-fieldset:has(.rsvp-textarea) .rsvp-question{margin-bottom:var(--space-sm)}.rsvp-textarea{display:block;width:100%;min-height:6.5cqw;padding:2cqw 3cqw;border:1.5px solid #b8b8b8;border-radius:.75rem;font-family:var(--font-display);font-size:calc(var(--text-area) / 30);font-weight:400;font-style:italic;color:var(--color-charcoal);line-height:1.35;resize:none;box-sizing:border-box}.rsvp-textarea::placeholder{color:#b5b5b5;opacity:1}.rsvp-textarea:focus{outline:none;border-color:#900}.rsvp-form-error{margin:0 0 var(--space-lg);font-family:var(--font-display);font-size:calc(var(--text-area) / 30);font-style:italic;color:#900;text-align:center}.rsvp-submit{display:flex;align-items:center;justify-content:center;gap:2cqw;width:fit-content;max-width:100%;margin:var(--space-md) auto 0;padding:.85rem 2.75rem;border:none;border-radius:999px;background-color:#900;font-family:var(--font-display);font-size:calc(var(--text-area) / 20);font-weight:600;font-style:italic;text-transform:uppercase;letter-spacing:.08em;color:#fff;cursor:pointer;transition:background-color var(--transition-fast)}.rsvp-submit:hover:not(:disabled){background-color:#7a0000}.rsvp-submit:disabled{opacity:.7;cursor:wait}.rsvp-submit-heart{display:block;width:calc(var(--text-area) / 18);height:auto;flex-shrink:0}.admin-panel{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);color:#e8e8e8;padding:2rem}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.admin-header h1{font-family:Cormorant Garamond,serif;font-size:2rem;color:#d4af37;margin:0}.back-link{color:#94a3b8;text-decoration:none;transition:color .2s}.back-link:hover{color:#d4af37}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:#ffffff0d;border-radius:12px;padding:1.25rem;text-align:center;border:1px solid rgba(255,255,255,.1);transition:transform .2s,background .2s}.stat-card:hover{transform:translateY(-2px);background:#ffffff14}.stat-card .stat-value{font-size:2rem;font-weight:700;color:#fff;margin-bottom:.25rem}.stat-card .stat-label{font-size:.85rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.stat-card.attending .stat-value{color:#4ade80}.stat-card.not-attending .stat-value{color:#f87171}.stat-card.pending .stat-value{color:#fbbf24}.stat-card.total{background:linear-gradient(135deg,#d4af3733,#d4af370d);border-color:#d4af374d}.stat-card.total .stat-value{color:#d4af37}.afterparty-stats{background:#ffffff08;border-radius:12px;padding:1.5rem;margin-bottom:2rem;border:1px solid rgba(255,255,255,.08)}.afterparty-stats-title{font-family:Cormorant Garamond,serif;font-size:1.3rem;color:#d4af37;margin:0 0 1rem;text-align:center}.afterparty-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.afterparty-stat{background:#ffffff0d;border-radius:10px;padding:1rem;text-align:center;border:1px solid rgba(255,255,255,.1);transition:transform .2s}.afterparty-stat:hover{transform:translateY(-2px)}.afterparty-stat-emoji{font-size:1.8rem;margin-bottom:.5rem}.afterparty-stat-value{font-size:1.8rem;font-weight:700;color:#fff;margin-bottom:.25rem}.afterparty-stat-label{font-size:.8rem;color:#94a3b8}.afterparty-stat.restaurant{border-color:#d4af374d;background:linear-gradient(135deg,#d4af371a,#d4af3705)}.afterparty-stat.restaurant .afterparty-stat-value{color:#d4af37}.afterparty-stat.disco{border-color:#ec48994d;background:linear-gradient(135deg,#ec48991a,#ec489905)}.afterparty-stat.disco .afterparty-stat-value{color:#ec4899}.afterparty-stat.none{border-color:#94a3b833}.afterparty-stat.none .afterparty-stat-value{color:#94a3b8}@media(max-width:600px){.afterparty-stats-grid{grid-template-columns:1fr}}.deadline-settings{margin-bottom:1.5rem}.deadline-card{background:#ffffff0d;border-radius:12px;padding:1.25rem 1.5rem;border:1px solid rgba(212,175,55,.3)}.deadline-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.deadline-icon{font-size:1.25rem}.deadline-title{font-weight:600;color:#e8e8e8;flex:1}.deadline-status{font-size:.85rem;padding:.25rem .75rem;border-radius:20px;font-weight:500}.deadline-status.open{background:#4ade8026;color:#4ade80}.deadline-status.closed{background:#f8717126;color:#f87171}.deadline-input-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.deadline-date-display{position:relative;display:inline-flex;align-items:center}.deadline-date-display .date-display{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:.6rem 1rem;color:#e8e8e8;font-size:1rem;min-width:120px;text-align:center;cursor:pointer}.deadline-date-display:hover .date-display{border-color:#d4af37}.deadline-input.date-picker{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.deadline-input.date-picker::-webkit-calendar-picker-indicator{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer}.deadline-input{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:.6rem 1rem;color:#e8e8e8;font-size:1rem}.deadline-time-display{display:flex;align-items:center;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:.6rem 1rem;gap:.5rem;min-width:140px}.deadline-time-display:hover{border-color:#d4af37}.deadline-time-display .time-icon{font-size:1rem}.deadline-input.time{width:110px;background:transparent;border:none;padding:0;color:#e8e8e8;font-size:1rem}.deadline-input.time::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.7;cursor:pointer}.deadline-input:focus{outline:none;border-color:#d4af37}.saving-indicator{font-size:.85rem;color:#fbbf24;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.deadline-hint{font-size:.85rem;color:#64748b;margin:0}.admin-actions{margin-bottom:1.5rem;display:flex;gap:1rem;flex-wrap:wrap}.add-btn{background:linear-gradient(135deg,#d4af37,#b8962e);color:#1a1a2e;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.add-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px #d4af374d}.notes-link-btn{background:#ffffff14;color:#e8e8e8;border:1px solid rgba(255,255,255,.2);padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem}.notes-link-btn:hover{background:#ffffff1f;border-color:#ffffff4d;transform:translateY(-2px)}.guest-count-input{display:flex;align-items:center;gap:.5rem}.count-btn{width:36px;height:36px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;color:#e8e8e8;font-size:1.25rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.count-btn:hover{background:#ffffff1a;border-color:#d4af37}.count-value{font-size:1.5rem;font-weight:600;color:#d4af37;min-width:40px;text-align:center}.count-hint{color:#64748b;font-size:.85rem;margin-left:.5rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{background:#1e293b;border-radius:16px;padding:2rem;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;border:1px solid rgba(255,255,255,.1)}.modal h2{margin:0 0 1.5rem;color:#d4af37;font-family:Cormorant Garamond,serif}.form-row{margin-bottom:1.25rem}.form-row label{display:block;margin-bottom:.5rem;color:#94a3b8;font-size:.9rem}.form-row input[type=text],.form-row input[type=email]{width:100%;padding:.75rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:1rem;transition:border-color .2s,background .2s}.form-row input:focus{outline:none;border-color:#d4af37;background:#ffffff14}.code-input-group{display:flex;gap:.5rem}.code-input-group input{flex:1;font-family:JetBrains Mono,monospace;letter-spacing:.1em}.generate-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:0 1rem;font-size:1.25rem;cursor:pointer;transition:background .2s}.generate-btn:hover{background:#fff3}.form-row.checkboxes{display:flex;flex-direction:column;gap:.75rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;color:#e8e8e8}.checkbox-label input[type=checkbox]{width:20px;height:20px;accent-color:#d4af37;cursor:pointer}.modal-actions{display:flex;gap:1rem;margin-top:2rem;justify-content:flex-end}.cancel-btn{background:transparent;color:#94a3b8;border:1px solid rgba(255,255,255,.2);padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;transition:all .2s}.cancel-btn:hover{background:#ffffff0d;color:#fff}.save-btn{background:linear-gradient(135deg,#d4af37,#b8962e);color:#1a1a2e;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:transform .2s}.save-btn:hover{transform:translateY(-1px)}.special-message-input,.special-message-textarea{width:100%;padding:.75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#e8e8e8;font-size:.95rem;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s}.special-message-input:focus,.special-message-textarea:focus{outline:none;border-color:#d4af37}.special-message-input::placeholder,.special-message-textarea::placeholder{color:#64748b}.special-message-edit{display:flex;flex-direction:column;gap:.75rem}.save-message-btn{background:linear-gradient(135deg,#d4af3733,#d4af371a);color:#d4af37;border:1px solid rgba(212,175,55,.3);padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s;align-self:flex-end}.save-message-btn:hover{background:linear-gradient(135deg,#d4af374d,#d4af3733);transform:translateY(-1px)}.guests-table-container{overflow-x:auto;background:#ffffff05;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.guests-table{width:100%;border-collapse:collapse;min-width:800px}.guests-table th{padding:1rem;text-align:left;background:#ffffff0d;color:#94a3b8;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.1)}.guests-table td{padding:1rem;border-bottom:1px solid rgba(255,255,255,.05);vertical-align:middle}.guests-table tr:hover{background:#ffffff08}.guests-table tr.attending{background:#4ade800d}.guests-table tr.not-attending{background:#f871710d}.guests-table tr.pending{background:#fbbf2408}.guest-name-cell span{cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:background .2s}.guest-name-cell span:hover{background:#ffffff1a}.edit-input{background:#ffffff1a;border:1px solid #d4af37;padding:.25rem .5rem;border-radius:4px;color:#fff;font-size:inherit;width:100%}.code-cell{font-family:JetBrains Mono,monospace;display:flex;align-items:center;gap:.5rem}.code-cell code{background:#d4af3726;padding:.25rem .5rem;border-radius:4px;color:#d4af37;font-size:.85rem}.copy-btn{background:transparent;border:none;cursor:pointer;padding:.25rem;opacity:.6;transition:opacity .2s}.copy-btn:hover{opacity:1}.count-cell{text-align:center}.inline-count{display:inline-flex;align-items:center;gap:.25rem}.count-btn-mini{width:22px;height:22px;border-radius:4px;border:1px solid rgba(255,255,255,.15);background:transparent;color:#94a3b8;font-size:.9rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;padding:0;line-height:1}.count-btn-mini:hover:not(:disabled){background:#ffffff1a;color:#d4af37;border-color:#d4af37}.count-btn-mini:disabled{opacity:.3;cursor:not-allowed}.count-badge{font-weight:600;font-size:.9rem;min-width:24px;text-align:center;padding:.15rem .35rem;border-radius:4px;background:#ffffff0d;color:#94a3b8}.count-badge.couple{background:#d4af3733;color:#d4af37}.options-cell{display:flex;gap:.75rem}.mini-checkbox{display:flex;align-items:center;gap:.25rem;cursor:pointer;font-size:.85rem;color:#94a3b8;transition:color .2s}.mini-checkbox:hover{color:#fff}.mini-checkbox input{width:16px;height:16px;accent-color:#d4af37;cursor:pointer}.status-cell .status{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:20px;font-size:.85rem;font-weight:500}.status.yes{background:#4ade8026;color:#4ade80}.status.no{background:#f8717126;color:#f87171}.status.pending{background:#fbbf2426;color:#fbbf24}.response-cell .response-details{display:flex;flex-wrap:wrap;gap:.35rem}.response-cell .tag{display:inline-flex;align-items:center;background:#ffffff1a;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;color:#e8e8e8}.response-cell .tag.drinks{letter-spacing:.1em}.response-cell .tag.rank{background:#d4af3733;color:#d4af37}.actions-cell{display:flex;gap:.5rem}.action-btn{background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:.4rem .6rem;cursor:pointer;transition:all .2s}.action-btn:hover{background:#ffffff1a}.action-btn.delete:hover{background:#f8717133;border-color:#f87171}.action-btn.reset:hover{background:#60a5fa33;border-color:#60a5fa}.action-btn.view:hover{background:#d4af3733;border-color:#d4af37}.action-btn.message{opacity:.5}.action-btn.message:hover{background:#ec489933;border-color:#ec4899;opacity:1}.action-btn.message.has-message{opacity:1;color:#ec4899;border-color:#ec48994d;background:#ec48991a}.special-message-indicator{margin-left:.5rem;font-size:.9rem;cursor:help}.guest-details-modal{max-width:600px;max-height:85vh;overflow-y:auto}.guest-details-modal .modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.guest-details-modal .modal-header h2{margin:0;color:#d4af37;font-family:Cormorant Garamond,serif;font-size:1.75rem}.close-btn{background:transparent;border:none;color:#94a3b8;font-size:1.5rem;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s}.close-btn:hover{color:#fff}.guest-details-content{display:flex;flex-direction:column;gap:1.25rem}.detail-section{background:#ffffff08;border-radius:10px;padding:1rem 1.25rem;border:1px solid rgba(255,255,255,.05)}.detail-section h3{margin:0 0 .75rem;font-size:.9rem;color:#94a3b8;font-weight:500}.detail-grid{display:flex;flex-direction:column;gap:.5rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.detail-value{color:#e8e8e8;font-size:.95rem}.detail-value.code{font-family:JetBrains Mono,monospace;color:#d4af37;background:#d4af371a;padding:.25rem .5rem;border-radius:4px;display:inline-block}.detail-value.link{word-break:break-all}.detail-value.link a{color:#60a5fa;text-decoration:none}.detail-value.link a:hover{text-decoration:underline}.detail-value.highlight{color:#4ade80;font-weight:500}.detail-value.muted{color:#64748b;font-style:italic}.options-badges{display:flex;flex-wrap:wrap;gap:.5rem}.option-badge{padding:.35rem .75rem;border-radius:20px;font-size:.85rem;font-weight:500}.option-badge.enabled{background:#4ade8026;color:#4ade80}.option-badge.disabled{background:#64748b26;color:#64748b}.no-response{display:flex;align-items:center;gap:.5rem;color:#fbbf24;font-size:.95rem}.no-response .status-icon{font-size:1.25rem}.attendance-status{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:500;padding:.75rem 1rem;border-radius:8px}.attendance-status.attending{background:#4ade8026;color:#4ade80}.attendance-status.not-attending{background:#f8717126;color:#f87171}.attendance-status .status-icon{font-size:1.25rem}.response-date{margin-top:.5rem;font-size:.8rem;color:#64748b}.drinks-list{display:flex;flex-wrap:wrap;gap:.5rem}.drink-badge{background:#ffffff1a;padding:.35rem .75rem;border-radius:20px;font-size:.85rem}.drinking-rank-display{padding:.5rem 0}.rank-bar{height:12px;background:#ffffff1a;border-radius:6px;overflow:hidden;margin-bottom:.5rem}.rank-fill{height:100%;background:linear-gradient(90deg,#4ade80,#fbbf24,#f87171);border-radius:6px;transition:width .3s ease}.rank-labels{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:#94a3b8}.rank-number{font-weight:600;color:#d4af37;font-size:1rem}.reset-btn{background:#60a5fa26;color:#60a5fa;border:1px solid rgba(96,165,250,.3);padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;transition:all .2s}.reset-btn:hover{background:#60a5fa40}.admin-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);color:#94a3b8}.spinner{width:40px;height:40px;border:3px solid rgba(212,175,55,.2);border-top-color:#d4af37;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.error-message{background:#f8717126;color:#f87171;padding:1rem;border-radius:8px;margin-top:1rem}.admin-notes-page{max-width:100%;width:100%}.notes-tabs{display:flex;gap:.5rem;margin-bottom:2rem;background:#ffffff08;padding:.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.tab-btn{flex:1;background:transparent;border:none;padding:1rem 1.5rem;border-radius:8px;color:#94a3b8;font-size:1rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.75rem}.tab-btn:hover{background:#ffffff0d;color:#e8e8e8}.tab-btn.active{background:linear-gradient(135deg,#d4af3733,#d4af370d);color:#d4af37;font-weight:500}.tab-count{background:#ffffff1a;padding:.2rem .6rem;border-radius:12px;font-size:.85rem;font-weight:600}.tab-btn.active .tab-count{background:#d4af374d}.notes-content .section-header{margin-bottom:1.5rem}.notes-content .section-header h2{font-family:Cormorant Garamond,serif;font-size:1.75rem;color:#d4af37;margin:0 0 .5rem}.notes-content .section-subtitle{color:#94a3b8;font-size:.95rem;margin:0}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;background:#ffffff05;border-radius:16px;border:1px dashed rgba(255,255,255,.1)}.empty-icon{font-size:3rem;margin-bottom:1rem}.empty-state p{color:#64748b;font-size:1.1rem}.notes-list{display:flex;flex-direction:column;gap:1rem}.note-card{background:#ffffff08;border-radius:12px;padding:1.25rem 1.5rem;border:1px solid rgba(255,255,255,.08);transition:all .2s}.note-card:hover{background:#ffffff0d;border-color:#ffffff1f}.note-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.guest-info{display:flex;align-items:center;gap:.75rem}.admin-notes-page .guest-name{font-weight:600;font-size:1.1rem;color:#e8e8e8}.guest-code{font-family:JetBrains Mono,monospace;font-size:.75rem;background:#d4af3726;color:#d4af37;padding:.2rem .5rem;border-radius:4px}.note-date{font-size:.8rem;color:#64748b}.person-count{font-size:.85rem;color:#94a3b8;background:#ffffff0d;padding:.25rem .6rem;border-radius:12px}.note-content blockquote{margin:0;padding:1rem 1.25rem;background:#ffffff05;border-left:3px solid #d4af37;border-radius:0 8px 8px 0;color:#e8e8e8;font-style:italic;font-size:1rem;line-height:1.6}.diet-card .note-content{margin-top:.5rem}.diet-restriction{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;background:#f871711a;border-radius:8px;border:1px solid rgba(248,113,113,.2)}.diet-icon{font-size:1.25rem;flex-shrink:0}.diet-restriction span:last-child{color:#fca5a5;font-size:.95rem;line-height:1.5}.diet-summary{margin-top:2rem;padding:1.5rem;background:#d4af370d;border-radius:12px;border:1px solid rgba(212,175,55,.2)}.diet-summary h3{margin:0 0 .75rem;font-size:1rem;color:#d4af37}.diet-summary p{margin:0;color:#94a3b8}.diet-summary strong{color:#d4af37;font-size:1.25rem}.admin-container{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);color:#e8e8e8;padding:2rem}.non-drinkers-summary{margin-bottom:2rem}.non-drinkers-stats{display:flex;gap:1rem;flex-wrap:wrap}.stat-box{flex:1;min-width:150px;display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.stat-box .stat-icon{font-size:2rem}.stat-box .stat-info{display:flex;flex-direction:column}.stat-box .stat-number{font-size:1.75rem;font-weight:700;color:#fff}.stat-box .stat-label{font-size:.85rem;color:#94a3b8}.stat-box.drinkers{border-color:#4ade804d;background:#4ade800d}.stat-box.drinkers .stat-number{color:#4ade80}.stat-box.non-drinkers{border-color:#fbbf244d;background:#fbbf240d}.stat-box.non-drinkers .stat-number{color:#fbbf24}.stat-box.total{border-color:#d4af374d;background:#d4af370d}.stat-box.total .stat-number{color:#d4af37}.alcohol-summary{margin-bottom:2.5rem}.alcohol-summary h2{font-family:Cormorant Garamond,serif;font-size:1.5rem;color:#d4af37;margin:0 0 .5rem}.summary-note{color:#64748b;font-size:.9rem;margin:0 0 1.5rem}.glass-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1.5rem}.glass-card{background:#ffffff0d;border-radius:12px;padding:1.25rem;text-align:center;border:1px solid rgba(255,255,255,.1);transition:transform .2s,background .2s}.glass-card:hover{transform:translateY(-3px);background:#ffffff14}.glass-emoji{font-size:2.5rem;margin-bottom:.5rem}.glass-label{color:#94a3b8;font-size:.9rem;margin-bottom:.75rem}.glass-stats{display:flex;flex-direction:column;gap:.25rem}.glass-people{font-size:.85rem;color:#64748b}.glass-count{font-size:1.5rem;font-weight:700;color:#d4af37}.glass-volume{font-size:1rem;color:#4ade80;font-weight:600}.bottles-stats{display:flex;flex-direction:column;gap:.25rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.1);font-size:.8rem;color:#94a3b8}.bottles-stats span{display:flex;justify-content:center}.grand-total{text-align:center;padding:1.25rem;background:linear-gradient(135deg,#d4af3726,#d4af370d);border-radius:10px;border:1px solid rgba(212,175,55,.2);color:#d4af37;font-weight:500}.grand-total-main{font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.grand-total-bottles{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;font-size:.95rem;color:#94a3b8}.grand-total-bottles span{background:#ffffff0d;padding:.35rem .75rem;border-radius:6px}.alcohol-matrix{margin-bottom:2.5rem}.alcohol-matrix h2{font-family:Cormorant Garamond,serif;font-size:1.5rem;color:#d4af37;margin:0 0 1.5rem}.matrix-wrapper{overflow-x:auto;background:#ffffff05;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.matrix-table{width:100%;border-collapse:collapse;min-width:700px}.matrix-table th{padding:1rem .75rem;text-align:center;background:#ffffff0d;color:#94a3b8;font-size:.85rem;font-weight:600;border-bottom:1px solid rgba(255,255,255,.1)}.matrix-table th:first-child{text-align:left;padding-left:1.25rem;min-width:150px}.rank-header{min-width:45px}.total-header{background:#d4af371a!important;color:#d4af37!important;min-width:70px}.matrix-table td{padding:.85rem .75rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.05);font-size:.95rem}.matrix-table tbody tr:hover{background:#ffffff08}.alcohol-name{text-align:left!important;padding-left:1.25rem!important;display:flex;align-items:center;gap:.75rem;font-weight:500}.alcohol-emoji{font-size:1.25rem}.rank-cell{color:#64748b;transition:all .2s}.rank-cell.has-value{color:#fff;font-weight:600}.total-cell{background:#d4af371a;color:#d4af37;font-weight:700;font-size:1rem}.matrix-table tfoot td{padding:1rem .75rem;background:#ffffff0d;border-top:2px solid rgba(255,255,255,.1);font-weight:600}.footer-label{text-align:left!important;padding-left:1.25rem!important;color:#94a3b8;font-size:.85rem;text-transform:uppercase}.footer-cell{color:#94a3b8}.footer-total{background:#d4af3726!important;color:#d4af37!important;font-size:1.1rem}.alcohol-legend{background:#ffffff08;border-radius:12px;padding:1.5rem;border:1px solid rgba(255,255,255,.08)}.alcohol-legend h3{font-family:Cormorant Garamond,serif;font-size:1.25rem;color:#d4af37;margin:0 0 1rem}.alcohol-legend ul{margin:0;padding:0;list-style:none}.alcohol-legend li{color:#94a3b8;padding:.4rem 0;font-size:.95rem}.alcohol-legend li strong{color:#e8e8e8}.admin-container .loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh}.admin-container .loading-spinner{width:40px;height:40px;border:3px solid rgba(212,175,55,.2);border-top-color:#d4af37;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@media(max-width:768px){.admin-panel{padding:1rem}.admin-header{flex-direction:column;gap:1rem;text-align:center}.stats-grid{grid-template-columns:repeat(2,1fr)}.modal{padding:1.5rem}.notes-tabs{flex-direction:column}.note-header{flex-direction:column;gap:.5rem}.admin-container{padding:1rem}.glass-totals{grid-template-columns:repeat(2,1fr)}.alcohol-matrix h2,.alcohol-summary h2{font-size:1.25rem}}.toast-container{position:fixed;bottom:2rem;right:2rem;z-index:10000;display:flex;flex-direction:column;gap:.5rem}.toast{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:#1e293bfa;border-radius:12px;border:1px solid rgba(255,255,255,.15);box-shadow:0 10px 40px #0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:280px;max-width:400px}.toast-success{border-left:4px solid #22c55e}.toast-error{border-left:4px solid #ef4444}.toast-info{border-left:4px solid #3b82f6}.toast-icon{font-size:1.25rem;flex-shrink:0}.toast-message{flex:1;font-size:.95rem;color:#e2e8f0}.toast-close{background:none;border:none;color:#94a3b8;font-size:1.5rem;cursor:pointer;padding:0;line-height:1;opacity:.7;transition:opacity .2s,color .2s}.toast-close:hover{opacity:1;color:#fff}.special-message-modal{max-width:550px;width:90%}.special-message-modal .modal-subtitle{color:#94a3b8;margin:-.5rem 0 1.5rem;font-size:1rem}.special-message-modal .modal-subtitle strong{color:#d4af37}.special-message-textarea.large{width:100%;min-height:180px;padding:1rem;font-size:1rem;line-height:1.6;background:#0000004d;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#e2e8f0;resize:vertical;font-family:inherit;transition:border-color .2s,box-shadow .2s}.special-message-textarea.large:focus{outline:none;border-color:#d4af37;box-shadow:0 0 0 3px #d4af3726}.special-message-textarea.large::placeholder{color:#64748b;line-height:1.6}.form-hint{margin-top:.5rem;font-size:.85rem;color:#64748b}@media(max-width:480px){.toast-container{left:1rem;right:1rem;bottom:1rem}.toast{min-width:auto;max-width:none}.special-message-modal{max-width:none}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}@font-face{font-family:Miama Nueva;src:url(/assets/miama-c_GhS01Q.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/assets/CormorantGaramond-VariableFont_wght-B4Q5m-X8.ttf) format("truetype");font-weight:300 700;font-style:normal;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/assets/CormorantGaramond-Italic-VariableFont_wght-Ciducuzz.ttf) format("truetype");font-weight:300 700;font-style:italic;font-display:swap}:root{--color-gold: #c9a961;--color-gold-light: #e8d5a3;--color-gold-dark: #9a7b3d;--color-cream: #faf8f5;--color-cream-dark: #f0ebe3;--color-forest: #2d4a3e;--color-forest-light: #3d6352;--color-forest-dark: #1e3329;--color-blush: #e8c4c4;--color-blush-light: #f5e1e1;--color-blush-dark: #c99a9a;--color-burgundy: #722f37;--color-burgundy-light: #8b4049;--color-charcoal: #2c2c2c;--color-gray: #6b6b6b;--color-gray-light: #a8a8a8;--font-script: "Miama Nueva", cursive;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Montserrat", -apple-system, BlinkMacSystemFont, sans-serif;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--space-4xl: 6rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .12);--shadow-xl: 0 12px 40px rgba(0, 0, 0, .15);--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:17px;line-height:1.7;color:var(--color-charcoal);background-color:var(--color-cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(max-width:640px){body{font-size:16px}}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:400;line-height:1.2}a{color:var(--color-forest);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-gold-dark)}button{font-family:var(--font-body);cursor:pointer;border:none;background:none}input,textarea{font-family:var(--font-body);font-size:1rem}.container{width:100%;max-width:1100px;margin:0 auto;padding:0 var(--space-lg)}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-cream) 0%,var(--color-cream-dark) 100%);z-index:9999}.loading-rings{position:relative;width:80px;height:80px;margin-bottom:var(--space-lg)}.ring{position:absolute;width:40px;height:40px;border:3px solid var(--color-gold);border-radius:50%;animation:pulse 1.5s ease-in-out infinite}.ring-1{left:5px;top:50%;transform:translateY(-50%)}.ring-2{right:5px;top:50%;transform:translateY(-50%);animation-delay:.2s}@keyframes pulse{0%,to{opacity:.4;transform:translateY(-50%) scale(1)}50%{opacity:1;transform:translateY(-50%) scale(1.05)}}.loading-screen p{font-family:var(--font-display);font-size:1.25rem;color:var(--color-gray);letter-spacing:.1em}.section-header{text-align:center;margin-bottom:var(--space-3xl)}.section-header h2{font-size:clamp(2rem,5vw,3rem);color:var(--color-forest);margin-bottom:var(--space-md);position:relative;display:inline-block}.section-header h2:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:60px;height:2px;background:linear-gradient(90deg,transparent,var(--color-gold),transparent)}.section-subtitle{font-size:1.1rem;color:var(--color-gray);font-weight:300;margin-top:var(--space-md)}
