@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-inter:"Inter","Inter Fallback"}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Playfair Display Fallback;src:local("Times New Roman");ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:111.26%}.__className_0a80b4{font-family:Playfair Display,Playfair Display Fallback;font-style:normal}.__variable_0a80b4{--font-playfair:"Playfair Display","Playfair Display Fallback"}:root{--color-bg-primary:#eee9e0;--color-bg-secondary:#fcfbfa;--color-bg-tertiary:#e6e0d4;--color-bg-glass:rgba(252,251,250,0.85);--color-text-primary:#2c2c2c;--color-text-secondary:#6e6b66;--color-text-tertiary:#a3a09b;--color-text-inverse:#ffffff;--color-accent:#2c2c2c;--color-accent-hover:#000000;--color-accent-light:rgba(44,44,44,0.05);--color-accent-glow:rgba(0,0,0,0.1);--color-success:#3b7c5e;--color-warning:#bda25c;--color-danger:#c45b5b;--color-border:rgba(0,0,0,0.04);--color-border-hover:rgba(0,0,0,0.08);--color-shadow:rgba(0,0,0,0.02);--color-shadow-lg:rgba(0,0,0,0.04);--font-sans:var(--font-inter),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-serif:var(--font-playfair),"Times New Roman",Times,serif;--font-mono:"Geist Mono","Fira Code",monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.75;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:0.125rem;--radius-md:0.25rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--radius-2xl:1rem;--radius-full:9999px;--shadow-xs:0 1px 2px var(--color-shadow);--shadow-sm:0 2px 8px var(--color-shadow);--shadow-md:0 8px 24px var(--color-shadow);--shadow-lg:0 12px 40px var(--color-shadow-lg);--shadow-xl:0 20px 60px var(--color-shadow-lg);--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:300ms cubic-bezier(0.4,0,0.2,1);--transition-slow:500ms cubic-bezier(0.4,0,0.2,1);--transition-spring:600ms cubic-bezier(0.34,1.56,0.64,1);--z-dropdown:100;--z-sticky:200;--z-overlay:300;--z-modal:400;--z-toast:500}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);background-image:radial-gradient(circle at 50% 0,rgba(255,255,255,.7),transparent 80%),linear-gradient(180deg,transparent,rgba(0,0,0,.03)),url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='0.05' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");min-height:100vh}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}img,svg,video{display:block;max-width:100%}button{cursor:pointer;font-family:inherit;font-size:inherit;border:none;background:none}.page-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:var(--space-8)}.card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-10);box-shadow:var(--shadow-lg);max-width:480px;width:100%;text-align:center;transition:box-shadow var(--transition-base),transform var(--transition-base)}.card:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px)}.card h1{font-family:var(--font-serif);font-size:var(--text-4xl);font-weight:var(--font-weight-light);color:var(--color-text-primary);line-height:var(--line-height-tight);margin-bottom:var(--space-4)}.card .subtitle{font-size:var(--text-base);color:var(--color-text-secondary);margin-bottom:var(--space-6)}.status-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-fast)}.status-badge--success{background:rgba(0,196,140,.08);color:var(--color-success)}.status-badge--warning{background:rgba(255,176,32,.08);color:var(--color-warning)}.status-badge--danger{background:rgba(255,77,106,.08);color:var(--color-danger)}.status-dot{width:8px;height:8px;border-radius:50%;background:currentColor;animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-top:var(--space-6);width:100%}.feature-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-bg-tertiary);border-radius:var(--radius-lg);border:1px solid var(--color-border);font-size:var(--text-sm);color:var(--color-text-secondary);transition:all var(--transition-fast)}.feature-item:hover{border-color:var(--color-accent);background:var(--color-accent-light);color:var(--color-accent);transform:translateY(-1px)}.feature-icon{font-size:var(--text-xl);flex-shrink:0}.auth-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:var(--space-4);color:var(--color-text-tertiary)}.auth-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.version-tag{display:inline-block;padding:var(--space-1) var(--space-3);background:var(--color-bg-tertiary);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-weight-medium);color:var(--color-text-tertiary);letter-spacing:.05em;text-transform:uppercase}.form-group,.version-tag{margin-bottom:var(--space-4)}.form-group{display:flex;flex-direction:column;gap:var(--space-2);text-align:left}.form-label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.input-wrapper{position:relative;display:flex;align-items:center}.input-field{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--text-base);color:var(--color-text-primary);background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast);outline:none}.input-field::placeholder{color:var(--color-text-tertiary)}.input-field:hover{border-color:var(--color-border-hover)}.input-field:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.input-field--error{border-color:var(--color-danger)}.input-field--error:focus{box-shadow:0 0 0 3px rgba(255,77,106,.12)}.error-message{font-size:var(--text-xs);color:var(--color-danger);margin-top:var(--space-1)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-size:var(--text-sm);font-weight:var(--font-weight-medium);letter-spacing:.05em;text-transform:uppercase;border-radius:var(--radius-sm);transition:all var(--transition-base);width:100%;position:relative;overflow:hidden}.btn:disabled{opacity:.6;cursor:not-allowed}.btn--primary{background-color:var(--color-accent);color:var(--color-text-inverse)}.btn--primary:hover:not(:disabled){background-color:var(--color-accent-hover);box-shadow:0 4px 20px var(--color-accent-glow);transform:translateY(-2px)}.btn--outline{background-color:transparent;color:var(--color-text-primary);border:1px solid var(--color-border-hover)}.btn--outline:hover:not(:disabled){background-color:var(--color-bg-secondary);border-color:var(--color-accent)}.btn-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.btn--outline .btn-spinner{border:2px solid rgba(0,0,0,.1);border-top:2px solid var(--color-text-primary)}.login-header{margin-bottom:var(--space-8)}.login-header h1{font-size:var(--text-2xl)}.divider{display:flex;align-items:center;text-align:center;margin:var(--space-6) 0;color:var(--color-text-tertiary);font-size:var(--text-sm)}.divider:after,.divider:before{content:"";flex:1 1;border-bottom:1px solid var(--color-border)}.divider:before{margin-right:var(--space-4)}.divider:after{margin-left:var(--space-4)}.text-link{color:var(--color-accent);font-weight:var(--font-weight-medium);cursor:pointer}.text-link:hover{text-decoration:underline}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.w-full{width:100%}.admin-layout{display:flex;height:100vh;overflow:hidden;background-color:var(--color-bg-tertiary)}.admin-sidebar{width:260px;background-color:var(--color-bg-secondary);border-right:1px solid var(--color-border);display:flex;flex-direction:column;transition:transform var(--transition-base);z-index:var(--z-sticky)}.sidebar-header{height:70px;display:flex;align-items:center;padding:0 var(--space-6);border-bottom:1px solid var(--color-border)}.sidebar-logo{font-size:var(--text-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);letter-spacing:-.02em}.sidebar-nav{flex:1 1;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);transition:all var(--transition-fast);cursor:pointer}.nav-item:hover{background-color:var(--color-bg-tertiary);color:var(--color-text-primary)}.nav-item--active,.nav-item--active:hover{background-color:var(--color-accent-light);color:var(--color-accent)}.admin-main{flex:1 1;display:flex;flex-direction:column;overflow:hidden}.admin-header{height:70px;background-color:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);justify-content:space-between;padding:0 var(--space-8);z-index:var(--z-dropdown)}.admin-header,.header-user{display:flex;align-items:center}.header-user{gap:var(--space-4)}.user-email{font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.admin-content{flex:1 1;padding:var(--space-8);overflow-y:auto}.bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;height:64px;background-color:var(--color-bg-secondary);border-top:1px solid var(--color-border);z-index:var(--z-sticky);padding-bottom:env(safe-area-inset-bottom)}.bottom-nav-item{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:all var(--transition-fast);padding:var(--space-1) 0}.bottom-nav-icon{font-size:1.25rem;margin-bottom:2px;transition:transform var(--transition-fast)}.bottom-nav-label{font-size:.65rem;font-weight:var(--font-weight-medium)}.bottom-nav-item--active{color:var(--color-accent)}.bottom-nav-item--active .bottom-nav-icon{transform:translateY(-2px)}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.stat-card{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-accent)}.stat-card__header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-medium)}.stat-card__icon{font-size:1.5rem}.stat-card__value{font-size:2rem;font-weight:var(--font-weight-bold);color:var(--color-text-primary);letter-spacing:-.02em}.dashboard-section-title{font-size:1.25rem;font-weight:var(--font-weight-semibold);margin-bottom:var(--space-4);color:var(--color-text-primary);border-bottom:2px solid var(--color-bg-secondary);padding-bottom:var(--space-2)}.table-container{width:100%;overflow-x:auto;background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.table{width:100%;border-collapse:collapse;text-align:left;font-size:var(--text-sm)}.table th{background-color:var(--color-bg-tertiary);color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);white-space:nowrap}.table td,.table th{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border)}.table td{color:var(--color-text-primary)}.table-row{transition:background-color var(--transition-fast)}.table-row:hover{background-color:var(--color-bg-tertiary)}.table-row:last-child td{border-bottom:none}.table-empty{text-align:center;padding:var(--space-8);color:var(--color-text-tertiary)}.table-actions{display:flex;gap:var(--space-2)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--color-bg-glass);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:fadeIn var(--transition-fast) ease-out}.modal-content{background-color:var(--color-bg-secondary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-width:500px;max-height:90vh;display:flex;flex-direction:column;animation:slideUp var(--transition-base) ease-out;overflow:hidden}.modal-header{padding:var(--space-6);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.modal-title{font-size:var(--text-lg);font-weight:var(--font-weight-bold)}.modal-close{color:var(--color-text-tertiary);font-size:var(--text-xl);line-height:1;padding:var(--space-1);transition:color var(--transition-fast)}.modal-close:hover{color:var(--color-danger)}.modal-body{padding:var(--space-6);overflow-y:auto}.modal-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:var(--space-3);background-color:var(--color-bg-tertiary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6);flex-wrap:wrap;gap:var(--space-4)}.page-title{font-size:var(--text-2xl);font-weight:var(--font-weight-bold);letter-spacing:-.02em}.toggle-switch{position:relative;display:inline-flex;align-items:center;cursor:pointer;gap:var(--space-3)}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:relative;width:44px;height:24px;background-color:var(--color-text-tertiary);border-radius:24px;transition:background-color var(--transition-fast)}.toggle-slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;bottom:3px;background-color:white;border-radius:50%;transition:transform var(--transition-fast);box-shadow:var(--shadow-sm)}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-success)}.toggle-switch input:focus-visible+.toggle-slider{outline:2px solid var(--color-accent);outline-offset:2px}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.toggle-label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}@media (max-width:768px){.bottom-nav{display:flex}.admin-sidebar{display:none}.admin-main{padding-bottom:calc(64px + env(safe-area-inset-bottom))}}@media (max-width:640px){.card{padding:var(--space-6)}.card h1{font-size:var(--text-2xl)}.feature-grid{grid-template-columns:1fr}}.drawer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--color-bg-glass);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;opacity:0;pointer-events:none;transition:opacity var(--transition-base) ease-out}.drawer-overlay.open{opacity:1;pointer-events:auto}.drawer-container{position:fixed;top:0;right:0;bottom:0;width:100%;max-width:400px;background-color:var(--color-bg-secondary);box-shadow:-10px 0 30px rgba(0,0,0,.1);z-index:1001;display:flex;flex-direction:column;transform:translateX(100%);transition:transform var(--transition-base) ease-out}.drawer-container.open{transform:translateX(0)}.drawer-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.drawer-body{flex:1 1;overflow-y:auto;padding:var(--space-5)}.drawer-footer{padding:var(--space-5);border-top:1px solid var(--color-border);background-color:var(--color-bg-primary)}.drawer-subtotal{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2);font-size:1.125rem;font-weight:600;color:var(--color-text-secondary)}.subtotal-value{font-size:1.5rem;font-weight:800;color:var(--color-text-primary)}.cart-item{display:flex;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.cart-item:last-child{border-bottom:none;padding-bottom:0}.cart-item-image{width:80px;height:80px;background-color:#f8f8f9;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;padding:.5rem}.cart-item-image img{max-width:100%;max-height:100%;object-fit:contain;mix-blend-mode:multiply}.cart-item-info{flex:1 1;display:flex;flex-direction:column}.cart-item-header{display:flex;justify-content:space-between;align-items:flex-start}.cart-item-title{font-size:.875rem;font-weight:600;color:var(--color-text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cart-item-remove{color:var(--color-text-tertiary);font-size:1.25rem;line-height:1}.cart-item-remove:hover{color:var(--color-danger)}.cart-item-price{font-size:1rem;font-weight:700;color:var(--color-text-primary);margin-top:.25rem}.cart-item-controls{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto}.quantity-selector{display:flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.quantity-selector button{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background-color:var(--color-bg-tertiary);color:var(--color-text-secondary);transition:background-color var(--transition-fast)}.quantity-selector button:hover:not(:disabled){background-color:var(--color-border)}.quantity-selector button:disabled{opacity:.5;cursor:not-allowed}.quantity-selector span{width:32px;text-align:center;font-size:.875rem;font-weight:600}.cart-item-total{font-size:.875rem;font-weight:600;color:var(--color-text-secondary)}.public-layout{min-height:100vh;display:flex;flex-direction:column;background-color:var(--color-bg-secondary);width:100%;max-width:1280px;margin:0 auto;overflow-x:hidden;box-shadow:0 0 40px rgba(0,0,0,.02)}.public-header{position:sticky;top:0;z-index:50;background-color:rgba(255,255,255,.85);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);padding:var(--space-3) var(--space-5);display:flex;justify-content:space-between;align-items:center}.public-logo{font-family:var(--font-serif);font-size:1.75rem;font-weight:var(--font-weight-normal);color:var(--color-text-primary);letter-spacing:-.01em}.cart-icon-wrapper{position:relative;cursor:pointer;padding:.5rem;border-radius:50%;transition:background-color var(--transition-fast)}.cart-icon-wrapper:hover{background-color:var(--color-bg-primary)}.hero-banner{margin:var(--space-4);border-radius:24px;background-image:url(/banner_vermelho.png);background-repeat:no-repeat;background-position:50%;background-size:cover;color:white;padding:4rem 2rem;text-align:center;box-shadow:0 20px 40px rgba(0,0,0,.15);display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;position:relative}.hero-banner h1{font-family:var(--font-serif);font-size:clamp(2.5rem,6vw,4.5rem);font-weight:var(--font-weight-light);line-height:1.1;margin-bottom:1rem;z-index:1;text-shadow:0 2px 10px rgba(0,0,0,.5)}.hero-banner p{font-size:clamp(1rem,2vw,1.5rem);color:rgba(255,255,255,.9);max-width:600px;z-index:1;text-shadow:0 1px 8px rgba(0,0,0,.5)}.carousel-container{display:flex;overflow-x:auto;gap:var(--space-4);padding:var(--space-2) var(--space-4) var(--space-5) var(--space-4);scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;width:100%;scroll-behavior:smooth}.carousel-container::-webkit-scrollbar{display:none}.carousel-wrapper{position:relative;width:100%}.carousel-container .product-card-public{width:280px;flex:0 0 280px}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;background-color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.15);cursor:pointer;z-index:10;border:1px solid var(--color-border);color:var(--color-text-primary);font-size:1.25rem;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .2s ease,box-shadow .2s ease}.carousel-wrapper:hover .carousel-arrow{opacity:1;pointer-events:auto}.carousel-arrow:hover{transform:translateY(-50%) scale(1.1);box-shadow:0 6px 16px rgba(0,0,0,.2);color:var(--color-accent)}.carousel-arrow--left{left:.5rem}.carousel-arrow--right{right:.5rem}.product-card-public{background-color:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;overflow:hidden;box-shadow:0 8px 30px rgba(0,0,0,.02);transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s ease,background-color .4s ease;min-width:280px;scroll-snap-align:start;flex:0 0 auto;border:1px solid rgba(255,255,255,.4);cursor:pointer;display:flex;flex-direction:column;height:100%}.product-card-public:hover{transform:translateY(-8px);box-shadow:0 16px 40px rgba(0,0,0,.06);background-color:rgba(255,255,255,1)}.product-card-image-wrapper{width:100%;aspect-ratio:1/1;background-color:transparent;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow:hidden}.product-card-image-wrapper:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;background:radial-gradient(circle,transparent 40%,rgba(255,255,255,.9) 120%);z-index:1}.product-card-image-wrapper img{max-width:100%;max-height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .5s ease;z-index:0}.product-card-public:hover .product-card-image-wrapper img{transform:scale(1.08)}.product-card-info{padding:var(--space-4);display:flex;flex-direction:column;flex:1 1}.product-card-title{font-family:var(--font-serif);font-size:1.25rem;font-weight:var(--font-weight-normal);color:var(--color-text-primary);margin-bottom:.5rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.3;min-height:calc(1.25rem * 1.3 * 2)}.product-card-price{font-family:var(--font-sans);font-size:1.125rem;font-weight:var(--font-weight-medium);letter-spacing:.02em;color:var(--color-text-primary);margin-top:auto}.products-grid-public{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-8);padding:var(--space-8) var(--space-4)}.fab-container{position:fixed;bottom:2rem;right:2rem;display:flex;flex-direction:column;gap:1rem;z-index:100}.fab-button{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:white;box-shadow:0 8px 24px rgba(0,0,0,.2);transition:transform .2s ease,box-shadow .2s ease;cursor:pointer;text-decoration:none}.fab-button:hover{transform:scale(1.1);box-shadow:0 12px 28px rgba(0,0,0,.25)}.fab-whatsapp{background-color:#25D366}.fab-instagram{background:linear-gradient(45deg,#f09433,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888)}.section-title-public{font-family:var(--font-serif);font-size:2rem;font-weight:var(--font-weight-light);padding:0 var(--space-4);margin:var(--space-10) 0 var(--space-6) 0;color:var(--color-text-primary);letter-spacing:0}@media (max-width:768px){.products-grid-public{grid-template-columns:repeat(2,1fr);gap:var(--space-3);padding:var(--space-3)}.product-card-public{min-width:160px}.hero-banner{padding:3rem 1.5rem;margin:var(--space-3);border-radius:20px}}