.loader-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;width:100%;position:fixed;top:0;left:0;z-index:9999;background-color:var(--bg-primary, #ffffff);transition:background-color .3s ease}.loader-container.dark{background-color:#0f172a;color:#f1f5f9}.loader-container.light{background-color:#fff;color:#1e293b}.loader-content{display:flex;flex-direction:column;align-items:center;gap:2rem;animation:fadeIn .5s ease-out}.loader-logo-wrapper{position:relative;width:280px;height:280px;display:flex;justify-content:center;align-items:center}.loader-logo{width:180px;height:180px;-o-object-fit:contain;object-fit:contain;z-index:2}.loader-ring{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;border:6px solid transparent;border-top-color:var(--primary-color);animation:spin 1.5s cubic-bezier(.4,0,.2,1) infinite;z-index:1}.loader-text-wrapper{text-align:center;display:flex;flex-direction:column;gap:.75rem}.loader-welcome{font-size:3rem;font-weight:800;color:var(--text-primary);letter-spacing:-.025em}.loader-container.dark .loader-welcome{color:#f1f5f9}.loader-status{font-size:1.5rem;color:var(--text-secondary);animation:pulse 2s ease-in-out infinite}.loader-container.dark .loader-status{color:#94a3b8}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.table-loader-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem;width:100%}.table-loader-spinner{width:40px;height:40px;border:4px solid rgba(0,0,0,.1);border-left-color:var(--primary-color, #3b82f6);border-radius:50%;animation:spin 1s linear infinite}.dark-mode .table-loader-spinner{border-color:#ffffff1a;border-left-color:#60a5fa}.table-loader-text{color:var(--text-secondary, #64748b);font-size:1rem;font-weight:500}.dark-mode .table-loader-text{color:#f1f5f9}.language-selector{position:relative;display:flex;align-items:center}.language-selector-button{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:transparent;border:1px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;transition:all .2s ease;font-size:.875rem;font-weight:500}.language-selector-button:hover{background:#f9fafb;border-color:#2563eb;color:#2563eb}.language-flag{font-size:1.25rem;line-height:1}.language-code{font-weight:600;letter-spacing:.5px}.language-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #0000001a;min-width:180px;z-index:1000;overflow:hidden;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.language-option{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:#fff;border:none;text-align:left;cursor:pointer;transition:background .2s ease;font-size:.875rem}.language-option:hover{background:#f7fafc}.language-option.active{background:#edf2f7}.language-option .language-flag{font-size:1.5rem}.language-option .language-name{flex:1;color:#2d3748;font-weight:500}.language-check{color:#48bb78;font-weight:700;font-size:1rem}@media (max-width: 768px){.language-selector-button{padding:.625rem .875rem;min-width:80px;justify-content:center}.language-selector-button svg{width:22px;height:22px}.language-flag{font-size:1.375rem}.language-code{display:inline;font-size:.8125rem}.language-dropdown{right:0;min-width:200px}.language-option{padding:1rem 1.25rem;font-size:.9375rem}.language-option .language-flag{font-size:1.75rem}}.dark-mode .language-selector-button{border-color:#334155;color:#f1f5f9}.dark-mode .language-selector-button:hover{background:#1e293b;border-color:#475569;color:#60a5fa}.dark-mode .language-dropdown{background:#1e293b;border-color:#334155;box-shadow:0 4px 12px #0006}.dark-mode .language-option{background:#1e293b;color:#f1f5f9}.dark-mode .language-option .language-name{color:#e2e8f0}.dark-mode .language-option:hover{background:#0f172a}.dark-mode .language-option.active{background:#334155}.dark-mode .language-check{color:#4ade80}.navbar{background:linear-gradient(135deg,#fff,#f8fafc);border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:1000;box-shadow:0 2px 10px #00000014;transition:background .3s ease,border-color .3s ease}.dark-mode .navbar{background:linear-gradient(135deg,#1e293b,#0f172a);border-bottom:1px solid #334155;box-shadow:0 2px 10px #00000080}.navbar-container{max-width:1200px;margin:0 auto;padding:0 1rem;display:flex;align-items:center;justify-content:space-between;height:70px}.navbar-logo{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:#2563eb;font-weight:700;font-size:1.5rem;transition:color .2s ease}.navbar-logo-img{height:50px;width:auto;-o-object-fit:contain;object-fit:contain}.navbar-logo:hover{color:#1d4ed8}.navbar-search{flex:1;max-width:500px;margin:0 2rem;position:relative}.search-container{position:relative;width:100%}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#64748b;pointer-events:none}.search-input{width:100%;padding:.75rem 3rem .75rem 3.5rem!important;border:2px solid #e2e8f0;border-radius:2rem;font-size:1rem;background:#f8fafc;transition:all .2s ease}.search-input:focus{outline:none;border-color:#2563eb;background:#fff;box-shadow:0 0 0 3px #2563eb1a}.clear-search-btn{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#94a3b8;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:all .2s ease}.clear-search-btn:hover{color:#64748b;background:#f1f5f9}.search-suggestions{position:absolute;top:calc(100% + .5rem);left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 10px 25px #00000026;max-height:500px;overflow-y:auto;z-index:1100;animation:slideDown .2s ease}.suggestions-loading,.suggestions-empty{padding:2rem;text-align:center;color:#64748b;font-size:.9375rem}.suggestion-item{display:flex;align-items:center;gap:1rem;padding:.875rem 1rem;cursor:pointer;transition:all .2s ease;border-bottom:1px solid #f1f5f9}.suggestion-item:last-of-type{border-bottom:none}.suggestion-image{width:50px;height:70px;-o-object-fit:cover;object-fit:cover;border-radius:.375rem;flex-shrink:0;box-shadow:0 2px 8px #0000001a}.suggestion-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.suggestion-title{font-weight:600;color:#1e293b;font-size:.9375rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-author{font-size:.8125rem;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-price{font-weight:700;color:#2563eb;font-size:1rem;flex-shrink:0}.suggestion-footer{padding:.75rem;border-top:1px solid #e2e8f0;background:#f8fafc}.view-all-btn{width:100%;padding:.625rem 1rem;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;border-radius:.5rem;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .2s ease}.view-all-btn:hover{box-shadow:0 4px 12px #2563eb4d;transform:translateY(-1px)}.navbar-links{display:flex;align-items:center;gap:1.5rem}.nav-link{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:#374151;font-weight:500;transition:color .2s ease;position:relative}.nav-link:hover{color:#2563eb}.cart-link,.wishlist-link{position:relative}.cart-badge,.wishlist-badge{position:absolute;top:-8px;right:-8px;background:#ef4444;color:#fff;font-size:.75rem;font-weight:600;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;min-width:20px}.nav-dropdown-container{position:relative}.nav-dropdown-btn{display:flex;align-items:center;gap:.5rem;background:none;border:none;cursor:pointer;padding:0;font-family:inherit;font-size:1rem;color:#374151;font-weight:500;transition:color .2s ease}.nav-dropdown-btn:hover,.nav-dropdown-btn.active{color:#2563eb}.nav-dropdown-menu{position:absolute;top:calc(100% + 1rem);left:50%;transform:translate(-50%) translateY(10px);background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 10px 25px #0000001a;min-width:220px;overflow:hidden;z-index:1000;opacity:0;visibility:hidden;transition:all .2s cubic-bezier(.16,1,.3,1)}.nav-dropdown-container:hover .nav-dropdown-menu,.nav-dropdown-container.open .nav-dropdown-menu{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.nav-dropdown-container:after{content:"";position:absolute;top:100%;left:0;width:100%;height:1rem}.nav-dropdown-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.875rem 1.25rem;background:#fff;border:none;text-align:left;text-decoration:none;color:#374151;font-weight:500;font-size:.9375rem;cursor:pointer;transition:all .2s ease}.nav-dropdown-item:hover{background:#f8fafc;color:#2563eb;padding-left:1.5rem}.nav-dropdown-icon{color:#94a3b8;transition:color .2s ease}.nav-dropdown-item:hover .nav-dropdown-icon{color:#2563eb}.dark-mode .nav-dropdown-btn{color:#e2e8f0}.dark-mode .nav-dropdown-btn:hover,.dark-mode .nav-dropdown-btn.active{color:#60a5fa}.dark-mode .nav-dropdown-menu{background:#1e293b;border-color:#334155;box-shadow:0 10px 25px #00000080}.dark-mode .nav-dropdown-item{background:#1e293b;color:#e2e8f0}.dark-mode .nav-dropdown-item:hover{background:#334155;color:#60a5fa}.dark-mode .nav-dropdown-icon{color:#64748b}.dark-mode .nav-dropdown-item:hover .nav-dropdown-icon{color:#60a5fa}.user-menu{display:flex;align-items:center;gap:1rem}.user-greeting{color:#374151;font-weight:500}.admin-link{background:linear-gradient(135deg,#059669,#047857);color:#fff;padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:600;transition:all .2s ease}.admin-link:hover{color:#fff;box-shadow:0 4px 12px #0596694d;transform:translateY(-1px)}.logout-btn{background:none;border:2px solid #e5e7eb;color:#6b7280;padding:.5rem 1rem;border-radius:.5rem;cursor:pointer;font-weight:500;transition:all .2s ease}.logout-btn:hover{border-color:#ef4444;color:#ef4444;background:#ef44440d}.login-link{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;transition:all .2s ease}.login-link:hover{color:#fff;box-shadow:0 4px 12px #2563eb4d;transform:translateY(-1px)}.account-dropdown{position:relative}.account-btn{display:flex;align-items:center;gap:.5rem;background:transparent;border:1px solid #e5e7eb;padding:.625rem 1rem;border-radius:.5rem;cursor:pointer;color:#374151;font-weight:500;transition:all .2s ease}.account-btn:hover{background:#f9fafb;border-color:#2563eb;color:#2563eb}.account-btn .chevron{transition:transform .2s ease}.account-btn .chevron.open{transform:rotate(180deg)}.account-menu{position:absolute;top:calc(100% + .5rem);right:0;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 10px 25px #0000001a;min-width:200px;overflow:hidden;z-index:1000;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.account-menu-header{padding:1rem 1.25rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.account-user-info{display:flex;align-items:center;gap:.75rem}.user-avatar-icon{flex-shrink:0;width:40px;height:40px;padding:.5rem;background:#2563eb;color:#fff;border-radius:50%}.user-details{display:flex;flex-direction:column;gap:.25rem;min-width:0}.user-email{font-size:.875rem;font-weight:600;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{font-size:.75rem;font-weight:500;color:#64748b;text-transform:capitalize;padding:.125rem .5rem;background:#e0e7ff;color:#4338ca;border-radius:.25rem;display:inline-block;width:-moz-fit-content;width:fit-content}.account-menu-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.875rem 1.25rem;background:#fff;border:none;text-align:left;text-decoration:none;color:#374151;font-weight:500;font-size:.9375rem;cursor:pointer;transition:all .2s ease}.account-menu-item:hover{background:#f7fafc;color:#2563eb}.account-menu-item.logout{color:#ef4444}.account-menu-item.logout:hover{background:#fef2f2;color:#dc2626}.account-menu-divider{height:1px;background:#e5e7eb;margin:.25rem 0}.theme-selector{padding:.75rem 1.25rem;background:#f9fafb}.theme-label{display:block;font-size:.8125rem;font-weight:600;color:#6b7280;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.025em}.theme-buttons{display:flex;gap:.5rem;justify-content:center}.theme-btn{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:#fff;border:2px solid #e5e7eb;border-radius:.5rem;cursor:pointer;transition:all .2s ease;color:#6b7280}.theme-btn:hover{border-color:#2563eb;color:#2563eb;background:#f0f7ff}.theme-btn.active{background:#2563eb;border-color:#2563eb;color:#fff}.mobile-theme-selector{padding:1rem;background:#f9fafb;border-radius:.5rem;margin:.5rem 0}.mobile-theme-label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.75rem}.mobile-theme-buttons{display:flex;gap:.5rem}.mobile-theme-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem .5rem;background:#fff;border:2px solid #e5e7eb;border-radius:.5rem;cursor:pointer;transition:all .2s ease;color:#6b7280;font-size:.75rem;font-weight:500}.mobile-theme-btn:hover{border-color:#2563eb;color:#2563eb;background:#f0f7ff}.mobile-theme-btn.active{background:#2563eb;border-color:#2563eb;color:#fff}.dark-mode .navbar-logo,.dark-mode .nav-link,.dark-mode .account-btn,.dark-mode .mobile-menu-btn{color:#e2e8f0}.dark-mode .navbar-logo:hover,.dark-mode .nav-link:hover,.dark-mode .account-btn:hover{color:#60a5fa}.dark-mode .search-input{background:#1e293b;border-color:#334155;color:#e2e8f0!important}.dark-mode .search-input:focus{border-color:#3b82f6;background:#0f172a}.dark-mode .search-icon{color:#94a3b8!important}.dark-mode .clear-search-btn{color:#64748b}.dark-mode .clear-search-btn:hover{color:#94a3b8;background:#334155}.dark-mode .search-suggestions{background:#1e293b;border-color:#334155;box-shadow:0 10px 25px #00000080}.dark-mode .suggestion-item:hover{background:#334155}.dark-mode .suggestion-title{color:#e2e8f0}.dark-mode .suggestion-footer{background:#0f172a;border-top-color:#334155}.dark-mode .suggestions-loading,.dark-mode .suggestions-empty{color:#94a3b8}.dark-mode .account-menu{background:#1e293b;border-color:#334155}.dark-mode .account-menu-header{background:linear-gradient(135deg,#0f172a,#1e293b)}.dark-mode .user-email{color:#e2e8f0}.dark-mode .user-role{background:#1e3a8a;color:#93c5fd}.dark-mode .account-menu-item{background:#1e293b;color:#e2e8f0}.dark-mode .account-menu-item:hover{background:#334155;color:#60a5fa}.dark-mode .account-menu-item.logout{color:#f87171}.dark-mode .account-menu-item.logout:hover{background:#450a0a;color:#fca5a5}.dark-mode .account-menu-divider{background:#334155}.dark-mode .theme-selector{background:#0f172a}.dark-mode .theme-btn{background:#1e293b;border-color:#334155;color:#94a3b8}.dark-mode .theme-btn:hover{border-color:#3b82f6;color:#60a5fa;background:#1e3a8a}.dark-mode .theme-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.dark-mode .mobile-menu{background:#1e293b;border-top-color:#334155}.dark-mode .mobile-link,.dark-mode .mobile-user{color:#e2e8f0}.dark-mode .mobile-link:hover{background:#334155;color:#60a5fa}.dark-mode .mobile-logout{border-color:#334155;color:#94a3b8}.dark-mode .mobile-logout:hover{border-color:#f87171;color:#f87171;background:#f871711a}.dark-mode .mobile-theme-selector{background:#0f172a}.dark-mode .mobile-theme-label{color:#e2e8f0}.dark-mode .mobile-theme-btn{background:#1e293b;border-color:#334155;color:#94a3b8}.dark-mode .mobile-theme-btn:hover{border-color:#3b82f6;color:#60a5fa;background:#1e3a8a}.dark-mode .mobile-theme-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.dark-mode .mobile-menu-btn:hover{background:#334155}.mobile-menu-btn{display:none;background:none;border:none;color:#374151;cursor:pointer;padding:.5rem;border-radius:.5rem;transition:background .2s ease}.mobile-menu-btn:hover{background:#f3f4f6}.mobile-menu{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid #e2e8f0;box-shadow:0 4px 12px #00000026;padding:1rem;flex-direction:column;gap:1rem;max-height:calc(100vh - 70px);overflow-y:auto}.mobile-link{text-decoration:none;color:#374151;font-weight:500;padding:.75rem 1rem;border-radius:.5rem;transition:background .2s ease}.mobile-link:hover{background:#f3f4f6;color:#2563eb}.mobile-user{color:#374151;font-weight:500;padding:.75rem 1rem}.mobile-logout{background:none;border:2px solid #e5e7eb;color:#6b7280;padding:.75rem 1rem;border-radius:.5rem;cursor:pointer;font-weight:500;transition:all .2s ease;text-align:left}.mobile-logout:hover{border-color:#ef4444;color:#ef4444;background:#ef44440d}.mobile-language-selector{padding:.5rem 1rem;display:flex;justify-content:center}.mobile-language-selector .language-selector-button{border-color:#e5e7eb;color:#374151}.mobile-language-selector .language-selector-button:hover{background:#f3f4f6;border-color:#d1d5db}.desktop-only{display:flex}@media (max-width: 768px){.navbar-search{margin:0 1rem;max-width:none;flex:1}.desktop-only{display:none}.mobile-menu-btn{display:block}.mobile-menu{display:flex}.search-input{font-size:.875rem;padding:.625rem 2.5rem .625rem 1rem!important;border:1px solid #cbd5e1}.search-icon{display:none!important}.clear-search-btn{right:.75rem}.search-suggestions{max-height:400px}.suggestion-image{width:40px;height:56px}.suggestion-item{padding:.75rem;gap:.75rem}.suggestion-title{font-size:.875rem}.suggestion-author{font-size:.75rem}.suggestion-price{font-size:.9375rem}}@media (max-width: 480px){.navbar-container{padding:0 .75rem}.navbar-logo span{display:none}.navbar-search{margin:0 .75rem}}.suggestion-metadata{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.suggestion-publisher,.suggestion-category,.suggestion-code{font-size:.7rem;padding:2px 8px;border-radius:12px;width:-moz-fit-content;width:fit-content;font-weight:600;display:inline-block;border:1px solid #e5e7eb;text-transform:uppercase;letter-spacing:.02em}.suggestion-category{background-color:#f3f4f6;color:#4b5563}.suggestion-code{background-color:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.dark-mode .suggestion-category{background-color:#1e293b;color:#94a3b8;border-color:#334155}.dark-mode .suggestion-code{background-color:#1e3a8a;color:#93c5fd;border-color:#1e40af}.account-btn-icon{position:relative;display:inline-flex;align-items:center;justify-content:center}.notification-dot{position:absolute;top:-2px;right:-2px;width:8px;height:8px;background:#ef4444;border-radius:50%;border:2px solid white;animation:pulse-notification 2s infinite}.dark-mode .notification-dot{border-color:#1e293b}@keyframes pulse-notification{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.notification-count{margin-left:auto;background:#ef4444;color:#fff;font-size:.75rem;font-weight:600;padding:.125rem .5rem;border-radius:12px;min-width:20px;text-align:center}.footer{background:linear-gradient(135deg,#1e293b,#0f172a);color:#e2e8f0;margin-top:auto;transition:background .3s ease}.dark-mode .footer{background:linear-gradient(135deg,#0f172a,#020617)}.footer-container{max-width:1200px;margin:0 auto;padding:3rem 1rem 1rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:2rem}.footer-section{display:flex;flex-direction:column;gap:1rem}.footer-logo{display:flex;align-items:center;gap:.75rem;color:#60a5fa;font-weight:700;font-size:1.5rem;margin-bottom:.5rem}.footer-logo-img{height:45px;width:auto;-o-object-fit:contain;object-fit:contain}.footer-description{color:#cbd5e1;line-height:1.6;margin-bottom:1rem}.social-links{display:flex;gap:1rem}.social-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#334155;color:#e2e8f0;border-radius:50%;text-decoration:none;transition:all .3s ease}.social-link:hover{background:#2563eb;transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d}.footer-title{font-size:1.125rem;font-weight:600;color:#f1f5f9;margin-bottom:.5rem}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:.5rem}.footer-links a{color:#cbd5e1;text-decoration:none;transition:color .2s ease;line-height:1.5}.footer-links a:hover{color:#60a5fa}.contact-info{display:flex;flex-direction:column;gap:.75rem}.contact-item{display:flex;align-items:center;gap:.75rem;color:#cbd5e1;line-height:1.5}.contact-item svg{color:#60a5fa;flex-shrink:0}.footer-bottom{border-top:1px solid #334155;padding-top:1.5rem;display:flex;justify-content:space-between;align-items:center;color:#94a3b8;font-size:.875rem}.footer-legal{display:flex;gap:2rem}.footer-legal a{color:#cbd5e1;text-decoration:none;transition:color .2s ease}.footer-legal a:hover{color:#60a5fa}@media (max-width: 768px){.footer-container{padding:2rem 1rem 1rem}.footer-content{grid-template-columns:1fr;gap:1.5rem}.footer-bottom{flex-direction:column;gap:1rem;text-align:center}.footer-legal{gap:1rem}.social-links{justify-content:center}}@media (max-width: 480px){.footer-container{padding:1.5rem .75rem 1rem}.footer-legal{flex-direction:column;gap:.5rem}}.bookcard{background:#fff;border-radius:1rem;overflow:hidden;box-shadow:0 2px 8px #0000001a;transition:all .3s ease;text-decoration:none;color:inherit;display:flex}.bookcard:hover{box-shadow:0 8px 20px #00000026;transform:translateY(-4px)}.bookcard__badge{position:absolute;top:.75rem;left:.75rem;padding:.375rem .75rem;font-size:.75rem;font-weight:700;border-radius:.375rem;z-index:10;text-transform:uppercase;letter-spacing:.5px}.bookcard__badge--new{background:#10b981;color:#fff}.bookcard__badge--sale{background:#ef4444;color:#fff}.bookcard__badge--stock{background:#6b7280;color:#fff}.bookcard__meta-badges{display:flex;flex-wrap:wrap;gap:.5rem}.bookcard__category{background:#dbeafe;color:#1e40af;padding:.375rem .75rem;border-radius:.375rem;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}.bookcard__code{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;padding:.375rem .75rem;border-radius:.375rem;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}.bookcard__stock{color:#059669;font-weight:600;font-size:.875rem}.bookcard__wishlist-btn{position:absolute;border:none;border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:#6b7280;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 2px 8px #00000026;z-index:20}.bookcard__wishlist-btn:hover{background:#fff;transform:scale(1.1);color:#ef4444}.bookcard__wishlist-btn--active{background:#ef4444;color:#fff}.bookcard__wishlist-btn--active:hover{background:#dc2626}.bookcard__rating,.bookcard__stars{display:flex;flex-direction:row;align-items:center}.bookcard__stars{gap:.125rem}.bookcard__star{color:#d1d5db;transition:color .2s ease}.bookcard__star--filled{color:#fbbf24}.bookcard--grid{flex-direction:column;height:100%}.bookcard--grid .bookcard__image-container{position:relative;overflow:hidden;background:#f1f5f9;border-radius:1rem 1rem 0 0;height:280px;width:100%}.bookcard--grid .bookcard__image-background{position:absolute;top:0;left:0;right:0;bottom:0;background-size:cover;background-position:center;filter:blur(20px) brightness(.9);transform:scale(1.2);z-index:1;opacity:.8}.bookcard--grid .bookcard__image{position:relative;z-index:2;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;transition:transform .3s ease;filter:drop-shadow(0 4px 6px rgba(0,0,0,.3))}.bookcard--grid:hover .bookcard__image{transform:scale(1.05)}.bookcard--grid .bookcard__wishlist-btn{top:.75rem;right:.75rem;background:#fffffff2}.bookcard--grid .bookcard__info{padding:1.25rem;display:flex;flex-direction:column;flex:1;background:#fff}.bookcard--grid .bookcard__title{font-size:1rem;font-weight:700;color:#111827;margin:0 0 .25rem;line-height:1.4;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bookcard--grid .bookcard__author{color:#6b7280;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.bookcard--grid .bookcard__rating-text{font-size:.875rem;color:#6b7280;margin-left:.5rem}.bookcard--grid .bookcard__pricing{margin-top:.75rem;display:flex;align-items:baseline;gap:.5rem}.bookcard--grid .bookcard__current-price,.bookcard--grid .bookcard__sale-price{font-size:1.25rem;font-weight:800;color:#2563eb}.bookcard--grid .bookcard__sale-price{color:#ef4444}.bookcard__original-price{text-decoration:line-through;color:#9ca3af;font-size:.875rem;font-weight:500}.bookcard__discount{display:inline-flex;align-items:center;gap:.25rem;background:#fee2e2;color:#ef4444;padding:.25rem .5rem;border-radius:.375rem;font-size:.75rem;font-weight:700;margin-left:.5rem}.bookcard--grid .bookcard__description{display:none}.bookcard--grid .bookcard__meta{margin-top:auto;padding-top:1rem;border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}.bookcard--grid .bookcard__stock{width:100%;display:flex;justify-content:flex-end}.bookcard--grid .bookcard__overlay{position:absolute;bottom:0;left:0;right:0;padding:1rem;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,transparent 100%);opacity:0;transform:translateY(10px);transition:all .3s ease;display:flex;justify-content:center;z-index:5}.bookcard--grid:hover .bookcard__overlay{opacity:1;transform:translateY(0)}.bookcard--grid .bookcard__add-to-cart-btn{background:#3b82f6;color:#fff;border:none;padding:.625rem 1.25rem;border-radius:.5rem;font-weight:600;display:flex;align-items:center;gap:.5rem;cursor:pointer}.bookcard--list{flex-direction:row;height:auto;min-height:220px;max-width:100%}.bookcard--list .bookcard__image-container{width:200px;height:auto;min-height:100%;position:relative;overflow:hidden;border-radius:1rem 0 0 1rem;flex-shrink:0}.bookcard--list .bookcard__image-background{position:absolute;top:0;left:0;right:0;bottom:0;background-size:cover;background-position:center;filter:blur(20px) brightness(.9);transform:scale(1.2);z-index:1}.bookcard--list .bookcard__image{position:relative;z-index:2;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;padding:1rem}.bookcard--list .bookcard__wishlist-btn{top:1rem;left:1rem;background:#ffffffe6}.bookcard--list .bookcard__info{flex:1;background:#fff;border-radius:0 1rem 1rem 0;padding:1.5rem;display:grid;grid-template-columns:1fr auto;grid-template-areas:"title price" "author price" "rating price" "desc desc" "meta actions";gap:.25rem 1rem;align-items:start}.bookcard--list .bookcard__title{grid-area:title;font-size:1.25rem;font-weight:700;margin:0;color:#111827}.bookcard--list .bookcard__author{grid-area:author;color:#64748b;font-size:.9rem}.bookcard--list .bookcard__rating{grid-area:rating}.bookcard--list .bookcard__rating-text{font-size:.875rem;color:#64748b;margin-left:.5rem}.bookcard--list .bookcard__pricing{grid-area:price;display:flex;flex-direction:column;align-items:flex-end}.bookcard--list .bookcard__current-price,.bookcard--list .bookcard__sale-price{font-size:1.5rem;font-weight:800;color:#2563eb}.bookcard--list .bookcard__sale-price{color:#ef4444}.bookcard--list .bookcard__description{grid-area:desc;color:#64748b;font-size:.9rem;line-height:1.5;margin:1rem 0;display:block}.bookcard--list .bookcard__meta{grid-area:meta;display:flex;gap:1rem;align-items:center;align-self:end}.bookcard--list .bookcard__list-actions{grid-area:actions;align-self:end}.bookcard--list .bookcard__add-to-cart-btn{background:#3b82f6;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;display:flex;align-items:center;gap:.5rem;cursor:pointer}.bookcard--list .bookcard__add-to-cart-btn:hover{background:#2563eb}.dark-mode .bookcard{background:#1e293b}.dark-mode .bookcard:hover{box-shadow:0 8px 20px #00000080}.dark-mode .bookcard__info{background:#1e293b}.dark-mode .bookcard__title{color:#f1f5f9}.dark-mode .bookcard__author{color:#94a3b8}.dark-mode .bookcard__description{color:#cbd5e1}.dark-mode .bookcard__rating-text{color:#94a3b8}.dark-mode .bookcard__current-price{color:#60a5fa}.dark-mode .bookcard__sale-price{color:#f87171}.dark-mode .bookcard__original-price{color:#64748b}.dark-mode .bookcard__discount{background:#ef444433;color:#fca5a5}.dark-mode .bookcard--grid .bookcard__image-container{background:#0f172a}.dark-mode .bookcard--grid .bookcard__meta{border-top-color:#334155}.dark-mode .bookcard--grid .bookcard__add-to-cart-btn{background:#3b82f6;color:#fff}.dark-mode .bookcard--list .bookcard__image-container{background:#0f172a}.dark-mode .bookcard__category{background:#3b82f626;color:#60a5fa}.dark-mode .bookcard__code{background:#1e3a8a4d;color:#93c5fd;border-color:#1e40af}.dark-mode .bookcard__stock{color:#34d399}@media (max-width: 768px){.bookcard--list{flex-direction:column;height:auto}.bookcard--list .bookcard__image-container{width:100%;height:250px;border-radius:1rem 1rem 0 0}.bookcard--list .bookcard__info{border-radius:0 0 1rem 1rem;display:flex;flex-direction:column;gap:.75rem}.bookcard--list .bookcard__pricing{align-items:flex-start;margin-top:.5rem}.bookcard--list .bookcard__list-actions{width:100%}.bookcard--list .bookcard__add-to-cart-btn{width:100%;justify-content:center}}.home{min-height:calc(100vh - 70px)}.hero{background:linear-gradient(135deg,#eff6ff,#dbeafe,#eff6ff);padding:4rem 0;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%2393c5fd' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") repeat;opacity:.5;z-index:1}.hero-container{max-width:1200px;margin:0 auto;padding:0 1rem;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;position:relative;z-index:2}.hero-content{display:flex;flex-direction:column;gap:2rem}.hero-title{font-size:3.5rem;font-weight:800;line-height:1.1;color:#1e293b;margin:0}.hero-highlight{background:linear-gradient(135deg,#2563eb,#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.25rem;line-height:1.6;color:#64748b;margin:0}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}.hero-btn{display:flex;align-items:center;gap:.5rem;padding:1rem 2rem;border-radius:1rem;font-weight:600;text-decoration:none;transition:all .3s ease;font-size:1rem}.hero-btn.primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.hero-btn.primary:hover{box-shadow:0 8px 25px #2563eb4d;transform:translateY(-3px)}.hero-btn.secondary{background:#fff;color:#2563eb;border:2px solid #2563eb}.hero-btn.secondary:hover{background:#2563eb;color:#fff;transform:translateY(-2px)}.hero-image{position:relative}.hero-img{width:100%;height:500px;-o-object-fit:cover;object-fit:cover;border-radius:2rem;box-shadow:0 20px 40px #00000026}.featured-section,.new-section,.sale-section{padding:4rem 0}.featured-section{background:#fff}.new-section{background:linear-gradient(135deg,#eff6ff,#dbeafe,#eff6ff)}.sale-section{background:#fff}.section-container{max-width:1200px;margin:0 auto;padding:0 1rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem}.section-title-group{display:flex;align-items:center;gap:1rem}.section-icon{color:#2563eb}.section-title{font-size:2.5rem;font-weight:700;color:#1e293b;margin:0}.section-link{display:flex;align-items:center;gap:.5rem;color:#2563eb;text-decoration:none;font-weight:600;transition:all .2s ease;padding:.75rem 1rem;border-radius:.75rem}.section-link:hover{background:#2563eb1a;transform:translate(4px)}.books-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}.cta-section{background:linear-gradient(135deg,#1e293b,#0f172a);padding:4rem 0;position:relative;overflow:hidden}.cta-section:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%2360a5fa' fill-opacity='0.1'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") repeat}.cta-container{max-width:800px;margin:0 auto;padding:0 1rem;text-align:center;position:relative;z-index:2}.cta-content{display:flex;flex-direction:column;gap:2rem;align-items:center}.cta-title{font-size:2.5rem;font-weight:700;color:#fff;margin:0}.cta-subtitle{font-size:1.125rem;line-height:1.6;color:#cbd5e1;margin:0}.cta-btn{background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff!important;padding:1.25rem 2.5rem;border-radius:1rem;font-weight:600;text-decoration:none;transition:all .3s ease;display:flex;align-items:center;gap:.75rem;font-size:1.125rem}.cta-btn:hover{box-shadow:0 8px 25px #7c3aed4d;transform:translateY(-3px);color:#fff}@media (max-width: 1024px){.books-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.section-title{font-size:2rem}}@media (max-width: 768px){.hero-container{grid-template-columns:1fr;gap:2rem;text-align:center}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.125rem}.hero-actions{justify-content:center}.hero-img{height:350px}.section-header{flex-direction:column;gap:1rem;align-items:center;text-align:center}.books-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.cta-title{font-size:2rem}.featured-section,.new-section,.sale-section,.cta-section{padding:3rem 0}}@media (max-width: 480px){.hero{padding:2rem 0}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.hero-actions{flex-direction:column}.hero-btn{padding:.875rem 1.5rem;justify-content:center}.section-title{font-size:1.75rem}.books-grid{grid-template-columns:1fr}.cta-title{font-size:1.75rem}.cta-btn{padding:1rem 2rem;font-size:1rem}}.request-book-section{padding:3rem 0;background:linear-gradient(135deg,#1e293b,#0f172a);position:relative;overflow:hidden;border-top:none;border-bottom:none}.request-book-section:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%2360a5fa' fill-opacity='0.1'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") repeat;z-index:1}.request-book-container{display:flex;align-items:center;justify-content:space-between;background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2rem;border-radius:1rem;border:1px solid rgba(255,255,255,.1);gap:2rem;max-width:900px;position:relative;z-index:2}.request-book-content{flex:1}.request-book-content h3{font-size:1.5rem;font-weight:700;color:#f8fafc;margin:0 0 .5rem}.request-book-content p{color:#cbd5e1;font-size:1.1rem;margin:0;line-height:1.5}.request-book-btn{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff!important;padding:1rem 2rem;border-radius:.75rem;font-weight:600;text-decoration:none;transition:all .3s ease;white-space:nowrap;box-shadow:0 4px 6px -1px #0003}.request-book-btn:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #2563eb66;color:#fff}@media (max-width: 768px){.request-book-container{flex-direction:column;text-align:center;padding:1.5rem}.request-book-btn{width:100%;justify-content:center}}.dark-mode .hero{background:linear-gradient(135deg,#0f172a,#1e293b,#0f172a)}.dark-mode .hero-title{color:#f1f5f9}.dark-mode .hero-subtitle{color:#cbd5e1}.dark-mode .hero-btn.secondary{background:transparent;color:#60a5fa;border-color:#60a5fa}.dark-mode .hero-btn.secondary:hover{background:#60a5fa;color:#0f172a}.dark-mode .featured-section,.dark-mode .sale-section{background:#0f172a!important}.dark-mode .new-section{background:#1e293b!important}.dark-mode .section-icon,.dark-mode .section-link{color:#60a5fa}.dark-mode .section-link:hover{background:#60a5fa1a}.dark-mode .cta-section{background:linear-gradient(135deg,#020617,#0f172a)}.dark-mode .cta-title{color:#f1f5f9}.dark-mode .cta-description{color:#cbd5e1}.search-bar-container{position:relative;width:100%;max-width:800px}.search-bar{position:relative;width:100%;transition:transform .2s ease}.search-bar:hover{transform:translateY(-2px)}.search-bar-container .search-icon{position:absolute;left:1.5rem;top:50%;transform:translateY(-50%);color:#64748b;pointer-events:none;z-index:2;width:24px;height:24px}.search-bar-container .search-input{width:100%;padding:1.25rem 3.5rem 1.25rem 4rem!important;border:2px solid #e2e8f0;border-radius:9999px;font-size:1.125rem;background:#fff;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.search-bar-container .search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 10px 15px -3px #3b82f626,0 4px 6px -2px #3b82f61a}.search-bar-container .clear-btn{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#9ca3af;cursor:pointer;padding:.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.search-bar-container .clear-btn:hover{color:#6b7280;background:#f3f4f6}.suggestions{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:1rem;box-shadow:0 8px 25px #00000026;z-index:1000;margin-top:.5rem;overflow:hidden;max-height:400px;overflow-y:auto}.suggestion-item{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;cursor:pointer;transition:background .2s ease;border-bottom:1px solid #f1f5f9}.suggestion-item:hover{background:#f8fafc}.suggestion-image{width:48px;height:60px;-o-object-fit:cover;object-fit:cover;border-radius:.375rem;box-shadow:0 2px 8px #0000001a}.suggestion-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.suggestion-title{font-weight:600;color:#1f2937;font-size:.875rem;line-height:1.3}.suggestion-author{color:#6b7280;font-size:.75rem}.suggestion-price{font-weight:600;color:#2563eb;font-size:.875rem}@media (max-width: 768px){.search-input{padding:.875rem 2.5rem;font-size:.875rem}.search-icon{left:.75rem;right:auto}.clear-btn{right:.75rem}.suggestion-item{padding:.625rem .75rem;gap:.75rem}.suggestion-image{width:40px;height:50px}.suggestion-title{font-size:.8125rem}.suggestion-author,.suggestion-price{font-size:.6875rem}}.dark-mode .search-bar-container .search-input{background-color:#334155!important;border-color:#94a3b8!important;color:#fff!important;box-shadow:0 4px 6px -1px #0000004d!important}.dark-mode .search-bar-container .search-input::-moz-placeholder{color:#e2e8f0!important;opacity:1!important}.dark-mode .search-bar-container .search-input::placeholder{color:#e2e8f0!important;opacity:1!important}.dark-mode .search-bar-container .search-input:focus{background-color:#1e293b!important;border-color:#60a5fa!important;box-shadow:0 0 0 4px #60a5fa40!important}.dark-mode .search-bar-container .search-icon{color:#f8fafc!important}.dark-mode .search-bar-container .clear-btn{color:#94a3b8}.dark-mode .search-bar-container .clear-btn:hover{background-color:#334155;color:#f1f5f9}.dark-mode .suggestions{background-color:#1e293b;border-color:#334155;box-shadow:0 10px 15px -3px #00000080}.dark-mode .suggestion-title{color:#f1f5f9}.dark-mode .suggestion-author{color:#94a3b8}.dark-mode .suggestion-price{color:#60a5fa}.Book-Filter{background:#fff;border-radius:1rem;padding:1.5rem;box-shadow:0 4px 12px #00000014;margin-bottom:1.5rem}.Book-Filter__header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.Book-Filter__controls-left{display:flex;align-items:center;gap:1rem;flex:1}.Book-Filter__controls-right{display:flex;align-items:center;gap:.75rem}.Book-Filter__controls-center{display:flex;align-items:center;gap:.75rem;flex:2;justify-content:center}.Book-Filter__quick-btn{background:#fff;border:2px solid #e2e8f0;color:#64748b;padding:.5rem 1rem;border-radius:2rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.Book-Filter__quick-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#334155;transform:translateY(-1px)}.Book-Filter__quick-btn.active{background:#eff6ff;border-color:#3b82f6;color:#2563eb;box-shadow:0 2px 4px #2563eb1a}.dark-mode .Book-Filter__quick-btn{background:#0f172a;border-color:#334155;color:#94a3b8}.dark-mode .Book-Filter__quick-btn:hover{background:#1e293b;border-color:#475569;color:#f1f5f9}.dark-mode .Book-Filter__quick-btn.active{background:#3b82f626;border-color:#60a5fa;color:#60a5fa}.Book-Filter__toggle-filters{display:flex;align-items:center;gap:.5rem;background:#f1f5f9;border:2px solid #e2e8f0;color:#374151;padding:.75rem 1rem;border-radius:.75rem;cursor:pointer;font-weight:500;transition:all .2s ease}.Book-Filter__toggle-filters:hover{background:#e2e8f0;border-color:#cbd5e1}.Book-Filter__view-switch{display:flex;background:#f1f5f9;border-radius:.75rem;padding:.25rem;border:2px solid #e2e8f0}.Book-Filter__view-btn{display:flex;align-items:center;justify-content:center;padding:.5rem;border:none;background:none;color:#6b7280;cursor:pointer;border-radius:.5rem;transition:all .2s ease}.Book-Filter__view-btn svg{width:24px;height:24px}.Book-Filter__view-btn.active{background:#fff;color:#2563eb;box-shadow:0 2px 4px #0000001a}.Book-Filter__view-btn:hover:not(.active){color:#374151}.Book-Filter__sort-select,.Book-Filter__input-select,.Book-Filter__input-price{padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:.75rem;background:#f8fafc;color:#374151;font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.875rem}.Book-Filter__sort-select:focus,.Book-Filter__input-select:focus,.Book-Filter__input-price:focus{outline:none;border-color:#2563eb;background:#fff;box-shadow:0 0 0 3px #2563eb1a}.Book-Filter__panel{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #f1f5f9;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;align-items:end}.Book-Filter__group{display:flex;flex-direction:column;gap:.5rem}.Book-Filter__label{font-weight:600;color:#374151;font-size:.875rem}.Book-Filter__input-select{width:100%}.Book-Filter__price-range{display:flex;align-items:center;gap:.5rem}.Book-Filter__input-price{flex:1;min-width:0}.Book-Filter__price-separator{color:#6b7280;font-weight:500}.Book-Filter__actions{margin-top:1.5rem;display:flex;justify-content:flex-end}.Book-Filter__btn-clear{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.75rem;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:.5rem;transition:all .2s ease}.Book-Filter__btn-clear:hover{box-shadow:0 4px 12px #ef44444d;transform:translateY(-2px)}@media (max-width: 768px){.Book-Filter__header{flex-direction:column;align-items:stretch}.Book-Filter__controls-left,.Book-Filter__controls-right{justify-content:space-between}.Book-Filter__panel{grid-template-columns:minmax(0,1fr);gap:1rem}.Book-Filter{padding:1rem}}.Book-Filter,.Book-Filter *{box-sizing:border-box}.dark-mode .Book-Filter{background:#1e293b;box-shadow:0 4px 12px #0000004d}.dark-mode .Book-Filter__toggle-filters{background:#0f172a;border-color:#334155;color:#f1f5f9}.dark-mode .Book-Filter__toggle-filters:hover{background:#1e293b;border-color:#475569}.dark-mode .Book-Filter__view-switch{background:#0f172a;border-color:#334155}.dark-mode .Book-Filter__view-btn{color:#94a3b8}.dark-mode .Book-Filter__view-btn:hover:not(.active){color:#f1f5f9}.dark-mode .Book-Filter__view-btn.active{background:#1e293b;color:#60a5fa;box-shadow:0 2px 4px #0000004d}.dark-mode .Book-Filter__sort-select,.dark-mode .Book-Filter__input-select,.dark-mode .Book-Filter__input-price{background:#0f172a;border-color:#334155;color:#f1f5f9}.dark-mode .Book-Filter__sort-select:focus,.dark-mode .Book-Filter__input-select:focus,.dark-mode .Book-Filter__input-price:focus{border-color:#60a5fa;background:#1e293b;box-shadow:0 0 0 3px #60a5fa33}.dark-mode .Book-Filter__panel{border-top-color:#334155}.dark-mode .Book-Filter__label{color:#e2e8f0}.dark-mode .Book-Filter__price-separator{color:#94a3b8}.dark-mode .Book-Filter__btn-clear{box-shadow:0 4px 6px #0003;color:#fff!important}.dark-mode .Book-Filter__toggle-slider{background-color:#475569}.dark-mode .Book-Filter__toggle-input:checked+.Book-Filter__toggle-slider{background-color:#3b82f6}.Book-Filter__autocomplete{position:relative;width:100%}.Book-Filter__input-text{width:100%;padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:.75rem;background:#f8fafc;color:#374151;font-weight:500;font-size:.875rem;transition:all .2s ease}.Book-Filter__input-text:focus{outline:none;border-color:#2563eb;background:#fff;box-shadow:0 0 0 3px #2563eb1a}.Book-Filter__suggestions{position:absolute;top:110%;left:0;width:100%;max-height:200px;overflow-y:auto;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;z-index:50}.Book-Filter__suggestion-item{padding:.75rem 1rem;cursor:pointer;font-size:.875rem;color:#374151;transition:background .15s ease}.Book-Filter__suggestion-item:hover{background:#f1f5f9;color:#1e293b}.Book-Filter__clear-badg{position:absolute;right:18px;top:50%;transform:translateY(-50%);background:#cbd5e1;border:none;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.7rem;cursor:pointer;opacity:.7;transition:opacity .2s}.Book-Filter__clear-badg:hover{opacity:1;background:#94a3b8}.dark-mode .Book-Filter__input-text{background:#0f172a;border-color:#334155;color:#f1f5f9}.dark-mode .Book-Filter__input-text:focus{border-color:#60a5fa;background:#1e293b;box-shadow:0 0 0 3px #60a5fa33}.dark-mode .Book-Filter__suggestions{background:#1e293b;border-color:#334155;box-shadow:0 10px 15px -3px #00000080}.dark-mode .Book-Filter__suggestion-item{color:#cbd5e1;border-bottom:1px solid #334155}.dark-mode .Book-Filter__suggestion-item:last-child{border-bottom:none}.dark-mode .Book-Filter__suggestion-item:hover{background:#334155;color:#f8fafc}.dark-mode .Book-Filter__clear-badg{background:#475569;color:#cbd5e1}.dark-mode .Book-Filter__clear-badg:hover{background:#64748b;color:#fff}.pagination-container{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.5rem;background:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;margin-top:2rem;flex-wrap:wrap}.items-per-page{display:flex;align-items:center;gap:.75rem}.items-per-page label{font-weight:600;color:#374151;font-size:.9375rem}.items-per-page-select{padding:.5rem .75rem;border:2px solid #e5e7eb;border-radius:.5rem;background:#fff;color:#1f2937;font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.9375rem}.items-per-page-select:hover{border-color:#3b82f6}.items-per-page-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.pagination-info{font-size:.9375rem;color:#6b7280;font-weight:500}.pagination-controls{display:flex;align-items:center;gap:.5rem}.pagination-btn{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:2px solid #e5e7eb;background:#fff;color:#6b7280;border-radius:.5rem;cursor:pointer;transition:all .2s ease;font-weight:500}.pagination-btn:hover:not(:disabled){border-color:#3b82f6;color:#3b82f6;background:#eff6ff}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-numbers{display:flex;align-items:center;gap:.25rem}.pagination-number{display:flex;align-items:center;justify-content:center;min-width:2.5rem;height:2.5rem;padding:0 .75rem;border:2px solid #e5e7eb;background:#fff;color:#6b7280;border-radius:.5rem;cursor:pointer;transition:all .2s ease;font-weight:500;font-size:.9375rem}.pagination-number:hover{border-color:#3b82f6;color:#3b82f6;background:#eff6ff}.pagination-number.active{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border-color:#3b82f6}.pagination-ellipsis{display:flex;align-items:center;justify-content:center;min-width:2.5rem;height:2.5rem;color:#9ca3af;font-weight:600}.dark-mode .pagination-container{background:#1e293b;box-shadow:0 1px 3px #0000004d}.dark-mode .items-per-page label{color:#cbd5e1}.dark-mode .items-per-page-select{background:#0f172a;border-color:#334155;color:#e2e8f0}.dark-mode .items-per-page-select:hover{border-color:#60a5fa}.dark-mode .items-per-page-select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}.dark-mode .pagination-info{color:#94a3b8}.dark-mode .pagination-btn{background:#0f172a;border-color:#334155;color:#94a3b8}.dark-mode .pagination-btn:hover:not(:disabled){border-color:#60a5fa;color:#60a5fa;background:#1e3a5f}.dark-mode .pagination-number{background:#0f172a;border-color:#334155;color:#94a3b8}.dark-mode .pagination-number:hover{border-color:#60a5fa;color:#60a5fa;background:#1e3a5f}.dark-mode .pagination-number.active{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border-color:#3b82f6}.dark-mode .pagination-ellipsis{color:#64748b}@media (max-width: 768px){.pagination-container{flex-direction:column;align-items:stretch;gap:1rem}.items-per-page{justify-content:center}.pagination-info{text-align:center}.pagination-controls{justify-content:center;flex-wrap:wrap}.pagination-numbers{order:-1;width:100%;justify-content:center;margin-bottom:.5rem}}@media (max-width: 480px){.pagination-btn,.pagination-number{min-width:2.25rem;height:2.25rem;font-size:.875rem}.items-per-page-select,.pagination-info{font-size:.875rem}}.catalog{min-height:calc(100vh - 70px);background:#fafafa;padding:2rem 0}.catalog-container{max-width:1200px;margin:0 auto;padding:0 1rem}.catalog-header{text-align:center;margin-bottom:3rem}.catalog-title{font-size:3rem;font-weight:700;color:#1e293b;margin:0 0 1rem}.catalog-subtitle{font-size:1.125rem;color:#64748b;margin:0}.search-section{display:flex;justify-content:center;margin-bottom:3rem;padding:0 1rem}.catalog-results{margin-top:1.5rem}.results-header{margin-bottom:1.5rem}.results-count{color:#6b7280;font-weight:500;font-size:.875rem}.books-container.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}.books-container.list{display:flex;flex-direction:column;gap:1.5rem}.no-results{display:flex;justify-content:center;align-items:center;min-height:300px}.no-results-content{text-align:center;max-width:400px;padding:2rem}.no-results-content h3{font-size:1.5rem;font-weight:600;color:#374151;margin:0 0 1rem}.no-results-content p{color:#6b7280;margin:0 0 2rem;line-height:1.5}.reset-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s ease}.reset-btn:hover{box-shadow:0 4px 12px #2563eb4d;transform:translateY(-2px)}@media (max-width: 1024px){.books-container.grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.catalog-title{font-size:2.5rem}}@media (max-width: 768px){.catalog{padding:1.5rem 0}.catalog-header{margin-bottom:2rem}.catalog-title{font-size:2rem}.catalog-subtitle{font-size:1rem}.books-container.grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.books-container.list{gap:1rem}}@media (max-width: 480px){.catalog-container{padding:0 .75rem}.catalog-title{font-size:1.75rem}.books-container.grid{grid-template-columns:1fr}.no-results-content{padding:1rem}}.dark-mode .catalog{background:#0f172a}.dark-mode .catalog-title{color:#f1f5f9}.dark-mode .catalog-subtitle,.dark-mode .results-count{color:#94a3b8}.dark-mode .no-results-content h3{color:#f1f5f9}.dark-mode .no-results-content p{color:#94a3b8}.sharemodal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.sharemodal{background:#fff;border-radius:1.5rem;padding:2rem;max-width:500px;width:100%;box-shadow:0 20px 40px #0003;position:relative}.sharemodal__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #f1f5f9}.sharemodal__title{font-size:1.5rem;font-weight:700;color:#1e293b;margin:0}.sharemodal__close-btn{background:none;border:none;color:#6b7280;cursor:pointer;padding:.5rem;border-radius:.5rem;transition:all .2s ease}.sharemodal__close-btn:hover{background:#f3f4f6;color:#374151}.sharemodal__book-info{display:flex;gap:1rem;margin-bottom:2rem;padding:1rem;background:#f8fafc;border-radius:1rem;border:1px solid #e2e8f0}.sharemodal__book-cover{width:80px;height:100px;border-radius:.5rem;overflow:hidden;box-shadow:0 4px 12px #0000001a}.sharemodal__book-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.sharemodal__book-details{flex:1;display:flex;flex-direction:column;gap:.25rem}.sharemodal__book-title{font-weight:600;color:#1f2937;font-size:1rem;margin:0}.sharemodal__book-author{color:#6b7280;font-size:.875rem;margin:0}.sharemodal__book-price{font-weight:600;color:#2563eb;font-size:1.125rem;margin:0}.sharemodal__options{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.sharemodal__option{display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid #e2e8f0;border-radius:1rem;background:#fff;color:#374151;text-decoration:none;font-weight:500;transition:all .3s ease;cursor:pointer}.sharemodal__option:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.sharemodal__option--facebook{border-color:#1877f2;color:#1877f2}.sharemodal__option--facebook:hover{background:#1877f2;color:#fff}.sharemodal__option--twitter{border-color:#1da1f2;color:#1da1f2}.sharemodal__option--twitter:hover{background:#1da1f2;color:#fff}.sharemodal__option--whatsapp{border-color:#25d366;color:#25d366}.sharemodal__option--whatsapp:hover{background:#25d366;color:#fff}.sharemodal__option--email{border-color:#6b7280;color:#6b7280}.sharemodal__option--email:hover{background:#6b7280;color:#fff}.sharemodal__share-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:currentColor;color:#fff}.sharemodal__option:hover .sharemodal__share-icon{background:#fff3}.sharemodal__copy-link{margin-top:1rem;padding-top:1rem;border-top:1px solid #f1f5f9}.sharemodal__copy-link-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;background:#f8fafc;border:2px solid #e2e8f0;border-radius:.75rem;color:#374151;font-weight:500;cursor:pointer;transition:all .2s ease}.sharemodal__copy-link-btn:hover{background:#e2e8f0;border-color:#cbd5e1}.sharemodal__copy-link-btn--copied{background:#dcfce7;border-color:#bbf7d0;color:#166534}@media (max-width: 768px){.sharemodal{padding:1.5rem}.sharemodal__options{grid-template-columns:1fr}.sharemodal__book-info{flex-direction:column;text-align:center}.sharemodal__book-cover{align-self:center}}@media (max-width: 480px){.sharemodal{padding:1rem}.sharemodal__title{font-size:1.25rem}}.reservation-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.reservation-modal{background-color:#fff;color:#1f2937;width:100%;max-width:500px;border-radius:16px;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;animation:slideUp .3s cubic-bezier(.16,1,.3,1);border:1px solid var(--border-color)}.dark-mode .reservation-modal,.dark .reservation-modal{background-color:#0f172a;color:#f1f5f9;border-color:#334155}.reservation-modal__header{padding:1.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background-color:#f9fafb;background-color:var(--bg-secondary)}.dark-mode .reservation-modal__header,.dark .reservation-modal__header{background-color:#1e293b;border-color:#334155}.reservation-modal__title{font-size:1.25rem;font-weight:700;margin:0;color:var(--text-primary);display:flex;align-items:center;gap:.75rem}.dark-mode .reservation-modal__title,.dark .reservation-modal__title{color:#f1f5f9}.reservation-modal__close-btn{background:none;border:none;padding:.5rem;border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.dark-mode .reservation-modal__close-btn,.dark .reservation-modal__close-btn{color:#94a3b8}.reservation-modal__close-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.dark-mode .reservation-modal__close-btn:hover,.dark .reservation-modal__close-btn:hover{background-color:#334155;color:#f1f5f9}.reservation-modal__content{padding:2rem;display:flex;flex-direction:column;gap:1.5rem}.reservation-modal__info{background-color:#f8fafc;background-color:var(--bg-secondary);padding:1.25rem;border-radius:12px;border-left:4px solid var(--primary-color, #3b82f6)}.dark-mode .reservation-modal__info,.dark .reservation-modal__info{background-color:#1e293b}.reservation-modal__text{font-size:.95rem;line-height:1.6;color:var(--text-secondary);margin-bottom:1rem}.dark-mode .reservation-modal__text,.dark .reservation-modal__text{color:#cbd5e1}.reservation-modal__text:last-child{margin-bottom:0}.reservation-modal__text strong{color:var(--text-primary);font-weight:600}.dark-mode .reservation-modal__text strong,.dark .reservation-modal__text strong{color:#f1f5f9}.reservation-modal__warning{display:flex;gap:.75rem;align-items:flex-start;padding:1rem;background-color:#f59e0b1a;border-radius:8px;font-size:.9rem;color:#d97706}.dark-mode .reservation-modal__warning,.dark .reservation-modal__warning{background-color:#f59e0b26;color:#fbbf24}.reservation-modal__warning-icon{flex-shrink:0;margin-top:2px}.reservation-modal__footer{padding:1.5rem;background-color:#f9fafb;background-color:var(--bg-secondary);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:1rem}.dark-mode .reservation-modal__footer,.dark .reservation-modal__footer{background-color:#1e293b;border-color:#334155}.reservation-modal__btn--cancel{background-color:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.dark-mode .reservation-modal__btn--cancel,.dark .reservation-modal__btn--cancel{border-color:#475569;color:#cbd5e1}.reservation-modal__btn--cancel:hover{background-color:var(--bg-hover);color:var(--text-primary)}.dark-mode .reservation-modal__btn--cancel:hover,.dark .reservation-modal__btn--cancel:hover{background-color:#334155;color:#f1f5f9}.reservation-modal__btn{padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.reservation-modal__btn--cancel{background-color:transparent;border:1px solid var(--border-color, #d1d5db);color:var(--text-secondary, #4b5563)}.reservation-modal__btn--cancel:hover{background-color:var(--bg-hover, #f3f4f6);border-color:var(--text-secondary, #9ca3af);color:var(--text-primary, #1f2937)}.reservation-modal__btn--confirm{background-color:var(--primary-color, #2563eb);color:#fff;border:none;box-shadow:0 4px 6px -1px #2563eb33}.reservation-modal__btn--confirm:hover{background-color:var(--primary-hover, #1d4ed8);transform:translateY(-1px);box-shadow:0 6px 8px -1px #2563eb4d}.reservation-modal__btn--confirm:disabled{opacity:.7;cursor:not-allowed;transform:none}[data-theme=dark] .reservation-modal__warning{background-color:#f59e0b26;color:#fbbf24}.message-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.message-modal{background-color:#fff;color:#1f2937;width:100%;max-width:400px;border-radius:16px;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;animation:slideUp .3s cubic-bezier(.16,1,.3,1);border:1px solid var(--border-color)}.dark-mode .message-modal,.dark .message-modal{background-color:#0f172a;color:#f1f5f9;border-color:#334155}.message-modal__header{padding:1.25rem;display:flex;justify-content:flex-end}.message-modal__close-btn{background:none;border:none;padding:.5rem;border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.dark-mode .message-modal__close-btn,.dark .message-modal__close-btn{color:#94a3b8}.message-modal__close-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.dark-mode .message-modal__close-btn:hover,.dark .message-modal__close-btn:hover{background-color:#334155;color:#f1f5f9}.message-modal__content{padding:0 2rem 2rem;display:flex;flex-direction:column;align-items:center;text-align:center}.message-modal__icon{margin-bottom:1rem}.message-modal__icon--error{color:#ef4444}.message-modal__icon--info{color:#3b82f6}.message-modal__title{font-size:1.25rem;font-weight:700;margin:0 0 .75rem;color:var(--text-primary)}.dark-mode .message-modal__title,.dark .message-modal__title{color:#f1f5f9}.message-modal__text{font-size:.95rem;line-height:1.6;color:var(--text-secondary);margin-bottom:2rem;white-space:pre-wrap}.dark-mode .message-modal__text,.dark .message-modal__text{color:#cbd5e1}.message-modal__btn{width:100%;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s;background-color:var(--primary-color, #2563eb);color:#fff;border:none;box-shadow:0 4px 6px -1px #2563eb33}.message-modal__btn:hover{background-color:var(--primary-hover, #1d4ed8);transform:translateY(-1px);box-shadow:0 6px 8px -1px #2563eb4d}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.review-form{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px}.dark-mode .review-form{background:#1f2937;box-shadow:0 2px 8px #0000004d}.review-form__title{font-size:1.5rem;font-weight:600;margin-bottom:20px;color:#1a1a1a}.dark-mode .review-form__title{color:#f9fafb}.review-form__rating{margin-bottom:24px}.review-form__label{display:block;font-weight:600;margin-bottom:12px;color:#333}.dark-mode .review-form__label{color:#f3f4f6}.review-form__stars{display:flex;gap:8px}.review-form__star{background:none;border:none;cursor:pointer;padding:4px;color:#d1d5db;transition:all .2s}.dark-mode .review-form__star{color:#6b7280}.review-form__star:hover{transform:scale(1.1)}.review-form__star--filled{color:#fbbf24}.review-form__comment{margin-bottom:24px}.review-form__textarea{width:100%;padding:12px;border:2px solid #e5e7eb;border-radius:8px;font-family:inherit;font-size:1rem;resize:vertical;transition:border-color .2s;background:#fff;color:#1a1a1a}.dark-mode .review-form__textarea{background:#374151;border-color:#4b5563;color:#f9fafb}.review-form__textarea:focus{outline:none;border-color:#3b82f6}.review-form__counter{display:block;margin-top:8px;font-size:.875rem;color:#6b7280}.dark-mode .review-form__counter{color:#d1d5db}.review-form__error{padding:12px;background-color:#fee;border:1px solid #fcc;border-radius:8px;color:#c00;margin-bottom:16px;font-size:.875rem}.dark-mode .review-form__error{background-color:#7f1d1d;border-color:#991b1b;color:#fca5a5}.review-form__actions{display:flex;gap:12px;justify-content:flex-end}.review-form__button{padding:12px 24px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:1rem}.review-form__button:disabled{opacity:.5;cursor:not-allowed}.review-form__button--cancel{background-color:#f3f4f6;color:#374151}.dark-mode .review-form__button--cancel{background-color:#374151;color:#e5e7eb}.review-form__button--cancel:hover:not(:disabled){background-color:#e5e7eb}.dark-mode .review-form__button--cancel:hover:not(:disabled){background-color:#4b5563}.review-form__button--submit{background-color:#3b82f6;color:#fff!important}.dark-mode .review-form__button--submit{color:#fff!important}.review-form__button--submit:hover:not(:disabled){background-color:#2563eb}@media (max-width: 768px){.review-form{padding:16px}.review-form__title{font-size:1.25rem}.review-form__actions{flex-direction:column}.review-form__button{width:100%}}.not-found-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background-color:var(--bg-primary);transition:background-color .3s ease}.not-found-container.dark{background-color:#0f172a}.not-found-content{max-width:600px;text-align:center;animation:fadeInUp .6s ease-out}.not-found-logo-wrapper{margin-bottom:2rem;animation:float 3s ease-in-out infinite}.not-found-logo{width:120px;height:120px;-o-object-fit:contain;object-fit:contain;opacity:.9}.not-found-icon{display:inline-flex;align-items:center;justify-content:center;width:140px;height:140px;margin:0 auto 2rem;border-radius:50%;background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-hover) 100%);color:#fff;box-shadow:0 10px 30px #2563eb4d}.not-found-container:not(.dark) .not-found-icon{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 10px 30px #2563eb66,0 0 0 3px #2563eb26,inset 0 2px 4px #fff3}.not-found-container.dark .not-found-icon{background:linear-gradient(135deg,#3b82f6,#60a5fa);box-shadow:0 10px 30px #3b82f666}.not-found-title{font-size:2.5rem;font-weight:800;color:var(--text-primary);margin-bottom:1rem;letter-spacing:-.025em}.not-found-subtitle{font-size:1.25rem;color:var(--text-secondary);margin-bottom:.75rem;font-weight:500}.not-found-description{font-size:1rem;color:var(--text-tertiary);margin-bottom:2.5rem;line-height:1.6}.not-found-container.dark .not-found-title{color:#f1f5f9}.not-found-container.dark .not-found-subtitle{color:#cbd5e1}.not-found-container.dark .not-found-description{color:#94a3b8}.not-found-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.not-found-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;border-radius:.5rem;font-weight:600;font-size:1rem;text-decoration:none;transition:all .3s ease;cursor:pointer}.not-found-btn.primary{background-color:var(--primary-color);color:#fff;box-shadow:0 4px 12px #2563eb33}.not-found-container:not(.dark) .not-found-btn.primary{background-color:#2563eb;box-shadow:0 4px 12px #2563eb59,0 2px 4px #2563eb33}.not-found-btn.primary:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 6px 20px #2563eb4d}.not-found-container:not(.dark) .not-found-btn.primary:hover{box-shadow:0 6px 20px #2563eb66,0 3px 6px #2563eb40}.not-found-btn.secondary{background-color:var(--bg-secondary);color:var(--text-primary);border:2px solid var(--border-color)}.not-found-btn.secondary:hover{background-color:var(--bg-hover);border-color:var(--border-color-hover);transform:translateY(-2px)}.not-found-container:not(.dark) .not-found-btn.secondary{background-color:#f3f4f6;color:#1f2937;border-color:#d1d5db}.not-found-container:not(.dark) .not-found-btn.secondary:hover{background-color:#e5e7eb;border-color:#9ca3af}.not-found-container.dark .not-found-btn.secondary{background-color:#1e293b;color:#f1f5f9;border-color:#475569}.not-found-container.dark .not-found-btn.secondary:hover{background-color:#334155;border-color:#64748b}.not-found-container.dark .not-found-btn.primary{box-shadow:0 4px 12px #3b82f64d}.not-found-container.dark .not-found-btn.primary:hover{box-shadow:0 6px 20px #3b82f666}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (max-width: 640px){.not-found-title{font-size:2rem}.not-found-subtitle{font-size:1.125rem}.not-found-icon{width:100px;height:100px}.not-found-icon svg{width:60px;height:60px}.not-found-logo{width:80px;height:80px}.not-found-actions{flex-direction:column;width:100%}.not-found-btn{width:100%;justify-content:center}}.book-detail{min-height:calc(100vh - 70px);background:#fafafa;padding:2rem 0}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:#2563eb;text-decoration:none;font-weight:500;margin-bottom:2rem;padding:.75rem 1rem;border-radius:.75rem;transition:all .2s ease}.back-link:hover{background:#2563eb1a;transform:translate(-4px)}.not-found{text-align:center;padding:4rem 2rem}.not-found h1{color:#374151;margin-bottom:2rem}.book-detail-content{background:#fff;border-radius:1.5rem;padding:2rem;box-shadow:0 4px 12px #00000014;display:grid;grid-template-columns:1fr 2fr;gap:3rem;margin-bottom:2rem}.book-image-section{display:flex;flex-direction:column;gap:1.5rem}.book-image-container{position:relative;border-radius:1rem;overflow:hidden;box-shadow:0 8px 25px #00000026}.book-image{width:100%;height:auto;max-height:500px;-o-object-fit:cover;object-fit:cover}.badge{position:absolute;top:1rem;left:1rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;border-radius:1rem;z-index:10}.new-badge{background:linear-gradient(135deg,#059669,#047857);color:#fff}.sale-badge{background:linear-gradient(135deg,#ea580c,#dc2626);color:#fff}.book-actions{display:flex;gap:1rem}.wishlist-btn,.share-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:.75rem;background:#fff;color:#374151;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none}.wishlist-btn:hover,.share-btn:hover{border-color:#2563eb;color:#2563eb;background:#2563eb0d}.wishlist-btn.active{background:#ef4444;border-color:#ef4444;color:#fff}.book-info-section{display:flex;flex-direction:column;gap:2rem}.book-header{display:flex;flex-direction:column;gap:1rem}.book-title{font-size:2.5rem;font-weight:700;color:#1e293b;margin:0;line-height:1.2}.book-author{font-size:1.25rem;color:#64748b;margin:0;font-weight:500}.book-rating{display:flex;align-items:center;gap:1rem}.stars{display:flex;gap:.25rem}.star{color:#fbbf24}.star:not(.filled){color:#d1d5db}.rating-text{color:#6b7280;font-weight:500}.book-pricing{display:flex;align-items:center;gap:1rem;margin:1rem 0}.pricing-sale{display:flex;align-items:center;gap:1rem}.current-price{font-size:2rem;font-weight:700;color:#1e293b}.original-price{font-size:1.5rem;color:#9ca3af;text-decoration:line-through}.sale-price{font-size:2rem;font-weight:700;color:#dc2626}.discount-badge{background:linear-gradient(135deg,#ea580c,#dc2626);color:#fff;padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:600}.book-meta{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem;background:#f8fafc;border-radius:1rem;border:1px solid #e2e8f0}.meta-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f1f5f9}.meta-item:last-child{border-bottom:none}.meta-label{font-weight:500;color:#6b7280}.meta-value{font-weight:600;color:#1f2937}.meta-value.in-stock{color:#059669}.meta-value.out-of-stock{color:#ef4444}.purchase-section{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;background:#f8fafc;border-radius:1rem;border:2px solid #e2e8f0}.quantity-selector{display:flex;align-items:center;gap:1rem}.quantity-label{font-weight:500;color:#374151}.quantity-select{padding:.5rem .75rem;border:2px solid #e2e8f0;border-radius:.5rem;background:#fff;color:#374151;font-weight:500;cursor:pointer}.purchase-buttons{display:flex;gap:1rem}.add-to-cart-btn,.reserve-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 1.5rem;border:none;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s ease}.add-to-cart-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.add-to-cart-btn:hover{box-shadow:0 6px 20px #2563eb4d;transform:translateY(-2px)}.reserve-btn{background:#fff;color:#2563eb;border:2px solid #2563eb}.reserve-btn:hover{background:#2563eb;color:#fff}.shipping-info{display:flex;align-items:center;gap:.5rem;color:#059669;font-size:.875rem;font-weight:500}.out-of-stock-section{padding:1.5rem;background:#fef2f2;border:2px solid #fecaca;border-radius:1rem;text-align:center}.out-of-stock-message{color:#dc2626;font-weight:600;margin:0 0 1rem}.notify-btn{background:linear-gradient(135deg,#6b7280,#4b5563);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease}.notify-btn:hover{box-shadow:0 4px 12px #6b72804d}.book-details-tabs{background:#fff;border-radius:1.5rem;overflow:hidden;box-shadow:0 4px 12px #00000014}.tabs-header{display:flex;background:#f8fafc;border-bottom:1px solid #e2e8f0}.tab-btn{flex:1;padding:1rem 2rem;background:none;border:none;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s ease;border-bottom:3px solid transparent}.tab-btn.active{color:#2563eb;background:#fff;border-bottom-color:#2563eb}.tab-btn:hover:not(.active){color:#374151;background:#2563eb0d}.tabs-content{padding:2rem}.description-content h3{font-size:1.5rem;font-weight:600;color:#1e293b;margin:0 0 1rem}.description-content p{line-height:1.7;color:#475569;margin:0 0 2rem;font-size:1.125rem}.book-specs h4{font-size:1.25rem;font-weight:600;color:#1e293b;margin:0 0 1rem}.specs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.spec-item{display:flex;justify-content:space-between;padding:.75rem;background:#f8fafc;border-radius:.5rem}.spec-label{font-weight:500;color:#6b7280}.spec-value{font-weight:600;color:#1f2937}.reviews-content{min-height:200px}.reviews-list{display:flex;flex-direction:column;gap:1.5rem}.review-item{padding:1.5rem;background:#f8fafc;border-radius:1rem;border:1px solid #e2e8f0}.review-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.reviewer-name{font-weight:600;color:#1f2937}.review-rating{display:flex;gap:.125rem}.review-date{color:#6b7280;font-size:.875rem;margin-left:auto}.review-comment{line-height:1.6;color:#475569;margin:0}.no-reviews{text-align:center;color:#6b7280;padding:2rem}.no-reviews p{margin:0 0 .5rem}.review-form-section{margin-bottom:2rem}.write-review-btn{width:100%;padding:1rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s;margin-bottom:1.5rem}.write-review-btn:hover{background:#2563eb;transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.user-review-card{background:#eff6ff;border:2px solid #3b82f6;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.user-review-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.user-review-header h4{margin:0;color:#1e40af;font-size:1.125rem}.user-review-actions{display:flex;gap:.5rem}.edit-review-btn,.delete-review-btn{padding:.5rem;background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:all .2s;color:#6b7280}.edit-review-btn:hover{background:#f3f4f6;color:#3b82f6;border-color:#3b82f6}.delete-review-btn:hover{background:#fee;color:#dc2626;border-color:#dc2626}.login-prompt{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;padding:2rem;text-align:center;margin-bottom:2rem}.login-prompt p{margin:0;color:#475569;font-size:1rem}.login-prompt a{color:#3b82f6;font-weight:600;text-decoration:none}.login-prompt a:hover{text-decoration:underline}.reviews-summary{margin-bottom:2rem}.reviews-summary h3{font-size:1.5rem;font-weight:600;color:#1e293b;margin:0 0 1rem}.average-rating-display{display:flex;align-items:center;gap:1.5rem;background:#f8fafc;padding:1.5rem;border-radius:12px;margin-bottom:1.5rem}.large-rating{font-size:3rem;font-weight:700;color:#fbbf24;line-height:1}.rating-details{display:flex;flex-direction:column;gap:.5rem}.rating-details .stars{display:flex;gap:.25rem}.rating-details span{color:#6b7280;font-size:.875rem}@media (max-width: 1024px){.book-detail-content{grid-template-columns:1fr;gap:2rem}.book-title{font-size:2rem}}@media (max-width: 768px){.book-detail{padding:1rem 0}.book-detail-content{padding:1.5rem}.book-title{font-size:1.75rem}.book-author{font-size:1.125rem}.current-price,.sale-price{font-size:1.5rem}.original-price{font-size:1.25rem}.purchase-buttons{flex-direction:column}.specs-grid{grid-template-columns:1fr}.tabs-header{flex-direction:column}.tab-btn{border-bottom:none;border-right:3px solid transparent}.tab-btn.active{border-right-color:#2563eb;border-bottom:none}}@media (max-width: 480px){.container{padding:0 .75rem}.book-detail-content{padding:1rem}.book-title{font-size:1.5rem}.book-actions{flex-direction:column}.purchase-section,.tabs-content{padding:1rem}}.dark .book-detail{background:#111827}.dark .book-detail-content,.dark .book-details-tabs,.dark .book-meta,.dark .purchase-section,.dark .login-prompt,.dark .average-rating-display,.dark .spec-item,.dark .review-item{background:#1f2937;border-color:#374151}.dark .book-title,.dark .current-price,.dark .spec-value,.dark .meta-value,.dark .reviewer-name,.dark .reviews-summary h3,.dark .description-content h3,.dark .book-specs h4,.dark .user-review-header h4{color:#f3f4f6}.dark .book-author,.dark .meta-label,.dark .spec-label,.dark .quantity-label,.dark .description-content p,.dark .review-comment,.dark .review-date,.dark .login-prompt p,.dark .rating-details span{color:#9ca3af}.dark .meta-item,.dark .tabs-header{border-color:#374151}.dark .tabs-header{background:#111827}.dark .tab-btn{color:#9ca3af}.dark .tab-btn:hover:not(.active){background:#374151;color:#f3f4f6}.dark .tab-btn.active{background:#1f2937;color:#60a5fa;border-bottom-color:#60a5fa}.dark .quantity-select{background:#374151;color:#f3f4f6;border-color:#4b5563}.dark .wishlist-btn,.dark .share-btn{background:#1f2937;border-color:#4b5563;color:#e5e7eb}.dark .wishlist-btn:hover,.dark .share-btn:hover{background:#374151;border-color:#60a5fa;color:#60a5fa}.dark .not-found h1{color:#f3f4f6}.dark .no-reviews{color:#9ca3af}.dark .user-review-card{background:#1e3a8a;border-color:#2563eb}.dark .user-review-header h4{color:#93c5fd}.dark .edit-review-btn,.dark .delete-review-btn{background:#374151;border-color:#4b5563;color:#9ca3af}.dark .edit-review-btn:hover{background:#4b5563;color:#60a5fa}.dark .delete-review-btn:hover{background:#451a1a;color:#f87171}.dark .meta-value.in-stock{color:#34d399}.dark .add-to-cart-btn,.dark-mode .add-to-cart-btn,.dark .write-review-btn,.dark-mode .write-review-btn{color:#fff!important}.checkout-form-container{max-width:800px;margin:0 auto;padding:2rem 0}.checkout-form{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:2rem}.checkout-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid #e5e7eb}.checkout-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.checkout-section .section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;color:var(--primary-color)}.checkout-section .section-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#1e293b}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.form-group{display:flex;flex-direction:column}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151;font-size:.875rem}.form-input,.form-textarea{width:100%;padding:.75rem;border:1px solid #94a3b8!important;background-color:#fff;border-radius:8px;font-size:.95rem;transition:all .2s;box-shadow:0 1px 2px #0000000d}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.form-textarea{resize:vertical;font-family:inherit}.payment-methods{display:flex;flex-direction:column;gap:1rem}.payment-method{position:relative;display:flex;align-items:center;padding:1.25rem;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;transition:all .2s;background:#fff}.payment-method:hover{border-color:var(--primary-color);background:#f8fafc}.payment-method.selected{border-color:var(--primary-color);background:#eff6ff}.payment-method input[type=radio]{position:absolute;opacity:0;width:0;height:0}.payment-content{display:flex;align-items:center;gap:1rem;width:100%}.payment-content svg{color:var(--primary-color);flex-shrink:0}.paypal-icon{width:24px;height:24px;background:#003087;color:#fff;border-radius:4px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;flex-shrink:0}.payment-title{font-weight:600;color:#1e293b;margin-bottom:.25rem}.payment-subtitle{font-size:.875rem;color:#64748b}.checkout-summary{background:#f9fafb;padding:1.5rem;border-radius:10px;margin-top:2rem}.checkout-summary h3{margin:0 0 1rem;font-size:1.125rem;color:#1e293b}.summary-line{display:flex;justify-content:space-between;padding:.5rem 0;font-size:.95rem;color:#4b5563}.summary-line.total{margin-top:.75rem;padding-top:.75rem;border-top:2px solid #e5e7eb;font-size:1.25rem;font-weight:600;color:#1e293b}.checkout-actions{display:flex;gap:1rem;margin-top:2rem}.btn-cancel,.btn-confirm{flex:1;padding:1rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel{background:#fff;color:#6b7280;border:2px solid #e5e7eb}.btn-cancel:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.btn-confirm{background-color:#2563eb!important;color:#fff!important;border:1px solid #2563eb!important;font-weight:700;box-shadow:0 4px 6px #2563eb4d}.btn-confirm:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 8px #3b82f64d}.btn-cancel:disabled,.btn-confirm:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.checkout-form-container{padding:1rem}.checkout-form{padding:1.5rem}.form-grid{grid-template-columns:1fr}.checkout-actions{flex-direction:column}.payment-content{gap:.75rem}.payment-title{font-size:.95rem}.payment-subtitle{font-size:.8rem}}.dark-mode .checkout-form{background:#1e293b;border:1px solid #334155;box-shadow:0 4px 6px -1px #00000080}.dark-mode .checkout-section .section-header h3{color:#f1f5f9}.dark-mode .form-group label{color:#e2e8f0}.dark-mode .form-input,.dark-mode .form-textarea{background:#0f172a;border-color:#334155;color:#f1f5f9}.dark-mode .form-input:focus,.dark-mode .form-textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa1a}.dark-mode .payment-method:hover{background:#1e293b}.dark-mode .payment-method.selected{background:#2563eb1a;border-color:var(--primary-color)}.dark-mode .summary-line.total{border-top-color:#334155;color:#f1f5f9}.dark-mode .btn-cancel{background:transparent;border-color:#475569;color:#cbd5e1}.dark-mode .btn-cancel:hover:not(:disabled){background:#1e293b;border-color:#64748b;color:#f1f5f9}.shipping-methods-container{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.shipping-option{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid #e2e8f0;border-radius:8px;background-color:#fff;cursor:pointer;transition:all .2s ease-in-out}.shipping-option:hover{border-color:#cbd5e1;background-color:#f8fafc}.shipping-option.selected{border-color:var(--primary-color);background-color:#eff6ff;box-shadow:0 0 0 1px var(--primary-color)}.shipping-option-details{display:flex;flex-direction:column;gap:.25rem}.shipping-option-title{font-weight:600;color:#1e293b;font-size:1rem}.shipping-option-subtitle{font-size:.875rem;color:#64748b}.shipping-option-price{font-weight:600;color:#1e293b;font-size:1rem}.shipping-option-price.free{color:#16a34a}.dark-mode .shipping-option{background-color:#0f172a;border-color:#334155}.dark-mode .shipping-option:hover{background-color:#1e293b;border-color:#475569}.dark-mode .shipping-option.selected{background-color:#3b82f61a;border-color:var(--primary-color)}.dark-mode .shipping-option-title{color:#f1f5f9}.dark-mode .shipping-option-subtitle{color:#94a3b8}.dark-mode .shipping-option-price{color:#f1f5f9}.dark-mode .shipping-option-price.free{color:#4ade80}.dark-mode .payment-method:hover{background:#1e293b;border-color:#60a5fa}.dark-mode .payment-method.selected{background:#2563eb33;border-color:#60a5fa}.dark-mode .payment-title{color:#f1f5f9}.dark-mode .payment-subtitle{color:#94a3b8}.dark-mode .checkout-summary{background:#0f172a;border:1px solid #334155}.dark-mode .checkout-summary h3{color:#f1f5f9}.dark-mode .summary-line{color:#cbd5e1}.dark-mode .summary-line.total{color:#f1f5f9;border-top-color:#334155}.dark-mode .btn-cancel{background:#1e293b;color:#94a3b8;border-color:#334155}.dark-mode .btn-cancel:hover:not(:disabled){background:#334155;color:#f1f5f9;border-color:#475569}.dark-mode .btn-confirm{background-color:#10b981!important;color:#fff!important;border:1px solid #10b981!important;box-shadow:0 4px 6px -1px #0006}.dark-mode .btn-confirm:hover:not(:disabled){background-color:#059669!important;border-color:#059669!important;box-shadow:0 10px 15px -3px #00000080}.dark-mode select.form-input{color:#f1f5f9!important;opacity:1}.dark-mode select.form-input option{color:#f1f5f9;background-color:#0f172a}.cart{min-height:calc(100vh - 70px);background:#fafafa;padding:2rem 0}.cart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:#2563eb;text-decoration:none;font-weight:500;padding:.75rem 1rem;border-radius:.75rem;transition:all .2s ease}.cart-title{font-size:2.5rem;font-weight:700;color:#1e293b;margin:0}.clear-cart-btn{display:flex;align-items:center;gap:.5rem;background:none;border:2px solid #ef4444;color:#ef4444;padding:.75rem 1rem;border-radius:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease}.clear-cart-btn:hover{background:#ef4444;color:#fff}.empty-cart{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:400px;padding:2rem}.empty-cart-icon{color:#d1d5db;margin-bottom:2rem}.empty-cart-title{font-size:2rem;font-weight:600;color:#374151;margin:0 0 1rem}.empty-cart-subtitle{font-size:1.125rem;color:#6b7280;margin:0 0 2rem;line-height:1.6;max-width:400px}.shop-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:1rem 2rem;border-radius:1rem;text-decoration:none;font-weight:600;transition:all .3s ease}.shop-btn:hover{box-shadow:0 6px 20px #2563eb4d;transform:translateY(-2px);color:#fff}.cart-content{display:grid;grid-template-columns:2fr 1fr;gap:2rem}.cart-items{display:flex;flex-direction:column;gap:1rem}.cart-item{background:#fff;padding:1.5rem;border-radius:1rem;box-shadow:0 4px 12px #00000014;display:grid;grid-template-columns:100px 1fr auto auto auto auto;gap:1rem;align-items:center}.item-image{width:100px;height:120px;border-radius:.5rem;overflow:hidden}.item-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.item-details{display:flex;flex-direction:column;gap:.25rem}.item-title{font-size:1.125rem;font-weight:600;color:#1f2937;text-decoration:none;transition:color .2s ease}.item-title:hover{color:#2563eb}.item-author{color:#6b7280;margin:0;font-size:.875rem}.item-category{color:#2563eb;font-size:.75rem;font-weight:500;margin:0}.item-isbn{color:#9ca3af;font-size:.75rem;margin:0}.item-price{text-align:center}.unit-price{font-size:1.125rem;font-weight:600;color:#1f2937}.quantity-controls{display:flex;align-items:center;gap:.5rem;background:#f8fafc;padding:.5rem;border-radius:.75rem;border:1px solid #e2e8f0}.quantity-btn{width:32px;height:32px;background:#fff;border:1px solid #d1d5db;border-radius:.375rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.quantity-btn:hover:not(:disabled){border-color:#2563eb;color:#2563eb}.quantity-btn:disabled{opacity:.5;cursor:not-allowed}.quantity{min-width:32px;text-align:center;font-weight:600;color:#1f2937}.item-total{text-align:center}.total-price{font-size:1.25rem;font-weight:700;color:#1f2937}.remove-btn{background:none;border:none;color:#ef4444;cursor:pointer;padding:.5rem;border-radius:.375rem;transition:all .2s ease}.remove-btn:hover{background:#ef44441a}.cart-summary{position:sticky;top:2rem;height:-moz-fit-content;height:fit-content}.summary-card{background:#fff;padding:2rem;border-radius:1.5rem;box-shadow:0 4px 12px #00000014;border:1px solid #e2e8f0}.summary-title{font-size:1.5rem;font-weight:700;color:#1e293b;margin:0 0 1.5rem}.summary-details{display:flex;flex-direction:column;gap:1rem}.summary-row{display:flex;justify-content:space-between;align-items:center;color:#374151}.summary-row span:first-child{font-weight:500}.summary-row span:last-child{font-weight:600}.summary-divider{border:none;border-top:2px solid #f1f5f9;margin:.5rem 0}.total-row{font-size:1.25rem;font-weight:700;color:#1e293b;padding-top:.5rem}.shipping-notice{background:linear-gradient(135deg,#dbeafe,#bfdbfe);padding:1rem;border-radius:.75rem;text-align:center;margin:1rem 0}.shipping-notice p{color:#1e40af;font-weight:500;margin:0;font-size:.875rem}.checkout-btn{width:100%;background:linear-gradient(135deg,#059669,#047857);color:#fff;border:none;padding:1rem 1.5rem;border-radius:1rem;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:1.5rem}.checkout-btn:hover{box-shadow:0 6px 20px #0596694d;transform:translateY(-2px)}.security-badges{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #f1f5f9}.security-badges span{color:#6b7280;font-size:.75rem;text-align:center}@media (max-width: 1024px){.cart-content{grid-template-columns:1fr;gap:1.5rem}.cart-summary{order:-1;position:static}}@media (max-width: 768px){.cart{padding:1rem 0}.cart-header{flex-direction:column;align-items:stretch;text-align:center}.cart-title{font-size:2rem;order:-1}.back-link,.clear-cart-btn{align-self:center}.cart-item{grid-template-columns:80px 1fr;gap:1rem;grid-template-areas:"image details" "image price" "controls controls" "total remove"}.item-image{grid-area:image;width:80px;height:100px}.item-details{grid-area:details}.item-price{grid-area:price;text-align:right;align-self:end}.quantity-controls{grid-area:controls;justify-self:start}.item-total{grid-area:total;text-align:left;align-self:center}.remove-btn{grid-area:remove;justify-self:end;align-self:center}.summary-card{padding:1.5rem}}@media (max-width: 480px){.container{padding:0 .75rem}.cart-item{padding:1rem;grid-template-columns:1fr;grid-template-areas:"image" "details" "price" "controls" "total" "remove";text-align:center}.item-image{width:120px;height:150px;justify-self:center}.quantity-controls,.remove-btn{justify-self:center}.summary-card{padding:1rem}.checkout-btn{padding:.875rem 1.25rem}}.checkout-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;overflow-y:auto}.checkout-modal{background:#fff;border-radius:16px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.checkout-overlay{padding:1rem}.checkout-modal{max-height:95vh}}.dark-mode .cart{background:#0f172a}.dark-mode .cart-title,.dark-mode .empty-cart-title{color:#f1f5f9}.dark-mode .empty-cart-subtitle{color:#94a3b8}.dark-mode .cart-item{background:#1e293b;box-shadow:0 4px 12px #0003}.dark-mode .item-title{color:#f1f5f9}.dark-mode .item-title:hover{color:#60a5fa}.dark-mode .item-author{color:#94a3b8}.dark-mode .unit-price,.dark-mode .total-price,.dark-mode .quantity{color:#f1f5f9}.dark-mode .quantity-controls{background:#0f172a;border-color:#334155}.dark-mode .quantity-btn{background:#1e293b;border-color:#334155;color:#f1f5f9}.dark-mode .quantity-btn:not(:disabled):hover{border-color:#60a5fa;color:#60a5fa}.dark-mode .summary-card{background:#1e293b;border-color:#334155}.dark-mode .summary-title{color:#f1f5f9}.dark-mode .summary-row{color:#e2e8f0}.dark-mode .summary-divider{border-top-color:#334155}.dark-mode .total-row{color:#f1f5f9}.dark-mode .checkout-modal{background:#1e293b}.dark-mode .shop-btn{color:#fff!important}.dark-mode .clear-cart-btn{border-color:#ef4444;color:#ef4444}.dark-mode .clear-cart-btn:hover{background:#ef444433;color:#fca5a5}.dark-mode .back-link{background-color:#1e293b;color:#60a5fa;border:1px solid #334155}.dark-mode .back-link:hover{background-color:#334155;color:#93c5fd}.dark-mode .checkout-btn{color:#fff!important;box-shadow:0 4px 12px #05966966}.dark-mode .remove-btn{color:#f87171}.dark-mode .remove-btn:hover{background:#f871711a;color:#fca5a5}.custom-shipping-selector{position:relative;width:100%}.selector-trigger{width:100%;padding:12px;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:.95rem;transition:all .2s ease;color:#1e293b}.selector-trigger:hover{border-color:#cbd5e1}.selector-options{position:absolute;top:100%;left:0;width:100%;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-top:4px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;z-index:50;overflow:hidden}.selector-option{padding:12px;cursor:pointer;transition:background-color .15s ease;border-bottom:1px solid #f1f5f9}.selector-option:last-child{border-bottom:none}.selector-option:hover{background-color:#f8fafc}.selector-option.selected{background-color:#eff6ff;color:#2563eb}.option-content{display:flex;flex-direction:column;gap:2px}.option-title-row{display:flex;justify-content:space-between;align-items:center;font-weight:500}.option-subtitle{font-size:.85rem;color:#64748b}.dark-mode .selector-trigger{background-color:#1e293b;border-color:#334155;color:#f8fafc}.dark-mode .selector-trigger:hover{border-color:#475569}.dark-mode .selector-options{background-color:#1e293b;border-color:#334155;box-shadow:0 4px 6px -1px #00000080}.dark-mode .selector-option{border-bottom-color:#334155;color:#e2e8f0}.dark-mode .selector-option:hover{background-color:#334155}.dark-mode .selector-option.selected{background-color:#2563eb33;color:#60a5fa}.dark-mode .option-subtitle{color:#94a3b8}.wishlist{min-height:calc(100vh - 70px);background:#fafafa;padding:2rem 0}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.wishlist-header{margin-bottom:2rem}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:#2563eb;text-decoration:none;font-weight:500;padding:.75rem 1rem;border-radius:.75rem;transition:all .2s ease;margin-bottom:1rem}.back-link:hover{background:#2563eb1a}.header-content{text-align:center}.wishlist-title{font-size:2.5rem;font-weight:700;color:#1e293b;margin:0}.wishlist-subtitle{font-size:1.125rem;color:#64748b;margin:.5rem 0 0}.empty-wishlist{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:400px;padding:2rem}.empty-wishlist-icon{color:#f87171;margin-bottom:2rem}.empty-wishlist-title{font-size:2rem;font-weight:600;color:#374151;margin:0 0 1rem}.empty-wishlist-subtitle{font-size:1.125rem;color:#6b7280;margin:0 0 2rem;line-height:1.6;max-width:400px}.browse-btn{background:linear-gradient(135deg,#f87171,#ef4444);color:#fff;padding:1rem 2rem;border-radius:1rem;text-decoration:none;font-weight:600;transition:all .3s ease}.browse-btn:hover{box-shadow:0 6px 20px #ef44444d;transform:translateY(-2px);color:#fff}.wishlist-actions{display:flex;justify-content:center;margin-bottom:2rem}.move-all-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.move-all-btn:hover:not(:disabled){box-shadow:0 4px 12px #2563eb4d;transform:translateY(-2px)}.move-all-btn:disabled{background:#9ca3af;cursor:not-allowed;transform:none;box-shadow:none}.wishlist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;margin-bottom:3rem}.wishlist-item{position:relative}.wishlist-item-actions{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000000e6);padding:2rem 1rem 1rem;border-radius:0 0 1rem 1rem;display:flex;gap:.75rem;opacity:0;transition:opacity .3s ease}.wishlist-item:hover .wishlist-item-actions{opacity:1}.move-to-cart-btn,.remove-from-wishlist-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.875rem}.move-to-cart-btn{background:#2563eb;color:#fff}.move-to-cart-btn:hover{background:#1d4ed8;transform:translateY(-1px)}.remove-from-wishlist-btn{background:#ef4444e6;color:#fff}.remove-from-wishlist-btn:hover{background:#ef4444;transform:translateY(-1px)}.out-of-stock-label{flex:1;text-align:center;padding:.75rem;background:#6b7280e6;color:#fff;border-radius:.5rem;font-weight:600;font-size:.875rem}.wishlist-stats{display:flex;justify-content:center}.stats-card{background:#fff;padding:2rem;border-radius:1.5rem;box-shadow:0 4px 12px #00000014;border:1px solid #e2e8f0;max-width:600px;width:100%}.stats-title{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0 0 1.5rem;text-align:center}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.stat-item{display:flex;flex-direction:column;align-items:center;padding:1rem;background:#f8fafc;border-radius:1rem;border:1px solid #e2e8f0}.stat-value{font-size:1.75rem;font-weight:700;color:#1e293b}.stat-label{font-size:.875rem;color:#6b7280;font-weight:500;text-align:center}@media (max-width: 768px){.wishlist{padding:1rem 0}.wishlist-title{font-size:2rem}.wishlist-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.wishlist-item-actions{opacity:1;position:static;background:#fff;padding:1rem;border-radius:0;border-top:1px solid #f1f5f9}.stats-grid{gap:.75rem}.stat-item{padding:.75rem}.stat-value{font-size:1.5rem}}@media (max-width: 480px){.container{padding:0 .75rem}.wishlist-grid{grid-template-columns:1fr;gap:1rem}.stats-card{padding:1.5rem}.stats-grid{grid-template-columns:1fr}}.dark-mode .wishlist{background:#0f172a}.dark-mode .wishlist-title{color:#f1f5f9}.dark-mode .wishlist-subtitle{color:#94a3b8}.dark-mode .empty-wishlist-title{color:#f1f5f9}.dark-mode .empty-wishlist-subtitle{color:#94a3b8}.dark-mode .stats-card{background:#1e293b;border-color:#334155}.dark-mode .stats-title{color:#f1f5f9}.dark-mode .stat-item{background:#0f172a;border-color:#334155}.dark-mode .back-link{color:#60a5fa}.dark-mode .back-link:hover{background:#60a5fa1a}@media (max-width: 768px){.dark-mode .wishlist-item-actions{background:#1e293b;border-top-color:#334155}}.dark-mode .browse-btn{color:#fff!important}.login{min-height:calc(100vh - 70px);background:linear-gradient(135deg,#f0f9ff,#e0f2fe);display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.login-container{width:100%;max-width:500px}.login-card{background:#fff;border-radius:1.5rem;padding:3rem;box-shadow:0 20px 40px #0000001a;border:1px solid #e2e8f0}.login-header{text-align:center;margin-bottom:2rem}.login-title{font-size:2rem;font-weight:700;color:#1e293b;margin:0 0 1rem}.login-subtitle{color:#64748b;margin:0;line-height:1.5}.login-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.75rem}.login-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;padding:1rem 1.5rem;border-radius:1rem;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem}.login-btn:hover:not(:disabled){box-shadow:0 6px 20px #2563eb4d;transform:translateY(-2px)}.login-btn:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:none}.login-footer{margin-top:2rem;text-align:center;display:flex;flex-direction:column;gap:1rem}.forgot-link{color:#2563eb;text-decoration:none;font-weight:500;transition:color .2s ease}.forgot-link:hover{color:#1d4ed8}.signup-prompt{color:#6b7280}.signup-link{color:#2563eb;text-decoration:none;font-weight:600;transition:color .2s ease}.signup-link:hover{color:#1d4ed8}.demo-accounts{margin-top:2rem;padding-top:2rem;border-top:1px solid #f1f5f9}.demo-title{font-size:1rem;font-weight:600;color:#374151;margin:0 0 1rem;text-align:center}.demo-list{display:flex;flex-direction:column;gap:.75rem}.demo-account{background:#f0f9ff;padding:.75rem 1rem;border-radius:.75rem;border:1px solid #bfdbfe;font-size:.875rem;color:#1e40af;text-align:center}@media (max-width: 768px){.login-card{padding:2rem}.login-title{font-size:1.75rem}.demo-list{gap:.5rem}.demo-account{padding:.625rem .75rem}}.dark-mode .login{background:linear-gradient(135deg,#0f172a,#020617)}.dark-mode .login-card{background:#1e293b;border-color:#334155}.dark-mode .login-title{color:#f1f5f9}.dark-mode .login-subtitle{color:#94a3b8}.dark-mode .login-btn{background:linear-gradient(135deg,#3b82f6,#2563eb)}.dark-mode .login-btn:hover:not(:disabled){box-shadow:0 6px 20px #3b82f666}.dark-mode .signup-prompt{color:#94a3b8}.dark-mode .demo-accounts{border-top-color:#334155}.dark-mode .demo-title{color:#cbd5e1}.dark-mode .demo-account{background:#1e3a5f;border-color:#1e40af;color:#93c5fd}.dark-mode .forgot-link,.dark-mode .signup-link{color:#60a5fa}.dark-mode .forgot-link:hover,.dark-mode .signup-link:hover{color:#93c5fd}.dark-mode .login-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}@media (max-width: 480px){.login{padding:1rem .75rem}.login-card{padding:1.5rem}.login-title{font-size:1.5rem}.form-input{padding:.875rem 1rem}.login-btn{padding:.875rem 1.25rem}}.register{min-height:calc(100vh - 70px);background:linear-gradient(135deg,#f0f9ff,#e0f2fe);display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.register-container{width:100%;max-width:500px}.register-card{background:#fff;border-radius:1.5rem;padding:3rem;box-shadow:0 20px 40px #0000001a;border:1px solid #e2e8f0}.register-header{text-align:center;margin-bottom:2rem}.register-title{font-size:2rem;font-weight:700;color:#1e293b;margin:0 0 1rem}.register-subtitle{color:#64748b;margin:0;line-height:1.5}.success-message-container{text-align:center;padding:2rem 0}.success-icon{width:80px;height:80px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;color:#fff;font-weight:700;animation:scaleIn .5s ease-out}.success-message{font-size:1.125rem;color:#1e293b;margin:1.5rem 0;line-height:1.6}.success-message strong{color:#2563eb}.success-instructions{color:#64748b;margin:1rem 0;line-height:1.6}.success-notice{background:#fef3c7;border:1px solid #fbbf24;border-radius:.75rem;padding:1rem;margin:1.5rem 0}.success-notice p{margin:0;color:#92400e;font-size:.875rem}.btn-back-to-login{width:100%;padding:.875rem 2rem;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;border-radius:.75rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:1.5rem}.btn-back-to-login:hover{transform:translateY(-2px);box-shadow:0 8px 20px #2563eb4d}.register-form{display:flex;flex-direction:column;gap:1.5rem}.form-label{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#374151;font-size:.875rem}.form-input{padding:1rem 1.25rem;border:2px solid #e2e8f0;border-radius:1rem;font-size:1rem;background:#f8fafc;transition:all .3s ease;color:#1f2937;width:100%}.form-input:focus{outline:none;border-color:#2563eb;background:#fff;box-shadow:0 0 0 4px #2563eb1a}.password-input-container{position:relative}.password-toggle{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:.375rem;transition:color .2s ease}.password-toggle:hover{color:#374151}.password-hint{color:#6b7280;font-size:.75rem;margin:0}.error-message{background:#fef2f2;color:#dc2626;padding:1rem;border-radius:.75rem;border:1px solid #fecaca;font-weight:500;text-align:center}.register-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;padding:1rem 1.5rem;border-radius:1rem;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem}.register-btn:hover:not(:disabled){box-shadow:0 6px 20px #2563eb4d;transform:translateY(-2px)}.register-btn:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:none}.register-footer{margin-top:2rem;text-align:center}.login-prompt{color:#6b7280}.login-link{color:#fff;text-decoration:none;font-weight:600;transition:color .2s ease}.login-link-register{color:#2563eb;border-radius:.5rem;font-weight:600;transition:all .2s ease}.login-link:hover{color:#1d4ed8}.terms-notice{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #f1f5f9;text-align:center}.terms-notice p{color:#6b7280;font-size:.875rem;line-height:1.5;margin:0}.terms-link,.privacy-link{color:#2563eb;text-decoration:none;transition:color .2s ease}.terms-link:hover,.privacy-link:hover{color:#1d4ed8}@media (max-width: 768px){.register-card{padding:2rem}.register-title{font-size:1.75rem}}.dark-mode .register{background:linear-gradient(135deg,#0f172a,#020617)}.dark-mode .register-card{background:#1e293b;border-color:#334155}.dark-mode .register-title{color:#f1f5f9}.dark-mode .register-subtitle{color:#94a3b8}.dark-mode .form-label{color:#cbd5e1}.dark-mode .form-input{background:#0f172a;border-color:#334155;color:#e2e8f0}.dark-mode .form-input::-moz-placeholder{color:#64748b}.dark-mode .form-input::placeholder{color:#64748b}.dark-mode .form-input:focus{background:#0f172a;border-color:#60a5fa;box-shadow:0 0 0 4px #60a5fa33}.dark-mode .password-toggle{color:#94a3b8}.dark-mode .password-toggle:hover{color:#cbd5e1}.dark-mode .password-hint{color:#94a3b8}.dark-mode .error-message{background:#7f1d1d;color:#fca5a5;border-color:#991b1b}@media (max-width: 640px){.form-row{grid-template-columns:1fr}}.dark-mode .register-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.dark-mode .register-btn:hover:not(:disabled){box-shadow:0 6px 20px #3b82f666}.dark-mode .login-prompt{color:#94a3b8}.dark-mode .login-link-register{color:#60a5fa}.dark-mode .login-link-register:hover{color:#3b82f6}.dark-mode .terms-notice{border-top-color:#334155}.dark-mode .terms-notice p{color:#94a3b8}.dark-mode .terms-link,.dark-mode .privacy-link{color:#60a5fa}.dark-mode .terms-link:hover,.dark-mode .privacy-link:hover{color:#3b82f6}@media (max-width: 480px){.register{padding:1rem .75rem}.register-card{padding:1.5rem}.register-title{font-size:1.5rem}.form-input{padding:.875rem 1rem}.register-btn{padding:.875rem 1.25rem}}.books-manager-search{flex:1 1 300px;display:flex;gap:.5rem;align-items:center}.books-manager-search .search-input-wrapper{position:relative;flex-grow:1}.books-manager-search .admin-search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#9ca3af}.books-manager-search .admin-search-input{width:100%;padding-left:2.5rem}.books-manager-search .search-btn{background:var(--accent-color);color:#fff}:root:not(.dark-mode) .books-manager-search .admin-search-input{border:2px solid #e5e7eb}:root:not(.dark-mode) .books-manager-search .search-btn{color:#1f2937}:root:not(.dark-mode) .form-select{border:2px solid #e5e7eb}:root:not(.dark-mode) .books-manager{background:#f1f5f9}:root:not(.dark-mode) .filters-container{background:#fff!important;border-color:#cbd5e1!important;box-shadow:0 2px 4px #0000000f!important}:root:not(.dark-mode) .admin-book-row{background:#fff!important;border-color:#cbd5e1!important}:root:not(.dark-mode) .table-header{background:#f8fafc!important;border-color:#cbd5e1!important}@media (max-width: 768px){.books-manager-search{flex-direction:column;width:100%;flex:1 1 100%;align-items:stretch}.books-manager-search .search-input-wrapper{width:100%}.books-manager-search .search-btn{width:100%;justify-content:center}}.contenedor-tabla-facturas{background:var(--color-surface);border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);overflow-x:auto}.tabla-facturas{width:100%;border-collapse:collapse;min-width:800px}.tabla-facturas thead{background:var(--color-background)}.tabla-facturas th{padding:var(--spacing-4) var(--spacing-3);text-align:left;font-weight:600;font-size:.875rem;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border)}.tabla-facturas tbody tr{border-bottom:1px solid var(--color-border);transition:background-color .2s ease}.tabla-facturas tbody tr:hover{background:var(--color-background)}.tabla-facturas td{padding:var(--spacing-3);font-size:.875rem;color:var(--color-text)}.numero-factura{font-family:Courier New,monospace;font-weight:600;color:var(--color-primary)}.celda-estado{display:flex;align-items:center;gap:var(--spacing-2)}.badge-estado{padding:var(--spacing-1) var(--spacing-3);border-radius:var(--border-radius-full);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.badge-estado.status-paid{background:#d1fae5;color:#065f46}.badge-estado.status-pending{background:#fef3c7;color:#92400e}.badge-estado.status-cancelled{background:#fee2e2;color:#991b1b}.acciones-estado{position:relative}.btn-cambiar-estado{padding:var(--spacing-1);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:var(--color-text)}.btn-cambiar-estado:hover{background:var(--color-background);border-color:var(--color-primary);color:var(--color-primary)}.btn-cambiar-estado:active,.btn-cambiar-estado.activo{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.dropdown-estado{position:absolute;top:100%;left:0;margin-top:var(--spacing-1);background:#fff;border:2px solid #e5e7eb;border-radius:var(--border-radius-sm);box-shadow:0 10px 25px #00000026,0 4px 6px #0000001a;z-index:1000;min-width:200px;overflow:hidden}.dropdown-estado button{display:block;width:100%;padding:var(--spacing-3) var(--spacing-4);text-align:left;background:#fff;border:none;cursor:pointer;font-size:.875rem;font-weight:500;color:#374151;transition:all .2s ease}.dropdown-estado button:hover{background:#f3f4f6;color:#1f2937;padding-left:calc(var(--spacing-4) + 4px)}.dropdown-estado button:not(:last-child){border-bottom:1px solid #e5e7eb}.dropdown-estado button:first-child{color:#059669}.dropdown-estado button:first-child:hover{background:#d1fae5;color:#065f46}.dropdown-estado button:last-child{color:#dc2626}.dropdown-estado button:last-child:hover{background:#fee2e2;color:#991b1b}.monto-total{font-weight:600;color:var(--color-primary)}.botones-accion{display:flex;gap:var(--spacing-2);flex-direction:row;flex-wrap:nowrap}.btn-accion{padding:var(--spacing-2);background:transparent;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.btn-accion:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.btn-accion.btn-ver{color:var(--color-primary);border-color:var(--color-primary)}.btn-accion.btn-ver:hover{background:var(--color-primary);color:#fff}.btn-accion.btn-descargar{color:#059669;border-color:#059669}.btn-accion.btn-descargar:hover{background:#059669;color:#fff}.sin-facturas{padding:var(--spacing-8);text-align:center;color:var(--color-text-secondary)}.estado-cargando{padding:var(--spacing-8);text-align:center;color:var(--color-text-secondary);font-size:1rem}.dark-mode .contenedor-tabla-facturas{background:#1e293b;border-color:#334155}.dark-mode .tabla-facturas thead{background:#0f172a}.dark-mode .tabla-facturas th{color:#cbd5e1;border-bottom-color:#334155}.dark-mode .tabla-facturas tbody tr{border-bottom-color:#334155}.dark-mode .tabla-facturas tbody tr:hover{background:#0f172a}.dark-mode .tabla-facturas td,.dark-mode .cliente-factura,.dark-mode .fecha-factura{color:#f1f5f9}.dark-mode .numero-factura{color:#60a5fa}.dark-mode .monto-total{color:#34d399}.dark-mode .sin-facturas,.dark-mode .estado-cargando{color:#f1f5f9;font-weight:500}.dark-mode .btn-cambiar-estado{background:#0f172a;border-color:#334155;color:#f1f5f9}.dark-mode .btn-cambiar-estado:hover{background:#334155}.dark-mode .dropdown-estado{background:#1e293b;border-color:#475569}.dark-mode .dropdown-estado button{background:#1e293b;color:#cbd5e1;border-bottom-color:#334155}@media (max-width: 768px){.contenedor-tabla-facturas{background:transparent;box-shadow:none;overflow:visible}.tabla-facturas{min-width:0;display:block}.tabla-facturas thead{display:none}.tabla-facturas tbody{display:block;display:flex;flex-direction:column;gap:1rem}.tabla-facturas tbody tr{display:grid;grid-template-columns:1fr auto;grid-template-areas:"number status" "client client" "date total" "actions actions";gap:1rem;padding:1.25rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.tabla-facturas td{padding:0;border:none;display:block}.tabla-facturas td:nth-child(1){grid-area:number;font-size:1.1rem;justify-self:start;margin-bottom:.25rem}.tabla-facturas td:nth-child(4){grid-area:status;justify-self:end}.tabla-facturas td:nth-child(2){grid-area:client;font-size:.95rem;font-weight:500;color:var(--color-text);margin-bottom:.5rem}.tabla-facturas td:nth-child(2):before{content:"Cliente: ";font-weight:400;color:var(--color-text-secondary);margin-right:.25rem}.tabla-facturas td:nth-child(3){grid-area:date;font-size:.9rem;color:var(--color-text-secondary);align-self:end;display:flex;align-items:center;gap:.5rem}.tabla-facturas td:nth-child(3):before{content:"📅 ";opacity:.7}.tabla-facturas td:nth-child(5){grid-area:total;font-size:1.35rem;font-weight:800;justify-self:end;align-self:end;color:var(--color-primary)}.tabla-facturas td:nth-child(6){grid-area:actions;width:100%;margin-top:.75rem;padding-top:1rem;border-top:1px solid var(--color-border)}.botones-accion{display:flex;justify-content:center;gap:1rem;width:100%}.btn-accion{flex:1;padding:.75rem;justify-content:center;background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;transition:all .2s}.btn-accion:active{transform:scale(.98)}.btn-accion svg{width:20px;height:20px}.celda-estado{justify-content:flex-end}}.dark-mode .tabla-facturas tbody tr{background:#1e293b;border-color:#334155;box-shadow:0 4px 6px -1px #0000004d}.dark-mode .tabla-facturas td:nth-child(2){color:#f1f5f9}.dark-mode .tabla-facturas td:nth-child(2):before{color:#94a3b8}.dark-mode .tabla-facturas td:nth-child(3){color:#cbd5e1}.dark-mode .tabla-facturas td:nth-child(5){color:#fff}.dark-mode .btn-accion{background:#ffffff0d;border-color:#475569;color:#e2e8f0}.dark-mode .btn-accion.btn-ver:hover{background:#3b82f633;border-color:#3b82f6;color:#60a5fa}.dark-mode .btn-accion.btn-descargar:hover{background:#10b98133;border-color:#10b981;color:#34d399}.invoice-form{display:flex;flex-direction:column;gap:var(--spacing-6)}.form-section{padding:var(--spacing-4);background:var(--color-surface);border-radius:var(--border-radius-md);border:1px solid var(--color-border)}.form-section h3{margin:0 0 var(--spacing-4) 0;font-size:1.125rem;font-weight:600;color:var(--color-text)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-4)}.form-group label{font-size:.875rem;font-weight:500;color:var(--color-text)}.form-group input,.form-group textarea{padding:var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-size:.875rem;background:var(--color-background);color:var(--color-text);transition:all .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.form-group input.error,.form-group textarea.error{border-color:#ef4444}.error-message{font-size:.75rem;color:#ef4444}.form-select{padding:var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-size:.875rem;background:var(--color-background);color:var(--color-text);cursor:pointer}.order-selector,.add-item-form{margin-bottom:var(--spacing-4)}.btn-add-item{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:.5rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.875rem}.btn-add-item:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 6px #3b82f64d}.items-list{margin-top:var(--spacing-4);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);overflow:hidden}.items-table{width:100%;border-collapse:collapse}.items-table thead{background:var(--color-background)}.items-table th{padding:var(--spacing-3);text-align:left;font-size:.875rem;font-weight:600;color:var(--color-text-secondary)}.items-table td{padding:var(--spacing-3);border-top:1px solid var(--color-border);font-size:.875rem;color:var(--color-text)}.btn-remove{padding:var(--spacing-2);background:transparent;border:none;color:#ef4444;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-sm);transition:all .2s ease}.btn-remove:hover{background:#fee2e2}.invoice-summary{padding:var(--spacing-4);background:var(--color-background);border-radius:var(--border-radius-md);border:2px solid var(--color-border)}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-2) 0;font-size:.875rem;color:var(--color-text)}.summary-row.total{padding-top:var(--spacing-3);margin-top:var(--spacing-2);border-top:2px solid var(--color-border);font-size:1.125rem;font-weight:700;color:var(--color-primary)}.summary-amount{font-weight:600}.form-actions{display:flex;gap:var(--spacing-3);justify-content:flex-end;padding-top:var(--spacing-4)}.btn-cancel{padding:.75rem 1.5rem;background:#f3f4f6;border:1px solid #d1d5db;border-radius:.5rem;font-weight:500;color:#374151;cursor:pointer;transition:all .2s ease;font-size:.875rem}.btn-cancel:hover{background:#e5e7eb;border-color:#9ca3af}.btn-submit{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#3b82f6;color:#fff;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.875rem}.btn-submit:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 6px #3b82f64d}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.btn-add-item:disabled{opacity:.5;cursor:not-allowed;background:#9ca3af}.btn-add-item:disabled:hover{background:#9ca3af;transform:none;box-shadow:none}.helper-text{color:#64748b}.search-input-with-icon{padding-left:2.5rem!important}.search-icon{color:#9ca3af}.suggestion-title{color:#1e293b}.suggestion-subtitle,.no-results-text{color:#64748b}.items-list-header{color:#1e293b}.dark-mode .form-section{background:#0f172a;border-color:#475569}.dark-mode .form-section h3{color:#fff}.dark-mode .form-group label,.dark-mode .toggle-label,.dark-mode label{color:#cbd5e1!important}.dark-mode .helper-text{color:#94a3b8}.dark-mode .form-group input,.dark-mode .form-group textarea,.dark-mode .form-select,.dark-mode .search-input-with-icon{background-color:#0f172a!important;border:1px solid #64748b!important;color:#f1f5f9!important}.dark-mode .form-group input::-moz-placeholder{color:#94a3b8!important;opacity:1}.dark-mode .form-group input::placeholder{color:#94a3b8!important;opacity:1}.dark-mode .form-group input::-moz-placeholder,.dark-mode .form-group textarea::-moz-placeholder{color:#94a3b8!important;opacity:1}.dark-mode .form-group input::placeholder,.dark-mode .form-group textarea::placeholder{color:#94a3b8!important;opacity:1}.dark-mode .form-group input:focus,.dark-mode .form-group textarea:focus,.dark-mode .form-select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa26;background:#0f172a;color:#fff!important}.dark-mode .search-icon{color:#cbd5e1}.dark-mode .error-message{color:#fca5a5}.dark-mode .items-list{border-color:#475569}.dark-mode .items-list-header{color:#fff}.dark-mode .items-table thead{background:#0f172a}.dark-mode .items-table th{color:#cbd5e1}.dark-mode .items-table td{border-top-color:#334155;color:#fff}.dark-mode .btn-remove:hover{background:#7f1d1d}.dark-mode .invoice-summary{background:#0f172a;border-color:#475569}.dark-mode .summary-row{color:#fff}.dark-mode .btn-cancel{background:#334155;color:#cbd5e1;border-color:#475569}.dark-mode .btn-cancel:hover{background:#475569;border-color:#64748b}.dark-mode .autocomplete-suggestions{background:#1e293b;border-color:#475569}.dark-mode .suggestion-title{color:#fff}.dark-mode .suggestion-subtitle,.dark-mode .no-results-text{color:#94a3b8}.dark-mode .suggestion-item:hover{background-color:#0f172a}.dark-mode .btn-add-item{background-color:#3b82f6!important;color:#fff!important}.dark-mode .btn-add-item:hover:not(:disabled){background-color:#2563eb!important}.language-selector{display:flex;align-items:center;gap:.5rem}.language-selector label{font-size:.875rem;font-weight:500;color:var(--color-text);margin:0}.language-selector select{padding:.5rem 2rem .5rem 1rem;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-size:.875rem;background-color:var(--color-background);color:var(--color-text);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236b7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;background-size:1.5em 1.5em;min-width:120px}.dark-mode .language-selector label{color:#cbd5e1!important}.dark-mode .language-selector select{background-color:#1e293b;border-color:#475569;color:#fff!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23cbd5e1'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E")}.dark-mode .language-selector select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa26}.invoice-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.invoice-modal-content{background:#fff;border-radius:12px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideUp .3s ease;position:relative}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.invoice-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb;background:#fff;border-radius:12px 12px 0 0}.invoice-modal-header h2{margin:0;font-size:1.5rem;font-weight:700;color:#111827}.modal-close-btn{padding:.5rem;background:transparent;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:.375rem;color:#6b7280;transition:all .2s ease}.modal-close-btn:hover{background:#f3f4f6;color:#111827}.invoice-modal-body{padding:1.5rem;overflow-y:auto;background:#fff;border-radius:0 0 12px 12px}.dark-mode .invoice-modal-content{background:#1e293b;border:1px solid #334155;box-shadow:0 20px 25px -5px #00000080,0 10px 10px -5px #0003}.dark-mode .invoice-modal-header{background:linear-gradient(135deg,#0e7490,#0891b2);border-bottom-color:#334155}.dark-mode .invoice-modal-header h2{color:#f1f5f9}.dark-mode .modal-close-btn{color:#e2e8f0}.dark-mode .modal-close-btn:hover{background:#fff3;color:#fff}.dark-mode .invoice-modal-body{background:#1e293b}.invoice-detail-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.invoice-detail-modal{background:#fff;border-radius:12px;width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideUp .3s ease}.invoice-detail-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb;background:#fff}.invoice-detail-header h2{margin:0;font-size:1.5rem;font-weight:700;color:#111827}.header-actions{display:flex;gap:var(--spacing-3);align-items:center}.btn-download-detail{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);background:#059669;color:#fff;border:none;border-radius:var(--border-radius-sm);font-weight:500;cursor:pointer;font-size:.875rem;transition:all .2s ease}.btn-download-detail:hover{background:#047857;transform:translateY(-1px)}.invoice-detail-body{padding:var(--spacing-6);overflow-y:auto}.invoice-preview{background:#fff;padding:var(--spacing-8);border-radius:var(--border-radius-md);border:1px solid var(--color-border);color:#000}.company-header{display:flex;gap:var(--spacing-4);margin-bottom:var(--spacing-8);padding-bottom:var(--spacing-6);border-bottom:2px solid #e5e7eb}.company-logo{width:80px;height:80px;border-radius:var(--border-radius-sm);overflow:hidden}.company-logo img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;background:#fff}.company-info h3{margin:0 0 var(--spacing-2) 0;font-size:1.25rem;font-weight:700;color:#111827}.company-info p{margin:0;font-size:.875rem;color:#6b7280;line-height:1.5}.invoice-header-info{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-6)}.invoice-header-info h2{margin:0 0 var(--spacing-2) 0;font-size:2rem;font-weight:700;color:#111827}.invoice-number-large{font-size:1.25rem;font-weight:600;color:var(--color-primary);margin-bottom:var(--spacing-2)}.status-badge-large{display:inline-block;padding:var(--spacing-2) var(--spacing-4);border-radius:var(--border-radius-full);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.status-badge-large.status-paid{background:#d1fae5;color:#065f46}.status-badge-large.status-pending{background:#fef3c7;color:#92400e}.status-badge-large.status-cancelled{background:#fee2e2;color:#991b1b}.invoice-dates{text-align:right}.invoice-dates p{margin:0;font-size:.875rem;color:#6b7280;line-height:1.8}.customer-info{margin-bottom:var(--spacing-6);padding:var(--spacing-4);background:#f9fafb;border-radius:var(--border-radius-sm);border-left:4px solid var(--color-primary)}.customer-info h4{margin:0 0 var(--spacing-3) 0;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.customer-info p{margin:0;font-size:.875rem;color:#111827;line-height:1.8}.invoice-items{margin-bottom:var(--spacing-6)}.detail-items-table{width:100%;border-collapse:collapse;margin-top:var(--spacing-4)}.detail-items-table thead{background:#f9fafb}.detail-items-table th{padding:var(--spacing-3);text-align:left;font-size:.875rem;font-weight:600;color:#111827;border-bottom:2px solid #e5e7eb}.detail-items-table td{padding:var(--spacing-3);font-size:.875rem;color:#374151;border-bottom:1px solid #e5e7eb}.invoice-totals{display:flex;flex-direction:column;align-items:flex-end;margin-bottom:var(--spacing-6);padding:var(--spacing-4);background:#f9fafb;border-radius:var(--border-radius-sm)}.totals-row{display:flex;justify-content:space-between;min-width:280px;padding:var(--spacing-2) 0;font-size:.875rem;color:#374151}.totals-row.total{padding-top:var(--spacing-3);margin-top:var(--spacing-2);border-top:2px solid #e5e7eb;font-size:1.25rem;font-weight:700;color:var(--color-primary)}.payment-info{margin-bottom:var(--spacing-6);padding:var(--spacing-3);background:#eff6ff;border-radius:var(--border-radius-sm);border-left:4px solid #3b82f6}.payment-info p{margin:0;font-size:.875rem;color:#1e40af}.invoice-footer{text-align:center;padding-top:var(--spacing-6);border-top:1px solid #e5e7eb}.invoice-footer p{margin:0;font-size:.875rem;color:#6b7280;line-height:1.8}.footer-note{font-size:.75rem!important;font-style:italic;color:#9ca3af!important}@media (max-width: 768px){.invoice-detail-overlay{padding:0;align-items:flex-end}.invoice-detail-modal{max-height:100vh;height:100%;border-radius:0;width:100%;max-width:100%}.invoice-detail-header{flex-direction:column;gap:1rem;align-items:flex-start}.header-actions{width:100%;justify-content:space-between}.btn-download-detail{flex:1;justify-content:center;padding:12px}.invoice-detail-body{padding:1rem}.invoice-preview{padding:1rem;border:none}.company-header{flex-direction:column;text-align:center;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem}.invoice-header-info{flex-direction:column;gap:.5rem}.invoice-dates{text-align:left;margin-top:.5rem}.detail-items-table,.detail-items-table tbody,.detail-items-table tr,.detail-items-table td{display:block;width:100%}.detail-items-table thead{display:none}.detail-items-table tr{margin-bottom:1rem;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;background:#f8fafc;box-shadow:0 1px 2px #0000000d}.detail-items-table td{padding:.5rem 0;text-align:right;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f1f5f9}.detail-items-table td:last-child{border-bottom:none}.detail-items-table td:nth-of-type(2):before{content:"Cantidad";font-weight:600;color:#6b7280}.detail-items-table td:nth-of-type(3):before{content:"Precio";font-weight:600;color:#6b7280}.detail-items-table td:nth-of-type(4):before{content:"Total";font-weight:600;color:#6b7280}.detail-items-table td:nth-of-type(1){text-align:left;display:block;font-weight:700;color:#111827;font-size:1rem;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb;margin-bottom:.5rem}.detail-items-table td:nth-of-type(1):before{content:none}.invoice-totals{align-items:stretch;padding:1rem}}.dark-mode .invoice-detail-modal{background:#1e293b;border-color:#334155}.dark-mode .invoice-detail-header{background:#1e293b;border-bottom-color:#334155}.dark-mode .invoice-detail-header h2{color:#f1f5f9}.dark-mode .invoice-preview{background:#1e293b;border-color:#334155;color:#f1f5f9}.dark-mode .company-header,.dark-mode .invoice-footer{border-color:#334155}.dark-mode .company-info h3,.dark-mode .invoice-header-info h2{color:#f1f5f9}.dark-mode .company-info p,.dark-mode .invoice-dates p,.dark-mode .invoice-footer p{color:#cbd5e1}.dark-mode .customer-info,.dark-mode .invoice-totals,.dark-mode .detail-items-table thead{background:#0f172a}.dark-mode .customer-info p{color:#f1f5f9}.dark-mode .customer-info h4{color:#94a3b8}.dark-mode .detail-items-table th{color:#f1f5f9;border-bottom-color:#334155;background:#0f172a}.dark-mode .detail-items-table td{color:#cbd5e1;border-bottom-color:#334155}.dark-mode .totals-row{color:#f1f5f9}.dark-mode .totals-row.total{border-top-color:#334155;color:#60a5fa}.dark-mode .payment-info{background:#1e3a8a;border-left-color:#60a5fa}.dark-mode .payment-info p{color:#bfdbfe}.dark-mode .modal-close-btn{color:#cbd5e1}.dark-mode .modal-close-btn:hover{color:#f1f5f9}.dark-mode .btn-download-detail{color:#fff!important}@media (max-width: 768px){.dark-mode .detail-items-table tr{background:#1e293b;border-color:#334155;box-shadow:0 1px 2px #0000004d}}.modal-generar-factura{background:#fff;border-radius:12px;padding:0;max-width:1200px;width:95%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-generar-factura .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e2e8f0}.modal-generar-factura .modal-header h3{display:flex;align-items:center;gap:.75rem;margin:0;font-size:1.25rem;color:#1e293b}.modal-generar-factura .close-btn{background:none;border:none;cursor:pointer;color:#64748b;padding:.5rem;border-radius:6px;transition:all .2s}.modal-generar-factura .close-btn:hover{background:#f1f5f9;color:#1e293b}.modal-generar-factura .modal-body{padding:1.5rem;overflow-y:auto;flex:1}.no-pedidos{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;color:#64748b}.no-pedidos svg{color:#cbd5e1;margin-bottom:1rem}.no-pedidos p{margin:.5rem 0;font-size:1rem}.no-pedidos .hint{font-size:.875rem;color:#94a3b8;margin-top:.5rem}.search-box{margin-bottom:1.5rem}.search-input{width:100%;padding:.75rem 1rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;transition:all .2s}.search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.pedidos-list{display:flex;flex-direction:column;gap:.75rem;max-height:300px;overflow-y:auto;margin-bottom:1.5rem;padding-right:.5rem}.pedidos-list::-webkit-scrollbar{width:6px}.pedidos-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.pedidos-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.pedidos-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.pedido-item{display:flex;gap:1rem;padding:1rem;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s}.pedido-item:hover{border-color:#cbd5e1;background:#fafbfc}.pedido-item.selected{border-color:#667eea;background:#f0f4ff}.pedido-check{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:2px solid #cbd5e1;border-radius:50%;flex-shrink:0;transition:all .2s}.pedido-item.selected .pedido-check{background:#667eea;border-color:#667eea;color:#fff}.pedido-info{flex:1}.pedido-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.pedido-id{font-weight:700;color:#1e293b;font-size:.875rem}.pedido-estado{padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:capitalize}.pedido-estado.completado{background:#d1fae5;color:#065f46}.pedido-estado.enviado{background:#dbeafe;color:#1e40af}.pedido-details{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.875rem;color:#64748b}.cliente-name{font-weight:500;color:#475569}.pedido-fecha{font-size:.8125rem}.pedido-total{font-size:.875rem;color:#64748b}.pedido-total strong{color:#059669;font-size:1rem}.factura-preview{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 6px #0000001a}.factura-preview h4{margin:0 0 1rem;font-size:1rem;opacity:.9}.preview-details{background:#ffffff1a;padding:1rem;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.detail-row{display:flex;justify-content:space-between;padding:.5rem 0;font-size:.875rem}.detail-row span{opacity:.9}.detail-row strong{font-weight:600}.detail-divider{height:1px;background:#fff3;margin:.75rem 0}.detail-row.total{margin-top:.5rem;padding-top:.75rem;border-top:2px solid rgba(255,255,255,.3);font-size:1rem;font-weight:700}.modal-generar-factura .modal-actions{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e2e8f0}.btn-cancelar,.btn-generar{padding:.625rem 1.25rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.875rem}.btn-cancelar{background:#f1f5f9;color:#475569}.btn-cancelar:hover{background:#e2e8f0}.btn-generar{background:#667eea;color:#fff}.btn-generar:hover:not(:disabled){background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.btn-generar:disabled{opacity:.5;cursor:not-allowed}.select-type-container{padding:1rem 0}.section-title{text-align:center;font-size:1.125rem;color:#1e293b;margin:0 0 2rem;font-weight:600}.factura-types{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}@media (max-width: 1024px){.factura-types{grid-template-columns:1fr}}.factura-type-card{position:relative;padding:2rem 1.5rem;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .3s ease;background:#fff}.factura-type-card:hover{border-color:#667eea;transform:translateY(-4px);box-shadow:0 12px 24px #667eea26}.factura-type-card.electronic{background:linear-gradient(135deg,#f0f9ff,#e0f2fe)}.type-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;margin:0 auto 1rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff}.type-icon.electronic{background:linear-gradient(135deg,#06b6d4,#3b82f6)}.type-icon.manual{background:linear-gradient(135deg,#10b981,#059669)}.factura-type-card h3{text-align:center;margin:0 0 .5rem;font-size:1.25rem;color:#1e293b}.factura-type-card p{text-align:center;color:#64748b;font-size:.875rem;margin:0 0 1.5rem;line-height:1.5}.type-features{list-style:none;padding:0;margin:0}.type-features li{padding:.5rem 0 .5rem 1.5rem;position:relative;font-size:.875rem;color:#475569}.type-features li:before{content:"✓";position:absolute;left:0;color:#10b981;font-weight:700}.coming-soon-badge{position:absolute;top:1rem;right:1rem;background:#fbbf24;color:#78350f;padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600}.form-electronic-container{max-height:calc(90vh - 180px);overflow-y:auto}.form-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.btn-back{background:none;border:none;color:#667eea;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem;transition:all .2s}.btn-back:hover{background:#f0f4ff;border-radius:6px}.form-header h4{margin:0;font-size:1.125rem;color:#1e293b}.form-sections{display:flex;flex-direction:column;gap:2rem}.form-section{background:#f8fafc;padding:1.5rem;border-radius:12px;border:1px solid #e2e8f0}.form-section h5{margin:0 0 1.25rem;font-size:1rem;color:#1e293b;font-weight:600}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.form-group label{font-size:.875rem;font-weight:600;color:#475569}.form-input,.form-select,.form-textarea{padding:.75rem 1rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.875rem;font-family:inherit;transition:all .2s;background:#fff}.form-textarea{resize:vertical;min-height:80px}.info-banner{display:flex;gap:1rem;padding:1rem 1.25rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-top:1rem}.info-banner svg{flex-shrink:0;color:#3b82f6}.info-banner strong{display:block;margin-bottom:.25rem;color:#1e40af;font-size:.875rem}.info-banner p{margin:0;font-size:.8125rem;color:#1e40af;line-height:1.5}@media (max-width: 768px){.modal-generar-factura{width:95%}.pedidos-list{max-height:200px}.pedido-details{flex-direction:column;align-items:flex-start;gap:.25rem}.detail-row{font-size:.8125rem}.factura-types,.form-grid{grid-template-columns:1fr}}.dark-mode .modal-generar-factura{background:#1e293b;border:1px solid #334155}.dark-mode .modal-generar-factura .modal-header{border-bottom-color:#334155}.dark-mode .modal-generar-factura .modal-header h3,.dark-mode .form-header h4,.dark-mode .form-section h3,.dark-mode .form-section h4,.dark-mode .form-section h5,.dark-mode .section-title{color:#fff!important}.dark-mode .form-group label,.dark-mode .modal-body p,.dark-mode .modal-body span,.dark-mode .factura-info p,.dark-mode .factura-info strong{color:#cbd5e1!important}.dark-mode .modal-generar-factura .close-btn{color:#94a3b8}.dark-mode .modal-generar-factura .close-btn:hover{background:#334155;color:#f1f5f9}.dark-mode .no-pedidos{color:#94a3b8}.dark-mode .no-pedidos svg{color:#475569}.dark-mode .search-input{background:#0f172a;border-color:#334155;color:#f1f5f9}.dark-mode .search-input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa26}.dark-mode .pedidos-list::-webkit-scrollbar-track{background:#0f172a}.dark-mode .pedidos-list::-webkit-scrollbar-thumb{background:#334155}.dark-mode .pedidos-list::-webkit-scrollbar-thumb:hover{background:#475569}.dark-mode .pedido-item{border-color:#334155;background:#1e293b}.dark-mode .pedido-item:hover{border-color:#475569;background:#0f172a}.dark-mode .pedido-item.selected{border-color:#60a5fa;background:#3b82f61a}.dark-mode .pedido-check{border-color:#475569}.dark-mode .pedido-item.selected .pedido-check{background:#60a5fa;border-color:#60a5fa;color:#fff}.dark-mode .pedido-id{color:#f1f5f9}.dark-mode .pedido-details{color:#94a3b8}.dark-mode .cliente-name{color:#cbd5e1}.dark-mode .pedido-total{color:#94a3b8}.dark-mode .pedido-total strong{color:#34d399}.dark-mode .modal-generar-factura .modal-actions{border-top-color:#334155}.dark-mode .btn-cancelar{background:#334155;color:#cbd5e1}.dark-mode .section-title{color:#f1f5f9}.dark-mode .factura-type-card{border-color:#334155;background:#0f172a}.dark-mode .factura-type-card:hover{border-color:#60a5fa;box-shadow:0 12px 24px #60a5fa26}.dark-mode .factura-type-card.electronic{background:linear-gradient(135deg,#06b6d41a,#3b82f61a)}.dark-mode .factura-type-card h3{color:#f1f5f9}.dark-mode .factura-type-card p{color:#94a3b8}.dark-mode .type-features li{color:#cbd5e1}.dark-mode .btn-back{color:#60a5fa}.dark-mode .btn-back:hover{background:#334155}.dark-mode .form-header h4{color:#f1f5f9}.dark-mode .form-section h5{color:#f1f5f9}.dark-mode .info-banner{background:#3b82f61a;border-color:#1e3a8a}.dark-mode .info-banner strong{color:#93c5fd}.dark-mode .info-banner p{color:#bfdbfe}.pedidos-list-container{width:100%;max-width:100%;overflow-x:hidden}.pedidos-loading{text-align:center;padding:3rem;font-size:1.125rem;color:#64748b}.pedidos-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;margin-bottom:1.5rem;max-width:100%}.pedidos-stats .stat-card{background:var(--bg-secondary);padding:1.25rem;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;gap:.5rem;transition:transform .2s,box-shadow .2s;min-width:0}.pedidos-stats .stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.pedidos-stats .stat-card.total{background:var(--bg-tertiary);border:1px solid var(--border-color)}.pedidos-stats .stat-card.pendiente{background:#fef9f3;border:1px solid #fed7aa}.pedidos-stats .stat-card.pendiente .stat-value{color:#ea580c}.pedidos-stats .stat-card.procesando{background:#f0f9ff;border:1px solid #bae6fd}.pedidos-stats .stat-card.procesando .stat-value{color:#0284c7}.pedidos-stats .stat-card.enviado{background:#faf5ff;border:1px solid #e9d5ff}.pedidos-stats .stat-card.enviado .stat-value{color:#9333ea}.pedidos-stats .stat-card.completado{background:#f0fdf4;border:1px solid #bbf7d0}.pedidos-stats .stat-card.completado .stat-value{color:#16a34a}.pedidos-stats .stat-card.devolucion{background:#f1f5f9;border:1px solid #cbd5e1}.pedidos-stats .stat-card.devolucion .stat-value{color:#475569}.pedidos-stats .stat-card.ventas{background:#f0fdfa;border:1px solid #99f6e4}.pedidos-stats .stat-card.ventas .stat-value{color:#0d9488}.pedidos-stats .stat-label{font-size:.8125rem;font-weight:500;color:var(--text-secondary);order:1}.pedidos-stats .stat-value{font-size:1.875rem;font-weight:700;line-height:1;order:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pedidos-stats .stat-card.total .stat-value{color:var(--text-primary)}.pedidos-filters{display:flex;gap:.75rem;margin-bottom:1.5rem;align-items:center;flex-wrap:wrap;max-width:100%}.filter-group{display:flex;align-items:center;gap:.5rem;flex:1;min-width:200px;max-width:100%}.filter-input,.filter-select{padding:.625rem 1rem;border:1px solid var(--border-color);border-radius:8px;font-size:.875rem;transition:all .2s;flex:1;background:var(--input-bg);color:var(--input-text);border-color:var(--input-border)}.filter-input:focus,.filter-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.pedidos-table{background:var(--bg-secondary);border-radius:12px;overflow-x:auto;box-shadow:0 2px 4px #0000001a;max-width:100%}.pedidos-table .table-header{display:grid;grid-template-columns:90px minmax(150px,1fr) minmax(150px,1fr) 100px 110px 100px 90px 110px 110px 250px;gap:.75rem;padding:1rem;background:var(--bg-tertiary);font-weight:600;font-size:.8125rem;color:var(--text-secondary);border-bottom:2px solid var(--border-color);min-width:1330px}.pedidos-table .table-row{display:grid;grid-template-columns:90px minmax(150px,1fr) minmax(150px,1fr) 100px 110px 100px 90px 110px 110px 250px;gap:.75rem;padding:1rem;border-bottom:1px solid var(--border-color);align-items:center;transition:background .15s;min-width:1330px;color:var(--text-primary)}.pedidos-table .table-row:hover{background:var(--bg-hover)}.pedido-numero{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--text-primary)}.pedido-usuario .usuario-info{display:flex;flex-direction:column;gap:.25rem}.usuario-nombre{font-weight:600;color:var(--text-primary)}.usuario-email{font-size:.8125rem;color:var(--text-secondary)}.pedido-cliente .cliente-info{display:flex;flex-direction:column;gap:.25rem}.cliente-nombre{font-weight:600;color:var(--text-primary)}.cliente-email{font-size:.8125rem;color:var(--text-secondary)}.pedido-fecha{color:var(--text-secondary);font-size:.875rem}.estado-badge{padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;text-align:center;display:inline-block}.estado-badge.naranja{background:#ffedd5;color:#9a3412}.estado-badge.azul-claro{background:#e0f2fe;color:#075985}.estado-badge.amarillo{background:#fef3c7;color:#92400e}.estado-badge.azul{background:#dbeafe;color:#1e40af}.estado-badge.morado{background:#ede9fe;color:#6b21a8}.estado-badge.verde{background:#d1fae5;color:#065f46}.estado-badge.rojo{background:#fee2e2;color:#991b1b}.estado-badge.gris{background:#f1f5f9;color:#475569}.pedido-total{font-weight:700;color:#059669;font-size:1rem}.pedido-pago,.pedido-transportista{color:#475569;font-size:.875rem;text-transform:capitalize}.pedido-acciones{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.btn-accion{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;border:none;border-radius:6px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-accion.ver{background:#dbeafe;color:#1e40af}.btn-accion.ver:hover{background:#bfdbfe;transform:translateY(-1px);box-shadow:0 2px 4px #1e40af33}.estado-selector{padding:.375rem .5rem;border:2px solid #e2e8f0;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.estado-selector.naranja{background:#ffedd5;color:#9a3412;border-color:#fb923c}.estado-selector.azul-claro{background:#e0f2fe;color:#075985;border-color:#38bdf8}.estado-selector.amarillo{background:#fef3c7;color:#92400e;border-color:#fbbf24}.estado-selector.azul{background:#dbeafe;color:#1e40af;border-color:#3b82f6}.estado-selector.morado{background:#ede9fe;color:#6b21a8;border-color:#8b5cf6}.estado-selector.verde{background:#d1fae5;color:#065f46;border-color:#10b981}.estado-selector.rojo{background:#fee2e2;color:#991b1b;border-color:#ef4444}.estado-selector.gris{background:#f1f5f9;color:#475569;border-color:#94a3b8}.estado-selector:hover{opacity:.8}.estado-selector:focus{outline:none;box-shadow:0 0 0 3px #667eea1a}.no-pedidos{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#94a3b8;gap:1rem}.no-pedidos svg{color:#cbd5e1}.no-pedidos p{font-size:1rem;margin:0}@media (max-width: 1400px){.pedidos-stats{grid-template-columns:repeat(3,1fr)}}@media (max-width: 1200px){.pedidos-stats{grid-template-columns:repeat(2,1fr)}.pedidos-table .table-row{min-width:100%}}@media (max-width: 768px){.pedidos-list-container{padding:0 .5rem}.pedidos-stats{grid-template-columns:1fr 1fr;gap:.5rem}.pedidos-filters{flex-direction:column;align-items:stretch;gap:.75rem}.filter-group,.filter-input,.filter-select{width:100%}}@media (max-width: 640px){.pedidos-stats{grid-template-columns:1fr}}.dark-mode .pedidos-stats .stat-card.pendiente{background:#ea580c1a;border-color:#ea580c33}.dark-mode .pedidos-stats .stat-card.procesando{background:#0284c71a;border-color:#0284c733}.dark-mode .pedidos-stats .stat-card.enviado{background:#9333ea1a;border-color:#9333ea33}.dark-mode .pedidos-stats .stat-card.completado{background:#16a34a1a;border-color:#16a34a33}.dark-mode .pedidos-stats .stat-card.devolucion{background:#94a3b81a;border-color:#94a3b833}.dark-mode .pedidos-stats .stat-card.ventas{background:#0d94881a;border-color:#0d948833}.dark-mode .pedidos-stats .stat-card.total{background:#94a3b81a;border-color:#94a3b833}.dark-mode .pedido-pago,.dark-mode .pedido-transportista{color:#cbd5e1}.dark-mode .pedidos-table .table-header{color:#cbd5e1;background:#1e293b;border-bottom-color:#334155}.dark-mode .pedido-numero,.dark-mode .usuario-nombre,.dark-mode .cliente-nombre{color:#f1f5f9}.dark-mode .usuario-email,.dark-mode .cliente-email,.dark-mode .pedido-fecha{color:#94a3b8}.dark-mode .filter-group svg{color:#cbd5e1}.dark-mode .filter-input,.dark-mode .filter-select{background:#1e293b;border-color:#334155;color:#f1f5f9}.dark-mode .filter-input::-moz-placeholder{color:#64748b}.dark-mode .filter-input::placeholder{color:#64748b}@media (max-width: 1024px){.pedidos-stats{grid-template-columns:repeat(2,1fr);gap:.5rem}.pedidos-stats .stat-card{padding:.75rem}.pedidos-stats .stat-value{font-size:1.25rem}.pedidos-table .table-header{display:none!important}.pedidos-table .table-row{display:grid!important;grid-template-columns:80px 1fr!important;grid-template-rows:auto auto auto auto auto auto!important;grid-template-areas:"num user" "num client" "num date" "pay pay" "state state" "total total" "actions actions"!important;gap:.75rem;padding:1.25rem!important;align-items:center;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-secondary);margin-bottom:.75rem;position:relative}.dark-mode .pedidos-table{background:transparent!important;border:none!important}.dark-mode .pedidos-table .table-row{background:#1e293b!important;border:1px solid #334155!important;color:#f1f5f9!important;box-shadow:0 4px 6px -1px #0000004d}.dark-mode .pedido-acciones{border-top-color:#334155!important}.dark-mode .pedido-usuario,.dark-mode .usuario-nombre,.dark-mode .pedido-total,.dark-mode .pedido-pago{color:#f1f5f9!important}.dark-mode .usuario-email,.dark-mode .pedido-fecha{color:#94a3b8!important}.pedido-numero{grid-area:num;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;height:100%;margin:0;padding:0;border:none;background:transparent}.pedido-numero svg{width:24px;height:24px;color:var(--text-tertiary)}.pedido-usuario{grid-area:user;display:flex!important;flex-direction:column!important;align-items:flex-end!important;justify-content:center;text-align:right;width:100%;margin:0;padding:0;background:transparent}.usuario-info{flex-direction:column!important;align-items:flex-end!important;gap:0}.usuario-nombre{font-size:.95rem;font-weight:700}.usuario-email{font-size:.75rem;opacity:.8;max-width:200px;overflow:hidden;text-overflow:ellipsis}.pedido-cliente{grid-area:client;display:flex!important;flex-direction:column!important;align-items:flex-end!important;justify-content:center;text-align:right;width:100%;margin:0;padding:0;background:transparent}.pedido-fecha{grid-area:date;display:flex!important;justify-content:flex-end!important;align-items:center!important;width:100%;margin:-.25rem 0 0;font-size:.75rem;color:var(--text-tertiary);text-align:right}.pedido-pago{grid-area:pay;display:flex!important;justify-content:center!important;width:100%;font-weight:600;margin-top:.5rem}.pedido-estado{grid-area:state;display:flex!important;justify-content:center!important;width:100%;margin:.25rem 0}.pedido-total{grid-area:total;display:flex!important;justify-content:center!important;width:100%;font-size:1.5rem!important;font-weight:800!important;padding-bottom:.5rem}.pedido-transportista{display:none!important}.pedido-acciones{grid-area:actions;display:flex!important;flex-direction:row;gap:.5rem;width:100%;margin-top:.5rem;padding-top:.75rem;border-top:1px solid var(--border-color)}.pedido-acciones .btn-accion,.pedido-acciones .estado-selector{flex:1;height:40px;justify-content:center;width:100%}.pedidos-table .table-row>*:before{display:none!important}}.dark-mode .pedidos-loading,.dark-mode .no-pedidos{color:#f1f5f9}.dark-mode .no-pedidos svg{color:#cbd5e1}.badge-tipo{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;background:#f1f5f9;color:#475569}.dark-mode .badge-tipo{background:#334155;color:#e2e8f0;border:1px solid #475569}.modal-pedido-detalle{background:#fff;border-radius:12px;max-width:900px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 25px #0003}.modal-pedido-detalle .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-pedido-detalle .header-title{display:flex;align-items:center;gap:.75rem}.modal-pedido-detalle .header-title h2{margin:0;font-size:1.5rem}.modal-pedido-detalle .btn-close{background:#fff3;border:none;color:#fff;padding:.5rem;border-radius:6px;cursor:pointer;transition:all .2s}.modal-pedido-detalle .btn-close:hover{background:#ffffff4d}.modal-pedido-detalle .modal-body{padding:1.5rem;overflow-y:auto;flex:1}.pedido-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:2rem}.info-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;transition:all .2s}.info-card:hover{border-color:#cbd5e1;box-shadow:0 2px 4px #0000000d}.info-card.full-width{grid-column:1 / -1}.info-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;color:#667eea}.info-card-header h3{margin:0;font-size:.875rem;font-weight:600;color:#475569}.info-card-body{display:flex;flex-direction:column;gap:.25rem}.info-principal{font-size:1rem;font-weight:600;color:#1e293b;margin:0}.info-secundario{font-size:.875rem;color:#64748b;margin:0}.estado-selector-detalle{width:100%;padding:.5rem .75rem;border:2px solid #667eea;border-radius:6px;font-size:.875rem;font-weight:600;background:#fff;cursor:pointer;transition:all .2s}.estado-selector-detalle:hover{background:#f0f4ff}.estado-selector-detalle:focus{outline:none;box-shadow:0 0 0 3px #667eea33}.detalles-section{margin-top:1.5rem}.detalles-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.detalles-header h3{margin:0;font-size:1.125rem;color:#1e293b}.btn-editar-pedido{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f59e0b;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-editar-pedido:hover{background:#d97706;transform:translateY(-1px);box-shadow:0 2px 4px #f59e0b4d}.detalles-table{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;margin-bottom:1rem}.detalles-table .table-header{display:grid;grid-template-columns:2fr 100px 120px 120px;gap:1rem;padding:.75rem 1rem;background:#f8fafc;font-weight:600;font-size:.875rem;color:#475569;border-bottom:2px solid #e2e8f0}.detalles-table .table-row{display:grid;grid-template-columns:2fr 100px 120px 120px;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid #f1f5f9;align-items:center}.detalles-table .table-row:last-child{border-bottom:none}.libro-titulo{font-weight:500;color:#1e293b}.cantidad{text-align:center;font-weight:600;color:#475569}.precio,.subtotal{text-align:right;color:#475569}.subtotal{font-weight:600}.no-detalles{padding:2rem;text-align:center;color:#94a3b8;font-size:.875rem}.totales-section{background:linear-gradient(135deg,#f8fafc,#e2e8f0);padding:1rem;border-radius:8px;display:flex;flex-direction:column;gap:.5rem}.total-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem;font-size:.875rem;color:#475569}.total-row.final{padding-top:.75rem;border-top:2px solid #cbd5e1;font-size:1.125rem;font-weight:700;color:#1e293b}.total-valor{font-weight:600;color:#059669}.total-row.final .total-valor{font-size:1.25rem;color:#059669}.modal-pedido-detalle .modal-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem;border-top:1px solid #e2e8f0;background:#f8fafc}.btn-cancelar,.btn-generar-factura{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border:none;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s}.btn-generar-factura{background:#10b981;color:#fff}.btn-generar-factura:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 8px #10b9814d}.btn-generar-factura:disabled{opacity:.5;cursor:not-allowed}.factura-generada{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:#d1fae5;color:#065f46;border-radius:8px;font-weight:600;font-size:.875rem}@media (max-width: 768px){.modal-pedido-detalle{width:95%;max-height:95vh}.pedido-info-grid{grid-template-columns:1fr}.detalles-table .table-header{display:none}.detalles-table .table-row{grid-template-columns:1fr;gap:.5rem;padding:1rem}.detalles-table .table-row>span{display:flex;justify-content:space-between}.detalles-table .table-row>span:before{content:attr(data-label);font-weight:600;color:#64748b;font-size:.8125rem}.modal-pedido-detalle .modal-footer{flex-direction:column}.btn-cancelar,.btn-generar-factura{width:100%;justify-content:center}}.dark-mode .modal-pedido-detalle{background:#1e293b;color:#f1f5f9}.dark-mode .modal-pedido-detalle .modal-header{background:linear-gradient(135deg,#065f46,#064e3b);border-bottom-color:#334155}.dark-mode .modal-pedido-detalle .info-card{background:#131a27;border-color:#475569}.dark-mode .info-card:hover{border-color:#475569}.dark-mode .info-card-header h3{color:#cbd5e1}.dark-mode .info-principal{color:#f1f5f9}.dark-mode .info-secundario{color:#94a3b8}.dark-mode .estado-selector-detalle{background:#1e293b;border-color:#4f46e5;color:#f1f5f9}.dark-mode .estado-selector-detalle:hover{background:#312e81}.dark-mode .detalles-header h3{color:#f1f5f9}.dark-mode .detalles-table{background:#0f172a;border-color:#334155}.dark-mode .detalles-table .table-header{background:#1e293b;color:#cbd5e1;border-bottom-color:#334155}.dark-mode .detalles-table .table-row{border-bottom-color:#334155}.dark-mode .libro-titulo{color:#f1f5f9}.dark-mode .cantidad,.dark-mode .precio,.dark-mode .subtotal{color:#cbd5e1}.dark-mode .totales-section{background:linear-gradient(135deg,#1e293b,#0f172a)}.dark-mode .total-row{color:#cbd5e1}.dark-mode .total-row.final{border-top-color:#334155;color:#f1f5f9}.dark-mode .modal-pedido-detalle .modal-footer{background:#0f172a;border-top-color:#334155}@media (max-width: 768px){.dark-mode .detalles-table .table-row>span:before{color:#94a3b8}.dark-mode .detalles-table{background-color:#0f172a!important;background:#0f172a!important;border:1px solid rgba(255,255,255,.05)!important;box-shadow:0 4px 6px -1px #0000004d}.dark-mode .detalles-table .table-row{background-color:transparent;border-bottom:1px solid rgba(255,255,255,.05)}.dark-mode .detalles-table .table-row:last-child{border-bottom:none}}.modal-crear-pedido{background:#fff;border-radius:12px;max-width:1000px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 25px #0003}.modal-crear-pedido .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#10b981,#059669);color:#fff}.modal-crear-pedido .header-title{display:flex;align-items:center;gap:.75rem}.modal-crear-pedido .header-title h2{margin:0;font-size:1.5rem}.modal-crear-pedido .btn-close{background:#fff3;border:none;color:#fff;padding:.5rem;border-radius:6px;cursor:pointer;transition:all .2s}.modal-crear-pedido .btn-close:hover{background:#ffffff4d}.modal-crear-pedido .modal-body{padding:1.5rem;overflow-y:auto;flex:1}.form-section{margin-bottom:2rem;padding:1.5rem;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.form-section:last-of-type{margin-bottom:0}.order-section-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1.25rem;color:#667eea}.order-section-header h3{margin:0;font-size:1.125rem;color:#1e293b;font-weight:600}@media (max-width: 1024px){.order-section-header{flex-direction:column!important;align-items:stretch!important;gap:.75rem!important}.order-section-header button{width:100%;justify-content:center;margin-top:.5rem}}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.form-group label{font-size:.875rem;font-weight:600;color:#334155}.form-input,.form-select,.form-textarea{padding:.625rem .875rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-family:inherit;background:#fff;transition:all .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-textarea{resize:vertical}.agregar-producto{display:grid;grid-template-columns:250px 1fr 100px 120px;gap:.75rem;margin-bottom:1.5rem;align-items:end}.buscar-libro{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;border:1px solid #e2e8f0;border-radius:6px;background:#fff}.buscar-libro input{border:none;outline:none;flex:1;font-size:.875rem}.cantidad-input{text-align:center}.btn-agregar-linea{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;background:#10b981;color:#fff;border:none;border-radius:6px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-agregar-linea:hover{background:#059669;transform:translateY(-1px);box-shadow:0 2px 4px #10b9814d}.lineas-table{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;margin-bottom:1rem}.lineas-table .table-header{display:grid;grid-template-columns:2fr 100px 120px 120px 60px;gap:1rem;padding:.75rem 1rem;background:#f8fafc;font-weight:600;font-size:.875rem;color:#475569;border-bottom:2px solid #e2e8f0}.lineas-table .table-row{display:grid;grid-template-columns:2fr 100px 120px 120px 60px;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid #f1f5f9;align-items:center}.lineas-table .table-row:last-child{border-bottom:none}.libro-nombre{font-weight:500;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.input-cantidad,.input-precio{padding:.375rem .5rem;border:1px solid #e2e8f0;border-radius:4px;font-size:.875rem;text-align:center;width:100%}.input-cantidad:focus,.input-precio:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}.subtotal-linea{text-align:right;font-weight:600;color:#059669}.btn-eliminar-linea{display:flex;align-items:center;justify-content:center;padding:.375rem;background:#fee2e2;color:#991b1b;border:none;border-radius:4px;cursor:pointer;transition:all .2s}.btn-eliminar-linea:hover{background:#fecaca;transform:scale(1.1)}.totales-preview{background:linear-gradient(135deg,#f0f9ff,#dbeafe);padding:1rem;border-radius:8px;display:flex;flex-direction:column;gap:.5rem;border:2px solid #3b82f6}.totales-preview .total-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem;font-size:.875rem;color:#1e40af;font-weight:500}.totales-preview .total-row.final{padding-top:.75rem;border-top:2px solid #3b82f6;font-size:1.125rem;font-weight:700;color:#1e293b}.totales-preview .total-row.final span:last-child{color:#059669;font-size:1.25rem}.modal-crear-pedido .modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e2e8f0;background:#f8fafc}.btn-cancelar,.btn-guardar{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.5rem;border:none;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s}.btn-cancelar{background:#e2e8f0;color:#475569}.btn-cancelar:hover{background:#cbd5e1}.btn-guardar{background:#10b981;color:#fff}.btn-guardar:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 8px #10b9814d}.btn-guardar:disabled{opacity:.5;cursor:not-allowed}.agregar-producto-mejorado{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.agregar-producto-externo{display:grid;grid-template-columns:2fr 2fr 120px 120px auto;gap:.75rem;align-items:end}.badge-interno,.badge-externo{display:inline-block;padding:.125rem .5rem;border-radius:4px;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.badge-interno{background:#dbeafe;color:#1e40af}.badge-externo{background:#fef3c7;color:#92400e}.autocomplete-suggestions{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;margin-top:.25rem;max-height:300px;overflow-y:auto;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;z-index:1000}.suggestion-item{padding:.75rem;cursor:pointer;transition:background-color .15s;border-bottom:1px solid #f3f4f6}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover{background-color:#f9fafb}.dark-mode .suggestion-item:hover{background-color:#334155}.dark-mode .autocomplete-suggestions{background:#1e293b;border-color:#334155;color:#f1f5f9}.dark-mode .suggestion-item{border-bottom-color:#334155}.dark-mode .btn-eliminar-linea{background:#7f1d1d;color:#fecaca}.dark-mode .btn-eliminar-linea:hover{background:#991b1b}.btn-agregar-linea:disabled{opacity:.5;cursor:not-allowed;background:#9ca3af}.btn-agregar-linea:disabled:hover{background:#9ca3af;transform:none;box-shadow:none}@media (max-width: 1024px){.agregar-producto{grid-template-columns:1fr;gap:.75rem}.agregar-producto-mejorado{flex-direction:column;align-items:stretch}.agregar-producto-mejorado .form-group{width:100%!important}.agregar-producto-externo{grid-template-columns:1fr}.agregar-producto-externo .form-group{width:100%!important}.btn-agregar-linea{width:100%}}.dark-mode .modal-crear-pedido{background:#1e293b;color:#f1f5f9}.dark-mode .modal-crear-pedido .modal-header{background:linear-gradient(135deg,#065f46,#064e3b);border-bottom-color:#334155}.dark-mode .modal-crear-pedido .modal-body{background:#1e293b}.dark-mode .form-section{background:#0f172a;border-color:#334155}.dark-mode .section-header h3{color:#f1f5f9}.dark-mode .form-input,.dark-mode .form-select,.dark-mode .form-textarea{background:#1e293b;border-color:#334155;color:#f1f5f9}.dark-mode .form-input:focus,.dark-mode .form-select:focus,.dark-mode .form-textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa26}.mode-selector{display:flex;gap:1rem;margin-bottom:1rem}.btn-mode{flex:1;padding:.75rem;border:2px solid #e5e7eb;border-radius:8px;background:#fff;cursor:pointer;font-weight:600;color:#6b7280;transition:all .2s}.btn-mode.active{border-color:#3b82f6;background:#eff6ff;color:#3b82f6}.paste-section{background:#f9fafb;padding:1.5rem;border-radius:8px;border:1px solid #e5e7eb}.paste-label{display:block;margin-bottom:.5rem;font-weight:600;color:#374151}.paste-help-text{font-size:.875rem;color:#6b7280;margin-bottom:1rem}.paste-textarea{width:100%;font-family:monospace;font-size:.9rem}.btn-analyze{margin-top:1rem;width:100%;padding:.75rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-analyze:hover{background:#2563eb}.paste-tip{font-size:.75rem;color:#6b7280;margin-top:.75rem;font-style:italic}.dark-mode .btn-mode{background:#1e293b;border-color:#334155;color:#94a3b8}.dark-mode .btn-mode.active{background:#1e3a8a;border-color:#60a5fa;color:#60a5fa}.dark-mode .paste-section{background:#0f172a;border-color:#334155}.dark-mode .paste-label{color:#f1f5f9}.dark-mode .paste-help-text,.dark-mode .paste-tip{color:#94a3b8}.dark-mode .paste-textarea{background:#1e293b;color:#f1f5f9;border-color:#334155}.dark-mode .paste-textarea:focus{border-color:#60a5fa}.dark-mode .btn-analyze{background:#3b82f6;color:#fff}.dark-mode .btn-analyze:hover{background:#2563eb}.dark-mode .buscar-libro input{background:transparent;color:#f1f5f9}.dark-mode .lineas-table{background:#0f172a;border-color:#334155}.dark-mode .lineas-table .table-header{background:#1e293b;color:#cbd5e1;border-bottom-color:#334155}.dark-mode .lineas-table .table-row{border-bottom-color:#334155}.dark-mode .libro-nombre{color:#f1f5f9}.dark-mode .input-cantidad,.dark-mode .input-precio{background:#1e293b;border-color:#334155;color:#f1f5f9}.dark-mode .totales-preview{background:linear-gradient(135deg,#1e3a5f,#1e293b);border-color:#3b82f6}.dark-mode .totales-preview .total-row{color:#bfdbfe}.dark-mode .totales-preview .total-row.final{color:#f1f5f9;border-top-color:#3b82f6}.dark-mode .modal-crear-pedido .modal-footer{background:#0f172a;border-top-color:#334155}.dark-mode .btn-cancelar{background:#334155;color:#f1f5f9}.dark-mode .btn-cancelar:hover{background:#475569}@media (max-width: 768px){.modal-crear-pedido{width:95%;max-height:95vh}.form-grid{grid-template-columns:1fr}.lineas-table .table-header{display:none}.lineas-table .table-row{grid-template-columns:1fr;gap:.75rem;padding:1rem}.lineas-table .table-row>*{display:flex;justify-content:space-between;align-items:center}.lineas-table .table-row>*:before{content:attr(data-label);font-weight:600;color:#64748b;font-size:.8125rem}.dark-mode .lineas-table .table-row>*:before{color:#94a3b8}.libro-nombre{white-space:normal}.btn-eliminar-linea{width:100%}.modal-crear-pedido .modal-footer{flex-direction:column}.btn-cancelar,.btn-guardar{width:100%;justify-content:center}}.label-tipo-producto{font-size:.875rem;font-weight:600;color:#334155;margin-bottom:.5rem;display:block}.dark-mode .label-tipo-producto{color:#cbd5e1}.dark-mode .form-group .lucide-search{color:#94a3b8}.search-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.btn-link{background:none;border:none;color:#2563eb;cursor:pointer;font-size:.875rem;font-weight:500;padding:0}.btn-link:hover{text-decoration:underline}.dark-mode .btn-link{color:#60a5fa}.advanced-search-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;padding:1.25rem;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;margin-bottom:1rem}.dark-mode .advanced-search-grid{background:#0f172a;border-color:#334155}.btn-search-trigger{background:#2563eb;color:#fff;border:none;border-radius:6px;padding:.625rem 1rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-search-trigger:hover{background:#1d4ed8}.dark-mode .btn-search-trigger{background:#3b82f6}.dark-mode .btn-search-trigger:hover{background:#2563eb}.actions-row{display:flex;align-items:flex-end;gap:1rem;margin-top:1rem;justify-content:flex-end}.input-search-simple{width:100%;padding:.625rem .875rem .625rem 2.5rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;outline:none;transition:all .2s;background:#fff}.dark-mode .input-search-simple{background:#1e293b;border-color:#334155;color:#f1f5f9}.dark-mode .input-search-simple:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa26}.buscar-libro-container{display:flex;flex-direction:column;gap:1rem;width:100%;margin-bottom:1rem}.search-input-wrapper{position:relative;display:flex;width:100%}.search-icon-absolute{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.dark-mode .search-icon-absolute{color:#64748b}.dark-mode .form-input::-moz-placeholder,.dark-mode .input-search-simple::-moz-placeholder{color:#64748b}.dark-mode .form-input::placeholder,.dark-mode .input-search-simple::placeholder{color:#64748b}.search-input-wrapper{display:flex;width:100%;position:relative;gap:.5rem}.search-field-container{position:relative;flex:1;min-width:0}@media (max-width: 1024px){.search-input-wrapper{flex-direction:column;gap:.75rem}.search-field-container{width:100%;flex:none}.search-input-wrapper .btn-search-trigger{width:100%}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.confirm-reservation-modal{background:#fff;border-radius:12px;max-width:500px;width:100%;box-shadow:0 20px 60px #0000004d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.confirm-reservation-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--border-color)}.confirm-reservation-modal .modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary)}.confirm-reservation-modal .close-btn{background:none;border:none;cursor:pointer;color:var(--text-secondary);padding:4px;border-radius:4px;transition:all .2s;display:flex;align-items:center;justify-content:center}.confirm-reservation-modal .close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.confirm-reservation-modal .close-btn:disabled{opacity:.5;cursor:not-allowed}.confirm-reservation-modal .reservation-details{padding:24px;display:flex;flex-direction:column;gap:12px}.confirm-reservation-modal .detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border-color)}.confirm-reservation-modal .detail-row:last-child{border-bottom:none}.confirm-reservation-modal .detail-row strong{color:var(--text-secondary);font-size:.875rem;font-weight:500}.confirm-reservation-modal .detail-row span{color:var(--text-primary);font-weight:500}.confirm-reservation-modal .stock-available{color:#22c55e}.confirm-reservation-modal .stock-unavailable{color:#ef4444}.confirm-reservation-modal .form-group{padding:0 24px 24px}.confirm-reservation-modal .form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-primary)}.confirm-reservation-modal .form-group input[type=date]{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);font-size:.875rem;transition:all .2s}.confirm-reservation-modal .form-group input[type=date]:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.confirm-reservation-modal .form-group input[type=date]:disabled{opacity:.6;cursor:not-allowed}.confirm-reservation-modal .form-group small{display:block;margin-top:6px;color:var(--text-secondary);font-size:.75rem}.confirm-reservation-modal .modal-actions{display:flex;gap:12px;padding:0 24px 24px}.confirm-reservation-modal .btn-cancel,.confirm-reservation-modal .btn-confirm{flex:1;padding:10px 16px;border-radius:6px;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s;border:none}.confirm-reservation-modal .btn-cancel{background:var(--bg-tertiary);color:var(--text-primary)}.confirm-reservation-modal .btn-cancel:hover:not(:disabled){background:var(--bg-secondary)}.confirm-reservation-modal .btn-confirm{background:#22c55e;color:#fff}.confirm-reservation-modal .btn-confirm:hover:not(:disabled){background:#16a34a}.confirm-reservation-modal .btn-cancel:disabled,.confirm-reservation-modal .btn-confirm:disabled{opacity:.6;cursor:not-allowed}.dark-mode .confirm-reservation-modal{background:#1f2937}.dark-mode .confirm-reservation-modal .modal-header{border-bottom-color:#374151}.dark-mode .confirm-reservation-modal .modal-header h2{color:#f9fafb}.dark-mode .confirm-reservation-modal .detail-row{border-bottom-color:#374151}.dark-mode .confirm-reservation-modal .detail-row strong{color:#9ca3af}.dark-mode .confirm-reservation-modal .detail-row span,.dark-mode .confirm-reservation-modal .form-group label{color:#f3f4f6}.dark-mode .confirm-reservation-modal .form-group input[type=date]{background:#111827;border-color:#374151;color:#f3f4f6}.dark-mode .confirm-reservation-modal .form-group input[type=date]:focus{border-color:#3b82f6}.dark-mode .confirm-reservation-modal .form-group small{color:#9ca3af}.dark-mode .confirm-reservation-modal .btn-cancel{background:#374151;color:#f3f4f6}.dark-mode .confirm-reservation-modal .btn-cancel:hover:not(:disabled){background:#4b5563}.gestion-clientes{padding:2rem;max-width:1400px;margin:0 auto}.clientes-header{margin-bottom:2rem}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.header-top h2{display:flex;align-items:center;gap:.75rem;font-size:1.75rem;color:#1f2937;margin:0}.cliente-search-bar{position:relative;display:flex;align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:.75rem;padding:.75rem 1rem;transition:border-color .2s ease}.cliente-search-bar:focus-within{border-color:#2563eb}.cliente-search-bar svg{color:#9ca3af;margin-right:.75rem}.cliente-search-bar input{flex:1;border:none;outline:none;font-size:1rem;color:#1f2937}.cliente-clear-search{background:none;border:none;padding:.25rem;cursor:pointer;color:#9ca3af;transition:color .2s ease}.cliente-clear-search:hover{color:#6b7280}.cliente-btn-primary{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s ease}.cliente-btn-primary:hover{box-shadow:0 4px 12px #2563eb66;transform:translateY(-2px)}.loading,.empty-state{text-align:center;padding:3rem;color:#6b7280}.empty-state{display:flex;flex-direction:column;align-items:center;gap:1rem;background:#fff;border-radius:1rem;padding:3rem;box-shadow:0 1px 3px #0000001a}.empty-state svg{color:#d1d5db}.error-message{background:#fee;border:1px solid #fcc;color:#c33;padding:1rem 1.5rem;border-radius:.5rem;display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.error-message button{background:none;border:none;color:#c33;cursor:pointer;padding:.25rem}.clientes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.cliente-card{background:#fff;border-radius:1rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a;transition:all .2s ease;border:2px solid transparent}.cliente-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#e5e7eb}.cliente-card.inactive{opacity:.6;background:#f9fafb}.cliente-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.cliente-header h3{margin:0;font-size:1.125rem;color:#1f2937;line-height:1.3}.cliente-actions{display:flex;gap:.5rem}.cliente-btn-icon{background:#f3f4f6;border:none;padding:.5rem;border-radius:.375rem;cursor:pointer;color:#6b7280;transition:all .2s ease}.cliente-btn-icon:hover{background:#e5e7eb;color:#1f2937}.cliente-btn-icon.danger:hover{background:#fee;color:#dc2626}.cliente-info{display:flex;flex-direction:column;gap:.75rem}.info-row{display:flex;align-items:flex-start;gap:.75rem;font-size:.875rem;color:#4b5563}.info-row svg{flex-shrink:0;margin-top:.125rem;color:#9ca3af}.cliente-notas{margin-top:1rem;padding:.75rem;background:#f9fafb;border-radius:.5rem;font-size:.875rem;color:#6b7280}.cliente-notas strong{color:#374151}.cliente-status{margin-top:1rem;padding:.375rem .75rem;background:#fee;color:#dc2626;border-radius:.375rem;font-size:.75rem;font-weight:600;text-align:center}.cliente-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.cliente-modal-content{background:#fff;border-radius:1rem;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h3{margin:0;font-size:1.5rem;color:#1f2937}.close-btn{background:none;border:none;color:#9ca3af;cursor:pointer;padding:.25rem;transition:color .2s ease}.close-btn:hover{color:#6b7280}.cliente-form{padding:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-weight:500;color:#374151;margin-bottom:.5rem;font-size:.875rem}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:2px solid #e5e7eb;border-radius:.5rem;font-size:1rem;transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#2563eb}.form-group textarea{resize:vertical;font-family:inherit}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-group input[type=checkbox]{width:auto;cursor:pointer}.form-error{background:#fee;border:1px solid #fcc;color:#c33;padding:.75rem;border-radius:.5rem;font-size:.875rem;margin-bottom:1rem}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.cliente-btn-secondary{background:#fff;border:2px solid #e5e7eb;color:#374151;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s ease}.cliente-btn-secondary:hover{background:#f9fafb;border-color:#d1d5db}.dark-mode .header-top h2{color:#f1f5f9}.dark-mode .cliente-search-bar{background:#1e293b;border-color:#334155}.dark-mode .cliente-search-bar:focus-within{border-color:#60a5fa}.dark-mode .cliente-search-bar input{background:transparent;color:#e2e8f0}.dark-mode .cliente-search-bar input::-moz-placeholder{color:#64748b}.dark-mode .cliente-search-bar input::placeholder{color:#64748b}.dark-mode .cliente-search-bar svg{color:#64748b}.dark-mode .cliente-clear-search{color:#64748b}.dark-mode .cliente-clear-search:hover,.dark-mode .loading,.dark-mode .empty-state{color:#94a3b8}.dark-mode .empty-state{background:#1e293b}.dark-mode .error-message{background:#7f1d1d;border-color:#991b1b;color:#fca5a5}.dark-mode .error-message button{color:#fca5a5}.dark-mode .cliente-card{background:#1e293b;border-color:#334155}.dark-mode .cliente-card:hover{box-shadow:0 4px 12px #0000004d;border-color:#475569}.dark-mode .cliente-card.inactive{background:#0f172a}.dark-mode .cliente-header{border-bottom-color:#334155}.dark-mode .cliente-header h3{color:#f1f5f9}.dark-mode .cliente-btn-icon{background:#0f172a;color:#94a3b8}.dark-mode .cliente-btn-icon:hover{background:#334155;color:#cbd5e1}.dark-mode .cliente-btn-icon.danger:hover{background:#7f1d1d;color:#fca5a5}.dark-mode .info-row{color:#cbd5e1}.dark-mode .info-row svg{color:#64748b}.dark-mode .cliente-notas{background:#0f172a;color:#94a3b8}.dark-mode .cliente-notas strong{color:#cbd5e1}.dark-mode .cliente-status{background:#7f1d1d;color:#fca5a5}.dark-mode .cliente-modal-content{background:#1e293b!important;box-shadow:0 10px 15px -3px #00000080;border:1px solid #334155;position:relative}.dark-mode .modal-header h3{color:#f1f5f9}.dark-mode .close-btn{color:#64748b}.dark-mode .close-btn:hover{color:#94a3b8}.dark-mode .form-group input,.dark-mode .form-group textarea{background:#0f172a;border-color:#334155;color:#e2e8f0}.dark-mode .form-group input::-moz-placeholder,.dark-mode .form-group textarea::-moz-placeholder{color:#64748b}.dark-mode .form-group input::placeholder,.dark-mode .form-group textarea::placeholder{color:#64748b}.dark-mode .form-group input:focus,.dark-mode .form-group textarea:focus{border-color:#60a5fa}.dark-mode .form-error{background:#7f1d1d;border-color:#991b1b;color:#fca5a5}.dark-mode .cliente-btn-secondary{background:#0f172a;border-color:#334155;color:#cbd5e1}.dark-mode .cliente-btn-secondary:hover{background:#334155;border-color:#475569}.client-type-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid #e5e7eb;padding-bottom:.125rem}.client-type-tab{padding:.75rem 1.5rem;background:none;border:none;font-size:.95rem;font-weight:500;color:#6b7280;cursor:pointer;border-bottom:2px solid transparent;width:auto;margin-bottom:-.125rem;transition:all .2s ease;border-top-left-radius:.5rem;border-top-right-radius:.5rem}.client-type-tab:hover{color:#1f2937;background:#f3f4f6}.client-type-tab.active{color:#2563eb;border-bottom-color:#2563eb;background:#eff6ff}.dark-mode .client-type-tabs{border-bottom-color:#334155}.dark-mode .client-type-tab{color:#94a3b8}.dark-mode .client-type-tab:hover{color:#f1f5f9;background:#1e293b}.dark-mode .client-type-tab.active{color:#60a5fa;border-bottom-color:#60a5fa;background:#2563eb26}@media (max-width: 768px){.gestion-clientes{padding:1rem}.header-top{flex-direction:column;align-items:stretch;gap:1rem}.clientes-grid,.form-row{grid-template-columns:1fr}.cliente-modal-content{max-height:95vh}}.filters-search-container{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.filter-tabs{display:flex;gap:.5rem;flex-wrap:wrap}.filter-pill{padding:.5rem 1rem;border-radius:9999px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;font-weight:500;font-size:.875rem;transition:all .2s ease}.filter-pill:hover{background:#f8fafc;color:#1f2937;border-color:#cbd5e1}.filter-pill.active{background:#2563eb;color:#fff;border-color:#2563eb}.dark-mode .filter-pill{background:#1e293b;border-color:#334155;color:#94a3b8}.dark-mode .filter-pill:hover{background:#334155;color:#f1f5f9;border-color:#475569}.dark-mode .filter-pill.active{background:#2563eb;border-color:#2563eb;color:#fff}.dark-mode .cliente-btn-primary{color:#fff!important}.dark-mode .cliente-btn-primary svg{color:#fff!important}.metadata-container{padding:1.5rem;background-color:var(--bg-secondary);border-radius:12px;box-shadow:0 4px 6px -1px #0000001a}.metadata-header{margin-bottom:2rem}.metadata-title{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.metadata-subtitle{color:var(--text-secondary);font-size:.95rem}.metadata-tabs{display:flex;gap:1rem;border-bottom:1px solid var(--border-color);margin-bottom:1.5rem}.metadata-tab{padding:.75rem 1.5rem;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-weight:500;cursor:pointer;transition:all .2s;font-size:1rem}.metadata-tab:hover{color:var(--primary-color)}.metadata-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.metadata-actions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.search-wrapper{position:relative;width:100%;max-width:300px}.search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none}.search-wrapper .search-input{width:100%;padding:.6rem 1rem .6rem 3.5rem!important;border:1px solid var(--border-color);border-radius:8px;background-color:var(--bg-primary);color:var(--text-primary);font-size:.9rem}.duplicates-panel{margin-bottom:2rem;padding:1rem;background-color:var(--bg-tertiary);border-radius:8px;border:1px solid var(--border-color)}.duplicates-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.duplicates-header h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.duplicates-list{display:grid;gap:1rem}.duplicate-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:var(--bg-secondary);border-radius:6px;border:1px solid var(--border-color)}.duplicate-info{display:flex;flex-direction:column}.duplicate-name{font-weight:600;margin-right:.5rem;color:var(--text-primary)}.duplicate-details{color:var(--text-secondary);font-size:.9rem}.standardizer-header h3{color:var(--text-primary)}.standardizer-header p{color:var(--text-secondary)}.column-panel{border:1px solid var(--border-color);background-color:var(--bg-primary)}.column-header{background-color:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.column-header h4{color:var(--text-primary)}.column-list{background-color:var(--bg-primary)}.metadata-table-container{overflow-x:auto;border:1px solid var(--border-color);border-radius:8px}.metadata-table{width:100%;border-collapse:collapse}.metadata-table th,.metadata-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--border-color)}.metadata-table th{background-color:var(--bg-tertiary);font-weight:600;color:var(--text-secondary);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}.metadata-table tr:last-child td{border-bottom:none}.metadata-table tr:hover td{background-color:var(--bg-tertiary)}.action-buttons{display:flex;gap:.5rem}.btn-icon{padding:.4rem;border:none;background:none;border-radius:6px;cursor:pointer;transition:background-color .2s;color:var(--text-secondary)}.btn-icon.delete:hover{background-color:#fee2e2;color:#ef4444}.dark-mode .btn-icon.delete:hover{background-color:#ef444433}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{background-color:var(--bg-secondary);padding:2rem;border-radius:12px;width:100%;max-width:500px;box-shadow:0 10px 15px -3px #0000001a}:root:not(.dark-mode) .modal-content{background-color:#fff!important}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.modal-title{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.modal-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem;border-radius:4px}.modal-close:hover{background-color:var(--bg-hover)}.form-group{margin-bottom:1rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.form-input{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background-color:var(--bg-primary);color:var(--text-primary)}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem}.btn-primary{background-color:var(--primary-color);color:#fff;border:none;padding:.6rem 1.2rem;border-radius:8px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem}.btn-primary:hover{filter:brightness(110%)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;filter:grayscale(20%)}.dark-mode .btn-primary:disabled{background-color:#334155;color:#94a3b8;opacity:1}.btn-secondary{background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);padding:.6rem 1.2rem;border-radius:8px;font-weight:500;cursor:pointer}.dark-mode .metadata-container{background-color:var(--bg-secondary);border:1px solid var(--border-color)}.dark-mode .metadata-title{color:#f8fafc!important}.dark-mode .metadata-subtitle{color:#94a3b8!important}.dark-mode .metadata-tab{color:#94a3b8}.dark-mode .metadata-tab:hover{color:#60a5fa}.dark-mode .metadata-tab.active{color:#60a5fa;border-bottom-color:#60a5fa}.dark-mode .search-input{background-color:var(--bg-tertiary);border-color:var(--border-color);color:#f1f5f9}.dark-mode .duplicates-panel{background-color:var(--bg-tertiary);border-color:var(--border-color)}.dark-mode .duplicates-header h3{color:#f8fafc}.dark-mode .duplicate-item{background-color:var(--bg-secondary);border-color:var(--border-color)}.dark-mode .duplicate-name{color:#f1f5f9!important}.dark-mode .duplicate-details{color:#cbd5e1}.dark-mode .standardizer-header h3{color:#f8fafc!important}.dark-mode .standardizer-header p{color:#cbd5e1!important}.dark-mode .column-panel{border-color:var(--border-color);background-color:var(--bg-secondary)}.dark-mode .column-header{background-color:var(--bg-tertiary);border-color:var(--border-color)}.dark-mode .column-header h4{color:#f8fafc!important}.dark-mode .column-list{background-color:var(--bg-secondary);color:#f1f5f9}.dark-mode .column-list div,.dark-mode .column-list label,.dark-mode .column-list span{color:#f1f5f9!important}.dark-mode .metadata-table th{background-color:#ffffff0d;color:#e2e8f0}.dark-mode .metadata-table td{border-color:var(--border-color);color:#f1f5f9}.dark-mode .metadata-table tr:hover td{background-color:#ffffff0d}.dark-mode .btn-secondary{background-color:transparent;border-color:var(--border-color);color:#f1f5f9}.dark-mode .btn-secondary:hover{background-color:#ffffff1a}.dark-mode .modal-content{background-color:#1e293b!important;border:1px solid var(--border-color);box-shadow:0 10px 15px -3px #00000080}.dark-mode .modal-title{color:#f8fafc}.dark-mode .modal-close{color:#cbd5e1}.dark-mode .form-label{color:#e2e8f0}.dark-mode .form-input{background-color:var(--bg-tertiary);border-color:var(--border-color);color:#f1f5f9}.standardizer-progress-info{display:flex;justify-content:space-between;margin-bottom:4px;font-size:.9rem;color:var(--text-secondary)}.dark-mode .standardizer-progress-info{color:#e2e8f0!important}.dark-mode .search-icon{color:#94a3b8}@media (max-width: 768px){.metadata-container{padding:1rem;border-radius:0;box-shadow:none;background:transparent}.metadata-header{margin-bottom:1.5rem}.metadata-actions-header{flex-direction:column;align-items:stretch;gap:1rem}.search-wrapper{max-width:100%}.metadata-actions-header>div:last-child{display:flex;flex-direction:column;width:100%;gap:.75rem}.metadata-actions-header>div[style*=flex]{display:flex;flex-direction:column;width:100%;gap:.75rem!important}.metadata-actions-header button{width:100%;justify-content:center;height:44px}.metadata-tabs{overflow-x:auto;white-space:nowrap;padding-bottom:.5rem;margin-bottom:1rem;-ms-overflow-style:none;scrollbar-width:none}.metadata-tabs::-webkit-scrollbar{display:none}.metadata-table thead{display:none}.metadata-table tbody,.metadata-table tr,.metadata-table td{display:block;width:100%}.metadata-table tr{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:1rem;padding:1rem;box-shadow:0 1px 3px #0000000d}.metadata-table td{padding:.5rem 0;border-bottom:none;text-align:left}.metadata-table td:first-child{font-size:1.1rem;font-weight:700;color:var(--text-primary);padding-bottom:.25rem}.metadata-table td:not(:first-child):not(:last-child){color:var(--text-secondary);font-size:.9rem;padding-top:0}.metadata-table td:last-child{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:1rem}.action-buttons{width:100%;justify-content:space-between}.action-buttons button{flex:1;display:flex;justify-content:center;align-items:center;padding:.75rem;border:1px solid var(--border-color);border-radius:8px}.columns-wrapper{grid-template-columns:1fr!important;gap:1rem!important}.standardizer-header{flex-direction:column!important;align-items:stretch!important;gap:1rem!important}.standardizer-header>div{width:100%}.standardizer-header>div:last-child{display:flex;flex-direction:column;gap:.75rem}.standardizer-header button{width:100%;justify-content:center}.column-list{max-height:300px!important}}.dark-mode .metadata-table tr{background-color:#1e293b!important;border:1px solid #334155!important;box-shadow:none}.dark-mode .metadata-table td:first-child{color:#f1f5f9!important}.dark-mode .metadata-table td{color:#cbd5e1!important;border-bottom:none}.dark-mode .metadata-table td:last-child{border-top-color:#334155!important}.dark-mode .action-buttons button{border-color:#475569;color:#cbd5e1}.dark-mode .action-buttons button:hover{background-color:#334155;color:#fff}.gestion-isbn-container{padding:2rem;max-width:1400px;margin:0 auto;background:var(--bg-primary)}.isbn-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid var(--border-color)}.isbn-title{font-size:1.875rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem}.isbn-subtitle{font-size:1rem;color:var(--text-secondary);margin:0}.isbn-actions{display:flex;gap:1rem}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border-radius:8px;font-weight:600;display:flex;align-items:center;gap:.5rem;cursor:pointer;transition:all .2s;border:none;font-size:.875rem}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.btn-primary:disabled{background-color:#94a3b8;cursor:not-allowed;opacity:.6}.btn-secondary{background-color:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background-color:#f8fafc;border-color:#94a3b8}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--text-secondary)}.loading-state .spin{animation:spin 1s linear infinite;color:var(--primary-color);margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.empty-state svg{color:var(--text-tertiary);margin-bottom:1rem}.empty-state h3{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.empty-state p{font-size:1rem;color:var(--text-secondary);margin:0}.isbn-list{display:grid;gap:1.5rem}.isbn-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;transition:all .2s}.isbn-card:hover{box-shadow:0 4px 12px #00000014;border-color:#cbd5e1}.isbn-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.book-info{display:flex;gap:1rem;flex:1}.book-thumbnail{width:80px;height:120px;-o-object-fit:cover;object-fit:cover;border-radius:6px;border:1px solid var(--border-color)}.book-details{flex:1}.book-title{font-size:1.125rem;font-weight:600;color:#1e293b;margin:0 0 .5rem;line-height:1.4}.book-author{font-size:.875rem;color:var(--text-secondary);margin:0 0 .25rem}.book-publisher{font-size:.85rem;color:#4b5563;font-style:italic;margin:0 0 .5rem}.book-code{font-size:.75rem;color:#94a3b8;margin:0;font-family:monospace}.isbn-status{display:flex;align-items:center}.status-badge{padding:.5rem 1rem;border-radius:6px;display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600}.status-badge.processing{background-color:#dbeafe;color:#1e40af}.status-badge.success{background-color:#d1fae5;color:#065f46}.status-badge.error{background-color:#fee2e2;color:#991b1b}.isbn-card-body{display:flex;flex-direction:column;gap:1rem}.isbn-result{display:flex;flex-direction:column;gap:.5rem}.isbn-result label{font-size:.875rem;font-weight:600;color:var(--text-secondary)}.isbn-display{padding:.75rem 1rem;background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;font-family:monospace;font-size:1rem;color:#0369a1;font-weight:600}.isbn-input-group{display:flex;flex-direction:column;gap:.5rem}.isbn-input-group label{font-size:.875rem;font-weight:600;color:var(--text-secondary)}.isbn-input{padding:.75rem 1rem;border:1px solid var(--input-border);border-radius:6px;font-size:.875rem;transition:all .2s;background:var(--input-bg);color:var(--input-text)}.isbn-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.isbn-input:disabled{background-color:#f8fafc;cursor:not-allowed;opacity:.6}.isbn-card-actions{display:flex;gap:.75rem;margin-top:.5rem}.btn-search,.btn-save{padding:.625rem 1.25rem;border-radius:6px;font-weight:600;font-size:.875rem;display:flex;align-items:center;gap:.5rem;cursor:pointer;transition:all .2s;border:none}.btn-search{background-color:#3b82f6;color:#fff;flex:1}.btn-search:hover:not(:disabled){background-color:#2563eb;transform:translateY(-1px);box-shadow:0 2px 8px #3b82f64d}.btn-search:disabled{background-color:#94a3b8;cursor:not-allowed;opacity:.6}.btn-save{background-color:#10b981;color:#fff;flex:0 0 auto}.btn-save:hover:not(:disabled){background-color:#059669;transform:translateY(-1px);box-shadow:0 2px 8px #10b9814d}.btn-save:disabled{background-color:#94a3b8;cursor:not-allowed;opacity:.6}@media (max-width: 768px){.gestion-isbn-container{padding:1rem;width:100%;box-sizing:border-box;overflow-x:hidden}.isbn-card{padding:1rem;width:100%;box-sizing:border-box}.isbn-input{width:100%;min-width:0}.isbn-header{flex-direction:column;align-items:stretch;gap:1rem}.isbn-actions{width:100%;flex-direction:column;gap:.75rem}.btn-primary,.btn-secondary{width:100%;justify-content:center;height:44px}.isbn-card-header{flex-direction:column;gap:1rem}.book-info{width:100%;flex-direction:column;align-items:center}.book-thumbnail{width:100px;height:150px}.book-details{width:100%}.book-details>div[style*=grid]{grid-template-columns:1fr!important;gap:.75rem!important}.book-details input{grid-column:1 / -1!important;font-size:16px}.isbn-card-actions{flex-direction:column;gap:.75rem}.btn-search,.btn-save{width:100%;justify-content:center;height:44px}}.dark-mode .gestion-isbn-container{background:var(--bg-primary);background:#0f172a}.dark-mode .isbn-title{color:#f1f5f9}.dark-mode .isbn-subtitle{color:#94a3b8}.dark-mode .isbn-header{border-bottom-color:#334155}.dark-mode .btn-secondary{background-color:#1e293b!important;color:#f1f5f9!important;border-color:#334155!important}.dark-mode .btn-secondary:hover:not(:disabled){background-color:#334155!important;border-color:#475569!important}.dark-mode .isbn-card{background:#1e293b;border-color:#334155}.dark-mode .isbn-card:hover{border-color:#475569;box-shadow:0 4px 12px #0003}.dark-mode .isbn-card-header{border-bottom-color:#334155}.dark-mode .book-title{color:#f1f5f9}.dark-mode .book-author{color:#cbd5e1}.dark-mode .book-code{color:#94a3b8}.dark-mode .isbn-result label,.dark-mode .isbn-input-group label{color:#cbd5e1}.dark-mode .isbn-display{background-color:#0f172a;border-color:#1e3a8a;color:#60a5fa}.dark-mode .isbn-input{background:#0f172a;border-color:#334155;color:#f1f5f9}.dark-mode .isbn-input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa26}.dark-mode .isbn-input:disabled{background-color:#1e293b;color:#64748b;border-color:#334155}.dark-mode .empty-state h3{color:#f1f5f9}.dark-mode .empty-state p,.dark-mode .empty-state svg{color:#94a3b8}.dark-mode .loading-state{color:#94a3b8}.dark-mode .loading-state .spin{color:#60a5fa}.admin-dashboard{min-height:calc(100vh - 70px);background:var(--bg-tertiary);padding:var(--spacing-8) 0}.invoices-section{display:flex;flex-direction:column;gap:var(--spacing-4)}.invoices-section .section-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-6);background:var(--bg-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.invoices-section .section-header h2{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary)}.pedidos-section{display:flex;flex-direction:column;gap:var(--spacing-4);width:100%;max-width:100%;overflow-x:hidden}.invoice-filters{display:flex;gap:var(--spacing-3);flex-wrap:wrap;padding:var(--spacing-4);background:var(--bg-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.filter-input,.filter-select{flex:1;min-width:200px;padding:var(--spacing-3);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--input-bg);color:var(--input-text);transition:all .2s ease}.filter-input:focus,.filter-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.container{max-width:1400px;margin:0 auto;padding:0 var(--spacing-4)}.access-denied{text-align:center;padding:var(--spacing-16) var(--spacing-8);background:var(--bg-secondary);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.access-denied h1{color:var(--danger-color);margin-bottom:var(--spacing-4)}.access-denied p{color:var(--text-secondary)}.dashboard-header{text-align:center;margin-bottom:var(--spacing-12)}.dashboard-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--spacing-2) 0}.dashboard-subtitle{font-size:var(--font-size-lg);color:var(--text-secondary);margin:0}.dashboard-sidebar{position:fixed;left:0;top:0;height:100vh;width:280px;background:var(--bg-secondary);border-right:1px solid var(--border-color);box-shadow:var(--shadow-md);display:flex;flex-direction:column;transition:width .3s ease-in-out,transform .3s ease-in-out;overflow-x:hidden;overflow-y:auto;z-index:40}.dashboard-sidebar.collapsed{width:80px}@media (max-width: 1024px){.dashboard-sidebar{position:fixed!important;left:0!important;top:0!important;width:280px!important;max-width:85vw!important;height:100vh!important;z-index:50!important;display:none!important;box-shadow:2px 0 8px #0000004d;overflow-x:visible!important;overflow-y:auto!important}.dashboard-sidebar.mobile-open{display:flex!important;animation:slideIn .3s ease-out}.dashboard-sidebar.collapsed,.dashboard-sidebar.collapsed.mobile-open{width:280px!important;max-width:85vw!important;overflow-x:visible!important}.dashboard-sidebar .nav-item-text,.dashboard-sidebar.collapsed .nav-item-text{opacity:1!important;width:auto!important;overflow:visible!important;white-space:nowrap!important;display:inline-block!important}.dashboard-sidebar .sidebar-title,.dashboard-sidebar.collapsed .sidebar-title{opacity:1!important;width:auto!important;display:inline-block!important}.dashboard-sidebar .sidebar-section-title,.dashboard-sidebar.collapsed .sidebar-section-title{display:block!important;opacity:1!important}.dashboard-sidebar .nav-item,.dashboard-sidebar.collapsed .nav-item{justify-content:flex-start!important;padding:.75rem 1rem!important;gap:.75rem!important}.dashboard-sidebar .sidebar-header,.dashboard-sidebar.collapsed .sidebar-header{flex-direction:row!important;justify-content:space-between!important;padding:1.5rem!important;gap:.75rem!important}.dashboard-sidebar .sidebar-logo,.dashboard-sidebar.collapsed .sidebar-logo{display:flex!important;align-items:center!important;gap:.75rem!important}.dashboard-sidebar .sidebar-nav,.dashboard-sidebar.collapsed .sidebar-nav{display:flex!important;flex-direction:column!important;overflow-x:hidden!important;overflow-y:auto!important}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--border-color);min-height:80px;position:relative}.sidebar-logo{display:flex;align-items:center;gap:.75rem;overflow:hidden}.sidebar-logo-img{width:40px;height:40px;flex-shrink:0;transition:all .3s}.sidebar-title{font-weight:600;font-size:1.125rem;white-space:nowrap;color:var(--text-primary);transition:opacity .2s ease-in-out}.dark-mode .sidebar-title,:root.dark-mode .sidebar-title{color:#f1f5f9}.collapsed .sidebar-title{opacity:0;width:0}.sidebar-toggle{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);flex-shrink:0}.sidebar-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.dark-mode .sidebar-toggle,:root.dark-mode .sidebar-toggle{background:#334155;border-color:#475569;color:#f1f5f9}.dark-mode .sidebar-toggle:hover,:root.dark-mode .sidebar-toggle:hover{background:#475569;color:#fff}@media (max-width: 1024px){.sidebar-toggle{display:none}}.collapsed .sidebar-header{justify-content:center;padding:1rem;flex-direction:column;gap:.75rem}.collapsed .sidebar-toggle{position:relative;right:auto;background:var(--bg-secondary);box-shadow:0 2px 8px #0000001a}.dark-mode .collapsed .sidebar-toggle,:root.dark-mode .collapsed .sidebar-toggle{background:#1e293b;box-shadow:0 2px 8px #0000004d}.sidebar-nav{flex:1;display:flex;flex-direction:column;padding:1rem .5rem;overflow-y:auto;overflow-x:hidden;gap:.25rem}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:var(--radius-md);color:var(--text-secondary);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s;text-decoration:none;border:none;background:transparent;width:100%;font-size:.875rem;position:relative}.collapsed .nav-item{justify-content:center;padding:.75rem}.nav-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}:root:not(.dark-mode) .nav-item.active{background:#f0fdf4;color:#15803d;border-right:4px solid #16a34a;font-weight:600}:root:not(.dark-mode) .nav-item.active:hover{background:#dcfce7;color:#15803d}.dark-mode .nav-item,:root.dark-mode .nav-item{color:#f1f5f9}.dark-mode .nav-item.active,:root.dark-mode .nav-item.active{background:#3b82f626;color:#60a5fa;border-right:4px solid #3b82f6;font-weight:600;box-shadow:none}.dark-mode .nav-item.active:hover,:root.dark-mode .nav-item.active:hover{background:#3b82f640;color:#60a5fa}.nav-item-icon{flex-shrink:0;width:20px;height:20px}.nav-item-icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notification-dot{position:absolute;top:-2px;right:-2px;width:8px;height:8px;background-color:#ef4444;border-radius:50%;border:2px solid var(--bg-secondary);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.nav-item-text{white-space:nowrap;transition:opacity .2s ease-in-out}.collapsed .nav-item-text{opacity:0;width:0;overflow:hidden}.sidebar-section-title{padding:1rem 1rem .5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--text-tertiary);letter-spacing:.05em;transition:all .2s}.nav-section{margin-bottom:.5rem}.section-header{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important;width:100%;padding:.75rem 1rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;background:none;border:none;cursor:pointer;transition:all .2s}.section-header:hover{color:#f8fafc}.section-content{display:flex;flex-direction:column;gap:.25rem}.dark-mode .section-header{color:#64748b}.dark-mode .section-header:hover{color:#e2e8f0}:root:not(.dark-mode) .section-header{color:#64748b}:root:not(.dark-mode) .section-header:hover{color:#1e293b}.dark-mode .sidebar-section-title,:root.dark-mode .sidebar-section-title{color:#94a3b8}.sidebar-footer{margin-top:auto;border-top:1px solid var(--border-color);padding:1rem .5rem;display:flex;flex-direction:column;gap:.25rem}.logout-btn{color:var(--danger-color)!important}.logout-btn:hover{background:var(--danger-100)!important;color:var(--danger-hover)!important}.dark-mode .logout-btn,:root.dark-mode .logout-btn{color:#f1f5f9!important}.dark-mode .logout-btn:hover,:root.dark-mode .logout-btn:hover{background:#ef444426!important;color:#fca5a5!important}.dashboard-content-wrapper{margin-left:280px;transition:margin-left .3s ease-in-out;min-height:100vh;display:flex;flex-direction:column;width:calc(100% - 280px)}.dashboard-content-wrapper.sidebar-collapsed{margin-left:80px;width:calc(100% - 80px)}@media (max-width: 1024px){.dashboard-content-wrapper,.dashboard-content-wrapper.sidebar-collapsed{margin-left:0;width:100%}}.invoices-manager,.orders-manager,.books-manager,.metadata-manager,.clients-manager{width:100%}.dashboard-content{background:var(--bg-secondary);border-radius:var(--radius-xl);min-width:0;overflow-x:hidden;padding:var(--spacing-8);box-shadow:var(--shadow-md);border:1px solid var(--border-color);min-height:600px}.content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-8);padding-bottom:var(--spacing-6);border-bottom:1px solid var(--border-color)}.content-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0}.content-subtitle{color:var(--text-secondary);margin:var(--spacing-2) 0 0 0}.admin-search{position:relative;flex:1;min-width:200px}.admin-search-input{width:100%;height:42px;padding:var(--spacing-2) var(--spacing-4) var(--spacing-2) var(--spacing-12);border:2px solid var(--border-color);border-radius:var(--radius-lg);font-size:var(--font-size-base);background:var(--bg-tertiary);color:var(--text-primary);transition:var(--transition-base)}.admin-search-input:focus{outline:none;border-color:var(--primary-color);background:var(--bg-primary);box-shadow:0 0 0 3px #2563eb1a}.admin-search-icon{position:absolute;left:var(--spacing-4);top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none}.stats-section{display:flex;flex-direction:column;gap:var(--spacing-8)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-6)}@media (max-width: 1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr}}.charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-6);margin-bottom:var(--spacing-8)}@media (max-width: 1024px){.charts-grid{grid-template-columns:1fr!important}}.stat-card{background:var(--bg-secondary);padding:var(--spacing-8);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--border-color);display:flex;align-items:center;gap:var(--spacing-6);transition:var(--transition-base)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}:root:not(.dark-mode) .admin-dashboard{background:#f1f5f9}:root:not(.dark-mode) .dashboard-sidebar{background:#e2e8f0;border-color:#cbd5e1;box-shadow:0 4px 6px -1px #00000014}:root:not(.dark-mode) .sidebar-toggle{background:#f8fafc;border-color:#cbd5e1;color:#475569}:root:not(.dark-mode) .sidebar-toggle:hover{background:#f1f5f9;color:#1e293b}:root:not(.dark-mode) .collapsed .sidebar-toggle{background:#e2e8f0}:root:not(.dark-mode) .stat-card{background:#fff;border-color:#cbd5e1}:root:not(.dark-mode) .stat-card:hover{box-shadow:0 10px 25px #0000001a}:root:not(.dark-mode) .company-info{background:#fff;border-color:#cbd5e1}:root:not(.dark-mode) .invoices-section .section-header{background:#fff;border-color:#cbd5e1;box-shadow:0 2px 4px #0000000f}:root:not(.dark-mode) .invoice-filters{background:#fff;border-color:#cbd5e1;box-shadow:0 2px 4px #0000000f}:root:not(.dark-mode) .data-table{background:#fff;border-color:#cbd5e1}:root:not(.dark-mode) .table-header{background:#f8fafc;border-color:#cbd5e1}:root:not(.dark-mode) .table-row{border-color:#e2e8f0}:root:not(.dark-mode) .pedidos-section .section-header{background:#fff;border-color:#cbd5e1;box-shadow:0 2px 4px #0000000f}.stat-icon{width:60px;height:60px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:#1e293b}.stat-icon.books{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-hover) 100%)}.stat-icon.invoices{background:linear-gradient(135deg,var(--success-color) 0%,#059669 100%)}.stat-icon.orders{background:linear-gradient(135deg,var(--warning-color) 0%,#d97706 100%)}.stat-icon.revenue{background:linear-gradient(135deg,var(--danger-color) 0%,var(--danger-hover) 100%)}.stat-info{display:flex;flex-direction:column;gap:var(--spacing-1)}.stat-value{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary)}.stat-label{color:var(--text-secondary);font-weight:var(--font-weight-medium)}.action-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-6);border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:var(--transition-base);border:none;text-decoration:none}.action-btn.primary{background:linear-gradient(135deg,var(--success-600) 0%,var(--success-700) 100%);color:#fff}.action-btn.primary:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}:root:not(.dark-mode) .action-btn.primary{color:#1f2937}.invoices-section .action-btn.primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;font-weight:600}.invoices-section .action-btn.primary svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));stroke-width:2.5}.invoices-section .action-btn.primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 10px 25px #2563eb4d}.invoices-section .action-btn.primary:hover svg{filter:drop-shadow(0 2px 3px rgba(0,0,0,.4))}.action-btn.secondary{background:var(--secondary-100);color:var(--secondary-700);border:2px solid var(--secondary-200)}.action-btn.secondary:hover{background:var(--secondary-200);border-color:var(--secondary-300)}.data-table{background:var(--bg-secondary);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color);margin-top:var(--spacing-6)}.table-header{display:grid;padding:var(--spacing-4) var(--spacing-6);background:var(--bg-tertiary);font-weight:var(--font-weight-semibold);color:var(--text-secondary);border-bottom:1px solid var(--border-color);font-size:var(--font-size-sm);align-items:center}.table-row{display:grid!important;padding:var(--spacing-4) var(--spacing-6);border-bottom:1px solid var(--border-color);align-items:center;transition:var(--transition-base);min-height:80px}.table-row:hover{background:var(--bg-hover)}.table-row:last-child{border-bottom:none}.admin-books-table .table-header{display:grid;align-items:center;grid-template-columns:80px 80px 2fr 1.5fr 1.5fr 1fr 80px 1fr 1fr 200px;gap:var(--spacing-4);padding-bottom:var(--spacing-4);border-bottom:2px solid var(--border-color);margin-bottom:var(--spacing-4)}.admin-books-table .admin-book-row{display:grid;align-items:center;grid-template-columns:80px 80px 2fr 1.5fr 1.5fr 1fr 80px 1fr 1fr 200px;gap:var(--spacing-4);padding:1rem var(--spacing-6);margin-bottom:.75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px}.admin-book-cover{width:50px;height:65px;border-radius:var(--radius-sm);overflow:hidden;box-shadow:var(--shadow-sm);justify-self:center}.admin-book-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.admin-book-code{color:var(--primary-600);font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs);font-family:var(--font-family-mono);background:var(--primary-50);padding:var(--spacing-2);border-radius:var(--radius-sm);text-align:center}.admin-book-title{font-weight:var(--font-weight-semibold);color:var(--text-primary);font-size:var(--font-size-sm);line-height:var(--line-height-tight)}.admin-book-author,.admin-book-publisher,.admin-book-category{color:var(--text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-tight)}.admin-book-pages,.admin-book-price{font-weight:var(--font-weight-semibold);color:var(--text-primary);font-size:var(--font-size-sm);text-align:center}.admin-book-stock{font-weight:var(--font-weight-semibold);color:var(--success-color);font-size:var(--font-size-sm);text-align:center}.admin-book-stock.out-of-stock{color:var(--error-600)}.admin-book-actions{display:flex;gap:var(--spacing-2);justify-content:center}.admin-book-actions .edit-btn,.admin-book-actions .delete-btn{width:32px;height:32px;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-base);padding:0;flex-shrink:0}.admin-book-actions .edit-btn{background:var(--primary-100);color:var(--primary-600)}.admin-book-actions .edit-btn:hover{background:var(--primary-600);color:#fff}.admin-book-actions .delete-btn{background:var(--error-100);color:var(--error-600)}.admin-book-actions .delete-btn:hover{background:var(--error-600);color:#fff}.admin-stock-actions{display:flex;gap:.25rem;margin-right:.5rem}.admin-stock-actions .stock-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;border-radius:4px;cursor:pointer;transition:all .2s}.admin-stock-actions .stock-btn.increase{background:var(--success-100);color:var(--success-700)}.admin-stock-actions .stock-btn.increase:hover{background:var(--success-600);color:#fff}.admin-stock-actions .stock-btn.decrease{background:var(--error-100);color:var(--error-700)}.admin-stock-actions .stock-btn.decrease:hover{background:var(--error-600);color:#fff}.admin-stock-actions .stock-btn:disabled{opacity:.5;cursor:not-allowed}.invoices-table .table-header,.invoices-table .table-row{grid-template-columns:120px 2fr 1.5fr 120px 100px 120px 100px;gap:var(--spacing-4)}.invoice-number{font-family:var(--font-family-mono);font-weight:var(--font-weight-semibold);color:var(--primary-600);background:var(--primary-50);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.status-badge{padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-align:center}.status-badge.paid{background:var(--success-100);color:var(--success-700)}.status-badge.pending{background:var(--warning-100);color:var(--warning-700)}.status-badge.overdue{background:var(--error-100);color:var(--error-700)}.status-badge.cancelled{background:var(--secondary-100);color:var(--secondary-700)}.orders-table .table-header,.orders-table .table-row{grid-template-columns:120px 2fr 1.5fr 120px 120px 100px 120px;gap:var(--spacing-4)}.order-number{font-family:var(--font-family-mono);font-weight:var(--font-weight-semibold);color:var(--warning-600);background:var(--warning-50);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.status-badge.processing{background:var(--primary-100);color:var(--primary-700)}.status-badge.shipped{background:var(--warning-100);color:var(--warning-700)}.status-badge.delivered{background:var(--success-100);color:var(--success-700)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--spacing-8)}.admin-dashboard .modal{background-color:#fff;background-color:var(--bg-secondary);border-radius:var(--radius-xl);padding:var(--spacing-8);max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-2xl);border:1px solid var(--border-color);color:var(--text-primary);position:relative;isolation:isolate}.dark-mode .admin-dashboard .modal,.dark-mode .modal,.admin-dashboard.dark .modal{background-color:#1e293b!important;color:#f1f5f9;border-color:#334155}.admin-dashboard .modal-overlay{background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-8);padding-bottom:var(--spacing-6);border-bottom:1px solid var(--border-color)}.modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0}.close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:var(--spacing-2);border-radius:var(--radius-sm);transition:var(--transition-base)}.close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-6);margin-bottom:var(--spacing-6)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-2)}.form-group.full-width{grid-column:1 / -1}.form-group label{font-weight:var(--font-weight-semibold);color:var(--text-secondary);font-size:var(--font-size-sm)}.form-input,.form-select,.form-textarea{padding:var(--spacing-3) var(--spacing-4);border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-sm);background-color:#fff;background-color:var(--input-bg);transition:var(--transition-base);color:#1f2937;color:var(--text-primary)}.info-value-group{display:flex;flex-direction:column}.info-subvalue{font-size:.75rem;color:var(--text-secondary);font-weight:500}.dark-mode .info-subvalue{color:#bdcccf}.dark-mode .form-input,.dark-mode .form-select,.dark-mode .form-textarea{background-color:#0f172a;border-color:#334155;color:#f1f5f9}.form-input::-moz-placeholder,.form-textarea::-moz-placeholder{color:#9ca3af;color:var(--text-tertiary)}.form-input::placeholder,.form-textarea::placeholder{color:#9ca3af;color:var(--text-tertiary)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary-color);background:var(--bg-primary);box-shadow:0 0 0 3px #2563eb1a}.form-textarea{resize:vertical;min-height:100px}.form-group input[type=checkbox]{accent-color:var(--primary-600);cursor:pointer}.form-group input[type=checkbox]:focus{outline:2px solid var(--primary-600);outline-offset:2px}.form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-4);padding-top:var(--spacing-6);border-top:1px solid var(--border-color)}.save-btn{background:linear-gradient(135deg,var(--primary-600) 0%,var(--primary-700) 100%);color:#fff;border:none;padding:var(--spacing-3) var(--spacing-6);border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:var(--transition-base);display:flex;align-items:center;gap:var(--spacing-2)}.save-btn:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.company-info{background:var(--bg-tertiary);padding:var(--spacing-6);border-radius:var(--radius-lg);border:1px solid var(--border-color)}.company-header{display:flex;align-items:center;gap:var(--spacing-4);margin-bottom:var(--spacing-6)}.company-logo{width:80px;height:80px;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);background:transparent}.company-logo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;background:transparent}.company-details{flex:1}.company-name{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--spacing-1) 0}.company-tagline{color:var(--text-secondary);margin:0}.company-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-4)}.info-item{display:flex;justify-content:space-between;padding:var(--spacing-3);background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color)}.info-label{color:var(--text-secondary);font-weight:var(--font-weight-medium)}.info-value{font-weight:var(--font-weight-semibold)}.dark-mode .invoice-stats .stat-card{color:#fff!important}.dark-mode .invoice-stats .stat-card .stat-label{color:#e2e8f0!important;opacity:.9}.dark-mode .invoice-stats .stat-card .stat-value{color:#fff!important}.dark-mode .invoice-stats .stat-card.total{background-color:#1e293b99!important;border-color:#334155!important}.dark-mode .invoice-stats .stat-card.pendiente{background-color:#43140766!important;border-color:#fb923c33!important}.dark-mode .invoice-stats .stat-card.pendiente .stat-value{color:#fb923c!important}.dark-mode .invoice-stats .stat-card.pagada{background-color:#064e3b66!important;border-color:#34d39933!important}.dark-mode .invoice-stats .stat-card.pagada .stat-value{color:#34d399!important}.dark-mode .invoice-stats .stat-card.anulada{background-color:#7f1d1d66!important;border-color:#f8717133!important}.dark-mode .invoice-stats .stat-card.anulada .stat-value{color:#f87171!important}.dark-mode .invoice-stats .stat-card.total-amount{background-color:#14532d66!important;border-color:#4ade8033!important}.dark-mode .invoice-stats .stat-card.total-amount .stat-value{color:#4ade80!important}@media (max-width: 1200px){.dashboard-layout{grid-template-columns:1fr;gap:var(--spacing-6)}.dashboard-sidebar{position:static}.sidebar-nav{flex-direction:row;overflow-x:auto;gap:var(--spacing-1)}.nav-item{white-space:nowrap;flex-shrink:0}}@media (max-width: 768px){.stats-grid{grid-template-columns:repeat(2,1fr)}.content-header{flex-wrap:wrap}.admin-search{max-width:100%;order:2;width:100%}.admin-books-table .table-header{display:none}.admin-books-table .admin-book-row{display:grid;grid-template-columns:1fr 100px;grid-template-rows:auto auto auto auto auto;gap:1rem;padding:1.25rem;position:relative;border:1px solid var(--border-color);border-radius:12px;margin-bottom:1rem;background:var(--bg-secondary);align-items:center;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.admin-book-code{grid-column:1 / -1;grid-row:1;width:100%;text-align:left;display:block!important;font-size:1.1rem;font-weight:700;color:var(--primary);background:transparent;padding:0;margin-bottom:.5rem}.admin-book-cover{grid-column:2;grid-row:2 / 4;width:100%;height:140px;-o-object-fit:cover;object-fit:cover;border-radius:8px;justify-self:end;box-shadow:var(--shadow-sm)}.admin-book-title{grid-column:1;grid-row:2;font-size:1.05rem;font-weight:600;color:var(--text-primary);line-height:1.3;padding-right:var(--spacing-2);align-self:end;margin-bottom:.25rem}.admin-book-author{grid-column:1;grid-row:3;font-size:.9rem;color:var(--text-secondary);align-self:start}.admin-book-price{grid-column:1;grid-row:4;font-size:1.5rem;font-weight:800;color:var(--text-primary);text-align:left;align-self:center}.admin-book-stock{grid-column:2;grid-row:4;display:flex!important;align-items:center;justify-content:center;background:transparent;padding:0;border:none;font-size:1.25rem;font-weight:700;color:#10b981}.admin-book-actions{grid-column:1 / -1;grid-row:5;display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.75rem;padding-top:1rem;border-top:1px solid var(--border-color);width:100%}.admin-stock-actions{display:contents}.admin-book-actions button,.admin-stock-actions button{flex:1;height:44px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s;border:1px solid transparent;box-shadow:0 1px 2px #0000000d;width:auto!important;max-width:none!important}.admin-stock-actions .stock-btn.increase{background:#10b9811a;border-color:#10b9814d;color:#10b981}.admin-stock-actions .stock-btn.increase:active{background:#10b98140}.admin-stock-actions .stock-btn.decrease{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.admin-stock-actions .stock-btn.decrease:active{background:#ef444440}.admin-book-actions>.edit-btn{background:#3b82f61a;border-color:#3b82f64d;color:#3b82f6}.admin-book-actions>.edit-btn:active{background:#3b82f640}.admin-book-actions>.delete-btn{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.admin-book-actions>.delete-btn:active{background:#ef444440}.admin-book-actions button:hover{filter:brightness(.95)}.admin-book-actions svg{width:20px;height:20px}.dark-mode .admin-book-actions button,.dark-mode .admin-stock-actions button{box-shadow:none}.dark-mode .admin-stock-actions .stock-btn.increase{color:#34d399;border-color:#34d3994d;background:#05966926}.dark-mode .admin-stock-actions .stock-btn.decrease{color:#f87171;border-color:#f871714d;background:#dc262626}.dark-mode .admin-book-actions>.edit-btn{color:#60a5fa;border-color:#60a5fa4d;background:#2563eb26}.dark-mode .admin-book-actions>.delete-btn{color:#f87171;border-color:#f871714d;background:#dc262626}.admin-book-publisher,.admin-book-category,.admin-book-pages{display:none}.dark-mode .admin-book-code{color:#94a3b8;background:#1e293b80}.dark-mode .admin-book-title{color:#f1f5f9}.dark-mode .admin-book-author{color:#cbd5e1}.dark-mode .admin-book-stock{color:#34d399}}@media (max-width: 768px){.invoice-filters,.book-filters,.filters-container{display:flex;flex-direction:column;align-items:stretch;gap:1rem;height:auto!important}.filter-group{width:100%}.filter-input,.filter-select,.filters-container select,.filters-container input:not([type=checkbox]),.form-select,.form-input{width:100%!important;min-width:0;height:48px!important;padding:0 1rem!important;font-size:1rem!important;line-height:normal!important;background-color:var(--bg-tertiary);border-radius:8px!important}.filters-container input[type=checkbox]{width:20px!important;height:20px!important;padding:0!important;margin:0!important}textarea.form-input{line-height:1.5!important;padding-top:.5rem!important}.admin-search{margin:0 0 1rem!important;flex:none!important}.content-header>div:first-child{margin-bottom:1rem}.checkbox-filters-container .clean-filters-btn{width:100%;height:48px;justify-content:center;margin-top:1rem}.dark-mode .clean-filters-btn{color:#f87171;border-color:#f87171;background:#ef44441a}.content-title{font-size:1.5rem}.admin-dashboard{padding:var(--spacing-4) 0}.dashboard-title{font-size:var(--font-size-3xl)}.stats-grid{grid-template-columns:1fr}.stat-card{padding:var(--spacing-6)}.stat-icon{width:50px;height:50px}.stat-value{font-size:var(--font-size-2xl)}.content-header{flex-direction:column;gap:var(--spacing-4);align-items:stretch}.content-header>div:first-child{text-align:center}.admin-search{max-width:100%}.modal{padding:var(--spacing-6)}.form-grid{grid-template-columns:1fr;gap:var(--spacing-4)}.table-header{display:none}.table-row{display:flex;flex-direction:column;padding:var(--spacing-6);border:1px solid var(--secondary-200);border-radius:var(--radius-md);margin-bottom:var(--spacing-4);background:#fff}.book-cover{align-self:center;width:60px;height:75px}.company-info-grid{grid-template-columns:1fr}}@media (max-width: 480px){.container{padding:0 var(--spacing-3)}.dashboard-header{margin-bottom:var(--spacing-6)}.dashboard-title{font-size:var(--font-size-2xl)}.dashboard-subtitle{font-size:var(--font-size-base)}.stat-card{flex-direction:column;text-align:center;gap:var(--spacing-4)}.modal-overlay{padding:var(--spacing-4)}.modal{padding:var(--spacing-4);max-height:85vh}.modal-title{font-size:var(--font-size-lg)}.content-header{padding:0}.content-title{font-size:var(--font-size-xl)}.table-row{padding:var(--spacing-4)}.pedidos-section{padding:0}.dashboard-content{padding:var(--spacing-4)}.action-btn{width:100%;justify-content:center}.company-header{flex-direction:column;text-align:center}.company-logo{width:60px;height:60px}.form-actions{flex-direction:column}.save-btn{width:100%;justify-content:center}}.dark-mode .admin-dashboard{background:#0f172a}.dark-mode .dashboard-title{color:#f1f5f9}.dark-mode .dashboard-subtitle{color:#cbd5e1}.dark-mode .invoice-filters{background:#1e293b;border-color:#334155}.dark-mode .filter-input,.dark-mode .filter-select{background:#0f172a;color:#f1f5f9;border-color:#334155}.dark-mode .filter-input:focus,.dark-mode .filter-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633}.dark-mode .dashboard-sidebar{background:#1e293b;border-color:#334155}.dark-mode .sidebar-nav-item{color:#cbd5e1}.dark-mode .sidebar-nav-item:hover{background:#334155;color:#60a5fa}.dark-mode .sidebar-nav-item.active{background:#1e3a8a;color:#60a5fa}.dark-mode .dashboard-content,.dark-mode .stats-grid{background:#0f172a}.dark-mode .stat-card{background:#1e293b;border-color:#334155}.dark-mode .stat-card:hover{background:#334155;box-shadow:0 4px 12px #00000080}.dark-mode .stat-value{color:#f1f5f9}.dark-mode .access-denied{background:#1e293b;border-color:#334155}.dark-mode .access-denied h1{color:#f87171}.dark-mode .access-denied p{color:#cbd5e1}.dark-mode .content-header{border-bottom-color:#334155}.dark-mode .content-title{color:#f1f5f9}.dark-mode .content-subtitle{color:#94a3b8}.dark-mode .data-table{background:#1e293b;border-color:#334155}.dark-mode .table-header{background:#0f172a;color:#cbd5e1;border-bottom-color:#334155}.dark-mode .table-row{border-bottom-color:#334155}.dark-mode .table-row:hover{background:#334155}.dark-mode .admin-book-code{background:#3b82f626;color:#60a5fa}.dark-mode .admin-book-title{color:#f1f5f9}.dark-mode .admin-book-author,.dark-mode .admin-book-publisher,.dark-mode .admin-book-category{color:#94a3b8}.dark-mode .admin-book-pages,.dark-mode .admin-book-price{color:#f1f5f9}.dark-mode .admin-book-stock{color:#34d399}.dark-mode .invoice-number,.dark-mode .order-number{background:#3b82f626;color:#60a5fa}.dark-mode .modal{background:#1e293b}.dark-mode .modal-header{border-bottom-color:#334155}.dark-mode .modal-title{color:#f1f5f9}.dark-mode .close-btn{color:#94a3b8}.dark-mode .close-btn:hover{background:#334155;color:#f1f5f9}.dark-mode .form-input,.dark-mode .form-select,.dark-mode .form-textarea{background:#0f172a;color:#f1f5f9;border-color:#334155}.dark-mode .form-input:focus,.dark-mode .form-select:focus,.dark-mode .form-textarea:focus{border-color:#3b82f6;background:#1e293b;box-shadow:0 0 0 3px #3b82f633}.dark-mode .form-actions{border-top-color:#334155}.dark-mode .admin-search-input{background:#1e293b;border-color:#475569;color:#f1f5f9}.dark-mode .admin-search-input:focus{background:#0f172a;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f64d}.dark-mode .admin-search-icon{color:#64748b}.dark-mode .company-info{background:#1e293b;border-color:#334155}.dark-mode .company-name{color:#f1f5f9}.dark-mode .company-tagline{color:#94a3b8}.dark-mode .info-item{background:#0f172a;border-color:#334155}.dark-mode .info-label{color:#94a3b8}.dark-mode .info-value{color:#f1f5f9}.dark-mode .action-btn.secondary{background:#334155;color:#cbd5e1;border-color:#475569}.dark-mode .action-btn.secondary:hover{background:#475569;border-color:#64748b}.dark-mode .book-actions .edit-btn{background:#3b82f626;color:#60a5fa}.dark-mode .book-actions .edit-btn:hover{background:#3b82f6;color:#fff}.dark-mode .book-actions .delete-btn{background:#ef444426;color:#f87171}.dark-mode .book-actions .delete-btn:hover{background:#ef4444;color:#fff}.modal-toggle-group{padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);display:flex;gap:1rem;align-items:center;justify-content:center}.modal-toggle-btn{padding:.5rem 1rem;border:1px solid var(--border-color);background-color:var(--bg-primary);color:var(--text-secondary);border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:.5rem;font-weight:400;transition:all .2s}.modal-toggle-btn.active{border:2px solid var(--primary-color);background-color:var(--primary-50);color:var(--primary-color);font-weight:600;border-color:var(--primary-color)}.dark-mode .modal-toggle-btn.active{background-color:#3b82f61a}.isbn-search-container{padding:1.5rem;background-color:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.isbn-search-container h4{margin-bottom:1rem;color:var(--text-primary);font-size:1rem;font-weight:600}.isbn-search-container p{margin-bottom:1rem;color:var(--text-secondary);font-size:.875rem}.search-actions{display:flex;gap:.75rem}.search-input{flex:1;padding:.75rem;border:1px solid var(--border-color);border-radius:8px;font-size:.875rem;background:var(--input-bg);color:var(--input-text)}.search-input:disabled{opacity:.6;cursor:not-allowed}.search-btn{padding:.75rem 1.5rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:.5rem;min-width:120px;justify-content:center;transition:background-color .2s}.search-btn:disabled{background-color:var(--text-tertiary);cursor:not-allowed}.search-btn:hover:not(:disabled){background-color:var(--primary-hover)}.create-book-modal{background-color:#fff!important;color:#1f2937}body.dark-mode .create-book-modal,html.dark-mode .create-book-modal,.dark-mode .create-book-modal{background-color:#1e293b!important;color:#f1f5f9!important;border-color:#334155!important}.dark-mode .create-book-modal .form-input,.dark-mode .create-book-modal .form-select,.dark-mode .create-book-modal .form-textarea,.dark-mode .create-book-modal .search-input{background-color:#0f172a!important;color:#f1f5f9!important;border-color:#334155!important}.invoice-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;margin-bottom:1.5rem;max-width:100%}.invoice-stats .stat-card{background:var(--bg-secondary);padding:1.25rem;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;gap:.5rem;transition:transform .2s,box-shadow .2s;min-width:0}.invoice-stats .stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.invoice-stats .stat-card.total{background:var(--bg-tertiary);border:1px solid var(--border-color)}.invoice-stats .stat-card.pendiente{background:#fef9f3;border:1px solid #fed7aa}.invoice-stats .stat-card.pendiente .stat-value{color:#ea580c}.invoice-stats .stat-card.pagada{background:#f0fdf4;border:1px solid #bbf7d0}.invoice-stats .stat-card.pagada .stat-value{color:#16a34a}.invoice-stats .stat-card.anulada{background:#fee2e2;border:1px solid #fecaca}.invoice-stats .stat-card.anulada .stat-value{color:#dc2626}.invoice-stats .stat-card.total-amount{background:#f0fdfa;border:1px solid #99f6e4}.invoice-stats .stat-card.total-amount .stat-value{color:#0d9488}.invoice-stats .stat-label{font-size:.8125rem;font-weight:500;color:var(--text-secondary);order:1}.invoice-stats .stat-value{font-size:1.875rem;font-weight:700;line-height:1;order:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-stats .stat-card.total .stat-value{color:var(--text-primary)}.dark-mode .invoice-stats .stat-card.pendiente{background:#ea580c1a;border-color:#ea580c33}.dark-mode .invoice-stats .stat-card.pagada{background:#16a34a1a;border-color:#16a34a33}.dark-mode .invoice-stats .stat-card.anulada{background:#ef44441a;border-color:#ef444433}.dark-mode .invoice-stats .stat-card.total-amount{background:#0d94881a;border-color:#0d948833}.dark-mode .invoice-stats .stat-card.total{background:#94a3b81a;border-color:#94a3b833}.form-input.no-spinner::-webkit-outer-spin-button,.form-input.no-spinner::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.form-input.no-spinner{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.cancel-btn{padding:.75rem 1.5rem;border:1px solid var(--border-color);background-color:var(--bg-primary);color:var(--text-primary);border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s;font-size:.875rem}.cancel-btn:hover{background-color:var(--bg-secondary)}.save-btn{padding:.75rem 1.5rem;border:none;background-color:#10b981;color:#fff;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s;font-size:.875rem}.save-btn:hover{background-color:#059669}.save-btn:disabled{opacity:.7;cursor:not-allowed}.dark-mode .cancel-btn{background-color:#1e293b;border-color:#334155;color:#e2e8f0}.dark-mode .cancel-btn:hover{background-color:#334155;color:#fff}.dark-mode .stat-value{color:#f1f5f9!important}.dark-mode .stat-label{color:#94a3b8}.dark-mode .content-title,.dark-mode .dashboard-title{color:#f1f5f9}.dark-mode .content-subtitle,.dark-mode .dashboard-subtitle{color:#94a3b8}.dark-mode .stat-icon{color:#fff!important}.checkbox-filters-container{flex:1 1 100%;display:flex;gap:1.5rem;align-items:center;padding-top:.5rem;border-top:1px solid var(--border-color);margin-top:.5rem;flex-wrap:wrap}.clean-filters-btn{margin-left:auto;padding:.5rem 1rem;background:transparent;border:1px solid #ef4444;color:#ef4444;border-radius:4px;cursor:pointer;white-space:nowrap}.clean-filters-btn:hover{background:#ef44441a}@media (max-width: 768px){.checkbox-filters-container{flex-direction:column;align-items:flex-start;gap:1rem}.clean-filters-btn{margin-left:0;width:100%;margin-top:.5rem;text-align:center}.search-actions{flex-direction:column;align-items:stretch}.isbn-search-container .search-input,.isbn-search-container .search-btn{width:100%;min-width:0}.form-row-2,.form-row-3{grid-template-columns:1fr!important}.form-input,.form-select,.search-input{font-size:16px!important;padding:.75rem!important}}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;margin-bottom:1rem}.stock-actions{display:flex;gap:.5rem;margin-right:1rem;border-right:1px solid var(--border-color);padding-right:1rem}.stock-btn{width:32px;height:32px;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-base)}.stock-btn.increase{background:#dcfce7;color:#16a34a}.stock-btn.increase:hover{background:#16a34a;color:#fff}.stock-btn.decrease{background:#fee2e2;color:#dc2626}.stock-btn.decrease:hover{background:#dc2626;color:#fff}.stock-btn.decrease:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed;opacity:.6}.dark-mode .stock-actions{border-right-color:#334155}.dark-mode .stock-btn.increase{background:#16a34a33;color:#4ade80}.dark-mode .stock-btn.increase:hover{background:#16a34a;color:#fff}.dark-mode .stock-btn.decrease{background:#dc262633;color:#f87171}.dark-mode .stock-btn.decrease:hover{background:#dc2626;color:#fff}.dark-mode .stock-btn.decrease:disabled{background:#1e293b;color:#475569}.reservation-manager{display:flex;flex-direction:column;gap:var(--spacing-6);width:100%}.reservation-manager .section-header{display:flex;flex-direction:column;gap:var(--spacing-2);padding:var(--spacing-6);background:var(--bg-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.reservation-manager .section-header h2{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary)}.reservation-manager .section-header p{margin:0;color:var(--text-secondary)}.reservation-manager .table-container{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);overflow:hidden;padding:0}.reservation-manager .data-table{width:100%;border-collapse:collapse;white-space:nowrap;margin:0}.reservation-manager .data-table th,.reservation-manager .data-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle}.reservation-manager .data-table th{background:var(--bg-tertiary);font-weight:600;font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;height:48px}.reservation-manager .data-table tr:last-child td{border-bottom:none}.reservation-manager .data-table td:last-child{text-align:center}.reservation-manager .user-info,.reservation-manager .book-info{display:flex;flex-direction:column;gap:2px}.reservation-manager .status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:9999px;font-size:.875rem;font-weight:500}.reservation-manager .status-badge.pendiente{background:#eab3081a;color:#eab308}.reservation-manager .status-badge.confirmada{background:#22c55e1a;color:#22c55e}.reservation-manager .status-badge.rechazada{background:#ef44441a;color:#ef4444}.reservation-manager .action-buttons{display:flex;flex-direction:row;gap:8px;align-items:center;width:-moz-fit-content;width:fit-content;margin:0 auto}.reservation-manager .action-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 12px;height:32px;border-radius:6px;border:1px solid transparent;cursor:pointer;transition:all .2s;font-size:.75rem;font-weight:500;text-transform:uppercase}.reservation-manager .action-btn.success{background:#22c55e1a;color:#16a34a;border:1px solid rgba(34,197,94,.2)}.reservation-manager .action-btn.success:hover{background:#16a34a;color:#fff}.reservation-manager .action-btn.danger{background:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.2)}.reservation-manager .action-btn.danger:hover{background:#dc2626;color:#fff}.reservation-manager .action-btn.warning{background:#f59e0b1a;color:#d97706;border:1px solid rgba(245,158,11,.2)}.reservation-manager .action-btn.warning:hover{background:#f59e0b;color:#fff}.dark-mode .reservation-manager .action-btn.success{background:#22c55e33;color:#4ade80;border-color:#22c55e4d}.dark-mode .reservation-manager .action-btn.success:hover{background:#22c55e;color:#ecfdf5}.dark-mode .reservation-manager .action-btn.danger{background:#ef444433;color:#f87171;border-color:#ef44444d}.dark-mode .reservation-manager .action-btn.danger:hover{background:#ef4444;color:#fef2f2}.dark-mode .reservation-manager .section-header,.dark-mode .reservation-manager .table-container{background:#1f2937;border-color:#374151}.dark-mode .reservation-manager .section-header h2{color:#f9fafb}.dark-mode .reservation-manager .section-header p{color:#9ca3af}.dark-mode .reservation-manager .data-table th{background:#111827;color:#d1d5db;border-bottom-color:#374151}.dark-mode .reservation-manager .data-table td{color:#e5e7eb;border-bottom-color:#374151}.dark-mode .reservation-manager .data-table tr:hover td{background:#374151}.dark-mode .reservation-manager .text-gray-500{color:#9ca3af!important}.dark-mode .reservation-manager .user-info .text-sm,.dark-mode .reservation-manager .book-info .text-xs{color:#9ca3af}.dark-mode .reservation-manager .action-btn.warning{background:#f59e0b33;color:#fbbf24;border-color:#f59e0b4d}.dark-mode .reservation-manager .action-btn.warning:hover{background:#f59e0b;color:#fffbeb}.admin-notification-badge{position:absolute;top:-2px;right:-2px;background-color:var(--danger-color);color:#fff;border-radius:9999px;font-size:.7rem;min-width:1.25rem;height:1.25rem;display:flex;align-items:center;justify-content:center;padding:0 .25rem;border:2px solid var(--bg-secondary);font-weight:700;z-index:10}.sidebar-badge-count{background-color:var(--danger-color);color:#fff;font-size:.75rem;font-weight:700;padding:0 6px;border-radius:99px;min-width:1.25rem;height:1.25rem;display:flex;align-items:center;justify-content:center;margin-left:auto}@media (max-width: 1024px){.reservation-manager .data-table thead{display:none}.reservation-manager .data-table,.reservation-manager .data-table tbody,.reservation-manager .data-table tr,.reservation-manager .data-table td{display:block;width:100%}.reservation-manager .data-table tr{margin-bottom:1rem;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-secondary);box-shadow:0 4px 6px -1px #0000001a;padding:1rem}.reservation-manager .data-table td{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--border-color);text-align:right;min-height:3rem}.reservation-manager .data-table td.empty-actions{display:none}.reservation-manager .data-table td:last-child{border-bottom:none;flex-direction:column;gap:.75rem;align-items:stretch;margin-top:.5rem;padding-bottom:0}.reservation-manager .data-table td:before{content:attr(data-label);font-weight:600;color:var(--text-secondary);text-align:left;margin-right:1rem;font-size:.875rem;white-space:nowrap}.reservation-manager .data-table td .user-info{text-align:right;align-items:flex-end;display:flex;flex-direction:column;max-width:60%}.reservation-manager .data-table td .book-info{text-align:right;align-items:flex-end;display:flex;flex-direction:column;max-width:75%}.reservation-manager .data-table td .book-info a{display:flex;flex-wrap:wrap;justify-content:flex-end;text-align:right;gap:4px;line-height:1.3;word-break:break-word}.reservation-manager .data-table td .action-buttons{display:flex;gap:.5rem;justify-content:stretch;width:100%}.reservation-manager .data-table td .action-buttons .action-btn{flex:1;justify-content:center}}.admin-notification-badge{position:absolute;top:-2px;right:-2px;background-color:#ef4444;color:#fff;border-radius:9999px;min-width:18px;height:18px;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px;box-shadow:0 2px 4px #ef44444d;animation:notificationPulse 2s infinite}@keyframes notificationPulse{0%{transform:scale(1);box-shadow:0 0 #ef444466}70%{transform:scale(1.1);box-shadow:0 0 0 6px #ef444400}to{transform:scale(1);box-shadow:0 0 #ef444400}}.admin-notification-center{padding:1rem;max-width:1000px;margin:0 auto}.admin-notifications-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.header-title{display:flex;align-items:center;gap:1rem}.header-title h2{font-size:1.5rem;font-weight:600;color:var(--text);margin:0}.unread-badge{background:var(--surface-hover);color:var(--text-secondary);padding:.25rem .75rem;border-radius:99px;font-size:.875rem;font-weight:500}.header-actions{display:flex;gap:1rem;align-items:center}.filter-group{display:flex;align-items:center;gap:.5rem;background:var(--surface);border:1px solid var(--border);padding:.5rem 1rem;border-radius:8px;color:var(--text-secondary)}.filter-select{border:none;background:transparent;color:var(--text);font-size:.875rem;font-weight:500;outline:none;cursor:pointer}.mark-all-btn{display:flex;align-items:center;gap:.5rem;background:var(--surface);color:var(--primary);border:1px solid var(--primary);padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.mark-all-btn:hover{background:var(--primary);color:#fff}.notifications-container{min-height:400px}.notifications-list{display:grid;gap:1rem}.notification-card{display:flex;gap:1.25rem;background:var(--surface);border:1px solid var(--border);padding:1.25rem;border-radius:12px;position:relative;transition:all .2s;cursor:pointer}.notification-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.notification-card.unread{background:var(--surface-hover);border-left:4px solid var(--primary)}.notification-content{flex:1}.notification-top{display:flex;justify-content:space-between;margin-bottom:.5rem}.notification-top h4{font-weight:600;color:var(--text);margin:0}.notification-time{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--text-secondary)}.notification-content p{color:var(--text-secondary);font-size:.9375rem;margin:0;line-height:1.5}.unread-dot{position:absolute;top:1.25rem;right:1.25rem;width:8px;height:8px;background:var(--primary);border-radius:50%}.notification-icon-wrapper{display:flex;align-items:flex-start;padding-top:.25rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--text-secondary);background:var(--surface);border-radius:16px;border:2px dashed var(--border)}.empty-icon{margin-bottom:1rem;color:var(--text-tertiary)}.empty-state h3{color:var(--text);margin:0 0 .5rem;font-size:1.25rem}.admin-notifications-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;gap:1rem;color:var(--text-secondary)}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 640px){.admin-notifications-header{flex-direction:column;align-items:flex-start}.header-actions{width:100%;flex-direction:column;align-items:stretch}.filter-group,.filter-select{width:100%}}:root[class~=dark] .admin-notification-center,:root[class~=dark-mode] .admin-notification-center{--surface: #1e293b;--surface-hover: #334155;--text: #f8fafc;--text-secondary: #cbd5e1;--border: #334155;--primary: #60a5fa}:root[class~=dark] .notification-card,:root[class~=dark-mode] .notification-card{background-color:#1e293b;border-color:#334155}:root[class~=dark] .notification-card.unread,:root[class~=dark-mode] .notification-card.unread{background-color:#334155}:root[class~=dark] .notification-top h4,:root[class~=dark-mode] .notification-top h4{color:#f8fafc}:root[class~=dark] .notification-content p,:root[class~=dark-mode] .notification-content p,:root[class~=dark] .notification-time,:root[class~=dark-mode] .notification-time{color:#cbd5e1}:root[class~=dark] .filter-group,:root[class~=dark-mode] .filter-group{background-color:#1e293b;border-color:#334155;color:#cbd5e1}:root[class~=dark] .filter-select,:root[class~=dark-mode] .filter-select{color:#f8fafc}:root[class~=dark] .filter-select option,:root[class~=dark-mode] .filter-select option{background-color:#1e293b;color:#f8fafc}:root[class~=dark] .empty-state,:root[class~=dark-mode] .empty-state{background-color:#1e293b;border-color:#334155}:root[class~=dark] .empty-state h3,:root[class~=dark-mode] .empty-state h3{color:#f8fafc}:root[class~=dark] .unread-badge,:root[class~=dark-mode] .unread-badge{color:#e2e8f0;background-color:#334155}:root[class~=dark] .mark-all-btn,:root[class~=dark-mode] .mark-all-btn{color:#f8fafc;border-color:#60a5fa;background-color:transparent}:root[class~=dark] .mark-all-btn:hover,:root[class~=dark-mode] .mark-all-btn:hover{background-color:#60a5fa;color:#1e293b}.user-dashboard{--primary: var(--primary-color);--background: var(--bg-secondary);--surface: var(--bg-primary);--text: var(--text-primary);--border: var(--border-color);--hover: var(--bg-hover);display:grid;grid-template-columns:280px 1fr;grid-template-rows:auto 1fr;min-height:100vh;background:var(--background);color:var(--text)}.user-dashboard .mobile-header{display:none;grid-column:1 / -1;padding:1rem;background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:1rem}.user-dashboard .mobile-header h1{margin:0;font-size:1.25rem}.user-dashboard .menu-btn{background:none;border:none;color:var(--text);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center}.user-dashboard .dashboard-sidebar{grid-column:1;grid-row:1 / -1;background:var(--surface);border-right:1px solid rgba(148,163,184,.02);padding:2rem 0;overflow-y:auto}.user-dashboard .sidebar-header{padding:0 1.5rem 1.5rem;border-bottom:1px solid rgba(148,163,184,.1);margin-bottom:1.5rem}.user-dashboard .sidebar-header h2{margin:0 0 .5rem;font-size:1.5rem;color:var(--text)}.user-dashboard .sidebar-header p{margin:0;color:var(--text-secondary);font-size:.875rem}.user-dashboard .sidebar-nav{display:flex;flex-direction:column;gap:.25rem;padding:0 .75rem}.user-dashboard .nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:none;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all .2s;font-size:.9375rem;text-align:left;position:relative}.user-dashboard .nav-item:hover{background:var(--hover);color:var(--text)}.user-dashboard .nav-item.active{background:var(--primary);color:#fff}.user-dashboard .nav-item .badge{position:static!important;margin-left:auto!important;flex-shrink:0!important;background:var(--primary);color:#fff;padding:.125rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600;min-width:20px!important;max-width:40px!important;width:auto!important;text-align:center;display:inline-flex!important;align-items:center;justify-content:center}.user-dashboard .nav-item.active .badge{background:#fff3}.user-dashboard .dashboard-content{grid-column:2;grid-row:1 / -1;padding:2rem;overflow-y:auto;max-width:1400px;width:100%}.section-header{margin-bottom:2rem}.section-header h2{margin:0 0 .5rem;font-size:1.75rem;color:var(--text)}.section-header p{margin:0;color:var(--text-secondary);font-size:.9375rem}.section-header{display:flex;justify-content:space-between;align-items:flex-start}.overview-section .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.overview-section .stat-card{background:var(--surface);border:1px solid rgba(148,163,184,.02);border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .2s}.overview-section .stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--primary)}.overview-section .stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff}.overview-section .stat-icon.reservations{background:linear-gradient(135deg,#667eea,#764ba2)}.overview-section .stat-icon.orders{background:linear-gradient(135deg,#f093fb,#f5576c)}.overview-section .stat-icon.notifications{background:linear-gradient(135deg,#4facfe,#00f2fe)}.overview-section .stat-content h3{margin:0;font-size:2rem;color:var(--text)}.overview-section .stat-content p{margin:0;color:var(--text-secondary);font-size:.875rem}.overview-section .quick-actions{background:var(--surface);border:1px solid rgba(148,163,184,.02);border-radius:12px;padding:1.5rem}.overview-section .quick-actions h3{margin:0 0 1rem;font-size:1.125rem;color:var(--text)}.overview-section .action-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.overview-section .action-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;background-color:#2563eb!important;color:#fff!important;border:none;border-radius:8px;cursor:pointer;font-size:.9375rem;font-weight:500;transition:all .2s;box-shadow:0 2px 4px #2563eb33}.overview-section .action-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.my-reservations .filter-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.my-reservations .filter-tabs button{padding:.5rem 1rem;background:var(--surface);border:1px solid rgba(148,163,184,.02);border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:.875rem;transition:all .2s}.my-reservations .filter-tabs button:hover{border-color:var(--primary);color:var(--text)}.my-reservations .filter-tabs button.active{background-color:#2563eb1a!important;border:1px solid #2563eb!important;color:#2563eb!important;font-weight:600}.my-reservations .reservations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.my-reservations .reservation-card{background:var(--surface);border:none;border-radius:12px;overflow:hidden;transition:all .2s}.my-reservations .reservation-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.my-reservations .card-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid rgba(148,163,184,.02)}.my-reservations .reservation-date{font-size:.875rem;color:var(--text-secondary)}.my-reservations .card-body{padding:1rem;display:flex;gap:1rem}.my-reservations .book-cover{width:80px;height:120px;-o-object-fit:cover;object-fit:cover;border-radius:6px;flex-shrink:0}.my-reservations .book-details{flex:1}.my-reservations .book-details h3{margin:0 0 .5rem;font-size:1rem;color:var(--text);line-height:1.4}.my-reservations .book-id{margin:0;font-size:.875rem;color:var(--text-secondary)}.my-reservations .book-meta-container{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.5rem;font-size:.8125rem}.my-reservations .book-meta-item{display:inline-flex;align-items:center;gap:.25rem;color:var(--text-secondary)}.my-reservations .book-meta-item strong{color:var(--text);font-weight:500}.my-reservations .book-meta-separator{color:var(--text-secondary);opacity:.5}.my-reservations .expiration-info{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.5rem;background:#fbbf241a;border-radius:6px;font-size:.875rem;color:#f59e0b}.my-reservations .card-footer{padding:1rem;border-top:1px solid rgba(148,163,184,.08)}.my-reservations .cancel-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem;background:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.2);border-radius:6px;cursor:pointer;font-size:.875rem;transition:all .2s}.my-reservations .cancel-btn:hover{background:#dc2626;color:#fff}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:6px;font-size:.8125rem;font-weight:500}.status-badge.status-pending{background:#fbbf241a;color:#f59e0b}.status-badge.status-confirmed{background:#3b82f61a;color:#3b82f6}.status-badge.status-delivered{background:#22c55e1a;color:#22c55e}.status-badge.status-rejected{background:#ef44441a;color:#ef4444}.status-badge.status-returned{background:#6b72801a;color:#6b7280}.status-badge.status-canceled{background:#4b55631a;color:#4b5563}.status-badge.status-expired{background:#9ca3af1a;color:#9ca3af}.notification-center .mark-all-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:var(--primary);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;transition:all .2s}.notification-center .mark-all-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.notification-center .notifications-list{display:flex;flex-direction:column;gap:.75rem}.notification-center .notification-item{display:flex;gap:1rem;padding:1rem;background-color:#fff!important;border:1px solid #e2e8f0!important;border-radius:8px;cursor:pointer;transition:all .2s;position:relative;box-shadow:0 1px 3px #0000000d}.notification-center .notification-item:hover{border-color:#2563eb!important;box-shadow:0 4px 6px #0000000d}.notification-center .notification-item.unread{background-color:#eff6ff!important;border-color:#bfdbfe!important}.notification-center .notification-icon{width:40px;height:40px;border-radius:8px;background-color:#2563eb!important;color:#fff!important;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notification-center .notification-content{flex:1}.notification-center .notification-content h4{margin:0 0 .25rem;font-size:.9375rem;color:var(--text)}.notification-center .notification-content p{margin:0 0 .5rem;font-size:.875rem;color:var(--text-secondary);line-height:1.5}.notification-center .notification-date{font-size:.75rem;color:var(--text-secondary)}.notification-center .unread-indicator{width:8px;height:8px;border-radius:50%;background:var(--primary);position:absolute;top:1rem;right:1rem}.order-history .orders-mobile-cards{display:none}.order-history .orders-table-container{overflow-x:auto;border-radius:12px;border:1px solid var(--border);background:var(--surface);overflow:hidden}.order-history .orders-table{width:100%;border-collapse:collapse}.order-history .orders-table thead{background:var(--hover)}.order-history .orders-table th{padding:1rem;text-align:left;font-size:.875rem;font-weight:600;color:var(--text);border-bottom:1px solid rgba(148,163,184,.02)}.order-history .orders-table td{padding:1rem;font-size:.9375rem;color:var(--text);border-bottom:1px solid rgba(148,163,184,.02)}.order-history .orders-table tbody tr:last-child td{border-bottom:none}.order-history .orders-table tbody tr:hover{background:var(--hover)}.order-history .view-details-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#2563eb!important;color:#fff!important;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;transition:all .2s;box-shadow:0 2px 4px #2563eb33}.order-history .view-details-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.profile-section .profile-card{background:var(--surface);border:1px solid rgba(148,163,184,.02);border-radius:12px;padding:1.5rem;max-width:600px}.profile-section .card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(148,163,184,.02)}.profile-section .card-header h3{margin:0;font-size:1.125rem;color:var(--text)}.profile-section .edit-btn{padding:.5rem 1rem;background:var(--primary);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;transition:all .2s}.profile-section .edit-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.profile-section .profile-info{display:flex;flex-direction:column;gap:1.5rem}.profile-section .info-item{display:flex;gap:1rem;align-items:flex-start}.profile-section .info-item svg{color:var(--primary);flex-shrink:0;margin-top:.25rem}.profile-section .info-item label{display:block;font-size:.875rem;color:var(--text-secondary);margin-bottom:.25rem}.profile-section .info-item p{margin:0;font-size:.9375rem;color:var(--text)}.profile-section .profile-form{background:var(--surface);border:1px solid rgba(148,163,184,.02);border-radius:12px;padding:1.5rem;max-width:600px}.profile-section .form-group{margin-bottom:1.5rem}.profile-section .form-group label{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--text)}.profile-section .form-group input{width:100%;padding:.75rem;background:var(--background);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.9375rem;transition:all .2s}.profile-section .form-group input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f61a}.profile-section .form-group input.disabled{opacity:.6;cursor:not-allowed}.profile-section .form-group small{display:block;margin-top:.25rem;font-size:.75rem;color:var(--text-secondary)}.profile-section .form-divider{margin:2rem 0 1.5rem;padding-top:1.5rem;border-top:1px solid rgba(148,163,184,.02)}.profile-section .form-divider span{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.profile-section .message{padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;font-size:.875rem}.profile-section .message.success{background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.2)}.profile-section .message.error{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.profile-section .form-actions{display:flex;gap:1rem;justify-content:flex-end}.profile-section .cancel-btn{padding:.75rem 1.5rem;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:6px;cursor:pointer;font-size:.9375rem;transition:all .2s}.profile-section .cancel-btn:hover{background:var(--hover)}.profile-section .save-btn{padding:.75rem 1.5rem;background:var(--primary);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9375rem;transition:all .2s}.profile-section .save-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--text-secondary)}.empty-state svg{margin-bottom:1rem;opacity:.5}.empty-state p{margin:0;font-size:1rem}.loading{display:flex;align-items:center;justify-content:center;padding:4rem 2rem;font-size:1rem;color:var(--text-secondary)}.sidebar-overlay{display:none}@media (max-width: 1024px){.user-dashboard{grid-template-columns:1fr}.user-dashboard .mobile-header{display:flex}.user-dashboard .dashboard-sidebar{position:fixed!important;top:0!important;left:-280px;height:100vh;width:280px;z-index:1300!important;transition:left .3s ease;grid-row:1 / -1;box-shadow:4px 0 12px #0000004d;background-color:#fff}.dashboard-sidebar.open{left:0!important;transform:translate(0)!important;display:block!important;visibility:visible!important;opacity:1!important}.user-dashboard .dashboard-content{grid-column:1;grid-row:2;padding:1.5rem 1rem}.sidebar-overlay{display:block;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1200!important}.my-reservations .reservations-grid{grid-template-columns:1fr}.order-history .orders-table-container{display:none}.order-history .orders-mobile-cards{display:flex;flex-direction:column;gap:1rem}.order-history .order-mobile-card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.order-history .order-mobile-card-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.order-history .order-mobile-card-header strong{font-size:1.125rem;color:var(--text)}.order-history .order-mobile-card-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.order-history .order-mobile-card-label{font-size:.875rem;color:var(--text-secondary);font-weight:500}.order-history .order-mobile-card-value{font-size:.9375rem;color:var(--text);font-weight:600}.order-history .order-mobile-card .status-badge{font-size:.8125rem;padding:.375rem .75rem}.order-history .order-mobile-card .view-details-btn{width:100%;margin-top:.5rem;justify-content:center}}@media (max-width: 640px){.overview-section .stats-grid,.overview-section .action-buttons{grid-template-columns:1fr}.my-reservations .filter-tabs{flex-direction:column}.my-reservations .filter-tabs button{width:100%}}.dark-mode .user-dashboard{--background: #0f172a;--surface: #1e293b;--border: #334155;--text: #f1f5f9;--text-secondary: #94a3b8;--hover: #334155;--primary: #3b82f6}.dark-mode .overview-section .stat-card:hover,.dark-mode .my-reservations .reservation-card:hover{box-shadow:0 4px 12px #0000004d}@media (max-width: 1024px){.dark-mode .user-dashboard .dashboard-sidebar{background-color:#1e293b!important;box-shadow:4px 0 12px #0009}}.profile-section .profile-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.profile-section .profile-info-grid .info-item{display:flex;gap:1rem;align-items:flex-start}.profile-section .profile-info-grid .info-item svg{color:var(--primary);flex-shrink:0;margin-top:.25rem}.profile-section .profile-info-grid .info-item div{flex:1}.profile-section .profile-info-grid .info-item label{display:block;font-size:.875rem;color:var(--text-secondary);margin-bottom:.25rem}.profile-section .profile-info-grid .info-item p{margin:0;font-size:.9375rem;color:var(--text)}.profile-section .role-badge{display:inline-block;padding:.25rem .75rem;background:var(--primary);color:#fff;border-radius:12px;font-size:.8125rem;font-weight:500}.profile-section .profile-actions{display:flex;justify-content:center;margin-top:2rem}.profile-section .settings-link-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--primary);color:#fff;text-decoration:none;border-radius:8px;font-weight:500;transition:all .2s}.profile-section .settings-link-btn:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb4d}.dark-mode .overview-section .action-btn{background-color:#10b981!important;color:#fff!important;box-shadow:0 4px 6px -1px #0006}.dark-mode .overview-section .action-btn:hover{background-color:#059669!important;box-shadow:0 6px 12px #00000080}.dark-mode .my-reservations .filter-tabs button.active{background-color:#10b9811a!important;border:1px solid #10b981!important;color:#10b981!important}.dark-mode .notification-center .notification-item{background-color:#1e293b!important;border:1px solid #334155!important;box-shadow:0 4px 6px -1px #0006}.dark-mode .notification-center .notification-item:hover{border-color:#10b981!important;box-shadow:0 10px 15px -3px #00000080}.dark-mode .notification-center .notification-item.unread{background-color:#10b9810d!important;border-color:#10b98133!important}.dark-mode .notification-center .notification-icon{background-color:#10b981!important}.dark-mode .order-history .view-details-btn{background-color:#10b981!important;color:#fff!important;box-shadow:0 4px 6px -1px #0006}.dark-mode .order-history .view-details-btn:hover{background-color:#059669!important;box-shadow:0 6px 12px #00000080}.user-settings{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem 1rem}.settings-container{max-width:1200px;margin:0 auto}.settings-header{text-align:center;margin-bottom:3rem;color:#fff}.settings-header h1{font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.settings-header p{font-size:1.125rem;opacity:.9}.settings-layout{display:grid;grid-template-columns:250px 1fr;gap:2rem;background:#fff;border-radius:1rem;overflow:hidden;box-shadow:0 20px 60px #0000004d}.settings-nav{background:#f8f9fa;padding:2rem 0;border-right:1px solid #e9ecef}.settings-nav-item{width:100%;display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:none;border:none;text-align:left;font-size:1rem;color:#495057;cursor:pointer;transition:all .2s;border-left:3px solid transparent}.settings-nav-item:hover{background:#667eea1a;color:#667eea}.settings-nav-item.active{background:#667eea26;color:#667eea;font-weight:600;border-left-color:#667eea}.settings-content{padding:2rem}.settings-section h2{font-size:1.75rem;font-weight:700;color:#2d3748;margin-bottom:1.5rem}.settings-form{max-width:600px}.settings-form .form-group label{display:flex!important;flex-direction:row!important;align-items:center!important;gap:.5rem;font-weight:600;color:#4a5568;margin-bottom:.5rem;font-size:.875rem}.form-group input,.form-group select{width:100%;padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:.5rem;font-size:1rem;transition:all .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.checkbox-group{padding:1rem;background:#f8f9fa;border-radius:.5rem;margin-bottom:1rem}.checkbox-label{display:flex;align-items:flex-start;gap:1rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:20px;height:20px;margin-top:.25rem;cursor:pointer;accent-color:#667eea}.checkbox-label strong{display:block;color:#2d3748;margin-bottom:.25rem}.checkbox-label p{color:#718096;font-size:.875rem}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.875rem 2rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;margin-top:1rem}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 25px #667eea4d}.btn-primary:active{transform:translateY(0)}.dark-mode .user-settings{background:linear-gradient(135deg,#0f172a,#020617)}.dark-mode .settings-layout{background:#1e293b;box-shadow:0 20px 60px #0009;border:1px solid #334155}.dark-mode .settings-nav{background:#0f172a;border-right-color:#334155}.dark-mode .settings-nav-item{color:#cbd5e1}.dark-mode .settings-nav-item:hover{background:#60a5fa1a;color:#60a5fa}.dark-mode .settings-nav-item.active{background:#60a5fa26;color:#60a5fa;border-left-color:#60a5fa}.dark-mode .settings-content{background:#1e293b}.dark-mode .settings-section h2{color:#f1f5f9}.dark-mode .form-group label{color:#cbd5e1}.dark-mode .settings-form .form-group input,.dark-mode .settings-form .form-group select{background:#0f172a!important;border-color:#334155!important;color:#f1f5f9!important}.dark-mode .settings-form .form-group select option{background-color:#1e293b;color:#f1f5f9}.dark-mode .settings-form .form-group input:focus,.dark-mode .settings-form .form-group select:focus{border-color:#60a5fa!important;box-shadow:0 0 0 3px #60a5fa1a}.dark-mode .form-group input::-moz-placeholder{color:#94a3b8}.dark-mode .form-group input::placeholder{color:#94a3b8}.dark-mode .checkbox-group{background:#0f172a;border:1px solid #334155}.dark-mode .checkbox-label strong{color:#f1f5f9}.dark-mode .checkbox-label p{color:#94a3b8}.dark-mode .btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb)}.dark-mode .btn-primary:hover{box-shadow:0 10px 25px #3b82f666}.success-message-box{padding:1rem;background:#d1fae5;border:1px solid #a7f3d0;border-radius:12px;color:#065f46;font-size:.875rem;line-height:1.5;margin-bottom:1.5rem;animation:slideIn .3s ease}.error-message-box{padding:1rem;background:#fee2e2;border:1px solid #fecaca;border-radius:12px;color:#dc2626;font-size:.875rem;line-height:1.5;margin-bottom:1.5rem;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.security-subsection{margin-bottom:3rem;padding-bottom:3rem;border-bottom:1px solid #e2e8f0}.security-subsection:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.security-subsection h3{font-size:1.25rem;font-weight:600;color:#1a202c;margin:0 0 .5rem}.security-description{font-size:.875rem;color:#64748b;margin:0 0 1.5rem;line-height:1.6}.form-hint{font-size:.875rem;color:#64748b;margin:.5rem 0 0}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;background:transparent;color:#667eea;border:2px solid #667eea;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary:hover:not(:disabled){background:#667eea;color:#fff;transform:translateY(-2px);box-shadow:0 4px 14px #667eea4d}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;background:#ef4444;color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-2px);box-shadow:0 4px 14px #ef444466}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.otp-verification{background:#f8fafc;padding:1.5rem;border-radius:12px;margin:1rem 0}.otp-verification .form-group{margin-bottom:1rem}.otp-verification input{text-align:center;font-size:1.5rem;letter-spacing:.5rem;font-weight:600}.success-text{display:flex;align-items:center;gap:.5rem;color:#10b981;font-weight:600;margin-bottom:1rem}.dark-mode .security-subsection{border-bottom-color:#334155}.dark-mode .security-subsection h3{color:#f1f5f9}.dark-mode .security-description,.dark-mode .form-hint{color:#94a3b8}.dark-mode .otp-verification{background:#0f172a}@media (max-width: 768px){.settings-layout{grid-template-columns:1fr}.settings-nav{border-right:none;border-bottom:1px solid #e9ecef;padding:1rem 0}.settings-nav-item{padding:.75rem 1rem;border-left:none;border-bottom:3px solid transparent}.settings-nav-item.active{border-left:none;border-bottom-color:#667eea}.settings-header h1{font-size:2rem}.settings-content{padding:1.5rem}.dark-mode .settings-nav{border-bottom-color:#334155}.dark-mode .settings-nav-item.active{border-bottom-color:#60a5fa}}.gestion-ubicaciones{width:100%}.gestion-ubicaciones .header-section{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.gestion-ubicaciones .header-title{display:flex;gap:1rem;align-items:flex-start}.gestion-ubicaciones .header-title svg{color:var(--primary-color);min-width:32px;min-height:32px}.gestion-ubicaciones .header-title h2{margin:0;font-size:1.5rem;color:var(--text-primary)}.gestion-ubicaciones .header-title p{margin:.5rem 0 0;color:var(--text-secondary);font-size:.875rem}.gestion-ubicaciones .form-card{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.dark-mode .gestion-ubicaciones .form-card{background:#1e293b;border-color:#334155}.gestion-ubicaciones .form-card h4{margin:0 0 1.5rem;color:var(--text-color);font-size:1.25rem}.dark-mode .gestion-ubicaciones .form-card h4{color:#f1f5f9}.gestion-ubicaciones .form-group{margin-bottom:1.5rem}.gestion-ubicaciones .form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-color)}.gestion-ubicaciones .form-input{width:100%;padding:.75rem;border:1px solid #dee2e6;border-radius:6px;font-size:1rem;transition:border-color .2s;background:#fff;color:#1e293b}.dark-mode .gestion-ubicaciones .form-input{background:#0f172a;border-color:#334155;color:#e2e8f0}.gestion-ubicaciones .form-input:focus{outline:none;border-color:var(--primary-color)}.gestion-ubicaciones .form-actions{display:flex;gap:1rem;margin-top:1.5rem}.gestion-ubicaciones .empty-state{text-align:center;padding:4rem 2rem;color:#6c757d}.gestion-ubicaciones .empty-state svg{color:#dee2e6;margin-bottom:1rem}.gestion-ubicaciones .empty-state p:first-of-type{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--text-color)}.gestion-ubicaciones .text-muted{color:#6c757d;font-size:.95rem}.gestion-ubicaciones .table-container{overflow-x:auto}.gestion-ubicaciones .data-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.dark-mode .gestion-ubicaciones .data-table{background:#1e293b;box-shadow:0 1px 3px #0000004d}.gestion-ubicaciones .data-table thead{background:var(--primary-color);color:#fff}.gestion-ubicaciones .data-table th{padding:1rem;text-align:left;font-weight:600}.gestion-ubicaciones .data-table td{padding:1rem;border-top:1px solid #dee2e6;color:#1e293b}.dark-mode .gestion-ubicaciones .data-table td{border-top-color:#334155;color:#e2e8f0}.gestion-ubicaciones .data-table tr:hover{background:#f8f9fa}.dark-mode .gestion-ubicaciones .data-table tr:hover{background:#0f172a}.gestion-ubicaciones .data-table .inactive-row{opacity:.6}.gestion-ubicaciones .action-buttons{display:flex;gap:.5rem}.gestion-ubicaciones .btn-icon{padding:.5rem;border:none;border-radius:6px;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.gestion-ubicaciones .btn-icon:hover{transform:translateY(-2px);box-shadow:0 2px 8px #00000026}.gestion-ubicaciones .btn-icon.btn-primary{background:var(--primary-color);color:#fff}.gestion-ubicaciones .btn-icon.btn-success{background:#28a745;color:#fff}.gestion-ubicaciones .btn-icon.btn-danger{background:#dc3545;color:#fff}.gestion-ubicaciones .btn-icon.btn-secondary{background:#6c757d;color:#fff}.gestion-ubicaciones .badge{display:inline-block;padding:.35rem .75rem;border-radius:12px;font-size:.875rem;font-weight:600}.gestion-ubicaciones .badge-success{background:#d4edda;color:#155724}.gestion-ubicaciones .badge-danger{background:#f8d7da;color:#721c24}.gestion-ubicaciones .btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--primary-color);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.gestion-ubicaciones .btn-primary:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.gestion-ubicaciones .btn-success{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#28a745;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.gestion-ubicaciones .btn-success:hover{background:#218838}.gestion-ubicaciones .btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#6c757d;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.gestion-ubicaciones .btn-secondary:hover{background:#5a6268}.gestion-ubicaciones .loading{text-align:center;padding:2rem;color:#6c757d;font-size:1.1rem}.dark-mode .gestion-ubicaciones .header-title h2{color:#f1f5f9}@media (max-width: 768px){.gestion-ubicaciones{padding:1rem!important;margin:0!important;width:100%!important;max-width:100vw!important;box-sizing:border-box!important;overflow-x:hidden}.gestion-ubicaciones .header-section{flex-direction:column;align-items:stretch;gap:1rem;margin-bottom:1.5rem;width:100%}.gestion-ubicaciones .header-title{width:100%;margin-bottom:.5rem}.gestion-ubicaciones .header-title h2{font-size:1.25rem}.gestion-ubicaciones .btn-primary{width:100%;justify-content:center;margin:0;box-sizing:border-box}.gestion-ubicaciones .table-container{overflow:visible;padding:0;margin:0;background:transparent;box-shadow:none;border:none}.gestion-ubicaciones .data-table,.gestion-ubicaciones .data-table tbody,.gestion-ubicaciones .data-table tr,.gestion-ubicaciones .data-table td{display:block;width:100%;box-sizing:border-box}.gestion-ubicaciones .data-table thead{display:none}.gestion-ubicaciones .data-table tr{position:relative;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem;margin-bottom:1rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.5rem}.gestion-ubicaciones .data-table tr:hover,.dark-mode .gestion-ubicaciones .data-table tr:hover{background:var(--bg-secondary)}.gestion-ubicaciones .data-table td{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border-color);text-align:right;gap:1rem}.gestion-ubicaciones .data-table .gu-col-name{order:-1;width:100%;justify-content:center;text-align:center;font-size:1.1rem;font-weight:700;color:var(--primary-color);border-bottom:1px solid var(--border-color);padding-bottom:.75rem;margin-bottom:.5rem}.dark-mode .gestion-ubicaciones .data-table .gu-col-name{color:#fff}.gestion-ubicaciones .data-table .gu-col-name:before{content:none!important;display:none}.gestion-ubicaciones .data-table .gu-col-desc{justify-content:space-between;order:1}.gestion-ubicaciones .data-table .gu-col-status{justify-content:space-between;width:100%;order:2;position:relative}.gestion-ubicaciones .data-table .gu-col-status .badge{font-size:.8rem;position:static;margin-left:auto}.gestion-ubicaciones .data-table .gu-col-actions{order:3;border-bottom:none;justify-content:stretch;padding-bottom:0;margin-top:0;padding-top:.5rem;gap:.5rem}.gestion-ubicaciones .data-table .gu-col-actions .action-buttons{width:100%;display:flex;gap:.5rem}.gestion-ubicaciones .data-table .gu-col-actions .action-buttons button{flex:1;justify-content:center}.gestion-ubicaciones .data-table td:before{content:attr(data-label);font-weight:600;color:var(--text-secondary);text-align:left;flex-shrink:0}.gestion-ubicaciones .data-table .gu-col-desc:before{content:"Descripción"}.gestion-ubicaciones .data-table .gu-col-status:before{content:"Estado"}.gestion-ubicaciones .data-table .gu-col-actions:before{content:"";display:none}.gestion-ubicaciones .form-card{padding:1rem}.gestion-ubicaciones .form-actions{flex-direction:column;gap:.75rem}.gestion-ubicaciones .form-actions button{width:100%;justify-content:center}.gestion-ubicaciones .data-table tr:has(input) td{flex-direction:column;align-items:stretch;gap:.25rem;text-align:left;order:0!important}.gestion-ubicaciones .data-table tr:has(input) td:before{margin-bottom:.25rem;content:attr(data-label)!important}.gestion-ubicaciones .action-buttons{width:100%;justify-content:flex-end;gap:.5rem}}@media (min-width: 769px){.gestion-ubicaciones .data-table .gu-col-status{display:table-cell;visibility:visible;opacity:1}.gestion-ubicaciones .data-table .gu-col-status .badge{display:inline-block;visibility:visible;opacity:1;position:static}}.gestion-usuarios-admin{padding:2rem}.header-section{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.header-title{display:flex;gap:1rem;align-items:flex-start}.header-title svg{color:var(--primary-color);min-width:32px;min-height:32px}.header-title h2{margin:0;font-size:1.5rem;color:var(--text-primary)}.header-title p{margin:.5rem 0 0;color:var(--text-secondary);font-size:.875rem}.alert{padding:1rem;border-radius:8px;margin-bottom:1rem;display:flex;align-items:center;gap:.75rem}.alert-error{background-color:#ef44441a;color:var(--danger-color);border:1px solid var(--danger-color)}.alert-success{background-color:#10b9811a;color:var(--success-color);border:1px solid var(--success-color)}.usuarios-table-container{background:var(--bg-secondary);border-radius:8px;overflow-x:auto;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.usuarios-table{width:100%;border-collapse:collapse}.usuarios-table th,.usuarios-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--border-color);color:var(--text-primary)}.usuarios-table th{background-color:var(--bg-tertiary);font-weight:600;color:var(--text-secondary);font-size:.875rem;text-transform:uppercase}.dark-mode .usuarios-table th{color:#f1f5f9;background-color:#334155}.dark-mode .usuarios-table td{color:#e2e8f0}.usuario-email{display:flex;align-items:center;gap:.5rem}.badge-tu{background-color:#2563eb1a;color:var(--primary-color);padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.rol-badge{display:inline-block;padding:.375rem .75rem;border-radius:6px;font-size:.875rem;font-weight:500}.roles-list{display:flex;flex-wrap:wrap;gap:.5rem}.rol-badge-small{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.acciones-btns{display:flex;gap:.5rem}.btn-icon{background:none;border:1px solid var(--border-color);border-radius:6px;padding:.5rem;cursor:pointer;color:var(--text-secondary);transition:all .2s}.btn-icon:hover{background-color:var(--bg-hover);color:var(--text-primary)}.btn-icon.btn-danger{color:var(--danger-color);border-color:#ef44444d}.btn-icon.btn-danger:hover{background-color:#ef44441a;border-color:var(--danger-color)}.btn-primary{background-color:var(--primary-color);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:500;display:flex;align-items:center;gap:.5rem;transition:all .2s}.btn-primary:hover{background-color:var(--primary-hover)}.btn-secondary{background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s}.btn-secondary:hover{background-color:var(--bg-hover)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--bg-secondary);border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);border:1px solid var(--border-color)}.modal-header{padding:1.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:1.25rem;color:var(--text-primary)}.modal-close{background:none;border:none;cursor:pointer;color:var(--text-secondary);padding:0}.modal-close:hover{color:var(--text-primary)}.modal-form{padding:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background-color:var(--bg-primary);color:var(--text-primary);font-size:.95rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a}.roles-checkboxes{display:flex;flex-direction:column;gap:.75rem;max-height:200px;overflow-y:auto;padding:.5rem;border:1px solid var(--border-color);border-radius:8px;background-color:var(--bg-tertiary)}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;padding:.5rem;border-radius:6px;transition:background-color .2s}.checkbox-label:hover{background-color:var(--bg-hover)}.checkbox-label input[type=checkbox]{width:1.25rem;height:1.25rem;margin-top:.125rem;cursor:pointer}.checkbox-content{display:flex;flex-direction:column}.checkbox-content strong{color:var(--text-primary);font-size:.9rem}.checkbox-content small{color:var(--text-secondary);font-size:.8rem}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}@media (max-width: 768px){.gestion-usuarios-admin{padding:1rem!important;margin:0!important;width:100%!important;max-width:100vw!important;box-sizing:border-box!important;overflow-x:hidden}.header-section{flex-direction:column;align-items:stretch;gap:1rem;margin-bottom:1.5rem;width:100%}.header-title{width:100%;margin-bottom:.5rem}.header-title h2{font-size:1.25rem}.btn-primary{width:100%;justify-content:center;margin:0;box-sizing:border-box}.usuarios-table-container{background:transparent;border:none;box-shadow:none;overflow:visible;padding:0;margin:0}.usuarios-table,.usuarios-table tbody,.usuarios-table tr,.usuarios-table td{display:block;width:100%;box-sizing:border-box}.usuarios-table thead{display:none}.usuarios-table tr{position:relative;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem;margin-bottom:1rem;box-shadow:var(--shadow-sm)}.usuarios-table td{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--border-color);text-align:right;gap:.5rem}.usuarios-table td:last-child{border-bottom:none;justify-content:flex-end;padding-bottom:0;margin-top:.5rem}.usuarios-table td:before{content:attr(data-label);font-weight:600;color:var(--text-secondary);text-align:left;flex-shrink:0}.usuarios-table td:nth-of-type(1):before{content:"Email"}.usuarios-table td:nth-of-type(2):before{content:"Rol Principal"}.usuarios-table td:nth-of-type(3):before{content:"Roles Adicionales"}.usuarios-table td:nth-of-type(4):before{content:"Fecha Creación"}.usuario-email{justify-content:flex-end;word-break:break-all;font-size:.9rem}.roles-list{justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:.5rem}.rol-badge,.rol-badge-small{padding:.2rem .5rem;font-size:.7rem;white-space:normal;text-align:center;line-height:1.2;display:inline-flex;align-items:center;justify-content:center;max-width:100%}.modal-content{width:100%!important;height:100%!important;max-height:100vh!important;border-radius:0!important;margin:0!important}.modal-overlay{padding:0!important;align-items:flex-end}}.dark-mode .header-title h2{color:#f1f5f9}.dark-mode .header-title p{color:#94a3b8}.dark-mode .header-title svg{color:#60a5fa}.admin-settings{min-height:100vh;background:linear-gradient(135deg,#1e3a8a,#3b82f6);padding:2rem 1rem}.admin-settings .settings-container{max-width:1400px;margin:0 auto}.admin-settings .settings-header{text-align:center;margin-bottom:3rem;color:#fff}.admin-settings .settings-header h1{font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.admin-settings .settings-header p{font-size:1.125rem;opacity:.9}.admin-settings .alert{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-radius:.5rem;margin-bottom:1.5rem;font-weight:500;animation:slideIn .3s ease-out}.admin-settings .alert-success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.admin-settings .alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.admin-settings .settings-layout{display:grid;grid-template-columns:280px 1fr;gap:2rem;background:#fff;border-radius:1rem;overflow:hidden;box-shadow:0 20px 60px #0000004d}.admin-settings .settings-nav{background:#f8f9fa;padding:2rem 0;border-right:1px solid #e9ecef}.admin-settings .settings-nav-item{width:100%;display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:none;border:none;text-align:left;font-size:1rem;color:#495057;cursor:pointer;transition:all .2s;border-left:3px solid transparent}.admin-settings .settings-nav-item:hover{background:#3b82f61a;color:#3b82f6}.admin-settings .settings-nav-item.active{background:#3b82f626;color:#3b82f6;font-weight:600;border-left-color:#3b82f6}.admin-settings .settings-content{padding:2.5rem}.admin-settings .settings-section h2{font-size:1.875rem;font-weight:700;color:#1e293b;margin-bottom:2rem}.admin-settings .settings-form{max-width:800px}.admin-settings .form-group{margin-bottom:1.5rem}.admin-settings .form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.admin-settings .form-group label{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#334155;margin-bottom:.5rem;font-size:.875rem}.admin-settings .form-group input,.admin-settings .form-group select{width:100%;padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:.5rem;font-size:1rem;transition:all .2s;background:#fff}.admin-settings .form-group input:focus,.admin-settings .form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.admin-settings .checkbox-group{padding:1.25rem;background:#f8f9fa;border-radius:.5rem;margin-bottom:1rem;border-left:3px solid #3b82f6}.admin-settings .checkbox-label{display:flex;align-items:flex-start;gap:1rem;cursor:pointer}.admin-settings .checkbox-label input[type=checkbox]{width:20px;height:20px;margin-top:.25rem;cursor:pointer;accent-color:#3b82f6}.admin-settings .checkbox-label strong{display:block;color:#1e293b;margin-bottom:.25rem;font-size:1rem}.admin-settings .checkbox-label p{color:#64748b;font-size:.875rem}.admin-settings .checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;margin-top:.75rem}.admin-settings .checkbox-label-inline{display:flex;align-items:center;gap:.5rem;cursor:pointer}.admin-settings .checkbox-label-inline input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#3b82f6}.admin-settings .checkbox-label-inline span{color:#334155;font-size:.9375rem}.admin-settings .btn-primary{background:linear-gradient(135deg,#1e3a8a,#3b82f6);color:#fff;padding:.875rem 2rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;margin-top:1.5rem}.admin-settings .btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 25px #3b82f64d}.admin-settings .btn-primary:active{transform:translateY(0)}.admin-settings .btn-secondary{background:#fff;color:#3b82f6;padding:.875rem 2rem;border:2px solid #3b82f6;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.admin-settings .btn-secondary:hover{background:#3b82f6;color:#fff;transform:translateY(-2px);box-shadow:0 10px 25px #3b82f633}.admin-settings .info-box{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:#f1f5f9;border-radius:.75rem;margin-bottom:1rem;border-left:4px solid #3b82f6}.admin-settings .info-box svg{color:#3b82f6;flex-shrink:0;margin-top:.25rem}.admin-settings .info-box h3{font-size:1.125rem;font-weight:600;color:#1e293b;margin-bottom:.25rem}.admin-settings .info-box p{color:#64748b;font-size:.9375rem}.backup-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-top:2rem}.backup-card{background:#fff;border:2px solid #e5e7eb;border-radius:1rem;padding:1.5rem;transition:all .3s ease;display:flex;flex-direction:column;gap:1rem}.backup-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f633;transform:translateY(-2px)}.backup-card.iberlibro{border-color:#f59e0b}.backup-card.iberlibro:hover{border-color:#d97706;box-shadow:0 4px 12px #f59e0b4d}.backup-card.uniliber{border-color:#10b981}.backup-card.uniliber:hover{border-color:#059669;box-shadow:0 4px 12px #10b9814d}.backup-card-header{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.backup-card-header svg{color:#3b82f6;flex-shrink:0}.backup-card.iberlibro .backup-card-header svg{color:#f59e0b}.backup-card.uniliber .backup-card-header svg{color:#10b981}.backup-card-header h3{margin:0;font-size:1.25rem;font-weight:700;color:#1e293b}.backup-card p{color:#64748b;font-size:.9375rem;margin:0;flex-grow:1}.backup-card .btn-primary{width:100%;justify-content:center;margin-top:auto}.backup-card .btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.dark-mode .admin-settings{background:linear-gradient(135deg,#020617,#0f172a)}.dark-mode .admin-settings .settings-layout{background:#1e293b;box-shadow:0 20px 60px #0009;border:1px solid #334155}.dark-mode .admin-settings .settings-nav{background:#0f172a;border-right-color:#334155}.dark-mode .admin-settings .settings-nav-item{color:#cbd5e1}.dark-mode .admin-settings .settings-nav-item:hover{background:#60a5fa1a;color:#60a5fa}.dark-mode .admin-settings .settings-nav-item.active{background:#60a5fa26;color:#60a5fa;border-left-color:#60a5fa}.dark-mode .admin-settings .settings-content{background:#1e293b}.dark-mode .admin-settings .settings-section h2{color:#f1f5f9}.dark-mode .admin-settings .form-group label{color:#cbd5e1}.dark-mode .admin-settings .form-group input,.dark-mode .admin-settings .form-group select{background:#0f172a;border-color:#334155;color:#f1f5f9}.dark-mode .admin-settings .form-group input:focus,.dark-mode .admin-settings .form-group select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa1a}.dark-mode .admin-settings .form-group input::-moz-placeholder{color:#94a3b8}.dark-mode .admin-settings .form-group input::placeholder{color:#94a3b8}.dark-mode .admin-settings .checkbox-group{background:#0f172a;border-left-color:#60a5fa;border:1px solid #334155;border-left:3px solid #60a5fa}.dark-mode .admin-settings .checkbox-label strong{color:#f1f5f9}.dark-mode .admin-settings .checkbox-label p{color:#94a3b8}.dark-mode .admin-settings .checkbox-label-inline span{color:#cbd5e1}.dark-mode .admin-settings .btn-primary{background:linear-gradient(135deg,#1e40af,#3b82f6)}.dark-mode .admin-settings .btn-primary:hover{box-shadow:0 10px 25px #3b82f666}.dark-mode .admin-settings .btn-secondary{background:#0f172a;color:#60a5fa;border-color:#60a5fa}.dark-mode .admin-settings .btn-secondary:hover{background:#3b82f6;color:#fff}.dark-mode .admin-settings .info-box{background:#0f172a;border-left-color:#60a5fa}.dark-mode .admin-settings .info-box svg{color:#60a5fa}.dark-mode .admin-settings .info-box h3{color:#f1f5f9}.dark-mode .admin-settings .info-box p{color:#94a3b8}.dark-mode .backup-card{background:#1e293b;border-color:#334155}.dark-mode .backup-card:hover{border-color:#60a5fa;box-shadow:0 4px 12px #60a5fa4d}.dark-mode .backup-card.iberlibro{border-color:#f59e0b}.dark-mode .backup-card.iberlibro:hover{border-color:#fbbf24;box-shadow:0 4px 12px #fbbf244d}.dark-mode .backup-card.uniliber{border-color:#10b981}.dark-mode .backup-card.uniliber:hover{border-color:#34d399;box-shadow:0 4px 12px #34d3994d}.dark-mode .backup-card-header h3{color:#f1f5f9}.dark-mode .backup-card p{color:#94a3b8}.dark-mode .backup-card-header svg{color:#60a5fa}.dark-mode .backup-card.iberlibro .backup-card-header svg{color:#fbbf24}.dark-mode .backup-card.uniliber .backup-card-header svg{color:#34d399}@media (max-width: 768px){.admin-settings .settings-layout{grid-template-columns:1fr}.admin-settings .settings-nav{border-right:none;border-bottom:1px solid #e9ecef;padding:1rem 0}.admin-settings .settings-nav-item{padding:.75rem 1rem;border-left:none;border-bottom:3px solid transparent}.admin-settings .settings-nav-item.active{border-left:none;border-bottom-color:#3b82f6}.admin-settings .settings-header h1{font-size:2rem}.admin-settings .settings-content{padding:1.5rem}.admin-settings .form-row,.admin-settings .checkbox-grid{grid-template-columns:1fr}.dark-mode .admin-settings .settings-nav{border-bottom-color:#334155}.dark-mode .admin-settings .settings-nav-item.active{border-bottom-color:#60a5fa}.backup-grid{grid-template-columns:1fr}}.settings-actions{display:flex;justify-content:center;gap:1.25rem;margin-top:2rem;flex-wrap:wrap}.btn-nav{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1.5rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:9999px;color:#fff;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .3s ease;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);text-decoration:none;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.btn-nav:hover{background:#fff3;border-color:#fff6;transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.btn-nav:active{transform:translateY(0);background:#ffffff26}.btn-nav svg{stroke-width:2.5px}.settings-section-details{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;margin-bottom:2rem;overflow:hidden;transition:all .3s ease}.settings-section-details[open]{box-shadow:0 4px 6px -1px #0000001a;border-color:#cbd5e1}.settings-section-summary{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;cursor:pointer;list-style:none;background:#f8fafc;transition:background-color .2s}.settings-section-summary:hover{background:#f1f5f9}.settings-section-summary::-webkit-details-marker{display:none}.summary-content{display:flex;flex-direction:column;gap:.25rem}.summary-content h3{margin:0;font-size:1.1rem;font-weight:600;color:#1e293b}.summary-subtitle{font-size:.875rem;color:#64748b}.summary-icon{color:#64748b;transition:transform .3s ease}.settings-section-details[open] .summary-icon{transform:rotate(180deg)}.details-content{padding:1.5rem;border-top:1px solid #e2e8f0;animation:slideDown .3s ease-out}.dark-mode .settings-section-details{background:#1e293b;border-color:#334155}.dark-mode .settings-section-details[open]{border-color:#475569;box-shadow:0 4px 6px -1px #00000080}.dark-mode .settings-section-summary{background:#0f172a}.dark-mode .settings-section-summary:hover{background:#1e293b}.dark-mode .summary-content h3{color:#f1f5f9}.dark-mode .summary-subtitle,.dark-mode .summary-icon{color:#94a3b8}.dark-mode .details-content{border-top-color:#334155}.shipping-region-block{margin-bottom:2rem;border-bottom:1px solid #e2e8f0;padding-bottom:1rem}.region-title{margin-bottom:1rem;color:#1e293b;font-weight:600;font-size:1rem}.dark-mode .shipping-region-block{border-bottom-color:#334155}.dark-mode .region-title{color:#f1f5f9}.policy-page{min-height:calc(100vh - 80px);background:linear-gradient(135deg,#f5f7fa,#e9ecef);padding:3rem 1rem}.policy-container{max-width:900px;margin:0 auto;background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden}.policy-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:3rem 2rem;text-align:center}.policy-icon{margin:0 auto 1.5rem;display:block}.policy-header h1{font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.policy-date{font-size:.9rem;opacity:.9;margin:0}.policy-content{padding:3rem 2rem}.policy-section{margin-bottom:3rem}.policy-section:last-child{margin-bottom:0}.section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.section-header svg{color:#667eea;flex-shrink:0}.policy-section h2{font-size:1.75rem;font-weight:700;color:#1e293b;margin:0 0 1rem}.policy-section h3{font-size:1.25rem;font-weight:600;color:#334155;margin:1.5rem 0 .75rem}.policy-section h4{font-size:1rem;font-weight:600;color:#475569;margin:1rem 0 .5rem}.policy-section p{font-size:1rem;line-height:1.7;color:#475569;margin:0 0 1rem}.policy-section ul{margin:1rem 0;padding-left:1.5rem}.policy-section li{font-size:1rem;line-height:1.7;color:#475569;margin-bottom:.75rem}.policy-section li strong{color:#1e293b;font-weight:600}.policy-section a{color:#667eea;text-decoration:none;font-weight:500;transition:color .3s ease}.policy-section a:hover{color:#764ba2;text-decoration:underline}.contact-info{background:#f8fafc;padding:1.5rem;border-radius:8px;border-left:4px solid #667eea;margin-top:1rem}.contact-list{list-style:none;padding:0;margin:0}.contact-list li{margin-bottom:.5rem}.cookie-type{background:#f8fafc;padding:1.5rem;border-radius:8px;margin:1.5rem 0;border-left:4px solid #667eea}.cookie-type h3{display:flex;align-items:center;gap:.5rem;margin-top:0;color:#1e293b}.cookie-type h3 svg{color:#667eea}.cookie-note{background:#fff;padding:1rem;border-radius:6px;font-size:.875rem;font-style:italic;color:#64748b;margin-top:1rem;margin-bottom:0}.cookie-table{overflow-x:auto;margin:1.5rem 0;border-radius:8px;border:1px solid #e2e8f0}.cookie-table table{width:100%;border-collapse:collapse;background:#fff}.cookie-table thead{background:#f8fafc}.cookie-table th{padding:1rem;text-align:left;font-weight:600;color:#1e293b;border-bottom:2px solid #e2e8f0;font-size:.875rem}.cookie-table td{padding:1rem;border-bottom:1px solid #e2e8f0;color:#475569;font-size:.875rem}.cookie-table tbody tr:last-child td{border-bottom:none}.cookie-table code{background:#f1f5f9;padding:.25rem .5rem;border-radius:4px;font-family:Courier New,monospace;font-size:.8125rem;color:#667eea}.management-option{background:#f8fafc;padding:1.5rem;border-radius:8px;margin:1.5rem 0}.management-option h3{margin-top:0}.browser-links{background:#fff;padding:1.5rem;border-radius:8px;margin:1.5rem 0;border:1px solid #e2e8f0}.browser-links h4{margin-top:0}.browser-links ul{margin:.75rem 0 0}.browser-links a{display:inline-flex;align-items:center;gap:.25rem}.policy-footer{background:#f8fafc;padding:2rem;text-align:center;border-top:1px solid #e2e8f0}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:#667eea;text-decoration:none;font-weight:500;padding:.75rem 1.5rem;border-radius:8px;background:#fff;border:2px solid #667eea;transition:all .3s ease}.back-link:hover{background:#667eea;color:#fff;transform:translate(-4px)}@media (max-width: 768px){.policy-page{padding:2rem .75rem}.policy-header{padding:2rem 1.5rem}.policy-header h1{font-size:1.75rem}.policy-content{padding:2rem 1.5rem}.policy-section h2{font-size:1.5rem}.policy-section h3{font-size:1.125rem}.cookie-table{font-size:.8125rem}.cookie-table th,.cookie-table td{padding:.75rem .5rem}}@media (max-width: 480px){.policy-header{padding:1.5rem 1rem}.policy-header h1{font-size:1.5rem}.policy-icon{width:36px;height:36px}.policy-content{padding:1.5rem 1rem}.section-header{flex-direction:column;align-items:flex-start;gap:.5rem}.policy-section h2{font-size:1.25rem}.cookie-table{font-size:.75rem}.cookie-table th,.cookie-table td{padding:.5rem .25rem}.cookie-type,.management-option,.contact-info{padding:1rem}.policy-footer{padding:1.5rem 1rem}}.stripe-payment-form{max-width:500px;margin:0 auto;padding:24px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 8px #0000001a}.payment-header{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.payment-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.payment-header svg{color:var(--primary-color)}.payment-amount{display:flex;justify-content:space-between;align-items:center;padding:16px;margin-bottom:24px;background:var(--bg-secondary);border-radius:6px;font-size:1rem}.payment-amount .amount{font-size:1.5rem;font-weight:700;color:var(--primary-color)}.payment-element-container{margin-bottom:24px}.error-message{padding:12px;margin-bottom:16px;background:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;font-size:.875rem}.pay-button{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;background-color:#2563eb!important;color:#fff!important;border:1px solid #2563eb!important;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 6px #2563eb4d}.pay-button:hover:not(:disabled){background-color:#1d4ed8!important;transform:translateY(-1px);box-shadow:0 6px 12px #2563eb66}.pay-button:disabled{background:#cbd5e1!important;border-color:#cbd5e1!important;cursor:not-allowed;transform:none}.dark-mode .pay-button{background-color:#10b981!important;color:#fff!important;border-color:#10b981!important;box-shadow:0 4px 6px #10b9814d}.dark-mode .pay-button:hover:not(:disabled){background-color:#059669!important;border-color:#059669!important;box-shadow:0 6px 12px #10b98166}.pay-button .spinner{width:18px;height:18px;border:2px solid white;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.security-notice{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-color);font-size:.875rem;color:var(--text-secondary)}.security-notice svg{color:#10b981}.dark-mode .stripe-payment-form{box-shadow:0 2px 8px #0000004d}.dark-mode .error-message{background:#ef44441a;border-color:#ef44444d;color:#fca5a5}.dark-mode .stripe-payment-form{background:#1e293b;border-color:#334155;box-shadow:0 2px 8px #0000004d}.dark-mode .payment-header{border-bottom-color:#334155}.dark-mode .payment-header h3{color:#f1f5f9}.dark-mode .payment-amount{background:#0f172a;color:#e2e8f0}.dark-mode .payment-amount .amount{color:#60a5fa}.dark-mode .security-notice{border-top-color:#334155;color:#94a3b8}.dark-mode .pay-button{background:var(--primary-color);color:#fff}.dark-mode .pay-button:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 4px 12px #3b82f666}.dark-mode .pay-button:disabled{background:#475569;color:#94a3b8}.payment-processing-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#fffffff2;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;transition:opacity .3s ease}.dark-mode .payment-processing-overlay{background-color:#0f172af2}.dark-mode .processing-title{color:#f1f5f9}.dark-mode .processing-text{color:#94a3b8}.processing-content{text-align:center;animation:fadeIn .3s ease-out}.processing-spinner{width:64px;height:64px;border:4px solid #e2e8f0;border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 24px}.dark-mode .processing-spinner{border-color:#3b82f633;border-top-color:#60a5fa}.processing-title{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:8px}.processing-text{font-size:1.125rem;color:var(--text-secondary);max-width:400px;line-height:1.5}.stripe-checkout-container{width:100%;min-height:100vh;padding:40px 20px;background-color:var(--bg-primary);display:flex;justify-content:center}.checkout-content-grid{width:100%;max-width:1200px;display:grid;grid-template-columns:350px 1fr;gap:40px;align-items:start}.checkout-sidebar{display:flex;flex-direction:column;gap:30px}.checkout-header{display:flex;align-items:center;gap:16px}.checkout-header h1{margin:0;font-size:1.8rem;color:var(--text-primary);font-weight:700}.btn-back-small{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;height:40px}.btn-back-small:hover{background:var(--bg-hover);color:var(--primary-color);border-color:var(--primary-color);transform:translateY(-1px)}.checkout-info{padding:24px;background:var(--bg-secondary);border-radius:12px;box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.checkout-info h3{margin:0 0 20px;font-size:1.1rem;color:var(--text-primary);border-bottom:1px solid var(--border-color);padding-bottom:12px;font-weight:600}.order-items{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.order-item{display:flex;justify-content:space-between;align-items:flex-start;color:var(--text-secondary);font-size:.95rem;gap:10px}.order-item span:first-child{font-weight:500;color:var(--text-primary);flex:1}.order-total{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:2px solid var(--border-color);font-size:1.2rem;color:var(--text-primary)}.order-total strong:last-child{color:var(--primary-color)}.checkout-main{flex:1}@media (max-width: 900px){.checkout-content-grid{grid-template-columns:1fr;gap:30px}.checkout-sidebar{order:1}}.dark-mode .stripe-checkout-container{background-color:#0f172a}.dark-mode .checkout-header h1{color:#f1f5f9}.dark-mode .btn-back-small{background:#1e293b;border-color:#334155;color:#94a3b8}.dark-mode .btn-back-small:hover{background:#334155;color:#f1f5f9;border-color:#60a5fa}.dark-mode .checkout-info{background:#1e293b;border-color:#334155;box-shadow:0 4px 6px -1px #00000080}.dark-mode .checkout-info h3{color:#f1f5f9;border-bottom-color:#334155}.dark-mode .order-item span:first-child{color:#e2e8f0}.dark-mode .order-item{color:#94a3b8}.dark-mode .order-total{border-top-color:#334155;color:#f1f5f9}.error-state,.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:60px 40px;text-align:center;min-height:400px}.error-state h2,.loading-state p{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary)}.error-state p{margin:0;font-size:1rem;color:var(--text-secondary);max-width:500px}.error-state .btn-back{display:flex;align-items:center;gap:8px;padding:12px 24px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;margin-top:10px}.error-state .btn-back:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.spinner-large{width:50px;height:50px;border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.dark-mode .error-state h2,.dark-mode .loading-state p{color:#f1f5f9}.dark-mode .error-state p{color:#94a3b8}.dark-mode .spinner-large{border-color:#334155;border-top-color:#60a5fa}.order-summary-details{margin-top:1rem;border-top:1px solid var(--border-color);padding-top:1rem;display:flex;flex-direction:column;gap:.5rem}.summary-detail-row{display:flex;justify-content:space-between;font-size:.9rem;color:var(--text-secondary)}.summary-value{font-weight:500;color:var(--text-primary)}.dark-mode .summary-detail-row,[data-theme=dark] .summary-detail-row{color:#ffffffb3!important}.dark-mode .summary-value,[data-theme=dark] .summary-value{color:#fff!important}.payment-success-container{min-height:calc(100vh - 200px);display:flex;align-items:center;justify-content:center;padding:40px 20px;background:linear-gradient(135deg,#667eea,#764ba2)}.success-card{max-width:600px;width:100%;background:#fff;border-radius:16px;padding:48px;box-shadow:0 20px 60px #0000004d;text-align:center;animation:slideUp .5s ease-out}.success-icon{display:inline-flex;align-items:center;justify-content:center;width:120px;height:120px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;margin-bottom:24px;animation:scaleIn .6s ease-out .2s both}.success-icon svg{color:#fff}.success-card h1{font-size:2rem;color:#1e293b;margin-bottom:12px;font-weight:700}.success-message{font-size:1.125rem;color:#64748b;margin-bottom:32px;line-height:1.6}.order-details{background:#f8fafc;border-radius:12px;padding:24px;margin-bottom:32px;text-align:left}.detail-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #e2e8f0}.detail-item:last-child{border-bottom:none}.detail-item .label{font-weight:500;color:#64748b}.detail-item .value{font-weight:600;color:#1e293b;font-family:monospace}.detail-item .value.total{font-size:1.5rem;color:#10b981}.success-info{display:flex;gap:16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;padding:20px;margin-bottom:32px;text-align:left}.success-info svg{flex-shrink:0;color:#2563eb;margin-top:4px}.success-info h3{margin:0 0 8px;font-size:1.125rem;color:#1e40af}.success-info p{margin:4px 0;color:#64748b;font-size:.9375rem}.success-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary{background:#fff;color:#2563eb;border:2px solid #2563eb}.btn-secondary:hover{background:#eff6ff;transform:translateY(-2px)}.dark-mode .success-card{background:#1e293b}.dark-mode .success-card h1{color:#f1f5f9}.dark-mode .success-message{color:#cbd5e1}.dark-mode .order-details{background:#0f172a}.dark-mode .detail-item{border-bottom-color:#334155}.dark-mode .detail-item .label{color:#94a3b8}.dark-mode .detail-item .value{color:#f1f5f9}.dark-mode .success-info{background:#2563eb1a;border-color:#2563eb4d}.dark-mode .success-info h3{color:#93c5fd}.dark-mode .success-info p{color:#cbd5e1}.dark-mode .btn-secondary{background:#1e293b;color:#60a5fa;border-color:#60a5fa}.dark-mode .btn-secondary:hover{background:#2563eb1a}@media (max-width: 768px){.success-card{padding:32px 24px}.success-card h1{font-size:1.5rem}.success-icon{width:100px;height:100px}.success-icon svg{width:48px;height:48px}.success-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%;justify-content:center}}.email-verification-container{min-height:calc(100vh - 200px);display:flex;align-items:center;justify-content:center;padding:40px 20px;background:linear-gradient(135deg,#f0f9ff,#e0f2fe)}.verification-card{max-width:500px;width:100%;background:#fff;border-radius:1.5rem;padding:3rem;box-shadow:0 20px 40px #0000001a;text-align:center;animation:slideUp .5s ease-out}.verification-icon{display:inline-flex;align-items:center;justify-content:center;width:100px;height:100px;border-radius:50%;margin-bottom:1.5rem}.verification-icon.loading{background:linear-gradient(135deg,#3b82f6,#2563eb);animation:pulse 1.5s ease-in-out infinite}.verification-icon.loading svg{color:#fff;animation:spin 1s linear infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}.verification-icon.success{background:linear-gradient(135deg,#10b981,#059669);animation:scaleIn .6s ease-out}.verification-icon.success svg{color:#fff}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.verification-icon.error{background:linear-gradient(135deg,#ef4444,#dc2626);animation:shake .5s ease-out}.verification-icon.error svg{color:#fff}.verification-card h1{font-size:1.875rem;color:#1e293b;margin-bottom:1rem;font-weight:700}.verification-card p{font-size:1.125rem;color:#64748b;margin-bottom:1rem;line-height:1.6}.redirect-message{font-size:.875rem;color:#94a3b8;font-style:italic;margin-top:1.5rem}.btn-continue{margin-top:1.5rem;padding:.875rem 2rem;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;border-radius:.75rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-continue:hover{transform:translateY(-2px);box-shadow:0 8px 20px #2563eb4d}.error-actions{display:flex;gap:1rem;margin-top:2rem;flex-wrap:wrap;justify-content:center}.btn-primary,.btn-secondary{padding:.875rem 1.5rem;border:none;border-radius:.75rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #2563eb4d}.btn-secondary{background:#fff;color:#64748b;border:2px solid #e2e8f0}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}.dark-mode .email-verification-container{background:linear-gradient(135deg,#1e293b,#0f172a)}.dark-mode .verification-card{background:#1e293b}.dark-mode .verification-card h1{color:#f1f5f9}.dark-mode .verification-card p{color:#cbd5e1}.dark-mode .btn-secondary{background:#0f172a;color:#cbd5e1;border-color:#334155}.dark-mode .btn-secondary:hover{background:#1e293b;border-color:#475569}@media (max-width: 640px){.verification-card{padding:2rem}.verification-icon{width:80px;height:80px}.verification-icon svg{width:48px;height:48px}.verification-card h1{font-size:1.5rem}.error-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.forgot-password{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);position:relative;overflow:hidden}.forgot-password:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:pulse 15s ease-in-out infinite}.forgot-password-container{width:100%;max-width:500px;position:relative;z-index:1}.forgot-password-card{background:#fff;border-radius:24px;padding:3rem 2.5rem;box-shadow:0 20px 60px #0000004d,0 0 0 1px #ffffff1a;animation:slideUp .6s cubic-bezier(.16,1,.3,1)}.forgot-password-header{text-align:center;margin-bottom:2.5rem}.forgot-password-title{font-size:2rem;font-weight:700;color:#1a202c;margin:0 0 1rem;line-height:1.2}.forgot-password-subtitle{font-size:1rem;color:#64748b;margin:0;line-height:1.6}.forgot-password-form{display:flex;flex-direction:column;gap:1.5rem}.form-input{width:100%;padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;color:#1a202c;background:#f8fafc;transition:all .2s ease}.error-message{padding:1rem;background:#fee2e2;border:1px solid #fecaca;border-radius:12px;color:#dc2626;font-size:.875rem;line-height:1.5;animation:shake .4s ease}.forgot-password-footer{margin-top:2rem;text-align:center}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:#667eea;text-decoration:none;font-size:.875rem;font-weight:600;transition:all .2s ease}.back-link:hover{color:#764ba2;gap:.75rem}.success-icon-container{display:flex;justify-content:center;margin-bottom:2rem;animation:scaleIn .5s cubic-bezier(.16,1,.3,1)}.success-icon{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);color:#fff;display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:700;box-shadow:0 10px 30px #10b9814d;animation:pulseSuccess 2s ease-in-out infinite}.success-message strong{color:#667eea;font-weight:600}.success-notice{background:#fef3c7;border:1px solid #fde68a;border-radius:12px;padding:1rem;margin:1.5rem 0}.success-notice p{margin:.5rem 0;font-size:.875rem;color:#92400e;line-height:1.5}.success-notice p:first-child{margin-top:0}.success-notice p:last-child{margin-bottom:0}.btn-back-to-login{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 14px #667eea66}.btn-back-to-login:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.btn-resend-email{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem;background:transparent;color:#667eea;border:2px solid #667eea;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-resend-email:hover:not(:disabled){background:#667eea;color:#fff;transform:translateY(-2px);box-shadow:0 4px 14px #667eea4d}.btn-resend-email:disabled{opacity:.5;cursor:not-allowed;transform:none}.resend-success-message{padding:1rem;background:#d1fae5;border:1px solid #a7f3d0;border-radius:12px;color:#065f46;font-size:.875rem;line-height:1.5;text-align:center;margin:1rem 0;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 640px){.forgot-password{padding:1rem}.forgot-password-card{padding:2rem 1.5rem;border-radius:20px}.forgot-password-title{font-size:1.75rem}.forgot-password-subtitle{font-size:.9375rem}}[data-theme=dark] .forgot-password-card{background:#1e293b;box-shadow:0 20px 60px #00000080,0 0 0 1px #ffffff0d}[data-theme=dark] .forgot-password-title{color:#f1f5f9}[data-theme=dark] .forgot-password-subtitle{color:#94a3b8}.reset-password{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);position:relative;overflow:hidden}.reset-password:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:pulse 15s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.2);opacity:.5}}.reset-password-container{width:100%;max-width:500px;position:relative;z-index:1}.reset-password-card{background:#fff;border-radius:24px;padding:3rem 2.5rem;box-shadow:0 20px 60px #0000004d,0 0 0 1px #ffffff1a;animation:slideUp .6s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.loading-spinner{width:60px;height:60px;border:4px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;margin:0 auto 1.5rem;animation:spin 1s linear infinite}.loading-text{text-align:center;color:#64748b;font-size:1rem;margin:0}.reset-password-header{text-align:center;margin-bottom:2.5rem}.reset-password-title{font-size:2rem;font-weight:700;color:#1a202c;margin:0 0 1rem;line-height:1.2}.reset-password-subtitle{font-size:1rem;color:#64748b;margin:0;line-height:1.6}.countdown-timer{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:#fef3c7;border:1px solid #fde68a;border-radius:12px;color:#92400e;font-size:.875rem;margin-bottom:1.5rem;animation:pulse 2s ease-in-out infinite}.countdown-timer strong{font-weight:700;color:#78350f;font-size:1rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.reset-password-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:#334155}.password-input-container{position:relative;display:flex;align-items:center}.form-input{width:100%;padding:.875rem 3rem .875rem 1rem;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;color:#1a202c;background:#f8fafc;transition:all .2s ease}.form-input:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 4px #667eea1a}.form-input:disabled{opacity:.6;cursor:not-allowed}.password-toggle{position:absolute;right:1rem;background:none;border:none;color:#64748b;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.password-toggle:hover{color:#334155}.input-hint{font-size:.875rem;color:#64748b;margin:0}.error-message{padding:1rem;background:#fee2e2;border:1px solid #fecaca;border-radius:12px;color:#dc2626;font-size:.875rem;line-height:1.5;animation:shake .4s ease;text-align:center}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.submit-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 14px #667eea66}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.success-icon-container,.error-icon-container{display:flex;justify-content:center;margin-bottom:2rem;animation:scaleIn .5s cubic-bezier(.16,1,.3,1)}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.success-icon{color:#10b981;filter:drop-shadow(0 4px 12px rgba(16,185,129,.3));animation:pulseSuccess 2s ease-in-out infinite}@keyframes pulseSuccess{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.error-icon{color:#ef4444;filter:drop-shadow(0 4px 12px rgba(239,68,68,.3))}.success-message{font-size:1.125rem;color:#334155;margin:0 0 1rem;line-height:1.6;text-align:center}.success-instructions{font-size:1rem;color:#64748b;margin:0 0 1.5rem;line-height:1.6;text-align:center}.action-buttons{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}.btn-go-to-login,.btn-request-new{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 14px #667eea66}.btn-go-to-login:hover,.btn-request-new:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.btn-back-to-login{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem;background:transparent;color:#667eea;border:2px solid #667eea;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-back-to-login:hover{background:#667eea;color:#fff;transform:translateY(-2px);box-shadow:0 4px 14px #667eea4d}@media (max-width: 640px){.reset-password{padding:1rem}.reset-password-card{padding:2rem 1.5rem;border-radius:20px}.reset-password-title{font-size:1.75rem}.reset-password-subtitle{font-size:.9375rem}}[data-theme=dark] .reset-password-card{background:#1e293b;box-shadow:0 20px 60px #00000080,0 0 0 1px #ffffff0d}[data-theme=dark] .reset-password-title{color:#f1f5f9}[data-theme=dark] .reset-password-subtitle,[data-theme=dark] .loading-text{color:#94a3b8}[data-theme=dark] .loading-spinner{border-color:#334155;border-top-color:#667eea}[data-theme=dark] .form-label{color:#cbd5e1}[data-theme=dark] .form-input{background:#0f172a;border-color:#334155;color:#f1f5f9}[data-theme=dark] .form-input:focus{background:#1e293b;border-color:#667eea}[data-theme=dark] .password-toggle{color:#94a3b8}[data-theme=dark] .password-toggle:hover{color:#cbd5e1}[data-theme=dark] .input-hint{color:#94a3b8}[data-theme=dark] .success-message{color:#cbd5e1}[data-theme=dark] .success-instructions{color:#94a3b8}[data-theme=dark] .btn-back-to-login{color:#818cf8;border-color:#667eea}[data-theme=dark] .btn-back-to-login:hover{background:#667eea;color:#fff}.info-page{padding:0;min-height:calc(100vh - 70px);background-color:var(--bg-primary)}.info-hero{background:radial-gradient(circle at top right,var(--primary-800) 0%,var(--primary-900) 100%);color:#fff;padding:5rem 2rem;text-align:center;position:relative;overflow:hidden;box-shadow:0 4px 20px #0000001a}.info-hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM60 91c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM35 41c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM12 60c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2z' fill='%23ffffff' fill-opacity='1' fill-rule='evenodd'/%3E%3C/svg%3E")}.info-hero:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.2) 100%);pointer-events:none}.info-hero h1{font-size:3.5rem;font-weight:800;margin-bottom:.5rem;line-height:1.1;position:relative;z-index:1;letter-spacing:-.02em;text-shadow:0 4px 10px rgba(0,0,0,.2)}.info-hero p{font-size:1.5rem;max-width:700px;margin:0 auto;opacity:.95;position:relative;z-index:1;font-weight:300;line-height:1.6}.info-container{max-width:1000px;margin:0 auto;padding:2rem 1.5rem;position:relative;z-index:2}.info-card{background:var(--bg-secondary);border-radius:1rem;padding:2.5rem;box-shadow:0 10px 25px #0000000d;margin-bottom:2rem;border:1px solid var(--border-color)}.info-card:last-child{margin-bottom:0}.info-section{margin-bottom:3rem}.info-section:last-child{margin-bottom:0}.section-title{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;color:var(--primary-700)}.section-title h2{font-size:1.75rem;font-weight:700;margin:0}.section-icon{color:var(--primary-600)}.info-text p{color:var(--text-secondary);line-height:1.8;margin-bottom:1rem;font-size:1.05rem}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:2rem}.value-item{background:var(--bg-tertiary);padding:1.5rem;border-radius:.75rem;text-align:center;transition:transform .2s}.value-item:hover{transform:translateY(-5px)}.value-icon{color:var(--primary-600);margin-bottom:1rem}.value-item h3{color:var(--text-primary);margin-bottom:.5rem;font-weight:600}.value-item p{color:var(--text-secondary);font-size:.9rem;line-height:1.5}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem}@media (max-width: 768px){.contact-grid{grid-template-columns:1fr;gap:2rem}}.contact-info-list{display:flex;flex-direction:column;gap:1.5rem}.contact-item{display:flex;align-items:flex-start;gap:1rem}.contact-item-content h3{font-size:1.1rem;font-weight:600;margin-bottom:.25rem;color:var(--text-primary)}.contact-item-content p,.contact-item-content a{color:var(--text-secondary);text-decoration:none;font-size:.95rem;line-height:1.4;margin-bottom:.25rem;display:block}.contact-item-content a:hover{color:var(--primary-600)}.map-container{width:100%;height:400px;background:var(--bg-tertiary);border-radius:1rem;overflow:hidden;margin-top:2rem;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.map-frame{width:100%;height:100%;border:0}.info-form .form-group{margin-bottom:1.25rem}.info-form label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.info-form input,.info-form textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:.5rem;background:var(--bg-tertiary);color:var(--text-primary)}.info-form textarea{resize:vertical;min-height:120px}.location-card{margin-bottom:3rem;border-top:4px solid var(--primary-600)}.location-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.location-header h2{font-size:1.8rem;color:var(--text-primary);margin:0}.location-subtitle{color:var(--text-secondary);font-size:1.1rem;margin-top:.5rem}.maps-profile-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background-color:#fff;border:1px solid var(--border-color);border-radius:.5rem;color:var(--text-primary);text-decoration:none;font-weight:500;transition:all .2s ease;box-shadow:var(--shadow-sm)}.maps-profile-btn:hover{border-color:var(--primary-600);color:var(--primary-600);transform:translateY(-2px);box-shadow:var(--shadow-md)}.dark-mode .info-page{background-color:#0f172a}.dark-mode .info-card{background-color:#1e293b;border-color:#334155}.dark-mode .section-title h2,.dark-mode .location-header h2,.dark-mode .value-item h3,.dark-mode .contact-item-content h3{color:#f1f5f9}.dark-mode .info-text p,.dark-mode .value-item p,.dark-mode .contact-item-content p,.dark-mode .location-subtitle{color:#cbd5e1}.dark-mode .value-item{background-color:#2e3b4e}.dark-mode .maps-profile-btn{background-color:#2e3b4e;border-color:#475569;color:#f1f5f9}.dark-mode .maps-profile-btn:hover{border-color:#60a5fa;color:#60a5fa;background-color:#1e293b}.dark-mode .info-form input,.dark-mode .info-form textarea{background-color:#0f172a;border-color:#334155;color:#f1f5f9}.dark-mode .contact-item-content a{color:#93c5fd}.contact-info-group{display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.contact-method-title{font-size:1.1rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.contact-link{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);text-decoration:none;font-size:1rem;transition:color .2s}.contact-link:hover{color:var(--primary-color)}.email-link{color:var(--primary-color);font-weight:600}.contact-details-list{display:flex;flex-direction:column;gap:.5rem}.contact-label{font-weight:500;color:var(--text-primary)}.contact-address-item{display:flex;flex-direction:column;gap:.25rem}.contact-address{margin:0;font-size:.95rem;color:var(--text-secondary)}.dark-mode .contact-method-title,.dark-mode .contact-label{color:#f1f5f9}.dark-mode .contact-link{color:#cbd5e1}.dark-mode .contact-link:hover,.dark-mode .email-link{color:#60a5fa}.dark-mode .contact-address{color:#94a3b8}.order-confirmation-container{min-height:80vh;display:flex;align-items:center;justify-content:center;padding:2rem;background-color:#f8fafc;animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.confirmation-card{background:#fff;padding:3rem;border-radius:24px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000000d;max-width:600px;width:100%;text-align:center;border:1px solid rgba(226,232,240,.8)}.icon-wrapper{position:relative;display:inline-block;margin-bottom:2rem}.clock-icon{color:#3b82f6;background:#eff6ff;padding:1rem;border-radius:50%;box-sizing:content-box;box-shadow:0 4px 6px -1px #3b82f61a}.check-icon{position:absolute;bottom:-5px;right:-5px;color:#fff;background:#10b981;border-radius:50%;padding:4px;border:4px solid white}h1{font-size:2.25rem;color:#1e293b;margin-bottom:.75rem;font-family:Playfair Display,serif;font-weight:700;letter-spacing:-.025em}.subtitle{color:#64748b;margin-bottom:3rem;font-size:1.125rem;line-height:1.6}.info-box{background:#f8fafc;border-radius:16px;padding:2rem;text-align:left;margin-bottom:2.5rem;border:1px solid #e2e8f0}.info-box h3{color:#0f172a;margin-bottom:1.5rem;font-size:1.1rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.info-box ul{list-style:none;padding:0;margin:0;position:relative}.info-box ul:before{content:"";position:absolute;left:15px;top:10px;bottom:0;width:2px;background:#e2e8f0;border-radius:2px}.info-box li{margin-bottom:2rem;color:#475569;line-height:1.6;padding-left:3rem;position:relative}.info-box li:last-child{margin-bottom:0}.info-box li:before{content:"";position:absolute;left:9px;top:6px;width:14px;height:14px;background:#fff;border:2px solid #3b82f6;border-radius:50%;z-index:1}.info-box li:first-child:before{background:#3b82f6}.info-box strong{color:#1e293b;display:block;margin-bottom:.25rem;font-size:1rem}.actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.primary-btn{background:#0f172a;color:#fff;padding:.875rem 2rem;border-radius:12px;text-decoration:none;font-weight:600;display:flex;align-items:center;gap:.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 6px -1px #0f172a1a}.primary-btn:hover{background:#1e293b;transform:translateY(-2px);box-shadow:0 10px 15px -3px #0f172a26}.secondary-btn{background:transparent;color:#64748b;border:1px solid #e2e8f0;padding:.875rem 2rem;border-radius:12px;text-decoration:none;font-weight:500;transition:all .2s}.secondary-btn:hover{background:#f1f5f9;color:#0f172a;border-color:#cbd5e1}.dark-mode .order-confirmation-container{background-color:#020617}.dark-mode .confirmation-card{background:#1e293b;border-color:#ffffff0d;box-shadow:0 0 0 1px #ffffff0d,0 10px 15px -3px #00000080}.dark-mode h1{color:#f8fafc}.dark-mode .subtitle{color:#94a3b8}.dark-mode .info-box{background:#0f172a;border-color:#334155}.dark-mode .info-box h3{color:#e2e8f0}.dark-mode .info-box ul:before{background:#334155}.dark-mode .info-box li:before{background:#0f172a;border-color:#60a5fa}.dark-mode .info-box li:first-child:before{background:#60a5fa}.dark-mode .info-box li{color:#cbd5e1}.dark-mode .info-box strong{color:#f1f5f9}.dark-mode .clock-icon{background:#172554;color:#60a5fa;box-shadow:0 4px 6px -1px #0000004d}.dark-mode .check-icon{background:#10b981;border-color:#1e293b}.dark-mode .primary-btn{background:#f8fafc;color:#0f172a}.dark-mode .primary-btn:hover{background:#e2e8f0}.dark-mode .secondary-btn{border-color:#334155;color:#94a3b8}.dark-mode .secondary-btn:hover{background:#334155;color:#f8fafc;border-color:#475569}@media (max-width: 640px){.order-confirmation-container{padding:1rem}.confirmation-card{padding:2rem 1.5rem}h1{font-size:1.75rem}.actions{flex-direction:column;width:100%}.primary-btn,.secondary-btn{width:100%;justify-content:center}}:root{--primary-50: #eff6ff;--primary-100: #dbeafe;--primary-200: #bfdbfe;--primary-300: #93c5fd;--primary-400: #60a5fa;--primary-500: #3b82f6;--primary-600: #2563eb;--primary-700: #1d4ed8;--primary-800: #1e40af;--primary-900: #1e3a8a;--secondary-50: #f8fafc;--secondary-100: #f1f5f9;--secondary-200: #e2e8f0;--secondary-300: #cbd5e1;--secondary-400: #94a3b8;--secondary-500: #64748b;--secondary-600: #475569;--secondary-700: #334155;--secondary-800: #1e293b;--secondary-900: #0f172a;--success-50: #f0fdf4;--success-100: #dcfce7;--success-200: #bbf7d0;--success-300: #86efac;--success-400: #4ade80;--success-500: #22c55e;--success-600: #16a34a;--success-700: #15803d;--success-800: #166534;--success-900: #14532d;--warning-50: #fffbeb;--warning-100: #fef3c7;--warning-200: #fde68a;--warning-300: #fcd34d;--warning-400: #fbbf24;--warning-500: #f59e0b;--warning-600: #d97706;--warning-700: #b45309;--warning-800: #92400e;--warning-900: #78350f;--error-50: #fef2f2;--error-100: #fee2e2;--error-200: #fecaca;--error-300: #fca5a5;--error-400: #f87171;--error-500: #ef4444;--error-600: #dc2626;--error-700: #b91c1c;--error-800: #991b1b;--error-900: #7f1d1d;--font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", sans-serif;--font-family-mono: "SF Mono", "Monaco", "Inconsolata", "Roboto Mono", "Courier New", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.25;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 2;--spacing-0: 0;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--spacing-20: 5rem;--spacing-24: 6rem;--spacing-32: 8rem;--radius-sm: .375rem;--radius-base: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-2xl: 2rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-base: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--transition-fast: .15s ease-in-out;--transition-base: .2s ease-in-out;--transition-slow: .3s ease-in-out;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}*,*:before,*:after{box-sizing:border-box}*{margin:0}html,body{height:100%}body{line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;font-family:var(--font-family-base)}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root{isolation:isolate}button{background:none;border:none;padding:0;cursor:pointer}ul,ol{list-style:none;padding:0}a{text-decoration:none;color:inherit}:focus-visible{outline:2px solid var(--primary-600);outline-offset:2px}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-4)}.gap-1{gap:var(--spacing-1)}.gap-2{gap:var(--spacing-2)}.gap-3{gap:var(--spacing-3)}.gap-4{gap:var(--spacing-4)}.gap-6{gap:var(--spacing-6)}.gap-8{gap:var(--spacing-8)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-primary{color:var(--primary-600)}.text-secondary{color:var(--secondary-600)}.text-success{color:var(--success-600)}.text-warning{color:var(--warning-600)}.text-error{color:var(--error-600)}.bg-primary{background-color:var(--primary-600)}.bg-secondary{background-color:var(--secondary-100)}.bg-success{background-color:var(--success-600)}.bg-warning{background-color:var(--warning-600)}.bg-error{background-color:var(--error-600)}.p-1{padding:var(--spacing-1)}.p-2{padding:var(--spacing-2)}.p-3{padding:var(--spacing-3)}.p-4{padding:var(--spacing-4)}.p-6{padding:var(--spacing-6)}.p-8{padding:var(--spacing-8)}.m-1{margin:var(--spacing-1)}.m-2{margin:var(--spacing-2)}.m-3{margin:var(--spacing-3)}.m-4{margin:var(--spacing-4)}.m-6{margin:var(--spacing-6)}.m-8{margin:var(--spacing-8)}.rounded-sm{border-radius:var(--radius-sm)}.rounded{border-radius:var(--radius-base)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow{box-shadow:var(--shadow-base)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.transition-fast{transition:all var(--transition-fast)}.transition{transition:all var(--transition-base)}.transition-slow{transition:all var(--transition-slow)}@media (max-width: 768px){.md\:hidden{display:none}.md\:block{display:block}.md\:flex{display:flex}}@media (max-width: 480px){.sm\:hidden{display:none}.sm\:block{display:block}.sm\:flex{display:flex}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-2{bottom:.5rem}.left-0{left:0}.left-2{left:.5rem}.left-2\.5{left:.625rem}.left-4{left:1rem}.right-0{right:0}.right-2{right:.5rem}.right-4{right:1rem}.top-2{top:.5rem}.top-2\.5{top:.625rem}.top-3\.5{top:.875rem}.top-4{top:1rem}.top-full{top:100%}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.z-\[60\]{z-index:60}.col-span-full{grid-column:1 / -1}.m-0{margin:0}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.-ml-2{margin-left:-.5rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-row{display:table-row}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-\[4\/3\]{aspect-ratio:4/3}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-4{height:1rem}.h-40{height:10rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.max-h-60{max-height:15rem}.max-h-\[70vh\]{max-height:70vh}.max-h-\[90vh\]{max-height:90vh}.min-h-\[300px\]{min-height:300px}.min-h-screen{min-height:100vh}.w-12{width:3rem}.w-16{width:4rem}.w-4{width:1rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.max-w-\[200px\]{max-width:200px}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-4{--tw-translate-y: 1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-2{--tw-rotate: -2deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-95{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-1{row-gap:.25rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-b-lg{border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-blue-100{--tw-border-opacity: 1;border-color:rgb(219 234 254 / var(--tw-border-opacity, 1))}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-blue-600{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.border-gray-900{--tw-border-opacity: 1;border-color:rgb(17 24 39 / var(--tw-border-opacity, 1))}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-green-300{--tw-border-opacity: 1;border-color:rgb(134 239 172 / var(--tw-border-opacity, 1))}.border-green-500{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-red-100{--tw-border-opacity: 1;border-color:rgb(254 226 226 / var(--tw-border-opacity, 1))}.border-red-400{--tw-border-opacity: 1;border-color:rgb(248 113 113 / var(--tw-border-opacity, 1))}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-white\/10{border-color:#ffffff1a}.border-t-transparent{border-top-color:transparent}.bg-black\/20{background-color:#0003}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-50\/50{background-color:#f9fafb80}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-gray-900\/50{background-color:#11182780}.bg-gray-900\/80{background-color:#111827cc}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-pink-50{--tw-bg-opacity: 1;background-color:rgb(253 242 248 / var(--tw-bg-opacity, 1))}.bg-pink-500{--tw-bg-opacity: 1;background-color:rgb(236 72 153 / var(--tw-bg-opacity, 1))}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.bg-purple-500{--tw-bg-opacity: 1;background-color:rgb(168 85 247 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/20{background-color:#fff3}.bg-yellow-200{--tw-bg-opacity: 1;background-color:rgb(254 240 138 / var(--tw-bg-opacity, 1))}.bg-yellow-400{--tw-bg-opacity: 1;background-color:rgb(250 204 21 / var(--tw-bg-opacity, 1))}.bg-\[url\(\'https\:\/\/www\.transparenttextures\.com\/patterns\/cubes\.png\'\)\]{background-image:url(https://www.transparenttextures.com/patterns/cubes.png)}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-indigo-600{--tw-gradient-from: #4f46e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(79 70 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-orange-500{--tw-gradient-from: #f97316 var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 115 22 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-pink-500{--tw-gradient-from: #ec4899 var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 72 153 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-600{--tw-gradient-from: #9333ea var(--tw-gradient-from-position);--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-500{--tw-gradient-from: #ef4444 var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-purple-600{--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #9333ea var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-red-500{--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #ef4444 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-rose-500{--tw-gradient-to: rgb(244 63 94 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #f43f5e var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-amber-600{--tw-gradient-to: #d97706 var(--tw-gradient-to-position)}.to-indigo-600{--tw-gradient-to: #4f46e5 var(--tw-gradient-to-position)}.to-orange-600{--tw-gradient-to: #ea580c var(--tw-gradient-to-position)}.to-red-600{--tw-gradient-to: #dc2626 var(--tw-gradient-to-position)}.to-rose-600{--tw-gradient-to: #e11d48 var(--tw-gradient-to-position)}.to-violet-600{--tw-gradient-to: #7c3aed var(--tw-gradient-to-position)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.pl-12{padding-left:3rem}.pl-5{padding-left:1.25rem}.pl-6{padding-left:1.5rem}.pl-9{padding-left:2.25rem}.pr-4{padding-right:1rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-serif{font-family:ui-serif,Georgia,Cambria,Times New Roman,Times,serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[10px\]{font-size:10px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity, 1))}.text-pink-500{--tw-text-opacity: 1;color:rgb(236 72 153 / var(--tw-text-opacity, 1))}.text-pink-600{--tw-text-opacity: 1;color:rgb(219 39 119 / var(--tw-text-opacity, 1))}.text-purple-500{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-rose-600{--tw-text-opacity: 1;color:rgb(225 29 72 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.decoration-red-500{text-decoration-color:#ef4444}.decoration-2{text-decoration-thickness:2px}.placeholder-gray-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-95{opacity:.95}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-blue-500\/20{--tw-shadow-color: rgb(59 130 246 / .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-blue-600\/20{--tw-shadow-color: rgb(37 99 235 / .2);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-green-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity, 1))}.drop-shadow-lg{--tw-drop-shadow: drop-shadow(0 10px 8px rgb(0 0 0 / .04)) drop-shadow(0 4px 3px rgb(0 0 0 / .1));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-md{--tw-drop-shadow: drop-shadow(0 4px 3px rgb(0 0 0 / .07)) drop-shadow(0 2px 2px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-500{transition-duration:.5s}.placeholder\:text-gray-400::-moz-placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.placeholder\:text-gray-400::placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.hover\:-translate-y-0\.5:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-blue-200:hover{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.hover\:border-blue-300:hover{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.hover\:bg-black\/40:hover{background-color:#0006}.hover\:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-50:hover{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-green-200:hover{--tw-bg-opacity: 1;background-color:rgb(187 247 208 / var(--tw-bg-opacity, 1))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.hover\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:bg-yellow-300:hover{--tw-bg-opacity: 1;background-color:rgb(253 224 71 / var(--tw-bg-opacity, 1))}.hover\:from-orange-600:hover{--tw-gradient-from: #ea580c var(--tw-gradient-from-position);--tw-gradient-to: rgb(234 88 12 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-pink-600:hover{--tw-gradient-from: #db2777 var(--tw-gradient-from-position);--tw-gradient-to: rgb(219 39 119 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-purple-700:hover{--tw-gradient-from: #7e22ce var(--tw-gradient-from-position);--tw-gradient-to: rgb(126 34 206 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:to-indigo-700:hover{--tw-gradient-to: #4338ca var(--tw-gradient-to-position)}.hover\:to-red-700:hover{--tw-gradient-to: #b91c1c var(--tw-gradient-to-position)}.hover\:to-rose-700:hover{--tw-gradient-to: #be123c var(--tw-gradient-to-position)}.hover\:text-amber-700:hover{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.hover\:text-blue-600:hover{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.hover\:text-blue-700:hover{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.hover\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.hover\:text-green-700:hover{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.hover\:text-red-600:hover{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.hover\:text-red-700:hover{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow:hover{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-green-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity, 1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.active\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:transform:active{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:opacity-50:disabled{opacity:.5}.group:focus-within .group-focus-within\:text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.dark\:border-blue-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.dark\:border-blue-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(30 64 175 / var(--tw-border-opacity, 1))}.dark\:border-gray-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.dark\:border-gray-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.dark\:border-green-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(21 128 61 / var(--tw-border-opacity, 1))}.dark\:border-green-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(22 101 52 / var(--tw-border-opacity, 1))}.dark\:border-green-900\/30:is(.dark *){border-color:#14532d4d}.dark\:border-red-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(153 27 27 / var(--tw-border-opacity, 1))}.dark\:border-slate-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.dark\:border-slate-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.dark\:border-slate-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(30 41 59 / var(--tw-border-opacity, 1))}.dark\:border-white:is(.dark *){--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.dark\:bg-blue-900\/20:is(.dark *){background-color:#1e3a8a33}.dark\:bg-blue-900\/30:is(.dark *){background-color:#1e3a8a4d}.dark\:bg-blue-900\/40:is(.dark *){background-color:#1e3a8a66}.dark\:bg-gray-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-800\/30:is(.dark *){background-color:#1f29374d}.dark\:bg-gray-800\/50:is(.dark *){background-color:#1f293780}.dark\:bg-gray-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-900\/50:is(.dark *){background-color:#11182780}.dark\:bg-green-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1))}.dark\:bg-green-900\/20:is(.dark *){background-color:#14532d33}.dark\:bg-green-900\/30:is(.dark *){background-color:#14532d4d}.dark\:bg-red-900\/30:is(.dark *){background-color:#7f1d1d4d}.dark\:bg-slate-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-800\/50:is(.dark *){background-color:#1e293b80}.dark\:bg-slate-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-900\/50:is(.dark *){background-color:#0f172a80}.dark\:text-amber-500:is(.dark *){--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.dark\:text-blue-300:is(.dark *){--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.dark\:text-gray-100:is(.dark *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.dark\:text-gray-200:is(.dark *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.dark\:text-gray-300:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.dark\:text-gray-400:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.dark\:text-gray-500:is(.dark *){--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.dark\:text-green-100:is(.dark *){--tw-text-opacity: 1;color:rgb(220 252 231 / var(--tw-text-opacity, 1))}.dark\:text-green-400:is(.dark *){--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.dark\:text-red-300:is(.dark *){--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.dark\:text-red-400:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.dark\:text-slate-400:is(.dark *){--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.dark\:text-slate-500:is(.dark *){--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.dark\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:hover\:border-slate-500:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(100 116 139 / var(--tw-border-opacity, 1))}.dark\:hover\:bg-blue-900\/20:hover:is(.dark *){background-color:#1e3a8a33}.dark\:hover\:bg-blue-900\/30:hover:is(.dark *){background-color:#1e3a8a4d}.dark\:hover\:bg-blue-900\/50:hover:is(.dark *){background-color:#1e3a8a80}.dark\:hover\:bg-gray-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-800:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-red-900\/20:hover:is(.dark *){background-color:#7f1d1d33}.dark\:hover\:bg-slate-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.dark\:hover\:text-blue-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.dark\:hover\:text-gray-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.dark\:hover\:text-red-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.dark\:hover\:text-red-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}@media (min-width: 640px){.sm\:block{display:block}.sm\:w-auto{width:auto}}@media (min-width: 768px){.md\:col-span-2{grid-column:span 2 / span 2}.md\:w-48{width:12rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 1024px){.lg\:hidden{display:none}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.dark-mode .hero-section{background:linear-gradient(135deg,#0f172a,#1e293b)}.dark-mode .featured-section,.dark-mode .categories-section,.dark-mode .testimonials-section,.dark-mode .catalog-page{background:var(--bg-primary)}.dark-mode .catalog-header{background:var(--bg-secondary);border-color:var(--border-color)}.dark-mode .catalog-content,.dark-mode .cart-page{background:var(--bg-primary)}.dark-mode .cart-container{background:var(--bg-secondary);border-color:var(--border-color)}.dark-mode .cart-summary{background:var(--bg-tertiary);border-color:var(--border-color)}.dark-mode .auth-page{background:linear-gradient(135deg,#0f172a,#1e293b)}.dark-mode .auth-container{background:var(--bg-secondary);border-color:var(--border-color);box-shadow:var(--shadow-xl)}.dark-mode .auth-form input{background:var(--input-bg);color:var(--input-text);border-color:var(--input-border)}.dark-mode .auth-form input:focus{border-color:var(--input-focus-border);background:var(--bg-primary)}.dark-mode .dashboard{background:var(--bg-primary)}.dark-mode .dashboard-header{background:var(--bg-secondary);border-color:var(--border-color)}.dark-mode .dashboard-card{background:var(--bg-secondary);border-color:var(--border-color);box-shadow:var(--shadow-md)}.dark-mode .dashboard-card:hover{background:var(--bg-tertiary);box-shadow:var(--shadow-lg)}.dark-mode .user-settings,.dark-mode .admin-settings{background:linear-gradient(135deg,#0f172a,#1e293b)}.dark-mode .settings-layout{background:var(--bg-secondary);box-shadow:var(--shadow-xl)}.dark-mode .settings-nav{background:var(--bg-primary);border-color:var(--border-color)}.dark-mode .settings-content{background:var(--bg-secondary)}.dark-mode .form-group input,.dark-mode .form-group select,.dark-mode .form-group textarea{background:var(--input-bg);color:var(--input-text);border-color:var(--input-border)}.dark-mode .form-group input:focus,.dark-mode .form-group select:focus,.dark-mode .form-group textarea:focus{border-color:var(--input-focus-border);background:var(--bg-primary)}.dark-mode .form-group label{color:var(--text-primary)}.dark-mode .checkbox-group{background:var(--bg-primary)}.dark-mode .info-box{background:var(--bg-tertiary);border-color:var(--border-color)}.dark-mode .modal-overlay{background:#000c}.dark-mode .modal-content{background:var(--bg-secondary);border-color:var(--border-color);box-shadow:var(--shadow-xl)}.dark-mode .modal-header{border-color:var(--border-color);color:var(--text-primary)}.dark-mode .modal-body{color:var(--text-secondary)}.dark-mode .modal-footer{border-color:var(--border-color);background:var(--bg-primary)}.dark-mode table{background:var(--bg-secondary);border-color:var(--border-color)}.dark-mode th{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-color)}.dark-mode td{color:var(--text-secondary);border-color:var(--border-color)}.dark-mode tr:hover{background:var(--bg-hover)}.dark-mode .btn-primary{background:var(--primary-color);color:#fff}.dark-mode .btn-primary:hover{background:var(--primary-hover)}.dark-mode .btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-color)}.dark-mode .btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-color-hover)}.dark-mode .btn-danger{background:var(--danger-color);color:#fff}.dark-mode .btn-danger:hover{background:var(--danger-hover)}.dark-mode .search-bar{background:var(--bg-secondary);border-color:var(--border-color)}.dark-mode .search-bar input{background:var(--input-bg);color:var(--input-text);border-color:var(--input-border)}.dark-mode .search-bar input:focus{border-color:var(--input-focus-border)}.dark-mode .filter-container{background:var(--bg-secondary);border-color:var(--border-color)}.dark-mode .filter-group{border-color:var(--border-color)}.dark-mode .filter-group label{color:var(--text-primary)}.dark-mode .invoice-table-container{background:var(--bg-secondary);border-color:var(--border-color)}.dark-mode .invoice-row{border-color:var(--border-color)}.dark-mode .invoice-row:hover{background:var(--bg-hover)}.dark-mode .status-badge{border-color:var(--border-color)}.dark-mode .status-pending{background:#fbbf241a;color:#fbbf24}.dark-mode .status-completed{background:#10b9811a;color:#10b981}.dark-mode .status-cancelled{background:#f871711a;color:#f87171}.dark-mode .dropdown-menu{background:var(--bg-secondary);border-color:var(--border-color);box-shadow:var(--shadow-lg)}.dark-mode .dropdown-item{color:var(--text-primary)}.dark-mode .dropdown-item:hover{background:var(--bg-hover);color:var(--primary-color)}.dark-mode .tabs{border-color:var(--border-color)}.dark-mode .tab{color:var(--text-secondary);border-color:transparent}.dark-mode .tab:hover{color:var(--text-primary);background:var(--bg-hover)}.dark-mode .tab.active{color:var(--primary-color);border-color:var(--primary-color);background:var(--bg-secondary)}.dark-mode .alert{background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-primary)}.dark-mode .alert-success{background:#10b9811a;border-color:var(--success-color);color:#34d399}.dark-mode .alert-warning{background:#fbbf241a;border-color:var(--warning-color);color:#fbbf24}.dark-mode .alert-error{background:#f871711a;border-color:var(--danger-color);color:#f87171}.dark-mode .card{background:var(--bg-secondary);border-color:var(--border-color);box-shadow:var(--shadow-md)}.dark-mode .card-header{background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-primary)}.dark-mode .card-body{color:var(--text-secondary)}.dark-mode .card-footer{background:var(--bg-primary);border-color:var(--border-color)}.dark-mode hr,.dark-mode .divider{border-color:var(--border-color)}.dark-mode a{color:var(--primary-color)}.dark-mode a:hover{color:var(--primary-hover)}.dark-mode code,.dark-mode pre{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-color)}.dark-mode ::-webkit-scrollbar{width:12px}.dark-mode ::-webkit-scrollbar-track{background:var(--bg-secondary)}.dark-mode ::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:6px}.dark-mode ::-webkit-scrollbar-thumb:hover{background:var(--border-color-hover)}.dark-mode ::-moz-placeholder{color:var(--text-tertiary);opacity:.7}.dark-mode ::placeholder{color:var(--text-tertiary);opacity:.7}.dark-mode ::-moz-selection{background:#3b82f64d;color:var(--text-primary)}.dark-mode ::selection{background:#3b82f64d;color:var(--text-primary)}.dark-mode input:disabled,.dark-mode button:disabled,.dark-mode select:disabled,.dark-mode textarea:disabled{background:var(--bg-tertiary);color:var(--text-tertiary);opacity:.6;cursor:not-allowed}.dark-mode *::-webkit-scrollbar{width:12px;height:12px}.dark-mode *::-webkit-scrollbar-track{background:#1e293b}.dark-mode *::-webkit-scrollbar-thumb{background:#475569;border-radius:6px}.dark-mode *::-webkit-scrollbar-thumb:hover{background:#64748b}.dark-mode button{color:inherit}.dark-mode select option{background:#1e293b;color:#f1f5f9}.dark-mode [class*=card],.dark-mode [class*=container],.dark-mode [class*=wrapper],.dark-mode [class*=box]{border-color:var(--border-color)}
