.site-password-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--neutral-bg-light);padding:1.5rem}.site-password-gate__card{background:var(--surface);border-radius:12px;padding:2.5rem;width:100%;max-width:380px;box-shadow:0 4px 20px #00000014}.site-password-gate__title{font-family:Bangers,cursive;font-size:2rem;color:var(--green-deep);text-align:center;margin-bottom:.25rem}.site-password-gate__subtitle{color:var(--neutral-text-muted);text-align:center;margin-bottom:1.5rem;font-size:.95rem}.site-password-gate__form{display:flex;flex-direction:column;gap:1rem}.site-password-gate__input{padding:.75rem 1rem;border:1px solid var(--neutral-border);border-radius:8px;font-size:1rem;background:var(--neutral-bg-light);color:var(--text)}.site-password-gate__input:focus{outline:none;border-color:var(--green-sage);box-shadow:0 0 0 2px var(--green-tint)}.site-password-gate__input::placeholder{color:var(--neutral-text-muted)}.site-password-gate__error{color:var(--status-danger);font-size:.875rem;margin:-.5rem 0 0}.site-password-gate__btn{padding:.75rem 1.5rem;background:var(--button-bg);color:var(--button-text);border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.site-password-gate__btn:hover{background:var(--button-hover)}.modalOverlay{position:fixed;top:0;left:0;right:0;bottom:0;background:color-mix(in srgb,var(--neutral-text-primary) 60%,transparent);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modalContent{background:var(--surface);border-radius:1rem;padding:2rem;max-width:450px;width:100%;position:relative;box-shadow:0 20px 60px color-mix(in srgb,var(--neutral-text-primary) 30%,transparent);animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modalClose{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:2rem;color:var(--text);cursor:pointer;padding:.25rem;line-height:1;opacity:.6;transition:opacity .2s}.modalClose:hover{opacity:1}.modalContent h2{margin:0 0 .5rem;color:var(--brand-ledger);font-size:1.8rem}.modalSubtitle{margin:0 0 2rem;color:var(--text);opacity:.7}.formGroup{margin-bottom:1.5rem}.formGroup label{display:block;margin-bottom:.5rem;color:var(--brand-ledger);font-weight:600;font-size:.95rem}.formGroup input{width:100%;padding:.75rem 1rem;border:1px solid var(--border);border-radius:.5rem;font-size:1rem;color:var(--text);background:var(--bg);transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.formGroup input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-primary) 10%,transparent)}.modalDivider{text-align:center;margin:1.5rem 0;position:relative}.modalDivider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--border)}.modalDivider span{background:var(--surface);padding:0 1rem;position:relative;color:var(--text);opacity:.6;font-size:.9rem}@media (max-width: 500px){.modalContent{padding:1.5rem}.modalContent h2{font-size:1.5rem}}.accountSwitcherModal{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overflow-y:auto}.accountSwitcherContent{background:var(--bg);border-radius:1rem;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px #0000004d}.accountSwitcherClose{position:absolute;top:1rem;right:1rem;background:var(--brand-listing);border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.25rem;color:var(--brand-ledger);transition:all .2s;z-index:10}.accountSwitcherClose:hover{background:var(--status-error);color:#fff;transform:rotate(90deg)}.accountSwitcherHeader{padding:2rem 2rem 1rem;border-bottom:1px solid var(--border)}.accountSwitcherHeader h2{margin:0 0 .5rem;font-size:1.75rem;color:var(--brand-primary)}.accountSwitcherHeader p{margin:0;color:var(--brand-ledger);opacity:.7;font-size:.95rem}.switcherError{padding:1rem 2rem;background:#dc35451a;border-left:3px solid var(--status-error);margin:1rem 2rem;border-radius:.5rem;display:flex;align-items:center;gap:.75rem;color:var(--status-error)}.errorIcon{width:24px;height:24px;flex-shrink:0;color:var(--status-error)}.switcherLoading{padding:3rem 2rem;text-align:center}.spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--brand-primary);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1rem}.switcherLoading p{margin:0;color:var(--brand-ledger);opacity:.7}.profileSection{padding:1.5rem 2rem;border-bottom:1px solid var(--border)}.profileSectionTitle{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--brand-ledger);text-transform:uppercase;letter-spacing:.05em;opacity:.8}.sectionIcon{font-size:1.25rem}.profilesList{display:flex;flex-direction:column;gap:.75rem}.profileCard{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--brand-listing);border:2px solid transparent;border-radius:.75rem;cursor:pointer;transition:all .2s;text-align:left;width:100%}.profileCard:hover:not(:disabled){background:var(--brand-primary-light, rgba(76, 175, 80, .1));border-color:var(--brand-primary);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.profileCard.active{border-color:var(--brand-primary);background:var(--brand-primary-light, rgba(76, 175, 80, .15))}.profileCard:disabled{cursor:default;opacity:.9}.profileAvatar{width:50px;height:50px;border-radius:50%;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center}.profileAvatar .avatarImage{width:100%;height:100%;object-fit:cover;display:block}.profileAvatar svg{width:100%;height:100%}.defaultAvatar{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;line-height:1;font-weight:600;color:var(--text);background:var(--bg)}.profileInfo{flex:1;min-width:0}.profileName{font-weight:600;font-size:1.1rem;color:var(--brand-ledger);margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profileType{font-size:.85rem;color:var(--brand-ledger);opacity:.6}.activeBadge{display:flex;align-items:center;gap:.4rem;padding:.4rem .75rem;background:var(--brand-primary);color:#fff;border-radius:2rem;font-size:.85rem;font-weight:600;flex-shrink:0}.checkIcon{width:16px;height:16px;flex-shrink:0}.switchArrow{font-size:1.5rem;color:var(--brand-primary);opacity:0;transition:opacity .2s;flex-shrink:0}.profileCard:hover .switchArrow{opacity:1}.quickSwitchModal{max-width:450px}.quickSwitchAccount{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:var(--brand-listing);border-radius:.75rem;margin:0 2rem 1.5rem}.quickSwitchInfo{flex:1;min-width:0}.quickSwitchName{font-weight:600;font-size:1.1rem;color:var(--brand-ledger);margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quickSwitchEmail{font-size:.9rem;color:var(--brand-ledger);opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quickSwitchForm{padding:0 2rem 1.5rem}.quickSwitchHint{padding:1rem 2rem;background:var(--brand-listing);border-top:1px solid var(--border);font-size:.85rem;color:var(--brand-ledger);opacity:.7;text-align:center;line-height:1.5}.createProfileSection{padding:1.5rem 2rem;text-align:center}.helpText{margin:0 0 1rem;color:var(--brand-ledger);opacity:.7;font-size:.95rem}.actionButtons{display:flex;gap:.75rem;margin-top:1rem}.actionButtons .btn{flex:1;display:flex;align-items:center;justify-content:center}.createProfileBtn{width:100%;font-size:1rem;padding:.75rem 1.5rem}.createProfileForm{padding:1.5rem 2rem;border-top:1px solid var(--border);background:var(--brand-listing)}.formTitle{margin:0 0 1.5rem;font-size:1.25rem;color:var(--brand-ledger)}.formGroup{margin-bottom:1.25rem}.formLabel{display:block;margin-bottom:.5rem;font-weight:600;color:var(--brand-ledger);font-size:.95rem}.formInput{width:100%;padding:.75rem 1rem;border:1px solid var(--border);border-radius:.5rem;background:var(--bg);color:var(--brand-ledger);font-size:1rem;transition:all .2s}.formInput:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #4caf501a}.profileTypeToggle{display:flex;gap:.75rem}.toggleBtn{flex:1;padding:.75rem 1rem;background:var(--bg);border:2px solid var(--border);border-radius:.5rem;cursor:pointer;font-size:.95rem;font-weight:500;color:var(--brand-ledger);transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem}.toggleBtn:hover{border-color:var(--brand-primary);background:var(--brand-primary-light, rgba(76, 175, 80, .1))}.toggleBtn.active{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}.formActions{display:flex;gap:.75rem;margin-top:1.5rem}.formActions .btn{flex:1}@media (max-width: 768px){.accountSwitcherModal{padding:.5rem}.accountSwitcherContent{max-height:95vh}.accountSwitcherHeader{padding:1.5rem 1.5rem 1rem}.accountSwitcherHeader h2{font-size:1.5rem;padding-right:2rem}.profileSection{padding:1rem 1.5rem}.profileCard{padding:.875rem}.profileAvatar{width:44px;height:44px}.profileName{font-size:1rem}.activeBadge{padding:.35rem .65rem;font-size:.8rem}.createProfileSection{padding:1rem 1.5rem}.actionButtons{flex-direction:column}.actionButtons .btn{width:100%}.createProfileForm{padding:1rem 1.5rem}.formActions{flex-direction:column}.formActions .btn{width:100%}.profileTypeToggle{flex-direction:column;gap:.5rem}}.userMenu{position:relative}.userMenuTrigger{display:flex;align-items:center;gap:.5rem;background:none;border:none;cursor:pointer;padding:.5rem;border-radius:.5rem;transition:background .2s}.userMenuTrigger:hover{background:var(--surface-2)}.userAvatarContainer{position:relative;display:inline-block;flex-shrink:0}.userAvatar{width:32px;height:32px;border-radius:50%;object-fit:cover;display:block}.userInfo{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem}.userName{color:var(--brand-ledger);font-weight:600;font-size:.95rem;line-height:1.2}.userAccountType{color:var(--text);opacity:.6;font-size:.75rem;font-weight:500;line-height:1}.userMenuArrow{color:var(--text);opacity:.6;transition:transform .2s}.userMenuArrow.open{transform:rotate(180deg)}.userMenuDropdown{position:absolute;top:calc(100% + .5rem);right:0;background:var(--surface);border:1px solid var(--border);border-radius:.75rem;min-width:240px;box-shadow:0 10px 30px color-mix(in srgb,var(--neutral-text-primary) 15%,transparent);z-index:1100;animation:dropdownSlideIn .2s ease-out}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.userMenuHeader{display:flex;align-items:center;gap:.75rem;padding:1rem}.userAvatarLarge{width:48px;height:48px;border-radius:50%;object-fit:cover;display:block}.userMenuInfo{flex:1;min-width:0}.userMenuName{font-weight:600;color:var(--brand-ledger);font-size:1rem;margin-bottom:.25rem;display:flex;align-items:center;gap:.5rem}.businessLabel{font-size:.75rem;font-weight:600;background:var(--brand-copper-aa);color:var(--button-text);padding:.15rem .5rem;border-radius:999px;letter-spacing:.02em}.userMenuEmail{font-size:.85rem;color:var(--text);opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.userMenuCompany{font-size:.8rem;color:var(--brand-copper-aa);font-weight:600;margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.userMenuDivider{height:1px;background:var(--border);margin:.5rem 0}.userMenuItem{width:100%;text-align:left;padding:.75rem 1rem;background:none;border:none;color:var(--text);font-size:.95rem;cursor:pointer;transition:background .2s;display:flex;align-items:center;gap:.75rem}.menuIcon{width:18px;height:18px;flex-shrink:0;color:var(--brand-ledger);opacity:.7}.userMenuItem:hover{background:var(--surface-2)}.userMenuItem:hover .menuIcon{opacity:1;color:var(--brand-primary)}.userMenuLogout{color:var(--status-error);font-weight:600}.userMenuLogout .menuIcon{color:var(--status-error)}.userMenuLogout:hover{background:color-mix(in srgb,var(--status-error) 10%,transparent)}@media (max-width: 768px){.userInfo,.userMenuArrow{display:none}.userMenuTrigger{padding:.25rem}}.header{background:var(--surface);box-shadow:var(--shadow);position:sticky;top:0;z-index:1000;transition:top .4s cubic-bezier(.4,0,.2,1)}@media (max-width: 768px){.header.searchVisible{top:70px}}.navbar{padding:.5rem 0}.navbar .container{display:flex;flex-direction:column;gap:.375rem;max-width:1200px;margin:0 auto;padding:0 20px}.promoBanner{width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;background:linear-gradient(135deg,var(--green-deep) 0%,var(--green-moss) 50%,var(--green-sage) 100%);color:var(--button-text);overflow:hidden}.promoBanner:after{content:"";position:absolute;top:0;left:-150%;width:40%;height:100%;background:linear-gradient(90deg,color-mix(in srgb,var(--button-text) 0%,transparent),color-mix(in srgb,var(--button-text) 15%,transparent),color-mix(in srgb,var(--button-text) 0%,transparent));transform:skew(-25deg);animation:shine 8s ease-in-out 3s infinite;pointer-events:none;z-index:1}@keyframes shine{0%{left:-150%}30%{left:150%}to{left:150%}}.promoBannerInner{padding:.5rem 0}.promoBanner .container{display:flex;align-items:center;justify-content:center;gap:.75rem;position:relative}.promoText{margin:0;font-size:.9rem;font-weight:600;text-align:center;color:var(--button-text);text-shadow:0 1px 3px color-mix(in srgb,var(--neutral-text-primary) 30%,transparent)}.promoHide{background:color-mix(in srgb,var(--button-text) 20%,transparent);border:1px solid color-mix(in srgb,var(--button-text) 30%,transparent);color:var(--button-text);cursor:pointer;width:24px;height:24px;padding:0;border-radius:50%;font-size:.875rem;font-weight:400;line-height:1;display:flex;align-items:center;justify-content:center;flex-shrink:0;text-shadow:0 1px 2px rgba(0,0,0,.2);transition:all .2s ease}.promoHide:hover{background:#ffffff4d;border-color:#ffffff80;transform:scale(1.1)}.promoLine{width:100%;height:4px;background:var(--brand-primary);border:none;cursor:pointer;padding:0;margin:0;display:block;transition:all .2s ease;position:relative}.promoLine:hover{height:6px;background:var(--brand-button-green);box-shadow:0 2px 8px #5da13e4d}.promoTapArea{display:none}@media (max-width: 768px){.promoTapArea{display:block;position:absolute;top:4px;left:50%;transform:translate(-50%);width:20%;max-width:60px;height:44px;background:transparent;border:none;cursor:pointer;z-index:10;padding:0}}.utilityNav{display:flex;justify-content:flex-end;padding:.125rem 0;box-shadow:0 1px 2px color-mix(in srgb,var(--neutral-text-primary) 4%,transparent);width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;background:var(--surface)}.utilityNav .container{max-width:1200px;margin:0 auto;padding:0 20px;width:100%;display:flex;justify-content:flex-end}.utilityNavContent{display:flex;align-items:center;gap:1.5rem;width:100%}.createCouponsLink{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--text-secondary);font-size:.85rem;font-weight:600;padding:.125rem .75rem;border-radius:.375rem;transition:all .2s ease;margin-left:auto}.createCouponsLink:hover{color:var(--brand-primary);background:var(--surface-2)}.createCouponsLink svg{flex-shrink:0}.searchToggleButton{display:none;align-items:center;gap:.5rem;background:none;border:none;color:var(--text-secondary);font-size:.85rem;font-weight:600;padding:.125rem .75rem;border-radius:.375rem;cursor:pointer;transition:all .2s ease}.backButton{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:var(--text-secondary);font-size:.85rem;font-weight:600;padding:.125rem .75rem;border-radius:.375rem;cursor:pointer;transition:all .2s ease}@media (max-width: 768px){.searchToggleButton{display:flex}}.searchToggleButton:hover,.backButton:hover{color:var(--brand-primary);background:var(--surface-2)}.searchToggleButton svg,.backButton svg{flex-shrink:0}.navbarTop{display:flex;align-items:flex-end;justify-content:space-between;padding:.5rem 0;width:100%}.navbarBottom{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 0 .375rem}.navbarSpacer{display:none}.hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;background:none;border:none;cursor:pointer;padding:.5rem;z-index:1001;width:44px;height:44px;position:relative}.hamburger span{display:block;width:28px;height:3px;background-color:var(--text);transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:2px;position:absolute;left:50%;transform:translate(-50%)}.hamburger span:nth-child(1){top:12px}.hamburger span:nth-child(2){top:20px}.hamburger span:nth-child(3){top:28px}.hamburger span.active:nth-child(1){top:20px;transform:translate(-50%) rotate(45deg)}.hamburger span.active:nth-child(2){opacity:0;transform:translate(-50%) scale(0)}.hamburger span.active:nth-child(3){top:20px;transform:translate(-50%) rotate(-45deg)}.headerActions{display:flex;align-items:center;transform:translateY(2px)}.logo{display:flex;align-items:flex-end;flex-shrink:0;transform:translateY(-4px)}.logo a{text-decoration:none;display:flex;align-items:flex-end}.headerSearch{flex:1;max-width:600px;display:flex;align-items:center;position:relative;margin:0 2rem}@media (max-width: 768px){.headerSearch{display:none}}.headerSearch .searchInput{width:100%;padding:.625rem 3rem .625rem 1rem;border:1px solid var(--border);border-radius:2rem;font-size:.95rem;background:var(--surface-2);color:var(--text);transition:all .2s ease}.headerSearch .searchInput:focus{outline:none;border-color:var(--brand-primary);background:var(--surface);box-shadow:0 0 0 3px #7dd3fc1a}.headerSearch .searchInput::placeholder{color:var(--text-secondary)}.searchButton{position:absolute;right:.5rem;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.5rem;transition:all .2s ease;border-radius:50%}.searchButton:hover{color:var(--brand-primary);background:var(--surface-2)}.searchButton svg{display:block}.signInButton{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border:1px solid var(--border);border-radius:2rem;font-size:.95rem;font-weight:500;background:var(--surface-2);color:var(--text);cursor:pointer;transition:all .2s ease;white-space:nowrap}.signInButton:hover{border-color:var(--brand-primary);background:var(--surface);color:var(--brand-primary)}.signInButton svg{flex-shrink:0;color:inherit}.siteLogo{height:52px;width:auto;object-fit:contain;cursor:pointer;transition:var(--transition);display:block}.siteLogo:hover{opacity:.85}.logo h1{color:var(--brand-primary);font-size:1.8rem;cursor:pointer}.nav-menu{display:flex;list-style:none;justify-content:space-between;width:100%;flex-wrap:wrap}.nav-menu a{color:var(--text);font-weight:500;transition:var(--transition);cursor:pointer;text-decoration:none;padding:.5rem 0;border-bottom:2px solid transparent;display:flex;align-items:center;gap:.5rem}.nav-menu a svg{flex-shrink:0}.nav-menu a:hover{color:var(--brand-primary);text-decoration:none}.nav-menu a.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}@media (max-width: 768px){.promoBannerInner{padding:.375rem 0}.promoBanner .container{gap:.5rem}.promoText{font-size:.8rem;font-weight:600;color:var(--button-text);text-shadow:0 1px 3px color-mix(in srgb,var(--neutral-text-primary) 30%,transparent)}.promoClose{width:26px;height:26px;font-size:.95rem}.navbar .container{padding:0 20px}.utilityNav{padding:.1rem 0}.utilityNavContent{gap:1rem;justify-content:space-between;width:100%}.searchToggleButton,.backButton{order:-1;font-size:.75rem;padding:.1rem .5rem}.createCouponsLink{font-size:.75rem;font-weight:600;padding:.1rem .5rem;order:1}.createCouponsLink span{display:none}.createCouponsLink:after{content:"Create Coupons"}.navbarTop{flex-wrap:wrap;gap:.75rem;padding:.5rem 0}.hamburger{display:flex;order:1}.logo{order:2;flex:1;justify-content:center}.headerActions{order:3;width:auto;margin-top:0}.navbarSpacer{display:none}.headerSearch{order:4;width:100%;max-width:none;margin-top:.5rem;margin-left:0;margin-right:0}.signInButton{padding:.5rem 1rem;font-size:.875rem}.navbarBottom{display:none;flex-direction:column;align-items:stretch;width:100%;padding:1rem 0 .5rem;gap:.5rem}.navbarBottom.open{display:flex}.nav-menu{flex-direction:column;justify-content:flex-start;gap:.5rem;text-align:left;width:100%}.nav-menu li{width:100%}.nav-menu a{display:flex;padding:.75rem 1rem;border-radius:.5rem;border-bottom:none}.nav-menu a:hover,.nav-menu a.active{background-color:var(--surface-2)}}.searchBar{position:fixed;top:0;left:0;right:0;background:var(--surface);box-shadow:0 2px 12px #00000014;z-index:1002;transition:transform .4s cubic-bezier(.4,0,.2,1);transform-origin:top;border-bottom:1px solid var(--border)}.searchBar.hidden{transform:translateY(-100%);pointer-events:none}.searchBar.visible{transform:translateY(0);pointer-events:auto}@media (min-width: 769px){.searchBar{display:none}}.searchBarContent{display:flex;align-items:center;gap:.75rem;padding:1rem 0;position:relative}.searchIcon{color:var(--brand-primary);flex-shrink:0}.searchBar .searchInput{flex:1;border:1px solid var(--border);outline:none;font-size:1rem;padding:.75rem 1rem;background:var(--surface-2);border-radius:2rem;color:var(--text);transition:all .2s ease}.searchBar .searchInput:focus{border-color:var(--brand-primary);background:var(--surface);box-shadow:0 0 0 3px #5da13e1a}.searchBar .searchInput::placeholder{color:var(--text-secondary)}.clearButton,.closeSearchButton{background:transparent;border:none;cursor:pointer;padding:.5rem;color:var(--text-secondary);transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:50%}.clearButton:hover,.closeSearchButton:hover{color:var(--brand-primary);background:var(--surface-2)}.clearButton:active,.closeSearchButton:active{transform:scale(.95)}.closeSearchButton{color:var(--brand-primary)}.closeSearchButton svg{transition:transform .3s}@media (max-width: 768px){.searchBarContent{padding:.75rem 0}.searchInput{font-size:.9rem}}.heroCarousel{position:relative;width:100%;height:400px;overflow:hidden;background:var(--background);cursor:grab;user-select:none;-webkit-user-select:none}.heroCarousel.dragging{cursor:grabbing}.heroCarousel.dragging .heroSlide{transition:none}.heroSlides{position:relative;width:100%;max-width:1200px;height:100%;margin:0 auto;padding:0 1.5rem}.heroSlide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .8s ease-in-out;background-size:cover;background-position:top center;background-repeat:no-repeat}.heroSlide:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to right,var(--background) 0%,transparent 15%,transparent 85%,var(--background) 100%);pointer-events:none}.heroSlide.active{opacity:1;z-index:1}.heroDots{display:flex;gap:.75rem;justify-content:center;align-items:center;padding:1rem 0;background:var(--background)}.heroDot{width:12px;height:12px;border-radius:50%;background:#d1d5db;border:none;cursor:pointer;transition:all .3s ease;padding:0}.heroDot:hover{background:var(--brand-primary);transform:scale(1.2)}.heroDot.active{background:var(--brand-primary);width:32px;border-radius:6px}@media (max-width: 768px){.heroCarousel{height:350px}.heroDots{padding:.75rem 0;gap:.5rem}}@media (max-width: 480px){.heroCarousel{height:300px}.heroDots{padding:.625rem 0}.heroDot{width:10px;height:10px}.heroDot.active{width:24px}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.modalOverlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:2rem;animation:fadeIn .2s ease-in-out}.modalContent{background:var(--surface);border-radius:1rem;max-width:1000px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}.modalHeader{padding:2rem 2rem 1.5rem;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.modalHeader h2{margin:0;font-size:1.75rem;color:var(--brand-ledger);font-weight:700}.modalSubtitle{margin:.5rem 0 0;font-size:1rem;color:var(--brand-teal);font-weight:500}.modalClose{background:none;border:none;font-size:2.5rem;line-height:1;cursor:pointer;color:var(--text);padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:.5rem;transition:all .2s;flex-shrink:0}.modalClose:hover{background:var(--brand-listing);color:var(--brand-ledger)}.modalBody{flex:1;overflow:auto;padding:2rem;display:flex;flex-direction:column;gap:2rem}.locationsMapContainer{height:500px;width:100%;border-radius:1rem;overflow:hidden;box-shadow:0 4px 20px #0000001a;position:relative;flex-shrink:0}.mapLoadingPlaceholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--brand-listing);color:var(--brand-teal);font-size:1.1rem;font-weight:500}.locationPopupContent h4{margin:0 0 .5rem;font-size:1rem;color:var(--brand-ledger);font-weight:600}.locationPopupContent p{margin:0;font-size:.85rem;color:var(--text);line-height:1.4}.locationsList{background:var(--bg);border:1px solid var(--border);border-radius:1rem;padding:2rem}.locationsList h3{margin:0 0 1.5rem;font-size:1.25rem;color:var(--brand-ledger);font-weight:700}.locationsList ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.locationListItem{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:var(--surface);border:1px solid var(--border);border-radius:.75rem;font-size:1rem;color:var(--brand-ledger);transition:all .2s}.locationListItem:hover{background:var(--brand-listing);border-color:var(--brand-primary)}.locationIcon{font-size:1.25rem;flex-shrink:0;margin-top:.1rem}.modalFooter{padding:1.5rem 2rem;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:.75rem}@media (max-width: 768px){.modalOverlay{padding:0}.modalContent{max-height:100vh;height:100vh;border-radius:0;max-width:100%}.modalHeader{padding:1.5rem}.modalHeader h2{font-size:1.25rem}.modalSubtitle{font-size:.9rem}.modalBody{padding:1.5rem}.locationsMapContainer{height:350px}.locationsList{padding:1.5rem}.locationsList h3{font-size:1.1rem}.locationListItem{font-size:.95rem;padding:.85rem}.modalFooter{padding:1.5rem}.modalFooter .btn{flex:1}}.coupon-card-wrapper{display:flex;flex-direction:column;gap:1rem;position:relative;z-index:1}.coupon-card-wrapper:hover{z-index:10}.coupon-image-card{border-radius:1rem;box-shadow:0 4px 15px #0000001a;transition:var(--transition)}.coupon-image-card:hover{transform:translateY(-5px);box-shadow:0 8px 30px #0003}.coupon-image{width:100%;height:auto;aspect-ratio:3 / 4;object-fit:cover;background:var(--brand-listing);display:block;border-radius:1rem;overflow:hidden}.coupon-template{width:100%;aspect-ratio:3 / 4;flex-shrink:0;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.coupon-template-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}.template-overlay{position:relative;z-index:1;text-align:center;padding:1.5rem;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.5);background:#0003;border-radius:.5rem}.template-overlay h4{margin:0;font-size:1.3rem;font-weight:700;line-height:1.3}.coupon-buttons{display:flex;flex-direction:column;align-items:center;gap:.75rem}.location-section{display:flex;flex-direction:column;align-items:center;gap:.35rem;width:100%}.coupon-header{display:flex;flex-direction:column;gap:.5rem}.coupon-title{font-size:1.1rem;margin:0;color:var(--brand-ledger);line-height:1.3}.coupon-badges{display:flex;flex-wrap:wrap;gap:.35rem}.coupon-description{font-size:.9rem;color:var(--text);line-height:1.5;margin:0;flex:1}.coupon-locations{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--brand-teal);background:var(--surface);border:1px solid var(--border);border-radius:.5rem;padding:.6rem 1rem;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #0000001a;width:100%;max-width:200px;justify-content:center;white-space:nowrap}.coupon-locations:hover{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}.closest-distance{font-size:.75rem;color:var(--text-secondary);font-weight:500;text-align:center;line-height:1;margin-top:-.15rem}.location-icon{font-size:1rem}.location-text{font-weight:500}.location-arrow{font-size:1.2rem;margin-left:.25rem;transition:transform .2s}.coupon-locations:hover .location-arrow{transform:translate(3px)}.coupon-buttons .btn{font-size:1rem;padding:.75rem 2rem;box-shadow:0 2px 8px #0000001a;width:100%;max-width:200px;white-space:nowrap;min-height:48px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.mapModalOverlay{position:fixed;top:0;left:0;right:0;bottom:0;background:color-mix(in srgb,var(--neutral-text-primary) 70%,transparent);display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mapModalContent{background:var(--surface);border-radius:1rem;width:100%;max-width:1200px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px color-mix(in srgb,var(--neutral-text-primary) 30%,transparent);animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.mapModalHeader{display:flex;justify-content:space-between;align-items:flex-start;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);flex-shrink:0}.mapModalHeader h3{font-size:1.5rem;font-weight:700;color:var(--text);margin:0 0 .25rem}.mapLocationSubtitle{font-size:.9rem;color:var(--text-secondary);margin:0}.mapModalClose{background:none;border:none;font-size:1.75rem;color:var(--text-secondary);cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:var(--transition);flex-shrink:0}.mapModalClose:hover{background:var(--surface-2);color:var(--text)}.mapModalSearch{display:flex;gap:.75rem;padding:1rem 1.5rem;border-bottom:1px solid var(--border);flex-wrap:wrap;flex-shrink:0}.countryDropdown{position:absolute;top:calc(100% + .5rem);left:0;background:var(--surface);border:2px solid var(--border);border-radius:.75rem;box-shadow:0 10px 40px color-mix(in srgb,var(--neutral-text-primary) 20%,transparent);z-index:1000;min-width:280px;max-height:400px;overflow-y:auto;animation:slideDown .2s ease}.mapSearchInput{flex:1;min-width:200px;padding:.75rem 1rem;font-size:1rem;border:2px solid var(--border);border-radius:.5rem;background:var(--background);color:var(--text);transition:var(--transition)}.mapSearchInput:focus{outline:none;border-color:var(--brand-primary)}.mapSearchButton,.mapUseLocationButton{padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;border:none;border-radius:.5rem;cursor:pointer;transition:all .3s ease;white-space:nowrap}.mapSearchButton{background:var(--brand-primary);color:#fff}.mapSearchButton:hover:not(:disabled){background:var(--brand-button-green);transform:translateY(-1px);box-shadow:0 4px 12px #5da13e4d}.mapSearchButton:disabled,.mapUseLocationButton:disabled{opacity:.6;cursor:not-allowed}.mapUseLocationButton{background:var(--surface-2);color:var(--text);border:2px solid var(--border)}.mapUseLocationButton:hover:not(:disabled){border-color:var(--brand-primary);color:var(--brand-primary)}.mapAlert{padding:.75rem 1.5rem;margin:0;font-size:.95rem;border-bottom:1px solid var(--border);flex-shrink:0}.mapAlertInfo{background:var(--surface-2);color:var(--brand-primary);border-left:3px solid var(--brand-primary)}.mapAlertWarning{background:color-mix(in srgb,var(--status-warning) 20%,var(--surface));color:color-mix(in srgb,var(--status-warning) 80%,var(--neutral-text-primary));border-left:3px solid var(--status-warning)}.mapAlertError{background:color-mix(in srgb,var(--status-danger) 20%,var(--surface));color:color-mix(in srgb,var(--status-danger) 80%,var(--neutral-text-primary));border-left:3px solid var(--status-danger)}.mapModalBody{position:relative;height:500px;min-height:400px;overflow:hidden;background:var(--surface-2)}.mapModalBody .leaflet-container{height:100%!important;width:100%!important;z-index:1}.mapLoadingState{display:flex;align-items:center;justify-content:center;height:100%;font-size:1.1rem;color:var(--text-secondary)}.businessPopup{min-width:200px}.businessPopup h4{margin:0 0 .5rem;font-size:1rem;color:var(--text)}.businessPopup p{margin:.25rem 0;font-size:.9rem;color:var(--text-secondary)}.badge{display:inline-block;padding:.25rem .5rem;font-size:.75rem;font-weight:600;border-radius:.25rem;margin-bottom:.5rem}.badgeVerified{background:var(--brand-primary);color:#fff}.mapModalFooter{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-top:1px solid var(--border);background:var(--surface-2);border-radius:0 0 1rem 1rem;flex-shrink:0}.mapLegend{display:flex;gap:1.5rem;align-items:center}.legendItem{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary)}.legendMarker{width:12px;height:12px;border-radius:50%;flex-shrink:0}.legendMarkerBlue{background:var(--map-unselected);box-shadow:0 0 0 2px color-mix(in srgb,var(--map-unselected) 30%,transparent)}.legendMarkerGreen{background:var(--map-selected);box-shadow:0 0 0 2px color-mix(in srgb,var(--map-selected) 30%,transparent)}.legendMarkerGold{background:var(--map-custom);box-shadow:0 0 0 2px color-mix(in srgb,var(--map-custom) 30%,transparent)}.mapSelectButton{padding:.75rem 2rem;font-size:1rem;font-weight:600;color:#fff;background:var(--brand-primary);border:none;border-radius:2rem;cursor:pointer;transition:all .3s ease;white-space:nowrap}.mapSelectButton:hover{background:var(--brand-button-green);transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in srgb,var(--brand-button-green) 30%,transparent)}@media (max-width: 768px){.mapModalOverlay{padding:0}.mapModalContent{max-width:100%;max-height:100vh;height:100vh;border-radius:0}.mapModalHeader{padding:1rem}.mapModalHeader h3{font-size:1.25rem}.mapLocationSubtitle{font-size:.85rem}.mapModalSearch{padding:.75rem 1rem;flex-direction:column;gap:.5rem}.mapModalSearch form{flex-direction:row!important}.countryFlagButton{width:44px;height:44px}.countryDropdown{left:0;right:auto;min-width:260px;max-height:300px}.mapSearchInput{width:100%!important}.mapSearchButton,.mapUseLocationButton{width:100%}.mapAlert{padding:.625rem 1rem;font-size:.9rem}.mapModalBody{height:auto;min-height:300px;flex:1}.mapModalFooter{flex-direction:column;gap:1rem;padding:1rem}.mapLegend{flex-direction:column;gap:.75rem;align-items:flex-start;width:100%}.mapSelectButton{width:100%}}@media (max-width: 480px){.mapModalHeader h3{font-size:1.1rem}.mapSearchInput,.mapSearchButton,.mapUseLocationButton,.mapSelectButton{font-size:.9rem;padding:.625rem 1rem}.legendItem{font-size:.85rem}}.categoryFilterModalOverlay{position:fixed;top:0;left:0;right:0;bottom:0;background:color-mix(in srgb,var(--neutral-text-primary) 50%,transparent);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.categoryFilterModalContent{background:var(--surface);border-radius:1rem;max-width:400px;width:100%;max-height:70vh;display:flex;flex-direction:column;box-shadow:0 10px 40px color-mix(in srgb,var(--neutral-text-primary) 30%,transparent);overflow:hidden}.categoryFilterModalHeader{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border);flex-shrink:0}.categoryFilterModalHeader h3{margin:0;font-size:1.1rem;color:var(--text)}.categoryFilterModalClose{background:none;border:none;font-size:2rem;color:var(--text);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:var(--transition)}.categoryFilterModalClose:hover{background:var(--surface-2)}.categoryFilterModalBody{padding:1rem 1.25rem;overflow-y:auto;flex:1}.categoryFilterGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.categoryFilterOption{display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;background:var(--background);border:2px solid var(--border);border-radius:.5rem;cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.categoryFilterOption:hover{border-color:var(--brand-green);background:var(--surface)}.categoryFilterOption input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--brand-green);flex-shrink:0}.categoryFilterLabel{font-size:.9rem;color:var(--text);font-weight:500}.categoryFilterOption input[type=checkbox]:checked~.categoryFilterLabel{color:var(--brand-green)}.categoryFilterModalFooter{display:flex;justify-content:space-between;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid var(--border);flex-shrink:0;background:var(--surface);min-height:60px}.categoryFilterClearBtn,.categoryFilterApplyBtn{padding:.75rem 1.25rem;border-radius:.5rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:var(--transition);white-space:nowrap}.categoryFilterClearBtn{background:var(--surface-2);color:var(--text);flex:0 0 auto;border:1px solid var(--border)}.categoryFilterClearBtn:hover{background:var(--border)}.categoryFilterApplyBtn{flex:1;margin-left:auto}@media (max-width: 768px){.categoryFilterGrid{grid-template-columns:1fr}}.flippableCouponContainer{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;position:relative}.flippableCoupon{position:relative;width:auto;height:auto;max-width:100%;max-height:calc(100% - 80px);cursor:pointer;transform-style:preserve-3d;perspective:1000px;transition:none}.flippableCoupon.flipping:not(.flipped):not(.reverse){animation:checkFrame .4s cubic-bezier(.25,.46,.45,.94) forwards;transform:rotateY(0) rotateX(0) rotate(0)}@keyframes checkFrame{0%{transform:rotateY(0) rotateX(0) rotate(0)}to{transform:rotateY(0) rotateX(-8deg) rotate(-3deg)}}.flippableCoupon.flipping.flipped:not(.reverse){animation:flipToBack 1.3s cubic-bezier(.45,.05,.55,.95) forwards}@keyframes flipToBack{0%{transform:rotateY(0) rotateX(-8deg) rotate(-3deg)}to{transform:rotateY(180deg) rotateX(-8deg) rotate(-3deg)}}.flippableCoupon.flipped:not(.flipping){animation:settleFlat .5s ease-out forwards}@keyframes settleFlat{0%{transform:rotateY(180deg) rotateX(-8deg) rotate(-3deg)}to{transform:rotateY(180deg) rotateX(0) rotate(0)}}.flippableCoupon.flipping:not(.flipped).reverse{animation:flipBackToFront 1.3s cubic-bezier(.45,.05,.55,.95) forwards}@keyframes flipBackToFront{0%{transform:rotateY(180deg) rotateX(0) rotate(0)}to{transform:rotateY(0) rotateX(0) rotate(0)}}.flippableCoupon:not(.flipped):not(.flipping):not(.animateTeaser){transform:rotateY(0) rotateX(0) rotate(0);animation:none}.flippableCoupon.animateTeaser:not(.flipped):not(.flipping){animation:subtleFlipTeaser 5s ease-in-out .5s infinite}@keyframes subtleFlipTeaser{0%{transform:rotateY(0) rotateX(0) rotate(0)}16%{transform:rotateY(-20deg) rotateX(-3deg) rotate(-1deg)}24%{transform:rotateY(-20deg) rotateX(-3deg) rotate(-1deg)}40%{transform:rotateY(0) rotateX(0) rotate(0)}to{transform:rotateY(0) rotateX(0) rotate(0)}}.couponFront,.couponBack{backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:1rem;overflow:hidden;box-shadow:0 8px 24px #00000026}.flipHintOverlay{position:absolute;top:-1.5rem;right:3.5rem;display:flex;align-items:center;justify-content:center;width:56px;height:56px;background:#ffffffd9;color:var(--brand-primary);border-radius:50%;pointer-events:none;box-shadow:0 2px 12px #00000026;z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0}.flipHintOverlay svg{flex-shrink:0}.flipHintOverlay.animateIcon{animation:fadeInOutWithTilt 5s ease-in-out .5s infinite}@keyframes fadeInOutWithTilt{0%{opacity:0;transform:scale(.8)}8%{opacity:1;transform:scale(1)}28%{opacity:1;transform:scale(1)}36%{opacity:0;transform:scale(.8)}to{opacity:0;transform:scale(.8)}}.couponFront,.couponFrontImage{position:relative;width:100%;height:100%}.couponFrontImage img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;display:block;aspect-ratio:3 / 4}.couponExpiredBadge{position:absolute;top:1rem;right:1rem;padding:.5rem 1rem;border-radius:.5rem;font-size:.9rem;font-weight:600;color:#fff;background:var(--status-error);box-shadow:0 2px 8px #0003;z-index:2}.couponBack{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,var(--surface) 0%,var(--bg) 100%);transform:rotateY(180deg);border:2px solid var(--border);display:flex;align-items:center;justify-content:center}.couponBackContent{width:100%;height:100%;padding:1.5rem 1.25rem;display:flex;flex-direction:column;justify-content:space-between;gap:.75rem;overflow:hidden}.backBusinessLogo{width:60px;height:60px;margin:0 auto;border-radius:50%;overflow:hidden;border:3px solid var(--brand-primary);box-shadow:0 4px 12px #0000001a;flex-shrink:0}.backBusinessLogo img{width:100%;height:100%;object-fit:cover;display:block}.backHeadline{text-align:center;flex-shrink:0}.backHeadline h3{font-size:1.1rem;color:var(--brand-ledger);margin:0;line-height:1.2}.backDealCode{background:var(--brand-listing);padding:.75rem;border-radius:.75rem;text-align:center;border:2px dashed var(--brand-primary);flex-shrink:0}.backDealCode label{display:block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text);opacity:.7;margin-bottom:.35rem}.dealCodeValue{font-size:1.2rem;font-weight:700;color:var(--brand-primary);font-family:Courier New,monospace;letter-spacing:.1em;margin-bottom:.5rem;word-break:break-all}.copyCodeBtn{background:var(--brand-primary);color:#fff;border:none;padding:.4rem .85rem;border-radius:.5rem;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s}.copyCodeBtn:hover{background:var(--brand-primary);opacity:.9;transform:translateY(-1px)}.backExpiration{text-align:center;flex-shrink:0}.backExpiration label{display:block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text);opacity:.7;margin-bottom:.35rem}.expirationValue{font-size:.95rem;font-weight:600;color:var(--brand-teal)}.expirationValue.expired{color:var(--status-error);text-decoration:line-through}.backCategories{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;flex-shrink:0}.categoryBadge{padding:.3rem .65rem;background:var(--brand-primary);color:#fff;border-radius:999px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.backDisclaimer{background:#ffc1071a;border:1px solid rgba(255,193,7,.3);padding:.6rem;border-radius:.5rem;display:flex;gap:.4rem;align-items:flex-start;flex-shrink:0}.backDisclaimer svg{color:#ffc107;flex-shrink:0;margin-top:.05rem;width:14px;height:14px}.backDisclaimer p{font-size:.65rem;line-height:1.4;color:var(--text);margin:0;opacity:.9}.backBusinessName{text-align:center;font-size:.8rem;color:var(--text);opacity:.7;font-weight:500;flex-shrink:0}.flipBackHint{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.35rem;color:var(--text);opacity:.5;font-size:.7rem;font-weight:500;flex-shrink:0}.flipBackHint svg{flex-shrink:0;width:14px;height:14px}.removeCouponBtn{width:100%;max-width:320px;border:2px solid var(--status-error)!important;color:var(--status-error)!important;background:var(--surface)!important;font-weight:600;padding:.875rem 1.5rem!important;flex-shrink:0}.removeCouponBtn:hover{background:var(--status-error)!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 4px 12px #dc35454d}@media (max-width: 768px){.couponBackContent{padding:1.25rem 1rem;gap:.65rem}.backBusinessLogo{width:50px;height:50px}.backHeadline h3{font-size:1rem}.dealCodeValue{font-size:1.1rem}.backDealCode{padding:.65rem}.backDisclaimer{padding:.5rem}.backDisclaimer p{font-size:.6rem}.removeCouponBtn{max-width:100%}}.walletModal{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;background:color-mix(in srgb,var(--neutral-text-primary) 75%,transparent);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-y:auto}.walletContent{background:var(--surface);border-radius:1rem;max-width:600px;width:100%;height:85vh;min-height:600px;display:flex;flex-direction:column;position:relative;box-shadow:0 20px 60px color-mix(in srgb,var(--neutral-text-primary) 30%,transparent);overflow:hidden}.walletClose{background:transparent;border:2px solid var(--border);color:var(--text);cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s;flex-shrink:0;padding:0;margin-left:1rem}.walletClose svg{flex-shrink:0}.walletClose:hover{background:var(--status-error);border-color:var(--status-error);color:#fff;transform:scale(1.1)}.walletHeader{padding:2rem 2rem 1.5rem;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:1rem}.walletHeader h2{font-size:1.75rem;color:var(--brand-ledger);margin:0;display:flex;align-items:center;gap:.75rem;flex:1}.walletIcon{color:var(--brand-primary);display:flex;align-items:center}.walletHeaderStats{display:flex;gap:1.5rem;align-items:center}.headerStat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.headerStatNumber{font-size:1.25rem;font-weight:700;color:var(--brand-primary);line-height:1}.headerStatLabel{font-size:.7rem;color:var(--text);opacity:.7;text-transform:uppercase;letter-spacing:.05em}.walletBody{flex:1;overflow:hidden;position:relative;min-height:500px}.walletLoading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:var(--text)}.walletLoading .spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--brand-primary);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}.walletEmpty,.walletMessage{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.walletMessage h3{font-size:1.5rem;color:var(--brand-ledger);margin:0 0 .75rem}.walletMessage p{color:var(--text);margin:0 0 1.5rem;max-width:400px}.walletBusinessNotice{background:var(--brand-listing);padding:1rem 1.5rem;border-radius:.5rem;margin-bottom:1.5rem;max-width:400px;text-align:left}.walletBusinessNotice strong{color:var(--brand-ledger);display:block;margin-bottom:.5rem}.walletCreateAccountBtn{width:100%;max-width:320px;flex-shrink:0;padding:.875rem 1.5rem;font-weight:600}.walletUnclaimedView{min-height:0}.walletUnclaimedView .walletCouponCard{padding:1rem;gap:1rem;min-height:0}.walletUnclaimedView .flippableCouponContainer{flex:1;min-height:0;overflow:hidden}.walletUnclaimedView .flippableCoupon{max-height:calc(100% - 4px)}.walletUnclaimedView .couponFrontImage img{max-height:100%;object-fit:contain}.emptyIcon{color:var(--text);opacity:.3;margin-bottom:1.5rem}.walletEmpty h3{font-size:1.5rem;color:var(--brand-ledger);margin:0 0 .5rem}.walletEmpty p{color:var(--text);opacity:.7;margin:0 0 2rem}.walletCarousel{position:relative;width:100%;height:100%;min-height:500px;overflow:hidden}.walletCarouselTrack{position:relative;width:100%;height:100%;display:flex;align-items:stretch}.walletCouponCard{position:absolute;top:0;left:0;width:100%;height:100%;transition:transform .3s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;overflow-y:auto;gap:1.5rem}.walletCouponCard.active{z-index:1}.walletCouponImage{position:relative;width:auto;height:auto;max-width:100%;max-height:calc(100% - 80px);border-radius:1rem;overflow:hidden;box-shadow:0 8px 24px color-mix(in srgb,var(--neutral-text-primary) 15%,transparent)}.walletCouponImage img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;display:block;aspect-ratio:3 / 4}.walletExpiredBadge{position:absolute;top:1rem;right:1rem;padding:.5rem 1rem;border-radius:.5rem;font-size:.9rem;font-weight:600;color:#fff;background:var(--status-error);box-shadow:0 2px 8px color-mix(in srgb,var(--neutral-text-primary) 20%,transparent)}.walletRemoveBtn{width:100%;max-width:320px;border:2px solid var(--status-error)!important;color:var(--status-error)!important;background:var(--surface)!important;font-weight:600;padding:.875rem 1.5rem!important;flex-shrink:0}.walletRemoveBtn:hover{background:var(--status-error)!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 4px 12px color-mix(in srgb,var(--status-error) 30%,transparent)}.walletArrow{position:absolute;top:50%;transform:translateY(-50%) translateY(-40px);background:var(--surface);border:2px solid var(--border);width:44px;height:44px;border-radius:50%;color:var(--brand-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .2s;box-shadow:0 2px 8px color-mix(in srgb,var(--neutral-text-primary) 10%,transparent);padding:0}.walletArrow svg{display:block;flex-shrink:0}.walletArrow:hover:not(:disabled){background:var(--brand-primary);color:#fff;transform:translateY(-50%) translateY(-40px) scale(1.1)}.walletArrow:disabled{opacity:.3;cursor:not-allowed}.walletArrowLeft{left:1rem}.walletArrowRight{right:1rem}.walletDots{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);display:flex;gap:.5rem;z-index:10}.walletDot{width:8px;height:8px;border-radius:50%;background:var(--border);border:none;cursor:pointer;transition:all .2s;padding:0}.walletDot.active{background:var(--brand-primary);width:24px;border-radius:4px}.walletDot:hover{background:var(--brand-primary);opacity:.7}@media (max-width: 768px){.walletModal{padding:0}.walletContent{max-width:100%;height:100vh;min-height:100vh;border-radius:0}.walletHeader{padding:1.5rem 1rem 1rem;flex-wrap:wrap}.walletHeader h2{font-size:1.5rem;flex:1 1 100%;margin-bottom:.75rem}.walletClose{width:32px;height:32px;margin-left:.5rem}.walletClose svg{width:12px;height:12px}.walletHeaderStats{gap:1rem}.headerStatNumber{font-size:1rem}.headerStatLabel{font-size:.65rem}.walletBody,.walletCarousel{min-height:400px}.walletCouponCard{padding:1.5rem 1rem}.walletCouponImage{max-height:calc(100% - 70px)}.walletRemoveBtn{max-width:100%;padding:.75rem 1.25rem!important}.walletArrow{width:36px;height:36px;font-size:1.25rem}.walletArrowLeft{left:.5rem}.walletArrowRight{right:.5rem}}.couponsWithLocation{background:var(--background)}.locationSelector{width:100%}.popularTitle{font-size:1.75rem;font-weight:700;color:var(--text);margin:0}.locationSelectorBox{background:transparent;padding:.5rem 0;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.setLocationButton{padding:.875rem 1.75rem;font-size:1rem;font-weight:600;color:#fff;background:var(--brand-primary);border:none;border-radius:2rem;cursor:pointer;transition:all .3s ease;white-space:nowrap;display:flex;align-items:center;gap:.5rem}.setLocationButton:hover:not(:disabled){background:var(--brand-button-green);transform:translateY(-1px);box-shadow:0 4px 12px #5da13e4d}.setLocationButton:disabled{opacity:.6;cursor:not-allowed}.couponsHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.couponsHeader h3{font-size:1.5rem;font-weight:600;color:var(--text);margin:0}.walletLink{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--brand-primary);color:#fff;border:none;border-radius:2rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.walletLink:hover{background:var(--brand-button-green);transform:translateY(-1px);box-shadow:0 4px 12px #5da13e4d}.walletLink svg{flex-shrink:0}.filterBubbles{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;flex:1}.filterLabel{font-size:1.1rem;font-weight:600;color:var(--text);margin-right:.25rem}.filterBubble{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--brand-primary, #5DA13E)!important;color:#fff!important;border-radius:2rem;font-size:.95rem;font-weight:600;transition:var(--transition);border:none}.filterBubble.noneBubble{background:var(--surface-2, #e5e5e5)!important;color:var(--text-secondary, #666)!important;font-weight:500}.removeBubble{background:#00000026;border:none;color:#fff;cursor:pointer;padding:0;margin-left:.25rem;display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;transition:var(--transition)}.removeBubble svg{display:block}.removeBubble:hover{background:#0000004d;transform:scale(1.1)}.addFilterButton{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:2px solid var(--brand-primary, #5DA13E);background:#fff;color:var(--brand-primary, #5DA13E);cursor:pointer;transition:var(--transition);padding:0}.addFilterButton svg{display:block}.addFilterButton:hover{background:var(--brand-primary, #5DA13E);color:#fff;transform:scale(1.1);box-shadow:0 2px 8px #5da13e4d}.carouselWrapper{position:relative}.carouselArrow{position:absolute;top:40%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:2px solid rgba(255,255,255,.9);background:#fffffff2;color:var(--text);font-size:1.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);font-weight:300;z-index:10;box-shadow:0 2px 10px #00000026}.carouselArrowLeft{left:-24px}.carouselArrowRight{right:-24px}.carouselArrow:hover{border-color:var(--brand-primary);background:var(--brand-primary);color:#fff;transform:translateY(-50%) scale(1.1);box-shadow:0 4px 15px #00000040}.carouselArrow:disabled{opacity:.3;cursor:not-allowed}.carouselArrow:disabled:hover{border-color:#ffffffe6;background:#fffffff2;color:var(--text);transform:translateY(-50%)}.couponCarousel{display:flex;gap:1.25rem;overflow-x:auto;overflow-y:visible;scroll-behavior:smooth;padding-top:10px;padding-bottom:1rem;margin-top:-10px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--brand-primary) var(--surface-2)}.couponCarousel .coupon-card-wrapper{min-width:250px;max-width:250px;flex-shrink:0}.couponCarousel::-webkit-scrollbar{height:8px}.couponCarousel::-webkit-scrollbar-track{background:var(--surface-2);border-radius:4px}.couponCarousel::-webkit-scrollbar-thumb{background:var(--brand-primary);border-radius:4px}.couponCarousel::-webkit-scrollbar-thumb:hover{background:var(--brand-button-green)}.couponsLoading,.couponsEmpty{text-align:center;padding:4rem 2rem;color:var(--brand-ledger)}.couponsEmpty h3{font-size:1.5rem;margin-bottom:.5rem}.couponsLoading p{color:var(--text-secondary);margin:0}.couponsEmpty h3{color:var(--text);margin:0 0 .5rem}.couponsEmpty p{color:var(--text-secondary);margin:0}@media (max-width: 968px){.locationSelectorBox{gap:1rem}.popularTitle{font-size:1.5rem}.setLocationButton{white-space:nowrap}}@media (max-width: 768px){.popularTitle{font-size:1.35rem}.locationSelectorBox{padding:.5rem 1.5rem;gap:.75rem;margin-bottom:1rem}.setLocationButton{font-size:.9rem;padding:.75rem 1.25rem}.couponsHeader h3{font-size:1.25rem}.walletLink{padding:.625rem 1rem;font-size:.9rem}.walletLinkText{display:none}.carouselArrow{width:40px;height:40px;font-size:1.25rem}.carouselArrowLeft{left:-20px}.carouselArrowRight{right:-20px}}@media (max-width: 480px){.popularTitle{font-size:1.15rem;flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.locationSelectorBox{padding:0;gap:.5rem;flex-wrap:nowrap;justify-content:space-between;margin-bottom:1rem}.setLocationButton{font-size:1.1rem;padding:0;width:44px;height:44px;border-radius:50%;justify-content:center;flex-shrink:0}.setLocationButton svg{width:22px;height:22px}.setLocationButton .buttonText{display:none}.walletLink{padding:0;width:44px;height:44px;border-radius:50%;justify-content:center;flex-shrink:0}.walletLink svg{width:22px;height:22px}.carouselArrow{width:36px;height:36px;font-size:1.1rem}.carouselArrowLeft{left:5px}.carouselArrowRight{right:5px}}.footer{background:var(--brand-ledger);color:#fff;text-align:center;padding:2rem 0}.companiesHero{background:linear-gradient(135deg,var(--brand-teal),var(--brand-link-green));color:var(--button-text);padding:4rem 0;text-align:center}.companiesHero h1{font-size:3rem;margin-bottom:1rem;color:var(--button-text)}.companiesHero p{font-size:1.3rem;color:var(--button-text);opacity:.95}.companiesContent{padding:5rem 0;background:var(--bg)}.dashboardHeader{text-align:center;margin-bottom:3rem;padding-top:2rem}.dashboardHeader h1{font-size:2.5rem;color:var(--brand-ledger);margin-bottom:.5rem}.dashboardHeader p{font-size:1.2rem;color:var(--text);opacity:.8}.companiesPromo{padding:5rem 0;background:var(--bg)}.promoContent h2{text-align:center;font-size:2.5rem;color:var(--brand-ledger);margin-bottom:3rem}.benefitsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:3rem}.benefitCard{text-align:center;padding:2rem;transition:var(--transition)}.benefitCard:hover{transform:translateY(-5px);box-shadow:0 5px 25px #00000026}.benefitIcon{font-size:3rem;margin-bottom:1rem}.benefitCard h3{font-size:1.5rem;color:var(--brand-ledger);margin-bottom:.75rem}.benefitCard p{color:var(--text);line-height:1.6}.promoCTA{text-align:center;margin-top:4rem}.promoNote{margin-top:1rem;color:var(--text);opacity:.7;font-size:.95rem}.dashboardGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:2rem}.dashboardCard{text-align:center;padding:2rem}.dashboardCard h3{font-size:1.3rem;color:var(--brand-ledger);margin-bottom:1.5rem}.dashboardStat{display:flex;flex-direction:column;align-items:center;margin-bottom:1.5rem}.statNumber{font-size:3rem;font-weight:700;color:var(--brand-primary);line-height:1;margin-bottom:.5rem}.dashboardCard .btn{width:100%}.recentActivity{margin-top:3rem}.recentActivity h2{font-size:2rem;color:var(--brand-ledger);margin-bottom:2rem;text-align:center}.quickActionsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.quickActionCard{display:flex;align-items:center;gap:1rem;padding:1.5rem;text-align:left;background:var(--surface);border:1px solid var(--border);cursor:pointer;transition:var(--transition)}.quickActionCard:hover{transform:translateY(-3px);box-shadow:0 5px 20px #0000001a;background:var(--surface-2)}.quickActionIcon{font-size:2.5rem;flex-shrink:0}.quickActionText{flex:1}.quickActionText h4{font-size:1.1rem;color:var(--brand-ledger);margin-bottom:.25rem}.quickActionText p{font-size:.9rem;color:var(--text);opacity:.7;margin:0}@media (max-width: 768px){.companiesHero h1{font-size:2rem}.companiesHero p{font-size:1.1rem}.promoContent h2{font-size:2rem}.benefitsGrid,.dashboardGrid,.quickActionsGrid{grid-template-columns:1fr}.benefitIcon{font-size:2.5rem}}.locationSelectorMap{width:100%;border:1px solid var(--border);border-radius:.75rem;overflow:hidden;background:var(--surface)}.mapControls{padding:1rem;background:var(--brand-listing);border-bottom:1px solid var(--border)}.locationSearchForm{display:flex;gap:.75rem;margin-bottom:1rem}.locationSearchForm .formInput{flex:1;margin:0}.locationSearchForm .btn{white-space:nowrap;padding:.75rem 1.5rem}.manualLocationForm{margin-top:1rem;padding:1rem;background:var(--surface);border-radius:.5rem;border:2px solid var(--border)}.manualLocationForm h4{margin:0 0 1rem;font-size:1rem;color:var(--brand-ledger)}.manualLocationForm input{margin-bottom:.75rem}.manualLocationForm button{width:100%}.mapError{color:var(--status-warning);font-size:.9rem;margin:.5rem 0 0}.mapLegend{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;font-size:.9rem}.legendItem{display:flex;align-items:center;gap:.5rem;color:var(--brand-ledger)}.legendIcon{font-size:1.2rem}.selectedCount{font-weight:600;color:var(--brand-primary)}.mapContainer{height:500px;min-height:500px;width:100%;position:relative;background:var(--surface-2)}.mapContainer .leaflet-container{height:100%;width:100%}.mapLoading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;padding:1rem 2rem;border-radius:.5rem;box-shadow:0 2px 8px #00000026;font-weight:600;color:var(--brand-teal);z-index:1000}.locationPopup h4{margin:0 0 .5rem;font-size:1rem;color:var(--brand-ledger)}.locationPopup p{margin:0 0 .5rem;font-size:.85rem;color:var(--text)}.locationPopup .btn{width:100%}@media (max-width: 768px){.locationSearchForm{flex-direction:column}.locationSearchForm .btn{width:100%}.mapLegend{flex-direction:column;align-items:flex-start}.mapContainer{height:400px}}.countryFlagSelector{position:relative;flex-shrink:0}.countryFlagButton{width:48px;height:48px;border:2px solid var(--border);border-radius:.5rem;background:var(--background);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition);padding:0}.countryFlagButton:hover{border-color:var(--brand-primary);background:var(--surface-2)}.countryFlag{font-size:1.5rem;line-height:1}.countryDropdown{position:absolute;top:calc(100% + .5rem);left:0;background:var(--surface);border:2px solid var(--border);border-radius:.75rem;box-shadow:0 10px 40px #0003;z-index:1000;min-width:280px;max-height:400px;overflow-y:auto;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.countryDropdownHeader{padding:.75rem 1rem;font-size:.75rem;font-weight:700;text-transform:uppercase;color:var(--text-secondary);background:var(--surface-2);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:1}.countryList{padding:.5rem}.countryOption{width:100%;display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;border:none;background:none;cursor:pointer;border-radius:.5rem;transition:var(--transition);text-align:left}.countryOption:hover{background:var(--surface-2)}.countryOption.selected{background:var(--brand-primary);color:#fff}.countryOption.selected .countryName{color:#fff}.countryName{font-size:.95rem;color:var(--text);flex:1}@media (max-width: 768px){.countryFlagButton{width:44px;height:44px}.countryDropdown{min-width:260px;max-height:300px}}.createCouponPage{min-height:calc(100vh - 80px)}.createCouponHero{background:var(--brand-listing);padding:2rem 0;border-bottom:1px solid var(--border)}.createCouponHero h1{color:var(--brand-ledger);margin-bottom:.5rem}.createCouponHero p{color:var(--brand-teal);font-size:1.1rem}.createCouponContent{padding:3rem 0}.createCouponLayout{display:flex;gap:2rem;align-items:flex-start}@media (max-width: 1024px){.createCouponLayout{flex-direction:column}}.createCouponLayout .couponForm{flex:1;min-width:0}.createCouponQrPreview{flex-shrink:0;width:340px}@media (max-width: 1024px){.createCouponQrPreview{width:100%;order:-1}}.createCouponQrPreview h3{margin:0 0 1rem;font-size:1.25rem;color:var(--brand-ledger)}.createCouponQrPreview .qrPreviewCard{background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:1.5rem}.createCouponQrPreview .qrPreviewSticky{position:sticky;top:1.5rem}.createCouponQrPreview .qrImageWrap{flex-shrink:0;padding:1rem;background:#fff;border-radius:.5rem;border:1px solid var(--border);margin-bottom:1rem}.createCouponQrPreview .qrImageWrap svg,.createCouponQrPreview .qrImageWrap canvas{display:block;width:280px;height:280px;max-width:100%}.createCouponQrPreview .qrPreviewHint{margin:0;font-size:.9rem;color:var(--text);opacity:.85}.createCouponQrPreview .qrTestLink{display:inline-block;margin-top:.75rem;font-size:.9rem;color:var(--brand-primary);text-decoration:underline}.createCouponQrPreview .qrTestLink:hover{color:var(--brand-ledger)}.couponForm{max-width:none;margin:0;background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:2rem}.formGroup{margin-bottom:2rem}.formLabel{display:block;font-weight:600;color:var(--brand-ledger);margin-bottom:.5rem;font-size:1rem}.categoriesGrid{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.75rem}.categoryCheckbox{display:inline-flex;align-items:center;gap:.625rem;padding:.5rem .875rem;background:var(--background);border:2px solid var(--border);border-radius:.5rem;cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.categoryCheckbox:hover{border-color:var(--brand-primary);background:var(--surface)}.categoryCheckbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--brand-primary);flex-shrink:0;margin:0 .5rem 0 0;vertical-align:middle}.categoryCheckbox input[type=checkbox]:checked+span{color:var(--brand-primary);font-weight:600}.categoryCheckbox span{font-size:.9rem;color:var(--text);font-weight:500;line-height:18px;vertical-align:middle}.dateAndDurationGroup{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1rem}.dateAndDurationGroup .formGroup{margin-bottom:0}.dateInput{padding:.625rem 1rem!important;font-size:1rem;height:auto}.radioGroup{display:flex;gap:1.5rem}.radioOption{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.625rem 1.25rem;border:2px solid var(--border);border-radius:.5rem;background:var(--surface);transition:all .2s ease;flex:1;justify-content:center}.radioOption:hover{border-color:var(--brand-primary);background:var(--surface-2)}.radioOption input[type=radio]{width:18px;height:18px;cursor:pointer;margin:0;accent-color:var(--brand-primary)}.radioOption input[type=radio]:checked+span{font-weight:600;color:var(--brand-primary)}.radioOption span{font-size:1rem;color:var(--text);transition:all .2s ease}.dateCalculation{margin:0 0 2rem;padding:1rem;background:var(--surface-2);border-radius:.5rem;font-size:.9rem;color:var(--text-secondary);border-left:3px solid var(--brand-primary)}@media (max-width: 768px){.dateAndDurationGroup{grid-template-columns:1fr;gap:1.5rem}.radioGroup{gap:1rem}.radioOption{padding:.75rem 1rem}}.required{color:var(--status-error)}.optional{color:var(--brand-teal);font-weight:400;font-size:.9rem}.formInput,.formTextarea{width:100%;padding:.75rem 1rem;border:1px solid var(--border);border-radius:.5rem;font-size:1rem;font-family:inherit;transition:border-color .2s;background:var(--bg)}.formInput:focus,.formTextarea:focus{outline:none;border-color:var(--brand-primary)}.fontSizeSlider{width:100%;height:8px;border-radius:5px;background:var(--surface-2);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.fontSizeSlider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--brand-primary);cursor:pointer;transition:all .2s}.fontSizeSlider::-webkit-slider-thumb:hover{background:var(--brand-button-green);transform:scale(1.1)}.fontSizeSlider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--brand-primary);cursor:pointer;border:none;transition:all .2s}.fontSizeSlider::-moz-range-thumb:hover{background:var(--brand-button-green);transform:scale(1.1)}.fontGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:.5rem;margin-bottom:1rem}.fontCard{border:2px solid var(--border);border-radius:.5rem;padding:.5rem;background:var(--surface);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;aspect-ratio:1}.fontCard:hover{border-color:var(--brand-primary);transform:scale(1.05);box-shadow:0 3px 10px #0000001a}.fontCard.selected{border-color:var(--brand-primary);background:var(--brand-listing);box-shadow:0 0 0 2px var(--brand-primary)}.fontPreview{font-size:1.5rem;font-weight:700;color:var(--brand-ledger);line-height:1;text-align:center}.formTextarea{resize:vertical;min-height:100px}.fieldHint{margin-top:.5rem;font-size:.9rem;color:var(--brand-teal)}.artworkToggle{display:flex;gap:.5rem;margin-bottom:1.5rem;border:1px solid var(--border);border-radius:.5rem;padding:.25rem;background:var(--surface-2)}.toggleBtn{flex:1;padding:.75rem 1rem;border:none;background:transparent;border-radius:.4rem;font-weight:600;cursor:pointer;transition:all .2s;color:var(--brand-ledger)}.toggleBtn:hover{background:var(--surface)}.toggleBtn.active{background:var(--brand-primary);color:var(--brand-ledger)}.templateCarousel{display:flex;gap:1rem;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;padding:.5rem 0 1.5rem;scrollbar-width:thin;scrollbar-color:var(--brand-primary) var(--surface-2)}.templateCarousel::-webkit-scrollbar{height:8px}.templateCarousel::-webkit-scrollbar-track{background:var(--surface-2);border-radius:4px}.templateCarousel::-webkit-scrollbar-thumb{background:var(--brand-primary);border-radius:4px}.templateCarousel::-webkit-scrollbar-thumb:hover{background:var(--brand-button-green)}.templateCard{min-width:180px;max-width:180px;flex-shrink:0;border:3px solid var(--border);border-radius:.75rem;padding:.75rem;background:var(--surface);cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:.5rem}.templateCard:hover{border-color:var(--brand-primary);transform:translateY(-3px);box-shadow:0 5px 15px #0000001a}.templateCard.selected{border-color:var(--brand-primary);background:var(--brand-listing);box-shadow:0 0 0 2px var(--brand-primary)}.templatePreview{width:100%;aspect-ratio:3 / 4;border-radius:.5rem;border:1px solid var(--border);object-fit:cover}.templateName{font-size:.85rem;font-weight:600;text-align:center;color:var(--brand-ledger)}.couponPreview{margin-top:2rem;padding-top:2rem;border-top:2px solid var(--border)}.previewLabel{font-size:1.1rem;font-weight:600;color:var(--brand-ledger);margin-bottom:1rem}.previewCard{max-width:400px;margin:0 auto;background:var(--surface);border:2px solid var(--brand-primary);border-radius:1rem;overflow:hidden;box-shadow:0 5px 20px #00000026}.previewTemplate{width:100%;aspect-ratio:3 / 4;position:relative;overflow:hidden}.previewTemplateImage{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}.previewOverlay{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:2rem 1.5rem;background:linear-gradient(to bottom,#0006,#0003,#0009)}.previewContent{flex:1;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;text-align:center;padding-top:1rem}.previewHeadline{font-weight:800;color:#fff;margin:0 0 1rem;text-shadow:0 3px 10px rgba(0,0,0,.8);max-width:90%;word-wrap:break-word;overflow-wrap:break-word}.previewDescription{color:#fff;margin:0;text-shadow:0 2px 8px rgba(0,0,0,.8);max-width:90%;word-wrap:break-word;overflow-wrap:break-word}.previewFooter{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-top:1rem}.previewCode{display:inline-block;padding:.4rem 1rem;background:#fffffff2;color:var(--brand-ledger);font-weight:700;font-size:.95rem;font-family:Arial,sans-serif;border-radius:.4rem;box-shadow:0 2px 8px #0000004d;letter-spacing:.05em}.previewExpiry{font-size:.95rem;font-family:Arial,sans-serif;color:#fff;font-weight:600;text-shadow:0 2px 6px rgba(0,0,0,.7);text-align:center}.uploadArea{margin-top:1rem}.fileInput{display:none}.uploadLabel{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;aspect-ratio:3 / 4;border:2px dashed var(--border);border-radius:.75rem;background:var(--bg);cursor:pointer;transition:all .2s;padding:2rem;overflow:hidden}.uploadLabel:hover{border-color:var(--brand-primary);background:var(--brand-listing)}.uploadLabel.dragging{border-color:var(--brand-primary);background:var(--brand-primary-light, rgba(76, 175, 80, .1));border-width:3px;border-style:solid}.uploadIcon{font-size:3rem;margin-bottom:1rem}.uploadText{text-align:center;color:var(--brand-ledger);font-weight:500}.uploadHint{font-size:.85rem;color:var(--brand-teal);font-weight:400}.uploadPreview{width:100%;height:100%;border-radius:.5rem;object-fit:cover}.locationInput{display:flex;gap:.75rem;margin-bottom:1rem}.locationInput .formInput{flex:1}.locationsList{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.locationItem{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--brand-listing);border:1px solid var(--border);border-radius:.5rem}.locationIcon{font-size:1.2rem}.locationText{flex:1;color:var(--brand-ledger)}.removeBtn{background:none;border:none;font-size:1.5rem;color:var(--status-error);cursor:pointer;padding:0 .5rem;line-height:1;transition:transform .2s}.removeBtn:hover{transform:scale(1.2)}.checkboxGroup{display:flex;flex-direction:column;gap:1rem}.checkboxLabel{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border:1px solid var(--border);border-radius:.5rem;cursor:pointer;transition:all .2s;background:var(--bg)}.checkboxLabel:hover{background:var(--brand-listing);border-color:var(--brand-primary)}.checkbox{width:1.25rem;height:1.25rem;margin-top:.1rem;cursor:pointer;accent-color:var(--brand-primary)}.checkboxText{flex:1;display:flex;flex-direction:column;gap:.25rem}.checkboxText strong{color:var(--brand-ledger);font-size:1rem}.checkboxText small{color:var(--brand-teal);font-size:.9rem;font-weight:400}.formActions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--border)}@media (max-width: 768px){.couponForm{padding:1.5rem}.templateCard{min-width:150px;max-width:150px}.previewCard{max-width:100%}.previewOverlay{padding:1.5rem 1rem}.previewContent{justify-content:flex-start;padding-top:.5rem}.fontGrid{grid-template-columns:repeat(auto-fill,minmax(55px,1fr))}.fontPreview{font-size:1.3rem}.locationInput{flex-direction:column}.formActions{flex-direction:column-reverse}.formActions .btn{width:100%}}.brandPreview{padding:3rem 0;background:var(--surface)}.brandTitle{text-align:center;font-size:2rem;color:var(--brand-ledger);margin-bottom:2rem}.brandSection{margin-bottom:2.5rem}.brandSection h3{font-size:1.3rem;color:var(--brand-ledger);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--brand-line)}.colorGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-bottom:1rem}.colorSwatch{aspect-ratio:1;border-radius:.75rem;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;box-shadow:0 2px 8px #0000001a}.colorLabel{font-weight:700;font-size:.9rem;margin-bottom:.25rem}.colorValue{font-size:.75rem;font-family:monospace;opacity:.9}.componentRow{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-bottom:.75rem}.accessibilityNote{background:var(--brand-listing);padding:.75rem;border-radius:.5rem;font-size:.9rem;color:var(--brand-ledger);border-left:3px solid var(--status-success);line-height:1.6}@media (max-width: 768px){.brandPreview{padding:2rem 0}.colorGrid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.componentRow{flex-direction:column;align-items:stretch}.componentRow .btn{width:100%}}.themeSwitcher{background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:2rem;margin:2rem 0}.themeSwitcherHeader{margin-bottom:2rem}.themeSwitcherHeader h3{margin:0 0 .5rem;color:var(--text);font-size:1.5rem}.themeSwitcherDescription{margin:0;color:var(--text-muted);font-size:.95rem}.themeGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-bottom:2rem}.themeCard{background:var(--surface-2);border:2px solid var(--border);border-radius:.75rem;padding:1.25rem;cursor:pointer;transition:all .3s ease;text-align:left;width:100%}.themeCard:hover{border-color:var(--green-sage);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.themeCard.active{border-color:var(--green-deep);background:var(--surface);box-shadow:0 4px 16px #2d501626}.themeCardHeader{margin-bottom:1rem}.themeCardTitle{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.themeName{font-weight:600;font-size:1.1rem;color:var(--text)}.themeActiveBadge{background:var(--green-deep);color:#fff;padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:600}.themeDescription{margin:0;font-size:.85rem;color:var(--text-muted);line-height:1.4}.themeColorPreview{display:flex;gap:.5rem;margin-top:1rem}.themeSwatch{width:40px;height:40px;border-radius:.5rem;border:2px solid rgba(0,0,0,.1);flex-shrink:0}.currentThemeInfo{background:linear-gradient(135deg,var(--green-deep),var(--green-sage));color:#fff;padding:1.5rem;border-radius:.75rem;margin-top:2rem}.currentThemeInfo h4{margin:0 0 .5rem;font-size:1.2rem}.currentThemeInfo p{margin:0 0 1rem;opacity:.9;font-size:.95rem}.themeMetadata{display:flex;gap:1.5rem;font-size:.85rem;opacity:.8}.themeId,.themeColorCount{display:flex;align-items:center}@media (max-width: 768px){.themeSwitcher{padding:1.5rem}.themeGrid{grid-template-columns:1fr}.themeMetadata{flex-direction:column;gap:.5rem}}.theme-midnight .themeSwitcher{background:var(--neutral-surface)}.theme-midnight .themeCard{background:var(--neutral-alt-surface)}.theme-midnight .themeCard:hover{border-color:var(--green-sage)}.theme-midnight .themeCard.active{border-color:var(--green-deep);background:var(--neutral-surface)}.theme-midnight .themeSwatch{border-color:#fff3}.theme-neon .themeSwitcher{background:var(--neutral-surface)}.theme-neon .themeCard{background:var(--neutral-alt-surface)}.theme-neon .themeCard:hover{border-color:var(--green-sage);box-shadow:0 0 20px #39ff144d}.theme-neon .themeCard.active{border-color:var(--green-deep);background:var(--neutral-surface);box-shadow:0 0 30px #ff006e66}.theme-neon .themeSwatch{border-color:#fff3}.theme-cosmic .themeSwitcher{background:var(--neutral-surface)}.theme-cosmic .themeCard{background:var(--neutral-alt-surface)}.theme-cosmic .themeCard:hover{border-color:var(--green-sage);box-shadow:0 0 20px #4cc9f04d}.theme-cosmic .themeCard.active{border-color:var(--green-deep);background:var(--neutral-surface);box-shadow:0 0 30px #7209b766}.theme-cosmic .themeSwatch{border-color:#fff3}.theme-galactic .themeSwitcher{background:var(--neutral-surface)}.theme-galactic .themeCard{background:var(--neutral-alt-surface)}.theme-galactic .themeCard:hover{border-color:var(--green-sage);box-shadow:0 0 20px #1e90ff4d}.theme-galactic .themeCard.active{border-color:var(--green-deep);background:var(--neutral-surface);box-shadow:0 0 30px #4b008266}.theme-galactic .themeSwatch{border-color:#fff3}.theme-gummy .themeSwitcher{background:var(--neutral-surface)}.theme-gummy .themeCard{background:var(--neutral-alt-surface)}.theme-gummy .themeCard:hover{border-color:var(--green-sage);box-shadow:0 0 20px #ff69b44d}.theme-gummy .themeCard.active{border-color:var(--green-deep);background:var(--neutral-surface);box-shadow:0 0 30px #9b30ff66}.theme-gummy .themeSwatch{border-color:#9b30ff33}.brandPage{min-height:100vh;background:var(--bg)}.brandHeader{background:linear-gradient(135deg,var(--green-deep) 0%,var(--green-moss) 50%,var(--green-sage) 100%);color:var(--button-text);padding:3rem 0;text-align:center;margin-bottom:0}.brandHeader h1{font-size:2.5rem;margin-bottom:.5rem;color:var(--button-text)}.brandHeader p{font-size:1.2rem;color:var(--button-text);opacity:.95}@media (max-width: 768px){.brandHeader h1{font-size:2rem}.brandHeader p{font-size:1rem}}.resetPasswordPage{min-height:60vh;display:flex;align-items:center;padding:4rem 0;background:var(--bg)}.resetPasswordCard{max-width:500px;margin:0 auto;padding:3rem}.resetPasswordCard h2{font-size:2rem;color:var(--brand-ledger);margin-bottom:.5rem;text-align:center}.resetPasswordSubtitle{text-align:center;color:var(--text);opacity:.8;margin-bottom:2rem}.resetPasswordCard .formGroup{margin-bottom:1.5rem}.resetPasswordCard .formGroup label{display:block;margin-bottom:.5rem;color:var(--brand-ledger);font-weight:600;font-size:.95rem}.resetPasswordCard .formGroup input{width:100%;padding:.75rem 1rem;border:1px solid var(--border);border-radius:.5rem;font-size:1rem;color:var(--text);background:var(--bg);transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.resetPasswordCard .formGroup input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #5da13e1a}.fullWidth{width:100%}@media (max-width: 768px){.resetPasswordCard{padding:2rem 1.5rem}.resetPasswordCard h2{font-size:1.5rem}}.profilePage{min-height:70vh;padding:3rem 0;background:var(--bg)}.profileHeader{display:flex;gap:2rem;align-items:flex-start;margin-bottom:3rem;padding:2rem;background:var(--surface);border-radius:1rem;border:1px solid var(--border)}.profileAvatarSection{display:flex;flex-direction:column;align-items:center;gap:1rem}.profileAvatar{width:120px;height:120px;border-radius:50%;object-fit:cover;border:4px solid var(--brand-primary)}.profileHeaderInfo{flex:1}.profileHeaderInfo h1{font-size:2.5rem;color:var(--brand-ledger);margin-bottom:.5rem}.profileAccountType{display:inline-block;padding:.35rem .75rem;background:var(--brand-listing);color:var(--brand-ledger);border-radius:999px;font-size:.9rem;font-weight:600}.profileContent{display:grid;gap:2rem}.profileCard{padding:2rem}.profileCard h2{font-size:1.8rem;color:var(--brand-ledger);margin-bottom:2rem}.profileField{margin-bottom:1.5rem}.profileField label{display:block;font-weight:600;color:var(--brand-ledger);margin-bottom:.5rem;font-size:.95rem}.profileField p{color:var(--text);font-size:1.05rem;margin:0}.profileStats{display:flex;gap:2rem;margin-bottom:1.5rem}.profileStat{display:flex;flex-direction:column;gap:.5rem}.statValue{font-size:1.8rem;font-weight:700;color:var(--brand-primary)}.couponStatsBar{display:flex;gap:1.5rem;margin-bottom:2rem;padding:1.5rem;background:var(--bg);border-radius:.75rem;justify-content:space-around}.statBox{text-align:center;flex:1}.statNumber{font-size:2.5rem;font-weight:700;color:var(--brand-primary);line-height:1;margin-bottom:.5rem}.statBox .statLabel{font-size:.9rem;color:var(--text);opacity:.8;text-transform:uppercase;letter-spacing:.05em}.claimedCouponsGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-top:1.5rem}.claimedCouponCard{background:var(--surface);border:1px solid var(--border);border-radius:.75rem;overflow:hidden;transition:transform .2s,box-shadow .2s}.claimedCouponCard:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001a}.couponImageContainer{position:relative;width:100%;aspect-ratio:3 / 4;overflow:hidden}.couponImage{width:100%;height:100%;object-fit:cover}.couponExpiredBadge,.couponRedeemedBadge{position:absolute;top:.75rem;right:.75rem;padding:.4rem .75rem;border-radius:.5rem;font-size:.85rem;font-weight:600;color:#fff}.couponExpiredBadge{background:var(--status-error)}.couponRedeemedBadge{background:var(--status-success)}.couponCardContent{padding:1.25rem}.couponHeadline{font-size:1.25rem;font-weight:700;color:var(--brand-ledger);margin:0 0 .5rem}.couponDescription{font-size:.95rem;color:var(--text);margin:0 0 1rem;line-height:1.5}.couponCode{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:var(--brand-listing);border-radius:.5rem;margin-bottom:1rem}.codeLabel{font-size:.9rem;font-weight:600;color:var(--brand-ledger)}.codeValue{font-family:Courier New,monospace;font-size:1rem;font-weight:700;color:var(--brand-primary);letter-spacing:.1em}.couponDates{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding:.75rem;background:var(--bg);border-radius:.5rem}.dateItem{display:flex;justify-content:space-between;font-size:.9rem}.dateLabel{color:var(--text);opacity:.7}.dateValue{font-weight:600;color:var(--text)}.removeCouponBtn{margin-top:.5rem;border:1px solid var(--status-error)!important;color:var(--status-error)!important;background:transparent!important}.removeCouponBtn:hover{background:var(--status-error)!important;color:#fff!important}@media (max-width: 768px){.profileHeader{flex-direction:column;align-items:center;text-align:center}.profileHeaderInfo h1{font-size:2rem}.profileCard{padding:1.5rem}.claimedCouponsGrid{grid-template-columns:1fr}}.historyModalOverlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.historyModalContent{background:var(--bg);border-radius:1rem;max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.historyModalHeader{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem 2rem;border-bottom:1px solid var(--border)}.historyModalHeader h2{margin:0 0 .25rem;font-size:1.5rem;color:var(--brand-ledger)}.historySubtitle{margin:0;font-size:.9rem;color:var(--text);opacity:.7}.historyModalClose{width:36px;height:36px;border-radius:50%;border:2px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.historyModalClose:hover{background:var(--status-error);border-color:var(--status-error);color:#fff;transform:rotate(90deg)}.historyLoading,.historyEmpty{padding:3rem 2rem;text-align:center}.historyLoading .spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--brand-primary);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1rem}.historyLoading p,.historyEmpty p{margin:0;color:var(--text);opacity:.7}.historyBody{padding:1.5rem 2rem;overflow-y:auto;flex:1}.historyNavigator{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:var(--surface);border-radius:.75rem}.historyNavButton{padding:.5rem 1rem;background:var(--brand-primary);color:#fff;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s}.historyNavButton:hover:not(:disabled){background:var(--brand-button-green);transform:translateY(-1px)}.historyNavButton:disabled{opacity:.4;cursor:not-allowed}.historyVersionInfo{display:flex;flex-direction:column;align-items:center;gap:.25rem;flex:1}.historyVersionNumber{font-weight:700;font-size:1.1rem;color:var(--brand-ledger)}.historyVersionDate{font-size:.85rem;color:var(--text);opacity:.7}.historyVersionType{padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.historyVersionType.created{background:var(--status-success);color:#fff}.historyVersionType.edited{background:var(--brand-teal);color:#fff}.historyTimeline{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:1rem;background:var(--surface);border-radius:.75rem;overflow-x:auto}.historyTimelineItem{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem;background:none;border:none;cursor:pointer;transition:all .2s;position:relative}.historyTimelineItem:not(:last-child):after{content:"";position:absolute;top:50%;right:-.5rem;width:.5rem;height:2px;background:var(--border)}.timelineDot{width:12px;height:12px;border-radius:50%;background:var(--border);transition:all .2s}.historyTimelineItem.active .timelineDot{width:16px;height:16px;background:var(--brand-primary)}.historyTimelineItem:hover .timelineDot{background:var(--brand-teal);transform:scale(1.2)}.timelineLabel{font-size:.75rem;color:var(--text);opacity:.6}.historyTimelineItem.active .timelineLabel{opacity:1;color:var(--brand-primary);font-weight:700}.historyPreview{display:grid;grid-template-columns:300px 1fr;gap:2rem}.historyPreviewImage{display:flex;align-items:flex-start;justify-content:center}.historyImage{width:100%;max-width:300px;height:auto;aspect-ratio:3 / 4;object-fit:cover;border-radius:.75rem;box-shadow:0 4px 12px #0000001a}.historyPreviewDetails{display:flex;flex-direction:column;gap:1rem}.historyDetailRow{display:flex;gap:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.historyDetailLabel{font-weight:600;color:var(--brand-ledger);min-width:120px;flex-shrink:0}.historyDetailValue{color:var(--text);word-break:break-word}.historyClaimsCount{display:flex;align-items:center;gap:.4rem;font-weight:600;color:var(--brand-primary)}.historyClaimsCount svg{color:var(--brand-teal);flex-shrink:0}.historyCurrentInfo{background:var(--brand-primary);background:linear-gradient(135deg,#5da13e1a,#4c84330d);padding:.75rem;border-radius:.5rem;border:2px solid var(--brand-primary);margin-top:.5rem}.historyCurrentClaims{color:var(--brand-primary);font-weight:700;font-size:1.05rem}.claimsDiff{margin-left:.5rem;padding:.25rem .5rem;background:var(--status-success);color:#fff;border-radius:999px;font-size:.8rem;font-weight:600;white-space:nowrap}.historyStatus{padding:.25rem .75rem;border-radius:999px;font-weight:600;font-size:.85rem;text-transform:capitalize}.historyStatus.active{background:var(--status-success);color:#fff}.historyStatus.paused,.historyStatus.inactive{background:var(--status-warning);color:var(--brand-ledger)}@media (max-width: 768px){.historyModalContent{max-height:95vh}.historyModalHeader{padding:1rem 1.5rem}.historyModalHeader h2{font-size:1.25rem}.historyBody{padding:1rem 1.5rem}.historyNavigator{flex-direction:column;gap:.75rem}.historyNavButton{width:100%}.historyPreview{grid-template-columns:1fr;gap:1.5rem}.historyPreviewImage{justify-content:center}.historyImage{max-width:250px}.historyDetailRow{flex-direction:column;gap:.25rem}.historyDetailLabel{min-width:unset}}.myCouponsPage{min-height:70vh;padding:3rem 0;background:var(--bg)}.myCouponsPage h1{font-size:2.5rem;color:var(--brand-ledger);margin-bottom:.5rem}.myCouponsPage p{color:var(--text);opacity:.8}.pageHeader{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.couponStats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:3rem}.statCard{text-align:center;padding:2rem}.statNumber{display:block;font-size:2.5rem;font-weight:700;color:var(--brand-primary);margin-bottom:.5rem}.statLabel{display:block;font-size:.95rem;color:var(--text);opacity:.7}.couponsEmpty{text-align:center;padding:4rem 2rem;background:var(--surface);border:2px dashed var(--border);border-radius:1rem;margin-top:2rem}.emptyIcon{font-size:4rem;margin-bottom:1rem}.couponsEmpty h2{font-size:1.8rem;color:var(--brand-ledger);margin-bottom:1rem}.couponsEmpty p{font-size:1.1rem;color:var(--text);margin-bottom:2rem;max-width:500px;margin-left:auto;margin-right:auto}.loadingState{text-align:center;padding:3rem;font-size:1.2rem;color:var(--brand-teal)}.couponsList{display:flex;flex-direction:column;gap:1.5rem}.couponItem{display:flex;gap:1.5rem;padding:1.5rem;transition:all .2s}.couponItem:hover{box-shadow:0 4px 12px #00000014}.couponArtwork{flex-shrink:0;width:200px;height:auto;aspect-ratio:3 / 4;border-radius:.75rem;overflow:hidden;border:1px solid var(--border)}.templateArtwork{width:100%;height:100%;object-fit:cover}.uploadedArtwork{width:100%;height:100%;object-fit:cover;display:block}.couponDetails{flex:1;display:flex;flex-direction:column;gap:1rem}.couponHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.couponHeader h3{font-size:1.3rem;color:var(--brand-ledger);margin:0;flex:1}.couponStatus{padding:.35rem .75rem;border-radius:999px;font-size:.85rem;font-weight:600;white-space:nowrap}.status-active{background:var(--status-success);color:#fff}.status-expired{background:var(--status-warning);color:var(--brand-ledger)}.status-inactive{background:var(--border);color:var(--text)}.couponDescription{color:var(--text);font-size:.95rem;line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.couponMeta{display:flex;flex-wrap:wrap;gap:1.5rem;font-size:.9rem}.metaItem{color:var(--brand-teal)}.metaItem strong{color:var(--brand-ledger);font-weight:600}.couponDetails .couponStats{display:flex;gap:1.5rem;margin:0}.statItem{display:flex;align-items:center;gap:.4rem;font-size:.9rem;color:var(--text);font-weight:500}.statItem svg{color:var(--brand-teal);opacity:.8}.couponActions{display:flex;gap:.75rem;margin-top:.5rem}@media (max-width: 768px){.myCouponsPage h1{font-size:2rem}.pageHeader{flex-direction:column;gap:1.5rem}.pageHeader .btn{width:100%}.couponStats{grid-template-columns:1fr 1fr}.couponItem{flex-direction:column}.couponArtwork{width:100%;max-width:300px;height:auto;aspect-ratio:3 / 4;margin:0 auto}.couponActions{flex-direction:column}.couponActions .btn{width:100%}}.settingsPage{min-height:70vh;padding:3rem 0;background:var(--bg)}.settingsPage h1{font-size:2.5rem;color:var(--brand-ledger);margin-bottom:2rem}.settingsTabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid var(--border);overflow-x:auto}.settingsTab{padding:1rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;font-size:1rem;font-weight:600;color:var(--text);opacity:.6;cursor:pointer;transition:var(--transition);white-space:nowrap}.settingsTab:hover{opacity:.8}.settingsTab.active{opacity:1;color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.settingsContent{display:flex;flex-direction:column;gap:2rem}.settingsCard{padding:2rem}.settingsCard h2{font-size:1.8rem;color:var(--brand-ledger);margin-bottom:2rem}.settingItem{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 0;border-bottom:1px solid var(--border)}.settingItem:last-child{border-bottom:none}.settingLabel h3{font-size:1.1rem;color:var(--brand-ledger);margin-bottom:.25rem}.settingLabel p{font-size:.95rem;color:var(--text);opacity:.7;margin:0}.settingToggle{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 0;border-bottom:1px solid var(--border)}.settingToggle:last-child{border-bottom:none}.toggle{position:relative;display:inline-block;width:50px;height:28px;flex-shrink:0}.toggle input{opacity:0;width:0;height:0}.toggleSlider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border);transition:.3s;border-radius:34px}.toggleSlider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:#fff;transition:.3s;border-radius:50%}.toggle input:checked+.toggleSlider{background-color:var(--brand-primary)}.toggle input:checked+.toggleSlider:before{transform:translate(22px)}.dangerZone{border:2px solid var(--status-error)}.dangerZone h2{color:var(--status-error)}@media (max-width: 768px){.settingsPage h1{font-size:2rem}.settingItem{flex-direction:column;align-items:flex-start;gap:1rem}.settingItem .btn{width:100%}.settingsCard{padding:1.5rem}}.adminPage{min-height:70vh;padding:3rem 0;background:var(--bg)}.adminHeader{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.adminHeader h1{font-size:2.5rem;color:var(--brand-ledger);margin-bottom:.5rem}.adminHeader p{color:var(--text);opacity:.8;margin:0}.adminLoading{text-align:center;padding:4rem 2rem}.adminLoading .spinner{width:50px;height:50px;border:4px solid var(--border);border-top-color:var(--brand-primary);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1.5rem}.adminLoading p{font-size:1.1rem;color:var(--text);opacity:.7}.adminStats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2.5rem}.adminStatCard{background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:1.5rem;display:flex;align-items:center;gap:1rem;transition:all .2s}.adminStatCard:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.statIcon{width:50px;height:50px;border-radius:.75rem;background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-button-green) 100%);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.statContent{flex:1}.statNumber{font-size:2rem;font-weight:700;color:var(--brand-ledger);line-height:1;margin-bottom:.25rem}.statLabel{font-size:.9rem;color:var(--text);opacity:.7}.adminControls{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:2rem;flex-wrap:wrap}.adminFilters{display:flex;gap:.75rem}.filterBtn{padding:.625rem 1.25rem;background:var(--surface);border:2px solid var(--border);border-radius:.5rem;color:var(--text);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s}.filterBtn:hover{border-color:var(--brand-primary);background:#5da13e0d}.filterBtn.active{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.adminSearch{position:relative;flex:1;max-width:400px}.adminSearch svg{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text);opacity:.5;pointer-events:none}.adminSearch input{width:100%;padding:.75rem 1rem .75rem 3rem;background:var(--surface);border:2px solid var(--border);border-radius:.5rem;color:var(--text);font-size:.95rem;transition:all .2s}.adminSearch input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #5da13e1a}.adminTable{background:var(--surface);border:1px solid var(--border);border-radius:1rem;overflow:hidden}.adminTable table{width:100%;border-collapse:collapse}.adminTable thead{background:var(--brand-ledger);color:#fff}.adminTable th{padding:1rem;text-align:left;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.05em}.adminTable tbody tr{border-bottom:1px solid var(--border);transition:background .15s}.adminTable tbody tr:last-child{border-bottom:none}.adminTable tbody tr:hover{background:#5da13e08}.adminTable td{padding:1rem;color:var(--text);font-size:.95rem}.emailCell{font-weight:600;color:var(--brand-teal)}.userTypeBadge{display:inline-block;padding:.35rem .75rem;border-radius:999px;font-size:.85rem;font-weight:600;text-transform:capitalize}.userTypeBadge.company{background:linear-gradient(135deg,var(--brand-copper),var(--brand-copper-aa));color:#fff}.userTypeBadge.individual{background:var(--brand-primary);color:#fff}.statCell{text-align:center;font-weight:600;color:var(--brand-ledger)}.adminEmpty{padding:3rem 2rem;text-align:center}.adminEmpty p{color:var(--text);opacity:.7;font-size:1.1rem}@media (max-width: 1200px){.adminTable{overflow-x:auto}.adminTable table{min-width:1000px}}@media (max-width: 768px){.adminHeader h1{font-size:2rem}.adminStats{grid-template-columns:1fr 1fr}.adminControls{flex-direction:column;align-items:stretch}.adminFilters{flex-wrap:wrap}.filterBtn{flex:1;min-width:100px}.adminSearch{max-width:none}.statNumber{font-size:1.75rem}.statLabel{font-size:.85rem}}@media (max-width: 480px){.adminStats{grid-template-columns:1fr}.adminStatCard{padding:1.25rem}.statIcon{width:40px;height:40px}.statIcon svg{width:20px;height:20px}}.adminQRPage{min-height:70vh;padding:2rem 0}.adminQRNav{margin-bottom:1.5rem}.adminQRHeader{margin-bottom:2rem}.adminQRHeader h1{font-size:2rem;color:var(--brand-ledger);margin:0 0 .5rem}.adminQRHeader p{color:var(--text);opacity:.8;margin:0}.adminQRLoading{text-align:center;padding:4rem}.adminQRLoading .spinner{width:48px;height:48px;border:3px solid var(--border);border-top-color:var(--brand-primary);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1rem}@keyframes spin{to{transform:rotate(360deg)}}.adminQRLayout{display:flex;gap:2rem;align-items:flex-start;margin-bottom:2rem}@media (max-width: 1024px){.adminQRLayout{flex-direction:column}}.adminQRForm{flex:1;min-width:0;background:var(--surface);border-radius:1rem;padding:2rem;box-shadow:0 4px 20px #0000000f}.qrLivePreview{flex-shrink:0;width:360px}@media (max-width: 1024px){.qrLivePreview{width:100%;order:-1}}.qrLivePreview h3{margin:0 0 1rem;font-size:1.25rem;color:var(--brand-ledger)}.qrPreviewSticky{position:sticky;top:1.5rem}.formSection{margin-bottom:1.5rem}.formSection h3{margin:0 0 .75rem;font-size:1rem;color:var(--brand-ledger)}.formSection label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--brand-ledger)}.formSection input{width:100%;padding:.75rem 1rem;border:2px solid var(--border);border-radius:.5rem;font-size:1rem}.formSection input:focus{outline:none;border-color:var(--brand-primary)}.qrStyleOpts{display:flex;flex-wrap:wrap;gap:1.25rem}.qrStyleOpts .styleRow{display:flex;flex-direction:column;gap:.35rem;min-width:180px}.qrStyleOpts .styleRow label{margin-bottom:0;font-size:.9rem}.qrStyleOpts select{padding:.6rem .75rem;border:2px solid var(--border);border-radius:.5rem;font-size:1rem;background:#fff;color:#1a1a1a;cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.qrStyleOpts select:focus{outline:none;border-color:var(--brand-primary)}.qrStyleOpts select option,.adminQRForm select,.adminQRForm select option,.advancedOpts select,.advancedOpts select option{background:#fff;color:#1a1a1a}.formHint{font-size:.9rem;color:var(--text-muted);margin:0 0 .75rem}.imageEmbedRow{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.imageUrlInput{flex:1;min-width:200px;padding:.6rem .75rem;border:2px solid var(--border);border-radius:.5rem;font-size:1rem}.imageUrlInput:focus{outline:none;border-color:var(--brand-primary)}.fileUploadBtn{margin:0;cursor:pointer}.srOnly{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.imageOptionsRow{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.imageOptionsRow .styleRow{min-width:140px}.imageOptionsRow input[type=range]{width:100px}.rangeLabel{margin-left:.5rem;font-size:.9rem;color:var(--text-muted)}.checkboxRow label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkboxRow input[type=checkbox]{width:auto}.advancedSection{margin-bottom:1.5rem}.advancedSection summary{cursor:pointer;font-weight:600;color:var(--brand-ledger);padding:.5rem 0}.advancedOpts{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem 0}.advancedOpts .styleRow{min-width:180px}.sizeRow{display:flex;gap:1rem}.sizeRow>div{display:flex;flex-direction:column;gap:.35rem}.sizeRow input{width:80px;padding:.5rem}.gradientRow{flex-direction:column;min-width:100%}.gradientGrid{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.5rem}.gradientPicker{display:flex;flex-direction:column;gap:.35rem}.gradientPickerWrap{display:flex;align-items:center;gap:.35rem}.gradientPickerWrap input[type=color]{width:40px;height:32px;padding:2px;border:2px solid var(--border);border-radius:.5rem;cursor:pointer;background:#fff}.gradientPickerWrap input[type=color]::-webkit-color-swatch-wrapper{padding:2px}.gradientPickerWrap .gradientClear{min-width:28px;padding:.35rem .5rem;font-size:1.1rem;line-height:1}.gradientPickerWrap .gradientDirection{padding:.35rem .5rem;font-size:.85rem;border:2px solid var(--border);border-radius:.5rem;background:#fff;color:#1a1a1a;cursor:pointer;min-width:0}.gradientPickerWrap .gradientDirection option{background:#fff;color:#1a1a1a}.gradientPickerFull{min-width:100%}.gradientPickerFull .gradientPickerWrap{flex-wrap:wrap;gap:.5rem}.gradientPickerWrap .gradientRotationDeg{width:48px;padding:.35rem .5rem;font-size:.85rem}.gradientPickerWrap .gradientType{padding:.35rem .5rem;font-size:.85rem;min-width:70px}.gradientPickerWrap .gradientAdd,.gradientPickerWrap .gradientRemove{min-width:28px;padding:.35rem .5rem}.colorPickerRow .colorPickerWrap{display:flex;align-items:center;gap:.5rem}.colorPickerWrap input[type=color]{width:44px;height:36px;padding:2px;border:2px solid var(--border);border-radius:.5rem;cursor:pointer;background:#fff}.colorPickerWrap input[type=color]::-webkit-color-swatch-wrapper{padding:2px}.colorPickerWrap .colorHexInput{flex:1;min-width:90px;padding:.5rem .75rem;font-family:monospace}.tierTabs{display:flex;gap:1rem;flex-wrap:wrap}.tierTab{flex:1;min-width:140px;padding:1rem 1.25rem;border:2px solid var(--border);border-radius:.75rem;background:var(--bg);cursor:pointer;text-align:left;transition:all .2s}.tierTab:hover{border-color:var(--brand-primary)}.tierTab.active{border-color:var(--brand-primary);background:color-mix(in srgb,var(--brand-primary) 10%,white)}.tierLabel{display:block;font-weight:700;font-size:1rem;color:var(--brand-ledger)}.tierDesc{display:block;font-size:.85rem;color:var(--text-muted);margin-top:.25rem}.formActions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem}.qrPreview{margin-bottom:2rem}.qrPreview h3{margin:0 0 1rem;font-size:1.25rem;color:var(--brand-ledger)}.qrPreviewCard{display:flex;gap:2rem;align-items:flex-start;flex-wrap:wrap;background:var(--surface);padding:2rem;border-radius:1rem;box-shadow:0 4px 20px #0000000f}.qrImageWrap{flex-shrink:0;padding:1rem;background:#fff;border-radius:.5rem;border:1px solid var(--border);min-width:300px;min-height:300px}.qrImageWrap svg,.qrImageWrap canvas{display:block;width:300px;height:300px;max-width:100%}.qrDetails{flex:1;min-width:200px}.qrUrl{font-family:monospace;font-size:1rem;color:var(--brand-primary);word-break:break-all;margin-bottom:.5rem}.qrKey{font-size:.95rem;margin-bottom:.5rem}.qrKey code{background:var(--brand-listing);padding:.2rem .5rem;border-radius:.25rem}.qrSpec{font-size:.85rem;color:var(--text-muted);margin:.5rem 0 0}.recentLinks{background:var(--surface);border-radius:1rem;padding:2rem;box-shadow:0 4px 20px #0000000f}.recentLinks h3{margin:0 0 1rem;font-size:1.25rem;color:var(--brand-ledger)}.linksTable{width:100%;border-collapse:collapse}.linksTable th,.linksTable td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border)}.linksTable th{background:var(--brand-listing);font-weight:600;color:var(--brand-ledger)}.linksTable td code{background:var(--brand-listing);padding:.2rem .5rem;border-radius:.25rem}.linksTable a{color:var(--brand-primary);word-break:break-all}.emptyState{color:var(--text-muted);padding:2rem;text-align:center}@media (max-width: 768px){.qrPreviewCard{flex-direction:column}.qrImageWrap img{width:280px;height:280px}.linksTable{font-size:.9rem}.linksTable th,.linksTable td{padding:.5rem}}.tktknLanding{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:2rem}.tktknLoader,.tktknNotFound{text-align:center}.tktknSpinner{width:48px;height:48px;border:3px solid var(--border);border-top-color:var(--brand-primary);border-radius:50%;animation:tktknSpin .8s linear infinite;margin:0 auto 1.5rem}@keyframes tktknSpin{to{transform:rotate(360deg)}}.tktknLoader p,.tktknNotFound p{color:var(--text-muted);margin:0 0 1rem}.tktknNotFound h1{font-size:1.75rem;color:var(--brand-ledger);margin:0 0 .5rem}.feedback-button{position:fixed;bottom:2rem;right:2rem;width:60px;height:60px;border-radius:50%;background:var(--brand-primary);color:#fff;border:none;font-size:1.5rem;cursor:pointer;box-shadow:0 4px 20px #0003;transition:all .3s ease;z-index:999}.feedback-button:hover{transform:scale(1.1);box-shadow:0 6px 30px #0000004d}.feedback-modal{position:fixed;bottom:6rem;right:2rem;width:380px;max-width:calc(100vw - 2rem);background:var(--surface);border-radius:1rem;box-shadow:0 8px 40px #0003;z-index:1000;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.feedback-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border)}.feedback-header h3{margin:0;font-size:1.2rem;color:var(--brand-ledger)}.feedback-close{background:none;border:none;font-size:2rem;color:var(--text);cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.feedback-close:hover{background:var(--surface-2)}.feedback-form{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.feedback-type{display:flex;gap:1rem;flex-wrap:wrap}.feedback-type label{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:2px solid var(--border);border-radius:.5rem;cursor:pointer;transition:all .2s;font-size:.9rem}.feedback-type label:hover{border-color:var(--brand-primary);background:var(--surface-2)}.feedback-type input[type=radio]{cursor:pointer}.feedback-type input[type=radio]:checked+label,.feedback-type label:has(input[type=radio]:checked){border-color:var(--brand-primary);background:rgba(var(--brand-primary-rgb),.1)}.feedback-reporter{display:flex;flex-direction:column;gap:.5rem}.feedback-reporter label{font-size:.9rem;font-weight:600;color:var(--brand-ledger)}.feedback-reporter select{width:100%;padding:.75rem;border:2px solid var(--border);border-radius:.5rem;font-family:inherit;font-size:.95rem;background:var(--surface);color:var(--text);cursor:pointer;transition:border-color .2s}.feedback-reporter select:focus{outline:none;border-color:var(--brand-primary)}.feedback-priority{display:flex;flex-direction:column;gap:.5rem}.feedback-priority .priority-label{font-size:.9rem;font-weight:600;color:var(--brand-ledger)}.priority-options{display:flex;gap:1rem;flex-wrap:wrap}.priority-options label{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:2px solid var(--border);border-radius:.5rem;cursor:pointer;transition:all .2s;font-size:.9rem}.priority-options label:hover{border-color:var(--brand-primary);background:var(--surface-2)}.priority-options input[type=radio]{cursor:pointer}.priority-options input[type=radio]:checked+label,.priority-options label:has(input[type=radio]:checked){border-color:var(--brand-primary);background:rgba(var(--brand-primary-rgb),.1)}.feedback-form textarea{width:100%;padding:.75rem;border:2px solid var(--border);border-radius:.5rem;font-family:inherit;font-size:.95rem;resize:vertical;transition:border-color .2s}.feedback-form textarea:focus{outline:none;border-color:var(--brand-primary)}.feedback-submit{padding:.75rem 1.5rem;background:var(--brand-primary);color:#fff;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s}.feedback-submit:hover:not(:disabled){background:var(--brand-button-green);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.feedback-submit:disabled{opacity:.6;cursor:not-allowed}.feedback-success{padding:3rem 1.5rem;text-align:center}.success-icon{width:60px;height:60px;margin:0 auto 1rem;background:var(--brand-button-green);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;animation:scaleIn .4s ease}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.feedback-success p{margin:0;font-size:1.1rem;color:var(--brand-ledger)}@media (max-width: 768px){.feedback-button{bottom:1rem;right:1rem;width:50px;height:50px;font-size:1.25rem}.feedback-modal{bottom:5rem;right:1rem;left:1rem;width:auto}}.readOnlyBanner{position:fixed;top:1rem;right:1rem;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.4rem .8rem;border-radius:.5rem;z-index:9999;box-shadow:0 2px 8px #00000026;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.readOnlyBanner--dev{background:linear-gradient(135deg,#fff9e6,#fff4d4);color:#8b7000;border:1px solid #E6D89F}.readOnlyBanner--preview{background:linear-gradient(135deg,#ffe8e8,#ffd6d6);color:#a64034;border:1px solid #E6B8B8}.readOnlyBanner svg{flex-shrink:0}.readOnlyBannerLabel{font-size:.75rem;font-weight:700;letter-spacing:.05em}@media (max-width: 768px){.readOnlyBanner{top:.5rem;right:.5rem;padding:.35rem .7rem;gap:.4rem}.readOnlyBanner svg{width:16px;height:16px}.readOnlyBannerLabel{font-size:.7rem}}.app{min-height:100vh;display:flex;flex-direction:column;background:var(--bg)}main{flex:1}*{margin:0;padding:0;box-sizing:border-box}:root{--neutral-bg-light: #F5F3EE;--neutral-surface: #FFFFFF;--neutral-alt-surface: #EAE6DD;--neutral-border: #D4CEC0;--neutral-text-primary: #2C2416;--neutral-text-muted: #6B5E4F;--green-deep: #2D5016;--green-sage: #4A7C3B;--green-olive: #6B8E23;--green-moss: #556B2F;--green-tint: #E8EFE3;--purple-natural: #6B4E71;--purple-tint: #EDE8EF;--amber-warm: #D4A574;--amber-tint: #F7F0E7;--brown-rich: #6B4423;--orange-natural: #CC8B3A;--button-bg: #2D5016;--button-text: #FFFFFF;--button-hover: #3D6520;--button-disabled: #8B9A7A;--status-success: #16A34A;--status-warning: #F59E0B;--status-danger: #DC2626;--status-info: #2563EB;--bg: var(--neutral-bg-light);--surface: var(--neutral-surface);--surface-2: var(--neutral-alt-surface);--text: var(--neutral-text-primary);--text-muted: var(--neutral-text-muted);--border: var(--neutral-border);--link: var(--green-sage);--link-alt: var(--green-deep);--link-hover: var(--green-olive);--btn-primary-bg: var(--button-bg);--btn-primary-text: var(--button-text);--btn-primary-hover: var(--button-hover);--btn-primary-disabled: var(--button-disabled);--btn-secondary-bg: transparent;--btn-secondary-text: var(--green-sage);--btn-secondary-border: var(--green-sage);--btn-accent-bg: var(--purple-natural);--btn-accent-text: #FFFFFF;--badge-featured: var(--purple-natural);--badge-featured-text: #FFFFFF;--badge-featured-tint: var(--purple-tint);--badge-premium: var(--amber-warm);--badge-premium-text: var(--neutral-text-primary);--badge-premium-tint: var(--amber-tint);--badge-active: var(--green-sage);--badge-active-text: #FFFFFF;--badge-active-tint: var(--green-tint);--brand-primary: var(--green-sage);--brand-ledger: var(--neutral-text-primary);--brand-paper: var(--neutral-bg-light);--brand-line: var(--neutral-border);--brand-listing: var(--neutral-alt-surface);--brand-teal: var(--green-sage);--brand-link-green: var(--green-deep);--brand-button-green: var(--button-bg);--brand-copper: var(--amber-warm);--brand-copper-aa: var(--amber-warm);--brand-verified: var(--green-sage);--status-error: var(--status-danger);--promo-bg: var(--purple-natural);--promo-text: #FFFFFF;--verified-bg: var(--green-sage);--verified-text: #FFFFFF;--primary-color: var(--green-sage);--secondary-color: var(--neutral-text-muted);--accent-color: var(--purple-natural);--text-color: var(--text);--light-bg: var(--surface-2);--white: #ffffff;--shadow: 0 2px 8px rgba(45, 36, 22, .08);--transition: all .3s ease}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;background:var(--bg);color:var(--text);overflow-x:hidden}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:3px solid color-mix(in srgb,var(--brand-teal) 70%,white);outline-offset:2px}.container{max-width:1200px;margin:0 auto;padding:0 20px}button{cursor:pointer;font-family:inherit}input,textarea{font-family:inherit}.btn{font-size:1.1rem;font-weight:600;line-height:1;padding:.75rem 1.1rem;border-radius:.8rem;border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;-webkit-user-select:none;user-select:none;transition:all .2s ease}.btnPrimary{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btnPrimary:hover:not(:disabled){background:var(--btn-primary-hover)}.btnPrimaryStrong{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btnPrimaryStrong:hover:not(:disabled){background:var(--btn-primary-hover)}.btnSecondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-text);border-color:var(--btn-secondary-border)}.btnSecondary:hover:not(:disabled){background:var(--green-tint)}.btnAccent{background:var(--btn-accent-bg);color:var(--btn-accent-text)}.btnAccent:hover:not(:disabled){filter:brightness(1.1)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{background:var(--btn-primary-disabled);color:var(--neutral-text-muted);cursor:not-allowed;transform:none}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .55rem;border-radius:999px;font-size:.85rem;font-weight:700;letter-spacing:.02em}.badgePromo,.badgeFeatured{background:var(--badge-featured);color:var(--badge-featured-text)}.badgePremium,.badgeTopShelf{background:var(--badge-premium);color:var(--badge-premium-text)}.badgeVerified,.badgeActive{background:var(--badge-active);color:var(--badge-active-text)}.badgeSuccess{background:var(--status-success);color:#fff}.badgeWarning{background:var(--status-warning);color:var(--neutral-text-primary)}.badgeDanger{background:var(--status-danger);color:#fff}.badgeInfo{background:var(--status-info);color:#fff}.card{background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:1rem}.rowHover{transition:background .15s ease}.rowHover:hover{background:var(--surface-2)}.alert{border-radius:1rem;border:1px solid var(--border);padding:.75rem 1rem;background:var(--surface);display:flex;align-items:center;gap:.5rem}.alertSuccess{border-color:var(--status-success);background:color-mix(in srgb,var(--status-success) 8%,var(--surface))}.alertWarning{border-color:var(--status-warning);background:color-mix(in srgb,var(--status-warning) 8%,var(--surface))}.alertError{border-color:var(--status-error);background:color-mix(in srgb,var(--status-error) 8%,var(--surface))}.textLedger{color:var(--brand-ledger)}.textLinkAlt{color:var(--link-alt)}.borderLine{border-color:var(--border)}
