*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Helvetica Neue,Arial,sans-serif;line-height:1.6;font-weight:400;color:#000;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{min-height:100vh}a{text-decoration:none;color:inherit}button{font-family:inherit;cursor:pointer}@font-face{font-family:CormorantUnicase-Light;src:url(/assets/CormorantUnicase-Light-C4C5RJqf.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:CormorantUnicase-Medium;src:url(/assets/CormorantUnicase-Medium-pl1EwIo2.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:CormorantUnicase-SemiBold;src:url(/assets/CormorantUnicase-SemiBold-Bjb0OLNv.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:AddingtonCF-Thin;src:url(/assets/AddingtonCF-Thin-CSkKw9n1.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:AddingtonCF-Regular;src:url(/assets/AddingtonCF-Regular-zwMFR3l7.ttf) format("truetype");font-weight:400;font-style:normal}:root{--navbar-height: 6rem}.navbar{position:fixed;top:0;width:100%;background-color:#fff;box-shadow:0 2px 4px #0000001a;z-index:1000}.nav-container{max-width:1800px;margin:0 auto;padding:0rem 2rem 1rem;display:flex;flex-direction:column;align-items:center;position:relative}.nav-title{font-family:CormorantUnicase-Light,serif;font-size:4.8rem;font-weight:300;letter-spacing:20px;color:#000;text-decoration:none;margin-bottom:.5rem}.nav-logo-mobile{display:none}.hamburger{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:.5rem;position:absolute;right:1rem;top:2rem;z-index:1001}.bar{width:25px;height:3px;background-color:#000;margin:3px 0;transition:.3s}.hamburger .bar.open:nth-child(1){transform:rotate(-45deg) translate(-5px,6px)}.hamburger .bar.open:nth-child(2){opacity:0}.hamburger .bar.open:nth-child(3){transform:rotate(45deg) translate(-5px,-6px)}.nav-menu{display:flex;list-style:none;gap:2.5rem;margin:0;padding:0;flex-wrap:wrap;justify-content:center}.nav-menu>ul{display:flex;list-style:none;gap:2.5rem;margin:0;padding:0;flex-wrap:wrap;justify-content:center}.nav-menu li{flex-shrink:0}.menu-header,.menu-divider{display:none}.nav-menu a{font-family:AddingtonCF-Thin,serif;color:#000;text-decoration:none;font-size:1.62rem;font-weight:400;letter-spacing:1.5px;transition:opacity .3s,border-bottom .3s;white-space:nowrap;padding-bottom:2px;border-bottom:2px solid transparent}.nav-menu a:hover{opacity:.3;border-bottom:2px solid black}.nav-menu a.active{border-bottom:2px solid black}@media(max-width:768px){.nav-container{min-height:60px}.nav-title{font-size:2rem;letter-spacing:4px;margin-bottom:-.3rem;margin-top:.5rem;max-width:calc(100% - 70px);display:flex;align-items:center;justify-content:center}.nav-text{display:block}.nav-logo-mobile{display:none}.hamburger{display:flex;top:1.5rem;z-index:1003}.nav-menu{position:fixed;right:0;top:0;flex-direction:column;background-color:#fff;width:80%;height:100vh;text-align:left;transition:transform .3s ease-in-out;box-shadow:-2px 0 8px #0000001a;padding:2rem;overflow-y:auto;flex-wrap:nowrap;z-index:1002;justify-content:flex-start;transform:translate(100%)}.nav-menu.active{transform:translate(0)}.menu-header{display:block;text-align:center;margin-top:1rem}.menu-header h2{font-family:AddingtonCF-Regular,serif;font-size:1.5rem;letter-spacing:8px;color:#000;margin:0 0 .5rem}.menu-header p{font-family:AddingtonCF-Thin,serif;font-size:1.2rem;letter-spacing:2px;color:#000}.menu-divider{display:block;border:none;border-top:1px solid #ccc;margin:-1.5rem 0 1rem}.nav-menu ul{list-style:none;padding:0;margin:0;display:block}.nav-menu li{width:100%;margin-bottom:1.25rem}.nav-menu a{font-size:1.5rem;display:block;padding:.5rem 0}}@media(max-width:1024px)and (min-width:769px){.nav-title{font-size:3rem;letter-spacing:12px}.nav-menu{gap:1.5rem;flex-wrap:wrap;justify-content:center}.nav-menu a{font-size:1.3rem}}@font-face{font-family:AddingtonCF-Thin;src:url(/assets/AddingtonCF-Thin-CSkKw9n1.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:AddingtonCF-Regular;src:url(/assets/AddingtonCF-Regular-zwMFR3l7.ttf) format("truetype");font-weight:400;font-style:normal}.home{margin-top:0}.hero{position:relative;width:100%;height:100vh;overflow:hidden}.image-carousel{position:relative;width:100%;height:100%}.carousel-image{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;opacity:0;transition:opacity 1s ease-in-out}.carousel-image.active{opacity:1}.hero-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#fff;z-index:10;text-shadow:2px 2px 8px rgba(0,0,0,.5)}.ampersand{display:block;font-size:2rem;margin:1rem 0;font-weight:300;font-family:AddingtonCF-Thin,serif}.wedding-date{font-family:CormorantUnicase-Light,serif;font-size:8rem;letter-spacing:20px;transform:scaleY(1.2);margin-top:1.5rem}.countdown-section{background-color:#fff;padding:4rem 2rem;text-align:center}.countdown-content{max-width:800px;margin:0 auto}.countdown-title{font-family:AddingtonCF-Regular,serif;font-size:2.5rem}.countdown-label{font-family:AddingtonCF-Thin,serif;font-size:2rem;transform:scaleY(1.1);letter-spacing:2px;margin-bottom:2rem;color:#000;font-weight:300}@media(max-width:768px){.ampersand{font-size:1.5rem}.wedding-date{font-family:CormorantUnicase-Light,serif;font-size:3rem;letter-spacing:15px;margin-top:1.5rem}.countdown-label{font-size:1.5rem}}.page-container{padding-top:calc(var(--navbar-height, 6rem) + 2rem);padding-left:2rem;padding-right:2rem;padding-bottom:2rem;max-width:1200px;margin:0 auto;min-height:100vh}:where(.page-container) h1{font-size:2.5rem;font-weight:300;letter-spacing:4px;margin-bottom:2rem;text-align:center}:where(.page-container) p{font-size:1.1rem;line-height:1.8;text-align:center}@font-face{font-family:CormorantUnicase-Medium;src:url(/assets/CormorantUnicase-Medium-pl1EwIo2.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:CormorantUnicase-SemiBold;src:url(/assets/CormorantUnicase-SemiBold-Bjb0OLNv.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:AddingtonCF-Thin;src:url(/assets/AddingtonCF-Thin-CSkKw9n1.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:AddingtonCF-Regular;src:url(/assets/AddingtonCF-Regular-zwMFR3l7.ttf) format("truetype");font-weight:400;font-style:normal}.schedule-content{max-width:760px;width:100%;margin:0 auto;padding-top:2rem;padding-bottom:3rem}.schedule-list{display:grid;gap:1.5rem}.schedule-item{padding:1.75rem 1.5rem;background-color:#ffffffbf}.schedule-date{font-family:AddingtonCF-Thin,serif;font-size:2rem;letter-spacing:1px;color:#000;margin:0 0 1rem;text-align:left!important}.events-list{display:flex;flex-direction:column;gap:2.5rem}.schedule-divider{height:1px;background-color:#0003;margin:1.5rem 0 0;width:100%}.event-item{display:grid;grid-template-columns:100px 1fr;gap:2rem;align-items:baseline;padding-bottom:2rem;border-bottom:1px solid rgba(0,0,0,.08);justify-items:start}.event-item:last-child,.event-item-no-border{border-bottom:none;padding-bottom:0}.event-time{font-family:AddingtonCF-Thin,serif;font-size:1.5rem;color:#000;text-align:left;padding:0;margin:0;line-height:1.8}.event-content{display:flex;flex-direction:column;align-items:flex-start}.schedule-content .event-name{font-family:AddingtonCF-Thin,serif;font-size:1.7rem;margin:0 0 .75rem;padding:0;color:#000;letter-spacing:.5px;line-height:1.8;text-align:left!important}.schedule-content .event-location{font-family:AddingtonCF-Thin,serif;font-size:1.25rem;color:#000;margin:0 0 1rem;line-height:1.75;white-space:pre-line;text-align:left!important;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.schedule-content .event-notes{font-family:AddingtonCF-Thin,serif;font-size:1.25rem;color:#000;margin:1rem 0 0;line-height:1.75;font-style:italic;text-align:left!important}.directions-btn{font-family:AddingtonCF-Thin,serif;background:transparent;border:1px solid rgba(0,0,0,.3);color:#000;padding:.5rem 1.2rem;border-radius:4px;font-size:1.05rem;cursor:pointer;transition:all .3s ease;letter-spacing:.5px;margin-top:.5rem}.directions-btn:hover{background:#000;color:#fff;border-color:#000}.directions-btn:active{transform:translateY(1px)}@media(max-width:1024px){.schedule-content{max-width:700px}}@media(max-width:768px){.schedule-content{padding-top:1rem}.schedule-item{padding:1.4rem 1.1rem}.schedule-date{font-size:1.65rem}.event-item{grid-template-columns:1fr;gap:.75rem;padding-bottom:1.5rem}.event-time{padding-top:0}.schedule-content .event-name{font-size:1.5rem}.schedule-content .event-location,.schedule-content .event-notes{font-size:1.12rem}.directions-btn{width:100%;max-width:200px}}@font-face{font-family:CormorantUnicase-Light;src:url(/assets/CormorantUnicase-Light-C4C5RJqf.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:CormorantUnicase-Medium;src:url(/assets/CormorantUnicase-Medium-pl1EwIo2.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:CormorantUnicase-SemiBold;src:url(/assets/CormorantUnicase-SemiBold-Bjb0OLNv.ttf) format("truetype");font-weight:400;font-style:normal}.locations-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3rem;margin-top:3rem;max-width:1200px;margin-left:auto;margin-right:auto}.location-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:2.5rem;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;text-align:center;display:flex;flex-direction:column;align-items:center}.location-card:hover{transform:translateY(-3px);box-shadow:0 6px 20px #0000001a;border-color:#00000026}.location-icon{font-size:2.5rem;margin-bottom:1.5rem;opacity:.8}.location-card h3{font-family:CormorantUnicase-Medium,serif;margin:0 0 1rem;color:#000;font-size:1.8rem;letter-spacing:1px;font-weight:400;white-space:pre-line}.location-card .location-address{font-family:CormorantUnicase-Medium,serif;color:#333;margin-bottom:2rem;font-size:1.3rem;line-height:1.6;flex-grow:1;white-space:pre-line}.map-buttons{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:280px}.map-btn{font-family:CormorantUnicase-SemiBold,serif;color:#fff;border:none;padding:.85rem 1.5rem;border-radius:4px;font-size:.95rem;cursor:pointer;transition:opacity .3s ease,transform .2s ease;letter-spacing:1px;font-weight:400;width:100%}.map-btn:hover{opacity:.85;transform:translateY(-1px)}.map-btn:active{transform:translateY(0)}.google-maps,.apple-maps,.waze-maps{background:#666}@media(max-width:768px){.locations-container{grid-template-columns:1fr;gap:2rem;margin-top:2rem}.location-card{padding:2rem}.location-card h3{font-size:1.6rem}.map-buttons{max-width:100%}}@font-face{font-family:AddingtonCF-Thin;src:url(/assets/AddingtonCF-Thin-CSkKw9n1.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:AddingtonCF-Regular;src:url(/assets/AddingtonCF-Regular-zwMFR3l7.ttf) format("truetype");font-weight:400;font-style:normal}.accommodation-content{max-width:760px;width:100%;margin:0 auto;padding-top:2rem;padding-bottom:3rem}.accommodation-list{display:grid;gap:1.5rem}.accommodation-item{padding:1.75rem 1.5rem;background-color:#ffffffbf}.accommodation-item-title{font-family:AddingtonCF-Thin,serif;font-size:1.7rem;letter-spacing:.5px;color:#000;margin:0 0 .75rem;line-height:1.8;text-align:left!important}.accommodation-item-text{font-family:AddingtonCF-Thin,serif;font-size:1.25rem;line-height:1.75;color:#000;margin:0 0 1rem;text-align:left!important;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accommodation-item-text:last-child{margin-bottom:0}.accommodation-item-address{font-family:AddingtonCF-Thin,serif;font-size:1.2rem;line-height:1.75;letter-spacing:.5px;color:#000000b3;margin:0;text-align:left!important;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accommodation-note{font-family:AddingtonCF-Thin,serif;font-size:1.15rem;line-height:1.7;color:#000;margin:1.5rem 0 0;text-align:left!important}@media(max-width:1024px){.accommodation-content{max-width:700px}}@media(max-width:768px){.accommodation-content{padding-top:1rem}.accommodation-item{padding:1.4rem 1.1rem}.accommodation-item-title{font-size:1.5rem}.accommodation-item-text{font-size:1.12rem}.accommodation-item-address{font-size:1.08rem}.accommodation-note{font-size:1.05rem}}@font-face{font-family:AddingtonCF-Thin;src:url(/assets/AddingtonCF-Thin-CSkKw9n1.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:AddingtonCF-Regular;src:url(/assets/AddingtonCF-Regular-zwMFR3l7.ttf) format("truetype");font-weight:400;font-style:normal}.additional-info-content{max-width:760px;width:100%;margin:0 auto;padding-top:2rem;padding-bottom:3rem}.additional-info-content .page-title{font-family:AddingtonCF-Thin,serif;font-size:3rem;letter-spacing:3px;color:#000;margin:0 0 .75rem;text-align:center;font-weight:400}.additional-info-list{display:grid;gap:1.5rem}.additional-info-item{padding:1.75rem 1.5rem;background-color:#ffffffbf}.additional-info-item:first-child{padding-top:1rem}.additional-info-item-title{font-family:AddingtonCF-Thin,serif;font-size:1.7rem;letter-spacing:.5px;color:#000;margin:0 0 .75rem;line-height:1.8;text-align:left!important}.additional-info-item-text{font-family:AddingtonCF-Thin,serif;font-size:1.25rem;line-height:1.75;color:#000;margin:0 0 1rem;text-align:left!important;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.additional-info-item-text:last-child{margin-bottom:0}@media(max-width:1024px){.additional-info-content{max-width:700px}}@media(max-width:768px){.additional-info-content{padding-top:1rem}.additional-info-content .page-title{font-size:2.2rem;letter-spacing:1px}.additional-info-item{padding:1.4rem 1.1rem}.additional-info-item:first-child{padding-top:.9rem}.additional-info-item-title{font-size:1.5rem}.additional-info-item-text{font-size:1.12rem}}@font-face{font-family:AddingtonCF-Thin;src:url(/assets/AddingtonCF-Thin-CSkKw9n1.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:AddingtonCF-Regular;src:url(/assets/AddingtonCF-Regular-zwMFR3l7.ttf) format("truetype");font-weight:400;font-style:normal}.rsvp-content{max-width:760px;width:100%;margin:0 auto;padding-top:2rem;padding-bottom:3rem}.rsvp-content .rsvp-title{font-family:AddingtonCF-Thin,serif;font-size:3rem;letter-spacing:3px;margin-bottom:1.5rem;text-align:center;color:#000;font-weight:400}.rsvp-description{font-family:AddingtonCF-Thin,serif;font-size:1.25rem;line-height:1.75;text-align:center;color:#000;margin-bottom:3rem}.rsvp-form{background:#ffffffbf;border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:1.75rem 1.5rem;transition:box-shadow .3s ease}.rsvp-form:hover{box-shadow:0 6px 20px #00000014}.form-group{margin-bottom:1.5rem}.form-group label{font-family:AddingtonCF-Thin,serif;display:block;margin-bottom:.75rem;font-size:1.3rem;color:#000;letter-spacing:.5px}.form-group label[for=name],.form-group label[for=surname],.form-group label[for=gallery-code],.form-group label[for^=menu-],.form-group label[for^=notes-],.form-group label[for^=age-],.form-group label[for^=name-],.form-group label[for^=surname-]{font-family:AddingtonCF-Thin,serif;font-size:1.3rem;color:#000;letter-spacing:.5px;font-weight:400}.form-group input{font-family:AddingtonCF-Thin,serif!important;width:100%;padding:1rem;border:1px solid rgba(0,0,0,.2);border-radius:4px;font-size:1.1rem!important;color:#000!important;transition:border-color .3s;box-sizing:border-box;letter-spacing:.5px!important;font-weight:400!important}.form-group input:focus{outline:none;border-color:#000}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.error-message{font-family:AddingtonCF-Thin,serif;background-color:#fee;color:#c33;padding:1rem;border-radius:4px;margin-bottom:1.5rem;font-size:1.05rem;text-align:center;letter-spacing:.3px}.submit-button{font-family:AddingtonCF-Thin,serif;width:100%;padding:1rem 2rem;background:#000;color:#fff;border:none;border-radius:4px;font-size:1.2rem;font-weight:400;cursor:pointer;transition:opacity .3s;letter-spacing:2px}.submit-button:hover:not(:disabled){opacity:.8}.submit-button:disabled{opacity:.6;cursor:not-allowed}.rsvp-response-form{display:flex;flex-direction:column;gap:2rem}.guest-card{background:#ffffffbf;border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:1.75rem 1.5rem;transition:box-shadow .3s ease}.guest-card:hover{box-shadow:0 6px 20px #00000014}.guest-name{font-family:AddingtonCF-Thin,serif;font-size:2rem;letter-spacing:2px;margin:0 0 2rem;text-align:center;color:#000;font-weight:400}.form-group .attendance-label,.attendance-label{font-family:AddingtonCF-Thin,serif;display:block;margin-bottom:1rem;font-size:1.3rem;color:#000;letter-spacing:.5px}.radio-group{display:grid;grid-template-columns:11rem auto;gap:1.5rem;align-items:start}.radio-option{font-family:AddingtonCF-Thin,serif;display:flex;align-items:flex-start;cursor:pointer;font-size:1.125rem;color:#000;letter-spacing:.5px;line-height:1.4}.radio-option input[type=radio]{width:1.2rem;height:1.2rem;min-width:1.2rem;min-height:1.2rem;cursor:pointer;accent-color:black;margin:0 .375rem 0 0;flex-shrink:0;transform:translateY(.1rem)}.radio-option span{color:#000;line-height:1.2rem;flex:1;display:inline-block;vertical-align:middle}.checkbox-label{font-family:AddingtonCF-Thin,serif;display:flex;align-items:center;cursor:pointer;font-size:1.1rem;color:#000;letter-spacing:.5px;line-height:1.2rem}.checkbox-label input[type=checkbox]{width:1.2rem;height:1.2rem;min-width:1.2rem;min-height:1.2rem;cursor:pointer;accent-color:black;margin:0 .375rem 0 0;flex-shrink:0;transform:translateY(.35rem)}.checkbox-label span{color:#000;line-height:1.2rem;flex:1;display:inline-block;vertical-align:middle}.form-group select{font-family:AddingtonCF-Thin,serif!important;width:100%;padding:1rem;border:1px solid rgba(0,0,0,.2);border-radius:4px;font-size:1.1rem!important;color:#000!important;transition:border-color .3s;box-sizing:border-box;letter-spacing:.5px!important;background-color:#fff;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-weight:400!important}.form-group select:focus{outline:none;border-color:#000}.form-group textarea{font-family:AddingtonCF-Thin,serif!important;width:100%;padding:1rem;border:1px solid rgba(0,0,0,.2);border-radius:4px;font-size:1.1rem!important;color:#000!important;transition:border-color .3s;box-sizing:border-box;letter-spacing:.5px!important;resize:vertical;font-weight:400!important;line-height:1.5}.form-group textarea:focus{outline:none;border-color:#000}.form-actions{display:flex;gap:1rem;margin-top:1rem}.back-button{font-family:AddingtonCF-Thin,serif;flex:1;padding:1rem 2rem;background:#fff;color:#000;border:1px solid black;border-radius:4px;font-size:1.2rem;font-weight:400;cursor:pointer;transition:all .3s;letter-spacing:2px}.back-button:hover{background:#000;color:#fff}.form-actions .submit-button{flex:2}.rsvp-content .submit-button:only-child{max-width:400px;margin:2rem auto 0;display:block}@media(max-width:1024px){.rsvp-content{max-width:700px}.rsvp-form{padding:1.6rem 1.3rem}}@media(max-width:768px){.rsvp-content{padding-top:1rem}.rsvp-content .rsvp-title{font-size:2.2rem;letter-spacing:2px}.rsvp-description{font-size:1.15rem;margin-bottom:2rem}.rsvp-form{padding:1.4rem 1.1rem}.form-group label{font-size:1.15rem}.form-group input{font-size:1rem;padding:.9rem}.submit-button{font-size:1.1rem;padding:.9rem 1.5rem}.guest-card{padding:1.4rem 1.1rem}.guest-name{font-size:1.6rem;margin-bottom:1.5rem}.radio-option,.checkbox-label{font-size:1.125rem}.radio-group{grid-template-columns:1fr;gap:.75rem}.radio-option{align-items:center}.radio-option input[type=radio]{transform:none}.form-actions{flex-direction:column}.back-button,.form-actions .submit-button{width:100%}}@media(max-width:480px){.rsvp-content .rsvp-title{font-size:2rem}.rsvp-description{font-size:1.05rem;margin-bottom:1.5rem}.form-group label,.form-group .attendance-label,.attendance-label{font-size:1.05rem}}.guest-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.guest-card-header .guest-name{margin:0 0 1.5rem;flex:1}.remove-guest-button{font-family:AddingtonCF-Thin,serif;background:none;border:none;font-size:1.8rem;color:#c33;cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;transition:all .3s;border-radius:50%;line-height:1}.remove-guest-button:hover{background:#cc33331a;transform:scale(1.1)}.add-guest-button{font-family:AddingtonCF-Thin,serif;width:100%;padding:1rem 2rem;background:#fff;color:#000;border:2px dashed rgba(0,0,0,.3);border-radius:8px;font-size:1.1rem;font-weight:400;cursor:pointer;transition:all .3s;letter-spacing:1px;margin-bottom:1rem}.add-guest-button:hover{border-color:#000;background:#00000005}.gallery-content{max-width:1100px;width:100%;margin:0 auto;padding-top:2rem;padding-bottom:3rem}.gallery-content .rsvp-title{font-family:AddingtonCF-Thin,serif;font-size:3rem;letter-spacing:3px;margin-bottom:1.5rem;text-align:center;color:#000;font-weight:400}.gallery-loading{margin-top:4rem}.gallery-welcome{margin-bottom:2rem}.gallery-toolbar{display:flex;flex-direction:column;align-items:center;margin-bottom:2rem}.gallery-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;width:100%}.gallery-upload-button{flex:1 1 260px;max-width:400px}.gallery-album-button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;background:transparent;color:#000;border:1px solid black;text-decoration:none;text-align:center}.gallery-album-button:hover{opacity:.7}.gallery-file-input{display:none}.upload-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.upload-item{font-family:AddingtonCF-Thin,serif;display:flex;align-items:center;gap:1rem;background:#ffffffbf;border:1px solid rgba(0,0,0,.08);border-radius:4px;padding:.6rem 1rem;font-size:1rem;color:#000}.upload-item.error{border-color:#c336}.upload-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-progress{flex:1;height:6px;background:#00000014;border-radius:3px;overflow:hidden}.upload-progress-bar{height:100%;background:#000;border-radius:3px;transition:width .2s ease}.upload-error-text{color:#c33;font-size:.95rem;white-space:nowrap}.upload-error-text.upload-error-wrap{white-space:normal;text-align:right}.upload-album-link{color:#c33;text-decoration:underline}.gallery-album-hint{font-family:AddingtonCF-Thin,serif;font-size:.95rem;color:#000000b3;margin:.75rem 0 0;max-width:820px;text-align:center}.gallery-album-hint a{color:inherit;text-decoration:underline}.upload-dismiss{background:none;border:none;color:#c33;font-size:1.1rem;cursor:pointer;padding:0 .25rem;line-height:1}.gallery-filter{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.gallery-filter-tabs{display:flex;border:1px solid rgba(0,0,0,.15);border-radius:4px;overflow:hidden;background:#ffffffbf}.gallery-filter-tab{font-family:AddingtonCF-Thin,serif;background:none;border:none;padding:.5rem 1.1rem;font-size:1rem;color:#0009;cursor:pointer;transition:background .2s ease,color .2s ease}.gallery-filter-tab.active{background:#000;color:#fff;cursor:default}.gallery-filter-tab:disabled:not(.active){opacity:.5;cursor:default}.gallery-count{font-family:AddingtonCF-Thin,serif;font-size:.95rem;color:#00000073;white-space:nowrap}.gallery-load-more{display:flex;justify-content:center;margin-top:1.5rem}.gallery-load-more-button{font-family:AddingtonCF-Thin,serif;background:#ffffffbf;border:1px solid rgba(0,0,0,.15);border-radius:4px;padding:.6rem 1.6rem;font-size:1rem;color:#000;cursor:pointer;transition:box-shadow .3s ease}.gallery-load-more-button:hover:not(:disabled){box-shadow:0 6px 20px #00000026}.gallery-load-more-button:disabled{opacity:.6;cursor:default}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.photo-tile{display:block;padding:0;border:1px solid rgba(0,0,0,.08);border-radius:4px;background:#ffffffbf;cursor:pointer;overflow:hidden;aspect-ratio:1;transition:box-shadow .3s ease}.photo-tile:hover{box-shadow:0 6px 20px #00000026}.photo-tile img{width:100%;height:100%;object-fit:cover;display:block}.video-tile{position:relative}.tile-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#00000040;background:linear-gradient(135deg,#0000000a,#0000001a)}.tile-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;padding-left:.2rem;border-radius:50%;background:#0000008c;color:#fff;font-size:1.2rem;pointer-events:none;transition:background .2s ease}.video-tile:hover .tile-play{background:#000000bf}.tile-duration{position:absolute;right:.4rem;bottom:.4rem;padding:.1rem .4rem;border-radius:3px;background:#000000b3;color:#fff;font-family:system-ui,sans-serif;font-size:.75rem;font-variant-numeric:tabular-nums;pointer-events:none}.tile-status{position:absolute;left:.4rem;right:.4rem;bottom:.4rem;padding:.2rem .4rem;border-radius:3px;background:#000000b3;color:#fff;font-family:system-ui,sans-serif;font-size:.75rem;text-align:center;pointer-events:none}.tile-status-failed{background:#a02828d9}.photo-tile.processing img,.photo-tile.failed img{opacity:.55}.photo-tile.processing .tile-placeholder{animation:tile-pulse 1.6s ease-in-out infinite}@keyframes tile-pulse{0%,to{opacity:1}50%{opacity:.5}}.upload-kind{color:#00000080}.gallery-empty{font-family:AddingtonCF-Thin,serif;font-size:1.2rem;text-align:center;color:#0009;margin:3rem 0}.gallery-leave-button{font-family:AddingtonCF-Thin,serif;display:block;margin:3rem auto 0;background:none;border:none;color:#00000073;font-size:.95rem;letter-spacing:1px;cursor:pointer;text-decoration:underline}.gallery-leave-button:hover{color:#000}.lightbox{position:fixed;inset:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:2000}.lightbox-inner{position:relative;max-width:92vw;max-height:92vh;display:flex;flex-direction:column;align-items:center}.lightbox-inner img{max-width:92vw;max-height:82vh;object-fit:contain;border-radius:4px}.lightbox-photo{position:relative;display:flex}.lightbox-fullres{position:absolute;right:8px;bottom:8px;padding:4px 10px;border-radius:999px;background:#0000008c;color:#fff;font-size:.75rem;pointer-events:none}.lightbox-video{max-width:92vw;max-height:82vh;width:auto;height:auto;background:#000;border-radius:4px;outline:none}.lightbox-message{display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:92vw}.lightbox-message img{max-height:60vh;opacity:.6}.lightbox-message p{font-family:AddingtonCF-Thin,serif;color:#fff;font-size:1.1rem;text-align:center;margin:0;padding:0 1rem}.lightbox-caption{font-family:AddingtonCF-Thin,serif;display:flex;align-items:center;gap:1.5rem;color:#fff;font-size:1.05rem;letter-spacing:.5px;margin-top:1rem;min-height:2rem}.lightbox-delete{font-family:AddingtonCF-Thin,serif;background:none;border:1px solid rgba(255,255,255,.6);color:#fff;border-radius:4px;padding:.4rem 1rem;font-size:.95rem;cursor:pointer;transition:all .3s}.lightbox-delete:hover:not(:disabled){background:#cc3333d9;border-color:transparent}.lightbox-delete:disabled{opacity:.6;cursor:not-allowed}.lightbox-close{position:absolute;top:-.5rem;right:-.5rem;transform:translate(100%,-100%);background:none;border:none;color:#fff;font-size:1.8rem;cursor:pointer;line-height:1;padding:.5rem}.lightbox-nav{position:fixed;top:50%;transform:translateY(-50%);background:#ffffff1f;border:none;color:#fff;font-size:2.5rem;line-height:1;cursor:pointer;padding:.5rem .9rem;border-radius:4px;transition:background .3s}.lightbox-nav:hover{background:#ffffff40}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}@media(max-width:768px){.gallery-content .rsvp-title{font-size:2.2rem;letter-spacing:2px}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.5rem}.gallery-filter{flex-direction:column;align-items:stretch;gap:.5rem}.gallery-filter-tabs{width:100%}.gallery-filter-tab{flex:1;padding:.5rem;font-size:.95rem}.gallery-count{text-align:center}.lightbox-close{top:.5rem;right:.5rem;transform:none;position:fixed}.lightbox-nav{font-size:2rem;padding:.4rem .7rem}.lightbox-prev{left:.4rem}.lightbox-next{right:.4rem}}.admin-login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#4a90e2;padding:20px}.admin-login-box{background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0003;width:100%;max-width:400px}.admin-login-box h1{margin:0 0 30px;font-size:28px;text-align:center;color:#333}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#555;font-size:14px}.form-group input{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:6px;font-size:16px;transition:border-color .3s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#4a90e2}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.error-message{background-color:#fee;color:#c33;padding:12px;border-radius:6px;margin-bottom:20px;font-size:14px;text-align:center}.admin-login-box button{width:100%;padding:14px;background:#4a90e2;color:#fff;border:none;border-radius:4px;font-size:16px;font-weight:500;cursor:pointer;transition:background .2s}.admin-login-box button:hover:not(:disabled){background:#357abd}.admin-login-box button:disabled{opacity:.6;cursor:not-allowed}.admin-dashboard{min-height:100vh;background:#f5f7fa}.admin-header{background:#fff;padding:20px 40px;box-shadow:0 2px 8px #00000014;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:100}.admin-header h1{margin:0;font-size:24px;color:#2c3e50;font-weight:700}.logout-btn{padding:10px 20px;background:#c9574d;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.logout-btn:hover{background:#b4483e}.admin-content{padding:30px;max-width:1400px;margin:0 auto}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#666}.loading-spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-banner{background:#fee;color:#c33;padding:15px 20px;border-radius:8px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center;border:1px solid #fcc}.error-banner button{padding:8px 16px;background:#c33;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.error-banner button:hover{background:#a22}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;padding:20px;border-radius:6px;box-shadow:0 1px 3px #0000001a;text-align:center;transition:box-shadow .2s;border-top:3px solid #4a90e2}.stat-card:hover{box-shadow:0 2px 6px #00000026}.stat-card.stat-attending{border-top-color:#5cb85c}.stat-card.stat-not-attending{border-top-color:#d9534f}.stat-card.stat-pending{border-top-color:#f0ad4e}.stat-card.clickable{cursor:pointer;transition:all .2s ease}.stat-card.clickable:hover{transform:translateY(-2px);box-shadow:0 4px 10px #0000001f}.stat-card.clickable.active{background-color:#f8fbff;box-shadow:0 2px 8px #4a90e233,0 0 0 2px #4a90e2}.stat-card.stat-attending.clickable.active{background-color:#f4faf4;box-shadow:0 2px 8px #5cb85c33,0 0 0 2px #5cb85c}.stat-card.stat-pending.clickable.active{background-color:#fffbf4;box-shadow:0 2px 8px #f0ad4e33,0 0 0 2px #f0ad4e}.stat-card.stat-not-attending.clickable.active{background-color:#fff6f6;box-shadow:0 2px 8px #d9534f33,0 0 0 2px #d9534f}.stat-value{font-size:32px;font-weight:700;color:#2c3e50;margin-bottom:8px}.stat-label{font-size:13px;color:#7f8c8d;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.search-container{margin-bottom:20px}.search-input{width:100%;padding:12px 20px;border:2px solid #e0e0e0;border-radius:8px;font-size:16px;transition:border-color .3s;box-sizing:border-box}.search-input:focus{outline:none;border-color:#667eea}.invitations-container{background:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;padding:25px}.invitations-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0;flex-wrap:wrap;gap:15px}.invitations-header h2{margin:0;color:#2c3e50;font-size:22px}.header-actions{display:flex;gap:10px}.create-btn{padding:10px 18px;background:#4a90e2;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s}.create-btn:hover:not(:disabled){background:#357abd}.create-btn:disabled{opacity:.5;cursor:not-allowed}.refresh-btn{padding:10px 18px;background:#5a6c7d;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s}.refresh-btn:hover{background:#495963}.table-planner-btn{padding:10px 18px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:600;box-shadow:0 2px 6px #10b98140;transition:all .2s ease}.table-planner-btn:hover{background:linear-gradient(135deg,#34d399,#10b981);transform:translateY(-1px);box-shadow:0 4px 10px #10b98159}.accommodation-planner-btn{padding:10px 18px;background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:600;box-shadow:0 2px 6px #6d28d940;transition:all .2s ease}.accommodation-planner-btn:hover{background:linear-gradient(135deg,#a78bfa,#8b5cf6);transform:translateY(-1px);box-shadow:0 4px 10px #6d28d959}.gallery-usage-btn{padding:10px 18px;background:linear-gradient(135deg,#38bdf8,#0284c7);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:600;box-shadow:0 2px 6px #0284c740;transition:all .2s ease}.gallery-usage-btn:hover{background:linear-gradient(135deg,#7dd3fc,#38bdf8);transform:translateY(-1px);box-shadow:0 4px 10px #0284c759}.no-results{text-align:center;padding:60px 20px;color:#999;font-size:16px}.table-responsive{overflow-x:auto;width:100%;margin-top:20px}.invitations-table{width:100%;border-collapse:collapse;background:#fff;font-size:14px}.invitations-table th{background:#f8f9fa;color:#5a6c7d;font-weight:600;text-transform:uppercase;font-size:12px;letter-spacing:.5px;padding:15px;text-align:left;border-bottom:2px solid #e8ecef}.invitations-table td{padding:15px;border-bottom:1px solid #e8ecef;vertical-align:middle;color:#2c3e50}.invitation-tbody{transition:background-color .2s}.invitation-tbody:hover{background-color:#fcfcfc}.invitation-tbody:not(:last-child) tr:last-child td{border-bottom:2px solid #d1d8dd}.invitation-id-cell{font-weight:700;color:#4a90e2;border-right:1px solid #e8ecef;text-align:center;vertical-align:top;padding-top:20px!important}.guest-count-small{font-size:11px;color:#7f8c8d;font-weight:500;margin-top:6px;white-space:nowrap}.no-guests-cell{text-align:center;color:#999;font-style:italic}.guest-name-cell strong{font-weight:600;color:#2c3e50;font-size:15px}.note-cell{max-width:150px}.note-text{display:inline-block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-style:italic;color:#7f8c8d}.actions-cell{border-left:1px solid #e8ecef;vertical-align:top;padding-top:20px!important}.table-actions{display:flex;flex-direction:column;gap:8px;align-items:center}.edit-invitation-btn{padding:8px 16px;background:#4a90e2;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500;transition:background .2s;white-space:nowrap;width:100%}.edit-invitation-btn:hover{background:#357abd}.delete-invitation-btn{padding:8px 16px;background:#c9574d;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500;transition:background .2s;white-space:nowrap;width:100%}.delete-invitation-btn:hover:not(:disabled){background:#b4483e}.delete-invitation-btn:disabled{opacity:.5;cursor:not-allowed}.child-badge{background:#f0ad4e;color:#333;padding:3px 8px;border-radius:3px;font-size:11px;font-weight:500;white-space:nowrap}.badge{padding:4px 10px;border-radius:3px;font-size:12px;font-weight:500;white-space:nowrap}.badge-attending{background:#d4edda;color:#2d5a2d}.badge-not-attending{background:#f8d7da;color:#5a1f1f}.badge-pending{background:#fff3cd;color:#7a5d00}@media(max-width:768px){.admin-header{padding:15px 20px}.admin-header h1{font-size:20px}.admin-content{padding:20px 15px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.stat-value{font-size:24px}.stat-label{font-size:11px}.invitation-header{padding:15px}.guests-list{padding:10px 15px}.guest-main-info{flex-direction:column}.guest-details{grid-template-columns:1fr}}.invitation-edit{min-height:100vh;background:#f5f7fa}.edit-content{padding:30px;max-width:1200px;margin:0 auto}.edit-navigation{margin-bottom:20px}.back-btn{padding:10px 20px;background:#6c757d;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s}.back-btn:hover{background:#5a6268}.edit-container{background:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;padding:30px}.edit-header-section{margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #f0f0f0}.edit-header-section h2{margin:0 0 10px;color:#2c3e50;font-size:24px}.invitation-id{margin:0;color:#7f8c8d;font-size:14px;font-weight:600}.guests-section{margin-bottom:30px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.section-header h3{margin:0;color:#2c3e50;font-size:20px}.add-guest-btn{padding:10px 20px;background:#4a90e2;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s}.add-guest-btn:hover:not(:disabled){background:#357abd}.add-guest-btn:disabled{opacity:.5;cursor:not-allowed}.no-guests{text-align:center;padding:60px 20px;background:#f8f9fa;border-radius:8px;border:2px dashed #dee2e6}.no-guests p{margin:0 0 10px;color:#6c757d;font-size:16px}.no-guests .hint{font-size:14px;color:#999}.guests-edit-list{display:flex;flex-direction:column;gap:15px}.guest-edit-card{padding:20px;background:#f8f9fa;border:2px solid #e8ecef;border-radius:8px;display:flex;justify-content:space-between;align-items:center;transition:all .3s;flex-wrap:wrap;gap:15px}.guest-edit-card:hover{border-color:#4a90e2;box-shadow:0 1px 4px #4a90e226}.guest-edit-info{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.guest-edit-info strong{color:#2c3e50;font-size:16px}.guest-edit-actions{display:flex;gap:10px}.edit-guest-btn,.delete-guest-btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500;transition:background .2s}.edit-guest-btn{background:#5a6c7d;color:#fff}.edit-guest-btn:hover:not(:disabled){background:#495963}.delete-guest-btn{background:#c9574d;color:#fff}.delete-guest-btn:hover:not(:disabled){background:#b4483e}.edit-guest-btn:disabled,.delete-guest-btn:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px;overflow-y:auto}.modal-content{background:#fff;border-radius:10px;box-shadow:0 4px 20px #00000026;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;margin:auto}.modal-confirm{max-width:500px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 30px;border-bottom:2px solid #f0f0f0}.modal-header h2{margin:0;color:#2c3e50;font-size:22px}.modal-close-btn{background:none;border:none;font-size:32px;color:#7f8c8d;cursor:pointer;padding:0;width:32px;height:32px;line-height:1;transition:color .2s}.modal-close-btn:hover{color:#2c3e50}.guest-form{padding:30px}.form-error{background:#f8d7da;color:#721c24;padding:12px 16px;border-radius:4px;margin-bottom:20px;font-size:14px;border:1px solid #f5c6cb}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#2c3e50;font-weight:500;font-size:14px}.form-group input[type=text],.form-group input[type=number],.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:2px solid #e8ecef;border-radius:4px;font-size:14px;transition:border-color .2s;font-family:inherit}.form-group input[type=text]:focus,.form-group input[type=number]:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4a90e2}.form-group input[type=text]:disabled,.form-group input[type=number]:disabled,.form-group select:disabled,.form-group textarea:disabled{background:#f5f7fa;cursor:not-allowed}.form-group textarea{resize:vertical;min-height:80px}.checkbox-group{margin-bottom:16px}.checkbox-group label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:400}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-group span{color:#2c3e50;font-size:14px;-webkit-user-select:none;user-select:none}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:30px;padding-top:20px;border-top:2px solid #f0f0f0}.cancel-btn,.submit-btn{padding:10px 24px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s}.cancel-btn{background:#6c757d;color:#fff}.cancel-btn:hover:not(:disabled){background:#5a6268}.submit-btn{background:#4a90e2;color:#fff}.submit-btn:hover:not(:disabled){background:#357abd}.cancel-btn:disabled,.submit-btn:disabled{opacity:.6;cursor:not-allowed}.confirm-content{padding:30px}.modal-confirm .modal-actions{padding:20px 30px;margin:0}.confirm-content p{margin:0 0 16px;color:#2c3e50;font-size:15px;line-height:1.5}.guest-info-confirm{background:#f8f9fa;padding:16px;border-radius:6px;border:2px solid #e8ecef;margin:16px 0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.guest-info-confirm strong{color:#2c3e50;font-size:16px}.warning-text{color:#c9574d!important;font-weight:500!important;margin-top:16px!important}.delete-confirm-btn{padding:10px 24px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s;background:#c9574d;color:#fff}.delete-confirm-btn:hover:not(:disabled){background:#b4483e}.delete-confirm-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.edit-content{padding:20px 15px}.edit-container{padding:20px}.guest-edit-card{flex-direction:column;align-items:flex-start}.guest-edit-actions{width:100%}.edit-guest-btn,.delete-guest-btn{flex:1}.modal-content{max-width:100%;margin:0}.modal-header,.guest-form{padding:20px}.form-row{grid-template-columns:1fr;gap:0}.modal-actions{flex-direction:column-reverse}.cancel-btn,.submit-btn{width:100%}}.can-add-guest-toggle{display:flex;align-items:center;gap:12px;margin-top:16px}.toggle-label{font-size:15px;font-weight:500;color:#2c3e50}.toggle-switch{position:relative;width:48px;height:26px;border-radius:13px;border:none;background:#ccc;cursor:pointer;transition:background .25s;padding:0;flex-shrink:0}.toggle-switch--on{background:#28a745}.toggle-switch:disabled{opacity:.6;cursor:not-allowed}.toggle-thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000004d;transition:transform .25s;display:block}.toggle-switch--on .toggle-thumb{transform:translate(22px)}.toggle-saving{font-size:13px;color:#6c757d}.table-planner-page.theme-light{--bg-page: #f5f7fa;--bg-header: #ffffff;--bg-sidebar: #ffffff;--bg-sidebar-card: #f8f9fa;--bg-sidebar-card-hover: #f1f5f9;--text-main: #2c3e50;--text-muted: #5a6c7d;--text-subtle: #7f8c8d;--border-light: #e8ecef;--border-card: #d1d8dd;--canvas-bg: #eaeff5;--canvas-grid-dot: rgba(100, 116, 139, .22);--banner-bg: #ffffff;--banner-text: #2c3e50;--header-shadow: 0 2px 8px rgba(0, 0, 0, .08);--modal-bg: #ffffff;--input-bg: #f8f9fa;--seat-empty-bg: #ffffff;--seat-empty-border: #cbd5e1;--seat-empty-text: #64748b;--table-round-bg: radial-gradient(circle at 35% 35%, #ffffff, #f8f9fa, #e2e8f0);--table-round-border: #4a90e2;--table-square-bg: linear-gradient(135deg, #ffffff, #f8f9fa);--table-square-border: #5a6c7d;--table-shadow: 0 8px 24px -4px rgba(0, 0, 0, .12);--btn-back-bg: #f0f4f8;--btn-back-hover: #e2e8f0;--chip-bg: #f1f5f9;--chip-hover: #e2e8f0;--chip-active-bg: #e0f2fe;--chip-active-text: #0284c7}.table-planner-page.theme-dark{--bg-page: #0b0f19;--bg-header: rgba(15, 23, 42, .88);--bg-sidebar: rgba(15, 23, 42, .85);--bg-sidebar-card: rgba(30, 41, 59, .65);--bg-sidebar-card-hover: rgba(51, 65, 85, .75);--text-main: #f8fafc;--text-muted: #cbd5e1;--text-subtle: #94a3b8;--border-light: rgba(255, 255, 255, .08);--border-card: rgba(255, 255, 255, .12);--canvas-bg: #0d121f;--canvas-grid-dot: rgba(148, 163, 184, .15);--banner-bg: rgba(15, 23, 42, .92);--banner-text: #e2e8f0;--header-shadow: 0 4px 20px rgba(0, 0, 0, .3);--modal-bg: #1e293b;--input-bg: rgba(30, 41, 59, .6);--seat-empty-bg: rgba(30, 41, 59, .85);--seat-empty-border: rgba(148, 163, 184, .4);--seat-empty-text: #94a3b8;--table-round-bg: radial-gradient(circle at 35% 35%, #334155, #1e293b, #0f172a);--table-round-border: #38bdf8;--table-square-bg: linear-gradient(135deg, #1e293b, #0f172a);--table-square-border: #818cf8;--table-shadow: 0 16px 36px -10px rgba(0, 0, 0, .7);--btn-back-bg: rgba(255, 255, 255, .06);--btn-back-hover: rgba(255, 255, 255, .12);--chip-bg: rgba(30, 41, 59, .8);--chip-hover: rgba(51, 65, 85, .8);--chip-active-bg: rgba(56, 189, 248, .15);--chip-active-text: #38bdf8}.table-planner-page{height:100vh;display:flex;flex-direction:column;background:var(--bg-page);color:var(--text-main);font-family:AddingtonCF-Regular,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden;position:relative;transition:background-color .25s ease,color .25s ease}.planner-toast{position:fixed;top:84px;right:30px;background:#2c3e50;color:#fff;padding:14px 24px;border-radius:8px;font-weight:600;font-size:14px;box-shadow:0 10px 25px -5px #0000004d,0 0 0 1px #ffffff1a;z-index:9999;animation:toastSlideIn .25s cubic-bezier(.16,1,.3,1)}@keyframes toastSlideIn{0%{transform:translateY(-20px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.planner-header{height:72px;background:var(--bg-header);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border-light);box-shadow:var(--header-shadow);display:flex;align-items:center;justify-content:space-between;padding:0 28px;z-index:100;flex-shrink:0;transition:background .25s ease,border-color .25s ease}.header-left{display:flex;align-items:center;gap:16px}.back-btn{background:var(--btn-back-bg);border:1px solid var(--border-light);color:var(--text-main);padding:8px 14px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.back-btn:hover{background:var(--btn-back-hover);transform:translate(-2px)}.planner-header h1{font-size:20px;font-weight:700;margin:0;color:var(--text-main);letter-spacing:-.01em}.header-subtitle{font-size:12px;color:var(--text-subtle);margin:2px 0 0}.header-right{display:flex;align-items:center;gap:16px}.header-stats{display:flex;gap:10px}.stat-pill{background:var(--input-bg);border:1px solid var(--border-light);padding:6px 12px;border-radius:6px;font-size:13px;color:var(--text-muted)}.stat-pill strong{color:#4a90e2;font-weight:700}.action-buttons{display:flex;align-items:center;gap:8px}.add-table-btn{background:#4a90e2;color:#fff;border:none;padding:9px 16px;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.add-table-btn:hover{background:#357abd;transform:translateY(-1px)}.load-api-btn{background:var(--btn-back-bg);color:var(--text-main);border:1px solid var(--border-light);padding:8px 14px;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.load-api-btn:hover:not(:disabled){background:var(--btn-back-hover)}.load-api-btn:disabled{opacity:.6;cursor:default}.theme-toggle-btn{background:var(--btn-back-bg);color:var(--text-main);border:1px solid var(--border-light);padding:8px 14px;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.theme-toggle-btn:hover{background:var(--btn-back-hover)}.dropdown-actions{display:flex;gap:6px}.secondary-action-btn{background:transparent;border:1px solid var(--border-light);color:var(--text-subtle);padding:8px 12px;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.secondary-action-btn:hover{background:var(--btn-back-bg);color:var(--text-main)}.reset-btn:hover{border-color:#c9574d;color:#c9574d}.planner-main-layout{display:flex;flex:1;min-height:0;position:relative}.unassigned-sidebar{width:360px;background:var(--bg-sidebar);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid var(--border-light);display:flex;flex-direction:column;z-index:50;transition:all .25s ease}.unassigned-sidebar.sidebar-drop-active{background:#10b9811f;border-right:2px dashed #10b981}.sidebar-header{padding:20px 20px 14px;border-bottom:1px solid var(--border-light)}.sidebar-header h2{font-size:16px;font-weight:700;margin:0;color:var(--text-main)}.drop-back-banner{margin-top:8px;background:#10b98126;color:#10b981;font-size:12px;font-weight:600;padding:6px 10px;border-radius:4px;text-align:center;border:1px solid rgba(16,185,129,.3)}.sidebar-search{padding:14px 20px 10px}.sidebar-search-input{width:100%;background:var(--input-bg);border:1px solid var(--border-light);padding:10px 14px;border-radius:6px;color:var(--text-main);font-size:13px;box-sizing:border-box;transition:border-color .2s}.sidebar-search-input:focus{outline:none;border-color:#4a90e2}.sidebar-search-input::placeholder{color:var(--text-subtle)}.filter-chips{display:flex;gap:6px;padding:0 20px 14px;overflow-x:auto;scrollbar-width:none}.filter-chips::-webkit-scrollbar{display:none}.chip-btn{background:var(--chip-bg);border:1px solid var(--border-light);color:var(--text-subtle);padding:5px 12px;border-radius:16px;font-size:11px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s}.chip-btn:hover{background:var(--chip-hover);color:var(--text-main)}.chip-btn.active{background:var(--chip-active-bg);border-color:#4a90e2;color:var(--chip-active-text)}.sidebar-guests-list{flex:1;overflow-y:auto;padding:10px 20px 24px;display:flex;flex-direction:column;gap:10px}.sidebar-empty{text-align:center;padding:40px 15px;color:var(--text-subtle);font-size:14px;line-height:1.5}.sidebar-guest-card{background:var(--bg-sidebar-card);border:1px solid var(--border-card);border-left:4px solid #4a90e2;border-radius:6px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;cursor:grab;transition:all .2s ease}.sidebar-guest-card:hover:not(.disabled-drag){background:var(--bg-sidebar-card-hover);border-color:var(--text-subtle);transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.sidebar-guest-card.dragging{opacity:.35;border-style:dashed}.sidebar-guest-card.disabled-drag{cursor:default;opacity:.75}.guest-card-info{display:flex;flex-direction:column;gap:6px}.guest-name{font-size:13px;font-weight:600;color:var(--text-main)}.guest-tags{display:flex;flex-wrap:wrap;gap:5px}.tag{font-size:10px;font-weight:600;padding:2px 7px;border-radius:3px;text-transform:uppercase;letter-spacing:.02em}.tag-child{background:#f59e0b26;color:#d97706;border:1px solid rgba(245,158,11,.3)}.tag-menu-standard{background:#10b9811f;color:#059669}.tag-menu-vegetarian,.tag-menu-vegan{background:#a855f726;color:#7e22ce}.tag-hotel{background:#4a90e226;color:#2563eb}.tag-party{background:transparent;border:1px solid currentColor;font-weight:700}.seat-node.occupied.has-party .seat-avatar:after{content:"";position:absolute;inset:2px;border-radius:50%;border:3px solid var(--party-color);pointer-events:none;z-index:0}.seat-node.occupied.has-party .initials{position:relative;z-index:1}.split-party-badge{font-size:10px;font-weight:700;background:#d9770626;color:#b45309;border:1px solid rgba(217,119,6,.4);padding:2px 8px;border-radius:4px;white-space:nowrap;pointer-events:auto;cursor:help}.party-prompt{position:fixed;bottom:28px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:14px;background:#2c3e50;color:#fff;padding:12px 16px;border-radius:8px;font-size:13px;box-shadow:0 10px 25px -5px #00000059,0 0 0 1px #ffffff1a;z-index:9999;animation:toastSlideIn .25s cubic-bezier(.16,1,.3,1)}.party-prompt-btn{background:#4a90e2;color:#fff;border:none;padding:7px 14px;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s ease}.party-prompt-btn:hover{background:#357abd}.party-prompt-dismiss{background:transparent;border:none;color:#ffffffb3;font-size:13px;cursor:pointer;padding:2px 4px}.party-prompt-dismiss:hover{color:#fff}.drag-handle{color:var(--text-subtle);font-size:12px;font-weight:700;-webkit-user-select:none;user-select:none;cursor:grab;letter-spacing:2px}.floor-plan-viewport{flex:1;min-width:0;min-height:0;display:flex;position:relative}.floor-plan-canvas{flex:1;min-width:0;min-height:0;position:relative;display:flex;overflow:auto;background-color:var(--canvas-bg);background-image:radial-gradient(var(--canvas-grid-dot) 1.5px,transparent 1.5px);background-size:28px 28px;-webkit-user-select:none;user-select:none;transition:background-color .25s ease}.canvas-instruction-banner{position:absolute;top:16px;left:20px;max-width:calc(100% - 240px);pointer-events:none;background:var(--banner-bg);border:1px solid var(--border-light);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:10px 18px;border-radius:6px;font-size:13px;color:var(--banner-text);box-shadow:0 4px 16px #0000001a;z-index:40}.canvas-instruction-banner strong{color:#4a90e2}.floor-plan-sizer{position:relative;margin:auto;flex:none}.floor-plan-workspace{position:absolute;top:0;left:0;padding:40px}.floor-plan-canvas.pan-ready{cursor:grab}.floor-plan-canvas.is-panning{cursor:grabbing}.zoom-controls{position:absolute;top:16px;right:20px;display:flex;align-items:center;gap:4px;padding:5px;background:var(--banner-bg);border:1px solid var(--border-light);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:6px;box-shadow:0 4px 16px #0000001a;z-index:41}.zoom-btn,.zoom-level-btn,.zoom-fit-btn{background:transparent;color:var(--text-main);border:1px solid transparent;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease}.zoom-btn{width:28px;height:28px;font-size:16px;line-height:1}.zoom-level-btn{min-width:52px;height:28px;font-variant-numeric:tabular-nums}.zoom-fit-btn{height:28px;padding:0 10px;border-color:var(--border-light)}.zoom-btn:hover:not(:disabled),.zoom-level-btn:hover,.zoom-fit-btn:hover{background:var(--btn-back-hover);border-color:var(--border-light)}.zoom-btn:disabled{opacity:.4;cursor:default}.canvas-empty-state{position:absolute;top:120px;left:60px;padding:18px 24px;border:1px dashed var(--border-light);border-radius:8px;background:var(--bg-sidebar-card);color:var(--text-subtle);font-size:14px}.table-container{position:absolute;-webkit-user-select:none;user-select:none;transition:box-shadow .2s;z-index:10}.table-container.table-dragging{opacity:.35;filter:grayscale(.4);z-index:5!important}.table-body{width:100%;height:100%;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px;box-sizing:border-box;transition:all .25s ease}.table-body.draggable-table-body{cursor:grab}.table-body.draggable-table-body:active{cursor:grabbing}.round-table .table-body{border-radius:50%;background:var(--table-round-bg);border:3px solid var(--table-round-border);box-shadow:var(--table-shadow)}.round-table:hover .table-body{border-color:#2563eb;box-shadow:0 12px 32px -6px #4a90e259}.square-table .table-body{border-radius:12px;background:var(--table-square-bg);border:3px solid var(--table-square-border);box-shadow:var(--table-shadow)}.square-table:hover .table-body{border-color:#6366f1;box-shadow:0 12px 32px -6px #6366f159}.table-header-info{display:flex;flex-direction:column;align-items:center;gap:6px;z-index:2;pointer-events:none}.table-name{font-size:14px;font-weight:700;color:var(--text-main);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-meta{display:flex;gap:6px;align-items:center}.shape-pill{font-size:9px;font-weight:700;text-transform:uppercase;background:var(--input-bg);border:1px solid var(--border-light);color:var(--text-subtle);padding:2px 6px;border-radius:4px}.capacity-pill{font-size:11px;font-weight:700;background:#10b9811f;color:#059669;padding:2px 8px;border-radius:4px;border:1px solid rgba(16,185,129,.3)}.drag-indicator{margin-top:6px;font-size:11px;color:#4a90e2;font-weight:600;pointer-events:none}.table-actions-group{position:absolute;top:10px;left:50%;transform:translate(-50%);display:flex;gap:6px;z-index:25;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease}.table-body:hover .table-actions-group,.table-actions-group:hover{opacity:1;pointer-events:auto}.table-action-btn{width:26px;height:26px;border-radius:50%;border:2px solid var(--bg-header);font-size:11px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #00000040;transition:all .15s ease;-webkit-user-select:none;user-select:none}.table-action-btn:hover{transform:scale(1.15)}.lock-btn{background:var(--input-bg);color:var(--text-main);border-color:var(--border-light)}.lock-btn.is-locked{background:#f59e0b;color:#fff;border-color:#d97706}.lock-btn:hover{background:#e2e8f0}.lock-btn.is-locked:hover{background:#d97706}.edit-btn{background:#4a90e2;color:#fff}.edit-btn:hover{background:#357abd}.delete-btn{background:#c9574d;color:#fff}.delete-btn:hover{background:#b4483e}.table-container.table-locked .table-body{cursor:default!important}.lock-all-btn{background:var(--btn-back-bg);color:var(--text-main);border:1px solid var(--border-light);padding:8px 14px;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.lock-all-btn:hover{background:var(--btn-back-hover)}.lock-all-btn.all-locked{background:#f59e0b26;border-color:#f59e0b66;color:#d97706}.seats-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.seat-node{--party-color: transparent;position:absolute;width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;pointer-events:auto;transition:all .2s cubic-bezier(.16,1,.3,1);z-index:15}.seat-node.empty{background:var(--seat-empty-bg);border:2px dashed var(--seat-empty-border);color:var(--seat-empty-text);box-shadow:0 2px 8px #0000001a}.seat-node.empty .seat-number{font-size:12px;font-weight:700}.seat-node.empty.is-over{background:#10b98140;border:2px solid #10b981;color:#10b981;transform:scale(1.2);box-shadow:0 0 20px #10b98180}.seat-node.occupied{background:linear-gradient(135deg,#10b981,#059669);border:2px solid #6ee7b7;color:#fff;cursor:grab;box-shadow:0 4px 12px #0596694d}.seat-node.occupied:hover{transform:scale(1.08);box-shadow:0 6px 16px #05966973}.seat-node.is-dragging{opacity:.3;transform:scale(.9)}.seat-node.occupied.is-over-swap{background:linear-gradient(135deg,#f59e0b,#d97706);border-color:#fde68a;transform:scale(1.2);box-shadow:0 0 24px #f59e0b99}.seat-avatar{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;position:relative}.unseat-guest-btn{position:absolute;top:-8px;right:-8px;width:18px;height:18px;border-radius:50%;background:#c9574d;color:#fff;border:1.5px solid white;font-size:10px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0000004d;opacity:0;transition:all .15s ease;-webkit-user-select:none;user-select:none;z-index:30}.seat-node.occupied:hover .unseat-guest-btn{opacity:1}.unseat-guest-btn:hover{background:#b4483e;transform:scale(1.15)}.initials{font-size:13px;font-weight:800;letter-spacing:-.01em}.first-name-label{position:absolute;bottom:-22px;background:var(--bg-header);color:var(--text-main);font-size:10px;font-weight:600;padding:2px 7px;border-radius:4px;white-space:nowrap;border:1px solid var(--border-light);pointer-events:none;box-shadow:0 2px 6px #0003}.swap-badge{position:absolute;top:-24px;background:#f59e0b;color:#fff;font-size:10px;font-weight:800;padding:2px 8px;border-radius:4px;white-space:nowrap;box-shadow:0 2px 8px #f59e0b66;animation:bounce .4s infinite alternate}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-3px)}}.overlay-guest-card{background:var(--bg-header);border:2px solid #4a90e2;border-radius:6px;padding:12px 18px;box-shadow:0 10px 30px #00000040;display:flex;align-items:center;gap:12px;color:var(--text-main);font-weight:700}.overlay-table-card{background:var(--bg-header);border:2px solid #4a90e2;border-radius:8px;padding:14px 20px;box-shadow:0 10px 30px #00000040;color:var(--text-main);display:flex;flex-direction:column;gap:4px}.overlay-table-container{box-shadow:0 24px 60px -10px #00000073;transform:scale(1.03);cursor:grabbing;z-index:9999}.modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.add-table-modal{background:var(--modal-bg);border:1px solid var(--border-light);border-radius:10px;width:440px;padding:26px;box-shadow:0 20px 40px #0000004d;animation:scaleUp .25s cubic-bezier(.16,1,.3,1);color:var(--text-main)}@keyframes scaleUp{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;border-bottom:1px solid var(--border-light);padding-bottom:14px}.modal-header h3{margin:0;font-size:18px;font-weight:700;color:var(--text-main)}.modal-close-btn{background:transparent;border:none;color:var(--text-subtle);font-size:18px;cursor:pointer;transition:color .2s}.modal-close-btn:hover{color:var(--text-main)}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:13px;font-weight:600;color:var(--text-main);margin-bottom:8px}.form-group input[type=text]{width:100%;padding:12px 14px;border-radius:6px;background:var(--input-bg);border:1px solid var(--border-light);color:var(--text-main);font-size:14px;box-sizing:border-box;transition:border-color .2s}.form-group input[type=text]:focus{outline:none;border-color:#4a90e2}.shape-selector{display:grid;grid-template-columns:1fr 1fr;gap:10px}.shape-option{background:var(--input-bg);border:1px solid var(--border-light);padding:14px;border-radius:6px;color:var(--text-main);font-weight:600;font-size:13px;cursor:pointer;transition:all .2s}.shape-option:hover{background:var(--chip-hover)}.shape-option.active{background:#4a90e21f;border-color:#4a90e2;color:#4a90e2}.seats-slider{width:100%;margin:10px 0;accent-color:#4a90e2}.range-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--text-subtle);font-weight:600}.seats-warning-note{margin-top:12px;background:#f59e0b26;border:1px solid rgba(245,158,11,.35);color:#d97706;font-size:12px;font-weight:600;padding:8px 12px;border-radius:6px;line-height:1.4}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:28px}.cancel-btn{background:var(--btn-back-bg);border:1px solid var(--border-light);color:var(--text-main);padding:10px 18px;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer}.cancel-btn:hover{background:var(--btn-back-hover)}.submit-btn{background:#4a90e2;color:#fff;border:none;padding:10px 20px;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer}.submit-btn:hover{background:#357abd}.view-mode-switch{display:flex;gap:2px;background:var(--chip-bg);border:1px solid var(--border-light);border-radius:8px;padding:3px;flex-shrink:0}.view-mode-btn{background:transparent;border:none;color:var(--text-muted);padding:7px 14px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease}.view-mode-btn:hover{color:var(--text-main)}.view-mode-btn.active{background:var(--chip-active-bg);color:var(--chip-active-text);box-shadow:0 1px 3px #0000001f}.planner-list-view{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:20px;display:flex;flex-direction:column;gap:22px}.list-section{background:var(--bg-sidebar);border:1px solid var(--border-light);border-radius:12px;padding:16px}.list-section-header h2{margin:0 0 12px;font-size:15px;font-weight:700;color:var(--text-main)}.list-section .sidebar-search,.list-section .filter-chips{padding:0 0 12px}.list-guest-rows{display:flex;flex-direction:column;gap:8px}.list-guest-row,.list-seat-row{display:flex;align-items:center;gap:12px;background:var(--bg-sidebar-card);border:1px solid var(--border-card);border-left:4px solid transparent;border-radius:8px;padding:10px 12px}.list-guest-row:hover,.list-seat-row:hover{background:var(--bg-sidebar-card-hover)}.list-seat-guest{display:flex;flex-direction:column;gap:5px;flex:1;min-width:0}.tables-section{display:flex;flex-direction:column;gap:16px}.list-table-card{background:var(--bg-sidebar-card);border:1px solid var(--border-card);border-radius:10px;padding:14px}.list-table-card.is-locked{border-color:#f59e0b}.list-table-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--border-light)}.list-table-title{display:flex;flex-direction:column;gap:6px;min-width:0}.list-table-title h3{margin:0;font-size:16px;font-weight:700;color:var(--text-main)}.list-table-title .table-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.list-table-actions{display:flex;gap:8px;flex-shrink:0}.list-table-actions .table-action-btn{position:static;opacity:1;pointer-events:auto;width:34px;height:34px;font-size:13px}.list-seat-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.list-seat-row.empty{background:transparent;border-style:dashed}.list-seat-number{width:26px;height:26px;flex-shrink:0;border-radius:50%;background:var(--seat-empty-bg);border:1px solid var(--seat-empty-border);color:var(--seat-empty-text);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.list-seat-actions{display:flex;gap:6px;flex-shrink:0}.list-action-btn{background:var(--chip-bg);border:1px solid var(--border-light);color:var(--text-main);padding:8px 12px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s ease}.list-action-btn:hover{background:var(--chip-hover)}.list-action-btn.danger{color:#dc2626;border-color:#dc262659}.list-action-btn.danger:hover{background:#dc26261f}.list-assign-btn{flex:1;background:transparent;border:1px dashed var(--border-card);color:var(--text-muted);padding:9px 12px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;text-align:left;transition:all .15s ease}.list-assign-btn:hover:not(:disabled){border-color:#4a90e2;color:#4a90e2}.list-assign-btn.compact{flex:0 0 auto;border-style:solid;background:var(--chip-bg);color:var(--text-main);text-align:center}.list-assign-btn:disabled{opacity:.5;cursor:not-allowed}.picker-modal{background:var(--modal-bg);border:1px solid var(--border-light);border-radius:10px;width:min(460px,calc(100vw - 32px));max-height:min(680px,calc(100vh - 60px));display:flex;flex-direction:column;padding:22px;box-shadow:0 20px 40px #0000004d;animation:scaleUp .25s cubic-bezier(.16,1,.3,1);color:var(--text-main)}.picker-modal .modal-header{margin-bottom:14px}.picker-modal .sidebar-search{padding:0 0 12px}.picker-options{overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:8px}.picker-option{display:flex;flex-direction:column;align-items:flex-start;gap:6px;width:100%;background:var(--bg-sidebar-card);border:1px solid var(--border-card);border-left:4px solid transparent;border-radius:8px;padding:11px 12px;cursor:pointer;text-align:left;transition:background .15s ease}.picker-option:hover:not(:disabled){background:var(--bg-sidebar-card-hover)}.picker-option.is-disabled,.picker-option:disabled{opacity:.45;cursor:not-allowed}.picker-option .table-meta{display:flex;gap:6px;flex-wrap:wrap}.unseat-option{border-style:dashed}@media(max-width:820px){.planner-header{height:auto;flex-wrap:wrap;gap:12px;padding:12px 16px}.planner-header h1{font-size:16px}.header-right{width:100%;flex-wrap:wrap;gap:10px}.header-stats,.action-buttons{flex-wrap:wrap;gap:8px}.view-mode-switch{order:-1}.planner-toast{inset:auto 16px 16px;text-align:center}.planner-list-view{padding:12px;gap:16px}.list-seat-row.occupied{flex-wrap:wrap}.list-seat-actions{width:100%;justify-content:flex-end}.list-action-btn,.list-assign-btn{min-height:40px}.unassigned-sidebar{width:260px}.canvas-instruction-banner{display:none}}.accommodation-planner{min-height:100vh;background:#f5f7fa}.accommodation-planner .admin-header{background:#fff;padding:20px 40px;box-shadow:0 2px 8px #00000014;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:100}.accommodation-planner .admin-header h1{margin:0;font-size:24px;color:#2c3e50;font-weight:700}.accommodation-planner .logout-btn{padding:10px 20px;background:#c9574d;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.accommodation-planner .logout-btn:hover{background:#b4483e}.planner-content{padding:30px;max-width:1400px;margin:0 auto}.planner-nav{margin-bottom:16px}.back-btn{padding:8px 16px;background:#fff;color:#5a6c7d;border:1px solid #dfe4ea;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.back-btn:hover{background:#f0f2f5;color:#2c3e50}.preview-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#fff8e6;border:1px solid #f2d98c;color:#8a6d1f;padding:12px 18px;border-radius:6px;margin-bottom:20px;font-size:14px}.accommodation-planner .error-banner{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;background:#fee;border:1px solid #fcc;color:#c33;padding:15px 20px;border-radius:8px;margin-bottom:20px}.accommodation-planner .error-banner button{padding:8px 16px;background:#c33;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.accommodation-planner .error-banner button:hover{background:#a22}.warning-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#fdf1ec;border:1px solid #e8b9a6;color:#a2553a;padding:12px 18px;border-radius:6px;margin-bottom:20px;font-size:14px}.warning-banner span{flex:1;min-width:200px}.warning-banner button{background:none;border:1px solid currentColor;color:inherit;padding:4px 12px;border-radius:4px;font-size:13px;cursor:pointer}.summary-card,.grid-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:22px 24px;margin-bottom:22px}.summary-head,.grid-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:16px}.summary-head h2,.grid-head h2{margin:0;font-size:18px;color:#2c3e50}.summary-meta{display:flex;align-items:center;gap:12px;font-size:13px;color:#7a8794}.awaiting-pill{padding:6px 12px;border-radius:999px;border:1px solid #f0c2bd;background:#fdeeec;color:#b4483e;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.awaiting-pill:hover,.awaiting-pill.active{background:#c9574d;border-color:#c9574d;color:#fff}.summary-scroll,.grid-scroll{overflow-x:auto;width:100%}.summary-table{border-collapse:collapse;min-width:480px}.summary-table th,.summary-table td{padding:8px 10px;text-align:center;font-size:14px}.summary-table thead th{color:#7a8794;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid #eef1f4}.summary-corner{text-align:left!important}.summary-row-head{text-align:left!important;color:#2c3e50;font-weight:600;white-space:nowrap;padding-right:24px!important}.loc-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px;vertical-align:middle}.summary-cell{min-width:58px;padding:8px 12px;border:1px solid #e4e9ef;border-radius:6px;background:#f8fafc;color:#2c3e50;font-size:16px;font-weight:600;cursor:pointer;transition:all .15s}.summary-cell:hover{border-color:#4a90e2;background:#eef5fd}.summary-cell.active{background:#4a90e2;border-color:#4a90e2;color:#fff}.summary-cell.empty{color:#c2cbd4;font-weight:500}.summary-early .summary-row-head{color:#8a6d1f}.summary-total th,.summary-total td{border-top:1px solid #eef1f4;padding-top:12px!important}.summary-total-value{font-size:17px;font-weight:700;color:#2c3e50}.planner-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}.planner-toolbar .search-input{flex:1 1 260px;padding:11px 16px;border:1px solid #dfe4ea;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s}.planner-toolbar .search-input:focus{border-color:#4a90e2}.filter-chips{display:flex;gap:8px;flex-wrap:wrap}.filter-chip{padding:9px 15px;border:1px solid #dfe4ea;border-radius:999px;background:#fff;color:#5a6c7d;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.filter-chip:hover{border-color:#4a90e2;color:#4a90e2}.filter-chip.active{background:#4a90e2;border-color:#4a90e2;color:#fff}.clear-cell-filter{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid #4a90e2;border-radius:999px;background:#eef5fd;color:#2c6cb0;font-size:13px;font-weight:600;cursor:pointer}.clear-x{font-size:16px;line-height:1}.grid-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:12px;color:#7a8794}.legend-item{display:inline-flex;align-items:center;gap:6px}.legend-chip{pointer-events:none}.allocation-table{width:100%;min-width:900px;border-collapse:collapse}.allocation-table thead th{padding:10px 12px;text-align:left;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:#7a8794;border-bottom:1px solid #eef1f4}.allocation-table td,.allocation-table tbody th{padding:8px 12px;font-size:14px;vertical-align:middle}.col-guest{min-width:240px}.col-night{width:150px}.col-note{min-width:180px}.col-actions{width:190px}.party-row{background:#f4f7fb}.party-row .col-guest{text-align:left;font-weight:600;color:#2c3e50;border-top:1px solid #e4e9ef}.party-row td{border-top:1px solid #e4e9ef}.collapse-btn{background:none;border:none;color:#7a8794;font-size:13px;cursor:pointer;padding:0 8px 0 0}.party-name{margin-right:8px}.party-count{display:inline-block;min-width:20px;padding:1px 7px;border-radius:999px;background:#dde4ec;color:#5a6c7d;font-size:12px;font-weight:600;text-align:center}.guest-row:hover{background:#fafbfc}.guest-row--awaiting{background:#fdf6f5}.guest-row--awaiting:hover{background:#fbeeec}.guest-name{color:#2c3e50}.child-badge,.awaiting-badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;text-transform:lowercase}.child-badge{background:#eaf3fd;color:#2c6cb0}.awaiting-badge{background:#fdeeec;color:#b4483e}.cell{display:flex;align-items:center;gap:6px}.loc-select{flex:1;min-width:76px;padding:7px 8px;border:1px solid #dfe4ea;border-radius:4px;background:#fff;color:#7a8794;font-size:13px;cursor:pointer;outline:none;transition:border-color .15s}.loc-select:focus{border-color:#4a90e2}.loc-select--set{color:#2c3e50;font-weight:600;border-width:2px}.loc-select--none{color:#55606b;font-weight:600;background:#f0f2f5;border-color:#cfd6dd}.ec-slot{flex:0 0 30px;display:flex}.ec-chip{width:100%;padding:5px 0;text-align:center;border:1px solid #dfe4ea;border-radius:4px;background:#fff;color:#b6bfc9;font-size:11px;font-weight:700;letter-spacing:.3px;cursor:pointer;transition:all .15s}.ec-chip:hover{border-color:#d38b2c;color:#d38b2c}.ec-chip--on{background:#d38b2c;border-color:#d38b2c;color:#fff}.note-text{display:block;font-size:13px;color:#7a8794;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-input{width:100%;padding:7px 9px;border:1px solid transparent;border-radius:4px;background:transparent;font-size:13px;color:#5a6c7d;outline:none;transition:all .15s}.note-input:hover{border-color:#e4e9ef;background:#fafbfc}.note-input:focus{border-color:#4a90e2;background:#fff}.row-actions{display:flex;align-items:center;gap:6px}.row-action{padding:5px 10px;border:1px solid #dfe4ea;border-radius:4px;background:#fff;color:#5a6c7d;font-size:12px;cursor:pointer;transition:all .15s}.row-action:hover:not(:disabled){border-color:#4a90e2;color:#4a90e2}.row-action:disabled{opacity:.4;cursor:not-allowed}.row-action--muted:hover:not(:disabled){border-color:#c9574d;color:#c9574d}.save-pill{min-width:54px;font-size:11px;font-weight:600;white-space:nowrap}.save-pill--saving{color:#7a8794}.save-pill--saved{color:#2e9e73}.view-tabs{display:flex;gap:4px;margin-bottom:18px;background:#e9edf2;padding:4px;border-radius:8px;width:fit-content}.view-tab{padding:9px 22px;border:none;border-radius:6px;background:transparent;color:#5a6c7d;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s}.view-tab:hover{color:#2c3e50}.view-tab.active{background:#fff;color:#2c3e50;box-shadow:0 1px 3px #0000001f}.room-tag{display:inline-block;margin-top:4px;padding:2px 7px;border:1px solid #e4e9ef;border-radius:4px;background:#f8fafc;color:#7a8794;font-size:11px;cursor:pointer;transition:all .15s}.room-tag:hover{border-color:#4a90e2;color:#2c6cb0}.night-switch{display:flex;gap:6px}.night-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border:1px solid #dfe4ea;border-radius:6px;background:#fff;color:#5a6c7d;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.night-btn:hover{border-color:#4a90e2;color:#4a90e2}.night-btn.active{background:#4a90e2;border-color:#4a90e2;color:#fff}.night-btn-count{padding:1px 7px;border-radius:999px;background:#00000014;font-size:11px}.night-btn.active .night-btn-count{background:#ffffff40}.room-board{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:22px;align-items:start}.room-location{margin-bottom:26px}.room-location-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #eef1f4}.room-location-head h3{margin:0;font-size:15px;color:#2c3e50;display:flex;align-items:center}.beds-pill{padding:4px 11px;border-radius:999px;background:#eef1f4;color:#5a6c7d;font-size:12px;font-weight:600}.beds-pill--over{background:#fdeeec;color:#b4483e}.room-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.room-card{border:1px solid #e4e9ef;border-radius:8px;background:#fff;padding:12px;transition:all .15s}.room-card--empty{background:#fafbfc;border-style:dashed}.room-card--over{border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e226;background:#f5f9fe}.room-card--overfull{border-color:#f0c2bd}.room-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.room-number{font-size:15px;font-weight:700;color:#2c3e50}.room-occupancy{font-size:13px;font-weight:600;color:#7a8794}.room-occupancy--over{color:#b4483e}.room-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:3px;font-size:11px;color:#9aa5b1}.room-note{padding:1px 6px;border-radius:3px;background:#eef1f4;color:#7a8794}.room-bar{height:4px;border-radius:2px;background:#eef1f4;margin:9px 0;overflow:hidden}.room-bar-fill{height:100%;background:#2e9e73;transition:width .2s}.room-bar-fill--over{background:#c9574d}.room-occupants{display:flex;flex-direction:column;gap:5px;min-height:34px}.room-empty-hint{font-size:11px;color:#c2cbd4;padding:8px 0;text-align:center}.guest-chip{display:flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid #e4e9ef;border-left:3px solid #4a90e2;border-radius:5px;background:#fff;cursor:grab;touch-action:none;transition:box-shadow .15s}.guest-chip:hover{box-shadow:0 1px 4px #0000001a}.guest-chip--dragging{opacity:.35}.guest-chip-body{display:flex;flex-direction:column;min-width:0;flex:1}.guest-chip-name{font-size:13px;color:#2c3e50;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.guest-chip--compact .guest-chip-name{font-size:12px}.guest-chip-sub{font-size:10px;color:#9aa5b1}.guest-chip-remove{border:none;background:none;color:#c2cbd4;font-size:16px;line-height:1;cursor:pointer;padding:0 2px}.guest-chip-remove:hover{color:#c9574d}.unroomed-panel{position:sticky;top:96px;border:1px solid #e4e9ef;border-radius:8px;background:#fafbfc;padding:14px;max-height:calc(100vh - 140px);overflow-y:auto}.unroomed-panel--over{border-color:#4a90e2;background:#f5f9fe}.unroomed-head{display:flex;align-items:center;justify-content:space-between}.unroomed-head h3{margin:0;font-size:14px;color:#2c3e50}.unroomed-count{padding:2px 9px;border-radius:999px;background:#dde4ec;color:#5a6c7d;font-size:12px;font-weight:600}.unroomed-hint{margin:6px 0 12px;font-size:11px;color:#9aa5b1;line-height:1.5}.unroomed-done{padding:16px 8px;text-align:center;font-size:13px;color:#2e9e73}.unroomed-party{display:flex;flex-direction:column;gap:5px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px dashed #e4e9ef}.unroomed-party:last-child{border-bottom:none;margin-bottom:0}.drag-preview{padding:8px 14px;border-radius:6px;background:#2c3e50;color:#fff;font-size:13px;font-weight:600;box-shadow:0 6px 18px #00000040}.no-results{text-align:center;padding:50px 20px;color:#999;font-size:15px}@media(max-width:768px){.planner-content{padding:16px}.accommodation-planner .admin-header{padding:16px 20px}.summary-card,.grid-card{padding:16px}.room-board{grid-template-columns:minmax(0,1fr)}.unroomed-panel{position:static;max-height:none}}.gallery-usage{min-height:100vh;background:#f5f7fa}.usage-content{padding:30px;max-width:1400px;margin:0 auto}.usage-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.usage-nav .refresh-btn{padding:8px 16px;background:#fff;color:#5a6c7d;border:1px solid #dfe4ea;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.usage-nav .refresh-btn:hover:not(:disabled){background:#f0f2f5;color:#2c3e50}.usage-nav .refresh-btn:disabled{opacity:.6;cursor:default}.usage-banner{display:flex;flex-direction:column;gap:4px;padding:14px 18px;border-radius:6px;margin-bottom:20px;font-size:14px;line-height:1.45}.usage-banner.danger{background:#fdecea;border:1px solid #f5c2bd;color:#a33a30}.usage-banner.warning{background:#fff8e6;border:1px solid #f2d98c;color:#8a6d1f}.stat-card.stat-photos{border-top-color:#4a90e2}.stat-card.stat-videos{border-top-color:#8e6bc4}.stat-card.stat-free{border-top-color:#5cb85c}.stat-card.stat-blocked{border-top-color:#d9534f}.usage-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:22px 24px;margin-bottom:22px}.usage-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:18px}.usage-card-head h2{margin:0;font-size:18px;color:#2c3e50}.usage-meta{font-size:13px;color:#7b8a99;word-break:break-all}.breakdown-bar,.volume-bar{display:flex;width:100%;height:14px;border-radius:7px;overflow:hidden;background:#eef1f5}.breakdown-bar{margin-bottom:16px}.segment{height:100%}.segment-originals{background:#4a90e2}.segment-media{background:#7fb3ec}.segment-tmp{background:#f0ad4e}.segment-gallery{background:#4a90e2}.segment-other{background:#c7d0da}.breakdown-legend{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:8px}.breakdown-legend li{display:flex;align-items:baseline;gap:10px;font-size:14px;color:#2c3e50;flex-wrap:wrap}.swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0}.swatch-originals{background:#4a90e2}.swatch-media{background:#7fb3ec}.swatch-tmp{background:#f0ad4e}.swatch-orphan{background:#d9534f}.legend-label{min-width:110px;font-weight:500}.legend-value{min-width:80px;font-variant-numeric:tabular-nums;color:#2c3e50}.legend-note{color:#7b8a99;font-size:13px}.volume-line{border-top:1px solid #eef1f5;padding-top:16px}.volume-note{margin:10px 0 0;font-size:13px;color:#7b8a99}.table-responsive{overflow-x:auto}.usage-table{width:100%;border-collapse:collapse;font-size:14px}.usage-table th{text-align:left;padding:10px 14px;background:#f7f9fb;color:#5a6c7d;font-weight:600;font-size:13px;border-bottom:1px solid #e6eaef;white-space:nowrap}.usage-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.usage-table th.sortable:hover,.usage-table th.sorted{color:#2c3e50}.sort-arrow{display:inline-block;width:12px;font-size:10px;color:#7b8a99}.usage-table td{padding:12px 14px;border-bottom:1px solid #f0f3f6;color:#2c3e50;vertical-align:top}.usage-table .numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.invitation-tbody{border-bottom:2px solid #eef1f5}.invitation-row td{background:#fff}.label-cell strong{font-weight:600}.label-sub{margin-top:3px;font-size:12px;color:#7b8a99}.size-split{margin-top:3px;font-size:12px;font-weight:400;color:#7b8a99}.date-cell{color:#5a6c7d;white-space:nowrap}.uploader-row td{background:#fbfcfd;color:#5a6c7d;padding-top:8px;padding-bottom:8px}.uploader-cell{padding-left:32px!important;position:relative}.uploader-cell:before{content:"↳";position:absolute;left:14px;color:#b6c0cb}.no-results{padding:40px;text-align:center;color:#7b8a99}@media(max-width:768px){.usage-content{padding:16px}.usage-card{padding:18px 16px}.legend-label,.legend-value{min-width:0}}
