@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes goldGlow{0%,to{box-shadow:0 0 10px #d4af3733}50%{box-shadow:0 0 25px #d4af3766,0 0 50px #d4af3733}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(.95)}}.animate-fade-in{animation:fadeIn .4s ease}.animate-fade-in-up{animation:fadeInUp .5s cubic-bezier(.4,0,.2,1)}.animate-slide-up{animation:slideUp .4s cubic-bezier(.4,0,.2,1)}.animate-scale-in{animation:scaleIn .3s cubic-bezier(.4,0,.2,1)}.stagger-1{animation-delay:.05s}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.hover-lift{transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s ease}.hover-lift:hover{transform:translateY(-4px)}.hover-lift:active{transform:translateY(-2px)}.hover-scale{transition:transform .2s cubic-bezier(.4,0,.2,1)}.hover-scale:hover{transform:scale(1.02)}.hover-scale:active{transform:scale(.98)}.hover-glow{transition:box-shadow .3s ease}.hover-glow:hover{box-shadow:0 0 20px #d4af374d}.skeleton{background:linear-gradient(90deg,var(--dark-surface) 0%,var(--dark-elevated) 50%,var(--dark-surface) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}.glass{background:#111c;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.05)}.gold-line{height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.transition-all{transition:all .3s cubic-bezier(.4,0,.2,1)}.transition-colors{transition:color .2s ease,background-color .2s ease,border-color .2s ease}.transition-transform{transition:transform .3s cubic-bezier(.4,0,.2,1)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}:root{--black: #000000;--dark-bg: #0a0a0a;--dark-surface: #111111;--dark-elevated: #1a1a1a;--dark-border: #222222;--gold: #d4af37;--gold-dark: #b8930f;--gold-muted: rgba(212, 175, 55, .6);--gold-light: rgba(212, 175, 55, .1);--white: #ffffff;--off-white: #fafafa;--gray-100: #e5e5e5;--gray-200: #cccccc;--gray-300: #999999;--gray-400: #666666;--gray-500: #4a4a4a;--success: #25d366;--success-bg: rgba(37, 211, 102, .1);--danger: #ef4444;--danger-bg: rgba(239, 68, 68, .1);--warning: #f59e0b;--warning-bg: rgba(245, 158, 11, .1);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .8);--shadow-md: 0 4px 12px rgba(0, 0, 0, .9);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .95);--shadow-gold: 0 0 20px rgba(212, 175, 55, .15);--transition-fast: .15s ease;--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 50%}html{scroll-behavior:smooth;height:-webkit-fill-available}body{font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;color:var(--white);background:var(--black);min-height:100vh;min-height:-webkit-fill-available;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;min-height:-webkit-fill-available}input,select,textarea{font-size:16px!important}::selection{background-color:var(--gold);color:var(--black)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--black)}::-webkit-scrollbar-thumb{background:var(--dark-elevated);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--gray-500)}.app-loading{min-height:100vh;min-height:-webkit-fill-available;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--black);gap:24px}.loading-logo{font-size:3rem;animation:pulse 2s ease-in-out infinite}.loading-logo-img{height:80px;width:auto;object-fit:contain;animation:pulse 2s ease-in-out infinite}.loading-text{color:var(--gray-300);font-size:.875rem;letter-spacing:.1em;text-transform:uppercase}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}h1,h2,h3,h4{font-weight:600;letter-spacing:-.02em;color:var(--white)}h1{font-size:clamp(1.5rem,4vw,2rem)}h2{font-size:clamp(1.25rem,3vw,1.5rem)}h3{font-size:1.125rem}button{font-family:inherit;cursor:pointer;border:none;background:none}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}a{color:inherit;text-decoration:none}.login-page{min-height:100vh;min-height:-webkit-fill-available;display:flex;align-items:center;justify-content:center;background:var(--black);padding:24px;position:relative;overflow:hidden}.login-bg{position:absolute;inset:0;pointer-events:none}.login-gradient{position:absolute;inset:0;background:radial-gradient(ellipse at 30% 20%,rgba(212,175,55,.08) 0%,transparent 50%);animation:gradientMove 10s ease-in-out infinite alternate}@keyframes gradientMove{0%{transform:translate(0) scale(1);opacity:.5}to{transform:translate(30px,-30px) scale(1.2);opacity:.8}}.login-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(212,175,55,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(212,175,55,.03) 1px,transparent 1px);background-size:60px 60px;opacity:.5}.login-card{width:100%;max-width:400px;background:var(--dark-surface);border:1px solid var(--dark-border);border-radius:var(--radius-md);padding:40px 32px;position:relative;z-index:1;animation:fadeInUp .6s cubic-bezier(.4,0,.2,1)}.login-card:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:60%;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.login-header{text-align:center;margin-bottom:32px}.login-logo{width:72px;height:72px;margin:0 auto 20px;background:var(--dark-elevated);border:1px solid var(--dark-border);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:2rem;animation:float 3s ease-in-out infinite}.login-logo-img{height:80px;width:auto;object-fit:contain;margin:0 auto 20px;display:block;animation:float 3s ease-in-out infinite}.login-header h1{font-size:1.5rem;font-weight:300;letter-spacing:.05em;margin-bottom:8px}.login-header p{color:var(--gray-300);font-size:.875rem;font-weight:300}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:.75rem;font-weight:500;color:var(--gray-300);text-transform:uppercase;letter-spacing:.1em}.form-group input{padding:16px;background:var(--dark-elevated);border:1px solid var(--dark-border);border-radius:var(--radius-sm);color:var(--white);font-size:1rem;transition:all .3s ease}.form-group input::placeholder{color:var(--gray-400)}.form-group input:focus{outline:none;border-color:var(--gold);background:var(--dark-surface);box-shadow:0 0 0 3px #d4af371a}.form-group input:disabled{opacity:.5;cursor:not-allowed}.login-btn{padding:16px 24px;background:var(--white);color:var(--black);border:none;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;margin-top:8px}.login-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--gold);transition:left .4s ease;z-index:0}.login-btn span{position:relative;z-index:1}.login-btn:hover:before{left:0}.login-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #d4af374d}.login-btn:active{transform:translateY(0)}.login-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-btn:disabled:before{display:none}.login-error{padding:14px 16px;background:var(--danger-bg);border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-sm);color:var(--danger);font-size:.875rem;text-align:center;animation:fadeIn .3s ease}.product-detail{min-height:100%;background:var(--black);animation:slideIn .3s cubic-bezier(.4,0,.2,1)}.detail-header{display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--dark-bg);border-bottom:1px solid var(--dark-border);position:sticky;top:0;z-index:50}.back-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--dark-elevated);border:1px solid var(--dark-border);border-radius:var(--radius-sm);color:var(--white);font-size:1.25rem;transition:all .2s ease}.back-btn:active{transform:scale(.95);background:var(--dark-surface)}.detail-title{flex:1;font-size:1rem;font-weight:500;color:var(--white)}.delete-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--danger-bg);border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-sm);color:var(--danger);font-size:1rem;transition:all .2s ease}.delete-btn:active{transform:scale(.95)}.detail-error{padding:14px 20px;background:var(--danger-bg);border-bottom:1px solid rgba(239,68,68,.2);color:var(--danger);font-size:.875rem;animation:fadeIn .3s ease}.image-section{padding:32px 20px;display:flex;flex-direction:column;align-items:center;gap:20px;background:var(--dark-bg);border-bottom:1px solid var(--dark-border)}.image-preview{width:200px;height:200px;border-radius:var(--radius-md);background:var(--dark-surface);border:1px solid var(--dark-border);overflow:hidden;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.image-preview:hover{border-color:var(--gold-muted)}.image-preview img{width:100%;height:100%;object-fit:cover}.image-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--gray-500)}.image-placeholder-icon{font-size:3rem}.image-placeholder-text{font-size:.8rem}.upload-btn{padding:12px 24px;background:var(--dark-elevated);border:1px solid var(--dark-border);border-radius:var(--radius-sm);color:var(--white);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.upload-btn:active{transform:scale(.98);background:var(--dark-surface)}.upload-btn input{display:none}.upload-hint{font-size:.75rem;color:var(--gray-500)}.form-section{padding:0}.section-header{padding:12px 20px;background:var(--dark-bg);border-bottom:1px solid var(--dark-border);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--gold)}.form-row{padding:16px 20px;border-bottom:1px solid var(--dark-border)}.form-label{display:block;font-size:.75rem;font-weight:500;color:var(--gray-400);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.form-input,.form-select,.form-textarea{width:100%;padding:12px 0;background:transparent;border:none;border-bottom:1px solid var(--dark-border);color:var(--white);font-size:1rem;transition:border-color .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-bottom-color:var(--gold)}.form-input::placeholder,.form-textarea::placeholder{color:var(--gray-500)}.form-textarea{min-height:80px;resize:none;font-family:inherit;line-height:1.5}.form-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0 center;padding-right:24px;cursor:pointer}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid var(--dark-border);cursor:pointer;transition:background .2s ease;-webkit-tap-highlight-color:transparent}.toggle-row:active{background:var(--dark-surface)}.toggle-info h4{font-size:.95rem;font-weight:500;color:var(--white);margin-bottom:4px}.toggle-info p{font-size:.8rem;color:var(--gray-400)}.toggle-switch{width:52px;height:32px;background:var(--dark-border);border-radius:16px;position:relative;transition:background .3s ease;flex-shrink:0}.toggle-switch:after{content:"";position:absolute;width:26px;height:26px;background:var(--white);border-radius:50%;top:3px;left:3px;transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.toggle-switch.active{background:var(--gold)}.toggle-switch.active:after{transform:translate(20px)}.save-section{padding:24px 20px;padding-bottom:max(24px,calc(env(safe-area-inset-bottom) + 100px))}.save-btn{width:100%;padding:16px 24px;background:var(--white);color:var(--black);border:none;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.save-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--gold);transition:left .4s ease;z-index:0}.save-btn span{position:relative;z-index:1}.save-btn:hover:before{left:0}.save-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #d4af374d}.save-btn:active{transform:translateY(0)}.save-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.save-btn:disabled:before{display:none}@media(min-width:768px){.product-detail{max-width:600px;margin:24px auto;border:1px solid var(--dark-border);border-radius:var(--radius-md);overflow:hidden}.save-section{padding-bottom:24px}}.products-page{padding:0}.search-section{padding:20px;background:var(--dark-bg);border-bottom:1px solid var(--dark-border);position:sticky;top:0;z-index:50}.search-wrapper{position:relative;max-width:600px;margin:0 auto}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--gray-400);font-size:1rem;pointer-events:none}.search-input{width:100%;padding:14px 16px 14px 48px;background:var(--dark-elevated);border:1px solid var(--dark-border);border-radius:var(--radius-sm);color:var(--white);font-size:.95rem;transition:all .3s ease}.search-input::placeholder{color:var(--gray-400)}.search-input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px #d4af371a}.stats-section{display:flex;gap:8px;padding:12px 20px;overflow-x:auto;-webkit-overflow-scrolling:touch;background:var(--black);border-bottom:1px solid var(--dark-border)}.stat-card{display:flex;align-items:center;gap:6px;padding:8px 12px;background:var(--dark-surface);border:1px solid var(--dark-border);border-radius:var(--radius-sm);white-space:nowrap;flex-shrink:0;transition:all .3s ease;cursor:pointer}.stat-card:hover{border-color:var(--gold-muted)}.stat-card.active{border-color:var(--gold);background:var(--gold-light)}.stat-number{font-size:1rem;font-weight:600;color:var(--gold)}.stat-label{font-size:.7rem;color:var(--gray-300);text-transform:uppercase;letter-spacing:.05em}.stat-card.active .stat-label{color:var(--gold)}.category-section{border-bottom:1px solid var(--dark-border);animation:fadeInUp .5s cubic-bezier(.4,0,.2,1) backwards}.category-section:nth-child(1){animation-delay:0s}.category-section:nth-child(2){animation-delay:.05s}.category-section:nth-child(3){animation-delay:.1s}.category-section:nth-child(4){animation-delay:.15s}.category-section:nth-child(5){animation-delay:.2s}.category-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--dark-bg);cursor:pointer;transition:background .2s ease;-webkit-tap-highlight-color:transparent}.category-header:active{background:var(--dark-surface)}.category-info{display:flex;align-items:center;gap:12px}.category-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--dark-elevated);border:1px solid var(--dark-border);border-radius:var(--radius-sm);font-size:1.25rem}.category-name{font-size:1rem;font-weight:500;color:var(--white)}.category-count{font-size:.8rem;color:var(--gray-400);margin-left:4px}.category-toggle{color:var(--gray-400);font-size:.75rem;transition:transform .3s cubic-bezier(.4,0,.2,1)}.category-toggle.collapsed{transform:rotate(-90deg)}.product-list{background:var(--black)}.product-item{display:flex;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid var(--dark-border);cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent;animation:fadeIn .3s ease backwards}.product-item:nth-child(1){animation-delay:0s}.product-item:nth-child(2){animation-delay:.03s}.product-item:nth-child(3){animation-delay:.06s}.product-item:nth-child(4){animation-delay:.09s}.product-item:nth-child(5){animation-delay:.12s}.product-item:active{background:var(--dark-surface)}.product-item:last-child{border-bottom:none}.product-item.unavailable{opacity:.5}.product-image{width:64px;height:64px;border-radius:var(--radius-sm);background:var(--dark-surface);border:1px solid var(--dark-border);overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.product-item:hover .product-image{transform:scale(1.05)}.product-image img{width:100%;height:100%;object-fit:cover}.product-placeholder{font-size:1.5rem;color:var(--gray-500)}.product-info{flex:1;min-width:0}.product-name{font-size:.95rem;font-weight:500;color:var(--white);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-desc{font-size:.8rem;color:var(--gray-400);margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-meta{display:flex;align-items:center;gap:8px}.product-price{font-size:1rem;font-weight:600;color:var(--gold)}.product-badge{font-size:.65rem;padding:3px 8px;border-radius:2px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.product-badge.featured{background:var(--gold);color:var(--black)}.product-badge.hidden{background:var(--danger-bg);color:var(--danger);border:1px solid rgba(239,68,68,.2)}.product-arrow{color:var(--gray-500);font-size:1.25rem;transition:transform .2s ease}.product-item:hover .product-arrow{transform:translate(4px);color:var(--gold)}.fab{position:fixed;bottom:100px;right:20px;width:56px;height:56px;background:var(--white);color:var(--black);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:1.75rem;font-weight:300;box-shadow:var(--shadow-lg),0 0 20px #d4af3733;z-index:90;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-tap-highlight-color:transparent}.fab:hover{transform:scale(1.1);box-shadow:var(--shadow-lg),0 0 30px #d4af3766}.fab:active{transform:scale(.95)}.empty-text{color:var(--gray-300);font-size:1rem;margin-bottom:24px}.empty-btn{padding:14px 28px;background:var(--white);color:var(--black);border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;letter-spacing:.03em;transition:all .3s ease}.empty-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #fff3}@media(min-width:1024px){.products-page{max-width:900px;margin:0 auto;padding:24px}.search-section{background:transparent;border:none;padding:0 0 24px;position:relative}.stats-section{background:transparent;border:none;padding:0 0 24px}.category-section{border:1px solid var(--dark-border);border-radius:var(--radius-md);margin-bottom:16px;overflow:hidden}.fab{bottom:40px;right:40px}}.categories-page{padding:0}.add-section{padding:20px;background:var(--dark-bg);border-bottom:1px solid var(--dark-border)}.add-form{display:flex;gap:12px;max-width:500px;margin:0 auto}.add-input{flex:1;padding:14px 16px;background:var(--dark-elevated);border:1px solid var(--dark-border);border-radius:var(--radius-sm);color:var(--white);font-size:.95rem;transition:all .3s ease}.add-input::placeholder{color:var(--gray-500)}.add-input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px #d4af371a}.add-btn{padding:14px 24px;background:var(--white);color:var(--black);border:none;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;letter-spacing:.03em;cursor:pointer;transition:all .3s ease;white-space:nowrap}.add-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #fff3}.add-btn:active{transform:translateY(0)}.add-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.message{padding:14px 20px;font-size:.875rem;font-weight:500;animation:fadeIn .3s ease}.message.error{background:var(--danger-bg);border-bottom:1px solid rgba(239,68,68,.2);color:var(--danger)}.message.success{background:var(--success-bg);border-bottom:1px solid rgba(37,211,102,.2);color:var(--success)}.categories-list{padding:0}.category-item{display:flex;align-items:center;gap:16px;padding:20px;border-bottom:1px solid var(--dark-border);animation:fadeInUp .4s cubic-bezier(.4,0,.2,1) backwards}.category-item:nth-child(1){animation-delay:0s}.category-item:nth-child(2){animation-delay:.05s}.category-item:nth-child(3){animation-delay:.1s}.category-item:nth-child(4){animation-delay:.15s}.category-item:nth-child(5){animation-delay:.2s}.category-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--dark-surface);border:1px solid var(--dark-border);border-radius:var(--radius-sm);font-size:1.5rem;flex-shrink:0;transition:all .3s ease}.category-item:hover .category-icon{border-color:var(--gold-muted);transform:scale(1.05)}.category-info{flex:1;min-width:0}.category-name{font-size:1rem;font-weight:500;color:var(--white);margin-bottom:4px}.category-meta{font-size:.8rem;color:var(--gray-400)}.category-actions{display:flex;gap:8px}.cat-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--dark-elevated);border:1px solid var(--dark-border);border-radius:var(--radius-sm);color:var(--gray-400);font-size:1rem;transition:all .2s ease}.cat-btn:active{transform:scale(.95)}.cat-btn:hover{border-color:var(--gold-muted);color:var(--gold)}.cat-btn.danger:hover{border-color:#ef44444d;color:var(--danger);background:var(--danger-bg)}.category-edit{flex:1;display:flex;gap:12px;animation:fadeIn .2s ease}.edit-input{flex:1;padding:10px 14px;background:var(--dark-elevated);border:1px solid var(--gold);border-radius:var(--radius-sm);color:var(--white);font-size:.95rem}.edit-input:focus{outline:none;box-shadow:0 0 0 3px #d4af371a}.edit-actions{display:flex;gap:8px}.edit-btn{padding:10px 16px;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;transition:all .2s ease}.edit-btn.save{background:var(--gold);color:var(--black)}.edit-btn.save:active{opacity:.8}.edit-btn.cancel{background:var(--dark-elevated);border:1px solid var(--dark-border);color:var(--gray-300)}.edit-btn.cancel:active{background:var(--dark-surface)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;text-align:center;animation:fadeInUp .5s ease}.empty-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.empty-text{color:var(--gray-300);font-size:1rem}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;gap:16px}.loading-spinner{width:40px;height:40px;border:2px solid var(--dark-border);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite}.loading-text{color:var(--gray-400);font-size:.875rem}@media(min-width:768px){.categories-page{max-width:600px;margin:24px auto;padding:0 24px}.add-section{background:transparent;border:none;padding:0 0 24px}.categories-list{border:1px solid var(--dark-border);border-radius:var(--radius-md);overflow:hidden}.category-item:last-child{border-bottom:none}}.app-layout{min-height:100vh;min-height:-webkit-fill-available;display:flex;flex-direction:column;background:var(--black)}.app-header{position:sticky;top:0;z-index:100;background:#000000f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--dark-border);padding:16px 20px;padding-top:max(16px,env(safe-area-inset-top));display:flex;align-items:center;justify-content:space-between;animation:fadeInDown .4s ease}.header-brand{display:flex;align-items:center;gap:12px}.header-logo{width:40px;height:40px;background:var(--dark-elevated);border:1px solid var(--dark-border);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:1.25rem}.header-logo-img{height:44px;width:auto;object-fit:contain}.header-title{font-size:1.125rem;font-weight:300;letter-spacing:.03em;color:var(--white)}.header-actions{display:flex;gap:8px}.header-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--dark-elevated);border:1px solid var(--dark-border);border-radius:var(--radius-sm);color:var(--gray-300);font-size:1.125rem;transition:all .2s ease}.header-btn:active{transform:scale(.95);background:var(--dark-surface)}.app-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:80px}.tab-bar{position:fixed;bottom:0;left:0;right:0;background:#0a0a0afa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--dark-border);display:flex;padding-bottom:env(safe-area-inset-bottom);z-index:100}.tab-bar:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(212,175,55,.3),transparent)}.tab-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 8px;gap:4px;color:var(--gray-400);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.tab-item:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%) scaleX(0);width:40px;height:2px;background:var(--gold);transition:transform .3s cubic-bezier(.4,0,.2,1)}.tab-item.active{color:var(--gold)}.tab-item.active:before{transform:translate(-50%) scaleX(1)}.tab-icon{font-size:1.5rem;line-height:1;transition:transform .3s cubic-bezier(.4,0,.2,1)}.tab-item.active .tab-icon{transform:scale(1.1)}.tab-item:active .tab-icon{transform:scale(.9)}.tab-label{font-size:.65rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.modal-overlay{position:fixed;inset:0;background:#000c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:200;padding:24px;opacity:0;visibility:hidden;transition:all .3s ease}.modal-overlay.active{opacity:1;visibility:visible}.modal-card{background:var(--dark-surface);border:1px solid var(--dark-border);border-radius:var(--radius-md);padding:32px;width:100%;max-width:320px;text-align:center;transform:scale(.9) translateY(20px);transition:transform .3s cubic-bezier(.4,0,.2,1)}.modal-overlay.active .modal-card{transform:scale(1) translateY(0)}.modal-icon{font-size:3rem;margin-bottom:16px}.modal-card h3{font-size:1.25rem;font-weight:400;margin-bottom:8px}.modal-card p{color:var(--gray-300);font-size:.875rem;margin-bottom:24px;word-break:break-all}.modal-actions{display:flex;gap:12px}.modal-btn{flex:1;padding:14px 20px;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;transition:all .2s ease}.modal-btn.cancel{background:var(--dark-elevated);border:1px solid var(--dark-border);color:var(--white)}.modal-btn.cancel:active{background:var(--dark-border)}.modal-btn.danger{background:var(--danger);color:var(--white)}.modal-btn.danger:active{opacity:.8}@media(min-width:1024px){.app-layout{flex-direction:row}.app-header{display:none}.tab-bar{position:relative;flex-direction:column;width:100px;border-top:none;border-right:1px solid var(--dark-border);padding:24px 0;background:var(--dark-bg)}.tab-bar:before{display:none}.tab-item{padding:20px 12px}.tab-item:before{top:50%;left:0;transform:translateY(-50%) scaleY(0);width:3px;height:30px}.tab-item.active:before{transform:translateY(-50%) scaleY(1)}.app-content{flex:1;padding-bottom:0}}
