.landing{min-height:100vh;background:#f8fafc;position:relative;overflow-x:hidden}.landing-bg{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.particles-background{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.particle{position:absolute;border-radius:50%;background:linear-gradient(135deg,#16a34a,#3b82f6);animation:particle-float 20s ease-in-out infinite}@keyframes particle-float{0%,to{transform:translate(0) scale(1)}25%{transform:translate(10px,-15px) scale(1.1)}50%{transform:translate(-8px,10px) scale(.95)}75%{transform:translate(12px,5px) scale(1.05)}}.landing-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 20% 80%,rgba(22,163,74,.06) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(59,130,246,.06) 0%,transparent 50%),linear-gradient(rgba(0,0,0,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.03) 1px,transparent 1px);background-size:100% 100%,100% 100%,48px 48px,48px 48px;animation:grid-shift 30s linear infinite}@keyframes grid-shift{0%{transform:translate(0)}to{transform:translate(60px,60px)}}.landing-glow{position:absolute;border-radius:50%;filter:blur(120px);opacity:.55;animation:glow-pulse 6s ease-in-out infinite}.landing-glow-1{width:500px;height:500px;background:linear-gradient(135deg,#16a34a,#22c55e);top:-200px;right:-100px}.landing-glow-2{width:400px;height:400px;background:linear-gradient(135deg,#3b82f6,#6366f1);bottom:20%;left:-150px;animation-delay:-3s}.landing-glow-3{width:300px;height:300px;background:linear-gradient(135deg,#f97316,#eab308);bottom:-100px;right:20%;animation-delay:-5s}@keyframes glow-pulse{0%,to{opacity:.4;transform:scale(1) translate(0)}25%{opacity:.5;transform:scale(1.05) translate(40px,-50px)}50%{opacity:.6;transform:scale(1.1) translate(-30px,60px)}75%{opacity:.5;transform:scale(1.05) translate(-50px,-30px)}}.landing-header{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:1.25rem 2.5rem;max-width:1200px;margin:0 auto}.landing-header .landing-logo{flex-shrink:0}.landing-logo{display:inline-flex;align-items:center;gap:.4rem;transition:transform .2s}.landing-logo:hover{transform:scale(1.03)}.logo-text{font-size:1.5rem;font-weight:700;color:#0f172a;letter-spacing:-.02em}.logo-check{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;background:#16a34a;color:#fff;font-size:.75rem;font-weight:700;border-radius:50%}.landing-nav{display:flex;align-items:center;gap:2rem;margin-left:auto;padding-right:.5rem}.landing-nav a:not(.btn){color:#475569;font-size:.9375rem;font-weight:500;transition:color .2s}.landing-nav a:not(.btn):hover{color:#0f172a}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border-radius:8px;font-size:.9375rem;font-weight:600;border:none;transition:all .2s}.btn-ghost{background:#fff;color:#0f172a;box-shadow:0 1px 2px #0000000d}.btn-ghost:hover{background:#f1f5f9;transform:translateY(-1px);box-shadow:0 4px 12px #00000014}.btn-primary{background:#0f172a;color:#fff}.btn-primary:hover{background:#1e293b;transform:translateY(-1px);box-shadow:0 4px 12px #0f172a4d}.landing-main{position:relative;z-index:1;max-width:1100px;margin:0 auto;padding:0 2rem 4rem}.hero-marquee-strip{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem;width:100%;overflow:hidden}.marquee-section{overflow:hidden;-webkit-user-select:none;user-select:none}.marquee-icons .marquee-track{display:flex;align-items:center;gap:1rem}.marquee-icon-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border-radius:999px;font-size:.875rem;font-weight:600;color:var(--badge-color, #0f172a);box-shadow:0 2px 12px #00000014;border:1px solid rgba(0,0,0,.06);white-space:nowrap;flex-shrink:0;transition:transform .2s,box-shadow .2s}.marquee-icon-badge:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001f}.marquee-icon-emoji{font-size:1.1rem}.marquee-icon-name{letter-spacing:-.02em}.marquee-features .marquee-track{display:flex;align-items:center;gap:.5rem}.marquee-feature-tag{padding:.4rem 1rem;background:#fffc;border-radius:999px;font-size:.9rem;font-weight:500;color:#475569;border:1px solid #e2e8f0;white-space:nowrap;flex-shrink:0;transition:all .2s}.marquee-feature-tag:hover{background:#16a34a;color:#fff;border-color:#16a34a}.horizontal-scroll-section{width:100%;overflow:hidden;margin-bottom:2rem}.horizontal-scroll-inner{will-change:transform}.hero{text-align:center;padding:4rem 0 6rem}.hero-visual{position:relative;width:280px;height:280px;margin:0 auto 2.5rem}.hero-orb{position:absolute;border-radius:50%;filter:blur(40px)}.hero-orb-1{width:180px;height:180px;background:#16a34a;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.5;animation:orb-float 6s ease-in-out infinite}.hero-orb-2{width:120px;height:120px;background:#3b82f6;top:25%;right:15%;opacity:.4;animation:orb-float-2 5s ease-in-out infinite;animation-delay:-1s}@keyframes orb-float-2{0%,to{transform:scale(1);opacity:.4}50%{transform:scale(1.25);opacity:.55}}@keyframes orb-float{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.5}50%{transform:translate(-50%,-60%) scale(1.2);opacity:.65}}.hero-platforms{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.platform-badge{position:absolute;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:700;color:#fff;background:#0f172a;box-shadow:0 4px 12px #00000026;animation:badge-swap 12s cubic-bezier(.4,0,.2,1) infinite}.platform-badge-text{font-size:.65rem;letter-spacing:-.02em}.platform-badge-icon svg{flex-shrink:0;color:inherit}@keyframes badge-swap{0%{transform:translate(var(--pos-x-1),var(--pos-y-1))}14.28%{transform:translate(var(--pos-x-2),var(--pos-y-2))}28.57%{transform:translate(var(--pos-x-3),var(--pos-y-3))}42.85%{transform:translate(var(--pos-x-4),var(--pos-y-4))}57.14%{transform:translate(var(--pos-x-5),var(--pos-y-5))}71.42%{transform:translate(var(--pos-x-6),var(--pos-y-6))}85.71%{transform:translate(var(--pos-x-7),var(--pos-y-7))}to{transform:translate(var(--pos-x-1),var(--pos-y-1))}}.platform-badge:nth-child(n){top:50%;left:50%;margin:-26px 0 0 -26px}.platform-badge:nth-child(1){background:#f56400;--pos-x-1: 0;--pos-y-1: -110px;--pos-x-2: 86px;--pos-y-2: -68px;--pos-x-3: 107px;--pos-y-3: 24px;--pos-x-4: 47px;--pos-y-4: 99px;--pos-x-5: -47px;--pos-y-5: 99px;--pos-x-6: -107px;--pos-y-6: 24px;--pos-x-7: -86px;--pos-y-7: -68px}.platform-badge:nth-child(2){background:#16a34a;--pos-x-1: 86px;--pos-y-1: -68px;--pos-x-2: 107px;--pos-y-2: 24px;--pos-x-3: 47px;--pos-y-3: 99px;--pos-x-4: -47px;--pos-y-4: 99px;--pos-x-5: -107px;--pos-y-5: 24px;--pos-x-6: -86px;--pos-y-6: -68px;--pos-x-7: 0;--pos-y-7: -110px}.platform-badge:nth-child(3){background:#f90;--pos-x-1: 107px;--pos-y-1: 24px;--pos-x-2: 47px;--pos-y-2: 99px;--pos-x-3: -47px;--pos-y-3: 99px;--pos-x-4: -107px;--pos-y-4: 24px;--pos-x-5: -86px;--pos-y-5: -68px;--pos-x-6: 0;--pos-y-6: -110px;--pos-x-7: 86px;--pos-y-7: -68px}.platform-badge:nth-child(4){background:#3b82f6;--pos-x-1: 47px;--pos-y-1: 99px;--pos-x-2: -47px;--pos-y-2: 99px;--pos-x-3: -107px;--pos-y-3: 24px;--pos-x-4: -86px;--pos-y-4: -68px;--pos-x-5: 0;--pos-y-5: -110px;--pos-x-6: 86px;--pos-y-6: -68px;--pos-x-7: 107px;--pos-y-7: 24px}.platform-badge:nth-child(5){background:#96588a;--pos-x-1: -47px;--pos-y-1: 99px;--pos-x-2: -107px;--pos-y-2: 24px;--pos-x-3: -86px;--pos-y-3: -68px;--pos-x-4: 0;--pos-y-4: -110px;--pos-x-5: 86px;--pos-y-5: -68px;--pos-x-6: 107px;--pos-y-6: 24px;--pos-x-7: 47px;--pos-y-7: 99px}.platform-badge:nth-child(6){background:#96588a;--pos-x-1: -107px;--pos-y-1: 24px;--pos-x-2: -86px;--pos-y-2: -68px;--pos-x-3: 0;--pos-y-3: -110px;--pos-x-4: 86px;--pos-y-4: -68px;--pos-x-5: 107px;--pos-y-5: 24px;--pos-x-6: 47px;--pos-y-6: 99px;--pos-x-7: -47px;--pos-y-7: 99px}.platform-badge:nth-child(7){background:#95bf47;--pos-x-1: -86px;--pos-y-1: -68px;--pos-x-2: 0;--pos-y-2: -110px;--pos-x-3: 86px;--pos-y-3: -68px;--pos-x-4: 107px;--pos-y-4: 24px;--pos-x-5: 47px;--pos-y-5: 99px;--pos-x-6: -47px;--pos-y-6: 99px;--pos-x-7: -107px;--pos-y-7: 24px}.hero-title{font-size:clamp(2.2rem,5vw,3.2rem);font-weight:800;color:#0f172a;line-height:1.1;letter-spacing:-.04em;margin:0 0 1rem;animation:fadeInUp .6s ease-out}.hero-subtitle{font-size:1.2rem;color:#64748b;margin:0 0 1.5rem;line-height:1.6;max-width:540px;margin-left:auto;margin-right:auto}.btn-cta{display:inline-flex;align-items:center;justify-content:center;padding:.9rem 1.75rem;background:#16a34a;color:#fff;font-size:1rem;font-weight:600;border-radius:10px;border:none;transition:all .2s}.btn-cta:hover{background:#15803d;transform:translateY(-2px);box-shadow:0 8px 24px #16a34a59}.hero-trial{font-size:.9rem;color:#64748b;margin:1rem 0 3rem}.hero-stats{display:flex;justify-content:center;gap:3rem;flex-wrap:wrap;padding:2.5rem 0;border-top:1px solid #e2e8f0}.stat-card{display:flex;flex-direction:column;align-items:center;padding:.75rem 1.25rem;background:#fff9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:14px;border:1px solid rgba(255,255,255,.8);box-shadow:0 4px 20px #0000000a;transition:transform .2s,box-shadow .2s;animation:fadeInUp .6s ease-out backwards}.stat-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 12px 36px #0000001a;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}.stat-card:nth-child(1){animation-delay:.1s}.stat-card:nth-child(2){animation-delay:.2s}.stat-card:nth-child(3){animation-delay:.3s}.stat-card:nth-child(4){animation-delay:.4s}.stat-value{font-size:2rem;font-weight:700;color:#0f172a;letter-spacing:-.02em}.stat-label{font-size:.875rem;color:#64748b;margin-top:.25rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.value-section,.features-section,.testimonials-section{padding:5rem 0}.section-title{font-size:1.75rem;font-weight:700;color:#0f172a;text-align:center;margin:0 0 3rem}.value-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.value-card{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 20px #0000000f;border:1px solid rgba(0,0,0,.04);transition:transform .2s,box-shadow .2s;animation:fadeInUp .5s ease-out backwards;animation-delay:calc(var(--i) * .1s)}.value-card:hover,.value-card-hover:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 24px 56px #00000024,0 0 0 1px #16a34a26;border-color:#16a34a40}.value-card-hover{transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s,border-color .3s}.value-icon{font-size:2rem;display:block;margin-bottom:1rem}.value-card h3{font-size:1.25rem;font-weight:700;color:#0f172a;margin:0 0 .5rem}.value-card p{font-size:.95rem;color:#64748b;line-height:1.5;margin:0}.features-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.feature-tag{padding:.6rem 1.2rem;background:#fff;border-radius:999px;font-size:.9rem;font-weight:500;color:#475569;box-shadow:0 2px 8px #0000000d;border:1px solid #e2e8f0;transition:all .2s;animation:fadeInUp .4s ease-out backwards;animation-delay:calc(var(--i) * .05s)}.feature-tag:hover{background:#16a34a;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #16a34a4d}.skill-badge{--badge-bg: #16a34a;display:inline-flex;align-items:center;padding:.5rem 1rem;background:#16a34a1a;color:var(--badge-bg);border:1px solid rgba(22,163,74,.25);border-radius:8px;font-size:.875rem;font-weight:600;transition:all .25s ease;box-shadow:0 1px 3px #0000000a}.skill-badge:hover{background:var(--badge-bg);color:#fff;transform:translateY(-3px);box-shadow:0 6px 20px #16a34a59;border-color:transparent}.features-grid-badges{gap:.75rem}.features-grid-badges .skill-badge{animation:fadeInUp .4s ease-out backwards;animation-delay:calc(var(--i, 0) * .05s)}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.testimonial-card{background:#fff;border-radius:16px;padding:2rem;margin:0;box-shadow:0 4px 20px #0000000f;border:1px solid rgba(0,0,0,.04);font-style:normal;transition:transform .2s}.testimonial-card:hover,.testimonial-card-hover:hover{transform:translateY(-6px) scale(1.01);box-shadow:0 16px 48px #0000001f,0 0 0 1px #0000000a}.testimonial-card-hover{transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s}.testimonial-card p{font-size:1rem;color:#334155;line-height:1.6;margin:0 0 1rem}.testimonial-card cite{font-size:.875rem;color:#64748b;font-style:normal}.cta-section{text-align:center;padding:5rem 2rem;background:linear-gradient(135deg,#0f172a,#1e293b);border-radius:24px;color:#fff;margin:2rem 0}.cta-section h2{font-size:2rem;font-weight:700;margin:0 0 .5rem}.cta-section p{font-size:1.1rem;color:#94a3b8;margin:0 0 1.5rem}.btn-cta-lg{padding:1rem 2rem;font-size:1.1rem;background:#16a34a!important}.btn-cta-lg:hover{background:#22c55e!important}.cta-trial{font-size:.9rem;color:#64748b!important;margin:1rem 0 0!important}.landing-footer{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:2rem;padding:2rem;font-size:.875rem;color:#64748b}.landing-footer a{color:#64748b}.landing-footer a:hover{color:#0f172a}.auth-page{min-height:100vh;background:#f8fafc;position:relative;overflow:hidden}.auth-bg-shapes{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.auth-bg-shapes:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 20% 80%,rgba(22,163,74,.08) 0%,transparent 45%),radial-gradient(circle at 80% 20%,rgba(59,130,246,.08) 0%,transparent 45%),linear-gradient(rgba(0,0,0,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.025) 1px,transparent 1px);background-size:100% 100%,100% 100%,48px 48px,48px 48px;animation:auth-grid 25s linear infinite}@keyframes auth-grid{0%{transform:translate(0)}to{transform:translate(48px,48px)}}.auth-shape{position:absolute;border-radius:50%;filter:blur(100px);opacity:.5;animation:auth-float 7s ease-in-out infinite}.auth-shape-1{width:400px;height:400px;background:linear-gradient(135deg,#16a34a,#22c55e);top:-120px;right:-100px}.auth-shape-2{width:320px;height:320px;background:linear-gradient(135deg,#0f172a,#334155);bottom:15%;left:-100px;animation-delay:-2s}.auth-shape-3{width:200px;height:200px;background:linear-gradient(135deg,#3b82f6,#6366f1);bottom:-60px;right:25%;animation-delay:-4s}@keyframes auth-float{0%,to{transform:translate(0) scale(1);opacity:.5}50%{transform:translate(25px,-25px) scale(1.05);opacity:.6}}.auth-header{position:relative;z-index:1;padding:1.5rem 2.5rem}.auth-logo{display:inline-flex;align-items:center;gap:.4rem;font-size:1.5rem;font-weight:700;color:#0f172a;transition:transform .2s}.auth-logo:hover{transform:scale(1.03)}.auth-logo .logo-check{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;background:#16a34a;color:#fff;font-size:.7rem;border-radius:50%}.auth-main{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;padding:2rem;min-height:calc(100vh - 90px)}.auth-card{background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:24px;padding:2.5rem 2.75rem;width:100%;max-width:440px;box-shadow:0 0 0 1px #ffffffe6,0 4px 6px -1px #0000000f,0 20px 50px -12px #0000001f;border:1px solid rgba(255,255,255,.6);animation:auth-card-in .5s ease-out}@keyframes auth-card-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-card h1{font-size:1.875rem;font-weight:700;margin:0 0 .25rem;color:#0f172a;letter-spacing:-.02em}.auth-desc{color:#64748b;font-size:.95rem;margin:0 0 1.75rem;line-height:1.5}.auth-error{padding:.875rem 1rem;background:#fef2f2;color:#b91c1c;border-radius:12px;font-size:.875rem;margin-bottom:1.25rem;border:1px solid #fecaca;animation:auth-shake .4s ease-out}@keyframes auth-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.auth-form{display:flex;flex-direction:column;gap:1.125rem}.auth-form label{display:flex;flex-direction:column;gap:.45rem;font-size:.875rem;font-weight:600;color:#334155}.auth-form input{padding:.875rem 1rem;border:1px solid #e2e8f0;border-radius:12px;font-size:.95rem;background:#fff;transition:border-color .2s,box-shadow .2s}.auth-form input:focus{outline:none;border-color:#16a34a;box-shadow:0 0 0 3px #16a34a26}.auth-form input::placeholder{color:#94a3b8}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border-radius:8px;font-size:.9375rem;font-weight:600;border:none;cursor:pointer;transition:all .2s}.btn-primary{background:#16a34a;color:#fff}.btn-primary:hover:not(:disabled){background:#15803d}.btn-block{width:100%;padding:.9rem 1rem;margin-top:.5rem;font-size:1rem;font-weight:600;border-radius:12px;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-block:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 4px 12px #16a34a4d}.btn-spinner{width:22px;height:22px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:auth-spin .7s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-footer{margin:1.75rem 0 0;font-size:.9rem;color:#64748b;text-align:center;padding-top:1.25rem;border-top:1px solid #e2e8f0}.auth-footer a{color:#16a34a;font-weight:600;transition:color .2s}.auth-footer a:hover{color:#15803d;text-decoration:underline}.animate-in{animation:auth-fade-in .4s ease-out}@keyframes auth-fade-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.dashboard{display:flex;min-height:100vh;background:#fff}.sidebar{width:260px;min-width:260px;background:#f8fafc;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;transition:width .2s,min-width .2s}.sidebar-collapsed{width:64px;min-width:64px}.sidebar-collapsed .sidebar-shop,.sidebar-collapsed .sidebar-nav-item span,.sidebar-collapsed .filter-group-title,.sidebar-collapsed .filter-btn,.sidebar-collapsed .filter-checkbox,.sidebar-collapsed .btn-add-shop{display:none}.sidebar-collapsed .sidebar-nav-item{justify-content:center;padding-left:0}.sidebar-top{padding:1rem;border-bottom:1px solid #e2e8f0}.sidebar-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;color:#64748b;border-radius:8px;margin-bottom:.5rem}.sidebar-toggle:hover{background:#e2e8f0;color:#0f172a}.sidebar-shop-select{width:100%;padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;background:#fff;color:#334155}.sidebar-nav{padding:.75rem 0;border-bottom:1px solid #e2e8f0}.sidebar-nav-item{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;color:#64748b;font-size:.9375rem;font-weight:500;transition:background .15s,color .15s}.sidebar-nav-item:hover{background:#f1f5f9;color:#0f172a}.sidebar-nav-item.active{background:#e2e8f0;color:#0f172a}.sidebar-filters{flex:1;overflow-y:auto;padding:1rem}.filter-group{margin-bottom:1.25rem}.filter-group-title{font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.filter-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem .75rem;border:none;background:transparent;font-size:.875rem;color:#475569;text-align:left;border-radius:6px;margin-bottom:.25rem;transition:background .15s,color .15s}.filter-btn:hover{background:#f1f5f9;color:#0f172a}.filter-btn.active{background:#e2e8f0;color:#0f172a;font-weight:500}.filter-count{font-size:.8125rem;color:#94a3b8}.filter-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#475569;cursor:pointer}.sidebar-footer{padding:1rem;border-top:1px solid #e2e8f0}.btn-add-shop{width:100%;padding:.625rem 1rem;background:#0f172a;color:#fff;font-size:.875rem;font-weight:600;border:none;border-radius:8px}.btn-add-shop:hover{background:#1e293b}.dashboard-main{flex:1;display:flex;flex-direction:column;min-width:0}.dashboard-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid #e2e8f0;background:#fff;flex-wrap:wrap;gap:.75rem}.header-left{display:flex;align-items:center;gap:.5rem}.header-breadcrumb{font-size:1rem;font-weight:600;color:#0f172a}.header-refresh{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:#64748b;border-radius:6px}.header-refresh:hover{background:#f1f5f9;color:#0f172a}.header-user{display:flex;align-items:center;gap:.75rem}.header-user-name{font-size:.875rem;color:#64748b}.btn-logout{padding:.4rem .75rem;font-size:.8125rem;background:#f1f5f9;color:#475569;border:none;border-radius:6px}.btn-logout:hover{background:#e2e8f0;color:#0f172a}.header-actions{display:flex;align-items:center;gap:.75rem}.header-search-wrap{position:relative}.search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.header-search{width:220px;padding:.5rem .75rem .5rem 36px;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem}.header-search::placeholder{color:#94a3b8}.btn-import{padding:.5rem 1rem;background:#fff;color:#334155;border:1px solid #e2e8f0;font-size:.875rem;font-weight:500;border-radius:8px}.btn-import:hover{background:#f8fafc}.btn-create{padding:.5rem 1rem;background:#16a34a;color:#fff;border:none;font-size:.875rem;font-weight:600;border-radius:8px}.btn-create{transition:background .2s,transform .15s}.btn-create:hover{background:#15803d;transform:translateY(-1px)}.dashboard-content{flex:1;overflow:auto;padding:1rem 1.5rem}.table-wrap{overflow-x:auto;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.listings-table{width:100%;border-collapse:collapse;font-size:.875rem}.listings-table th,.listings-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e2e8f0}.listings-table th{font-weight:600;color:#64748b;background:#f8fafc}.listings-table th:first-child,.listings-table td:first-child{padding-left:1rem}.listings-table tbody tr{transition:background .15s}.listings-table tbody tr:hover{background:#f8fafc}.listings-table tbody tr{animation:tableRowIn .3s ease-out}@keyframes tableRowIn{0%{opacity:.6}to{opacity:1}}.col-check{width:40px}.col-img{width:56px}.col-title{min-width:200px}.col-stock{width:80px}.col-price,.col-expires{width:90px}.col-section{width:120px}.col-score{width:64px}.col-shops{width:40px}.listing-thumb{width:40px;height:40px;border-radius:6px;overflow:hidden;background:#f1f5f9;display:flex;align-items:center;justify-content:center}.listing-thumb img{width:100%;height:100%;object-fit:cover}.listing-thumb-placeholder{font-size:.75rem;color:#94a3b8}.col-title{color:#0f172a;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:.75rem;font-weight:700}.score-A{background:#dcfce7;color:#166534}.score-B{background:#dbeafe;color:#1e40af}.score-C{background:#fef9c3;color:#a16207}.score-D{background:#fed7aa;color:#c2410c}.score-F{background:#fecaca;color:#b91c1c}.shop-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#f97316}.table-loading,.table-empty{text-align:center;color:#64748b;padding:3rem 1rem!important}.table-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;padding:.75rem 0;font-size:.875rem;color:#64748b}.pagination-controls{display:flex;align-items:center;gap:.5rem}.pagination-controls button{padding:.35rem .6rem;border:1px solid #e2e8f0;background:#fff;border-radius:6px;color:#475569;font-size:.875rem}.pagination-controls button:hover:not(:disabled){background:#f8fafc;color:#0f172a}.pagination-controls button:disabled{opacity:.5;cursor:not-allowed}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}*,*:before,*:after{box-sizing:border-box}:root{--bg: #ffffff;--text: #0f172a;--text-muted: #64748b;--border: #e2e8f0;--accent: #16a34a;--accent-hover: #15803d;--sidebar-bg: #f8fafc;--header-border: #e2e8f0;--font-sans: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-smooth iframe{pointer-events:none}body{margin:0;font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased;-ms-overflow-style:none;scrollbar-width:none}::-webkit-scrollbar{display:none}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}input,select{font-family:inherit}.auth-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;background:#f8fafc;color:#64748b}.auth-loading-spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#16a34a;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
