@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&family=DM+Sans:wght@300;400;500;600&display=swap");@tailwind base;@tailwind components;@tailwind utilities;:root{--bg-primary:#0a0a0a;--bg-secondary:#121212;--bg-card:#181818;--bg-sidebar:#0e0e0e;--gold:#c5a059;--gold-light:#e6c88b;--gold-dim:#8e6d3d;--accent-red:#8b0000;--accent-red-light:#b22222;--text-primary:#fff;--text-secondary:#b0b0b0;--text-muted:#666;--border:#262626;--border-light:#333;--red-badge:#8b0000;--green:#2e7d52;--header-height:72px;--sidebar-width:240px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:DM Sans,sans-serif;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--gold-dim);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--gold)}.font-display{font-family:Playfair Display,serif}.text-gold{color:var(--gold)}.text-gold-light{color:var(--gold-light)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.bg-card{background-color:var(--bg-card)}.border-custom{border-color:var(--border)}.gold-divider{width:40px;height:2px;background:linear-gradient(90deg,var(--gold),transparent);box-shadow:0 0 8px rgba(197,160,89,.3)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in-up{animation:fadeInUp .4s ease forwards}.card-hover{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.card-hover:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,.5),0 0 0 1px rgba(201,168,76,.15);border-color:rgba(201,168,76,.3)!important}.btn-primary{background:linear-gradient(135deg,var(--accent-red),var(--accent-red-light));color:#fff;font-weight:600;font-size:.8125rem;letter-spacing:.03em;padding:.5rem 1.1rem;border-radius:4px;border:none;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px rgba(139,0,0,.25)}.btn-primary:hover{opacity:.95;transform:translateY(-1px);box-shadow:0 6px 16px rgba(139,0,0,.35)}.btn-outline{background:transparent;color:var(--gold);font-weight:500;font-size:.8125rem;letter-spacing:.03em;padding:.5rem 1.1rem;border-radius:4px;border:1px solid rgba(197,160,89,.35);cursor:pointer;transition:all .2s ease}.btn-outline:hover{background:rgba(197,160,89,.08);border-color:var(--gold);color:var(--gold-light)}.sidebar-item{display:flex;align-items:center;gap:10px;padding:9px 14px;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:400;color:var(--text-secondary);transition:background .2s,color .2s;border:1px solid transparent}.sidebar-item:hover{background:rgba(201,168,76,.06);color:var(--text-primary)}.sidebar-item.active{background:rgba(201,168,76,.1);color:var(--gold-light);border-color:rgba(201,168,76,.2);font-weight:500}.badge{display:inline-flex;align-items:center;font-size:.6875rem;font-weight:600;letter-spacing:.06em;padding:2px 8px;border-radius:3px;text-transform:uppercase}.badge-hot{background:var(--accent-red);color:#fff}.badge-bestseller{background:var(--gold);color:#000}.badge-new{background:#2e7d52;color:#fff}.badge-soldout{background:#333;color:var(--text-muted)}.search-input{background:hsla(0,0%,100%,.05);border:1px solid var(--border-light);border-radius:6px;color:var(--text-primary);padding:8px 14px 8px 38px;font-size:.875rem;font-family:DM Sans,sans-serif;outline:none;transition:border-color .2s,background .2s;width:240px}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{border-color:rgba(201,168,76,.4);background:hsla(0,0%,100%,.07)}@media (max-width:768px){:root{--sidebar-width:0px;--header-height:56px}.search-input{width:100%;max-width:180px;font-size:.875rem}}@supports (padding-bottom:env(safe-area-inset-bottom)){.mobile-bottom-bar{padding-bottom:env(safe-area-inset-bottom);height:calc(64px + env(safe-area-inset-bottom))}.mobile-bottom-spacer{height:calc(72px + env(safe-area-inset-bottom))!important}}body,html{overflow-x:hidden;max-width:100vw}[role=button],a,button{min-height:44px;min-width:44px}.mobile-bottom-bar,.mobile-branch-drawer{display:none}@media (max-width:768px){.mobile-bottom-bar{display:flex!important;position:fixed;bottom:0;left:0;right:0;height:64px;background:hsla(0,0%,4%,.97);border-top:1px solid var(--border);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:140;align-items:stretch;padding:0 8px;gap:8px}.mobile-branch-drawer{display:flex;flex-direction:column;position:fixed;left:0;right:0;bottom:0;max-height:75vh;background:var(--bg-secondary);border-top:1px solid rgba(201,162,39,.2);border-radius:20px 20px 0 0;z-index:160;transform:translateY(100%);transition:transform .32s cubic-bezier(.4,0,.2,1);box-shadow:0 -8px 40px rgba(0,0,0,.6)}.mobile-branch-drawer.open{transform:translateY(0)}.mobile-bottom-spacer{display:block!important}.hidden-mobile,.sidebar-wrapper{display:none!important}}.product-grid-responsive{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:20px;gap:20px}@media (max-width:480px){.product-grid-responsive{grid-template-columns:1fr;gap:16px}}@media (min-width:481px) and (max-width:768px){.product-grid-responsive{grid-template-columns:repeat(2,1fr);gap:14px}}@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr!important;gap:24px!important}}@media (max-width:560px){.footer-grid{grid-template-columns:1fr!important;gap:20px!important}}@media (max-width:768px){.hero-section{padding:28px 16px 24px!important}.hero-section h1{font-size:clamp(1.375rem,5vw,1.75rem)!important}.product-section{padding:20px 14px 32px!important}.product-section-header h2{font-size:clamp(1.125rem,4vw,1.375rem)!important}}@media (max-width:480px){.card-hover{border-radius:10px}.card-hover:hover{transform:none}.cart-modal-panel{width:100vw!important;border-left:none!important;border-top:1px solid rgba(197,160,89,.2);border-radius:20px 20px 0 0;top:auto!important;bottom:0!important;max-height:92vh}.review-modal-inner{max-width:100%!important;margin:0!important;border-radius:20px 20px 0 0!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important}}@media (max-width:768px){.admin-container{flex-direction:column!important}.admin-sidebar{display:none!important}.admin-main{margin-left:0!important}.admin-stats-grid{grid-template-columns:repeat(2,1fr)!important;gap:12px!important}}@media (max-width:480px){.admin-stats-grid{grid-template-columns:1fr!important}}@media (max-width:768px){input:focus,textarea:focus{font-size:16px!important}}.sidebar-item{min-height:44px;padding:10px 14px}.btn-cart-gold,.btn-outline,.btn-primary,.btn-review-ruby{min-height:44px;display:inline-flex;align-items:center;justify-content:center}@media (max-width:360px){.search-input{max-width:130px;font-size:.8125rem}}.btn-cart-gold{position:relative;overflow:hidden;background:linear-gradient(135deg,#c9a227,#e6c88b 50%,#c9a227);background-size:200% 100%;color:#0a0803;font-weight:700;font-size:.8125rem;letter-spacing:.04em;padding:.5rem 1.1rem;border-radius:4px;border:none;cursor:pointer;transition:background-position .4s ease,box-shadow .2s;box-shadow:0 2px 12px rgba(201,162,39,.25);font-family:DM Sans,sans-serif}.btn-cart-gold:after{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.35),transparent);transform:skewX(-20deg);transition:left .45s ease}.btn-cart-gold:hover{background-position:100% 0;box-shadow:0 4px 20px rgba(201,162,39,.45)}.btn-cart-gold:hover:after{left:160%}@keyframes flyToCart{0%{transform:scale(1) translate(0);opacity:1}60%{transform:scale(.35) translate(var(--fly-x),var(--fly-y));opacity:.7}to{transform:scale(.05) translate(var(--fly-x),var(--fly-y));opacity:0}}.fly-img{position:fixed;width:80px;height:80px;border-radius:8px;object-fit:cover;pointer-events:none;z-index:9999;animation:flyToCart .65s cubic-bezier(.4,0,.2,1) forwards}@keyframes blinkDot{0%,to{opacity:1}50%{opacity:.15}}@keyframes barShimmer{0%{filter:brightness(1) contrast(1)}50%{filter:brightness(1.35) contrast(1.15) saturate(1.2)}to{filter:brightness(1) contrast(1)}}.chart-metallic canvas{animation:barShimmer 2s ease-in-out infinite}.btn-review-ruby{position:relative;overflow:hidden;background:linear-gradient(135deg,#c0392b,#8b0000 50%,#6b0000);color:#fff;font-weight:700;font-size:.8125rem;letter-spacing:.04em;padding:.5rem 1.1rem;border-radius:4px;border:1px solid hsla(0,100%,70%,.2);cursor:pointer;font-family:DM Sans,sans-serif;box-shadow:0 2px 12px rgba(139,0,0,.35)}.btn-review-ruby:after{content:"";position:absolute;top:0;left:-120%;width:55%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,100%,93%,.55),transparent);transform:skewX(-22deg);animation:rubyFlare 3s ease-in-out infinite}@keyframes rubyFlare{0%{left:-120%}30%{left:160%}to{left:160%}}@keyframes cartPulse{0%{transform:scale(1)}40%{transform:scale(1.45)}to{transform:scale(1)}}.cart-badge-pulse{animation:cartPulse .35s ease}@keyframes tagSwing{0%{transform:rotate(-6deg)}50%{transform:rotate(6deg)}to{transform:rotate(-6deg)}}.price-tag-swing{animation:tagSwing 2.4s ease-in-out infinite;transform-origin:top right}.ba3_btn__C6DrB{position:fixed;right:20px;bottom:20px;background:transparent;border:none;cursor:pointer;z-index:9999}.ba3_wrap__yflEo{position:relative;width:100px;height:100px;display:flex;align-items:center;justify-content:center}.ba3_img__6Wfz3{object-fit:contain;pointer-events:none}.ba3_eyes__yVmDe{position:absolute;top:44px;left:50%;transform:translateX(-50%);display:flex;gap:0;z-index:10}.ba3_eye__MhGs3{width:25px;height:25px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 4px rgba(0,0,0,.3);border:1px solid rgba(0,0,0,.1)}.ba3_pupil__BKkxD{width:11px;height:11px;background:#000;border-radius:50%;animation:ba3_moveEyes__enXuG 4s ease-in-out infinite}@keyframes ba3_moveEyes__enXuG{0%,to{transform:translate(0)}25%{transform:translate(4px)}50%{transform:translate(0)}75%{transform:translate(-4px)}}