:root{--font-family-base: "Inter", system-ui, -apple-system, sans-serif;--font-family-mono: ui-monospace, SFMono-Regular, Consolas, "Courier New", monospace;--font-family: var(--font-family-base);--font-mono: var(--font-family-mono);--fs-2xs: .75rem;--fs-xs: .8125rem;--fs-sm: .875rem;--fs-md: 1rem;--fs-lg: 1.125rem;--fs-xl: 1.25rem;--fs-2xl: 1.5rem;--fs-3xl: 1.75rem;--fs-4xl: 2rem;--fs-5xl: 2.5rem;--fs-6xl: 3rem;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-extrabold: 800;--lh-tight: 1.2;--lh-normal: 1.5;--lh-relaxed: 1.7;--primary: #0496a5;--primary-dark: #037a87;--primary-light: #5bc0c9;--accent: #FF7F50;--accent-dark: #e66a3d;--accent-light: #ffaa88;--danger: #ef4444;--danger-dark: #dc2626;--success: #22c55e;--success-dark: #16a34a;--warning: #f59e0b;--whatsapp: #25D366;--whatsapp-dark: #1ebe57;--bg-body: #f0f7f9;--bg-card: #ffffff;--bg-input: #ffffff;--text-main: #0f172a;--text-heading: var(--text-main);--text-muted: #475569;--text-light: #64748b;--type-brand-size: var(--fs-md);--type-brand-weight: var(--fw-extrabold);--type-page-title-size: var(--fs-2xl);--type-page-title-weight: var(--fw-bold);--type-page-title-line-height: 1.15;--type-section-title-size: var(--fs-xl);--type-section-title-weight: var(--fw-bold);--type-section-title-line-height: 1.2;--type-card-title-size: var(--fs-lg);--type-card-title-weight: var(--fw-semibold);--type-card-title-line-height: 1.25;--type-display-size: var(--fs-6xl);--type-kpi-size: var(--fs-4xl);--type-price-size: var(--fs-2xl);--type-price-accent-size: var(--fs-4xl);--type-body-size: var(--fs-md);--type-body-sm-size: var(--fs-sm);--type-label-size: var(--fs-sm);--type-label-weight: var(--fw-semibold);--type-meta-size: var(--fs-xs);--type-meta-weight: var(--fw-medium);--type-caption-size: var(--fs-2xs);--type-caption-weight: var(--fw-medium);--type-badge-size: var(--fs-2xs);--type-badge-weight: var(--fw-bold);--type-button-size: var(--fs-sm);--type-button-weight: var(--fw-semibold);--type-button-lg-size: var(--fs-md);--type-input-size: var(--fs-md);--type-input-weight: var(--fw-regular);--field-min-height: 44px;--field-min-height-emphasis: 46px;--field-min-height-compact: 34px;--field-textarea-min-height: 112px;--field-padding-inline: 12px;--field-padding-block: 12px;--field-padding-inline-icon-start: 40px;--field-padding-inline-icon-end: 40px;--field-padding-inline-select-end: 34px;--field-radius: 12px;--field-radius-lg: 14px;--field-border-color: var(--border-color);--field-border-color-hover: #bfd3df;--field-border-color-focus: var(--primary);--field-bg: #ffffff;--field-bg-muted: #f8fafc;--field-text-color: var(--text-main);--field-placeholder-color: var(--text-muted);--field-shadow: 0 2px 4px rgba(15, 23, 42, .02);--field-shadow-focus: 0 0 0 4px rgba(4, 150, 165, .1), 0 4px 12px rgba(15, 23, 42, .05);--field-focus-ring: 0 0 0 3px rgba(4, 150, 165, .14);--field-label-gap: 6px;--field-label-color: var(--text-main);--field-hint-gap: 6px;--field-hint-color: var(--text-muted);--field-error-color: #dc2626;--field-error-size: var(--type-meta-size);--field-error-weight: var(--fw-medium);--border-color: #e0e0e0;--radius: 12px;--radius-sm: 8px;--radius-full: 50px;--shadow: 0 2px 8px rgba(0, 0, 0, .05);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .1);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--nav-height: 60px;--header-height: 56px;--z-header: 800;--z-nav: 900;--z-active-bar: 950;--z-cart: 950;--z-overlay: 1000;--z-modal: 1200;--z-toast: 1500}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--fs-md);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-family-base);font-size:var(--fs-md);line-height:var(--lh-normal);color:var(--text-main);background-color:var(--bg-body);padding-bottom:calc(var(--nav-height) + env(safe-area-inset-bottom,0) + 16px);min-height:100vh;overflow-x:hidden}a{color:var(--primary);text-decoration:none;transition:color .2s ease}a:hover{color:var(--primary-dark)}img{max-width:100%;height:auto;display:block}ul,ol{list-style:none}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.spinner{display:inline-block;width:20px;height:20px;border:2px solid rgba(0,0,0,.1);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.spinner-sm{width:16px;height:16px;border-width:2px}.spinner-lg{width:24px;height:24px;border-width:3px}.spinner-white{border-color:#ffffff4d;border-top-color:#fff}.container{--container-inline-padding: clamp(12px, 3vw, 24px);width:100%;max-width:min(100%,760px);margin:0 auto;padding:var(--container-inline-padding)}.app-main,.vendor-shell-main,.catalog-shell-main,.admin-main{width:100%}.catalog-shell-main{min-height:100vh}body.app-shell,body.catalog-shell,body.vendor-shell,body.admin-layout,body.auth-page{overflow-x:hidden}html,body.vendor-shell,.vendor-shell-main{overflow-x:clip}.vendor-shell-main>*{max-width:100%}.vendor-shell-main-white{background:#fff}.page-content{padding-top:var(--spacing-md)}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.card{background:var(--bg-card);border-radius:var(--radius);padding:clamp(16px,3vw,20px);box-shadow:var(--shadow);margin-bottom:15px}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.card-title{font-size:var(--type-card-title-size);font-weight:var(--type-card-title-weight);line-height:var(--type-card-title-line-height);color:var(--text-main)}.card-body{color:var(--text-main)}.card-footer{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.app-header{position:sticky;top:0;left:0;right:0;height:var(--header-height);background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-md);z-index:999;box-shadow:var(--shadow)}.app-header h1{font-size:var(--fs-lg);font-weight:600}.header-icon{width:24px;height:24px;cursor:pointer;opacity:.9;transition:opacity .2s}.header-icon:hover{opacity:1}.header-back{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 12px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:#ffffff1f;color:#fff;text-decoration:none;opacity:.9;transition:opacity .2s,background .2s,transform .18s}.header-back:hover{opacity:1;color:#fff;background:#ffffff2e;transform:translateY(-1px)}.header-back svg{width:20px;height:20px;flex-shrink:0}.header-back-label{display:none;font-size:var(--fs-sm);font-weight:500}.breadcrumbs{display:none;padding:0 var(--spacing-md);margin-bottom:var(--spacing-sm)}.breadcrumbs-list{display:flex;align-items:center;flex-wrap:wrap;gap:4px;list-style:none;margin:0;padding:0}.breadcrumbs-item{display:flex;align-items:center;gap:4px}.breadcrumbs-link{color:var(--text-muted);font-size:var(--fs-xs);text-decoration:none;transition:color .2s ease}.breadcrumbs-link:hover{color:var(--primary)}.breadcrumbs-separator{color:var(--text-light);display:flex;align-items:center}.breadcrumbs-current{color:var(--text-main);font-size:var(--fs-xs);font-weight:500}@media(min-width:768px){.breadcrumbs{display:block;margin-top:var(--spacing-md)}.header-back-label{display:inline}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;width:auto;height:var(--nav-height);background:var(--bg-card);display:flex;justify-content:space-around;align-items:center;border-top:1px solid var(--border-color);z-index:1000;padding-bottom:env(safe-area-inset-bottom,0);padding-left:max(8px,env(safe-area-inset-left,0));padding-right:max(8px,env(safe-area-inset-right,0));box-sizing:border-box;overflow:hidden}body.vendor-shell{padding-bottom:calc(var(--nav-height, 74px) + env(safe-area-inset-bottom) + 24px)}.vendor-bottom-nav{position:fixed;bottom:0;left:0;right:0;width:100%;max-width:100vw;display:grid;overflow-x:clip;justify-content:stretch;align-items:stretch;contain:layout paint}.vendor-bottom-nav.nav-count-3{grid-template-columns:repeat(3,minmax(0,1fr))}.vendor-bottom-nav.nav-count-4{grid-template-columns:repeat(4,minmax(0,1fr))}.vendor-bottom-nav.nav-count-5{grid-template-columns:repeat(5,minmax(0,1fr))}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:var(--text-muted);font-size:var(--fs-2xs);font-weight:500;padding:var(--spacing-xs) var(--spacing-sm);transition:color .2s ease;min-width:60px;min-height:52px;position:relative;border-radius:10px;width:100%;flex:1 1 0;min-width:0;max-width:100%;box-sizing:border-box;overflow:hidden}.badge-dot{position:absolute;top:3px;right:10px;background:linear-gradient(180deg,#f97316,#ea580c);color:#fff;font-size:10px;font-weight:800;min-width:20px;height:20px;padding:0 5px;border-radius:999px;display:flex;align-items:center;justify-content:center;border:2px solid #fff;box-shadow:0 6px 14px #ea580c47;line-height:1}.nav-item svg,.nav-item .nav-icon{width:24px;height:24px;margin-bottom:2px;stroke:currentColor;fill:none}.nav-item span{margin-top:2px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.nav-item:hover,.nav-item.active{color:var(--primary);background:#0496a514}.nav-item.active svg,.nav-item.active .nav-icon{stroke:var(--primary)}.vendor-bottom-nav.nav-count-5 .nav-item{min-width:0;font-size:var(--fs-2xs);padding-left:4px;padding-right:4px}.vendor-bottom-nav .nav-item{justify-self:stretch}.vendor-bottom-nav.nav-count-5 .badge-dot{right:6px}.card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:14px;box-shadow:0 6px 24px #0f172a0f}.card-body{padding:1rem}.card-title{margin:0 0 .5rem;font-size:var(--type-card-title-size);font-weight:var(--type-card-title-weight);line-height:var(--type-card-title-line-height);color:var(--text-main, #0f172a)}.card-subtitle{margin:0;font-size:var(--type-meta-size);font-weight:var(--type-meta-weight);line-height:1.4;color:var(--text-muted, #64748b)}.header-hero{background-color:var(--primary);background-image:linear-gradient(135deg,var(--primary) 0%,#0369a1 100%);color:#fff;padding:max(8px,env(safe-area-inset-top)) 16px 10px;position:sticky;top:0;z-index:1000;box-shadow:0 4px 15px #00000026;border-bottom:2px solid rgba(255,255,255,.1)}.header-hero-content{position:relative;z-index:2;max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.hero-brand{display:flex;align-items:center;min-width:0}.header-hero-title{font-size:var(--type-brand-size);font-weight:var(--type-brand-weight);margin:0;letter-spacing:-.02em;color:#fff;display:flex;align-items:center;gap:6px;flex-shrink:0}.top-nav-links{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.top-nav-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 14px;border-radius:999px;background:#ffffff24;border:1px solid rgba(255,255,255,.18);color:#fff;text-decoration:none;font-size:var(--type-body-sm-size);font-weight:600}.top-nav-link:hover,.top-nav-link:focus-visible{color:#fff;background:#fff3;outline:none}.hero-value-prop{flex:1;display:flex;align-items:center;justify-content:center;min-width:100%;order:3;height:38px;overflow:hidden;margin-top:8px;background:#ffffff1f;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:100px;border:1px solid rgba(255,255,255,.15);padding:0 16px;box-shadow:inset 0 0 10px #ffffff0d}@media(min-width:768px){.header-hero-content{flex-wrap:nowrap;padding:10px 0}.header-hero-title{font-size:var(--type-card-title-size)}.hero-value-prop{min-width:auto;order:2;margin-top:0;justify-content:flex-start;height:36px;max-width:480px;margin-left:20px;flex:0 1 auto}}@media(min-width:480px){.header-hero{padding:36px 24px}}.footer-links{margin-top:8px;font-size:var(--type-meta-size);display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px}.footer-links a{color:var(--text-muted);text-decoration:none}.footer-links a:hover{color:var(--primary);text-decoration:underline}.footer-separator{color:var(--text-muted)}@media(max-width:767px){.header-hero-content{align-items:stretch}.header-hero-title{width:100%;justify-content:center;font-size:clamp(1.25rem,4vw,1.6rem)}.top-nav-links{width:100%;justify-content:stretch}.top-nav-link{flex:1 1 100%}}body.auth-page{background-color:#fff!important;padding-bottom:0;display:flex;flex-direction:column;min-height:100vh}.auth-container{flex:1;display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-md);max-width:400px;margin:0 auto;width:100%}.auth-header{text-align:center;margin-bottom:var(--spacing-xl)}.auth-logo{font-size:var(--fs-6xl);margin-bottom:var(--spacing-sm)}.auth-title{font-size:var(--type-page-title-size);font-weight:var(--type-page-title-weight);color:var(--primary);margin-bottom:var(--spacing-xs)}.auth-subtitle{color:var(--text-muted);font-size:var(--type-body-sm-size)}.auth-card{background:var(--bg-card);border-radius:var(--radius);padding:var(--spacing-lg);box-shadow:var(--shadow-lg)}.auth-footer{text-align:center;margin-top:var(--spacing-lg);font-size:var(--type-meta-size);color:var(--text-muted)}.auth-footer a{color:var(--primary);font-weight:500}.auth-divider{display:flex;align-items:center;margin:var(--spacing-lg) 0;color:var(--text-light);font-size:var(--type-caption-size)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border-color)}.auth-divider span{padding:0 var(--spacing-sm)}.auth-alert-link{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px}.auth-alert-link:hover{opacity:.85}.auth-alert-intro{display:inline-block;margin-bottom:8px;font-weight:600}.auth-alert-list{list-style:none;margin:0;padding:0}.auth-alert-list li+li{margin-top:6px}.form-group{margin-bottom:16px}.form-group:last-child{margin-bottom:0}.form-actions{display:flex;gap:12px;flex-wrap:wrap}.form-label,.admin-label{display:block;margin-bottom:var(--field-label-gap);font-size:var(--type-label-size);font-weight:var(--type-label-weight);line-height:1.35;color:var(--field-label-color)}.form-input,.ui-input,.form-select,.ui-select,.form-textarea,.ui-textarea,.admin-input,.admin-select,.admin-textarea,.search-input,.search-select,.config-static-input{width:100%;border:1px solid var(--field-border-color);background:var(--field-bg);color:var(--field-text-color);border-radius:var(--field-radius);font-size:var(--type-input-size);font-weight:var(--type-input-weight);line-height:var(--lh-normal);box-shadow:var(--field-shadow);transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.form-hint,.config-static-help{display:block;margin-top:var(--field-hint-gap);font-size:var(--type-meta-size);font-weight:var(--type-meta-weight);line-height:1.4;color:var(--field-hint-color)}.form-input,.ui-input,.form-select,.ui-select,input.admin-input,select.admin-select,.search-input,.search-select,.config-static-input{min-height:var(--field-min-height);padding:0 var(--field-padding-inline)}.form-textarea,.ui-textarea,textarea.admin-input,.admin-textarea{min-height:var(--field-textarea-min-height);padding:var(--field-padding-block) var(--field-padding-inline);resize:vertical}.form-select,.ui-select,.admin-select,.search-select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#64748b 50%),linear-gradient(135deg,#64748b 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 2px),calc(100% - 12px) calc(50% - 2px);background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:var(--field-padding-inline-select-end)}.form-input:focus,.ui-input:focus,.form-select:focus,.ui-select:focus,.form-textarea:focus,.ui-textarea:focus,.admin-input:focus,.admin-select:focus,.admin-textarea:focus,.search-input:focus,.search-select:focus,.config-static-input:focus{outline:none;border-color:var(--field-border-color-focus);box-shadow:var(--field-shadow-focus)}.form-input.error,.ui-input.error,.form-select.error,.ui-select.error,.form-textarea.error,.ui-textarea.error,.admin-input.error,.admin-select.error,.admin-textarea.error,.search-input.error,.search-select.error,.config-static-input.error{border-color:var(--field-error-color);box-shadow:0 0 0 3px #dc26261f}.form-input:hover,.ui-input:hover,.form-select:hover,.ui-select:hover,.form-textarea:hover,.ui-textarea:hover,.admin-input:hover,.admin-select:hover,.admin-textarea:hover,.search-input:hover,.search-select:hover,.config-static-input:hover{border-color:var(--field-border-color-hover)}.form-input::placeholder,.ui-input::placeholder,.form-textarea::placeholder,.ui-textarea::placeholder,.admin-input::placeholder,.admin-textarea::placeholder,.search-input::placeholder{color:var(--field-placeholder-color)}.form-input:disabled,.ui-input:disabled,.form-select:disabled,.ui-select:disabled,.form-textarea:disabled,.ui-textarea:disabled,.admin-input:disabled,.admin-select:disabled,.admin-textarea:disabled,.search-input:disabled,.search-select:disabled,.config-static-input:disabled{background:var(--field-bg-muted);color:var(--text-muted);cursor:not-allowed}.inline-input,.ui-input-inline{min-height:var(--field-min-height-compact)}.form-error,.field-error,.input-error-message{display:block;margin-top:var(--field-hint-gap);color:var(--field-error-color);font-size:var(--field-error-size);font-weight:var(--field-error-weight);line-height:1.4}.image-upload-wrapper{width:100%}.image-upload-label{display:block;cursor:pointer}.image-preview{width:100%;aspect-ratio:1;max-width:200px;margin:0 auto;border:2px dashed var(--border-color);border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-muted);font-size:var(--fs-sm);text-align:center;transition:border-color .2s,background .2s;overflow:hidden;background:var(--bg-body)}.image-preview:hover{border-color:var(--primary);background:#0496a50d}.image-preview svg{margin-bottom:var(--spacing-sm);opacity:.5}.image-preview img{width:100%;height:100%;object-fit:cover}.current-images{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.current-image-item{position:relative;width:80px;height:80px;border-radius:var(--radius-sm);overflow:hidden}.current-image-item img{width:100%;height:100%;object-fit:cover}.delete-image-btn{position:absolute;top:4px;right:4px;width:24px;height:24px;background:var(--primary);color:#fff;border:none;border-radius:50%;font-size:var(--fs-2xs);cursor:pointer;display:flex;align-items:center;justify-content:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:var(--radius-sm);font-size:var(--type-button-size);font-weight:var(--type-button-weight);text-decoration:none;cursor:pointer;transition:all .2s ease;border:none;line-height:1.2}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-1px)}.btn-secondary{background:var(--bg-body);color:var(--text-main);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--border-color)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:var(--danger-dark)}.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border-color)}.btn-ghost:hover{background:var(--bg-body);color:var(--text-main);border-color:var(--text-muted)}.btn-ghost-danger{color:var(--danger);border-color:#ef44444d}.btn-ghost-danger:hover{background:#ef44441a;color:var(--danger);border-color:var(--danger)}.btn-sm{padding:8px 16px;font-size:var(--type-meta-size)}.btn-lg{padding:16px 32px;font-size:var(--type-button-lg-size)}.btn-block{width:100%}.fab-add{position:fixed;bottom:calc(var(--nav-height) + 20px);left:50%;transform:translate(-50%);width:auto;padding:0 24px;height:52px;border-radius:30px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 15px #ff7f5080;z-index:1000;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none;font-weight:700;white-space:nowrap}.fab-add:hover{transform:translate(-50%) scale(1.05);box-shadow:0 6px 20px #ff7f5080}.fab-add:active{transform:translate(-50%) scale(.95)}.product-row{background:transparent;padding:var(--spacing-sm);border-radius:0;border:none;border-bottom:1px solid #f1f5f9;margin-bottom:0;display:flex;flex-wrap:wrap;align-items:center;gap:14px;transition:background .15s ease}.product-row:last-child{border-bottom:none}.product-row:hover{background:#f8fafc}.product-row-content{display:flex;align-items:center;gap:var(--spacing-sm);flex:1}.product-row-image{width:70px;height:70px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;background:var(--bg-body)}.product-row-image img{width:100%;height:100%;object-fit:cover}.placeholder-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-light)}.product-row-info{flex:1;min-width:0}.product-row-name{font-size:var(--fs-md);font-weight:500;color:var(--text-main);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-row-price{font-size:var(--fs-md);font-weight:700;color:var(--primary);margin-bottom:4px}.product-row-actions{display:flex;flex-direction:column;align-items:center;min-width:60px}.product-row-menu{display:flex;gap:6px;margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color)}.product-row-menu .btn{padding:6px 10px;font-size:var(--fs-2xs);display:inline-flex;align-items:center;justify-content:center;gap:4px;border-radius:var(--radius-sm);font-weight:500;transition:all .2s ease;width:auto}.product-row-menu .btn-label{display:inline}@media(max-width:400px){.product-row-menu .btn-label{display:none}}.alert{padding:16px;border-radius:var(--radius);font-size:var(--fs-md);font-weight:500;margin-bottom:var(--spacing-md);display:flex;align-items:center;gap:12px;box-shadow:0 4px 6px #0000000d}.alert-success{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;border-left:5px solid #10b981}.alert-danger,.alert-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca;border-left:5px solid #ef4444}.alert-warning{background:#fffbeb;color:#92400e;border:1px solid #fde68a;border-left:5px solid #f59e0b}.alert-info{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe;border-left:5px solid #3b82f6}.pagination-wrapper{display:flex;justify-content:center}.pagination-wrapper nav{display:flex;gap:var(--spacing-xs)}.pagination-wrapper a,.pagination-wrapper span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);font-size:var(--fs-sm);background:var(--bg-card);color:var(--text-main);border:1px solid var(--border-color)}.pagination-wrapper a:hover,.pagination-wrapper span[aria-current=page]{background:var(--primary);color:#fff;border-color:var(--primary)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:var(--nav-height);background:var(--bg-card);border-top:1px solid var(--border-color);display:flex;justify-content:space-around;align-items:center;z-index:var(--z-nav);box-shadow:0 -2px 10px #0000000d}.cart-bar,.floating-cart{position:fixed;bottom:calc(var(--nav-height) + 10px);left:var(--spacing-md);right:var(--spacing-md);background:var(--primary);color:#fff;padding:var(--spacing-md);border-radius:var(--radius);display:flex;justify-content:space-between;align-items:center;z-index:var(--z-cart);box-shadow:var(--shadow-lg)}.modal-overlay,.overlay{position:fixed;inset:0;background:#00000080;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center}.modal{background:var(--bg-card);border-radius:var(--radius);padding:var(--spacing-lg);max-width:90%;max-height:90vh;overflow-y:auto;z-index:calc(var(--z-modal) + 1)}.toast{position:fixed;bottom:calc(var(--nav-height) + 80px);left:50%;transform:translate(-50%);background:#333;color:#fff;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-full);font-size:var(--fs-sm);z-index:var(--z-toast);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}.toast.show{opacity:1;visibility:visible}.toast-success{background:#28a745}.toast-error{background:#dc3545}.toast-warning{background:#ffc107;color:#333}.notification{position:fixed;top:20px;right:20px;padding:14px 20px;border-radius:var(--radius-sm);background:var(--text-main);color:#fff;font-size:var(--fs-md);font-weight:500;box-shadow:var(--shadow-lg);z-index:var(--z-toast);animation:slideInRight .3s ease-out,fadeOut .3s ease-in 2.7s forwards;max-width:320px;word-wrap:break-word}.notification-success{background:linear-gradient(135deg,#28a745,#20c997)}.notification-error{background:linear-gradient(135deg,#dc3545,#e74c3c)}.notification-warning{background:linear-gradient(135deg,#ffc107,#fd7e14);color:var(--text-main)}.toast-container{position:fixed;top:24px;right:24px;z-index:10000;display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast-container .toast{box-sizing:border-box;pointer-events:auto;background:#fff;padding:12px 16px;border-radius:10px;box-shadow:0 6px 20px #0000001a;display:flex;align-items:center;gap:12px;min-width:260px;max-width:380px;border-left:4px solid var(--primary);transform:translate(120%);opacity:0;visibility:visible;position:relative;left:auto;bottom:auto;transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .3s ease;font-size:var(--fs-md);color:var(--text-main);font-weight:500;line-height:1.4;word-break:break-word;overflow-wrap:anywhere}.toast-container .toast.show{transform:translate(0);opacity:1}.toast-container .toast.toast-success{border-left-color:var(--success)}.toast-container .toast.toast-danger{border-left-color:var(--danger)}.toast-container .toast.toast-warning{border-left-color:var(--warning)}.toast-container .toast.toast-info{border-left-color:var(--info)}.toast-container .toast-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-container .toast-success .toast-icon{color:var(--success)}.toast-container .toast-danger .toast-icon{color:var(--danger)}.toast-container .toast-warning .toast-icon{color:var(--warning)}.toast-container .toast-info .toast-icon{color:var(--info)}@media(max-width:768px){.toast-container{inset:auto 16px 24px;align-items:stretch}.toast-container .toast{min-width:0;width:auto;max-width:100%;margin:0;font-size:var(--fs-sm);padding:12px}}.notification-info{background:linear-gradient(135deg,#17a2b8,#3498db)}.ui-switch-row{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%}.ui-switch-copy{min-width:0;color:var(--text-main);font-weight:600;line-height:1.35}.ui-switch,.ui-switch-sm{--ui-switch-width: 52px;--ui-switch-height: 30px;--ui-switch-thumb-size: 24px;--ui-switch-thumb-offset: 2px;--ui-switch-thumb-translate: 22px;--ui-switch-track-off: #d6e2ea;--ui-switch-track-on: #10b981;--ui-switch-track-border-off: rgba(148, 163, 184, .24);--ui-switch-track-border-on: rgba(16, 185, 129, .28);position:relative;display:inline-flex;width:var(--ui-switch-width);min-width:var(--ui-switch-width);height:var(--ui-switch-height);flex-shrink:0;cursor:pointer}.ui-switch-sm{--ui-switch-width: 40px;--ui-switch-height: 24px;--ui-switch-thumb-size: 18px;--ui-switch-thumb-offset: 2px;--ui-switch-thumb-translate: 16px;--ui-switch-track-off: #ef4444;--ui-switch-track-on: #10b981;--ui-switch-track-border-off: rgba(239, 68, 68, .24);--ui-switch-track-border-on: rgba(16, 185, 129, .28)}.ui-switch-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ui-switch-slider{position:absolute;inset:0;border-radius:999px;background:var(--ui-switch-track-off);border:1px solid var(--ui-switch-track-border-off);box-shadow:inset 0 1px 2px #0f172a14;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.ui-switch-slider:before{content:"";position:absolute;top:50%;left:var(--ui-switch-thumb-offset);width:var(--ui-switch-thumb-size);height:var(--ui-switch-thumb-size);margin-top:calc(var(--ui-switch-thumb-size) / -2);border-radius:50%;background:#fff;box-shadow:0 3px 8px #0f172a2e;transition:transform .2s ease}.ui-switch-input:checked+.ui-switch-slider{background:var(--ui-switch-track-on);border-color:var(--ui-switch-track-border-on);box-shadow:inset 0 1px 2px #0f172a0f,0 0 0 3px #10b9811f}.ui-switch-input:checked+.ui-switch-slider:before{transform:translate(var(--ui-switch-thumb-translate))}.ui-switch-input:focus-visible+.ui-switch-slider{outline:none;box-shadow:var(--zs-vendor-btn-focus-ring)}.ui-switch-input:disabled+.ui-switch-slider{opacity:.6;cursor:not-allowed}.ui-switch-state-label{display:block;text-align:center;color:var(--text-muted)}.ui-switch-state-label{font-size:var(--fs-2xs);font-weight:700;line-height:1.2}@media(max-width:640px){.ui-switch-row{gap:12px}.ui-switch-copy{font-size:var(--fs-md)}}.d-none{display:none}.d-flex{display:flex}.d-block{display:block}.d-inline-block{display:inline-block}.flex-column{flex-direction:column}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.align-center{align-items:center}.flex-wrap{flex-wrap:wrap}.gap-1{gap:var(--spacing-sm)}.gap-2{gap:var(--spacing-md)}.m-0{margin:0}.mt-1{margin-top:var(--spacing-sm)}.mt-2{margin-top:var(--spacing-md)}.mt-3{margin-top:var(--spacing-lg)}.mb-1{margin-bottom:var(--spacing-sm)}.mb-2{margin-bottom:var(--spacing-md)}.mb-3{margin-bottom:var(--spacing-lg)}.mx-auto{margin-left:auto;margin-right:auto}.p-0{padding:0}.p-1{padding:var(--spacing-sm)}.p-2{padding:var(--spacing-md)}.p-3{padding:var(--spacing-lg)}.py-1{padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.py-2{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.px-1{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.px-2{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.w-100{width:100%}.w-auto{width:auto}.hidden{display:none!important}.visible{visibility:visible}.invisible{visibility:hidden}.rounded{border-radius:var(--radius)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-full{border-radius:var(--radius-full)}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.fs-2xs{font-size:var(--fs-2xs)}.fs-xs{font-size:var(--fs-xs)}.fs-sm{font-size:var(--fs-sm)}.fs-md{font-size:var(--fs-md)}.fs-lg{font-size:var(--fs-lg)}.fs-xl{font-size:var(--fs-xl)}.fs-2xl{font-size:var(--fs-2xl)}.fs-3xl{font-size:var(--fs-3xl)}.fs-4xl{font-size:var(--fs-4xl)}.fs-5xl{font-size:var(--fs-5xl)}.fs-6xl{font-size:var(--fs-6xl)}.font-bold{font-weight:var(--fw-bold)}.font-semibold{font-weight:var(--fw-semibold)}.font-regular{font-weight:var(--fw-regular)}.font-medium{font-weight:var(--fw-medium)}.font-extrabold{font-weight:var(--fw-extrabold)}.lh-tight{line-height:var(--lh-tight)}.lh-normal{line-height:var(--lh-normal)}.lh-relaxed{line-height:var(--lh-relaxed)}.font-mono{font-family:var(--font-family-mono)}.text-muted{color:var(--text-muted)}.text-primary{color:var(--primary)}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.edit-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2000;display:flex;align-items:center;justify-content:center}.edit-modal[hidden]{display:none!important}.edit-modal-backdrop{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000b3}.edit-modal-content{position:relative;background:var(--bg-card);border-radius:var(--radius);width:90%;max-width:400px;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #0006}.edit-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--border-color)}.edit-modal-header h3{margin:0;font-size:var(--fs-lg)}.edit-modal-close{width:40px;height:40px;border-radius:999px;border:1px solid var(--zs-btn-secondary-border);background:linear-gradient(180deg,#fff,#f8fbfd);font-size:var(--fs-xl);color:var(--zs-btn-secondary-text);cursor:pointer;line-height:1;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 8px 16px #0f172a14}.edit-modal-close:hover{background:#eef6fb;border-color:var(--zs-btn-secondary-border-hover);color:#16779d}.edit-modal-body{padding:16px}.edit-image-preview{width:100%;height:180px;border:2px dashed var(--border-color);border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-muted);overflow:hidden;background:var(--bg-body)}.edit-image-preview img{width:100%;height:100%;object-fit:cover}.edit-image-preview p{margin-top:8px;font-size:var(--fs-sm)}.edit-modal-footer{display:flex;gap:12px;padding:16px;border-top:1px solid var(--border-color)}.edit-modal-footer .btn{flex:1}.config-modal .config-modal-content{max-width:460px;border-radius:16px}.config-modal .config-modal-body{max-height:60vh;overflow-y:auto;padding:15px}.config-modal .config-acc-icon{color:var(--primary)}.config-modal .section-disclosure-toggle{min-height:48px}.config-modal .upload-area{min-height:120px}.config-modal .config-logo-preview{width:120px;height:120px;border-radius:16px;overflow:hidden;border:1px solid #e2e8f0;background:#f8fafc;align-items:center;justify-content:center;box-shadow:0 4px 6px -1px #0000001a;display:none}.config-modal .config-logo-preview.is-visible{display:flex}.config-modal .config-logo-preview-img{width:100%;height:100%;object-fit:cover}.config-hidden{display:none}@media(max-width:640px){.config-modal .config-modal-content{width:calc(100% - 16px);max-width:none;max-height:calc(100vh - 16px);border-radius:14px}.config-modal .config-modal-body{max-height:calc(100vh - 220px);padding:12px}.config-modal .edit-modal-footer{position:sticky;bottom:0;background:#fff;z-index:2}.config-modal .edit-modal-footer .btn{min-height:44px}}.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:#000000e6;color:#fff;padding:8px 12px;z-index:99;box-shadow:0 -2px 10px #0003;animation:slideUp .3s ease-out;transition:bottom .3s ease}.cookie-banner.cart-active{bottom:70px}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.cookie-content{max-width:1200px;margin:0 auto;display:flex;flex-direction:row;gap:10px;align-items:center;justify-content:center}.cookie-text{display:flex;align-items:center;gap:6px;font-size:var(--type-meta-size);line-height:1.3}.cookie-text svg{flex-shrink:0;width:14px;height:14px}.cookie-text a{color:var(--primary, #d9534f);text-decoration:underline}.cookie-accept-btn{background:var(--primary, #d9534f);color:#fff;border:none;padding:4px 12px;border-radius:4px;font-size:var(--type-button-size);font-weight:var(--type-button-weight);cursor:pointer;white-space:nowrap}.cookie-accept-btn:hover{opacity:.9}.cookie-accept-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #d9534f3d}@media(min-width:768px){.container{max-width:720px}.product-grid{grid-template-columns:repeat(3,1fr)}.bottom-nav:not(.vendor-bottom-nav){display:none}body{padding-bottom:0}body.vendor-shell{padding-bottom:calc(var(--nav-height, 74px) + env(safe-area-inset-bottom) + 24px)}}img,svg,video,canvas{max-width:100%}@media(min-width:1024px){.container{max-width:1080px}.product-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:767px){.container{--container-inline-padding: 14px;padding-left:14px;padding-right:14px}.app-main,.vendor-shell-main,.admin-main{padding-bottom:max(20px,env(safe-area-inset-bottom))}.vendor-shell .quick-settings-fab{bottom:calc(var(--nav-height, 74px) + env(safe-area-inset-bottom) + 18px)}.footer .container{text-align:center}}@media(max-width:400px){.vendor-bottom-nav .nav-item{min-width:0;font-size:var(--fs-2xs);padding-left:2px;padding-right:2px}.vendor-bottom-nav .nav-item .nav-icon,.vendor-bottom-nav .nav-item svg{width:22px;height:22px}.product-row-menu .btn-label{display:none}.container{--container-inline-padding: 12px;padding-left:12px;padding-right:12px}}
