:root{--font-display: Georgia, "Times New Roman", serif;--font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--bg-color: hsl(40, 25%, 98%);--bg-pattern: hsla(160, 87%, 34%, .03);--surface-color: hsla(0, 0%, 100%, .75);--surface-border: hsla(160, 20%, 20%, .08);--text-primary: hsl(160, 45%, 11%);--text-secondary: hsl(160, 15%, 35%);--primary-color: hsl(160, 87%, 20%);--primary-light: hsl(160, 87%, 34%);--accent-color: hsl(35, 75%, 45%);--accent-hover: hsl(35, 80%, 38%);--accent-light: hsl(35, 60%, 94%);--success-color: hsl(160, 87%, 30%);--shadow-sm: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .03);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -2px rgba(0, 0, 0, .04);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--glass-blur: blur(16px);--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--transition-smooth: all .3s cubic-bezier(.4, 0, .2, 1);--transition-spring: all .5s cubic-bezier(.175, .885, .32, 1.275)}body.dark-theme{--bg-color: hsl(222, 47%, 9%);--bg-pattern: hsla(160, 87%, 34%, .025);--surface-color: hsl(222, 40%, 13%);--surface-border: rgba(255, 255, 255, .08);--text-primary: #f8fafc;--text-secondary: #94a3b8;--primary-color: #10b981;--primary-light: #34d399;--accent-color: #f59e0b;--accent-hover: #d97706;--accent-light: rgba(245, 158, 11, .14);--shadow-sm: 0 4px 6px -1px rgba(0, 0, 0, .3), 0 2px 4px -1px rgba(0, 0, 0, .2);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .45), 0 4px 6px -2px rgba(0, 0, 0, .25);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .55), 0 10px 10px -5px rgba(0, 0, 0, .35)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background-color:var(--bg-color);background-image:radial-gradient(at 0% 0%,var(--bg-pattern) 0px,transparent 50%),radial-gradient(at 100% 100%,var(--bg-pattern) 0px,transparent 50%);color:var(--text-primary);line-height:1.6;overflow-x:hidden;transition:background-color .4s ease,color .4s ease}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.25}a{color:inherit;text-decoration:none}button{font-family:var(--font-body);border:none;background:none;cursor:pointer;outline:none}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-color)}::-webkit-scrollbar-thumb{background:var(--primary-light);border-radius:var(--radius-sm);border:2px solid var(--bg-color)}::-webkit-scrollbar-thumb:hover{background:var(--primary-color)}@keyframes slideInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}header{position:fixed;top:0;left:0;width:100%;z-index:100;background-color:var(--surface-color);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--surface-border);transition:var(--transition-smooth)}.nav-container{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:.5rem;font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--primary-color);transition:var(--transition-smooth)}.logo span{color:var(--accent-color)}.logo-icon{width:38px;height:38px;object-fit:contain;transition:var(--transition-spring)}.logo:hover .logo-icon{transform:rotate(15deg) scale(1.1)}nav ul{display:flex;list-style:none;gap:2rem}nav a{font-weight:500;font-size:.95rem;padding:.5rem 0;position:relative;transition:var(--transition-smooth)}nav a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--accent-color);transition:var(--transition-smooth)}nav a:hover{color:var(--primary-light)}nav a:hover:after{width:100%}.nav-actions{display:flex;align-items:center;gap:1.5rem}.theme-toggle-btn,.cart-toggle-btn{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background-color:var(--surface-border);color:var(--text-primary);transition:var(--transition-spring)}.theme-toggle-btn:hover,.cart-toggle-btn:hover{transform:scale(1.08);background-color:var(--primary-light);color:#fff}.cart-count{position:absolute;top:-4px;right:-4px;background-color:var(--accent-color);color:#fff;font-size:.75rem;font-weight:700;min-width:20px;height:20px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 4px;box-shadow:var(--shadow-sm);transition:var(--transition-spring)}.cart-panel{position:fixed;top:0;right:-420px;width:100%;max-width:420px;height:100%;background-color:var(--surface-color);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-left:1px solid var(--surface-border);z-index:1000;box-shadow:var(--shadow-lg);transition:right .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column}.cart-panel.open{right:0}.cart-header{padding:2rem;border-bottom:1px solid var(--surface-border);display:flex;justify-content:space-between;align-items:center}.cart-header h3{font-size:1.5rem;color:var(--primary-color)}.close-cart-btn{width:36px;height:36px;border-radius:50%;background-color:var(--bg-color);color:var(--text-primary);display:flex;align-items:center;justify-content:center;transition:var(--transition-smooth)}.close-cart-btn:hover{background-color:var(--primary-color);color:#fff}.cart-items{flex:1;padding:2rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.5rem}.cart-item{display:grid;grid-template-columns:80px 1fr auto;gap:1rem;align-items:center;border-bottom:1px solid var(--surface-border);padding-bottom:1.5rem}.cart-item-img{width:80px;height:80px;border-radius:var(--radius-sm);object-fit:cover}.cart-item-details h4{font-size:1rem;margin-bottom:.25rem}.cart-item-price{font-weight:700;color:var(--primary-color);font-size:.95rem;margin-bottom:.5rem}.cart-item-qty{display:flex;align-items:center;gap:.5rem}.qty-btn{width:24px;height:24px;border-radius:50%;background-color:var(--bg-color);border:1px solid var(--surface-border);display:flex;align-items:center;justify-content:center;font-size:.8rem;transition:var(--transition-smooth)}.qty-btn:hover{background-color:var(--primary-light);color:#fff}.remove-item-btn{color:var(--text-secondary);transition:var(--transition-smooth)}.remove-item-btn:hover{color:#d9534f}.cart-footer{padding:2rem;background-color:var(--bg-color);border-top:1px solid var(--surface-border)}.cart-total-row{display:flex;justify-content:space-between;font-size:1.15rem;font-weight:700;margin-bottom:1.5rem}.checkout-btn{display:block;width:100%;background-color:var(--primary-color);color:#fff;text-align:center;padding:1rem;border-radius:var(--radius-md);font-weight:600;font-size:1rem;box-shadow:var(--shadow-md);transition:var(--transition-smooth)}.checkout-btn:hover{background-color:var(--accent-color)}.cart-empty-msg{text-align:center;color:var(--text-secondary);margin-top:3rem}.cart-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;display:none}.cart-overlay.open{display:block}footer{background-color:var(--primary-color);color:#fff;padding:5rem 2rem 2rem;border-top:1px solid var(--surface-border)}.footer-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1.5fr;gap:3rem;margin-bottom:4rem}.footer-brand p{opacity:.75;margin-bottom:1.5rem;font-size:.95rem}.footer-socials{display:flex;gap:1rem}.social-icon{width:36px;height:36px;background-color:#ffffff1a;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:var(--transition-smooth)}.social-icon:hover{background-color:var(--accent-color);transform:translateY(-2px)}.footer-links h5{font-size:1.15rem;margin-bottom:1.5rem;position:relative}.footer-links h5:after{content:"";position:absolute;bottom:-6px;left:0;width:24px;height:2px;background-color:var(--accent-color)}.footer-links ul{list-style:none;display:flex;flex-direction:column;gap:.75rem;font-size:.95rem}.footer-links a{opacity:.75;transition:var(--transition-smooth)}.footer-links a:hover{opacity:1;color:var(--accent-color);padding-left:4px}.footer-newsletter h5{font-size:1.15rem;margin-bottom:1.5rem}.footer-newsletter p{opacity:.75;margin-bottom:1.25rem;font-size:.95rem}.newsletter-form{display:flex;background-color:#ffffff1a;padding:.25rem;border-radius:50px}.newsletter-form input{flex:1;border:none;background:transparent;padding:.75rem 1.25rem;color:#fff;font-family:var(--font-body);outline:none}.newsletter-form input::placeholder{color:#fff9}.newsletter-form button{background-color:var(--accent-color);color:#fff;padding:0 1.5rem;border-radius:50px;font-weight:600;transition:var(--transition-smooth)}.newsletter-form button:hover{background-color:var(--accent-hover)}.footer-bottom{max-width:1200px;margin:0 auto;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);text-align:center;font-size:.85rem;opacity:.6}@media(max-width:992px){.footer-container{grid-template-columns:1fr 1fr}}@media(max-width:768px){nav{display:none}.footer-container{grid-template-columns:1fr}}@media(max-width:480px){.nav-container{padding:.75rem 1rem}.logo{gap:.25rem;font-size:1.1rem}.logo-icon{width:32px;height:32px}.nav-actions{gap:.4rem}}.hero{padding:8rem 2rem 5rem;position:relative;overflow:hidden}.hero-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:4rem;align-items:center}.hero-text{animation:slideInLeft 1s ease}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:50px;background-color:var(--accent-light);color:var(--accent-color);font-size:.85rem;font-weight:600;margin-bottom:1.5rem;border:1px solid hsla(35,75%,45%,.15)}.hero h1{font-size:3.5rem;color:var(--primary-color);margin-bottom:1.5rem}.hero p{font-size:1.1rem;color:var(--text-secondary);margin-bottom:2.5rem;max-width:540px}.search-bar{display:flex;background-color:var(--surface-color);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--surface-border);padding:.5rem;border-radius:50px;box-shadow:var(--shadow-md);max-width:480px;transition:var(--transition-smooth)}.search-bar:focus-within{border-color:var(--primary-light);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.search-bar input{flex:1;border:none;background:transparent;padding:0 1rem;font-size:1rem;color:var(--text-primary);outline:none}.search-bar input::placeholder{color:var(--text-secondary);opacity:.7}.search-bar button{background-color:var(--primary-color);color:#fff;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:var(--transition-smooth)}.search-bar button:hover{background-color:var(--accent-color)}.hero-image-wrapper{position:relative;animation:slideInRight 1s ease}.hero-image-wrapper:before{content:"";position:absolute;top:-20px;left:-20px;width:calc(100% + 40px);height:calc(100% + 40px);border:2px dashed var(--primary-light);border-radius:var(--radius-lg);opacity:.3;z-index:0}.hero-img{display:block;width:100%;height:auto;aspect-ratio:1 / 1;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);position:relative;z-index:1;object-fit:cover;object-position:50% 55%;transition:var(--transition-smooth)}.hero-img:hover{transform:scale(1.02)}.store{max-width:1200px;margin:0 auto;padding:4rem 2rem}.section-header{text-align:center;margin-bottom:3rem}.section-header h2{font-size:2.5rem;color:var(--primary-color);margin-bottom:.5rem}.section-header p{color:var(--text-secondary);font-size:1.05rem}.filter-container{display:flex;justify-content:center;gap:1rem;margin-bottom:3rem;flex-wrap:wrap}.filter-btn{padding:.6rem 1.5rem;border-radius:50px;font-weight:500;background-color:var(--surface-color);border:1px solid var(--surface-border);color:var(--text-secondary);box-shadow:var(--shadow-sm);transition:var(--transition-spring)}.filter-btn:hover{border-color:var(--primary-light);color:var(--text-primary);transform:translateY(-2px)}.filter-btn.active{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:var(--shadow-md)}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}.plant-card{background-color:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);transition:var(--transition-spring);display:flex;flex-direction:column}.plant-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:#075f4226}.plant-image-container{position:relative;overflow:hidden;aspect-ratio:4/3}.plant-card img{width:100%;height:100%;object-fit:cover;transition:var(--transition-smooth)}.plant-card:hover img{transform:scale(1.08)}.plant-image-fallback{display:grid;place-items:center;background:var(--accent-light)}.plant-image-fallback img{width:38%;height:38%;object-fit:contain}.plant-tag{position:absolute;top:1rem;left:1rem;background-color:var(--surface-color);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);padding:.25rem .75rem;border-radius:50px;font-size:.8rem;font-weight:600;color:var(--primary-light);border:1px solid var(--surface-border)}.plant-info{padding:1.5rem;flex:1;display:flex;flex-direction:column}.plant-title{font-size:1.25rem;margin-bottom:.5rem;color:var(--text-primary)}.plant-scientific-name,.plant-description{color:var(--text-secondary)}.plant-scientific-name{margin-bottom:.5rem}.plant-description{margin-bottom:1rem}.plant-meta{display:flex;flex-wrap:wrap;gap:1rem;font-size:.85rem;color:var(--text-secondary);margin-bottom:1.25rem}.plant-price small{color:var(--text-secondary);font-size:.75rem;font-weight:500}.plant-meta span{display:flex;align-items:center;gap:.25rem}.plant-purchase{display:flex;align-items:center;justify-content:space-between;margin-top:auto}.plant-price{font-size:1.35rem;font-weight:700;color:var(--primary-color)}.add-to-cart-btn{background-color:var(--primary-color);color:#fff;padding:.6rem 1.2rem;border-radius:var(--radius-sm);font-weight:500;font-size:.9rem;display:flex;align-items:center;gap:.5rem;box-shadow:var(--shadow-sm);transition:var(--transition-smooth)}.add-to-cart-btn:hover{background-color:var(--accent-color);transform:translateY(-2px)}.web-order-form{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto}.web-order-form .cart-items{flex:0 0 auto;padding:1.5rem 1.75rem 1rem;overflow-y:visible}.web-order-form .cart-footer{flex:0 0 auto;padding:1.25rem 1.75rem 2rem;background-color:var(--surface-color);border-top:1px solid var(--surface-border)}.web-order-fields{display:grid;gap:.85rem;margin:1rem 0}.web-order-fields label{display:grid;gap:.35rem;color:var(--text-primary);font-size:.85rem;font-weight:650}.web-order-fields small,.web-order-help{color:var(--text-secondary);font-size:.75rem;font-weight:400}.web-order-fields input,.web-order-fields select,.web-order-fields textarea{width:100%;border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:.6rem .7rem;background:var(--bg-color);color:var(--text-primary);resize:vertical}.web-order-error{color:#b42318}.web-order-ticket{display:flex;flex-direction:column;align-items:center;padding:1.5rem 1.25rem 2.5rem;text-align:center;overflow-y:auto;flex:1}.ticket-badge-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .85rem;border-radius:50px;background:#10b98126;color:#10b981;font-weight:700;font-size:.82rem}.order-ticket-card{width:100%;margin-top:1.25rem;background:var(--bg-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);padding:1.25rem 1.2rem;box-shadow:var(--shadow-sm);text-align:left}.order-ticket-header{text-align:center}.order-ticket-number{font-family:var(--font-mono, monospace);font-size:1.15rem;color:var(--primary-color);letter-spacing:.04em}.copy-folio-btn{padding:.2rem .55rem;font-size:.75rem;font-weight:600;border-radius:6px;border:1px solid var(--surface-border);background:var(--surface-color);color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth)}.copy-folio-btn:hover{color:var(--primary-color);border-color:var(--primary-color)}.order-ticket-divider{height:1px;border-top:1px dashed var(--surface-border);margin:.85rem 0}.order-ticket-rows{display:flex;flex-direction:column;gap:.5rem}.order-ticket-row{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;gap:.75rem}.order-ticket-row span{color:var(--text-secondary)}.order-ticket-row strong{color:var(--text-primary);text-align:right;word-break:break-word}.order-ticket-row.total{font-size:.95rem;padding-top:.2rem}.ticket-total-value{color:var(--primary-color)!important;font-size:1.15rem!important;font-weight:800}.order-ticket-email-note{width:100%;margin-top:.85rem;padding:.75rem .9rem;border-radius:var(--radius-sm);background:#3b82f614;border:1px solid rgba(59,130,246,.2);color:#1d4ed8;font-size:.82rem;text-align:left;line-height:1.4}body.dark-theme .order-ticket-email-note{background:#3b82f626;color:#93c5fd;border-color:#3b82f64d}.order-ticket-instructions{width:100%;margin-top:.85rem;padding:.85rem 1rem;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-color) 85%,var(--bg-color));border:1px solid var(--surface-border);text-align:left}.order-ticket-actions{width:100%;display:flex;flex-direction:column;gap:.6rem;margin-top:1.25rem}.web-order-confirmation{display:grid;justify-items:center;gap:.8rem;padding:2.5rem 1.5rem;text-align:center;color:var(--text-primary)}.web-order-confirmation-icon{display:grid;place-items:center;width:4rem;height:4rem;border-radius:999px;background:#dcfce7;color:#15803d;font-size:2rem;font-weight:800}.web-order-confirmation h4,.web-order-confirmation p{margin:0}.web-order-status{display:inline-flex;border-radius:999px;padding:.25rem .6rem;font-size:.75rem;font-weight:700;background:color-mix(in srgb,var(--text-secondary) 12%,transparent)}.web-order-status.status-pending{color:#a15c00;background:#fff4d6}.web-order-status.status-confirmed{color:#1d4ed8;background:#dbeafe}.web-order-status.status-ready{color:#047857;background:#d1fae5}.web-order-status.status-completed{color:#166534;background:#dcfce7}.web-order-status.status-cancelled{color:#b42318;background:#fee4e2}.web-order-admin-detail{display:grid;gap:.9rem}.web-order-admin-detail>p{margin:0}.web-order-admin-item{display:flex;justify-content:space-between;gap:1rem;padding:.75rem;border-bottom:1px solid var(--surface-border)}.web-order-admin-item:last-child{border-bottom:0}.web-order-admin-item div,.web-order-admin-item small{display:grid;gap:.2rem}@media(max-width:992px){.hero-container{grid-template-columns:1fr;gap:3rem;text-align:center}.hero-text{display:flex;flex-direction:column;align-items:center}.search-bar{width:100%}}@media(max-width:768px){.hero h1{font-size:2.75rem}}.quiz-section{background-color:var(--surface-color);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-top:1px solid var(--surface-border);border-bottom:1px solid var(--surface-border);padding:5rem 2rem;position:relative}.quiz-container{max-width:800px;margin:0 auto;text-align:center}.quiz-card{background-color:var(--bg-color);border:1px solid var(--surface-border);border-radius:var(--radius-lg);padding:3rem 2rem;box-shadow:var(--shadow-lg);margin-top:2rem;position:relative}.quiz-step{display:none}.quiz-step.active{display:block;animation:fadeIn .5s ease}.quiz-question{font-size:1.5rem;font-weight:600;margin-bottom:2rem;color:var(--primary-color)}.quiz-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1.5rem;margin-bottom:2rem}.quiz-option{border:2px solid var(--surface-border);padding:1.5rem;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-spring);background-color:var(--surface-color)}.quiz-option:hover{transform:translateY(-4px);border-color:var(--primary-light);box-shadow:var(--shadow-md)}.quiz-option.selected{border-color:var(--accent-color);background-color:var(--accent-light);color:var(--accent-color);transform:scale(1.02)}.quiz-option svg{width:48px;height:48px;margin-bottom:1rem;fill:currentColor}.quiz-option-text{font-weight:600;font-size:.95rem}.quiz-nav{display:flex;justify-content:space-between;align-items:center;margin-top:2rem}.quiz-btn{padding:.75rem 2rem;border-radius:50px;font-weight:600;transition:var(--transition-smooth)}.quiz-btn-secondary{border:1px solid var(--surface-border);color:var(--text-secondary)}.quiz-btn-secondary:hover{background-color:var(--surface-border)}.quiz-btn-primary{background-color:var(--primary-color);color:#fff;box-shadow:var(--shadow-md)}.quiz-btn-primary:hover{background-color:var(--accent-color)}.quiz-btn:disabled{opacity:.4;cursor:not-allowed}.progress-bar-container{width:100%;height:6px;background-color:var(--surface-border);border-radius:3px;margin-bottom:2rem;overflow:hidden}.progress-bar{height:100%;background-color:var(--accent-color);width:0%;transition:var(--transition-smooth)}.quiz-result-container{display:flex;flex-direction:column;align-items:center;animation:fadeIn .8s ease}.result-card-wrapper{margin:2rem 0;width:100%;max-width:320px}.chatbot-section{max-width:1200px;margin:0 auto;padding:5rem 2rem}.chat-container{display:grid;grid-template-columns:1.2fr 2fr;gap:3rem;background-color:var(--surface-color);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--surface-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg)}.chat-info{background-color:var(--primary-color);color:#fff;padding:3rem;display:flex;flex-direction:column;justify-content:center}.chat-info h3{font-size:2.25rem;margin-bottom:1rem}.chat-info p{opacity:.85;margin-bottom:2rem}.chat-topics{list-style:none;display:flex;flex-direction:column;gap:.75rem}.chat-topics li{display:flex;align-items:center;gap:.5rem;font-size:.95rem;background:#ffffff1a;padding:.75rem 1rem;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-smooth)}.chat-topics li:hover{background:#fff3;transform:translate(4px)}.chat-box{display:flex;flex-direction:column;height:500px;background-color:var(--bg-color)}.chat-messages{flex:1;padding:2rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.message{max-width:75%;padding:.85rem 1.2rem;border-radius:var(--radius-md);font-size:.95rem;animation:popIn .3s ease}.message.bot{background-color:var(--surface-color);border:1px solid var(--surface-border);align-self:flex-start;border-bottom-left-radius:4px}.message.user{background-color:var(--primary-color);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.typing-indicator{align-self:flex-start;background-color:var(--surface-color);border:1px solid var(--surface-border);padding:.6rem 1rem;border-radius:var(--radius-md);border-bottom-left-radius:4px;display:none;align-items:center;gap:4px}.typing-dot{width:6px;height:6px;background-color:var(--text-secondary);border-radius:50%;animation:bounce 1.2s infinite ease-in-out}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}.chat-input-area{padding:1.5rem;background-color:var(--surface-color);border-top:1px solid var(--surface-border);display:flex;gap:1rem}.chat-input-area input{flex:1;background-color:var(--bg-color);border:1px solid var(--surface-border);padding:.75rem 1.25rem;border-radius:50px;color:var(--text-primary);font-family:var(--font-body);font-size:.95rem;outline:none;transition:var(--transition-smooth)}.chat-input-area input:focus{border-color:var(--primary-light)}.send-chat-btn{background-color:var(--primary-color);color:#fff;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:var(--transition-smooth)}.send-chat-btn:hover{background-color:var(--accent-color);transform:scale(1.05)}@media(max-width:992px){.chat-container{grid-template-columns:1fr}.chat-info{padding:2rem}}.care-light-options{border:0;padding:0;margin:0;min-width:0;text-align:left}.care-light-options legend{font-size:1.25rem;font-weight:700;margin-bottom:1.4rem}.care-light-options .quiz-options{gap:1rem}.care-light-choice{position:relative;display:flex;flex-direction:column;gap:.65rem;padding:1.25rem;text-align:left}.care-light-choice input{position:absolute;right:1rem;top:1rem;width:18px;height:18px;accent-color:var(--primary-color)}.care-light-choice:focus-within{outline:3px solid var(--primary-color);outline-offset:3px}.care-option-icon{font-size:2rem;color:var(--primary-color);line-height:1}.care-light-choice small{font-size:.85rem;line-height:1.5;color:var(--text-secondary)}.care-climate-field{display:grid;gap:.65rem;text-align:left;margin-bottom:1.5rem}.care-climate-field label{font-weight:600}.care-climate-field select{width:100%;min-height:48px;border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:.8rem 1rem;background:var(--surface-color);color:var(--text-primary);font:inherit}.care-climate-field select:focus-visible,.care-suggestions button:focus-visible,.care-assistant button:focus-visible{outline:3px solid var(--primary-light);outline-offset:3px}.care-results{margin-top:2rem;text-align:left}.care-results h3{margin-bottom:1rem}.care-assistant .chat-container{gap:0;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr)}.care-assistant .chat-info{padding:2.25rem}.care-assistant .chat-info h3{font-size:clamp(1.75rem,3vw,2.2rem)}.care-topics{display:grid;gap:.85rem;font-size:.9rem}.care-assistant .chat-box{min-width:0;height:440px}.care-assistant .chat-messages{min-height:0;padding:1.5rem}.care-welcome{margin:auto 0;text-align:center}.care-welcome-icon{display:inline-grid;place-items:center;width:56px;height:56px;background:var(--accent-light);color:var(--primary-color);border-radius:50%;font-size:2rem;margin-bottom:.8rem}.care-welcome h4{font-size:1.35rem;margin-bottom:.5rem}.care-welcome p{color:var(--text-secondary);line-height:1.6}.care-suggestions{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.care-suggestions button{padding:.55rem .9rem;border:1px solid var(--surface-border);border-radius:24px;color:var(--primary-color);background:var(--surface-color);font:inherit;cursor:pointer}.care-suggestions button:hover{border-color:var(--primary-color);background:var(--accent-light)}.care-exchange{display:flex;flex-direction:column;gap:.75rem}.care-assistant .message{max-width:95%;overflow-wrap:anywhere;flex-shrink:0}.care-assistant .chat-input-area{padding:1rem;gap:.65rem}.care-assistant .chat-input-area input{min-width:0;width:0}.care-assistant .send-chat-btn{width:auto;min-height:46px;height:auto;padding:.7rem 1rem;border-radius:28px;flex-shrink:0;font:inherit;font-weight:600}.care-assistant button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:760px){.care-assistant .chat-container{grid-template-columns:minmax(0,1fr)}.care-assistant .chat-info{padding:1.5rem}.care-assistant .chat-info p{margin-bottom:1rem}.care-topics{display:flex;flex-wrap:wrap;gap:.75rem}.quiz-card{padding:1.5rem}}@media(max-width:480px){.quiz-section,.care-assistant{padding:3rem 1rem}.care-light-options .quiz-options{grid-template-columns:1fr}.care-light-choice{padding:1rem;gap:.35rem}.care-option-icon{font-size:1.5rem}.care-assistant .chat-input-area{flex-wrap:wrap}.care-assistant .chat-input-area input{flex-basis:100%;width:100%}.care-assistant .send-chat-btn{width:100%}}.admin-toggle-btn{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background-color:var(--surface-border);color:var(--text-primary);transition:var(--transition-spring)}.admin-toggle-btn:hover{transform:scale(1.08);background-color:var(--accent-color);color:#fff}.db-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:199;opacity:0;pointer-events:none;transition:opacity .4s ease}.db-overlay.open{opacity:1;pointer-events:auto}.login-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-40%) scale(.95);width:90%;max-width:450px;background-color:var(--surface-color);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:2.5rem;z-index:200;opacity:0;pointer-events:none;transition:transform .4s cubic-bezier(.175,.885,.32,1.275),opacity .3s ease}.login-modal.open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.login-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;border-bottom:1px solid var(--surface-border);padding-bottom:1rem}.login-header h3{font-size:1.5rem;color:var(--primary-color)}.close-login-btn,.close-db-btn{font-size:1.75rem;font-weight:700;color:var(--text-secondary);transition:var(--transition-smooth)}.close-login-btn:hover,.close-db-btn:hover{color:var(--accent-color);transform:scale(1.1)}.login-body p{font-size:.95rem;color:var(--text-secondary);margin-bottom:1.2rem}.demo-access-buttons{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.demo-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1rem;border-radius:var(--radius-md);border:1px solid var(--surface-border);background-color:var(--bg-color);color:var(--text-primary);font-weight:600;font-size:.85rem;transition:var(--transition-spring)}.demo-btn svg{stroke:var(--primary-color)}.demo-btn.admin-role-btn:hover{background-color:#3e745314}.demo-btn.manager-role-btn:hover{background-color:#d9972614}.login-divider{display:flex;align-items:center;text-align:center;margin:1.5rem 0;color:var(--text-secondary);font-size:.8rem;text-transform:uppercase;letter-spacing:1px}.login-divider:before,.login-divider:after{content:"";flex:1;border-bottom:1px solid var(--surface-border)}.login-divider:not(:empty):before{margin-right:.5em}.login-divider:not(:empty):after{margin-left:.5em}.form-group-db{margin-bottom:1.25rem;display:flex;flex-direction:column;gap:.5rem;text-align:left}.form-group-db label{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.form-group-db input,.form-group-db select,.form-group-db textarea{width:100%;padding:.65rem .9rem;border-radius:var(--radius-sm);border:1px solid var(--surface-border);background-color:var(--bg-color);color:var(--text-primary);font-family:var(--font-body);font-size:.92rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.form-group-db input:focus,.form-group-db select:focus,.form-group-db textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0a8f631f}.submit-login-btn{width:100%;padding:.9rem;background-color:var(--primary-color);color:#fff;border-radius:var(--radius-sm);font-weight:600;font-size:1rem;transition:var(--transition-smooth);margin-top:.5rem}.submit-login-btn:hover{background-color:var(--accent-color);box-shadow:var(--shadow-md)}.dashboard-panel{position:fixed;top:5%;left:5%;width:90%;height:90%;background-color:var(--surface-color);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:200;display:flex;flex-direction:column;opacity:0;pointer-events:none;transform:scale(.98);transition:opacity .3s ease,transform .4s cubic-bezier(.175,.885,.32,1.275)}.dashboard-panel.open{opacity:1;pointer-events:auto;transform:scale(1)}.dashboard-header{padding:1.5rem 2.5rem;border-bottom:1px solid var(--surface-border);display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap;background:linear-gradient(120deg,color-mix(in srgb,var(--surface-color) 94%,var(--accent-light)),var(--surface-color))}.dashboard-title-area{display:flex;align-items:center;gap:1rem;min-width:0}.dashboard-brand-mark{flex:0 0 48px;width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:var(--primary-color);color:#fff;box-shadow:0 8px 18px color-mix(in srgb,var(--primary-color) 22%,transparent);font-family:var(--font-display);font-size:.9rem;font-weight:700;letter-spacing:.06em}.dashboard-kicker{margin-bottom:.15rem;color:var(--accent-color);font-size:.7rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.role-badge-db{background-color:var(--primary-color);color:#fff;padding:.25rem .75rem;border-radius:50px;font-size:.8rem;font-weight:700;text-transform:uppercase}.dashboard-header h2{margin:0;font-size:clamp(1.35rem,2vw,1.75rem);color:var(--primary-color)}.dashboard-header-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.65rem;margin-left:auto}.logout-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--surface-border);font-weight:500;font-size:.9rem;color:var(--text-secondary);transition:var(--transition-smooth);white-space:nowrap}.logout-btn:hover{background-color:#d926261a;color:#e05e5e;border-color:#d9262633}.dashboard-body{flex:1;display:grid;grid-template-columns:240px 1fr;overflow:hidden;min-height:0}.dashboard-sidebar{border-right:1px solid var(--surface-border);padding:2rem 1.5rem;background-color:var(--bg-color);opacity:.95;overflow-y:auto}.dashboard-sidebar ul{list-style:none;display:flex;flex-direction:column;gap:.75rem}.db-nav-item{padding:.8rem 1.2rem;border-radius:var(--radius-sm);font-weight:500;font-size:.95rem;color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth)}.db-nav-item:hover{background-color:var(--surface-border);color:var(--text-primary);transform:translate(4px)}.db-nav-item.active{background-color:var(--primary-color);color:#fff;font-weight:600}.dashboard-content{padding:2.5rem;overflow-y:auto;text-align:left;min-width:0}.db-tab-content{display:none;animation:fadeIn .4s ease}.db-tab-content h3{font-size:1.8rem;color:var(--primary-color);margin-bottom:.5rem}.tab-desc{font-size:.95rem;color:var(--text-secondary);margin-bottom:2rem}.form-row-db{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.db-submit-btn{padding:.85rem 2rem;background-color:var(--primary-color);color:#fff;border-radius:var(--radius-sm);font-weight:600;font-size:1rem;transition:var(--transition-smooth);margin-top:1rem}.db-submit-btn:hover{background-color:var(--accent-color);box-shadow:var(--shadow-sm)}.table-responsive-db{overflow-x:auto;margin-top:1rem;border:1px solid var(--surface-border);border-radius:var(--radius-md);background-color:var(--surface-color)}.db-table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.db-table th{background-color:var(--bg-color);color:var(--text-secondary);padding:1rem;font-weight:600;border-bottom:1px solid var(--surface-border)}.db-table td{padding:1rem;border-bottom:1px solid var(--surface-border);color:var(--text-primary)}.db-table tr:last-child td{border-bottom:none}.db-table tbody tr:hover{background-color:var(--bg-pattern)}.db-badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.db-badge.success{background-color:#248f4d26;color:var(--success-color)}.db-badge.warning{background-color:#d9972626;color:var(--accent-color)}.db-badge.info{background-color:#2d8cf026;color:#2d8cf0}.plant-price-original{font-size:.95rem;text-decoration:line-through;color:var(--text-secondary);opacity:.7;margin-right:.5rem}.plant-promo-tag{background-color:var(--accent-color);color:#fff;padding:.15rem .5rem;border-radius:4px;font-size:.7rem;font-weight:700;margin-left:.5rem;vertical-align:middle}.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.analytics-card{background-color:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);padding:1.5rem;display:flex;align-items:center;gap:1.25rem;box-shadow:var(--shadow-sm);transition:var(--transition-smooth)}.analytics-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.analytics-card .card-icon{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.analytics-card .card-details h4{font-size:.85rem;color:var(--text-secondary);margin-bottom:.25rem;font-family:var(--font-body);font-weight:500}.analytics-card .card-details p{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.category-bars{display:flex;flex-direction:column;gap:1.25rem;margin-top:1rem}.cat-bar-item{display:grid;grid-template-columns:100px 1fr 50px;align-items:center;gap:1rem}.cat-bar-item .cat-name{font-weight:500;font-size:.9rem;color:var(--text-primary)}.cat-bar-item .bar-outer{height:10px;background-color:var(--surface-border);border-radius:5px;overflow:hidden}.cat-bar-item .bar-inner{height:100%;background-color:var(--primary-color);border-radius:5px;transition:width .8s cubic-bezier(.4,0,.2,1)}.cat-bar-item .cat-value{font-size:.85rem;font-weight:600;color:var(--text-secondary);text-align:right}.staff-action-btn{background:none;border:1px solid var(--surface-border);padding:.35rem .75rem;border-radius:4px;font-size:.8rem;font-weight:600;color:var(--text-secondary);transition:var(--transition-smooth)}.staff-action-btn:hover{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}@media(max-width:900px){.dashboard-panel{top:2%;left:2%;width:96%;height:96%}.dashboard-body{grid-template-columns:1fr;grid-template-rows:auto 1fr}.dashboard-sidebar{border-right:none;border-bottom:1px solid var(--surface-border);padding:1rem}.dashboard-sidebar ul{flex-direction:row;overflow-x:auto;padding-bottom:.5rem;gap:.5rem}.db-nav-item{white-space:nowrap;padding:.5rem 1rem}.form-row-db{grid-template-columns:1fr;gap:.75rem}.dashboard-content{padding:1.5rem}}@media(max-width:640px){.dashboard-header{align-items:stretch;padding:1.15rem}.dashboard-title-area{align-items:flex-start}.dashboard-brand-mark{flex-basis:42px;width:42px;height:42px;border-radius:13px}.dashboard-header-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-left:0}.dashboard-header-actions .role-badge-db{grid-column:1 / -1;justify-self:start}.dashboard-header-actions .logout-btn{width:100%;padding-inline:.65rem}.dashboard-header-actions .logout-btn:last-child{grid-column:1 / -1}.dashboard-content{padding:1rem}}.db-stock-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.5rem;margin-top:1rem}.stock-card{background-color:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:var(--transition-spring);position:relative}.stock-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.stock-card.critical{border-color:#f04242;background:linear-gradient(135deg,#f0424214,#f0424203);animation:pulse-critical 2s infinite ease-in-out}.stock-card.low{border-color:#e89c30;background:linear-gradient(135deg,#e89c300f,#e89c3003)}.stock-card.adequate{border-color:#0ba270;background:linear-gradient(135deg,#0ba27008,#0ba27003)}body.dark-theme .stock-card.critical{background:linear-gradient(135deg,#8e0b0b26,#5e08080d)}body.dark-theme .stock-card.low{background:linear-gradient(135deg,#8a570f1f,#5c3a0a0a)}body.dark-theme .stock-card.adequate{background:linear-gradient(135deg,#075f4226,#0330210d)}@keyframes pulse-critical{0%,to{box-shadow:0 4px 6px -1px #0000000d,0 0 #ef535066}50%{box-shadow:0 10px 15px -3px #00000014,0 0 12px 6px #ef535033}}.stock-card-image-container{position:relative;height:140px;overflow:hidden;border-bottom:1px solid var(--surface-border)}.stock-card-img-large{width:100%;height:100%;object-fit:cover;transition:var(--transition-smooth)}.stock-card:hover .stock-card-img-large{transform:scale(1.05)}.stock-badge-floating{position:absolute;top:10px;right:10px;background-color:var(--surface-color);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);padding:.35rem .75rem;border-radius:50px;font-size:.75rem;font-weight:700;box-shadow:var(--shadow-sm);border:1px solid var(--surface-border)}.stock-card.critical .stock-badge-floating{border-color:#f0424266;color:#f04242}.stock-card.low .stock-badge-floating{border-color:#e89c3066;color:#e89c30}.stock-card.adequate .stock-badge-floating{border-color:#0ba27066;color:#0ba270}.stock-card-body{padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;flex:1}.stock-card-body h4{font-size:1.05rem;color:var(--text-primary);font-family:var(--font-body);font-weight:700}.stock-card-category{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:-.25rem}.stock-level-indicator{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;font-weight:500;border-top:1px dashed var(--surface-border);padding-top:.75rem;margin-top:.25rem}.stock-qty-value{font-weight:700;font-size:.95rem}.stock-card.critical .stock-qty-value{color:#f04242}.stock-card.low .stock-qty-value{color:#e89c30}.stock-card.adequate .stock-qty-value{color:#0ba270}.stock-action-group{display:flex;gap:.5rem;margin-top:auto}.stock-btn{flex:1;padding:.5rem 0;border-radius:var(--radius-sm);background-color:var(--bg-color);border:1px solid var(--surface-border);font-size:.8rem;font-weight:600;color:var(--text-primary);transition:var(--transition-smooth)}.stock-btn:hover{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color);transform:translateY(-1px)}.botanical-section-card{background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);padding:1.25rem;margin-bottom:1.25rem;box-shadow:var(--shadow-sm)}.botanical-section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--surface-border)}.botanical-section-header h4{font-size:.95rem;font-weight:700;color:var(--primary-color);margin:0;text-transform:uppercase;letter-spacing:.5px}.botanical-chips-grid{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.4rem}.botanical-chip{padding:.25rem .65rem;border-radius:20px;font-size:.75rem;font-weight:500;border:1px solid var(--surface-border);background:var(--bg-color);color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth)}.botanical-chip:hover,.botanical-chip.active{background:var(--accent-light, #e8f5e9);color:var(--primary-color);border-color:var(--primary-color)}.stock-status-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:50px;font-size:.8rem;font-weight:700;line-height:1}.stock-status-badge.in-stock{background:#24a85b1f;color:#188b48;border:1px solid hsla(145,65%,40%,.3)}.stock-status-badge.low-stock{background:#f9a00626;color:#ae5f04;border:1px solid hsla(38,95%,50%,.35)}.stock-status-badge.out-of-stock{background:#ee2b2b1f;color:#d41111;border:1px solid hsla(0,85%,55%,.3)}.inventory-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;padding:1rem 1.25rem;background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md)}.inventory-stats-bar{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:center}.inventory-stat-item{display:flex;flex-direction:column;gap:.15rem}.inventory-stat-label{font-size:.75rem;text-transform:uppercase;color:var(--text-secondary);letter-spacing:.5px;font-weight:600}.inventory-stat-value{font-size:1.15rem;font-weight:700;color:var(--text-primary)}.stock-row-actions{display:flex;gap:.35rem;align-items:center}.mini-action-btn{padding:.3rem .65rem;font-size:.78rem;font-weight:600;border-radius:var(--radius-sm);border:1px solid var(--surface-border);background:var(--surface-color);color:var(--text-primary);cursor:pointer;transition:var(--transition-smooth);display:inline-flex;align-items:center;gap:.25rem}.mini-action-btn:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color);transform:translateY(-1px)}.mini-action-btn.primary{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.mini-action-btn.primary:hover{opacity:.9}.stock-kpi-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;margin-bottom:1.25rem}.stock-kpi-card{display:flex;align-items:center;gap:1rem;padding:1.1rem 1.25rem;background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.stock-kpi-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--primary-color)}.stock-kpi-icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.35rem;flex-shrink:0}.stock-kpi-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.stock-kpi-value{font-size:1.45rem;font-weight:800;color:var(--text-primary);line-height:1.2;font-family:var(--font-heading)}.stock-kpi-label{font-size:.8rem;color:var(--text-secondary);font-weight:600;letter-spacing:.3px}.stock-filter-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1.25rem;background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);margin-bottom:1.25rem}.stock-status-chips{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.stock-filter-chip{padding:.4rem .9rem;border-radius:20px;border:1px solid var(--surface-border);background:var(--bg-color);color:var(--text-secondary);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease}.stock-filter-chip:hover{border-color:var(--primary-color);color:var(--primary-color);background:var(--surface-color)}.stock-filter-chip.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:0 2px 8px #0a8f6340}.promo-empty-card{padding:3.5rem 2rem;text-align:center;background:var(--surface-color);border:2px dashed var(--surface-border);border-radius:var(--radius-lg);margin-top:1.25rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.promo-empty-icon{width:64px;height:64px;border-radius:50%;background:#0a8f631a;color:var(--primary-color);display:flex;align-items:center;justify-content:center;font-size:2rem}.stock-search-box{position:relative;display:flex;align-items:center;flex:1;max-width:400px;background:var(--bg-color);border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:.15rem .75rem;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.stock-search-box:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 3px #0a8f631f;background:var(--surface-color)}.stock-search-icon{font-size:.95rem;color:var(--text-secondary);margin-right:.5rem;display:flex;align-items:center;-webkit-user-select:none;user-select:none;flex-shrink:0}.stock-search-box input{flex:1;width:100%;border:none!important;outline:none!important;background:transparent!important;padding:.5rem 0!important;font-size:.9rem!important;color:var(--text-primary)!important;font-family:var(--font-body)!important;box-shadow:none!important}.stock-search-box input::placeholder{color:var(--text-secondary);opacity:.8}.stock-search-clear{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.2rem .4rem;font-size:.85rem;border-radius:50%;transition:all .2s ease;flex-shrink:0;display:flex;align-items:center;justify-content:center}.stock-search-clear:hover{color:var(--text-primary);background:var(--surface-border)}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-md);margin-top:.5rem}.admin-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.9rem;text-align:left}.admin-table thead th{background:color-mix(in srgb,var(--surface-color) 92%,var(--bg-color));color:var(--text-secondary);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.95rem 1.15rem;border-bottom:1px solid var(--surface-border);white-space:nowrap}.admin-table thead th:first-child{border-top-left-radius:var(--radius-md)}.admin-table thead th:last-child{border-top-right-radius:var(--radius-md)}.admin-table tbody tr{transition:background-color .18s ease}.admin-table tbody tr:hover{background-color:color-mix(in srgb,var(--primary-color) 4%,transparent)}.admin-table tbody td{padding:1rem 1.15rem;border-bottom:1px solid var(--surface-border);color:var(--text-primary);vertical-align:middle}.admin-table tbody tr:last-child td{border-bottom:none}.theme-toggle-btn-admin{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .9rem;border-radius:var(--radius-sm);border:1px solid var(--surface-border);background:color-mix(in srgb,var(--surface-color) 90%,var(--bg-color));color:var(--text-primary);font-weight:600;font-size:.82rem;cursor:pointer;transition:var(--transition-smooth)}.theme-toggle-btn-admin:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color);transform:translateY(-1px);box-shadow:0 4px 10px #0a8f6340}body.dark-theme .dashboard-panel{background-color:#111827;border-color:#ffffff14;box-shadow:0 25px 60px -15px #000000b3}body.dark-theme .dashboard-header{background:linear-gradient(120deg,#131d2e,#111827);border-bottom-color:#ffffff14}body.dark-theme .dashboard-sidebar{background-color:#0c121e;border-right-color:#ffffff0f}body.dark-theme .db-nav-item{color:#94a3b8}body.dark-theme .db-nav-item:hover:not(:disabled){background-color:#ffffff0d;color:#f8fafc}body.dark-theme .db-nav-item.active{background-color:#10b981;color:#fff;box-shadow:0 4px 14px #10b98159}body.dark-theme .botanical-section-card{background:#151d2c;border-color:#ffffff12;box-shadow:0 8px 24px -4px #0006}body.dark-theme .stock-kpi-card{background:linear-gradient(145deg,#151d2c,#131a28);border-color:#ffffff12;box-shadow:0 8px 20px -4px #0006}body.dark-theme .stock-kpi-card:hover{border-color:#10b981;box-shadow:0 12px 28px -4px #10b98126}body.dark-theme .stock-filter-toolbar{background:#151d2c;border-color:#ffffff12}body.dark-theme .stock-filter-chip{background:#0c121e;border-color:#ffffff14;color:#94a3b8}body.dark-theme .stock-filter-chip:hover{background:#1e293b;color:#f8fafc;border-color:#10b981}body.dark-theme .stock-filter-chip.active{background:#10b981;color:#fff;border-color:#10b981;box-shadow:0 2px 10px #10b98159}body.dark-theme .stock-search-box{background:#0c121e;border-color:#ffffff1a}body.dark-theme .stock-search-box input{color:#f8fafc!important}body.dark-theme .admin-table thead th{background:#0f1726;border-bottom-color:#ffffff14;color:#94a3b8}body.dark-theme .admin-table tbody td{border-bottom-color:#ffffff0f;color:#e2e8f0}body.dark-theme .admin-table tbody tr:hover{background-color:#ffffff09}body.dark-theme .mini-action-btn{background:#1e293b;border-color:#ffffff1a;color:#f1f5f9}body.dark-theme .mini-action-btn:hover:not(:disabled){background:#10b981;color:#fff;border-color:#10b981}body.dark-theme .admin-modal-content{background-color:#131c2c;border-color:#ffffff1a;box-shadow:0 25px 60px -15px #000000d9}body.dark-theme .admin-modal-user-summary,body.dark-theme .admin-role-comparison{background:#0c121e;border-color:#ffffff12}body.dark-theme .admin-role-capabilities-box{background:#0c121e;border-color:#ffffff1a}body.dark-theme .admin-tech-id{background:#ffffff14;color:#94a3b8}body.dark-theme .admin-role-capability-chip{background:#10b9811f;color:#34d399;border-color:#10b98140}body.dark-theme .admin-form-group select,body.dark-theme .admin-form-group input{background-color:#0c121e;color:#f8fafc;border-color:#ffffff1f}body.dark-theme .logout-btn{background:#151d2c;color:#94a3b8;border-color:#ffffff14}body.dark-theme .logout-btn:hover{background:#ef44441f;color:#f87171;border-color:#ef444440}.purchase-wizard-container{display:flex;flex-direction:column;gap:1.5rem}.purchase-stepper{display:flex;justify-content:space-between;align-items:center;background:var(--surface-color);padding:1rem 1.5rem;border-radius:var(--radius-md);border:1px solid var(--surface-border);position:relative;overflow-x:auto;gap:1rem}.step-item{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.85rem;font-weight:500;white-space:nowrap}.step-circle{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-color);border:1px solid var(--surface-border);color:var(--text-secondary);font-weight:700;font-size:.8rem;transition:all .2s ease}.step-item.active{color:var(--primary-color);font-weight:700}.step-item.active .step-circle{background:var(--primary-color);border-color:var(--primary-color);color:#fff;box-shadow:0 0 0 3px #10b98133}.step-item.completed{color:var(--text-primary)}.step-item.completed .step-circle{background:#10b98126;border-color:#10b981;color:#10b981}.wizard-actions-bar{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--surface-border);flex-wrap:wrap;gap:1rem}.code-badge{display:inline-block;padding:.15rem .45rem;font-family:monospace;font-size:.75rem;border-radius:var(--radius-sm);background:var(--bg-color);border:1px solid var(--surface-border);color:var(--text-primary)}.status-badge-res{display:inline-block;padding:.2rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.status-badge-res.unmatched{background:#f59e0b26;color:#d97706;border:1px solid rgba(245,158,11,.3)}.status-badge-res.auto_matched{background:#3b82f626;color:#2563eb;border:1px solid rgba(59,130,246,.3)}.status-badge-res.matched{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.3)}.status-badge-res.ignored{background:#64748b26;color:#64748b;border:1px solid rgba(100,116,139,.3)}body.dark-theme .step-circle{background:#0f172a;border-color:#ffffff26}body.dark-theme .purchase-stepper{background:#111827;border-color:#ffffff14}:focus-visible{outline:2px solid var(--primary-light);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex="-1"]:focus,[tabindex="-1"]:focus-visible{outline:none}button,a,input,select,textarea{font:inherit}button,.admin-toggle-btn{min-height:44px;min-width:44px}button:disabled{cursor:not-allowed;opacity:.55}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.form-notice{min-height:1.5rem;color:var(--primary-light);font-size:.9rem}.demo-copy{color:var(--text-secondary);font-size:.9rem}.demo-banner{display:flex;gap:.35rem;align-items:center;flex-wrap:wrap;padding:.85rem 1rem;border:1px solid color-mix(in srgb,var(--accent-color) 45%,transparent);background:var(--accent-light);color:var(--text-primary);border-radius:var(--radius-sm);margin:1rem 0}.demo-banner.compact{display:inline-flex;margin:.2rem 0;padding:.45rem .7rem;font-size:.78rem}.route-main{min-height:70vh;padding-top:4rem}.route-hero{max-width:1200px;margin:0 auto;padding:4rem 2rem 0;text-align:center}.route-hero h1{font-size:clamp(2.3rem,5vw,4rem);color:var(--primary-color)}.eyebrow{color:var(--accent-color);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}.catalog-page-search{max-width:620px;margin:0 auto 1.5rem;display:grid;gap:.45rem}.catalog-page-search label,.internal-page label{font-weight:600;color:var(--text-primary)}.catalog-page-search input,.internal-input{width:100%;min-height:44px;border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:.65rem .95rem;background:var(--surface-color);color:var(--text-primary);font-size:.92rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.catalog-page-search input:focus,.internal-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0a8f631f}.empty-state{grid-column:1/-1;text-align:center;padding:2rem;color:var(--text-secondary)}.catalog-results{min-height:12rem}.catalog-feedback{display:grid;justify-items:center;gap:1rem;padding:3rem 1rem;text-align:center;color:var(--text-secondary)}.catalog-error{color:#7d2020}.catalog-pagination{display:grid;justify-items:center;gap:.75rem;padding:2rem 0 0;color:var(--text-secondary);text-align:center}.catalog-action{min-width:140px;border-radius:var(--radius-sm);background:var(--primary-color);color:#fff;padding:.7rem 1.1rem;font-weight:700;box-shadow:var(--shadow-sm)}.catalog-action:hover:not(:disabled){background:var(--accent-color);transform:translateY(-2px)}.quiz-option{color:inherit;font:inherit;width:100%}.quiz-step{border:0;padding:0;margin:0;min-inline-size:0}.quiz-result-container .plant-card{max-width:380px;margin:0 auto 1.5rem;text-align:left}.chat-topics button{width:100%;text-align:left;border:0;background:transparent;color:inherit;cursor:pointer;padding:.65rem;border-radius:var(--radius-sm)}.chat-topics button:hover{background:var(--accent-light)}.cart-overlay{border:0;padding:0;min-width:0}.cart-panel[aria-hidden=true]{visibility:hidden}.cart-panel.open{visibility:visible}.cart-footer .checkout-btn{width:100%}.admin-toggle-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.nav-container nav a.active{color:var(--accent-color)}.internal-page{min-height:100vh;background:var(--bg-color);padding:2rem;color:var(--text-primary)}.auth-page{display:grid;place-items:center}.login-card{width:min(760px,100%);background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:clamp(1.5rem,5vw,3rem)}.login-card h1{margin:2rem 0 .75rem;font-size:clamp(2rem,5vw,3rem);color:var(--primary-color);outline:none}.auth-form{display:grid;gap:1rem;margin:1.5rem 0}.auth-form .form-group{display:grid;gap:.45rem}.auth-form input{width:100%;border:1px solid var(--surface-border);border-radius:var(--radius-sm);background:var(--bg-color);color:var(--text-primary);padding:.75rem 1rem;font-size:.95rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.auth-form input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0a8f631f}.auth-error{min-height:1.5rem;margin:0;color:#a42929;font-weight:600}.auth-status,.auth-session{margin:2rem 0 1.5rem}.auth-user{padding:.85rem 1rem;border-radius:var(--radius-sm);background:var(--accent-light);overflow-wrap:anywhere}.auth-session .submit-db-btn,.auth-form .submit-db-btn{width:100%}.access-context{display:grid;gap:1rem}.access-state{width:fit-content;margin:0;padding:.35rem .65rem;border-radius:999px;background:var(--accent-light);color:var(--primary-color);font-size:.8rem;font-weight:800;letter-spacing:.06em}.access-state-profile_missing,.access-state-profile_inactive,.access-state-no_role{background:#fff0d9;color:#7a4b00}.access-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0}.access-summary>div{padding:.85rem 1rem;border:1px solid var(--surface-border);border-radius:var(--radius-sm);background:var(--bg-color)}.access-summary dt{color:var(--text-secondary);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.access-summary dd{margin:.25rem 0 0;font-weight:700;overflow-wrap:anywhere}.capability-list h2{margin:0 0 .6rem;font-size:1rem;color:var(--primary-color)}.capability-list ul{display:flex;flex-wrap:wrap;gap:.5rem;padding:0;margin:0;list-style:none}.capability-list li{padding:.35rem .55rem;border-radius:var(--radius-sm);background:var(--accent-light)}.access-loading,.access-error{padding:1rem;border-radius:var(--radius-sm);background:var(--accent-light)}.access-error{background:#fff0f0;color:#7d2020}.access-error p{margin-top:0}.auth-session-actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1.25rem}.secondary-auth-btn{border:1px solid var(--primary-light);border-radius:var(--radius-sm);background:transparent;color:var(--primary-color);padding:.75rem 1rem;cursor:pointer;font-weight:700}.secondary-auth-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--primary-light);border-radius:var(--radius-sm);color:var(--primary-color);padding:.75rem 1rem;font-weight:700;text-decoration:none}.access-boundary-page{display:grid;place-items:center}.access-denied-card{max-width:680px}.access-boundary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1.5rem}.access-boundary-actions .back-link{justify-content:center}.access-route-denied,.module-permission-note{padding:.8rem 1rem;border-radius:var(--radius-sm);background:#fff0d9;color:#7a4b00;font-weight:600}.role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:2rem 0}.demo-btn{display:flex;flex-direction:column;gap:.5rem;min-height:160px;padding:1.2rem;border:1px solid var(--surface-border);border-radius:var(--radius-md);text-decoration:none;color:var(--text-primary);background:var(--surface-color);transition:var(--transition-smooth)}.demo-btn:hover{transform:translateY(-3px);border-color:var(--primary-light);box-shadow:var(--shadow-md)}.demo-btn strong{color:var(--primary-color);font-size:1.2rem}.demo-btn span{color:var(--text-secondary)}.back-link{display:inline-flex;align-items:center;min-height:44px;color:var(--primary-light);font-weight:700}.internal-shell{width:min(1500px,100%);margin:0 auto}.internal-topbar{display:flex;justify-content:space-between;align-items:center;gap:2rem;margin-bottom:2rem}.internal-topbar h1{font-size:2.4rem;color:var(--primary-color)}.internal-topbar>div:last-child{text-align:right}.cashier-layout{display:grid;grid-template-columns:1fr 390px;gap:1.5rem;align-items:start}.cashier-products,.cashier-ticket{background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);padding:1.5rem;box-shadow:var(--shadow-sm)}.cashier-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.5rem}.cashier-product{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:.8rem;padding:.8rem;border:1px solid var(--surface-border);border-radius:var(--radius-sm)}.cashier-product img{width:70px;height:70px;object-fit:cover;border-radius:var(--radius-sm)}.cashier-product h3{font-size:1rem}.cashier-product button,.ticket-row button{border:0;border-radius:var(--radius-sm);background:var(--primary-color);color:#fff;padding:.55rem .7rem;cursor:pointer}.cashier-ticket{position:sticky;top:1.5rem}.ticket-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--surface-border)}.ticket-row>div{display:flex;align-items:center;gap:.6rem}.ticket-total{display:flex;justify-content:space-between;padding:1.4rem 0;font-size:1.2rem}.dashboard-panel.embedded{position:static;width:min(1500px,100%);height:calc(100vh - 4rem);margin:0 auto;transform:none;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg)}.dashboard-sidebar button.db-nav-item{width:100%;border:0;text-align:left;cursor:pointer}.dashboard-sidebar button.db-nav-item:not(.active){background:transparent}.dashboard-sidebar button.db-nav-item:hover:not(:disabled):not(.active){background:var(--surface-border)}.dashboard-sidebar button.db-nav-item:focus-visible{outline:3px solid var(--primary-light);outline-offset:2px}.dashboard-sidebar button.db-nav-item:disabled{cursor:not-allowed;opacity:.62}.module-lock-reason{display:block;margin-top:.25rem;color:var(--text-secondary);font-size:.7rem;font-weight:500;white-space:normal}.role-assignment-placeholder{margin-top:1.5rem;padding:1rem;border:1px dashed var(--surface-border);border-radius:var(--radius-sm)}.dashboard-sidebar li{list-style:none}.dashboard-sidebar ul{padding:0}.dashboard-header-actions{display:flex;align-items:center;gap:1rem}.dashboard-content{overflow-y:auto}.db-tab-content.active{display:block}.dashboard-form textarea{min-height:100px;resize:vertical}.dashboard-form input,.dashboard-form select,.dashboard-form textarea{min-height:42px;border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:.6rem .85rem;background:var(--bg-color);color:var(--text-primary);font-size:.92rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.dashboard-form input:focus,.dashboard-form select:focus,.dashboard-form textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0a8f631f}.dashboard-filters-card{background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);padding:1.25rem;margin-bottom:1.5rem;box-shadow:var(--shadow-sm)}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;align-items:flex-end}.form-group{display:flex;flex-direction:column;gap:.4rem;text-align:left}.form-group label{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.form-group input,.form-group select,.form-group textarea{width:100%;min-height:42px;padding:.6rem .85rem;border-radius:var(--radius-sm);border:1px solid var(--surface-border);background-color:var(--bg-color);color:var(--text-primary);font-family:var(--font-body);font-size:.92rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0a8f631f}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1rem}.stats-grid{margin-top:1.5rem}.table-responsive{overflow-x:auto;margin-top:1.5rem}.real-data-copy{color:var(--primary-light);font-size:.9rem;font-weight:700}.admin-directory-error,.admin-page-error{margin-top:1rem;color:#a42929}.admin-load-more{margin-top:1rem}.cashier-info-subtitle{color:var(--text-secondary);font-size:.9rem;margin-top:.3rem}.section-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:.5rem}.refresh-btn-secondary{border:1px solid var(--surface-border);background:var(--surface-color);color:var(--text-primary);padding:.5rem .9rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem;font-weight:500;transition:background .2s,border-color .2s}.refresh-btn-secondary:hover:not(:disabled){background:var(--hover-color);border-color:var(--primary-color-light)}.refresh-btn-secondary:disabled{opacity:.6;cursor:not-allowed}.cashier-status-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;border:1px dashed var(--surface-border);border-radius:var(--radius-md);margin-top:1rem}.cashier-status-container.error{border-color:#fca5a5;background:#fef2f2;color:#991b1b}.cashier-status-container.empty{color:var(--text-secondary)}.loading-spinner{width:2.5rem;height:2.5rem;border:3px solid var(--surface-border);border-top-color:var(--primary-color);border-radius:50%;animation:spinner .8s linear infinite;margin-bottom:1rem}@keyframes spinner{to{transform:rotate(360deg)}}.retry-btn-primary{background:var(--primary-color);color:#fff;border:0;border-radius:var(--radius-sm);padding:.6rem 1.2rem;font-weight:500;cursor:pointer;margin-top:.8rem;transition:filter .2s}.retry-btn-primary:hover{filter:brightness(.95)}.retry-btn-secondary{background:transparent;color:var(--text-primary);border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:.6rem 1.2rem;font-weight:500;cursor:pointer;margin-top:.8rem;transition:background .2s}.retry-btn-secondary:hover{background:var(--hover-color)}.cashier-sales-list{position:relative}.updating-toast{position:absolute;top:-2.8rem;right:0;background:var(--primary-color);color:#fff;padding:.4rem .8rem;font-size:.75rem;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);font-weight:500;z-index:10;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.sales-grid{display:grid;grid-template-columns:repeat(auto-fill,60mm);gap:1rem;margin-top:1rem}.sale-card-item{background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);padding:1rem;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;transition:transform .2s,border-color .2s,box-shadow .2s;position:relative;min-height:140px;width:100%;color:inherit;text-align:left}.sale-card-item:hover{transform:translateY(-2px);border-color:var(--primary-color-light);box-shadow:var(--shadow-md)}.sale-card-item.selected{border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-color-light);background:var(--hover-color)}.sale-card-item.claimed-by-other{opacity:.75}.sale-card-header{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-secondary);margin-bottom:.5rem}.sale-folio{font-weight:600;color:var(--text-primary)}.sale-total-amount{font-size:1.3rem;font-weight:700;color:var(--primary-color);margin:.2rem 0}.sale-meta-info{font-size:.8rem;color:var(--text-secondary)}.sale-creator-label{font-size:.75rem;color:var(--text-secondary);margin-top:.2rem;font-style:italic}.sale-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.8rem}.claim-badge{font-size:.7rem;font-weight:600;padding:.2rem .5rem;border-radius:9999px;text-transform:uppercase}.claim-badge.available{background:#d1fae5;color:#065f46}.claim-badge.claimed-me{background:#dbeafe;color:#1e40af}.claim-badge.claimed-other{background:#ffedd5;color:#9a3412}.claim-disabled-msg{font-size:.7rem;color:#9a3412;font-weight:500}.load-more-btn{width:100%;background:transparent;color:var(--primary-color);border:1px dashed var(--primary-color);border-radius:var(--radius-md);padding:.8rem;font-weight:600;cursor:pointer;margin-top:1.5rem;transition:background .2s,color .2s}.load-more-btn:hover:not(:disabled){background:var(--hover-color)}.load-more-btn:disabled{opacity:.5;cursor:not-allowed}.ticket-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1rem;text-align:center;color:var(--text-secondary);border:1px dashed var(--surface-border);border-radius:var(--radius-md)}.ticket-placeholder.error{border-color:#fca5a5;background:#fef2f2}.ticket-placeholder .error-title{font-weight:600;color:#991b1b;font-size:1.1rem}.ticket-placeholder .error-copy{font-size:.85rem;color:#7f1d1d;margin:.4rem 0 .8rem}.error-action-row{display:flex;gap:.5rem;justify-content:center;width:100%}.ticket-detail-content{display:flex;flex-direction:column}.ticket-header-meta{font-size:.85rem;color:var(--text-secondary);display:flex;flex-direction:column;gap:.25rem}.folio-row{display:flex;justify-content:space-between;align-items:center}.folio-row h3{font-size:1.2rem;font-weight:700;color:var(--text-primary);margin:0}.close-ticket-btn{background:transparent;border:0;color:var(--text-secondary);font-size:1.2rem;cursor:pointer;padding:.2rem;line-height:1}.close-ticket-btn:hover{color:var(--text-primary)}.ticket-status-label-row{display:flex;justify-content:space-between;margin-top:.3rem;font-weight:500}.claim-text-indicator{font-size:.8rem;font-weight:600}.claim-text-indicator.available{color:#059669}.claim-text-indicator.claimed_by_me{color:#2563eb}.claim-text-indicator.claimed_by_other{color:#ea580c}.ticket-divider{border-bottom:1px dashed var(--surface-border);margin:1rem 0}.ticket-items-list{display:flex;flex-direction:column;gap:.8rem;max-height:280px;overflow-y:auto;padding-right:.3rem}.ticket-item-row{display:flex;justify-content:space-between;align-items:flex-start;font-size:.9rem}.ticket-item-name-col{display:flex;flex-direction:column}.item-name{font-weight:500;color:var(--text-primary)}.item-price-desc{font-size:.75rem;color:var(--text-secondary)}.item-total-price{font-weight:600;color:var(--text-primary)}.demo-notice-box{background:var(--hover-color);border-left:3px solid var(--primary-color);padding:.8rem;border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:.8rem;color:var(--text-secondary);margin-top:1rem}.demo-notice-box p{margin:0;line-height:1.4}.checkout-btn{margin-top:1rem;width:100%;border:0;border-radius:var(--radius-sm);background:var(--primary-color);color:#fff;padding:.8rem;font-weight:600;cursor:pointer;transition:filter .2s}.checkout-btn:disabled{opacity:.5;cursor:not-allowed}.form-notice.active{margin-top:.8rem;background:#e0f2fe;color:#0369a1;padding:.8rem;border-radius:var(--radius-sm);font-size:.85rem;line-height:1.4;border:1px solid #bae6fd}.attempt-status-box{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem;border-radius:var(--radius-md);margin-top:1rem;text-align:center;border:1px solid var(--surface-border)}.attempt-status-box.info{background:var(--hover-color);border-color:var(--primary-color-light)}.attempt-status-box.loading{background:var(--surface-color)}.attempt-status-box.uncertain{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.attempt-status-box.uncertain h4{margin:0 0 .5rem;font-size:1.1rem;font-weight:700}.attempt-status-box.succeeded{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.attempt-status-box.succeeded h4{margin:.5rem 0 .2rem;font-size:1.2rem;font-weight:700}.attempt-status-box.expired{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.attempt-status-box.expired h4{margin:0 0 .5rem;font-size:1.1rem;font-weight:700}.error-msg-inline{color:#b91c1c;background:#fef2f2;border:1px solid #fee2e2;padding:.6rem;border-radius:var(--radius-sm);font-size:.8rem;margin-top:.8rem;width:100%;text-align:left;line-height:1.4}.payment-method-form{margin-top:1.5rem;display:flex;flex-direction:column;gap:1.2rem}.payment-method-form select,.payment-method-form input{width:100%;padding:.65rem .85rem;border:1px solid var(--surface-border);border-radius:var(--radius-sm);background:var(--surface-color);color:var(--text-primary);font-size:.92rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.payment-method-form select:focus,.payment-method-form input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0a8f631f}.cash-payment-fields{display:flex;flex-direction:column;gap:.8rem;background:var(--hover-color);padding:.8rem;border-radius:var(--radius-sm)}.change-indicator{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;padding-top:.4rem;border-top:1px dashed var(--surface-border)}.change-indicator strong{font-size:1.1rem;color:var(--primary-color)}.action-row-buttons{display:flex;flex-direction:column;gap:.6rem;margin-top:.8rem}.checkout-btn.pay{background:#10b981;margin-top:0}.checkout-btn.pay:hover:not(:disabled){filter:brightness(.95)}.checkout-btn.reconcile{background:#f59e0b;margin-top:1rem}.checkout-btn.reconcile:hover:not(:disabled){filter:brightness(.95)}.success-icon{font-size:2.2rem;width:3.5rem;height:3.5rem;border-radius:50%;background:#d1fae5;color:#10b981;display:flex;align-items:center;justify-content:center;margin-bottom:.5rem}.succeeded-ticket-meta{width:100%;background:var(--surface-color);border:1px solid var(--surface-border);padding:.8rem;border-radius:var(--radius-sm);font-family:monospace;font-size:.85rem;color:var(--text-secondary);text-align:left;display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem}.succeeded-ticket-meta p{margin:0}.full-width{width:100%}@media(max-width:900px){.role-grid,.cashier-layout{grid-template-columns:1fr}.cashier-ticket{position:static}.cashier-product-grid{grid-template-columns:1fr}.dashboard-panel.embedded{height:auto;min-height:calc(100vh - 4rem)}}@media(max-width:768px){.internal-page{padding:1rem}.internal-topbar{align-items:flex-start;flex-direction:column}.internal-topbar>div:last-child{text-align:left}.cashier-product{grid-template-columns:60px 1fr}.cashier-product button{grid-column:1/-1;width:100%}.dashboard-body{display:block}.dashboard-sidebar{width:100%}.dashboard-sidebar ul{display:flex;overflow-x:auto;padding:.5rem}.dashboard-sidebar li{flex:0 0 auto}.dashboard-sidebar button.db-nav-item{white-space:nowrap}.module-lock-reason{white-space:normal}.access-summary,.auth-session-actions,.access-boundary-actions{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.admin-actions-cell{display:flex;gap:.5rem;align-items:center}.admin-action-btn{min-height:32px;min-width:32px;padding:.35rem .75rem;border-radius:var(--radius-sm);font-size:.82rem;font-weight:600;cursor:pointer;transition:var(--transition-smooth)}.admin-action-btn.primary{background:var(--primary-color);color:#fff}.admin-action-btn.primary:hover:not(:disabled){background:var(--primary-light)}.admin-action-btn.secondary{background:var(--accent-light);color:var(--accent-color);border:1px solid color-mix(in srgb,var(--accent-color) 20%,transparent)}.admin-action-btn.secondary:hover:not(:disabled){background:color-mix(in srgb,var(--accent-color) 12%,transparent);border-color:var(--accent-color)}.admin-action-btn.danger{background:#fff0f0;color:#c53030;border:1px solid #feb2b2}.admin-action-btn.danger:hover:not(:disabled){background:#ffe5e5;border-color:#c53030}.admin-modal-overlay{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);display:grid;place-items:center;z-index:1000;padding:1rem;animation:fadeIn .25s ease-out}.admin-modal-content{background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--surface-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:2rem;width:min(540px,100%);max-height:90vh;overflow-y:auto;animation:slideIn .3s cubic-bezier(.16,1,.3,1)}@keyframes slideIn{0%{transform:translateY(15px);opacity:0}to{transform:translateY(0);opacity:1}}.admin-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.admin-modal-header h3{margin:0;font-family:var(--font-display);font-size:1.35rem;color:var(--primary-color)}.admin-modal-close{background:transparent;font-size:1.5rem;border:0;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;min-width:unset;min-height:unset}.admin-modal-close:hover{color:var(--text-primary)}.admin-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.75rem}.admin-form-group{display:grid;gap:.4rem;margin-bottom:1rem}.admin-form-group label{font-weight:600;font-size:.88rem;color:var(--text-primary)}.admin-form-group input,.admin-form-group select,.admin-form-group textarea{width:100%;min-height:42px;border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:.6rem .85rem;background:var(--bg-color);color:var(--text-primary);font-size:.92rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.admin-form-group input:focus,.admin-form-group select:focus,.admin-form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0a8f631f}.admin-section-actions{display:flex;justify-content:flex-end;margin-bottom:1rem}.admin-dialog-error{background:#fff0f0;color:#c53030;padding:.75rem 1rem;border:1px solid #feb2b2;border-radius:var(--radius-sm);margin-bottom:1rem;font-size:.9rem}.admin-modal-user-summary{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-color);border:1px solid var(--surface-border);border-radius:var(--radius-sm);margin-bottom:1.25rem}.admin-role-comparison{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;background:var(--bg-color);border:1px solid var(--surface-border);border-radius:var(--radius-sm);margin-bottom:1.25rem}.admin-role-comparison-step{display:flex;flex-direction:column;gap:.25rem}.admin-role-comparison-step span{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.admin-role-comparison-arrow{font-size:1.3rem;color:var(--primary-color);font-weight:700}.admin-tech-id{font-family:var(--font-mono, monospace);font-size:.75rem;padding:.15rem .4rem;border-radius:4px;background:#0000000f;color:var(--text-secondary);margin-left:.4rem}.admin-role-capabilities-box{margin-top:.75rem;padding:.75rem;border-radius:var(--radius-sm);background:var(--bg-color);border:1px dashed var(--surface-border)}.admin-role-capabilities-label{display:block;font-size:.8rem;font-weight:600;color:var(--text-secondary);margin-bottom:.4rem}.admin-role-capabilities-list{display:flex;flex-wrap:wrap;gap:.35rem}.admin-role-capability-chip{font-size:.72rem;font-family:var(--font-mono, monospace);padding:.2rem .5rem;border-radius:12px;background:#0a8f6314;color:var(--primary-color);border:1px solid hsla(160,87%,30%,.2);font-weight:600}.admin-elevated-warning{margin-top:1rem;padding:.85rem 1rem;border-radius:var(--radius-sm);background:#f59e0b1a;border:1px solid rgba(245,158,11,.35);color:#92400e}.admin-elevated-warning p{margin:0 0 .6rem;font-size:.85rem;line-height:1.4}.admin-confirm-checkbox-label{display:flex;align-items:flex-start;gap:.5rem;font-size:.82rem;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none}.admin-confirm-checkbox-label input[type=checkbox]{width:16px;height:16px;min-height:unset;margin-top:2px;flex-shrink:0;accent-color:var(--primary-color)}.panel-layout{display:grid;gap:1.5rem;margin-top:2.5rem}.panel-header-section{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1.5rem;padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--surface-border);border-radius:var(--radius-lg);background:radial-gradient(circle at 92% 12%,color-mix(in srgb,var(--accent-light) 85%,transparent),transparent 32%),var(--surface-color);box-shadow:var(--shadow-sm)}.panel-user-profile{display:flex;align-items:center;gap:1rem;min-width:0}.panel-user-avatar{flex:0 0 64px;width:64px;height:64px;border-radius:50%;background:var(--primary-color);color:#fff;display:grid;place-items:center;font-size:1.5rem;font-weight:700;box-shadow:0 10px 24px color-mix(in srgb,var(--primary-color) 20%,transparent)}.panel-user-details{min-width:0}.panel-user-details h1{margin:0;font-size:clamp(1.45rem,3vw,1.8rem);color:var(--primary-color);overflow-wrap:anywhere}.panel-welcome{margin:0 0 .15rem;color:var(--accent-color);font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.panel-user-details p{margin:.25rem 0 0;color:var(--text-secondary);overflow-wrap:anywhere}.panel-actions-row{display:flex;flex-wrap:wrap;gap:.75rem}.panel-section-heading h2{margin:.15rem 0 0;color:var(--primary-color);font-size:clamp(1.35rem,2.5vw,1.75rem)}.panel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:1.5rem}.panel-card{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(145deg,var(--surface-color),color-mix(in srgb,var(--surface-color) 92%,var(--accent-light)));border:1px solid var(--surface-border);border-radius:var(--radius-lg);padding:1.75rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;justify-content:space-between;min-height:260px;transition:var(--transition-smooth)}.panel-card:before{content:"";position:absolute;z-index:-1;top:-70px;right:-70px;width:170px;height:170px;border-radius:50%;background:color-mix(in srgb,var(--accent-light) 70%,transparent)}.panel-card:hover:not(.disabled){transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--primary-light)}.panel-card.disabled{opacity:.65;background:var(--surface-variant, #f9f9f9)}.panel-card-title{display:flex;align-items:center;gap:.9rem;min-width:0}.panel-card-title>div{min-width:0}.panel-card-title>div>span{display:block;margin-bottom:.15rem;color:var(--accent-color);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.panel-card-icon{flex:0 0 52px;width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:var(--primary-color);color:#fff;box-shadow:0 9px 20px color-mix(in srgb,var(--primary-color) 18%,transparent)}.panel-card-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.panel-card-header h3{margin:0;font-size:1.25rem;color:var(--primary-color);overflow-wrap:anywhere}.panel-card-header p{margin:1.1rem 0 0;color:var(--text-secondary);font-size:.95rem}.panel-card-footer{margin-top:1.5rem}.panel-card-link-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:44px;border-radius:var(--radius-sm);background:var(--primary-color);color:#fff;text-decoration:none;font-weight:700;transition:var(--transition-smooth);border:1px solid transparent;box-shadow:0 8px 18px color-mix(in srgb,var(--primary-color) 16%,transparent)}.panel-card-link-btn:hover:not(:disabled){background:var(--accent-color);transform:translateY(-2px)}.panel-card-link-btn.disabled,.panel-card-link-btn:disabled{background:var(--text-secondary);cursor:not-allowed;pointer-events:none;box-shadow:none}.panel-card-lock-info{display:flex;align-items:flex-start;gap:.55rem;margin-top:.75rem;padding:.6rem .8rem;border-radius:var(--radius-sm);background:#fff0d9;color:#7a4b00;font-size:.82rem;font-weight:500}.panel-card-lock-info>span{flex:0 0 20px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#7a4b00;color:#fff;font-size:.75rem;font-weight:800}.panel-modules-list{margin:.75rem 0 0;padding:0;font-size:.85rem;color:var(--text-secondary)}.panel-modules-list li{display:flex;align-items:center;gap:.45rem;margin-bottom:.35rem;list-style:none}.panel-modules-list li span{color:var(--primary-light);font-weight:800}@media(max-width:640px){.panel-header-section{align-items:stretch}.panel-user-avatar{flex-basis:52px;width:52px;height:52px}.panel-actions-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.panel-actions-row button{width:100%;padding-inline:.65rem}.panel-card{min-height:0;padding:1.25rem}}.product-label-bulk-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem}.product-label-bulk-toolbar small{flex-basis:100%}.product-label-bulk-toolbar input,.product-label-batch-row input{width:80px;padding:.5rem}.product-label-batch-list{max-height:30vh;overflow-y:auto;margin-bottom:1rem}.product-label-batch-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.5rem;border-bottom:1px solid var(--surface-border)}.product-label-batch-row label{flex:1;min-width:150px}.product-label-batch-row small{display:block;overflow-wrap:anywhere}.product-label-dialog-content{width:min(920px,100%)}.product-label-warning{margin-bottom:1rem;padding:.75rem 1rem;border:1px solid #f2cf8e;border-radius:var(--radius-sm);background:#fff8e8;color:#704600;font-weight:600}.product-label-quantity{max-width:180px}.product-label-print-root{display:grid;grid-template-columns:repeat(auto-fill,60mm);gap:.75rem;max-height:50vh;overflow-y:auto;padding:.75rem;border:1px solid var(--surface-border);border-radius:var(--radius-sm);background:#ecebe6}.product-qr-label{box-sizing:border-box;width:60mm;min-width:0;min-height:35mm;display:grid;grid-template-columns:minmax(0,1fr) 26mm;align-items:center;gap:2mm;padding:3mm;border:.2mm solid #a5ada8;border-radius:1.5mm;background:#fff;color:#172b22;break-inside:avoid;font-family:Arial,Helvetica,sans-serif}.product-label-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:1.5mm}.product-label-logo{display:block;width:10mm;height:8.8mm;object-fit:contain;object-position:left center}.product-label-copy strong{font-family:Arial,Helvetica,sans-serif;font-size:9pt;font-weight:700;line-height:1.15;overflow-wrap:anywhere}.product-label-copy span{max-width:100%;padding-top:1mm;border-top:.2mm solid #b9c9be;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:7.5pt;line-height:1.25;font-weight:600;color:#111;overflow-wrap:anywhere}.product-label-qr{display:block;width:26mm;height:26mm}.cashier-print-ticket{width:100%;margin:1rem 0;padding:1rem;border:1px dashed color-mix(in srgb,var(--primary-color) 35%,transparent);border-radius:var(--radius-sm);background:#fff;color:#111;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.78rem;text-align:left}.cashier-ticket-print-header{display:grid;justify-items:center;gap:.2rem;padding-bottom:.65rem;border-bottom:1px dashed #777;text-align:center}.cashier-ticket-print-header strong{font-family:var(--font-display);font-size:1.1rem}.cashier-ticket-print-header h5{margin-top:.35rem;font-family:inherit;font-size:.7rem;text-transform:uppercase}.cashier-ticket-print-meta,.cashier-ticket-print-totals{display:grid;gap:.25rem;padding:.65rem 0}.cashier-ticket-print-meta>div,.cashier-ticket-print-totals>div{display:flex;justify-content:space-between;gap:.75rem}.cashier-ticket-print-meta dd,.cashier-ticket-print-totals dd{margin:0;text-align:right;overflow-wrap:anywhere}.cashier-ticket-print-items{border-block:1px dashed #777}.cashier-ticket-print-item{position:relative;display:grid;grid-template-columns:1fr auto;gap:.15rem .5rem;padding:.55rem 0;break-inside:avoid}.cashier-ticket-print-item+.cashier-ticket-print-item{border-top:1px dotted #aaa}.cashier-ticket-item-id{grid-column:1 / -1;color:#555;font-size:.58rem;overflow-wrap:anywhere}.cashier-ticket-print-item>span:not(.cashier-ticket-item-id){grid-column:1}.cashier-ticket-print-item>b{grid-column:2;grid-row:2;text-align:right}.cashier-ticket-grand-total{margin-block:.25rem;padding-block:.4rem;border-block:1px solid #111;font-size:.9rem;font-weight:800}.cashier-ticket-print-button{margin-bottom:.65rem}@page product-labels{size:A4 portrait;margin:10mm}@page cashier-ticket{size:58mm 200mm;margin:3mm}@media print{body.print-product-labels>*:not(.product-label-dialog){display:none!important}body.print-product-labels .product-label-dialog{position:static;display:block;padding:0;background:#fff}body.print-product-labels .product-label-dialog-content{width:auto;max-height:none;padding:0;overflow:visible;border:0;border-radius:0;box-shadow:none}body.print-product-labels .product-label-dialog-content>*:not(.product-label-print-root){display:none!important}body.print-product-labels .product-label-print-root{page:product-labels;position:static;width:190mm;max-height:none;grid-template-columns:repeat(3,60mm);gap:3mm;padding:0;overflow:visible;border:0;background:#fff}body.print-product-labels .product-qr-label{width:60mm;min-height:35mm;grid-template-columns:minmax(0,1fr) 26mm;gap:2mm;padding:3mm;border-color:#777}body.print-product-labels .product-label-qr{width:26mm;height:26mm}body.print-cashier-ticket>*:not(.cashier-ticket-selected){display:none!important}body.print-cashier-ticket .cashier-ticket-selected{display:block!important}body.print-cashier-ticket .cashier-ticket-selected{page:cashier-ticket;position:static;width:52mm;margin:0;padding:0;border:0;border-radius:0;font-size:8pt}}.cashier-ticket-print-item>strong{grid-column:1 / -1;overflow-wrap:anywhere}.cashier-ticket-print-meta>div,.cashier-ticket-print-totals>div{break-inside:avoid}.cashier-ticket-print-portal{display:none}.dashboard-operation-form{margin:1.5rem 0}.dashboard-operation-form fieldset{min-width:0;border:1px solid var(--surface-border);border-radius:var(--radius-md);background:var(--surface-color);padding:1.5rem;display:grid;gap:1.25rem}.dashboard-operation-form legend{padding:0 .5rem;font-weight:700;color:var(--text-primary)}.dashboard-operation-form label{display:grid;gap:.55rem;font-size:.95rem;font-weight:600;min-width:0}.dashboard-operation-form input,.dashboard-operation-form textarea{width:100%;min-width:0;font:inherit;font-weight:400}.dashboard-operation-form button{justify-self:start}.dashboard-operation-form fieldset:disabled{opacity:.65}.dashboard-operation-card{margin-bottom:1.5rem}.dashboard-operation-card summary{cursor:pointer;font-weight:700;color:var(--primary-color);padding:.35rem 0}.dashboard-operation-card summary:focus-visible{outline:3px solid var(--primary-light);outline-offset:4px}.dashboard-operation-card>p{margin:.85rem 0;line-height:1.6}.dashboard-confirmation{display:flex;gap:.7rem;align-items:flex-start;line-height:1.5;margin:1.25rem 0}.dashboard-confirmation input{margin-top:.3rem;accent-color:var(--primary-color);flex-shrink:0;width:18px;height:18px}.dashboard-campaign-card{margin-top:1.25rem;display:grid;gap:.85rem;overflow-wrap:anywhere}.dashboard-campaign-card button{justify-self:start}.dashboard-content .section-header-row>div{min-width:0}.dashboard-content .section-header-row .tab-desc{margin:.4rem 0 0}@media(max-width:900px){.dashboard-sidebar li{flex:0 0 auto;max-width:240px}}@media(max-width:600px){.dashboard-operation-form fieldset{padding:1rem}.dashboard-operation-form button,.dashboard-campaign-card button{width:100%}}.counter-hidden{display:none}.counter-launch{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.counter-launch p,.counter-hint{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.counter-sale{padding:1.5rem;border:1px solid var(--surface-border);border-radius:var(--radius-lg);background:var(--surface-color)}.counter-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem;margin-top:1.5rem}.counter-sale fieldset{min-width:0;border:0;padding:0;display:grid;gap:1rem}.counter-sale legend{font-weight:700;margin-bottom:1rem}.counter-sale label{display:grid;gap:.4rem;min-width:0}.counter-sale input,.counter-sale select{width:100%;min-width:0}.counter-search,.counter-cart{min-width:0;padding:1.25rem;border:1px solid var(--surface-border);border-radius:var(--radius-md);background:var(--bg-color)}.counter-results{display:grid;gap:.7rem;margin-top:1rem}.counter-results article,.counter-line{padding:.85rem 0;border-bottom:1px solid var(--surface-border);display:flex;align-items:center;gap:.75rem}.counter-results article>div,.counter-line>div{flex:1;min-width:0;overflow-wrap:anywhere}.counter-sale small{display:block;margin-top:.3rem;color:var(--text-secondary)}.counter-line label{width:75px;font-size:.8rem}.counter-line input{padding:.5rem;border:1px solid var(--surface-border);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--surface-color)}.counter-customer{margin:1.25rem 0}.counter-customer summary{cursor:pointer;font-weight:600;margin-bottom:1rem}.counter-customer-choice{display:block;width:100%;text-align:left;padding:.7rem;border-bottom:1px solid var(--surface-border)}.counter-total{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--surface-border);padding-top:1rem;font-size:1.2rem}.counter-submit{width:100%;margin-top:1rem}.counter-empty,.counter-pending{padding:1.5rem 0}.counter-sale button:disabled{opacity:.5;cursor:not-allowed}.counter-sale button:focus-visible,.counter-sale summary:focus-visible{outline:3px solid var(--primary-light);outline-offset:3px}@media(max-width:850px){.counter-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:480px){.counter-sale,.counter-search,.counter-cart{padding:1rem}.counter-line{flex-wrap:wrap}.counter-line>div{flex-basis:100%}}.admin-workspace,.auth-page{--bg-color: #f6f5f0;--surface-color: #fff;--surface-border: #dcded3;--text-primary: #22382c;--text-secondary: #657065;--primary-color: #294b37;--primary-light: #497554;--accent-color: #8a642e;--accent-light: #eee9dd;--radius-sm: 5px;--radius-md: 10px;--radius-lg: 12px;--shadow-sm: none;--shadow-md: 0 8px 24px #182b2110}body.dark-theme .admin-workspace,body.dark-theme .auth-page{--bg-color: #17251e;--surface-color: #203128;--surface-border: #3c4b40;--text-primary: #edece3;--text-secondary: #b2bfaf;--primary-color: #b2d0b5;--primary-light: #c3dec4;--accent-color: #d3b782;--accent-light: #3e3c2c}.admin-workspace.internal-page{padding:0}.admin-workspace .dashboard-panel.embedded{width:100%;height:100dvh;border:0;border-radius:0;box-shadow:none;background:var(--bg-color);-webkit-backdrop-filter:none;backdrop-filter:none}.admin-workspace .dashboard-header{padding:1rem 2rem;background:var(--surface-color);gap:1rem}.admin-workspace .dashboard-title-area .dashboard-brand-mark,.admin-workspace .dashboard-title-area .demo-copy{display:none}.admin-workspace .dashboard-header h2{font-size:1.2rem;font-weight:400;color:var(--text-primary)}.admin-workspace .dashboard-kicker{font-weight:500;font-size:.62rem;letter-spacing:.18em}.admin-workspace .dashboard-header-actions{gap:.5rem}.admin-workspace .role-badge-db{background:var(--accent-light);color:var(--accent-color);font-size:.65rem;letter-spacing:.08em;font-weight:500}.admin-workspace .logout-btn,.admin-workspace .theme-toggle-btn-admin{background:transparent;color:var(--text-secondary);font-size:.75rem;box-shadow:none}.admin-workspace .logout-btn:hover,.admin-workspace .theme-toggle-btn-admin:hover{background:var(--accent-light);color:var(--text-primary);border-color:var(--surface-border);transform:none}.admin-workspace .dashboard-body{grid-template-columns:252px minmax(0,1fr)}.admin-workspace .dashboard-sidebar{display:flex;flex-direction:column;padding:2rem 1rem 1.25rem;background:#192c22;border:0;opacity:1;color:#d9dfd3}.admin-sidebar-brand{display:flex;align-items:center;gap:.75rem;padding:0 .5rem 2.5rem;font-family:var(--font-display);font-size:1.18rem}.admin-sidebar-brand img{width:40px;height:40px;filter:brightness(0) invert(1);opacity:.85}.admin-sidebar-brand small{display:block;margin-top:.4rem;color:#d2b783;font:500 .58rem var(--font-body);text-transform:uppercase;letter-spacing:.22em}.admin-nav-caption{padding:0 .75rem;margin-bottom:1rem;color:#b4c2ad;font-size:.63rem;text-transform:uppercase;letter-spacing:.16em}.admin-workspace .dashboard-sidebar ul{gap:.25rem}.admin-workspace .dashboard-sidebar button.db-nav-item{padding:.8rem .85rem;color:#d9dfd3;font-size:.86rem;font-weight:400;border:1px solid transparent;border-radius:5px}.admin-workspace .dashboard-sidebar button.db-nav-item.active{background:#304637;color:#f0d39a;box-shadow:none;border-color:#52604b}.admin-workspace .dashboard-sidebar button.db-nav-item:hover:not(:disabled):not(.active){background:#263b2e;color:#fff;transform:none}.admin-workspace .dashboard-sidebar button.db-nav-item:focus-visible{outline-color:#e4c68d}.admin-workspace .dashboard-sidebar button.db-nav-item:disabled{opacity:.65}.admin-workspace .module-lock-reason{color:#c2cbbb;font-size:.65rem;line-height:1.5;margin-top:.35rem}.admin-sidebar-context{display:grid;gap:.45rem;margin:auto .75rem 0;padding-top:2rem;font-size:.75rem}.admin-sidebar-context>span{color:#b4c2ad;font-size:.62rem;text-transform:uppercase;letter-spacing:.15em}.admin-sidebar-context strong{font-weight:500;overflow-wrap:anywhere}.admin-sidebar-context a{margin-top:.6rem;padding-top:.85rem;border-top:1px solid #455444;color:#d2b783}.admin-workspace .dashboard-content{padding:2rem clamp(1.5rem,4vw,5rem) 4rem}.admin-content-context{display:flex;justify-content:space-between;gap:1rem;margin-bottom:2.5rem;padding-bottom:1.1rem;border-bottom:1px solid var(--surface-border);color:var(--text-secondary);font-size:.68rem;letter-spacing:.06em}.admin-workspace .db-tab-content h3{font-size:clamp(1.8rem,3vw,2.65rem);font-weight:400;color:var(--text-primary);letter-spacing:-.025em}.admin-workspace .tab-desc{font-size:.88rem;line-height:1.7}.admin-workspace .botanical-section-card,.admin-workspace .stock-kpi-card,.admin-workspace .stock-filter-toolbar,.admin-workspace .dashboard-filters-card,.admin-workspace .purchase-stepper{background:var(--surface-color);border:1px solid var(--surface-border);box-shadow:none}.admin-workspace .stock-kpi-card:hover{transform:none;box-shadow:none}.admin-workspace .stock-kpi-value{font-family:var(--font-display);font-weight:400;font-size:1.8rem}.admin-workspace .stock-kpi-label{font-size:.72rem;font-weight:500}.admin-workspace .stock-filter-chip{box-shadow:none;background:var(--bg-color);color:var(--text-secondary);border-color:var(--surface-border)}.admin-workspace .stock-filter-chip.active{background:var(--primary-color);color:var(--bg-color)}.admin-workspace .admin-table thead th{background:var(--bg-color);color:var(--text-secondary);font-size:.66rem;font-weight:500}.admin-workspace .admin-table tbody td{color:var(--text-primary);border-color:var(--surface-border)}.admin-workspace .stock-search-box,.admin-workspace .admin-form-group input,.admin-workspace .admin-form-group select{background:var(--bg-color);color:var(--text-primary);border-color:var(--surface-border)}.admin-workspace .stock-search-box input{color:var(--text-primary)!important}.admin-workspace :is(input,select,textarea):focus-visible,.auth-page :is(input,select,textarea):focus-visible{outline:2px solid var(--primary-light);outline-offset:2px}.auth-page .login-card{width:min(480px,100%);border-radius:10px;padding:2.25rem;box-shadow:none}.auth-page .login-card:has(.auth-session){width:min(760px,100%)}.auth-page .login-card h1{font-size:2.1rem;font-weight:400;margin-top:1rem}.auth-page .login-card>p{font-size:.85rem;color:var(--text-secondary)}.auth-page .login-card .eyebrow{margin-top:1.75rem;font-size:.62rem;letter-spacing:.16em}.auth-page .login-card .logo{font-size:1.2rem}.auth-page .auth-form{margin-top:1.75rem;gap:1.25rem}.auth-page .auth-form label{font-size:.8rem;font-weight:500}.auth-page .back-link{font-size:.75rem}@media(max-width:1100px){.admin-workspace .dashboard-header{padding:1rem}.admin-workspace .dashboard-header-actions{margin-left:0}.admin-workspace .dashboard-body{grid-template-columns:225px minmax(0,1fr)}}@media(max-width:768px){.admin-workspace .dashboard-panel.embedded{height:auto;min-height:100dvh;overflow:visible}.admin-workspace .dashboard-body{display:block;overflow:visible}.admin-workspace .dashboard-sidebar{width:100%;padding:1rem}.admin-sidebar-brand{padding-bottom:1rem}.admin-nav-caption,.admin-sidebar-context{display:none}.admin-workspace .dashboard-sidebar ul{flex-direction:row;overflow-x:auto;padding:.35rem}.admin-workspace .dashboard-sidebar li{max-width:220px}.admin-workspace .dashboard-content{padding:1.5rem 1rem 3rem;overflow:visible}.admin-content-context{margin-bottom:1.5rem}.admin-content-context>span:last-child{display:none}.admin-workspace .dashboard-header-actions{flex-wrap:wrap}.auth-page .login-card{padding:1.5rem}}
