.cart-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#00000080;z-index:2000}.cart-drawer{position:fixed;top:0;right:0;width:100%;max-width:400px;height:100vh;background-color:var(--bg-white);box-shadow:-5px 0 15px #0000001a;z-index:2001;display:flex;flex-direction:column;animation:slideIn .3s ease forwards}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.cart-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #eee}.cart-header h2{font-family:Playfair Display,serif;color:var(--primary-color);margin:0}.close-btn{background:none;border:none;font-size:2rem;color:var(--text-light);cursor:pointer;padding:0;line-height:1}.close-btn:hover{color:var(--primary-color)}.cart-items{flex:1;overflow-y:auto;padding:1.5rem}.empty-cart{text-align:center;color:var(--text-light);margin-top:2rem}.cart-item{display:flex;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #eee}.cart-item-image{width:80px;height:80px;object-fit:cover;border-radius:6px;background-color:#f9f9f9}.cart-item-details{flex:1;display:flex;flex-direction:column}.cart-item-name{font-weight:600;color:var(--primary-color);margin-bottom:.25rem}.cart-item-price{color:var(--text-dark);font-weight:500;margin-bottom:.75rem}.cart-item-actions{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.quantity-controls{display:flex;align-items:center;gap:.5rem;background-color:#f5f5f5;border-radius:4px;padding:.25rem}.quantity-controls button{background:none;border:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700;color:var(--text-dark)}.quantity-controls button:hover{background-color:#e0e0e0;border-radius:4px}.remove-btn{background:none;border:none;color:#d32f2f;font-size:.85rem;cursor:pointer;text-decoration:underline}.cart-footer{padding:1.5rem;border-top:1px solid #eee;background-color:var(--bg-light)}.cart-promo-badge{background-color:#e6f4ea;color:#137333;border:1px solid #34a853;border-radius:6px;padding:.45rem .75rem;font-size:.85rem;font-weight:600;margin-bottom:.85rem;text-align:center}.cart-price-breakdown{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem}.cart-price-row{display:flex;justify-content:space-between;align-items:center}.cart-subtotal-row{color:#666;font-size:.95rem}.cart-old-total{text-decoration:line-through;color:#888}.cart-discount-row{color:#137333;font-weight:600;font-size:.95rem}.cart-discount-amount{font-weight:700}.cart-total-row{font-size:1.25rem;font-weight:700;color:var(--primary-color);padding-top:.5rem;border-top:1px dashed #ddd;margin-top:.25rem}.cart-final-total{color:#00352a;font-size:1.35rem}.cart-total{display:flex;justify-content:space-between;align-items:center;font-size:1.25rem;font-weight:600;color:var(--primary-color);margin-bottom:1.5rem}.checkout-btn{width:100%;background-color:var(--primary-color);color:#fff;border:none;padding:1rem;border-radius:6px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease}.checkout-btn:hover{background-color:#333;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.packing-slip-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;justify-content:center;align-items:center;padding:1.5rem;overflow-y:auto}.packing-slip-dialog{background:#fff;width:100%;max-width:650px;border-radius:12px;box-shadow:0 20px 40px #0003;display:flex;flex-direction:column;max-height:90vh;overflow:hidden}.packing-slip-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.75rem;background:#fbf9f6;border-bottom:1px solid #eee}.packing-slip-modal-header h3{margin:0;font-size:1.25rem;color:#1a1a1a}.packing-slip-actions-top{display:flex;gap:.75rem;align-items:center}.slip-btn-print{background:#1a1a1a;color:#fff;border:none;padding:.5rem 1.1rem;border-radius:6px;font-weight:600;font-size:.9rem;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;transition:background .2s}.slip-btn-print:hover{background:#333}.slip-btn-bring-pdf{background:#e6f4ea;color:#137333;border:1px solid #34a853;padding:.5rem 1rem;border-radius:6px;font-weight:600;font-size:.88rem;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}.slip-btn-bring-pdf:hover{background:#ceead6}.slip-btn-close{background:none;border:none;font-size:1.5rem;line-height:1;color:#666;cursor:pointer;padding:.25rem .5rem}.slip-btn-close:hover{color:#000}.packing-slip-content{padding:2rem;overflow-y:auto;background:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#1a1a1a}.packing-slip-sheet{border:2px dashed #e0deda;padding:2rem;border-radius:8px;background:#fff}.slip-top-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;border-bottom:2px solid #1a1a1a;padding-bottom:1.25rem}.slip-sender h2{font-size:1.4rem;margin:0 0 .35rem;color:#1a1a1a}.slip-sender p{margin:0;font-size:.85rem;color:#555;line-height:1.4}.slip-meta{text-align:right;font-size:.85rem}.slip-meta .slip-order-id{font-weight:700;font-size:1.1rem;color:#1a1a1a;margin-bottom:.25rem}.slip-meta .slip-date{color:#666}.slip-status-badge{display:inline-block;margin-top:.5rem;background:#e6f4ea;color:#137333;padding:.25rem .6rem;border-radius:4px;font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.slip-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:1.5rem;margin-bottom:2rem}.slip-recipient-box{background:#fbf9f6;border:1px solid #e5e2dc;border-radius:8px;padding:1.25rem}.slip-box-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:#777;font-weight:700;margin-bottom:.6rem}.slip-recipient-name{font-size:1.15rem;font-weight:700;color:#1a1a1a;margin-bottom:.35rem}.slip-recipient-address{font-size:.95rem;color:#333;line-height:1.4;margin-bottom:.5rem}.slip-recipient-contact{font-size:.85rem;color:#666}.slip-bring-box{background:#f5f8f5;border:1px solid #cce4d2;border-radius:8px;padding:1.25rem;display:flex;flex-direction:column;justify-content:space-between}.slip-carrier-name{font-size:1.05rem;font-weight:700;color:#137333;display:flex;align-items:center;gap:.4rem}.slip-bring-number{font-family:monospace;font-size:1rem;font-weight:700;color:#1a1a1a;background:#fff;padding:.4rem .6rem;border-radius:4px;border:1px solid #ddd;margin:.5rem 0;display:inline-block;word-break:break-all}.slip-items-section h4{margin:0 0 .75rem;font-size:.95rem;text-transform:uppercase;letter-spacing:.05em;color:#555}.slip-items-table{width:100%;border-collapse:collapse;margin-bottom:1.5rem}.slip-items-table th{background:#f7f7f7;text-align:left;padding:.6rem .75rem;font-size:.8rem;text-transform:uppercase;color:#666;border-bottom:1px solid #ddd}.slip-items-table td{padding:.75rem;font-size:.9rem;border-bottom:1px solid #eee;color:#222}.slip-checkbox{width:20px;height:20px;border:2px solid #aaa;border-radius:3px;display:inline-block;vertical-align:middle}.slip-summary-row{display:flex;justify-content:flex-end;gap:2rem;padding-top:1rem;font-size:.9rem;border-top:2px solid #1a1a1a}.slip-total-amount{font-size:1.1rem;font-weight:700;color:#1a1a1a}.slip-footer-note{margin-top:2rem;text-align:center;font-size:.8rem;color:#888;font-style:italic}@media print{body *{visibility:hidden}.packing-slip-backdrop{position:static;background:transparent;padding:0;margin:0;overflow:visible}.packing-slip-dialog{max-width:100%;box-shadow:none;border:none;max-height:none;overflow:visible}.packing-slip-modal-header{display:none!important}.packing-slip-content,.packing-slip-content *{visibility:visible}.packing-slip-content{position:absolute;left:0;top:0;width:100%;padding:0;margin:0}.packing-slip-sheet{border:none;padding:0;margin:0}}.booking-calendar-container{background:#fff;border-radius:12px;border:1px solid #e8e5df;padding:1.5rem;box-shadow:0 4px 12px #00000008}.calendar-top-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1.25rem;border-bottom:1px solid #eee;margin-bottom:1.5rem}.calendar-date-nav{display:flex;align-items:center;gap:.5rem}.cal-nav-btn{background:#fbf9f6;border:1px solid #dcd7ce;color:#1a1a1a;padding:.45rem .85rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.cal-nav-btn:hover{background:#ece6dd}.cal-date-input{border:1px solid #dcd7ce;padding:.45rem .75rem;border-radius:6px;font-size:.95rem;font-family:inherit;font-weight:600;color:#1a1a1a;background:#fbf9f6}.calendar-actions-right{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.cal-btn-primary{background:#1a1a1a;color:#fff;border:none;padding:.5rem 1.1rem;border-radius:6px;font-weight:600;font-size:.9rem;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;transition:background .2s}.cal-btn-primary:hover{background:#333}.cal-btn-secondary{background:#fbf9f6;color:#1a1a1a;border:1px solid #dcd7ce;padding:.5rem 1rem;border-radius:6px;font-weight:600;font-size:.88rem;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;transition:all .2s}.cal-btn-secondary:hover{background:#ece6dd}.calendar-empty-state{text-align:center;padding:4rem 1rem;color:#777}.calendar-empty-state h4{margin:0 0 .5rem;font-size:1.2rem;color:#1a1a1a}.calendar-timeline{display:flex;flex-direction:column;gap:.85rem}.appointment-card{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;background:#fdfcfb;border:1px solid #e8e4dc;border-left:4px solid #1a1a1a;border-radius:8px;padding:1rem 1.25rem;transition:box-shadow .2s}.appointment-card:hover{box-shadow:0 4px 10px #0000000a}.appointment-card.status-COMPLETED{border-left-color:#34a853;background:#fafffb}.appointment-card.status-CANCELLED{border-left-color:#999;opacity:.65;background:#f9f9f9}.appointment-card.status-NO_SHOW{border-left-color:#d93025;background:snow}.app-time-badge{font-size:1.1rem;font-weight:700;color:#1a1a1a;min-width:130px}.app-time-duration{font-size:.8rem;font-weight:400;color:#666;display:block}.app-details{flex:1;min-width:220px}.app-treatment-name{font-size:1.05rem;font-weight:700;color:#1a1a1a;margin-bottom:.25rem}.app-customer-info{font-size:.9rem;color:#444}.app-customer-info span{color:#777;margin-left:.5rem}.app-therapist-badge{display:inline-block;font-size:.8rem;background:#ece6dd;color:#1a1a1a;padding:.15rem .5rem;border-radius:4px;font-weight:600;margin-top:.35rem}.app-status-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.app-badge-status{padding:.25rem .6rem;border-radius:4px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.app-badge-status.CONFIRMED{background:#e6f4ea;color:#137333}.app-badge-status.COMPLETED{background:#e8f0fe;color:#1a73e8}.app-badge-status.CANCELLED{background:#f1f3f4;color:#5f6368}.app-badge-status.NO_SHOW{background:#fdecea;color:#d93025}.app-action-btn{background:#fff;border:1px solid #dcd7ce;color:#1a1a1a;font-size:.82rem;font-weight:600;padding:.4rem .75rem;border-radius:6px;cursor:pointer;transition:all .2s}.app-action-btn:hover{background:#f5f2ec}.app-action-btn.complete:hover{background:#e6f4ea;color:#137333;border-color:#34a853}.app-action-btn.cancel:hover{background:#fdecea;color:#d93025;border-color:#d93025}.cal-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1.5rem}.cal-modal-box{background:#fff;border-radius:12px;max-width:550px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #00000040;padding:2rem}.cal-modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding-bottom:1rem;margin-bottom:1.5rem}.cal-modal-header h3{margin:0;font-size:1.3rem;color:#1a1a1a}.cal-form-group{margin-bottom:1.25rem}.cal-form-group label{display:block;font-size:.85rem;font-weight:600;color:#333;margin-bottom:.35rem}.cal-form-group input,.cal-form-group select,.cal-form-group textarea{width:100%;padding:.65rem .85rem;border:1px solid #dcd7ce;border-radius:6px;font-size:.95rem;font-family:inherit;background:#fbf9f6;box-sizing:border-box}.cal-form-group input:focus,.cal-form-group select:focus,.cal-form-group textarea:focus{outline:none;border-color:#1a1a1a;background:#fff}.cal-modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.75rem}.therapist-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;justify-content:center;align-items:center;padding:1.5rem}.therapist-modal-dialog{background:#fff;width:100%;max-width:680px;max-height:90vh;border-radius:12px;box-shadow:0 20px 40px #0003;display:flex;flex-direction:column;overflow:hidden}.therapist-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.75rem;background:#fbf9f6;border-bottom:1px solid #eee}.therapist-modal-header h3{margin:0;font-size:1.25rem;color:#1a1a1a}.therapist-modal-body{padding:1.75rem;overflow-y:auto;flex:1}.therapist-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.therapist-card-row{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;background:#fbf9f6;border:1px solid #e8e4dc;border-radius:8px}.therapist-info h4{margin:0 0 .25rem;font-size:1rem;color:#1a1a1a}.therapist-info p{margin:0;font-size:.82rem;color:#666}.therapist-edit-form{border-top:2px solid #1a1a1a;padding-top:1.5rem;margin-top:1rem}.therapist-edit-form h4{margin:0 0 1rem;font-size:1.1rem;color:#1a1a1a}.schedule-row{display:grid;grid-template-columns:100px 1fr 1fr;align-items:center;gap:.75rem;margin-bottom:.5rem;padding:.4rem .5rem;background:#fdfcfb;border:1px solid #eee;border-radius:6px}.schedule-day-label{font-weight:600;font-size:.85rem;color:#333}.booking-page-container{max-width:900px;margin:2.5rem auto 5rem;padding:0 1.5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#1a1a1a}.booking-header{text-align:center;margin-bottom:3rem}.booking-header h1{font-size:2.4rem;font-weight:700;color:#1a1a1a;margin:0 0 .5rem;letter-spacing:-.02em}.booking-header p{color:#666;font-size:1.1rem;margin:0}.booking-steps-nav{display:flex;justify-content:space-between;align-items:center;position:relative;margin-bottom:3rem;max-width:600px;margin-left:auto;margin-right:auto}.booking-steps-nav:before{content:"";position:absolute;top:18px;left:30px;right:30px;height:2px;background:#e8e4dc;z-index:1}.step-indicator{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:.5rem;background:#fff;padding:0 .5rem}.step-bubble{width:36px;height:36px;border-radius:50%;background:#fbf9f6;border:2px solid #dcd7ce;color:#666;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:.95rem;transition:all .25s}.step-indicator.active .step-bubble{background:#1a1a1a;border-color:#1a1a1a;color:#fff}.step-indicator.completed .step-bubble{background:#34a853;border-color:#34a853;color:#fff}.step-label{font-size:.8rem;font-weight:600;color:#777}.step-indicator.active .step-label{color:#1a1a1a}.booking-category-tabs{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:1rem;margin-bottom:1.5rem}.category-tab-btn{background:#fbf9f6;border:1px solid #dcd7ce;color:#1a1a1a;padding:.5rem 1rem;border-radius:20px;font-weight:600;font-size:.88rem;cursor:pointer;white-space:nowrap;transition:all .2s}.category-tab-btn.active{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.treatments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1rem}.treatment-select-card{background:#fff;border:2px solid #e8e4dc;border-radius:10px;padding:1.25rem;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;transition:all .2s ease}.treatment-select-card:hover{border-color:#1a1a1a;transform:translateY(-2px);box-shadow:0 6px 15px #0000000a}.treatment-select-card.selected{border-color:#1a1a1a;background:#fbf9f6}.treatment-card-header h3{margin:0 0 .35rem;font-size:1.1rem;color:#1a1a1a}.treatment-card-meta{display:flex;justify-content:space-between;font-size:.9rem;color:#555;margin-top:1rem;padding-top:.75rem;border-top:1px solid #eee}.treatment-price{font-weight:700;color:#1a1a1a}.therapist-selection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.therapist-select-card{background:#fff;border:2px solid #e8e4dc;border-radius:10px;padding:1.25rem;text-align:center;cursor:pointer;transition:all .2s}.therapist-select-card:hover{border-color:#1a1a1a}.therapist-select-card.selected{border-color:#1a1a1a;background:#fbf9f6}.date-slots-container{display:grid;grid-template-columns:320px 1fr;gap:2rem}@media(max-width:768px){.date-slots-container{grid-template-columns:1fr}}.slots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.75rem}.time-slot-btn{background:#fff;border:1px solid #dcd7ce;padding:.65rem .5rem;border-radius:8px;font-size:.95rem;font-weight:600;color:#1a1a1a;cursor:pointer;transition:all .2s}.time-slot-btn:hover{border-color:#1a1a1a;background:#fbf9f6}.time-slot-btn.selected{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.booking-summary-box{background:#fbf9f6;border:1px solid #e8e4dc;border-radius:10px;padding:1.5rem;margin-bottom:2rem}.booking-summary-row{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.95rem}.booking-summary-total{font-size:1.2rem;font-weight:700;color:#1a1a1a;border-top:2px solid #1a1a1a;padding-top:.75rem;margin-top:.75rem}.booking-nav-buttons{display:flex;justify-content:space-between;margin-top:2.5rem}.booking-success-box{text-align:center;background:#fff;border:2px solid #e8e4dc;border-radius:12px;padding:3rem 2rem;max-width:600px;margin:0 auto}.success-icon-badge{width:64px;height:64px;background:#e6f4ea;color:#137333;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 1.5rem}:root{--primary-color: var(--color-primary, #000000);--primary-light: var(--color-accent, #333333);--accent-color: var(--color-accent, #333333);--bg-light: var(--color-light-bg, #f5f5f5);--bg-white: var(--color-white, #ffffff);--text-light: #666666}.login-container{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:4rem 2rem;background-color:var(--bg-light)}.login-card{background-color:var(--bg-white);padding:3rem;border-radius:12px;box-shadow:0 10px 30px #0000000d;width:100%;max-width:450px}.login-card h2{color:var(--primary-color);margin-bottom:.5rem;text-align:center;font-family:Playfair Display,serif}.login-subtitle{color:var(--text-light);text-align:center;margin-bottom:2rem;font-size:.95rem}.login-register-link{color:var(--color-primary, #00352A);font-weight:700;text-decoration:underline;text-underline-offset:3px;transition:all .2s ease-in-out;display:inline-block}.login-register-link:hover{color:var(--color-accent, #c49226);text-decoration-color:var(--color-accent, #c49226);transform:translate(2px)}.login-error{background-color:#fdeaea;color:#d32f2f;padding:1rem;border-radius:6px;margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.login-error a{color:#b71c1c;text-decoration:underline;word-break:break-all}.login-error a:hover{color:#7f0000}.login-success{background-color:#edf7ed;color:#2e7d32;padding:1rem;border-radius:6px;margin-bottom:1.5rem;font-size:.9rem}.login-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:var(--primary-color);font-weight:500;font-size:.9rem}.form-group input{padding:.8rem 1rem;border:1px solid #e0e0e0;border-radius:6px;font-family:inherit;font-size:1rem;transition:all .3s ease;background-color:#fafafa;color:#333}.form-group input::placeholder{color:#a0a0a0}.form-group input:placeholder-shown{border-left:4px solid #ffb3c7}.form-group input:not(:placeholder-shown){background-color:#fff;border-color:#888;border-left:4px solid #4CAF50;font-weight:500;color:#000}.form-group input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #d4af3733}.login-actions{display:flex;justify-content:flex-end}.forgot-password{background:transparent;border:none;color:var(--color-primary, #00352A);font-size:.88rem;font-weight:500;cursor:pointer;padding:.2rem 0;transition:all .2s ease-in-out;text-decoration:none;opacity:.85;font-family:inherit}.forgot-password:hover{color:var(--color-primary, #00352A);opacity:1;text-decoration:underline;text-underline-offset:4px}.forgot-password:focus-visible{outline:2px solid var(--color-primary, #00352A);outline-offset:2px;border-radius:2px}.login-button{background-color:var(--primary-color);color:#fff;border:none;padding:1rem;border-radius:6px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;margin-top:1rem}.login-button:hover:not(:disabled){background-color:var(--primary-light);transform:translateY(-2px);box-shadow:0 4px 12px #12262033}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-footer{margin-top:2rem;text-align:center;font-size:.9rem;color:var(--text-light)}.login-footer a{color:var(--accent-color);font-weight:500;text-decoration:none;transition:color .3s ease}.login-footer a:hover{color:var(--primary-color);text-decoration:underline}.admin-order-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:600px){.admin-order-grid{grid-template-columns:1fr}.login-container{padding:2rem 1rem}.login-card{padding:1.5rem}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:2rem;border-radius:8px;max-width:400px;width:90%;box-shadow:0 4px 12px #00000026;text-align:center}.modal-actions{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem}.btn-cancel{background:#f1f1f1;border:none;padding:.6rem 1.2rem;border-radius:4px;cursor:pointer;font-weight:500;font-size:.95rem}.btn-cancel:hover{background:#e1e1e1}.btn-confirm{background:#007bff;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:4px;cursor:pointer;font-weight:500;font-size:.95rem}.btn-confirm:hover{background:#0056b3}.admin-action-btn{padding:.75rem 1.5rem;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:.95rem;transition:all .3s ease;width:100%}@media(min-width:601px){.admin-action-btn{width:auto}}.admin-action-btn.capture{background-color:#28a745}.admin-action-btn.capture:hover{background-color:#218838}.admin-action-btn.complete{background-color:#007bff}.admin-action-btn.complete:hover{background-color:#0056b3}.admin-action-btn.cancel{background-color:#6c757d}.admin-action-btn.cancel:hover{background-color:#5a6268}.admin-action-btn.refund{background-color:#dc3545}.admin-action-btn.refund:hover{background-color:#c82333}.admin-action-row{display:flex;flex-wrap:wrap;gap:.75rem}@media(max-width:600px){.admin-action-row{flex-direction:column}.admin-action-row .admin-action-btn{width:100%}}.login-notice{background-color:var(--color-light-bg, #ECE6DD);color:var(--color-primary, #00352A);padding:.9rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.95rem;line-height:1.4;white-space:pre-line;text-align:left}.admin-customer-row{border:1px solid #ccc;padding:1rem;border-radius:8px;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.admin-deduct{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end}.admin-deduct-controls{display:flex;gap:.5rem}.admin-deduct-input{padding:.5rem;width:100px;border-radius:4px;border:1px solid #ccc}.admin-deduct-btn{padding:.5rem 1rem;background:#333;color:#fff;border:none;border-radius:4px;cursor:pointer;white-space:nowrap}@media(max-width:600px){.admin-customer-row{flex-direction:column;align-items:stretch}.admin-deduct{align-items:stretch;width:100%}.admin-deduct-controls{width:100%}.admin-deduct-input{flex:1;width:auto}}.login-loading-spinner-wrapper{margin:2.5rem 0;display:flex;justify-content:center;align-items:center}.login-spinner{width:48px;height:48px;border:4px solid rgba(0,0,0,.08);border-top:4px solid var(--primary-color, #1A1A1A);border-radius:50%;animation:login-spin .9s linear infinite}@keyframes login-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.register-points-banner{display:flex;align-items:center;justify-content:center;gap:.5rem;background-color:#fdf8ee;border:1px solid #dfc384;color:#785208;padding:.75rem 1rem;border-radius:8px;margin:.5rem 0 1.25rem;font-size:.95rem;font-weight:600;text-align:center;box-shadow:0 1px 3px #c4922614}.register-points-icon{flex-shrink:0;color:#a87618}.store-loading,.store-unapproved{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:4rem 2rem;background-color:var(--bg-light)}.unapproved-card{background-color:var(--bg-white);padding:3rem;border-radius:12px;box-shadow:0 10px 30px #0000000d;max-width:600px;text-align:center}.unapproved-card h2{color:var(--primary-color);margin-bottom:1rem;font-family:Playfair Display,serif}.store-page{max-width:1200px;margin:0 auto;padding:2.5rem 2rem 4rem}.store-header{text-align:center;margin-bottom:2.5rem}.store-header h1{font-family:Playfair Display,serif;color:var(--primary-color);font-size:3rem;margin-bottom:1rem}.store-header p{color:var(--text-light);font-size:1.1rem}.store-auth-prompt{margin-top:1.5rem;display:flex;flex-direction:column;align-items:center;gap:.9rem}.store-auth-prompt-text{margin:0;font-size:.95rem;color:#334155;font-weight:500;max-width:580px;line-height:1.5}.store-auth-btn-group{display:flex;gap:.85rem;flex-wrap:wrap;justify-content:center}.store-auth-btn-primary{background-color:#00352a;color:#fff!important;border:1.5px solid #00352A;padding:.65rem 1.6rem;border-radius:999px;font-weight:600;font-size:.9rem;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 4px 12px #00352a26}.store-auth-btn-primary:hover{background-color:#004d3d;border-color:#004d3d;color:#fff!important;transform:translateY(-1px);box-shadow:0 6px 16px #00352a38}.store-auth-btn-secondary{background-color:#fff;color:#00352a!important;border:1.5px solid #00352A;padding:.65rem 1.6rem;border-radius:999px;font-weight:600;font-size:.9rem;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 2px 6px #0000000a}.store-auth-btn-secondary:hover{background-color:#f2f7f4;border-color:#00271e;color:#00271e!important;transform:translateY(-1px);box-shadow:0 4px 12px #00352a1f}.store-campaign-banner{background:linear-gradient(135deg,#1a1a1a,#00352a);color:#fff;border-radius:14px;padding:1.1rem 1.75rem;margin-bottom:2.5rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border:1px solid rgba(223,183,67,.4);box-shadow:0 8px 24px #00352a26}.store-campaign-content{display:flex;align-items:center;gap:1rem}.store-campaign-badge{background:linear-gradient(135deg,#dfb743,#c59b27);color:#1a1a1a;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:.4rem .85rem;border-radius:20px;white-space:nowrap;box-shadow:0 2px 8px #dfb7434d}.store-campaign-info{display:flex;flex-direction:column;gap:.2rem}.store-campaign-title{font-size:1.05rem;font-weight:700;color:#fff}.store-campaign-desc{font-size:.9rem;color:#ffffffd9}.store-campaign-desc strong{color:#dfb743}.store-campaign-btn{background-color:#fff;color:#00352a;padding:.75rem 1.4rem;border-radius:8px;text-decoration:none;font-weight:700;font-size:.9rem;white-space:nowrap;transition:all .25s ease;box-shadow:0 4px 12px #00000026}.store-campaign-btn:hover{background-color:#f7f7f7;color:#00221b;transform:translateY(-2px);box-shadow:0 6px 16px #0003}@media(max-width:768px){.store-campaign-banner{flex-direction:column;align-items:flex-start;padding:1.25rem;gap:1rem}.store-campaign-content{flex-direction:column;align-items:flex-start;gap:.6rem}.store-campaign-btn{width:100%;text-align:center}}.store-controls{display:flex;flex-direction:column;align-items:center;gap:1.5rem;margin-bottom:3rem}.category-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;width:100%}.category-tab-btn{background-color:#fff;border:1.5px solid #e2e2e2;color:var(--text-dark, #333);padding:.55rem 1.1rem;border-radius:999px;font-size:.88rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.35rem;box-shadow:0 2px 5px #00000005}.category-tab-btn:hover{border-color:var(--primary-color);background-color:#f9f9f9}.category-tab-btn.active{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff;box-shadow:0 4px 12px #00352a26}.category-tab-btn .tab-count{font-size:.75rem;opacity:.75}.category-tab-btn.active .tab-count{opacity:.9}.product-image-fallback{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#f7f5f0,#ebe6dc);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem;text-align:center}.fallback-brand{font-size:.72rem;text-transform:uppercase;letter-spacing:1.5px;font-weight:700;color:var(--primary-color);opacity:.6;margin-bottom:.4rem}.fallback-title{font-family:Playfair Display,serif;font-size:1.05rem;color:var(--primary-color);font-weight:600;line-height:1.35;max-width:90%}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2.5rem}.product-card{background:var(--bg-white);border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000000d;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column}.product-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #0000001a}.product-image-container{position:relative;width:100%;padding-top:100%;background-color:#fff}.product-image-container img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;padding:.75rem;box-sizing:border-box}.product-category{position:absolute;top:1rem;left:1rem;background-color:#ffffffe6;color:var(--primary-color);padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:1px}.product-info{padding:1.5rem;display:flex;flex-direction:column;flex:1}.product-info h3{color:var(--primary-color);margin-bottom:.5rem;font-size:1.25rem;line-height:1.4}.product-description{color:var(--text-light);font-size:.9rem;margin-bottom:1.5rem;line-height:1.6;flex:1}.product-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:1.25rem;border-top:1px solid #f0f0f0}.product-footer.has-variant{margin-top:0}.variant-selector{margin-top:.75rem;margin-bottom:.5rem}.variant-label{font-size:.85rem;color:var(--text-light, #666);display:block}.variant-select{width:100%;padding:.45rem .6rem;margin-top:.2rem;border-radius:6px;border:1px solid #ddd;background-color:#fff;font-size:.85rem;color:var(--color-text, #333)}.product-price{font-size:1.2rem;font-weight:700;color:var(--primary-color)}.product-card-actions{display:flex;align-items:center;gap:.5rem}.view-details-btn{background-color:transparent;color:var(--primary-color);border:1px solid #ddd;padding:.6rem .9rem;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.view-details-btn:hover{border-color:var(--primary-color);background-color:#f7f7f7}.add-to-cart-btn{background-color:var(--accent-color, #ECE6DD);color:var(--primary-color, #1A1A1A);border:1px solid #dcd5c9;padding:.6rem 1.25rem;border-radius:6px;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s ease;white-space:nowrap}.add-to-cart-btn:hover{background-color:#dfd7cc;color:#000;border-color:#cfc5b7;transform:translateY(-2px)}.product-image-container.clickable{cursor:pointer;overflow:hidden}.product-image-container.clickable img{transition:transform .4s ease}.product-image-container.clickable:hover img{transform:scale(1.04)}.product-image-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0003;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .25s ease}.product-image-container.clickable:hover .product-image-overlay{opacity:1}.product-image-overlay span{background:#fffffff2;color:var(--primary-color);font-size:.8rem;font-weight:600;padding:.35rem .8rem;border-radius:999px;box-shadow:0 4px 12px #00000026;transform:translateY(6px);transition:transform .25s ease}.product-image-container.clickable:hover .product-image-overlay span{transform:translateY(0)}.product-title.clickable{cursor:pointer;transition:color .2s ease}.product-title.clickable:hover{color:var(--accent-color)}.product-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000a6;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem;animation:modalBackdropFade .2s ease-out}@keyframes modalBackdropFade{0%{opacity:0}to{opacity:1}}.product-modal-container{background:#fff;border-radius:16px;max-width:840px;width:100%;max-height:90vh;position:relative;box-shadow:0 24px 60px #00000040;animation:modalContainerSlide .25s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;overflow:hidden}@keyframes modalContainerSlide{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.product-modal-topbar{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.5rem;border-bottom:1px solid #f0f0f0;background:#fff;flex-shrink:0;z-index:10}.product-modal-back-btn{background:none;border:none;color:#00352a;font-size:.9rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.35rem;padding:.4rem .65rem;border-radius:6px;transition:all .2s ease}.product-modal-back-btn:hover{background:#f0f4f2}.product-modal-topbar-actions{display:flex;align-items:center;gap:.65rem}.product-modal-share-btn{background:#fbfaf8;border:1px solid #e5ded2;color:#00352a;padding:.45rem .85rem;border-radius:999px;font-size:.84rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;transition:all .2s ease}.product-modal-share-btn:hover{background:#00352a;color:#fff;border-color:#00352a}.product-modal-share-btn.copied{background:#2e7d32;color:#fff;border-color:#2e7d32}.product-modal-close{width:34px;height:34px;border-radius:50%;background:#f2f2f2;border:none;font-size:1.5rem;line-height:1;color:#444;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.product-modal-close:hover{background:#e0e0e0;color:#000}.product-modal-scrollable{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.product-modal-content{display:grid;grid-template-columns:1fr 1.25fr;gap:2.25rem;padding:2rem 2.25rem 2.5rem}.product-modal-image-col{display:flex;flex-direction:column}.product-modal-image-wrapper{position:relative;width:100%;padding-top:100%;background-color:#faf9f6;border-radius:12px;overflow:hidden;border:1px solid #efebe4}.product-modal-image-wrapper img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;padding:1.25rem;box-sizing:border-box;transition:opacity .2s ease}.product-modal-brand-badge{position:absolute;top:10px;left:10px;background:#00352ae6;color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.25rem .6rem;border-radius:4px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2}.product-modal-thumbnails{display:flex;gap:.5rem;margin-top:.75rem;overflow-x:auto;padding-bottom:.35rem}.product-modal-thumb-btn{width:52px;height:52px;border-radius:8px;border:2px solid #e2e8f0;padding:2px;background:#fff;cursor:pointer;transition:all .2s ease;flex-shrink:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.product-modal-thumb-btn:hover{border-color:#00352a}.product-modal-thumb-btn.active{border-color:#00352a;box-shadow:0 0 0 1px #00352a}.product-modal-thumb-btn img{width:100%;height:100%;object-fit:contain;border-radius:6px}.product-modal-info-col{display:flex;flex-direction:column}.product-modal-info-col h2{font-family:Playfair Display,serif;color:var(--primary-color);font-size:1.85rem;line-height:1.25;margin:0 0 .75rem}.product-modal-price-row{display:flex;align-items:center;gap:.85rem;margin-bottom:1.25rem;flex-wrap:wrap}.product-modal-price{font-size:1.65rem;font-weight:700;color:#00352a;margin:0}.product-modal-stock-badge{font-size:.82rem;color:#2e7d32;font-weight:600;background:#eef7ee;border:1px solid #c8e6c9;padding:.25rem .65rem;border-radius:20px}.product-modal-lock-pill{display:inline-flex;align-items:center;gap:.45rem;font-size:.88rem;color:#00352a;font-weight:700;background:#f4f1ea;border:1px solid #e0d8cb;padding:.45rem .9rem;border-radius:6px;margin-bottom:1.25rem;align-self:flex-start}.product-modal-variants{margin-bottom:1.25rem}.variant-pills{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.4rem}.variant-pill{padding:.5rem 1rem;border:1.5px solid #ddd;border-radius:999px;background-color:#fff;color:#333;font-size:.88rem;font-weight:500;cursor:pointer;transition:all .2s ease}.variant-pill:hover{border-color:var(--primary-color)}.variant-pill.active{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff;box-shadow:0 2px 8px #00352a33}.product-modal-actions{margin-bottom:1.5rem;display:flex;flex-direction:column;gap:.65rem}.product-modal-buy-group{display:flex;flex-direction:column;gap:.65rem;width:100%}.product-modal-buy-btn{width:100%;background-color:#00352a;color:#fff!important;border:1.5px solid #00352A;padding:.95rem 1.5rem;border-radius:8px;font-weight:700;font-size:1.05rem;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 14px #00352a2e;display:flex;align-items:center;justify-content:center}.product-modal-buy-btn:hover{background-color:#004d3d;border-color:#004d3d;transform:translateY(-1px);box-shadow:0 6px 18px #00352a40}.product-modal-buy-btn.added{background-color:#2e7d32;border-color:#2e7d32;color:#fff!important}.product-modal-checkout-btn{width:100%;background:linear-gradient(135deg,#dfb743,#c59b27);color:#1a1a1a!important;border:none;padding:.9rem 1.5rem;border-radius:8px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 16px #dfb74359;display:flex;align-items:center;justify-content:center;animation:bounceShort .35s ease}@keyframes bounceShort{0%{transform:scale(.95);opacity:0}60%{transform:scale(1.02);opacity:1}to{transform:scale(1)}}.product-modal-checkout-btn:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 6px 20px #dfb74373}.product-modal-admin-edit-btn{background:#f0f4f2;color:#00352a;border:1px solid #00352A;border-radius:6px;padding:.65rem 1rem;font-size:.9rem;font-weight:600;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center;gap:.4rem;transition:all .2s ease}.product-modal-admin-edit-btn:hover{background:#e2ede8}.product-modal-locked-box{background:linear-gradient(135deg,#fdfbf7,#f6f2ea);border:1px solid #e5ded2;border-radius:10px;padding:1.25rem;margin-bottom:.5rem;text-align:left}.locked-box-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.locked-box-icon{font-size:1.2rem}.locked-box-header h4{margin:0;font-size:.98rem;font-weight:700;color:#00352a}.product-modal-locked-box p{margin:0 0 1.1rem;font-size:.86rem;line-height:1.6;color:#4a5568}.locked-box-buttons{display:flex;flex-direction:column;gap:.75rem}.locked-box-consultation-btn{background:#00352a;color:#fff!important;padding:.85rem 1.25rem;border-radius:8px;font-weight:600;font-size:.92rem;text-align:center;text-decoration:none;box-shadow:0 2px 8px #00352a33;display:block;transition:all .2s ease}.locked-box-consultation-btn:hover{background:#004d3d;color:#fff!important;transform:translateY(-1px)}.locked-box-login-hint{text-align:center;font-size:.82rem;color:#718096}.locked-box-login-hint a{color:#00352a;font-weight:600;text-decoration:underline}.product-modal-sticky-bar{display:none}.product-card-share-btn{position:absolute;top:8px;left:8px;z-index:5;width:32px;height:32px;border-radius:50%;background:#ffffffeb;border:1px solid rgba(0,53,42,.15);color:#00352a;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.85rem;box-shadow:0 2px 6px #00000014;transition:all .2s ease}.product-card-share-btn:hover{background:#00352a;color:#fff;transform:scale(1.08);box-shadow:0 4px 10px #00352a40}.product-card-share-btn.copied{background:#2e7d32;color:#fff}.product-modal-description{margin-top:.5rem;padding-top:1.5rem;border-top:1px solid #f0f0f0}.product-modal-description h3{font-size:1.05rem;color:var(--primary-color);margin:0 0 .75rem;font-weight:600}.product-modal-description p{color:var(--text-light, #555);font-size:.92rem;line-height:1.65;margin-bottom:.85rem}@media(max-width:768px){.store-page{padding:1.5rem 1rem 3rem}.store-header{margin-bottom:2rem}.store-header h1{font-size:2.2rem;margin-bottom:.5rem}.store-header p{font-size:1rem}.store-search{margin-bottom:2rem;max-width:100%}.products-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.product-card{border-radius:10px}.product-category{top:.5rem;left:.5rem;padding:.2rem .5rem;font-size:.65rem;letter-spacing:.5px}.product-info{padding:.85rem}.product-info h3{font-size:.95rem;line-height:1.3;margin-bottom:.35rem}.variant-selector{margin-top:.35rem;margin-bottom:.35rem}.variant-label{font-size:.75rem}.variant-select{padding:.35rem .4rem;font-size:.8rem;margin-top:.15rem}.product-footer{padding-top:.75rem;flex-direction:column;align-items:stretch;gap:.5rem}.product-price{font-size:1.05rem;text-align:center}.product-card-actions{flex-direction:column;width:100%;gap:.4rem}.view-details-btn{width:100%;text-align:center;padding:.45rem .5rem;font-size:.8rem}.add-to-cart-btn{padding:.5rem .75rem;font-size:.85rem;width:100%;text-align:center}.product-modal-backdrop{padding:0;align-items:flex-end;background:#000000b8}.product-modal-container{width:100%;max-width:100%;height:100%;max-height:100dvh;border-radius:0;box-shadow:none;display:flex;flex-direction:column;overflow:hidden}.product-modal-topbar{padding:.75rem 1rem;background:#fff;border-bottom:1px solid #eef0f2}.product-modal-scrollable{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:95px}.product-modal-content{grid-template-columns:1fr;gap:1.25rem;padding:1rem 1.15rem 1.75rem}.product-modal-image-wrapper{height:290px;padding-top:0;background:#faf8f5;border-radius:12px;display:flex;align-items:center;justify-content:center}.product-modal-image-wrapper img{position:static;max-height:260px;width:auto;max-width:100%;object-fit:contain;margin:0 auto;display:block}.product-modal-info-col h2{font-size:1.45rem;padding-right:0;margin-bottom:.5rem}.product-modal-price{font-size:1.4rem}.product-modal-sticky-bar{position:fixed;bottom:0;left:0;right:0;z-index:1010;background:#fff;border-top:1px solid #e2e8f0;padding:.75rem 1rem;box-shadow:0 -6px 20px #0000001a;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.sticky-bar-left{display:flex;flex-direction:column;min-width:0}.sticky-bar-name{font-size:.8rem;font-weight:600;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:155px}.sticky-bar-price{font-size:1.15rem;font-weight:700;color:#00352a}.sticky-bar-locked-tag{font-size:.76rem;font-weight:700;color:#00352a}.sticky-bar-right{flex-shrink:0}.sticky-bar-action-btn{padding:.75rem 1.35rem;border-radius:8px;font-weight:700;font-size:.92rem;border:none;cursor:pointer;white-space:nowrap;text-decoration:none;text-align:center;display:inline-block;transition:all .2s ease}.sticky-bar-btn-buy{background-color:#00352a;color:#fff!important;box-shadow:0 2px 10px #00352a40}.sticky-bar-btn-buy:hover{background-color:#004d3d}.sticky-bar-btn-checkout{background:linear-gradient(135deg,#dfb743,#c59b27);color:#1a1a1a!important;box-shadow:0 2px 10px #dfb74359}.sticky-bar-btn-consult{background-color:#00352a;color:#fff!important;font-size:.85rem;padding:.7rem 1.1rem}}@media(max-width:480px){.store-page{padding:1.5rem .75rem 2.5rem}.store-header h1{font-size:1.8rem}.store-header p{font-size:.9rem}.store-search{margin-bottom:1.5rem}.store-search-input{padding:.7rem 1rem;font-size:.9rem}.products-grid{gap:.65rem}.product-info{padding:.65rem}.product-info h3{font-size:.85rem}.variant-label{font-size:.7rem}.variant-select{padding:.25rem .3rem;font-size:.75rem}.product-price{font-size:.95rem}.view-details-btn{padding:.4rem .5rem;font-size:.78rem}.add-to-cart-btn{padding:.45rem .5rem;font-size:.8rem}.product-modal-image-wrapper{height:250px}.product-modal-image-wrapper img{max-height:220px}.product-modal-info-col h2,.product-modal-price{font-size:1.3rem}.variant-pill{padding:.4rem .75rem;font-size:.8rem}}.access-notice{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:4rem 2rem;background-color:var(--bg-light)}.store-search{width:100%;max-width:480px;margin:0 auto}.store-search-input{width:100%;padding:.85rem 1.1rem;font-size:1rem;border:1px solid var(--color-gray-bg, #ddd);border-radius:999px;background-color:var(--color-white, #fff);color:var(--color-text, #333);outline:none;transition:border-color .2s ease}.store-search-input:focus{border-color:var(--color-primary, #00352A)}.store-no-results{text-align:center;color:var(--text-light, #666);padding:3rem 1rem}.store-concerns-filter{width:100%;background:#f7faf8;border:1px solid #dce8e3;border-radius:14px;padding:1.15rem 1.4rem;box-shadow:0 2px 8px #00352a0a}.concerns-filter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.65rem;flex-wrap:wrap;gap:.5rem}.concerns-filter-title{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#00352a;display:flex;align-items:center;gap:.4rem}.concerns-reset-btn{background:none;border:none;color:#00352a;text-decoration:underline;font-size:.78rem;font-weight:600;cursor:pointer;padding:0}.concerns-reset-btn:hover{color:#c59b27}.concerns-pills-row{display:flex;flex-wrap:wrap;gap:.5rem}.concern-pill-btn{background-color:#fff;border:1.5px solid #d0ded8;color:#1e3d34;padding:.45rem .95rem;border-radius:999px;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap}.concern-pill-btn:hover{border-color:#00352a;background-color:#f0f7f4;color:#00352a;transform:translateY(-1px)}.concern-pill-btn.active{background-color:#00352a;border-color:#00352a;color:#fff;box-shadow:0 4px 12px #00352a33}.concern-pill-btn .concern-count{font-size:.72rem;opacity:.75}.concern-pill-btn.active .concern-count{opacity:.95;color:#dfb743}.store-subcategories-filter{width:100%}.subcategories-pills-row{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem}.subcat-pill-btn{background:#fff;border:1px solid #e2e8e5;color:#445550;padding:.35rem .8rem;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .18s ease;display:inline-flex;align-items:center;gap:.3rem}.subcat-pill-btn:hover{border-color:#c59b27;color:#1a1a1a;background:#fbf9f4}.subcat-pill-btn.active{background:#dfb743;border-color:#c59b27;color:#1a1a1a;font-weight:700;box-shadow:0 2px 6px #dfb74340}.subcat-pill-btn .subcat-count{font-size:.7rem;opacity:.8}.product-badges-row{display:flex;flex-wrap:wrap;gap:.3rem;margin:.35rem 0 .45rem}.product-subcat-badge{background:#f4f6f5;color:#00352a;border:1px solid #dce8e3;font-size:.68rem;font-weight:600;padding:.15rem .45rem;border-radius:4px;text-transform:uppercase;letter-spacing:.03em}.product-concern-badge{background:#f0f7f4;color:#0d4b3c;border:1px solid #bce1d5;font-size:.68rem;font-weight:500;padding:.15rem .45rem;border-radius:4px}.product-concern-badge-more{background:#eef2f0;color:#60756e;font-size:.65rem;font-weight:600;padding:.15rem .35rem;border-radius:4px}.product-modal-tags{display:flex;flex-direction:column;gap:.5rem;margin:.75rem 0 1rem;padding:.75rem 1rem;background:#f8faf9;border-radius:8px;border:1px solid #e5eee9}.product-modal-tag-group{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem}.tag-group-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#49635b}.product-modal-subcat-tag{background:#00352a;color:#fff;padding:.2rem .6rem;border-radius:4px;font-size:.75rem;font-weight:600}.product-modal-concerns-list{display:flex;flex-wrap:wrap;gap:.35rem}.product-modal-concern-tag{background:#eaf4f0;color:#00352a;border:1px solid #9ed3c2;padding:.2rem .6rem;border-radius:20px;font-size:.75rem;font-weight:600}.product-modal-hygiene-note{display:flex;align-items:flex-start;gap:.6rem;background:#fbfaf8;border:1px solid #ebdccb;border-left:3px solid #8C6D46;border-radius:6px;padding:.75rem .9rem;margin:.8rem 0;font-size:.82rem;line-height:1.45;color:#543}.product-modal-hygiene-note .hygiene-icon{font-size:1.1rem;flex-shrink:0;margin-top:1px}.product-modal-hygiene-note a{color:#8c6d46;text-decoration:underline;font-weight:600}.store-trust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:4rem;padding:2.2rem;background:#fff;border:1px solid #EAE5DE;border-radius:12px;box-shadow:0 4px 20px #00000008}.store-trust-item{display:flex;align-items:flex-start;gap:1rem}.store-trust-icon{font-size:1.75rem;line-height:1;background:#faf8f5;padding:.75rem;border-radius:10px;border:1px solid #EAE5DE;flex-shrink:0}.store-trust-item h4{font-size:.98rem;font-weight:700;color:#1a1a1a;margin-bottom:.3rem;font-family:var(--font-heading, inherit)}.store-trust-item p{font-size:.86rem;color:#666;line-height:1.5;margin:0}.store-trust-item a{color:#8c6d46;text-decoration:underline;font-weight:600}.history-loading,.history-unapproved{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:4rem 2rem;background-color:var(--bg-light)}.history-unapproved .unapproved-card{background-color:var(--bg-white);padding:3rem;border-radius:12px;box-shadow:0 10px 30px #0000000d;max-width:600px;text-align:center}.history-unapproved .unapproved-card h2{color:var(--primary-color);margin-bottom:1rem;font-family:Playfair Display,serif}.history-page{max-width:900px;margin:0 auto;padding:4rem 2rem}.history-header{text-align:center;margin-bottom:3rem}.history-header h1{font-family:Playfair Display,serif;color:var(--primary-color);font-size:3rem;margin-bottom:1rem}.history-header p{color:var(--text-light);font-size:1.1rem}.points-hero{background-color:var(--bg-white);border-radius:12px;box-shadow:0 10px 30px #0000000d;padding:2.5rem 2rem;text-align:center;margin-bottom:3rem}.points-value{font-family:Playfair Display,serif;font-size:3.5rem;line-height:1.1;color:var(--primary-color)}.points-label{text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;color:var(--text-light);margin-top:.5rem}.points-note{color:var(--text-light);font-size:.9rem;margin-top:1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:3rem}.stat-card{background-color:var(--bg-white);border-radius:10px;padding:1.5rem 1rem;text-align:center;box-shadow:0 4px 14px #0000000a}.stat-value{font-size:1.5rem;font-weight:600;color:var(--primary-color)}.stat-label{font-size:.85rem;color:var(--text-light);margin-top:.35rem}.history-list h2{font-family:Playfair Display,serif;color:var(--primary-color);font-size:1.8rem;margin-bottom:1.5rem}.history-none{color:var(--text-light)}.visit-card{background-color:var(--bg-white);border-radius:10px;padding:1.5rem;margin-bottom:1rem;box-shadow:0 4px 14px #0000000a}.visit-top{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.visit-title{font-size:1.1rem;margin:0;color:var(--primary-color)}.visit-price{font-weight:600;white-space:nowrap}.visit-date,.visit-employee{color:var(--text-light);font-size:.9rem;margin-top:.35rem}.visit-cancelled{background-color:#f7f7f7;box-shadow:none}.visit-cancelled .visit-title,.visit-cancelled .visit-price,.visit-cancelled .visit-date{text-decoration:line-through;color:var(--text-light)}.visit-products{margin-top:1rem;padding:.85rem 1rem;background-color:var(--bg-light);border-radius:8px}.visit-products-heading{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-light);margin-bottom:.5rem}.visit-products ul{list-style:none;margin:0;padding:0}.visit-products li{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;font-size:.92rem;padding:.2rem 0}.visit-product-price{white-space:nowrap;color:var(--text-light);font-size:inherit}.visit-badges{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.4rem}.visit-badge{font-size:.75rem;background-color:var(--bg-light);color:var(--text-light);border-radius:999px;padding:.25rem .7rem}.history-empty{background-color:var(--bg-white);border-radius:12px;padding:2.5rem;text-align:center;box-shadow:0 4px 14px #0000000a}.history-empty h2{font-family:Playfair Display,serif;color:var(--primary-color);margin-bottom:.75rem}.history-empty p{color:var(--text-light);max-width:520px;margin:0 auto}.history-synced{text-align:center;color:var(--text-light);font-size:.85rem;margin-top:2.5rem}@media(max-width:600px){.history-page{padding:2.5rem 1.25rem}.history-header h1{font-size:2.2rem}.points-value{font-size:2.8rem}.visit-top{flex-direction:column;gap:.25rem}}.points-loading{font-family:Playfair Display,serif;font-size:1.6rem;color:var(--text-light);line-height:1.2}.history-order-success-banner{display:flex;justify-content:space-between;align-items:flex-start;background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border:1px solid #66bb6a;border-radius:12px;padding:1.5rem;margin-bottom:2.5rem;box-shadow:0 4px 14px #0000000d}.history-order-success-content{display:flex;align-items:flex-start;gap:1.25rem}.history-success-icon{font-size:2.2rem;line-height:1}.history-order-success-content h3{margin:0 0 .4rem;color:#2e7d32;font-size:1.3rem;font-family:Playfair Display,serif}.history-order-success-content p{margin:0;color:#1b5e20;font-size:.95rem;line-height:1.5}.sync-badge{display:inline-flex;align-items:center;gap:.5rem;background-color:#f5f5f5;color:#666;font-size:.8rem;font-weight:500;padding:.35rem .85rem;border-radius:999px;margin-top:.75rem}.sync-spinner{width:12px;height:12px;border:2px solid #ddd;border-top-color:var(--primary-color, #333);border-radius:50%;animation:spin .8s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.rewards-loading,.rewards-unapproved{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:4rem 2rem;background-color:var(--bg-light)}.rewards-notice-card{background-color:var(--bg-white);padding:3rem;border-radius:12px;box-shadow:0 10px 30px #0000000d;max-width:600px;text-align:center}.rewards-notice-card h2{color:var(--primary-color);margin-bottom:1rem;font-family:Playfair Display,serif}.rewards-page{max-width:900px;margin:0 auto;padding:4rem 2rem}.rewards-header{text-align:center;margin-bottom:3rem}.rewards-header h1{font-family:Playfair Display,serif;color:var(--primary-color);font-size:3rem;margin-bottom:1rem}.rewards-header p{color:var(--text-light);font-size:1.1rem}.rewards-balance{background-color:#ece6dd;color:#1a1a1a;border:1px solid #dcd5c9;border-radius:12px;padding:3rem 2rem;text-align:center;margin-bottom:3rem;box-shadow:0 4px 20px #00000008}.rewards-balance-value{font-family:Playfair Display,serif;font-size:4rem;line-height:1;color:#1a1a1a}.rewards-balance-label{text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;color:#555;margin-top:.6rem}.rewards-balance-worth{margin-top:1rem;color:#444;font-size:.95rem}.rewards-cta{display:inline-block;margin-top:1.75rem;background-color:#1a1a1a;color:#fff;padding:.8rem 2rem;border-radius:999px;text-decoration:none;font-size:.9rem;letter-spacing:.04em;transition:all .2s ease}.rewards-cta:hover{background-color:#333;transform:translateY(-1px)}.rewards-error{background-color:#fdecea;color:#b3261e;padding:1rem;border-radius:8px;margin-bottom:2rem;text-align:center}.rewards-how,.rewards-ledger{margin-bottom:3rem}.rewards-how h2,.rewards-ledger h2{font-family:Playfair Display,serif;color:var(--primary-color);font-size:1.8rem;margin-bottom:1.5rem}.rewards-rules{display:grid;gap:1rem}.rewards-rule{display:flex;align-items:flex-start;gap:1.25rem;background-color:var(--bg-white);border-radius:10px;padding:1.5rem;box-shadow:0 4px 14px #0000000a}.rule-badge{flex-shrink:0;min-width:64px;height:64px;border-radius:50%;background-color:var(--bg-light);color:var(--primary-color);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.05rem;padding:0 .5rem}.rewards-rule strong{color:var(--primary-color);display:block;margin-bottom:.35rem}.rewards-rule p{color:var(--text-light);font-size:.95rem;margin:0}.rewards-footnote{color:var(--text-light);font-size:.85rem;margin-top:1rem;font-style:italic}.rewards-empty{color:var(--text-light)}.rewards-ledger ul{list-style:none;margin:0;padding:0;background-color:var(--bg-white);border-radius:10px;box-shadow:0 4px 14px #0000000a;overflow:hidden}.ledger-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.5rem;border-bottom:1px solid var(--bg-light)}.ledger-row:last-child{border-bottom:none}.ledger-text{display:flex;flex-direction:column}.ledger-reason{color:var(--primary-color);font-size:.95rem}.ledger-date{color:var(--text-light);font-size:.82rem;margin-top:.2rem}.ledger-amount{font-weight:600;white-space:nowrap;color:var(--primary-color)}.ledger-negative{color:#a06a2c}@media(max-width:600px){.rewards-page{padding:2.5rem 1.25rem}.rewards-header h1{font-size:2.2rem}.rewards-balance-value{font-size:3rem}.rewards-rule{gap:1rem;padding:1.25rem}.rule-badge{min-width:52px;height:52px;font-size:.9rem}}.rewards-balance-loading{font-family:Playfair Display,serif;font-size:2rem;line-height:1.2;opacity:.9}.rewards-welcome-banner{display:flex;justify-content:space-between;align-items:flex-start;background:linear-gradient(135deg,#fdfbf7,#f7f1e5);border:1px solid var(--primary-color, #a06a2c);border-radius:12px;padding:1.5rem;margin-bottom:2.5rem;box-shadow:0 4px 14px #0000000d}.rewards-welcome-content{display:flex;align-items:flex-start;gap:1.25rem}.rewards-welcome-icon{font-size:2.2rem;line-height:1}.rewards-welcome-content h3{margin:0 0 .4rem;color:var(--primary-color);font-size:1.3rem;font-family:Playfair Display,serif}.rewards-welcome-content p{margin:0;color:var(--text-color, #333);font-size:.95rem;line-height:1.5}.rewards-welcome-close{background:none;border:none;font-size:1.8rem;color:#888;cursor:pointer;padding:0 .5rem;line-height:1;transition:color .2s}.rewards-welcome-close:hover{color:#000}.rewards-starter-card{display:grid;grid-template-columns:320px 1fr;gap:2.5rem;background-color:#fbf9f6;border:1px solid #E5DFD7;border-radius:16px;padding:2.25rem;margin-bottom:3.5rem;box-shadow:0 4px 20px #0000000a;align-items:center}.starter-card-media{display:flex;justify-content:center}.starter-duo-images{display:flex;align-items:center;gap:.75rem;width:100%}.starter-img-box{flex:1;position:relative;background-color:#fff;border:1px solid #EFECE6;border-radius:12px;padding:.75rem .5rem 1.75rem;display:flex;justify-content:center;align-items:center;box-shadow:0 4px 12px #00000008}.starter-img-box img{width:100%;max-width:110px;height:140px;object-fit:contain;transition:transform .3s ease}.starter-img-box:hover img{transform:scale(1.05)}.starter-img-badge{position:absolute;bottom:.4rem;left:50%;transform:translate(-50%);background-color:#ece6dd;color:#1a1a1a;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.2rem .5rem;border-radius:10px;white-space:nowrap}.starter-plus-sign{font-size:1.5rem;font-weight:600;color:#8c827a;-webkit-user-select:none;user-select:none}.starter-card-content{display:flex;flex-direction:column}.starter-card-campaign-ribbon{grid-column:1 / -1;background:linear-gradient(135deg,#1a1a1a,#00352a);color:#fff;padding:.75rem 1.25rem;border-radius:10px;display:flex;align-items:center;gap:.65rem;font-size:.92rem;margin-bottom:.25rem;border:1px solid rgba(212,175,55,.35);box-shadow:0 4px 14px #00352a1f}.starter-card-campaign-ribbon strong{color:#dfb743;letter-spacing:.06em;text-transform:uppercase;font-size:.82rem}.starter-card-pills{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.85rem}.starter-campaign-pill{background:linear-gradient(135deg,#c59b27,#b38719);color:#fff;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.3rem .75rem;border-radius:20px;box-shadow:0 2px 6px #c59b2759}.starter-card-pricing-row{display:flex;align-items:center;gap:.85rem;margin-bottom:1rem;flex-wrap:wrap}.pricing-tag-wrap{display:flex;align-items:baseline;gap:.5rem}.pricing-old{font-size:1rem;color:#888;text-decoration:line-through}.pricing-new{font-size:1.45rem;font-weight:700;color:#00352a}.pricing-save-badge{background-color:#e8f5e9;color:#2e7d32;font-size:.8rem;font-weight:700;padding:.25rem .65rem;border-radius:6px;border:1px solid #c8e6c9}.starter-card-pill{align-self:flex-start;background-color:#ece6dd;color:#333;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.3rem .85rem;border-radius:20px}.starter-card-content h2{font-family:Playfair Display,serif;font-size:1.85rem;color:var(--primary-color, #1A1A1A);margin-bottom:.75rem;line-height:1.25}.starter-card-content p{color:#4a4a4a;font-size:.95rem;line-height:1.6;margin-bottom:1rem}.starter-card-content p strong{color:#1a1a1a}.starter-card-bonus{background-color:#ece6dd80;border-left:3px solid #C4B5A5;padding:.6rem .9rem;border-radius:0 8px 8px 0;font-size:.88rem;color:#3a3a3a;margin-bottom:1.25rem}.starter-card-actions{margin-top:.25rem}.starter-card-btn{display:inline-flex;align-items:center;gap:.5rem;background-color:#1a1a1a;color:#fff;padding:.85rem 1.65rem;border-radius:8px;text-decoration:none;font-weight:600;font-size:.92rem;letter-spacing:.02em;transition:all .25s ease;box-shadow:0 4px 12px #00000014}.starter-card-btn:hover{background-color:#333;transform:translateY(-2px);box-shadow:0 6px 18px #0000001f}@media(max-width:768px){.rewards-starter-card{grid-template-columns:1fr;gap:1.75rem;padding:1.5rem;margin-bottom:2.5rem}.starter-card-media{max-width:280px;margin:0 auto}.starter-card-content h2{font-size:1.45rem}.starter-card-btn{width:100%;justify-content:center}}.starter-guide-page{max-width:1140px;margin:0 auto;padding:3rem 1.5rem 5rem;color:var(--text-dark, #222)}.starter-campaign-alert{background:linear-gradient(135deg,#fdfbf7,#f4ede1);border:1.5px solid #dfb743;color:var(--primary-color, #00352A);padding:.85rem 1.25rem;border-radius:12px;display:flex;align-items:center;gap:.75rem;font-size:.95rem;margin-bottom:2rem;box-shadow:0 4px 14px #dfb74326}.campaign-alert-icon{font-size:1.25rem}.starter-hero{text-align:center;max-width:820px;margin:0 auto 4rem;padding:2rem 1rem 0}.starter-badge{display:inline-block;background-color:#00352a14;color:var(--primary-color, #00352A);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;padding:.4rem 1rem;border-radius:999px;margin-bottom:1.25rem}.starter-hero h1{font-family:Playfair Display,serif;color:var(--primary-color, #00352A);font-size:2.8rem;line-height:1.2;margin-bottom:1.25rem}.starter-hero-subtitle{font-size:1.2rem;line-height:1.65;color:var(--text-light, #555)}.starter-duo-overview{margin-bottom:5rem}.duo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2.5rem;margin-bottom:2.5rem}.duo-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px #0000000f;border:1px solid #f0ede6;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease}.duo-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px #0000001a}.duo-image-wrap{position:relative;width:100%;padding-top:90%;background:linear-gradient(135deg,#faf8f5,#f2eee8)}.duo-image-wrap img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.step-tag{position:absolute;top:1rem;left:1rem;background:#fffffff2;color:var(--primary-color, #00352A);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;padding:.35rem .85rem;border-radius:999px;box-shadow:0 4px 10px #00000014}.duo-card-info{padding:2rem;display:flex;flex-direction:column;flex:1}.duo-card-info h2{font-family:Playfair Display,serif;color:var(--primary-color, #00352A);font-size:1.65rem;margin:0 0 .5rem}.duo-tagline{color:var(--text-light, #666);font-size:.95rem;margin-bottom:1.5rem;line-height:1.5}.duo-price-row{display:flex;align-items:center;justify-content:space-between;margin-top:auto;margin-bottom:1.25rem;padding-top:1rem;border-top:1px solid #f2f2f2}.duo-price-row .price{font-size:1.4rem;font-weight:700;color:var(--primary-color, #00352A)}.duo-select{padding:.45rem .75rem;border-radius:6px;border:1px solid #ccc;background-color:#fff;font-size:.88rem;color:#333}.size-badge{font-size:.85rem;font-weight:600;color:#666;background:#f0f0f0;padding:.3rem .65rem;border-radius:6px}.duo-buy-btn{width:100%;background-color:var(--accent-color, #ECE6DD);color:var(--primary-color, #1A1A1A);border:1px solid #dcd5c9;padding:.85rem 1.25rem;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .25s ease}.duo-buy-btn:hover{background-color:#dfd7cc;color:#000;border-color:#cfc5b7;transform:translateY(-1px)}.duo-buy-btn.added{background-color:#2e7d32}.bundle-callout{background:linear-gradient(135deg,var(--primary-color, #00352A) 0%,#004d3d 100%);color:#fff;border-radius:16px;padding:2.25rem 2.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;box-shadow:0 16px 35px #00352a33;border:1px solid rgba(223,183,67,.3)}.bundle-badge{display:inline-block;background:linear-gradient(135deg,#dfb743,#c59b27);color:#1a1a1a;font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.3rem .75rem;border-radius:20px;margin-bottom:.6rem}.bundle-text h3{font-family:Playfair Display,serif;font-size:1.6rem;margin:0 0 .4rem;color:#fff}.bundle-text p{margin:0;color:#ffffffd9;font-size:1rem}.bundle-action{display:flex;flex-direction:column;align-items:flex-end;gap:.75rem;min-width:280px}.bundle-price-breakdown{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem}.bundle-original-price{font-size:.95rem;color:#ffffffb3;text-decoration:line-through}.bundle-campaign-price{font-size:1.35rem;font-weight:700;color:#fff}.bundle-saving-text{font-size:.82rem;font-weight:600;color:#a5d6a7;background:#2e7d3259;padding:.2rem .55rem;border-radius:4px}.bundle-buy-btn{background-color:#fff;color:var(--primary-color, #00352A);border:none;padding:.9rem 1.6rem;border-radius:8px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .25s ease;white-space:nowrap}.bundle-buy-btn:hover{background-color:#f7f7f7;transform:translateY(-2px);box-shadow:0 6px 18px #00000026}.bundle-buy-btn.added{background-color:#4caf50;color:#fff}.starter-explanation{margin-bottom:5rem}.explanation-header{text-align:center;max-width:780px;margin:0 auto 3rem}.explanation-header h2{font-family:Playfair Display,serif;color:var(--primary-color, #00352A);font-size:2.2rem;margin-bottom:1rem}.explanation-header p{color:var(--text-light, #555);font-size:1.05rem;line-height:1.6}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.75rem}.benefit-card{background:#fff;border:1px solid #ebe6df;border-radius:12px;padding:2rem 1.75rem;transition:transform .2s ease,border-color .2s ease}.benefit-card:hover{transform:translateY(-3px);border-color:var(--primary-color, #00352A)}.benefit-icon{font-size:2.2rem;margin-bottom:1rem}.benefit-card h3{font-family:Playfair Display,serif;color:var(--primary-color, #00352A);font-size:1.25rem;margin:0 0 .75rem;line-height:1.35}.benefit-card p{color:var(--text-light, #555);font-size:.92rem;line-height:1.65;margin:0}.starter-routine{background-color:#faf8f5;border-radius:16px;padding:3.5rem 3rem;margin-bottom:5rem;border:1px solid #ece7de}.starter-routine h2{font-family:Playfair Display,serif;color:var(--primary-color, #00352A);font-size:2rem;text-align:center;margin-bottom:2.5rem}.routine-steps{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}.routine-step{display:flex;gap:1.25rem}.step-number{width:44px;height:44px;border-radius:50%;background-color:var(--primary-color, #00352A);color:#fff;font-size:1.25rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.step-content h3{font-family:Playfair Display,serif;color:var(--primary-color, #00352A);font-size:1.2rem;margin:0 0 .5rem}.step-content p{color:var(--text-light, #555);font-size:.93rem;line-height:1.6;margin:0}.starter-cta{text-align:center;background:#fff;border-radius:16px;padding:3.5rem 2rem;border:1px solid #ebe6df;box-shadow:0 8px 25px #0000000a}.starter-cta h2{font-family:Playfair Display,serif;color:var(--primary-color, #00352A);font-size:2.2rem;margin-bottom:.75rem}.starter-cta p{color:var(--text-light, #555);font-size:1.05rem;margin-bottom:2rem}.store-link-btn{display:inline-block;background-color:var(--primary-color, #00352A);color:#fff;padding:.9rem 2.25rem;border-radius:999px;font-weight:600;font-size:1rem;text-decoration:none;transition:all .25s ease;box-shadow:0 4px 14px #00352a33}.store-link-btn:hover{background-color:#004d3d;transform:translateY(-2px);box-shadow:0 6px 20px #00352a4d}@media(max-width:860px){.starter-hero h1{font-size:2.2rem}.bundle-callout{flex-direction:column;align-items:stretch;text-align:center}.bundle-action{align-items:center;width:100%}.bundle-buy-btn{width:100%}.routine-steps{grid-template-columns:1fr;gap:1.75rem}}@media(max-width:580px){.starter-guide-page{padding:1.5rem 1rem 3.5rem}.starter-hero h1{font-size:1.8rem}.starter-hero-subtitle{font-size:1rem}.duo-card-info{padding:1.25rem}.starter-routine{padding:2rem 1.25rem}.starter-cta{padding:2.5rem 1.25rem}}.profile-page{max-width:800px;margin:0 auto;padding:3.5rem 1.5rem 5rem}.profile-header{text-align:center;margin-bottom:2.5rem}.profile-header h1{font-family:Playfair Display,serif;font-size:2.6rem;color:var(--primary-color, #1A1A1A);margin-bottom:.5rem}.profile-header p{color:#666;font-size:1.05rem}.profile-card{background-color:#fff;border-radius:14px;padding:2rem;box-shadow:0 4px 20px #0000000a;border:1px solid #f0ede8;margin-bottom:2rem}.profile-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #f0ede8}.profile-card-header h2{font-family:Playfair Display,serif;font-size:1.4rem;color:var(--primary-color, #1A1A1A);margin:0;display:flex;align-items:center;gap:.6rem}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem}.profile-info-item{display:flex;flex-direction:column}.profile-info-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#888;margin-bottom:.35rem}.profile-info-value{font-size:1.05rem;font-weight:500;color:#222}.consent-item{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 0;border-bottom:1px solid #f5f2ed;gap:1.5rem}.consent-item:last-child{border-bottom:none;padding-bottom:.5rem}.consent-text{flex:1}.consent-title{font-size:1.02rem;font-weight:600;color:#222;margin-bottom:.25rem;display:flex;align-items:center;gap:.4rem}.consent-desc{font-size:.88rem;color:#666;line-height:1.45;margin:0}.toggle-switch{position:relative;display:inline-block;width:52px;height:28px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#d1d1d6;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:34px}.toggle-slider:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background-color:#fff;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:50%;box-shadow:0 2px 5px #0003}.toggle-switch input:checked+.toggle-slider{background-color:var(--primary-color, #4A5D23)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 1px var(--primary-color, #4A5D23)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.toggle-switch input:disabled+.toggle-slider{opacity:.6;cursor:not-allowed}.consent-notice{background-color:#fbf9f6;border-left:3px solid var(--primary-color, #4A5D23);padding:1rem 1.25rem;border-radius:0 8px 8px 0;margin-top:1.5rem;font-size:.86rem;color:#555;line-height:1.5}.profile-links-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.profile-link-card{display:flex;align-items:center;justify-content:space-between;padding:1.2rem 1.4rem;background-color:#faf8f5;border-radius:10px;text-decoration:none;color:#222;font-weight:500;transition:all .2s ease;border:1px solid transparent}.profile-link-card:hover{background-color:#f3efe8;border-color:#e5dec9;transform:translateY(-2px)}.profile-link-card span{display:flex;align-items:center;gap:.6rem}.save-feedback{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;color:#2e7d32;background-color:#e8f5e9;padding:.3rem .8rem;border-radius:20px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.profile-page{padding:2.5rem 1rem 4rem}.profile-header h1{font-size:2.1rem}.consent-item{gap:1rem}}.unsubscribe-page{min-height:calc(100vh - 200px);display:flex;align-items:center;justify-content:center;padding:3rem 1.5rem;background-color:var(--bg-light, #faf8f5)}.unsubscribe-card{background-color:#fff;border-radius:16px;padding:2.5rem 2.25rem;max-width:540px;width:100%;box-shadow:0 10px 30px #0000000d;border:1px solid #f0ede8;text-align:center}.unsubscribe-icon{font-size:3rem;margin-bottom:1rem;display:inline-block}.unsubscribe-card h1{font-family:Playfair Display,serif;font-size:2rem;color:var(--primary-color, #1A1A1A);margin-bottom:.75rem}.unsubscribe-card p{color:#666;font-size:1rem;line-height:1.55;margin-bottom:1.5rem}.unsubscribe-email-badge{display:inline-block;background-color:#f3efe8;color:#333;font-weight:600;padding:.35rem .85rem;border-radius:20px;margin-bottom:1.25rem;font-size:.95rem}.unsubscribe-actions{display:flex;flex-direction:column;gap:.85rem;margin-top:1.5rem}.unsubscribe-btn-primary{background-color:#d32f2f;color:#fff;border:none;padding:.85rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s}.unsubscribe-btn-primary:hover{background-color:#b71c1c}.unsubscribe-btn-secondary{background-color:#fff;color:#444;border:1.5px solid #dcd5c9;padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s}.unsubscribe-btn-secondary:hover{background-color:#f7f4ee;border-color:#c9c1b3}.unsubscribe-success{background-color:#e8f5e9;border:1px solid #c8e6c9;border-radius:10px;padding:1.5rem;margin-bottom:1.5rem;text-align:center}.unsubscribe-success h3{color:#2e7d32;margin:0 0 .5rem;font-size:1.25rem;font-family:Playfair Display,serif}.unsubscribe-success p{color:#1b5e20;margin:0;font-size:.95rem}.unsubscribe-resubscribe-btn{background:none;border:none;color:var(--primary-color, #4A5D23);text-decoration:underline;cursor:pointer;font-weight:600;font-size:.9rem;margin-top:1rem}.unsubscribe-input-group{display:flex;flex-direction:column;gap:.75rem;text-align:left;margin-bottom:1.5rem}.unsubscribe-input-group input{padding:.75rem 1rem;border:1px solid #ccc;border-radius:8px;font-size:1rem;font-family:inherit}@media(max-width:600px){.unsubscribe-card{padding:2rem 1.25rem}.unsubscribe-card h1{font-size:1.7rem}}
