.header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.header-container{max-width:1440px;margin:0 auto;padding:0 1.5rem;height:64px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.header-logo{display:flex;align-items:baseline;gap:.5rem;font-weight:700;background:none;border:none;cursor:pointer;padding:0;transition:opacity .2s}.header-logo:hover{opacity:.8}.logo-main{font-size:1.5rem;color:#1e40af}.logo-sub{font-size:.875rem;color:#64748b}.header-nav{display:flex;gap:.25rem;flex:1;justify-content:center}.nav-item{padding:.5rem .75rem;border:none;background:transparent;cursor:pointer;font-size:.875rem;font-weight:500;color:#475569;border-radius:6px;transition:all .2s;white-space:nowrap}.nav-item:hover{background:#f1f5f9;color:#1e40af}.nav-item.active{background:#eff6ff;color:#1e40af;font-weight:600}.header-actions{display:flex;align-items:center;gap:1rem}.user-dropdown{position:relative}.avatar-trigger{display:flex;align-items:center;gap:.5rem;padding:.375rem;border:none;background:transparent;cursor:pointer;border-radius:50px;transition:all .2s}.avatar-trigger:hover{background:#f1f5f9}.avatar-image{width:40px;height:40px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:2px solid #e2e8f0}.avatar-initials{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:600;color:#fff;text-transform:uppercase;border:2px solid rgba(255,255,255,.3)}.avatar-chevron{color:#64748b;transition:transform .2s}.avatar-chevron.open{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:calc(100% + .5rem);right:0;min-width:200px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 40px #00000026;z-index:200;overflow:hidden;animation:dropdownFadeIn .2s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.avatar-dropdown{padding:.5rem 0}.dropdown-header{padding:.75rem 1rem;display:flex;flex-direction:column;gap:.25rem}.dropdown-username{font-size:.9375rem;font-weight:600;color:#1e293b}.dropdown-role{font-size:.75rem;font-weight:500;padding:.125rem .5rem;border-radius:4px;display:inline-block;width:-moz-fit-content;width:fit-content}.dropdown-role.role-admin{background:#fef2f2;color:#dc2626}.dropdown-role.role-trainer{background:#eff6ff;color:#2563eb}.dropdown-role.role-user{background:#f0fdf4;color:#16a34a}.dropdown-divider{height:1px;background:#e5e7eb;margin:.375rem 0}.dropdown-item{width:100%;padding:.625rem 1rem;background:transparent;border:none;cursor:pointer;font-size:.875rem;font-weight:500;color:#334155;text-align:left;transition:background .2s;display:flex;align-items:center;gap:.75rem}.dropdown-item:hover{background:#f1f5f9}.dropdown-item svg{color:#64748b}.dropdown-logout{color:#dc2626}.dropdown-logout:hover{background:#fef2f2}.dropdown-logout svg{color:#dc2626}.btn-login{padding:.5rem 1rem;border:1px solid #e5e7eb;background:#fff;cursor:pointer;font-size:.875rem;font-weight:500;border-radius:6px;transition:all .2s}.btn-login:hover{background:#f8fafc;border-color:#cbd5e1}.btn-hamburger{padding:.5rem;border:none;background:transparent;cursor:pointer;font-size:1.5rem;color:#475569;line-height:1}.btn-hamburger:hover{color:#1e40af}.desktop-only{display:flex}@media(max-width:1024px){.nav-item{padding:.5rem;font-size:.8125rem}}@media(max-width:768px){.desktop-only{display:none!important}.avatar-chevron{display:none}.header-container{padding:0 1rem}}.home-panel{padding:0}.user-dashboard{padding:2rem;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-bottom:1px solid #bae6fd}.wave-divider{position:absolute;left:0;right:0;width:100%;overflow:hidden;line-height:0}.wave-divider svg{position:relative;display:block;width:calc(100% + 1.3px);height:60px}.wave-divider.bottom{bottom:0}.wave-divider.top{top:0;transform:rotate(180deg)}.hero{background:linear-gradient(135deg,#0f172a,#1e3a5f 40%,#1e40af);color:#fff;padding:5rem 2rem 7rem;text-align:center;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset: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='%23ffffff' fill-opacity='0.03'%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");opacity:.5;pointer-events:none}.hero-headline{max-width:900px;margin:0 auto 1.5rem;font-size:2.25rem;font-weight:700;line-height:1.3;position:relative;animation:fadeInUp .6s ease-out}.hero-subheadline{max-width:800px;margin:0 auto;font-size:1.125rem;line-height:1.7;color:#dbeafe;position:relative;animation:fadeInUp .6s ease-out .15s backwards}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stats-section{padding:5rem 2rem 4rem;background:linear-gradient(180deg,#f8fafc,#fff);position:relative}.stats-heading{text-align:center;font-size:1.75rem;font-weight:700;color:#0f172a;margin-bottom:3rem}.stats-grid{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.stat-item{text-align:center;padding:1.5rem;background:#fff;border-radius:16px;border:1px solid #e2e8f0;transition:all .3s ease;cursor:default}.stat-item:hover{transform:scale(1.05);box-shadow:0 12px 32px #0000001a;border-color:#10b981}.stat-value{font-size:3rem;font-weight:800;color:#10b981;line-height:1;margin-bottom:.5rem}.stat-label{font-size:.9375rem;color:#64748b;font-weight:500}.features-section{padding:5rem 2rem 6rem;background:linear-gradient(180deg,#fff,#f1f5f9);position:relative}.features-heading{text-align:center;font-size:2rem;font-weight:700;color:#0f172a;margin-bottom:3rem}.features-list{max-width:1000px;margin:0 auto;display:flex;flex-direction:column;gap:2.5rem}.feature-card{display:flex;gap:2rem;padding:2rem;border-radius:16px;transition:all .3s ease;border:1px solid rgba(0,0,0,.05);cursor:pointer;position:relative}.feature-card:nth-child(1){background:linear-gradient(135deg,#e8f5e9,#c8e6c9)}.feature-card:nth-child(2){background:linear-gradient(135deg,#e3f2fd,#bbdefb)}.feature-card:nth-child(3){background:linear-gradient(135deg,#fff3e0,#ffe0b2)}.feature-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000026}.feature-card:before{content:"";position:absolute;inset:0;border-radius:inherit;border:2px solid transparent;background:linear-gradient(135deg,#fff6,#fff0) border-box;-webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s ease;pointer-events:none}.feature-card:hover:before{opacity:1}.feature-icon{font-size:4rem;flex-shrink:0;width:100px;height:100px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;transition:all .3s ease}.feature-card:hover .feature-icon{transform:scale(1.05);box-shadow:0 8px 20px #0000001f}.feature-content{flex:1}.feature-title{font-size:1.5rem;font-weight:700;color:#0f172a;margin-bottom:.75rem}.feature-desc{font-size:1rem;color:#475569;line-height:1.7;margin-bottom:1rem}.feature-bullets{list-style:none;padding:0;margin:0 0 1.5rem;display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.feature-bullets li{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;color:#334155}.bullet-check{color:#10b981;font-weight:700;font-size:1rem}.feature-btn{padding:.75rem 1.5rem;background:linear-gradient(to right,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .2s}.feature-btn:hover{background:linear-gradient(to right,#059669,#047857);transform:translateY(-1px)}.steps-section{padding:6rem 2rem 5rem;background:#f8fafc;position:relative}.steps-heading{text-align:center;font-size:2rem;font-weight:700;color:#0f172a;margin-bottom:3rem}.steps-grid{max-width:900px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.step-item{text-align:center;padding:2rem;background:#fff;border-radius:16px;border:1px solid #e2e8f0;transition:all .3s ease}.step-item:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0000001a}.step-num{width:64px;height:64px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#3b82f6,#1e40af);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.75rem;font-weight:800;color:#fff;transition:all .3s ease}.step-item:hover .step-num{transform:scale(1.1);box-shadow:0 8px 20px #1e40af4d}.step-title{font-size:1.25rem;font-weight:700;color:#0f172a;margin-bottom:.5rem}.step-desc{font-size:.9375rem;color:#64748b;line-height:1.6}.testimonials-section{padding:5rem 2rem 6rem;background:#fff;position:relative}.testimonials-heading{text-align:center;font-size:2rem;font-weight:700;color:#0f172a;margin-bottom:3rem}.testimonials-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.testimonial-card{padding:2rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:16px;border:1px solid #e5e7eb;transition:all .3s ease;cursor:default;position:relative}.testimonial-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000001a;border-color:#10b981}.testimonial-card:before{content:'"';position:absolute;top:1rem;right:1.5rem;font-size:4rem;font-family:Georgia,serif;color:#10b981;opacity:.15;line-height:1;transition:all .3s ease}.testimonial-card:hover:before{opacity:.3;transform:scale(1.1)}.testimonial-quote{font-size:1rem;color:#334155;line-height:1.7;font-style:italic;margin-bottom:1.5rem}.testimonial-author{border-top:1px solid #e5e7eb;padding-top:1rem}.author-name{font-size:1rem;font-weight:700;color:#0f172a;margin-bottom:.25rem}.author-role{font-size:.875rem;color:#64748b}.cta-section{padding:6rem 2rem 5rem;background:linear-gradient(135deg,#10b981,#059669,#047857);text-align:center;position:relative;overflow:hidden}.cta-section:before{content:"";position:absolute;inset:0;background: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='0.05' fill-rule='evenodd'/%3E%3C/svg%3E");pointer-events:none}.cta-heading{font-size:2.25rem;font-weight:700;color:#fff;margin-bottom:.75rem;position:relative;animation:fadeInUp .6s ease-out}.cta-subheading{font-size:1.125rem;color:#ffffffe6;margin-bottom:2rem;position:relative;animation:fadeInUp .6s ease-out .1s backwards}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;position:relative;animation:fadeInUp .6s ease-out .2s backwards}.cta-btn-primary{padding:1rem 2rem;background:#fff;color:#059669;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #0000001a}.cta-btn-primary:hover{background:#f0fdf4;transform:translateY(-3px) scale(1.02);box-shadow:0 8px 25px #00000026}.cta-btn-secondary{padding:1rem 2rem;background:transparent;color:#fff;border:2px solid rgba(255,255,255,.8);border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease}.cta-btn-secondary:hover{background:#ffffff26;border-color:#fff;transform:translateY(-3px) scale(1.02)}.faq-section{padding:5rem 2rem;background:#f8fafc}.faq-heading{text-align:center;font-size:2rem;font-weight:700;color:#0f172a;margin-bottom:2rem}.faq-search-wrapper{max-width:500px;margin:0 auto 1.5rem;position:relative}.faq-search{width:100%;padding:.875rem 2.5rem .875rem 1.25rem;border:1px solid #e2e8f0;border-radius:10px;font-size:1rem;background:#fff;transition:all .2s}.faq-search:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.faq-search::-moz-placeholder{color:#94a3b8}.faq-search::placeholder{color:#94a3b8}.faq-search-clear{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);width:24px;height:24px;border:none;background:#e2e8f0;border-radius:50%;font-size:1.25rem;line-height:1;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.faq-search-clear:hover{background:#cbd5e1;color:#334155}.faq-categories{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;max-width:800px;margin:0 auto 2rem}.faq-category-btn{padding:.5rem 1rem;border:1px solid #e2e8f0;border-radius:9999px;background:#fff;font-size:.875rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s}.faq-category-btn:hover{border-color:#10b981;color:#10b981}.faq-category-btn.active{background:#10b981;border-color:#10b981;color:#fff}.faq-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:1rem}.faq-empty{text-align:center;padding:3rem 2rem;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.faq-empty p{color:#64748b;margin-bottom:1rem}.faq-empty button{padding:.5rem 1rem;background:#10b981;color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.faq-empty button:hover{background:#059669}.faq-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.faq-question{width:100%;padding:1.25rem 1.5rem;display:flex;justify-content:space-between;align-items:center;background:#fff;border:none;cursor:pointer;font-size:1rem;font-weight:600;color:#0f172a;text-align:left;transition:background .2s}.faq-question:hover{background:#f8fafc}.faq-question.open{color:#10b981}.faq-toggle{font-size:1.5rem;font-weight:400;color:#64748b;flex-shrink:0;margin-left:1rem}.faq-answer{padding:0 1.5rem 1.25rem;font-size:.9375rem;color:#475569;line-height:1.7;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}.testimonials-grid{grid-template-columns:1fr;max-width:600px}.feature-bullets,.usage-grid,.upgrade-benefits{grid-template-columns:1fr}}@media(max-width:768px){.hero{padding:3rem 1.5rem}.hero-headline{font-size:1.5rem}.hero-subheadline{font-size:1rem}.stats-section,.features-section,.steps-section,.testimonials-section,.cta-section,.faq-section{padding:3rem 1.5rem}.stats-heading,.features-heading,.steps-heading,.testimonials-heading,.faq-heading{font-size:1.5rem;margin-bottom:2rem}.stat-value{font-size:2.25rem}.feature-card{flex-direction:column;align-items:center;text-align:center}.feature-icon{width:80px;height:80px;font-size:3rem}.feature-bullets,.feature-bullets li{justify-content:center}.steps-grid{grid-template-columns:1fr;gap:1.5rem}.step-item{padding:1.5rem}.step-num{width:56px;height:56px;font-size:1.5rem}.cta-heading{font-size:1.5rem}.cta-subheading{font-size:1rem}.cta-buttons{flex-direction:column;align-items:center}.cta-btn-primary,.cta-btn-secondary{width:100%;max-width:280px}.user-dashboard{padding:1.5rem}.dashboard-header{flex-direction:column;align-items:stretch}.welcome-title{font-size:1.375rem}.upgrade-btn{width:100%;text-align:center}.dashboard-stats{padding:1rem}.usage-card{padding:.875rem}.usage-icon{font-size:1.5rem}.quick-actions-grid{grid-template-columns:repeat(2,1fr)}.upgrade-cta{flex-direction:column;gap:1.5rem;padding:1.5rem}.upgrade-action{width:100%;min-width:auto}.upgrade-btn-large{padding:1rem 1.5rem}}.dashboard-panel{padding:2rem;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);min-height:100%}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:1rem;flex-wrap:wrap}.welcome-section{flex:1}.welcome-title{font-size:1.75rem;font-weight:700;color:#0f172a;margin:0 0 .5rem}.welcome-subtitle{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:0}.tier-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.tier-badge.free{background:#fef3c7;color:#92400e}.tier-badge.premium{background:linear-gradient(to right,#10b981,#059669);color:#fff}.role-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.role-badge.admin{background:linear-gradient(to right,#8b5cf6,#7c3aed);color:#fff}.upgrade-btn{padding:.75rem 1.5rem;background:linear-gradient(to right,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .2s;white-space:nowrap}.upgrade-btn:hover{background:linear-gradient(to right,#059669,#047857);transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.dashboard-stats{background:#fff;border-radius:16px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000000d}.dashboard-stats-title{font-size:1rem;font-weight:600;color:#64748b;margin:0 0 1rem;text-transform:uppercase;letter-spacing:.05em}.usage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.usage-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0}.usage-icon{font-size:2rem;flex-shrink:0}.usage-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.usage-label{font-size:.875rem;font-weight:600;color:#0f172a}.usage-value{font-size:.8125rem;color:#64748b;display:flex;align-items:center;gap:.5rem}.usage-remaining{font-size:.75rem;color:#94a3b8}.usage-value .unlimited{color:#10b981;font-weight:600}.usage-action{padding:.5rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.usage-action:hover{background:#2563eb}.usage-reset-info{text-align:center;margin-top:1rem;font-size:.8125rem;color:#64748b;padding-top:1rem;border-top:1px solid #e2e8f0}.quick-actions{background:#fff;border-radius:16px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000000d}.quick-actions-title{font-size:1rem;font-weight:600;color:#64748b;margin:0 0 1rem;text-transform:uppercase;letter-spacing:.05em}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.quick-action-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .2s}.quick-action-btn:hover{background:#f1f5f9;border-color:#3b82f6;transform:translateY(-2px)}.quick-action-btn.admin-btn{background:#faf5ff;border-color:#ddd6fe}.quick-action-btn.admin-btn:hover{background:#f3e8ff;border-color:#8b5cf6}.qa-label{font-size:.8125rem;font-weight:600;color:#334155;text-align:center}.upgrade-cta{display:flex;gap:2rem;padding:2rem;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #a7f3d0;border-radius:16px}.upgrade-content{flex:1}.upgrade-content h3{font-size:1.375rem;font-weight:700;color:#0f172a;margin:0 0 .5rem}.upgrade-content p{font-size:.9375rem;color:#475569;margin:0 0 1rem;line-height:1.6}.upgrade-benefits{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.upgrade-benefits li{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#334155}.upgrade-benefits li:before{content:"✓";color:#10b981;font-weight:700}.upgrade-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;min-width:200px}.upgrade-price{text-align:center}.price-amount{display:block;font-size:1.75rem;font-weight:800;color:#10b981}.price-period{font-size:.9375rem;color:#64748b}.upgrade-btn-large{width:100%;padding:.875rem 1.5rem;background:linear-gradient(to right,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .2s}.upgrade-btn-large:hover{background:linear-gradient(to right,#059669,#047857);transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.pricing-link{background:none;border:none;color:#64748b;font-size:.875rem;cursor:pointer;text-decoration:underline;transition:color .2s}.pricing-link:hover{color:#10b981}@media(max-width:1024px){.usage-grid,.upgrade-benefits{grid-template-columns:1fr}}@media(max-width:768px){.dashboard-panel{padding:1.5rem}.dashboard-header{flex-direction:column;align-items:stretch}.welcome-title{font-size:1.375rem}.upgrade-btn{width:100%;text-align:center}.dashboard-stats{padding:1rem}.usage-card{padding:.875rem}.usage-icon{font-size:1.5rem}.quick-actions-grid{grid-template-columns:repeat(2,1fr)}.upgrade-cta{flex-direction:column;gap:1.5rem;padding:1.5rem}.upgrade-action{width:100%;min-width:auto}.upgrade-btn-large{padding:1rem 1.5rem}}.usage-limit-banner{padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.875rem}.usage-limit-banner.info{background:#f1f5f9;border:1px solid #e2e8f0;color:#64748b}.usage-limit-banner.warning{background:#fef3c7;border:1px solid #fcd34d;color:#92400e}.usage-limit-banner.error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.usage-limit-content{display:flex;align-items:center;gap:.5rem;flex:1}.usage-limit-icon{font-size:1.125rem;flex-shrink:0}.usage-limit-text{line-height:1.4}.usage-limit-text strong{font-weight:600}.usage-limit-cta{flex-shrink:0}.usage-limit-cta button{padding:.5rem 1rem;background:linear-gradient(to right,#3b82f6,#1e40af);color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.usage-limit-cta button:hover{background:linear-gradient(to right,#2563eb,#1e3a8a);transform:translateY(-1px)}.usage-limit-compact{font-size:.8125rem;color:#64748b;display:flex;align-items:center;gap:.375rem}.usage-limit-compact .usage-count{font-weight:600;color:#475569}.usage-limit-compact.low .usage-count{color:#f59e0b}.usage-limit-compact.empty .usage-count{color:#dc2626}.usage-progress-container{margin-bottom:1rem}.usage-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.8125rem;color:#64748b}.usage-progress-bar{height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden}.usage-progress-fill{height:100%;background:linear-gradient(to right,#10b981,#059669);border-radius:3px;transition:width .3s ease}.usage-progress-fill.warning{background:linear-gradient(to right,#f59e0b,#d97706)}.usage-progress-fill.danger{background:linear-gradient(to right,#ef4444,#dc2626)}.usage-blocked-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.usage-blocked-modal{background:#fff;border-radius:16px;padding:2rem;max-width:400px;width:100%;text-align:center}.usage-blocked-icon{font-size:3rem;margin-bottom:1rem}.usage-blocked-modal h3{font-size:1.25rem;font-weight:700;color:#0f172a;margin:0 0 .5rem}.usage-blocked-modal p{font-size:.9375rem;color:#64748b;margin:0 0 1.5rem;line-height:1.6}.usage-blocked-timer{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f1f5f9;border-radius:8px;font-size:.875rem;color:#475569;margin-bottom:1.5rem}.usage-blocked-actions{display:flex;flex-direction:column;gap:.75rem}.usage-blocked-actions .btn-primary{padding:.875rem 1.5rem;background:linear-gradient(to right,#3b82f6,#1e40af);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.usage-blocked-actions .btn-primary:hover{background:linear-gradient(to right,#2563eb,#1e3a8a)}.usage-blocked-actions .btn-secondary{padding:.75rem 1rem;background:transparent;color:#64748b;border:none;font-size:.875rem;cursor:pointer;text-decoration:underline}.usage-blocked-actions .btn-secondary:hover{color:#475569}@media(max-width:640px){.usage-limit-banner{flex-direction:column;text-align:center}.usage-limit-content{flex-direction:column}.usage-limit-cta,.usage-limit-cta button{width:100%}}.payment-modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.payment-modal{background:#fff;border-radius:1rem;width:100%;max-width:480px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #00000026}.payment-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.payment-modal-title{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:1.125rem;color:#111827}.payment-modal-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;color:#6b7280;border-radius:.5rem;cursor:pointer;transition:all .2s}.payment-modal-close:hover{background:#f3f4f6;color:#111827}.payment-steps{display:flex;justify-content:space-between;padding:1rem 1.5rem;background:#f9fafb;border-bottom:1px solid #e5e7eb}.payment-step{display:flex;flex-direction:column;align-items:center;gap:.375rem;flex:1;opacity:.5}.payment-step.active,.payment-step.completed{opacity:1}.payment-step-number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#e5e7eb;color:#6b7280;font-size:.75rem;font-weight:600}.payment-step.active .payment-step-number,.payment-step.completed .payment-step-number{background:#10b981;color:#fff}.payment-step-label{font-size:.75rem;color:#6b7280}.payment-step.active .payment-step-label{color:#10b981;font-weight:500}.payment-modal-content{flex:1;overflow-y:auto;padding:1.5rem}.payment-section-title{font-size:1rem;font-weight:600;color:#111827;margin:0 0 1rem}.payment-plans{display:flex;gap:1rem;margin-bottom:1.5rem}.payment-plan-card{flex:1;position:relative;padding:1.25rem;border:2px solid #e5e7eb;border-radius:.75rem;background:#fff;cursor:pointer;transition:all .2s;text-align:left}.payment-plan-card:hover{border-color:#10b981}.payment-plan-card.selected{border-color:#10b981;background:#ecfdf5}.plan-badge{position:absolute;top:-10px;right:12px;display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.625rem;font-weight:600;border-radius:.25rem;text-transform:uppercase}.plan-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.plan-name{font-weight:600;color:#111827}.plan-discount{font-size:.625rem;font-weight:600;color:#059669;background:#d1fae5;padding:.125rem .375rem;border-radius:.25rem}.plan-price{margin-bottom:.25rem}.price-amount{font-size:1.25rem;font-weight:700;color:#111827}.price-period{font-size:.75rem;color:#6b7280}.plan-original-price{font-size:.75rem;margin-bottom:.25rem}.strikethrough{text-decoration:line-through;color:#9ca3af}.plan-per-month{font-size:.75rem;color:#6b7280}.plan-check{position:absolute;top:1rem;right:1rem;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#10b981;color:#fff;border-radius:50%;opacity:0}.payment-plan-card.selected .plan-check{opacity:1}.plan-features{background:#f9fafb;border-radius:.75rem;padding:1rem}.plan-features h4{font-size:.875rem;font-weight:600;color:#374151;margin:0 0 .75rem}.plan-features ul{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}.plan-features li{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:#4b5563}.voucher-toggle-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem;border:2px dashed #d1d5db;background:transparent;border-radius:.5rem;color:#6b7280;font-size:.875rem;cursor:pointer;transition:all .2s;margin-bottom:1.5rem}.voucher-toggle-btn:hover{border-color:#10b981;color:#10b981}.voucher-input-group{display:flex;gap:.5rem;margin-bottom:1rem}.voucher-input-group input{flex:1;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.voucher-input-group input:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.voucher-input-group input.error{border-color:#ef4444}.voucher-apply-btn{padding:.75rem 1.25rem;background:#10b981;color:#fff;font-weight:500;border:none;border-radius:.5rem;cursor:pointer;transition:all .2s}.voucher-apply-btn:hover:not(:disabled){background:#059669}.voucher-apply-btn:disabled{opacity:.6;cursor:not-allowed}.voucher-error{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#fef2f2;border-radius:.5rem;color:#dc2626;font-size:.875rem;margin-bottom:1rem}.voucher-applied{display:flex;align-items:center;justify-content:space-between;padding:.875rem;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:.5rem;margin-bottom:1.5rem}.voucher-applied-info{display:flex;align-items:center;gap:.75rem}.voucher-applied-info>div{display:flex;flex-direction:column}.voucher-code{font-weight:600;color:#059669;font-size:.875rem}.voucher-discount-text{font-size:.75rem;color:#6b7280}.voucher-remove-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:#6b7280;border-radius:.375rem;cursor:pointer}.voucher-remove-btn:hover{background:#fee2e2;color:#dc2626}.payment-summary{background:#f9fafb;border-radius:.75rem;padding:1rem}.summary-row{display:flex;justify-content:space-between;padding:.5rem 0;font-size:.875rem;color:#4b5563}.summary-row.discount{color:#059669}.summary-row.total{border-top:1px solid #e5e7eb;margin-top:.5rem;padding-top:.75rem;font-weight:600;color:#111827;font-size:1rem}.transfer-instruction{font-size:.875rem;color:#6b7280;margin:0 0 1rem}.bank-accounts{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.bank-card{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem}.bank-info{display:flex;align-items:center;gap:.75rem}.bank-info>div{display:flex;flex-direction:column}.bank-name{font-weight:600;color:#111827;font-size:.875rem}.bank-holder{font-size:.75rem;color:#6b7280}.bank-account{display:flex;align-items:center;gap:.5rem}.account-number{font-family:monospace;font-size:.875rem;font-weight:600;color:#111827}.copy-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #e5e7eb;background:#fff;border-radius:.375rem;color:#6b7280;cursor:pointer;transition:all .2s}.copy-btn:hover{background:#f3f4f6;color:#10b981}.transfer-amount{display:flex;flex-direction:column;align-items:center;padding:1.5rem;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-radius:.75rem;margin-bottom:1rem}.amount-label{font-size:.75rem;color:#059669;margin-bottom:.25rem}.amount-value{font-size:1.5rem;font-weight:700;color:#059669}.transfer-notice{display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.75rem;color:#6b7280}.upload-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:2rem;border:2px dashed #d1d5db;background:#f9fafb;border-radius:.75rem;color:#6b7280;cursor:pointer;transition:all .2s;margin-bottom:1rem}.upload-btn:hover{border-color:#10b981;background:#ecfdf5;color:#10b981}.upload-btn small{font-size:.75rem;color:#9ca3af}.upload-preview{position:relative;margin-bottom:1rem}.upload-preview img{width:100%;max-height:200px;-o-object-fit:contain;object-fit:contain;border-radius:.75rem;border:1px solid #e5e7eb}.change-file-btn{position:absolute;bottom:.5rem;right:.5rem;padding:.5rem .75rem;background:#fff;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.75rem;color:#6b7280;cursor:pointer}.change-file-btn:hover{background:#f3f4f6}.upload-error{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#fef2f2;border-radius:.5rem;color:#dc2626;font-size:.875rem;margin-bottom:1rem}.confirm-info{display:flex;align-items:flex-start;gap:.5rem;padding:.875rem;background:#fef3c7;border-radius:.5rem;color:#92400e;font-size:.8rem}.payment-review-step{padding:0}.review-card{background:#f9fafb;border-radius:.75rem;padding:1rem;margin-bottom:1rem;border:1px solid #e5e7eb}.review-section{padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid #e5e7eb}.review-section:last-child{padding-bottom:0;margin-bottom:0;border-bottom:none}.review-section h4{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .75rem}.review-row{display:flex;justify-content:space-between;align-items:center;padding:.375rem 0}.review-label{font-size:.875rem;color:#6b7280}.review-value{font-size:.875rem;font-weight:500;color:#111827}.review-row.discount .review-value{color:#059669}.review-row.total{margin-top:.5rem;padding-top:.75rem;border-top:1px dashed #d1d5db}.review-row.total .review-label,.review-row.total .review-value{font-size:1rem;font-weight:600}.review-row.total .review-value{color:#059669}.review-agreement{display:flex;align-items:flex-start;gap:.5rem;padding:.875rem;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:.5rem;font-size:.8rem;color:#065f46}.review-agreement svg{flex-shrink:0;margin-top:.125rem}.payment-upload-step{padding:0}.payment-success-step{text-align:center;padding:2rem 0}.success-icon{margin-bottom:1.5rem}.payment-success-step h3{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 .75rem}.payment-success-step p{font-size:.875rem;color:#6b7280;margin:0 0 1rem;line-height:1.5}.transaction-id{display:inline-block;padding:.5rem 1rem;background:#f3f4f6;border-radius:.5rem;font-size:.875rem;color:#374151;margin-bottom:1rem}.success-note{font-size:.75rem;color:#9ca3af}.payment-error{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;color:#dc2626;font-size:.875rem;margin-top:1rem}.payment-modal-footer{display:flex;justify-content:space-between;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.payment-back-btn{display:flex;align-items:center;gap:.25rem;padding:.75rem 1rem;border:1px solid #e5e7eb;background:#fff;border-radius:.5rem;color:#6b7280;font-size:.875rem;cursor:pointer;transition:all .2s}.payment-back-btn:hover:not(:disabled){background:#f3f4f6}.payment-next-btn,.payment-done-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-weight:500;border:none;border-radius:.5rem;font-size:.875rem;cursor:pointer;transition:all .2s;margin-left:auto}.payment-next-btn:hover:not(:disabled),.payment-done-btn:hover{background:linear-gradient(135deg,#059669,#047857)}.payment-next-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:480px){.payment-plans{flex-direction:column}.payment-step-label{display:none}.bank-card{flex-direction:column;align-items:flex-start;gap:.75rem}.bank-account{width:100%;justify-content:space-between}}.hidden{display:none!important}.auth-required-modal{max-width:480px;text-align:center}.modal-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;color:#fff}.modal-title{margin:0 0 1.5rem;font-size:1.5rem;font-weight:700;color:#1e293b}.modal-benefits{margin-bottom:2rem}.benefits-intro{margin:0 0 1rem;font-size:.875rem;color:#64748b}.benefits-list{display:flex;flex-direction:column;gap:.75rem;text-align:left}.benefit-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f8fafc;border-radius:8px;font-size:.875rem;color:#1e293b}.benefit-icon{flex-shrink:0;color:#10b981}.modal-actions{display:flex;flex-direction:column;gap:.75rem}.btn-outline{padding:.75rem 1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#64748b;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-outline:hover{background:#f8fafc;border-color:#cbd5e1;color:#1e293b}@media(max-width:640px){.auth-required-modal{max-width:90vw}.modal-title{font-size:1.25rem}}.quota-exceeded-modal{max-width:480px;text-align:center}.modal-icon.error{display:flex;align-items:center;justify-content:center;width:80px;height:80px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:50%;color:#fff}.reset-info{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;margin-bottom:1.5rem;background:#fef3c7;border-radius:8px;color:#92400e;font-size:.875rem;font-weight:500}.benefit-item.premium .benefit-icon{color:#f59e0b}.btn-primary.premium{display:flex;align-items:center;justify-content:center;gap:.5rem;background:linear-gradient(135deg,#f59e0b,#d97706)}.btn-primary.premium:hover{background:linear-gradient(135deg,#d97706,#b45309)}.btn-text{padding:.5rem 1rem;background:transparent;border:none;color:#64748b;font-size:.875rem;font-weight:500;cursor:pointer;transition:color .2s}.btn-text:hover{color:#1e293b}@media(max-width:640px){.quota-exceeded-modal{max-width:90vw}.modal-title{font-size:1.25rem}.reset-info{font-size:.8125rem}}.chemical-panel{display:flex;flex-direction:column;height:100%;background:#f8fafc}.chemical-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.chemical-header-content{display:flex;align-items:center;gap:1rem}.chemical-header-icon{width:48px;height:48px;background:#fff3;border-radius:12px;display:flex;align-items:center;justify-content:center}.chemical-header h2{margin:0;font-size:1.25rem;font-weight:700}.chemical-header p{margin:.25rem 0 0;font-size:.875rem;opacity:.9}.chemical-toolbar{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;padding:12px 20px!important;background:#fff;border-bottom:1px solid #e2e8f0;flex-wrap:nowrap!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}.chemical-toolbar.horizontal{flex-wrap:nowrap!important;overflow-x:auto!important}.chemical-search{position:relative;min-width:180px;max-width:280px;flex-shrink:0}.chemical-search svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8}.chemical-search input{width:100%;padding:10px 12px 10px 40px;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;background:#f8fafc;transition:all .2s}.chemical-search input:focus{outline:none;border-color:#6366f1;background:#fff;box-shadow:0 0 0 3px #6366f11a}.chemical-filter-select{padding:10px 16px;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;background:#fff;cursor:pointer;min-width:140px;flex-shrink:0}.chemical-filter-select:focus{outline:none;border-color:#6366f1}.view-toggle{display:flex;background:#f1f5f9;border-radius:8px;padding:4px;flex-shrink:0}.view-toggle button{padding:8px 12px;border:none;background:transparent;color:#64748b;border-radius:6px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.view-toggle button:hover{color:#475569}.view-toggle button.active{background:#fff;color:#6366f1;box-shadow:0 1px 3px #0000001a}.btn-group-manage{padding:10px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-group-manage:hover{background:#e2e8f0;color:#475569}.btn-add-chemical{display:flex;align-items:center;gap:6px;padding:10px 16px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0;margin-left:auto}.btn-add-chemical:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.chemical-content{flex:1;overflow-y:auto;padding:1.5rem}.chemical-loading,.chemical-error,.chemical-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:1rem;color:#64748b}.chemical-loading .spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#6366f1;border-radius:50%;animation:spin 1s linear infinite}.chemical-error{color:#ef4444}.chemical-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:16px!important}@media(max-width:1200px){.chemical-grid{grid-template-columns:repeat(3,1fr)!important}}@media(max-width:900px){.chemical-grid{grid-template-columns:repeat(2,1fr)!important}}@media(max-width:500px){.chemical-grid{grid-template-columns:1fr!important}}.chemical-card{background:#fff!important;border-radius:12px!important;overflow:hidden!important;box-shadow:0 2px 8px #00000014!important;border:1px solid #e2e8f0!important;cursor:pointer!important;transition:all .3s ease!important;width:100%!important;position:relative}.chemical-card:hover{transform:translateY(-4px)!important;box-shadow:0 8px 24px #00000026!important;border-color:#6366f1!important}.chemical-card-header{height:8px!important;min-height:8px!important;max-height:8px!important;padding:0!important;position:relative!important;display:block!important}.badge-system-card{position:absolute;top:12px;left:12px;padding:2px 6px;background:#ffffffe6;color:#6366f1;font-size:9px;font-weight:700;border-radius:4px;text-transform:uppercase;letter-spacing:.5px;z-index:10}.btn-delete-card,.btn-edit-card{position:absolute!important;padding:6px!important;background:#fff!important;border:none!important;border-radius:6px!important;cursor:pointer!important;transition:all .2s!important;opacity:0!important;box-shadow:0 2px 8px #00000026!important;z-index:10!important}.btn-delete-card{top:12px!important;right:12px!important;color:#ef4444!important}.btn-edit-card{top:12px!important;right:44px!important;color:#6366f1!important}.chemical-card:hover .btn-delete-card,.chemical-card:hover .btn-edit-card{opacity:1!important}.btn-delete-card:hover{background:#ef4444!important;color:#fff!important}.btn-edit-card:hover{background:#6366f1!important;color:#fff!important}.chemical-card-body{padding:14px 16px!important}.chemical-card-name{margin:0 0 4px!important;font-size:14px!important;font-weight:600!important;color:#1e293b!important;line-height:1.3!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.chemical-card-code{margin:0 0 10px!important;font-size:11px!important;color:#94a3b8!important;font-family:JetBrains Mono,monospace!important}.chemical-card-stats{display:flex!important;justify-content:space-between!important;gap:8px!important;margin:10px 0!important;font-size:12px!important;color:#64748b!important}.chemical-card-stats .stat{flex:1!important;min-width:0!important}.chemical-card-stats .stat-label{display:none!important}.chemical-card-stats .stat-value{display:block!important;font-size:12px!important;font-weight:500!important;color:#475569!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.ppn-indicator{display:inline-block;margin-left:4px;padding:1px 4px;background:#dbeafe;color:#2563eb;font-size:9px;font-weight:600;border-radius:3px}.chemical-card-kemasan{display:flex;align-items:center;gap:6px;margin-top:8px;padding-top:8px;border-top:1px dashed #e2e8f0;font-size:11px;color:#64748b}.chemical-card-kemasan svg{color:#94a3b8}.kemasan-price{margin-left:auto;color:#475569;font-weight:500}.badge-group{display:inline-block;padding:4px 10px;font-size:.75rem;font-weight:500;border-radius:12px;color:#fff}.badge-safety{display:inline-block!important;padding:3px 8px!important;font-size:9px!important;font-weight:700!important;border-radius:4px!important;text-transform:uppercase!important;letter-spacing:.5px!important}.badge-system{display:inline-block;margin-left:8px;padding:2px 6px;background:#ede9fe;color:#7c3aed;font-size:10px;font-weight:600;border-radius:4px;vertical-align:middle}.badge-ppn{display:inline-block;margin-left:6px;padding:2px 5px;background:#dbeafe;color:#2563eb;font-size:9px;font-weight:600;border-radius:3px}.chemical-table-wrapper{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden}.chemical-table{width:100%;border-collapse:collapse;font-size:.875rem}.chemical-table th{padding:12px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0;text-align:left;font-weight:600;color:#475569;white-space:nowrap}.chemical-table th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chemical-table th.sortable:hover{background:#f1f5f9}.chemical-table td{padding:12px 16px;border-bottom:1px solid #f1f5f9;color:#334155}.chemical-table tr:hover{background:#f8fafc;cursor:pointer}.chemical-table tr:last-child td{border-bottom:none}.cell-name{font-weight:600;color:#1e293b}.cell-code{font-family:JetBrains Mono,monospace;color:#64748b}.btn-delete-row{padding:6px 8px;background:transparent;border:none;color:#94a3b8;cursor:pointer;border-radius:4px;transition:all .2s}.modal-content{background:#fff;border-radius:16px;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0003}.modal-header-gradient{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;color:#fff}.modal-header-content{display:flex;align-items:center;gap:12px}.modal-header-gradient h3{margin:0;font-size:1.125rem;font-weight:600}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;padding:1.5rem}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:.8125rem;font-weight:500;color:#475569}.form-group input,.form-group select{padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;transition:all .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-group input:disabled,.form-group select:disabled{background:#f8fafc;color:#64748b;cursor:not-allowed}.form-group input.input-primary{border-color:#6366f1;background:#faf5ff}.form-section-header{display:flex;justify-content:space-between;align-items:center;padding-top:.5rem;margin-top:.5rem;border-top:1px solid #e2e8f0}.form-section-header h4{margin:0;font-size:.875rem;font-weight:600;color:#334155}.price-mode-toggle{display:flex;background:#f1f5f9;border-radius:6px;padding:2px}.price-mode-toggle button{padding:4px 10px;border:none;background:transparent;color:#64748b;font-size:12px;font-weight:500;border-radius:4px;cursor:pointer;transition:all .2s}.price-mode-toggle button.active{background:#fff;color:#6366f1;box-shadow:0 1px 2px #0000001a}.ppn-checkbox-group{margin-top:8px}.checkbox-wrapper{display:flex;align-items:center;gap:12px;cursor:pointer;padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;transition:all .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.checkbox-wrapper:hover:not(.disabled){background:#f1f5f9;border-color:#6366f1}.checkbox-wrapper.disabled{cursor:not-allowed;opacity:.6}.checkbox-box{width:22px;height:22px;border:2px solid #cbd5e1;border-radius:5px;display:flex;align-items:center;justify-content:center;transition:all .2s;background:#fff;flex-shrink:0}.checkbox-box.checked{background:#6366f1;border-color:#6366f1;color:#fff}.checkbox-text{font-size:.875rem;font-weight:500;color:#334155}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:400!important}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-custom{width:20px;height:20px;border:2px solid #e2e8f0;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s;background:#fff}.checkbox-label input[type=checkbox]:checked+.checkbox-custom{background:#6366f1;border-color:#6366f1;color:#fff}.help-text{margin:4px 0 0;font-size:12px;color:#94a3b8}.chemical-form-modal{max-width:600px}.group-modal{max-width:500px}.group-modal-body{padding:1.5rem}.group-section{margin-bottom:1.5rem}.group-section:last-child{margin-bottom:0}.group-section h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:#334155}.group-list{display:flex;flex-direction:column;gap:8px}.group-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.group-item.readonly{opacity:.8}.group-color{width:20px;height:20px;border-radius:4px;flex-shrink:0}.group-name{flex:1;font-size:.875rem;color:#334155}.group-name-input{flex:1;padding:6px 10px;border:1px solid #6366f1;border-radius:4px;font-size:.875rem}.badge-readonly{padding:2px 8px;background:#e2e8f0;color:#64748b;font-size:10px;font-weight:600;border-radius:4px}.no-groups{color:#94a3b8;font-size:.875rem;font-style:italic}.btn-edit-group,.btn-delete-group,.btn-save-group,.btn-cancel-edit{padding:6px;background:transparent;border:none;border-radius:4px;cursor:pointer;transition:all .2s}.btn-edit-group{color:#64748b}.btn-edit-group:hover{background:#e2e8f0;color:#6366f1}.btn-delete-group{color:#94a3b8}.btn-delete-group:hover{background:#fef2f2;color:#ef4444}.btn-save-group{color:#22c55e;background:#f0fdf4}.btn-save-group:hover{background:#22c55e;color:#fff}.btn-cancel-edit{color:#64748b}.btn-cancel-edit:hover{background:#e2e8f0}.add-section{padding-top:1rem;border-top:1px solid #e2e8f0}.add-group-form{display:flex;flex-direction:column;gap:12px}.color-picker,.color-picker-inline{display:flex;flex-wrap:wrap;gap:6px}.color-option{width:24px;height:24px;border-radius:4px;border:2px solid transparent;cursor:pointer;transition:all .2s}.color-option:hover{transform:scale(1.1)}.color-option.selected{border-color:#1e293b;box-shadow:0 0 0 2px #fff,0 0 0 4px currentColor}.add-group-row{display:flex;gap:8px}.new-group-input{flex:1;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem}.new-group-input:focus{outline:none;border-color:#6366f1}.btn-add-group{display:flex;align-items:center;gap:6px;padding:10px 16px;background:#6366f1;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-add-group:hover:not(:disabled){background:#4f46e5}.btn-add-group:disabled{opacity:.5;cursor:not-allowed}.delete-confirm-overlay{position:absolute;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;border-radius:inherit;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.delete-confirm-dialog{background:#fff;padding:32px;border-radius:16px;text-align:center;max-width:400px;width:90%;box-shadow:0 20px 60px #0000004d;animation:scaleIn .2s ease}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.delete-confirm-icon{margin-bottom:16px}.delete-confirm-dialog h3{font-size:20px;color:#1e293b;margin:0 0 12px}.delete-confirm-dialog p{color:#64748b;margin:0 0 8px;font-size:14px}.delete-warning{color:#dc2626!important;font-weight:600;margin:16px 0 24px!important}.delete-confirm-buttons{display:flex;gap:12px;justify-content:center}.btn-cancel-delete{padding:12px 24px;background:#e2e8f0;color:#475569;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-cancel-delete:hover{background:#cbd5e1}.btn-confirm-delete{padding:12px 24px;background:#dc2626;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.modal-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid #e2e8f0;background:#f8fafc}.modal-footer-right{display:flex;gap:12px;margin-left:auto}.btn-delete-modal{display:flex;align-items:center;gap:6px;padding:10px 20px;background:#fee2e2;color:#dc2626;border:1px solid #fecaca;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-delete-modal:hover{background:#fecaca;border-color:#f87171}@media(max-width:768px){.chemical-toolbar,.chemical-toolbar.horizontal{flex-wrap:nowrap!important;overflow-x:auto!important;padding:10px 12px!important;gap:8px!important}.chemical-search{min-width:150px;max-width:200px}.chemical-filter-select{min-width:120px;padding:8px 12px;font-size:13px}.form-grid{grid-template-columns:1fr}.form-section-header{flex-direction:column;align-items:flex-start;gap:8px}}@media(max-width:640px){.chemical-header{padding:1rem}.chemical-toolbar{padding:8px 10px!important}.chemical-content{padding:1rem}.btn-add-chemical{padding:8px 12px;font-size:12px}.view-toggle button{padding:6px 10px}.btn-group-manage{padding:8px}}.price-summary{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:12px;padding:20px;margin:0 24px 20px}.price-summary h4{font-size:16px;font-weight:600;color:#0369a1;margin:0 0 16px}.price-summary-grid{display:flex;flex-direction:column;gap:12px}.price-summary-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.price-summary-item.highlight{background:#fff;padding:12px 16px;border-radius:8px;border:1px solid #0ea5e9}.price-label{font-size:14px;color:#64748b}.price-value{font-size:14px;font-weight:500;color:#1e293b}.price-value.bold{font-size:16px;font-weight:700;color:#0369a1}.price-value.success{color:#16a34a;font-weight:600}.price-summary-divider{height:1px;background:#bae6fd;margin:8px 0}input[inputmode=numeric]{-moz-appearance:textfield}input[inputmode=numeric]::-webkit-outer-spin-button,input[inputmode=numeric]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.sites-panel{display:flex;flex-direction:column;height:100%;background:#f8fafc}.sites-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.sites-header.detail-header{flex-direction:column;align-items:flex-start;gap:.75rem}.sites-header-content{display:flex;align-items:center;gap:1rem}.sites-header-icon{width:48px;height:48px;background:#fff3;border-radius:12px;display:flex;align-items:center;justify-content:center}.sites-header h1{margin:0;font-size:1.25rem;font-weight:700}.sites-header p{margin:.25rem 0 0;font-size:.875rem;opacity:.9}.sites-toolbar{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.5rem;background:#fff;border-bottom:1px solid #e2e8f0}.sites-search{flex:1;display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.sites-search input{flex:1;border:none;background:transparent;font-size:.875rem;color:#334155;outline:none}.sites-search input::-moz-placeholder{color:#94a3b8}.sites-search input::placeholder{color:#94a3b8}.sites-search svg{color:#94a3b8}.sites-filter-select{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#475569;background:#fff;cursor:pointer;min-width:140px}.sites-filter-select:focus{outline:none;border-color:#6366f1}.btn-add-site{display:flex;align-items:center;gap:6px;padding:.5rem 1rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-add-site:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.breadcrumb-link{background:none;border:none;color:#fffc;cursor:pointer;padding:0;font-size:inherit}.breadcrumb-link:hover{color:#fff;text-decoration:underline}.breadcrumb-current{font-weight:600}.site-info-summary{display:flex;align-items:center;gap:1rem}.site-type-badge{display:flex;align-items:center;gap:6px;padding:4px 12px;background:#fff3;border-radius:16px;font-size:.8125rem;font-weight:500}.site-location{display:flex;align-items:center;gap:4px;font-size:.8125rem;opacity:.9}.tier-warning{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.5rem;background:#fef3c7;color:#92400e;font-size:.875rem}.sites-content{flex:1;overflow-y:auto;padding:1.5rem}.sites-loading,.sites-error,.sites-empty,.sites-login-prompt{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:1rem;color:#64748b;text-align:center}.sites-loading .spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#6366f1;border-radius:50%;animation:spin 1s linear infinite}.sites-error{color:#ef4444}.sites-empty h2,.sites-login-prompt h2{margin:0;font-size:1.25rem;color:#1e293b}.sites-empty p,.sites-login-prompt p{margin:0;font-size:.875rem}.btn-login-prompt{margin-top:.5rem;padding:10px 24px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer}.sites-grid{display:grid;grid-template-columns:1fr;gap:1rem;width:100%}@media(min-width:1536px){.sites-grid{grid-template-columns:repeat(2,1fr)}}.site-card-wide{background:#fff;border-radius:10px;border:1px solid #e2e8f0;border-left:4px solid #6366f1;cursor:pointer;transition:all .2s;width:100%;overflow:hidden}.site-card-wide.is-default{border-left-color:#f59e0b}.site-card-wide:hover{box-shadow:0 4px 12px #00000014}.site-card-content{display:flex;flex-direction:column}@media(min-width:1024px){.site-card-content{flex-direction:row;align-items:stretch}}.site-section{padding:.875rem 1rem;border-bottom:1px solid #f1f5f9}@media(min-width:1024px){.site-section{border-bottom:none;border-right:1px solid #f1f5f9;display:flex;flex-direction:column;justify-content:center}.site-section:last-child{border-right:none}}.site-section-identity{display:flex;align-items:center;gap:.75rem;background:#f8fafc}@media(min-width:1024px){.site-section-identity{min-width:220px;max-width:280px;flex-shrink:0}}.site-card-icon{width:36px;height:36px;min-width:36px;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#6366f1}.site-identity-info{min-width:0;flex:1}.site-name-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:4px}.site-card-name{margin:0;font-size:.9375rem;font-weight:600;color:#1e293b;line-height:1.2}.badge-default{display:inline-flex;align-items:center;gap:3px;padding:1px 6px;background:#fef3c7;color:#d97706;font-size:.625rem;font-weight:600;border-radius:10px}.badge-status{padding:1px 6px;font-size:.625rem;font-weight:600;border-radius:10px}.badge-status.active{background:#dcfce7;color:#16a34a}.badge-status.inactive{background:#f1f5f9;color:#64748b}.site-type-label{display:inline-block;padding:1px 6px;background:#e0e7ff;color:#4f46e5;font-size:.625rem;font-weight:600;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.site-section-location,.site-section-contact,.site-section-phone{background:#fff}@media(min-width:1024px){.site-section-location{min-width:160px;max-width:200px}.site-section-contact{min-width:140px;max-width:180px}.site-section-phone{min-width:120px;max-width:150px}}.section-row{display:flex;align-items:center;gap:6px;font-size:.8125rem;color:#334155}.section-row svg{color:#94a3b8;flex-shrink:0}.section-sub{font-size:.6875rem;color:#94a3b8;margin-left:20px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-section-stats{background:#fff}@media(min-width:1024px){.site-section-stats{min-width:100px}}.stat-item{display:flex;align-items:center;gap:6px;font-size:.75rem;color:#64748b;margin-bottom:2px}.stat-item:last-child{margin-bottom:0}.stat-item svg{color:#94a3b8}.site-section-actions{display:flex;align-items:center;gap:.5rem;background:#f8fafc;border-bottom:none}@media(min-width:1024px){.site-section-actions{margin-left:auto;border-right:none;padding:.75rem 1rem}}.btn-edit{display:flex;align-items:center;gap:5px;padding:6px 12px;background:#6366f1;color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-edit:hover{background:#4f46e5}.action-btns{display:flex;gap:2px}.btn-icon{padding:6px;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .2s}.btn-icon.btn-star{color:#d97706}.btn-icon.btn-star:hover{background:#fef3c7}.btn-icon.btn-copy{color:#64748b}.btn-icon.btn-copy:hover{background:#f1f5f9;color:#334155}.btn-icon.btn-trash{color:#ef4444}.btn-icon.btn-trash:hover{background:#fef2f2}.site-tabs{display:flex;gap:.25rem;padding:.75rem 1.5rem;background:#fff;border-bottom:1px solid #e2e8f0}.site-tabs .tab{display:flex;align-items:center;gap:6px;padding:10px 16px;background:transparent;border:none;color:#64748b;font-size:.875rem;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s}.site-tabs .tab:hover{background:#f1f5f9;color:#334155}.site-tabs .tab.active{background:#eff6ff;color:#6366f1}.site-content{flex:1;overflow-y:auto;padding:1.5rem}.tab-loading,.tab-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:1rem;color:#64748b}.tab-loading .spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#6366f1;border-radius:50%;animation:spin 1s linear infinite}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.tab-header h3{margin:0;font-size:1rem;font-weight:600;color:#1e293b}.btn-add-item{display:flex;align-items:center;gap:4px;padding:8px 14px;background:#6366f1;color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-item:hover{background:#4f46e5}.items-table{background:#fff;border-radius:10px;border:1px solid #e2e8f0;overflow:hidden}.items-table table{width:100%;border-collapse:collapse}.items-table th{padding:12px 16px;background:#f8fafc;text-align:left;font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e2e8f0}.items-table td{padding:12px 16px;font-size:.875rem;color:#334155;border-bottom:1px solid #f1f5f9}.items-table tr:last-child td{border-bottom:none}.items-table tr:hover{background:#fafafa}.items-table .cell-name{font-weight:600;color:#1e293b}.btn-delete-row{padding:6px;background:transparent;border:none;color:#94a3b8;cursor:pointer;border-radius:4px;transition:all .2s}.btn-delete-row:hover{background:#fef2f2;color:#ef4444}.dispensers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.dispenser-card{background:#fff;border-radius:10px;border:1px solid #e2e8f0;overflow:hidden}.dispenser-card-header{display:flex;align-items:center;gap:8px;padding:12px 16px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);color:#16a34a}.dispenser-name{flex:1;font-weight:600;font-size:.9375rem}.btn-delete-dispenser{padding:4px;background:transparent;border:none;color:#94a3b8;cursor:pointer;border-radius:4px}.btn-delete-dispenser:hover{color:#ef4444}.dispenser-card-body{padding:12px 16px}.dispenser-info{display:flex;justify-content:space-between;font-size:.8125rem;color:#64748b;margin-bottom:8px}.dispenser-linked{display:flex;align-items:center;gap:6px;font-size:.8125rem;color:#475569;margin-bottom:8px}.dispenser-status{display:inline-block;padding:2px 8px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border-radius:4px}.dispenser-status.status-active{background:#dcfce7;color:#16a34a}.dispenser-status.status-inactive{background:#f1f5f9;color:#64748b}.dispenser-status.status-maintenance{background:#fef3c7;color:#d97706}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:16px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1e293b}.btn-close{padding:8px;background:#f1f5f9;border:none;border-radius:8px;color:#64748b;cursor:pointer;transition:all .2s}.btn-close:hover{background:#e2e8f0;color:#334155}.modal-content form{padding:1.5rem}.form-group label{display:block;margin-bottom:6px;font-size:.8125rem;font-weight:500;color:#475569}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e2e8f0}.btn-primary{padding:10px 20px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{padding:10px 20px;background:#f1f5f9;color:#475569;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#e2e8f0}.site-form-modal{max-width:560px}.site-modal-header{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;padding:1.25rem 1.5rem;border-radius:16px 16px 0 0}.modal-header-gradient{display:flex;justify-content:space-between;align-items:center}.modal-header-content{display:flex;align-items:center;gap:.75rem}.modal-header-content h3{margin:0;font-size:1.125rem;font-weight:600}.btn-close-white{padding:8px;background:#fff3;border:none;border-radius:8px;color:#fff;cursor:pointer;transition:all .2s}.btn-close-white:hover{background:#ffffff4d}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid .full-width{grid-column:span 2}.form-section-header{padding-top:.5rem;margin-top:.5rem;border-top:1px solid #e2e8f0}.form-section-header h4{margin:0;font-size:.875rem;font-weight:600;color:#475569}.delete-confirm-dialog{background:#fff;border-radius:16px;padding:2rem;max-width:400px;text-align:center;box-shadow:0 20px 40px #0003}.delete-confirm-icon{margin-bottom:1rem}.delete-confirm-dialog h3{margin:0 0 .75rem;font-size:1.25rem;font-weight:600;color:#1e293b}.delete-confirm-dialog p{margin:0 0 .5rem;font-size:.9375rem;color:#64748b}.delete-warning{color:#dc2626!important;font-weight:500}.delete-confirm-buttons{display:flex;justify-content:center;gap:.75rem;margin-top:1.5rem}.btn-cancel-delete{padding:10px 20px;background:#f1f5f9;color:#475569;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel-delete:hover{background:#e2e8f0}.btn-confirm-delete{padding:10px 20px;background:#dc2626;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-confirm-delete:hover{background:#b91c1c}@media(max-width:640px){.sites-header{flex-direction:column;align-items:flex-start;gap:1rem}.sites-toolbar{flex-wrap:wrap}.sites-search{width:100%;order:1}.sites-filter-select{flex:1;min-width:auto}.btn-add-site{width:100%;justify-content:center;order:3}.form-row,.form-grid{grid-template-columns:1fr}.form-grid .full-width{grid-column:span 1}.site-tabs{overflow-x:auto}.delete-confirm-buttons{flex-direction:column}}.sites-grid-responsive{display:grid;grid-template-columns:1fr;gap:1rem;width:100%}@media(min-width:768px){.sites-grid-responsive{grid-template-columns:repeat(2,1fr)}}@media(min-width:1280px){.sites-grid-responsive{grid-template-columns:repeat(3,1fr)}}@media(min-width:1600px){.sites-grid-responsive{grid-template-columns:repeat(4,1fr)}}.site-card-compact{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column}.site-card-compact:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.site-card-compact .site-card-header{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0}.site-card-compact .site-card-icon-box{width:44px;height:44px;min-width:44px;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#6366f1}.site-card-compact .site-card-icon-box.default{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706}.site-card-compact .site-card-title-area{flex:1;min-width:0}.site-card-compact .site-card-title{margin:0 0 6px;font-size:.9375rem;font-weight:600;color:#1e293b;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-card-compact .site-card-badges{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.site-card-compact .badge-type{padding:2px 6px;font-size:.625rem;font-weight:600;border-radius:4px;background:#e0e7ff;color:#4f46e5;text-transform:uppercase;letter-spacing:.3px}.site-card-compact .badge-default-small{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;font-size:.625rem;font-weight:600;border-radius:10px;background:#fef3c7;color:#d97706}.site-card-compact .badge-status-dot{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;font-size:.625rem;font-weight:600;border-radius:10px}.site-card-compact .badge-status-dot:before{content:"";width:5px;height:5px;border-radius:50%}.site-card-compact .badge-status-dot.active{background:#dcfce7;color:#16a34a}.site-card-compact .badge-status-dot.active:before{background:#16a34a}.site-card-compact .badge-status-dot.inactive{background:#fee2e2;color:#dc2626}.site-card-compact .badge-status-dot.inactive:before{background:#dc2626}.site-card-compact .site-card-info{padding:.875rem 1rem;display:flex;flex-direction:column;gap:.5rem}.site-card-compact .info-row{display:flex;align-items:flex-start;gap:.5rem;font-size:.8125rem;color:#334155}.site-card-compact .info-icon{color:#94a3b8;flex-shrink:0;margin-top:2px}.site-card-compact .info-content{display:flex;flex-direction:column;min-width:0}.site-card-compact .info-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-card-compact .info-sub{font-size:.6875rem;color:#94a3b8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-card-compact .site-card-stats{display:flex;gap:1rem;padding:.75rem 1rem;background:#f8fafc;border-top:1px solid #f1f5f9;border-bottom:1px solid #f1f5f9}.site-card-compact .stat-box{display:flex;align-items:center;gap:.375rem}.site-card-compact .stat-icon{color:#94a3b8}.site-card-compact .stat-icon.machines{color:#6366f1}.site-card-compact .stat-icon.dispensers{color:#0ea5e9}.site-card-compact .stat-num{font-size:1rem;font-weight:700;color:#1e293b}.site-card-compact .stat-label{font-size:.6875rem;color:#64748b}.site-card-compact .site-card-notes{padding:.5rem 1rem;background:#fffbeb;font-size:.75rem;color:#92400e;border-bottom:1px solid #fef3c7}.site-card-compact .notes-label{font-weight:600}.site-card-compact .site-card-actions{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;margin-top:auto}.site-card-compact .action-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border:none;border-radius:6px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s}.site-card-compact .action-btn.primary{background:#6366f1;color:#fff}.site-card-compact .action-btn.primary:hover{background:#4f46e5}.site-card-compact .action-icons{display:flex;gap:2px}.site-card-compact .icon-btn{padding:6px;border:none;border-radius:6px;background:transparent;cursor:pointer;transition:all .2s}.site-card-compact .icon-btn.star{color:#d97706}.site-card-compact .icon-btn.star:hover{background:#fef3c7}.site-card-compact .icon-btn.copy{color:#64748b}.site-card-compact .icon-btn.copy:hover{background:#f1f5f9;color:#4f46e5}.site-card-compact .icon-btn.delete{color:#ef4444}.site-card-compact .icon-btn.delete:hover{background:#fee2e2}.site-detail-page{display:flex;flex-direction:column;height:100%;background:#f8fafc}.site-detail-header-page{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;padding:1rem 1.5rem 1.25rem}.btn-back{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff26;border:none;border-radius:8px;color:#ffffffe6;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:1rem}.btn-back:hover{background:#ffffff40;color:#fff}.site-detail-header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.site-detail-header-left{display:flex;align-items:flex-start;gap:1rem}.site-detail-icon{width:56px;height:56px;min-width:56px;background:#fff3;border-radius:14px;display:flex;align-items:center;justify-content:center}.site-detail-icon.default{background:#fbbf244d}.site-detail-title h1{margin:0 0 8px;font-size:1.5rem;font-weight:700}.site-detail-badges{display:flex;gap:8px;flex-wrap:wrap}.site-detail-badges .badge-type{padding:4px 10px;font-size:.75rem;font-weight:600;border-radius:6px;background:#fff3;color:#fff;text-transform:uppercase;letter-spacing:.3px}.badge-default-page{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:600;border-radius:12px;background:#fbbf244d;color:#fef3c7}.badge-status-page{padding:4px 10px;font-size:.75rem;font-weight:600;border-radius:12px;background:#ffffff26;color:#fffc}.badge-status-page.active{background:#22c55e4d;color:#bbf7d0}.btn-edit-site{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;background:#fff3;border:none;border-radius:10px;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-edit-site:hover{background:#ffffff4d}.site-detail-content{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem;max-width:1200px;margin:0 auto;width:100%}.site-info-card{background:#fff;border-radius:12px;padding:1.25rem 1.5rem;box-shadow:0 1px 3px #0000001a}.site-info-card h2{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#1e293b}.site-info-grid-page{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}@media(min-width:768px){.site-info-grid-page{grid-template-columns:repeat(4,1fr)}}.site-info-grid-page .info-item{display:flex;flex-direction:column;gap:4px}.site-info-grid-page .info-label{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.site-info-grid-page .info-value{font-size:.9375rem;color:#1e293b;font-weight:500}.site-info-grid-page .info-sub{font-size:.8125rem;color:#94a3b8}.site-notes-box{margin-top:1rem;padding:.75rem 1rem;background:#fffbeb;border-radius:8px;font-size:.875rem;color:#92400e}.site-notes-box .notes-label{font-weight:600}.machines-card{background:#fff;border-radius:12px;padding:1.25rem 1.5rem;box-shadow:0 1px 3px #0000001a;flex:1}.machines-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.machines-card-header h2{margin:0;font-size:1.125rem;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:8px}.btn-add-machine{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-machine:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.machines-error{display:flex;align-items:center;gap:10px;padding:1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;margin-bottom:1rem}.machines-error span{flex:1;font-size:.875rem}.btn-retry{padding:6px 14px;background:#dc2626;color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-retry:hover{background:#b91c1c}.machines-loading,.machines-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:250px;gap:1rem;color:#64748b;text-align:center}.machines-loading .spinner{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#6366f1;border-radius:50%;animation:spin 1s linear infinite}.machines-empty p{margin:0;font-size:.9375rem}.btn-link{display:inline-flex;align-items:center;gap:4px;padding:8px 12px;background:transparent;border:none;color:#6366f1;font-size:.875rem;font-weight:500;cursor:pointer;border-radius:8px;transition:all .2s}.btn-link:hover{background:#eff6ff}.machines-list-page{display:flex;flex-direction:column;gap:.75rem}.machine-row{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;transition:all .2s}.machine-row:hover{background:#f1f5f9;border-color:#c7d2fe;box-shadow:0 2px 8px #6366f11a}.machine-number-badge{width:48px;height:48px;min-width:48px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:.9375rem;font-weight:700;color:#fff}.machine-row-info{flex:1;min-width:0}.machine-row-main{display:flex;align-items:center;gap:10px;margin-bottom:4px}.machine-row-main .machine-name{margin:0;font-size:1rem;font-weight:600;color:#1e293b}.machine-status-badge{display:inline-block;padding:3px 10px;font-size:.75rem;font-weight:600;border-radius:12px}.machine-status-badge.active{background:#dcfce7;color:#16a34a}.machine-status-badge.inactive{background:#fee2e2;color:#dc2626}.machine-row-details{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.machine-detail{font-size:.875rem;color:#64748b}.machine-detail strong{color:#334155}.machine-notes-text{font-size:.8125rem;color:#94a3b8;margin-top:4px}.machine-formula-count{flex-shrink:0;text-align:center;padding:0 1rem;border-left:1px solid #e2e8f0;min-width:80px}.machine-formula-count .formula-num{display:block;font-size:1.5rem;font-weight:700;color:#6366f1}.machine-formula-count .formula-label{display:block;font-size:.6875rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.machine-row-actions{flex-shrink:0;display:flex;gap:4px}.machine-btn{padding:10px;border:none;border-radius:8px;background:transparent;cursor:pointer;transition:all .2s}.machine-btn.edit{color:#6366f1}.machine-btn.edit:hover{background:#eff6ff}.machine-btn.copy{color:#64748b}.machine-btn.copy:hover{background:#f1f5f9;color:#4f46e5}.machine-btn.delete{color:#ef4444}.machine-btn.delete:hover{background:#fee2e2}.machine-form-modal{background:#fff;border-radius:16px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px #00000040}.machine-modal-header{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;padding:1rem 1.25rem;border-radius:16px 16px 0 0}.machine-form-modal form{padding:1.25rem}.machine-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.machine-form-grid .full-width{grid-column:span 2}.form-hint{display:block;margin-top:4px;font-size:.6875rem;color:#94a3b8}@media(max-width:768px){.site-detail-header-content{flex-direction:column;gap:1rem}.site-detail-header-left{flex-direction:column;gap:.75rem}.btn-edit-site{width:100%;justify-content:center}.site-info-grid-page{grid-template-columns:1fr}.machine-row{flex-direction:column;align-items:flex-start;gap:.75rem}.machine-row-main{flex-direction:column;align-items:flex-start;gap:6px}.machine-formula-count{border-left:none;border-top:1px solid #e2e8f0;padding:.75rem 0 0;width:100%;display:flex;align-items:center;gap:8px}.machine-formula-count .formula-num{font-size:1.25rem}.machine-row-actions{width:100%;justify-content:flex-end;padding-top:.5rem;border-top:1px solid #e2e8f0}.machine-form-grid{grid-template-columns:1fr}.machine-form-grid .full-width{grid-column:span 1}}.machine-row-container{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:all .2s;background:#fff}.machine-row-container:hover{border-color:#c7d2fe;box-shadow:0 2px 8px #6366f11a}.machine-row-container.expanded{border-color:#a5b4fc;box-shadow:0 4px 12px #6366f126}.machine-row-container .machine-row{cursor:pointer;background:#f8fafc;border:none;border-radius:0}.machine-row-container.expanded .machine-row{background:#eef2ff;border-bottom:1px solid #e2e8f0}.machine-expand-icon{flex-shrink:0;width:24px;display:flex;align-items:center;justify-content:center;color:#64748b;transition:color .2s}.machine-row-container.expanded .machine-expand-icon{color:#6366f1}.machine-formulas-panel{padding:1rem 1.25rem;background:#fff}.formulas-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.formulas-panel-header h4{margin:0;font-size:.9375rem;font-weight:600;color:#374151;display:flex;align-items:center;gap:8px}.btn-assign-formula{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-assign-formula:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.formulas-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:2rem;color:#64748b;font-size:.875rem}.spinner-small{width:20px;height:20px;border:2px solid #e2e8f0;border-top-color:#6366f1;border-radius:50%;animation:spin 1s linear infinite}.formulas-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;color:#94a3b8;text-align:center;gap:8px}.formulas-empty p{margin:0;font-size:.875rem}.btn-link-assign{background:transparent;border:none;color:#6366f1;font-size:.875rem;font-weight:500;cursor:pointer;padding:4px 8px;border-radius:6px;transition:all .2s}.btn-link-assign:hover{background:#eff6ff}.formulas-list{display:flex;flex-direction:column;gap:.75rem}.formula-assignment-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:1rem;transition:all .2s}.formula-assignment-card:hover{border-color:#c7d2fe}.formula-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.formula-card-info h5{margin:0 0 4px;font-size:.9375rem;font-weight:600;color:#1e293b}.formula-category{font-size:.75rem;color:#6366f1;font-weight:500}.btn-remove-formula{padding:6px;background:transparent;border:none;color:#dc2626;border-radius:6px;cursor:pointer;transition:all .2s}.btn-remove-formula:hover{background:#fee2e2}.formula-chemicals-table{overflow-x:auto;margin-top:.5rem}.formula-chemicals-table table{width:100%;border-collapse:collapse;font-size:.8125rem}.formula-chemicals-table thead tr{background:#e2e8f0}.formula-chemicals-table th{text-align:left;padding:8px 12px;font-weight:600;color:#475569;font-size:.75rem;text-transform:uppercase;letter-spacing:.3px}.formula-chemicals-table th:nth-child(2),.formula-chemicals-table th:nth-child(3){text-align:right}.formula-chemicals-table tbody tr{border-bottom:1px solid #e2e8f0}.formula-chemicals-table td{padding:8px 12px;color:#374151}.formula-chemicals-table .text-right{text-align:right}.formula-chemicals-table .text-primary{color:#6366f1}.formula-chemicals-table tfoot .total-row{background:#eef2ff}.formula-chemicals-table tfoot .total-row td{font-weight:600;color:#1e293b}.formula-no-chemicals{margin:0;padding:.75rem;text-align:center;color:#94a3b8;font-size:.8125rem;background:#f1f5f9;border-radius:6px}.formula-notes{margin-top:.75rem;padding:.5rem .75rem;background:#fffbeb;border-radius:6px;font-size:.8125rem;color:#92400e}.formula-notes .notes-label{font-weight:600}.assign-formula-modal{background:#fff;border-radius:16px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px #00000040}.assign-modal-header{background:linear-gradient(135deg,#10b981,#059669)}.assign-modal-body{padding:1.25rem}.assign-modal-body .form-group{margin-bottom:1rem}.assign-modal-body .form-group:last-child{margin-bottom:0}.assign-modal-body label{display:block;margin-bottom:6px;font-size:.8125rem;font-weight:600;color:#374151}.formula-select{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#1e293b;background:#fff;transition:border-color .2s}.formula-select:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.assign-modal-body textarea{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#1e293b;resize:vertical;transition:border-color .2s}.assign-modal-body textarea:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.loading-text{padding:10px 12px;color:#64748b;font-size:.875rem;background:#f8fafc;border-radius:8px;text-align:center}.no-formulas-text{margin:0;padding:10px 12px;color:#f59e0b;font-size:.8125rem;background:#fffbeb;border-radius:8px;text-align:center}.btn-assign{background:linear-gradient(135deg,#10b981,#059669)}.btn-assign:hover:not(:disabled){box-shadow:0 4px 12px #10b9814d}.btn-assign:disabled{background:#d1d5db;cursor:not-allowed}@media(max-width:768px){.machine-row-container .machine-row,.machine-formulas-panel{padding:.75rem 1rem}.formulas-panel-header{flex-direction:column;gap:.75rem;align-items:flex-start}.btn-assign-formula{width:100%;justify-content:center}.formula-assignment-card{padding:.75rem}.formula-chemicals-table{font-size:.75rem}.formula-chemicals-table th,.formula-chemicals-table td{padding:6px 8px}}.edit-formula-modal.large{width:95%;max-width:900px;max-height:90vh;display:flex;flex-direction:column}.edit-formula-body{flex:1;overflow-y:auto;padding:1.5rem;background:#f8fafc}.machine-info-box{background:#e0e7ff;border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem}.machine-info-box p{margin:0;font-size:.875rem;color:#3730a3}.machine-info-box p+p{margin-top:.25rem}.edit-steps-container{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 1px 3px #0000001a}.steps-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.steps-header h4{margin:0;font-size:1rem;font-weight:600;color:#1e293b}.btn-add-step{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#10b981;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-add-step:hover{background:#059669}.no-steps-container{text-align:center;padding:3rem 2rem;background:#f8fafc;border-radius:8px}.no-steps-text{color:#64748b;margin:0 0 1rem}.btn-add-first-step{color:#10b981;background:none;border:none;font-size:.875rem;font-weight:600;cursor:pointer}.btn-add-first-step:hover{text-decoration:underline}.steps-list{display:flex;flex-direction:column;gap:1rem}.edit-step-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:1rem}.step-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.step-number{font-weight:600;color:#6366f1;font-size:.875rem}.btn-remove-step{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#fee2e2;color:#dc2626;border:none;border-radius:6px;cursor:pointer;transition:background .2s}.btn-remove-step:hover{background:#fecaca}.step-properties{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-bottom:.75rem}.property-group{display:flex;flex-direction:column;gap:.25rem}.property-group label{font-size:.75rem;color:#64748b;font-weight:500}.property-group input,.property-group select{padding:.5rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;background:#fff}.property-group input:focus,.property-group select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f11a}.step-chemicals{border-top:1px solid #e2e8f0;padding-top:.75rem;margin-top:.5rem}.chemicals-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.chemicals-header span{font-size:.8rem;font-weight:600;color:#475569}.btn-add-chemical{color:#3b82f6;background:none;border:none;font-size:.75rem;font-weight:500;cursor:pointer}.btn-add-chemical:hover{text-decoration:underline}.no-chemicals-text{color:#94a3b8;font-size:.8rem;margin:0;font-style:italic}.edit-chemicals-table{width:100%;border-collapse:collapse;font-size:.8rem}.edit-chemicals-table th{text-align:left;padding:.5rem;color:#64748b;font-weight:500;border-bottom:1px solid #e2e8f0}.edit-chemicals-table td{padding:.5rem;vertical-align:middle}.chemical-select{width:100%;min-width:150px;padding:.375rem .5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.8rem;background:#fff}.dose-input{width:70px;padding:.375rem .5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.8rem;text-align:right}.dose-input:focus,.chemical-select:focus{outline:none;border-color:#6366f1}.total-cell{color:#059669;font-weight:600;text-align:right}.btn-remove-chemical{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:none;color:#dc2626;border:none;border-radius:4px;cursor:pointer;opacity:.6;transition:opacity .2s}.btn-remove-chemical:hover{opacity:1;background:#fee2e2}.save-dialog-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:60}.save-dialog{background:#fff;border-radius:16px;padding:1.5rem;width:90%;max-width:480px;box-shadow:0 20px 40px #0003}.save-dialog h3{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:#1e293b}.warning-banner{display:flex;gap:.75rem;padding:.875rem 1rem;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;margin-bottom:1rem}.warning-banner svg{flex-shrink:0;color:#d97706}.warning-banner div{font-size:.875rem;color:#92400e}.save-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.save-option{display:flex;gap:.75rem;padding:1rem;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;transition:border-color .2s,background .2s}.save-option:hover{border-color:#cbd5e1}.save-option.selected{border-color:#6366f1;background:#eef2ff}.save-option input[type=radio]{flex-shrink:0;margin-top:2px}.option-content{flex:1}.option-title{font-weight:600;color:#1e293b;margin-bottom:.25rem}.option-desc{font-size:.8rem;color:#64748b}.new-formula-name-input{width:100%;margin-top:.75rem;padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem}.new-formula-name-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f11a}.dialog-actions{display:flex;justify-content:flex-end;gap:.75rem}@media(max-width:640px){.edit-formula-modal.large{width:100%;height:100%;max-height:100%;border-radius:0}.step-properties{grid-template-columns:repeat(2,1fr)}.edit-chemicals-table{font-size:.75rem}.chemical-select{min-width:120px}.dose-input{width:60px}}.city-autocomplete-group{position:relative}.city-autocomplete-group .autocomplete-wrapper{position:relative;width:100%}.city-autocomplete-group .autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-top:none;border-radius:0 0 8px 8px;box-shadow:0 4px 12px #00000026;max-height:240px;overflow-y:auto;z-index:1000}.city-autocomplete-group .autocomplete-item{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;border-bottom:1px solid #f1f5f9;transition:background .15s ease}.city-autocomplete-group .autocomplete-item:last-child{border-bottom:none;border-radius:0 0 8px 8px}.city-autocomplete-group .autocomplete-item:hover,.city-autocomplete-group .autocomplete-item.highlighted{background:#eff6ff}.city-autocomplete-group .autocomplete-item .city-name{font-weight:500;color:#1e293b;flex:1}.city-autocomplete-group .autocomplete-item .province-name{font-size:.85em;color:#64748b}.city-autocomplete-group .autocomplete-item .city-type{font-size:.75em;padding:2px 6px;background:#e0e7ff;color:#4f46e5;border-radius:4px}.district-select{width:100%}.district-select:disabled{background:#f1f5f9;color:#94a3b8;cursor:not-allowed}.postal-code-readonly{font-family:Monaco,Consolas,monospace;letter-spacing:1px;background:#f8fafc!important;cursor:not-allowed}.form-hint{display:block;margin-top:4px;font-size:.75rem;color:#64748b}.form-hint-success{color:#16a34a}.city-autocomplete-group .autocomplete-dropdown::-webkit-scrollbar{width:6px}.city-autocomplete-group .autocomplete-dropdown::-webkit-scrollbar-track{background:#f1f5f9;border-radius:0 0 8px}.city-autocomplete-group .autocomplete-dropdown::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.city-autocomplete-group .autocomplete-dropdown::-webkit-scrollbar-thumb:hover{background:#94a3b8}.city-autocomplete-group .autocomplete-loading{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-top:none;border-radius:0 0 8px 8px;padding:12px;text-align:center;color:#64748b;font-size:.875rem;z-index:1000}.audit-panel{padding:24px;max-width:1200px;margin:0 auto}.audit-type-toggle{display:flex;gap:8px;margin-bottom:24px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:6px;border-radius:12px;width:-moz-fit-content;width:fit-content;border:1px solid #e2e8f0}.type-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;border:none;background:transparent;border-radius:8px;font-size:14px;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s ease}.type-btn:hover{color:#475569;background:#ffffff80}.type-btn.active{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;box-shadow:0 2px 8px #f973164d}.audit-header{background:linear-gradient(135deg,#f97316,#ea580c,#c2410c);padding:32px;border-radius:16px;color:#fff;margin-bottom:24px;box-shadow:0 4px 20px #f973164d}.audit-header-content{display:flex;align-items:center;gap:16px}.audit-header-icon{width:56px;height:56px;background:#fff3;border-radius:12px;display:flex;align-items:center;justify-content:center}.audit-header h1{font-size:28px;font-weight:700;margin-bottom:4px}.audit-header p{opacity:.9;font-size:14px}.audit-mode-toggle{display:flex;gap:12px;margin-bottom:24px;background:#f1f5f9;padding:6px;border-radius:12px;width:-moz-fit-content;width:fit-content}.mode-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;border:none;background:transparent;border-radius:8px;font-size:14px;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s ease}.mode-btn:hover{color:#475569}.mode-btn.active{background:#fff;color:#f97316;box-shadow:0 2px 8px #0000001a}.site-selector{margin-bottom:24px}.site-selector label{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}.site-selector select{width:100%;max-width:400px;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;background:#fff;cursor:pointer;transition:border-color .2s ease}.site-selector select:focus{outline:none;border-color:#f97316}.audit-categories{display:flex;flex-direction:column;gap:16px}.category-accordion{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden;box-shadow:0 1px 3px #0000000d}.category-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(180deg,#fafafa,#f5f5f5);cursor:pointer;transition:background .2s ease}.category-header:hover{background:linear-gradient(180deg,#f5f5f5,#eee)}.category-header-left{display:flex;align-items:center;gap:12px}.category-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff}.category-icon.equipment{background:linear-gradient(135deg,#3b82f6,#2563eb)}.category-icon.chemical_storage{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.category-icon.safety{background:linear-gradient(135deg,#22c55e,#16a34a)}.category-icon.process{background:linear-gradient(135deg,#f97316,#ea580c)}.category-icon.documentation{background:linear-gradient(135deg,#06b6d4,#0891b2)}.category-info h3{font-size:16px;font-weight:600;color:#1e293b;margin-bottom:2px}.category-progress-text{font-size:12px;color:#64748b}.category-header-right{display:flex;align-items:center;gap:12px}.category-score-badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}.chevron-icon{transition:transform .3s ease;color:#94a3b8}.chevron-icon.expanded{transform:rotate(180deg)}.category-items{border-top:1px solid #e2e8f0}.audit-item{padding:16px 20px;border-bottom:1px solid #f1f5f9}.audit-item:last-child{border-bottom:none}.item-question{font-size:14px;color:#374151;margin-bottom:12px;line-height:1.5}.score-selector{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.score-btn{padding:8px 16px;border:2px solid #e2e8f0;border-radius:8px;background:#fff;font-size:13px;color:#64748b;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px}.score-btn:hover{border-color:#f97316;color:#f97316}.score-btn.selected{border-color:#f97316;background:#fff7ed;color:#c2410c;font-weight:600}.score-btn.score-0.selected,.score-btn.score-1.selected{background:#fef2f2;border-color:#ef4444;color:#b91c1c}.score-btn.score-2.selected{background:#fff7ed;border-color:#f97316;color:#c2410c}.score-btn.score-3.selected{background:#fefce8;border-color:#eab308;color:#a16207}.score-btn.score-4.selected,.score-btn.score-5.selected{background:#f0fdf4;border-color:#22c55e;color:#15803d}.item-notes{margin-top:12px}.item-notes textarea{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:13px;resize:vertical;min-height:60px;transition:border-color .2s ease}.item-notes textarea:focus{outline:none;border-color:#f97316}.item-notes textarea::-moz-placeholder{color:#94a3b8}.item-notes textarea::placeholder{color:#94a3b8}.audit-results{background:#fff;border-radius:16px;padding:32px;border:1px solid #e2e8f0;margin-top:24px}.results-header{text-align:center;margin-bottom:32px}.results-header h2{font-size:24px;font-weight:700;color:#1e293b;margin-bottom:8px}.circular-progress-container{display:flex;justify-content:center;margin-bottom:32px}.circular-progress{position:relative;width:200px;height:200px}.circular-progress svg{transform:rotate(-90deg)}.circular-progress-bg{fill:none;stroke:#e2e8f0;stroke-width:12}.circular-progress-value{fill:none;stroke-width:12;stroke-linecap:round;transition:stroke-dashoffset .5s ease}.circular-progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.progress-percentage{font-size:36px;font-weight:800;color:#1e293b}.progress-label{font-size:14px;color:#64748b}.grade-badge{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;font-size:32px;font-weight:800;color:#fff;margin:0 auto 8px}.grade-label{font-size:14px;color:#64748b}.category-bars{margin-bottom:32px}.category-bars h3{font-size:16px;font-weight:600;color:#374151;margin-bottom:16px}.category-bar-item{margin-bottom:16px}.category-bar-header{display:flex;justify-content:space-between;margin-bottom:6px}.category-bar-name{font-size:14px;color:#475569}.category-bar-score{font-size:14px;font-weight:600;color:#1e293b}.category-bar-track{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.category-bar-fill{height:100%;border-radius:4px;transition:width .5s ease}.recommendations{margin-top:24px}.recommendations h3{font-size:16px;font-weight:600;color:#374151;margin-bottom:16px;display:flex;align-items:center;gap:8px}.recommendation-list{display:flex;flex-direction:column;gap:12px}.recommendation-item{display:flex;gap:12px;padding:16px;background:#fffbeb;border-radius:8px;border-left:4px solid #f59e0b}.recommendation-item.priority-high{background:#fef2f2;border-left-color:#ef4444}.recommendation-icon{flex-shrink:0;color:#f59e0b}.recommendation-item.priority-high .recommendation-icon{color:#ef4444}.recommendation-text{font-size:14px;color:#78350f;line-height:1.5}.recommendation-item.priority-high .recommendation-text{color:#7f1d1d}.audit-actions{display:flex;gap:12px;margin-top:32px;justify-content:center}.action-btn{display:flex;align-items:center;gap:8px;padding:14px 28px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.action-btn.primary{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;border:none;box-shadow:0 4px 15px #f973164d}.action-btn.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f9731666}.action-btn.primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.action-btn.secondary{background:#fff;color:#475569;border:2px solid #e2e8f0}.action-btn.secondary:hover{border-color:#f97316;color:#f97316}.audit-history{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden}.history-table{width:100%;border-collapse:collapse}.history-table th{background:linear-gradient(180deg,#f8fafc,#f1f5f9);padding:14px 16px;text-align:left;font-size:13px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.history-table td{padding:16px;border-bottom:1px solid #f1f5f9;font-size:14px;color:#374151}.history-table tr:hover td{background:#fafafa}.history-table .grade-cell{text-align:center}.history-grade{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;font-size:16px;font-weight:700;color:#fff}.history-actions{display:flex;gap:8px}.history-action-btn{padding:6px 12px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;font-size:12px;color:#64748b;cursor:pointer;transition:all .2s ease}.history-action-btn:hover{border-color:#f97316;color:#f97316}.history-action-btn.delete:hover{border-color:#ef4444;color:#ef4444}.empty-state{text-align:center;padding:60px 20px;color:#64748b}.empty-state-icon{width:64px;height:64px;margin:0 auto 16px;opacity:.5}.empty-state h3{font-size:18px;font-weight:600;color:#475569;margin-bottom:8px}.empty-state p{font-size:14px}.audit-loading{display:flex;align-items:center;justify-content:center;padding:60px}.loading-spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#f97316;border-radius:50%;animation:spin 1s linear infinite}.login-required{text-align:center;padding:60px 20px;background:linear-gradient(135deg,#fffbeb,#fef3c7);border-radius:16px;border:2px dashed #fbbf24}.login-required-icon{width:64px;height:64px;margin:0 auto 16px;color:#f59e0b}.login-required h3{font-size:20px;font-weight:600;color:#92400e;margin-bottom:8px}.login-required p{font-size:14px;color:#a16207;margin-bottom:20px}.login-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.login-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px #f9731666}@media(max-width:768px){.audit-panel{padding:16px}.audit-header{padding:24px}.audit-header h1{font-size:22px}.audit-mode-toggle{width:100%}.mode-btn{flex:1;justify-content:center;padding:10px 16px;font-size:13px}.site-selector select{max-width:100%}.score-selector{gap:6px}.score-btn{padding:6px 10px;font-size:12px}.circular-progress{width:160px;height:160px}.progress-percentage{font-size:28px}.audit-actions{flex-direction:column}.action-btn{justify-content:center}.history-table{display:block;overflow-x:auto}}.knowledge-panel{padding:1.5rem;max-width:1400px;margin:0 auto}.knowledge-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}@media(min-width:768px){.knowledge-header{flex-direction:row;justify-content:space-between;align-items:flex-start}}.knowledge-title-section{flex:1}.knowledge-title{display:flex;align-items:center;gap:.75rem;font-size:1.5rem;font-weight:700;color:#111827;margin:0}.knowledge-subtitle{color:#6b7280;margin-top:.5rem;font-size:.95rem}.knowledge-search{position:relative;width:100%;max-width:320px}.search-icon{position:absolute;left:.875rem;top:50%;transform:translateY(-50%);width:1.25rem;height:1.25rem;color:#9ca3af}.search-input{width:100%;padding:.75rem 2.5rem .75rem 2.75rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;transition:all .2s}.search-input:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.search-clear{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);padding:.25rem;border:none;background:transparent;color:#9ca3af;cursor:pointer;border-radius:.25rem}.search-clear:hover{color:#6b7280;background:#f3f4f6}.category-pills{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.category-pill{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border:none;border-radius:9999px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;background:#f3f4f6;color:#6b7280}.category-pill:hover{background:#e5e7eb}.category-pill.active{background:#10b981!important;color:#fff!important}.premium-banner{display:flex;flex-direction:column;gap:1rem;padding:1rem 1.25rem;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fcd34d;border-radius:.75rem;margin-bottom:1.5rem}@media(min-width:640px){.premium-banner{flex-direction:row;align-items:center;justify-content:space-between}}.premium-banner-content{display:flex;align-items:center;gap:.875rem}.premium-banner-text h4{font-weight:600;color:#92400e;margin:0;font-size:.95rem}.premium-banner-text p{font-size:.85rem;color:#b45309;margin:.25rem 0 0}.premium-banner-btn{padding:.5rem 1rem;background:#d97706;color:#fff;border:none;border-radius:.5rem;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s;white-space:nowrap}.premium-banner-btn:hover{background:#b45309}.article-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:640px){.article-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.article-grid{grid-template-columns:repeat(3,1fr)}}.article-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;overflow:hidden;cursor:pointer;transition:all .2s}.article-card:hover{border-color:#10b981;box-shadow:0 4px 12px #10b98126;transform:translateY(-2px)}.article-card.locked{border-color:#fcd34d}.article-card.locked:hover{border-color:#f59e0b;box-shadow:0 4px 12px #f59e0b26}.article-card-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1rem 0}.article-category{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .625rem;font-size:.75rem;font-weight:500;border-radius:9999px}.premium-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;font-size:.7rem;font-weight:600;border-radius:9999px;text-transform:uppercase;letter-spacing:.025em}.article-card-body{flex:1;padding:.75rem 1rem 1rem}.article-title{display:flex;align-items:flex-start;gap:.5rem;font-size:.95rem;font-weight:600;color:#111827;margin:0 0 .5rem;line-height:1.4}.article-card:hover .article-title{color:#059669}.article-description{font-size:.85rem;color:#6b7280;margin:0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.article-card-footer{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-top:1px solid #f3f4f6;background:#fafafa}.article-meta{display:flex;align-items:center;gap:.75rem}.meta-item{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;color:#9ca3af}.read-more{display:inline-flex;align-items:center;gap:.25rem;font-size:.8rem;font-weight:500;color:#10b981;transition:gap .2s}.article-card:hover .read-more{gap:.5rem}.empty-state{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:#9ca3af}.empty-state p{margin-top:1rem}.article-modal-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.article-modal{width:100%;max-width:48rem;max-height:90vh;display:flex;flex-direction:column;background:#fff;border-radius:1rem;overflow:hidden;box-shadow:0 20px 50px #0003}.article-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header-content{flex:1;padding-right:1rem}.modal-badges{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.modal-title{font-size:1.25rem;font-weight:700;color:#111827;margin:0 0 .5rem;line-height:1.3}.modal-meta{display:flex;align-items:center;gap:1rem;font-size:.85rem;color:#6b7280}.modal-meta span{display:inline-flex;align-items:center;gap:.375rem}.modal-close-btn{padding:.5rem;border:none;background:transparent;color:#9ca3af;cursor:pointer;border-radius:.5rem;transition:all .2s}.modal-close-btn:hover{background:#f3f4f6;color:#6b7280}.article-modal-content{flex:1;overflow-y:auto;padding:1.5rem}.article-content h1{font-size:1.5rem;font-weight:700;color:#111827;margin:0 0 1rem}.article-content h2{font-size:1.25rem;font-weight:600;color:#111827;margin:1.5rem 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.article-content h3{font-size:1.1rem;font-weight:600;color:#374151;margin:1.25rem 0 .5rem}.article-content p{margin:0 0 1rem;line-height:1.7;color:#374151}.article-content code{padding:.125rem .375rem;background:#f3f4f6;border-radius:.25rem;font-family:Monaco,Menlo,monospace;font-size:.875em}.article-content pre{padding:1rem;background:#1f2937;color:#e5e7eb;border-radius:.5rem;overflow-x:auto;margin:1rem 0}.article-content pre code{padding:0;background:transparent;color:inherit;font-size:.85rem}.article-content li{margin:.25rem 0;padding-left:.5rem}.article-content strong{font-weight:600;color:#111827}.premium-gate{position:relative}.teaser-content{max-height:200px;overflow:hidden;mask-image:linear-gradient(to bottom,black 50%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 50%,transparent 100%)}.teaser-text{white-space:pre-line;line-height:1.6;color:#374151}.premium-blur-overlay{position:relative;padding:2rem;display:flex;justify-content:center}.premium-gate-card{text-align:center;padding:2rem;background:#fff;border:2px solid #fcd34d;border-radius:1rem;max-width:400px;box-shadow:0 4px 20px #f59e0b26}.premium-gate-icon{display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:50%;margin-bottom:1rem}.premium-gate-card h4{font-size:1.25rem;font-weight:700;color:#111827;margin:0 0 .75rem}.premium-gate-card>p{font-size:.9rem;color:#6b7280;margin:0 0 1.25rem;line-height:1.5}.premium-gate-benefits{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;text-align:left}.benefit-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#374151}.premium-gate-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem 1.5rem;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;border-radius:.5rem;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s}.premium-gate-btn:hover{background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-1px);box-shadow:0 4px 12px #d977064d}.login-hint{margin-top:1rem;font-size:.85rem;color:#6b7280}.login-hint button{background:none;border:none;color:#10b981;font-weight:500;cursor:pointer;text-decoration:underline}.login-hint button:hover{color:#059669}.article-modal-footer{padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#fafafa}.modal-footer-btn{width:100%;padding:.75rem;border:none;background:transparent;color:#6b7280;font-weight:500;cursor:pointer;border-radius:.5rem;transition:all .2s}.modal-footer-btn:hover{background:#e5e7eb;color:#111827}.help-section{margin-top:2rem;padding:2rem;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-radius:1rem;text-align:center}.help-section h3{font-size:1.125rem;font-weight:600;color:#065f46;margin:0 0 .5rem}.help-section p{font-size:.9rem;color:#047857;margin:0 0 1rem}.help-btn{padding:.75rem 1.5rem;background:#10b981;color:#fff;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s}.help-btn:hover{background:#059669}@media(max-width:640px){.knowledge-panel{padding:1rem}.knowledge-title{font-size:1.25rem}.article-modal{max-height:100vh;border-radius:0}.article-modal-overlay{padding:0}.modal-title{font-size:1.1rem}}.profile-panel{max-width:800px;margin:0 auto;padding:2rem}.profile-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid #e5e7eb}.profile-avatar{width:80px;height:80px;border-radius:50%;flex-shrink:0}.profile-avatar-image{width:80px;height:80px;-o-object-fit:cover;object-fit:cover;border:3px solid #e5e7eb}.profile-avatar-initials{background:linear-gradient(135deg,#3b82f6,#1e40af);display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:#fff}.profile-info h1{font-size:1.5rem;font-weight:700;color:#0f172a;margin:0 0 .25rem}.profile-email{font-size:.9375rem;color:#64748b;margin:0}.profile-badge{display:inline-flex;align-items:center;gap:.375rem;margin-top:.5rem;padding:.25rem .75rem;background:#dcfce7;color:#15803d;font-size:.75rem;font-weight:600;border-radius:9999px}.profile-badge.unverified{background:#fef3c7;color:#b45309}.profile-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:1.5rem;overflow:hidden}.section-title{font-size:1.125rem;font-weight:700;color:#0f172a;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb;margin:0;background:#f8fafc}.section-content{padding:1.5rem}.form-row{margin-bottom:1.25rem}.form-row:last-child{margin-bottom:0}.form-label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.5rem}.form-input{width:100%;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:.9375rem;color:#0f172a;transition:all .2s}.form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-input:disabled{background:#f3f4f6;color:#6b7280;cursor:not-allowed}.form-hint{font-size:.8125rem;color:#6b7280;margin-top:.375rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media(max-width:640px){.form-grid{grid-template-columns:1fr}}.btn-primary{padding:.75rem 1.5rem;background:linear-gradient(to right,#3b82f6,#1e40af);color:#fff;border:none;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover{background:linear-gradient(to right,#2563eb,#1e3a8a);transform:translateY(-1px)}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.btn-secondary{padding:.75rem 1.5rem;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}.btn-danger{padding:.75rem 1.5rem;background:#dc2626;color:#fff;border:none;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-danger:hover{background:#b91c1c}.btn-link{background:none;border:none;color:#3b82f6;font-size:.875rem;font-weight:500;cursor:pointer;padding:0;text-decoration:underline}.btn-link:hover{color:#1e40af}.form-actions{display:flex;gap:1rem;margin-top:1.5rem}.info-row{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid #f1f5f9}.info-row:last-child{border-bottom:none;padding-bottom:0}.info-row:first-child{padding-top:0}.info-value{font-size:.9375rem;font-weight:500;color:#0f172a}.usage-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}@media(max-width:640px){.usage-stats{grid-template-columns:1fr}}.usage-stat{text-align:center;padding:1.5rem;background:#f8fafc;border-radius:8px}.usage-value{font-size:2rem;font-weight:700;color:#3b82f6;line-height:1;margin-bottom:.5rem}.usage-label{font-size:.8125rem;color:#64748b}.danger-zone{border-color:#fecaca}.danger-zone .section-title{background:#fef2f2;color:#dc2626}.danger-content{display:flex;justify-content:space-between;align-items:center;gap:1rem}.danger-text h4{font-size:.9375rem;font-weight:600;color:#0f172a;margin:0 0 .25rem}.danger-text p{font-size:.8125rem;color:#6b7280;margin:0}@media(max-width:640px){.danger-content{flex-direction:column;align-items:flex-start}}.alert{padding:.75rem 1rem;border-radius:8px;font-size:.875rem;margin-bottom:1rem}.alert-success{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.alert-error{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.phone-display{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#f8fafc;border-radius:8px}.phone-number{font-size:.9375rem;font-weight:500;color:#0f172a}.phone-empty{color:#9ca3af;font-style:italic}@media(max-width:768px){.profile-panel{padding:1rem}.profile-header{flex-direction:column;text-align:center}.section-content{padding:1rem}}.settings-panel{max-width:800px;margin:0 auto;padding:2rem 1rem}.settings-not-logged{text-align:center;padding:4rem 2rem}.settings-not-logged svg{color:#9ca3af;margin-bottom:1rem}.settings-not-logged h2{font-size:1.5rem;color:#111827;margin:0 0 .5rem}.settings-not-logged p{color:#6b7280;margin:0 0 1.5rem}.settings-header{margin-bottom:2rem}.settings-header h1{font-size:1.75rem;font-weight:700;color:#111827;margin:0 0 .25rem}.settings-header p{font-size:.9rem;color:#6b7280;margin:0}.settings-alert{display:flex;align-items:center;gap:.5rem;padding:.875rem 1rem;border-radius:.5rem;font-size:.875rem;margin-bottom:1rem}.settings-alert.success{background:#ecfdf5;border:1px solid #a7f3d0;color:#059669}.settings-alert.error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.settings-tabs{display:flex;gap:.5rem;padding:.25rem;background:#f3f4f6;border-radius:.5rem;margin-bottom:1.5rem}.settings-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:transparent;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s}.settings-tab:hover{color:#374151}.settings-tab.active{background:#fff;color:#10b981;box-shadow:0 1px 3px #0000001a}.settings-content{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;overflow:hidden}.settings-section{padding:1.5rem}.profile-avatar-section{display:flex;align-items:center;gap:1.25rem;padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.avatar-container{position:relative;width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);display:flex;align-items:center;justify-content:center;font-size:1.75rem;font-weight:600;color:#fff;overflow:hidden}.avatar-container img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.avatar-edit-btn{position:absolute;bottom:0;right:0;width:28px;height:28px;background:#fff;border:2px solid #e5e7eb;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#6b7280;cursor:pointer;transition:all .2s}.avatar-edit-btn:hover{background:#f3f4f6;color:#10b981}.avatar-info h3{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 .5rem}.tier-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .625rem;border-radius:1rem;font-size:.75rem;font-weight:600}.tier-badge.free{background:#f3f4f6;color:#6b7280}.tier-badge.premium{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#b45309}.tier-badge.guest{background:#f3f4f6;color:#9ca3af}.settings-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group label{display:flex;align-items:center;gap:.375rem;font-size:.875rem;font-weight:500;color:#374151}.form-group label svg{color:#6b7280}.form-group input,.form-group select{padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.9rem;transition:all .2s}.form-group input:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.form-group input:disabled{background:#f9fafb;color:#6b7280;cursor:not-allowed}.form-hint{font-size:.75rem;color:#9ca3af}.form-error{font-size:.75rem;color:#dc2626}.input-with-badge{position:relative}.input-with-badge input{width:100%;padding-right:100px}.verified-badge{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:#ecfdf5;color:#059669;font-size:.75rem;font-weight:500;border-radius:.25rem}.form-actions{display:flex;gap:.75rem;margin-top:.5rem}.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.875rem;font-weight:500;border:none;border-radius:.5rem;cursor:pointer;transition:all .2s}.primary-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857)}.primary-btn:disabled{opacity:.6;cursor:not-allowed}.secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;background:#fff;color:#374151;font-size:.875rem;font-weight:500;border:1px solid #e5e7eb;border-radius:.5rem;cursor:pointer;transition:all .2s}.secondary-btn:hover{background:#f3f4f6}.danger-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;background:#dc2626;color:#fff;font-size:.875rem;font-weight:500;border:none;border-radius:.5rem;cursor:pointer;transition:all .2s}.danger-btn:hover{background:#b91c1c}.danger-outline-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;background:#fff;color:#dc2626;font-size:.875rem;font-weight:500;border:1px solid #fecaca;border-radius:.5rem;cursor:pointer;transition:all .2s}.danger-outline-btn:hover{background:#fef2f2}.account-info{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.account-info h4{font-size:.9rem;font-weight:600;color:#374151;margin:0 0 1rem}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-label{font-size:.75rem;color:#9ca3af}.info-value{font-size:.875rem;color:#111827}.info-value.mono{font-family:monospace}.current-plan{display:flex;align-items:center;gap:1rem;padding:1.5rem;border-radius:.75rem;margin-bottom:1.5rem}.current-plan.free{background:#f3f4f6;border:1px solid #e5e7eb}.current-plan.premium{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fcd34d}.plan-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:#fff;border-radius:.75rem;color:#f59e0b}.current-plan.free .plan-icon{color:#6b7280}.plan-info{flex:1}.plan-label{font-size:.75rem;color:#6b7280}.plan-name{font-size:1.25rem;font-weight:600;color:#111827;margin:.125rem 0 .375rem}.plan-expiry{display:flex;align-items:center;gap:.375rem;font-size:.8rem;color:#92400e}.upgrade-btn{display:flex;align-items:center;gap:.375rem;padding:.625rem 1rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.875rem;font-weight:500;border:none;border-radius:.5rem;cursor:pointer}.upgrade-btn:hover{background:linear-gradient(135deg,#059669,#047857)}.pricing-options{margin-bottom:1.5rem}.pricing-options h4{font-size:.9rem;font-weight:600;color:#374151;margin:0 0 1rem}.pricing-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.pricing-option{position:relative;padding:1.25rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;text-align:center}.pricing-option.popular{border-color:#10b981;background:#fff}.popular-badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);padding:.25rem .75rem;background:#10b981;color:#fff;font-size:.625rem;font-weight:600;border-radius:1rem}.pricing-option h5{font-size:.9rem;font-weight:600;color:#111827;margin:0 0 .5rem}.option-price{margin-bottom:.5rem}.option-price .price{font-size:1.25rem;font-weight:700;color:#111827}.option-price .period{font-size:.8rem;color:#6b7280}.discount-badge{display:inline-block;padding:.125rem .5rem;background:#dcfce7;color:#15803d;font-size:.625rem;font-weight:600;border-radius:.25rem;margin-bottom:.75rem}.pricing-option button{width:100%}.transaction-history h4{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:#374151;margin:0 0 1rem}.no-transactions{text-align:center;padding:2rem;color:#9ca3af}.no-transactions svg{margin-bottom:.5rem}.transaction-list{display:flex;flex-direction:column;gap:.5rem}.transaction-item{display:flex;align-items:center;gap:1rem;padding:.875rem 1rem;background:#f9fafb;border-radius:.5rem}.tx-info{flex:1}.tx-plan{font-weight:500;color:#111827}.tx-date{display:block;font-size:.75rem;color:#9ca3af}.tx-amount{font-weight:600;color:#111827}.tx-status{padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500}.tx-status.pending{background:#fef3c7;color:#b45309}.tx-status.verified{background:#dcfce7;color:#15803d}.tx-status.rejected{background:#fee2e2;color:#dc2626}.security-section{padding:1.25rem;background:#f9fafb;border-radius:.75rem;margin-bottom:1rem}.security-section.danger{background:#fef2f2;border:1px solid #fecaca}.section-header{display:flex;align-items:center;gap:1rem}.section-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff;border-radius:.5rem;color:#6b7280}.section-icon.danger{background:#fee2e2;color:#dc2626}.section-header>div{flex:1}.section-header h4{font-size:.9rem;font-weight:600;color:#111827;margin:0}.section-header p{font-size:.8rem;color:#6b7280;margin:.125rem 0 0}.password-form{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:1rem}.password-input{position:relative}.password-input input{width:100%;padding-right:44px}.toggle-password{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#9ca3af;cursor:pointer;padding:.25rem}.toggle-password:hover{color:#6b7280}@media(max-width:640px){.settings-tab span{display:none}.info-grid,.pricing-cards{grid-template-columns:1fr}.profile-avatar-section{flex-direction:column;text-align:center}.section-header{flex-wrap:wrap}.section-header button{width:100%;margin-top:.75rem}.current-plan{flex-direction:column;text-align:center}.upgrade-btn{width:100%;justify-content:center}}.pricing-panel{max-width:1100px;margin:0 auto;padding:2rem 1rem}.pricing-hero{text-align:center;margin-bottom:2rem}.pricing-hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:linear-gradient(135deg,#fef3c7,#fde68a);color:#b45309;border-radius:2rem;font-size:.875rem;font-weight:600;margin-bottom:1rem}.pricing-hero h1{font-size:2rem;font-weight:700;color:#111827;margin:0 0 .75rem}.pricing-hero p{font-size:1.125rem;color:#6b7280;max-width:600px;margin:0 auto}.current-status{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;border-radius:.75rem;margin-bottom:2rem}.current-status.free{background:#f3f4f6;border:1px solid #e5e7eb}.current-status.premium{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fcd34d}.status-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#fff;color:#f59e0b}.current-status.free .status-icon{color:#6b7280}.status-info{display:flex;flex-direction:column;flex:1}.status-label{font-size:.75rem;color:#6b7280}.status-value{font-size:1.125rem;font-weight:600;color:#111827}.status-expiry{font-size:.875rem;color:#92400e}.pricing-cards-container{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:3rem}.pricing-card{position:relative;background:#fff;border:1px solid #e5e7eb;border-radius:1rem;padding:2rem;display:flex;flex-direction:column}.pricing-card.featured{border:2px solid #10b981;box-shadow:0 10px 40px #10b98126}.featured-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.375rem;padding:.375rem 1rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.75rem;font-weight:600;border-radius:2rem;white-space:nowrap}.card-header{margin-bottom:1.5rem}.card-header h3{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 .375rem}.card-header p{font-size:.875rem;color:#6b7280;margin:0}.card-price{display:flex;align-items:baseline;gap:.25rem;margin-bottom:.5rem}.price-amount{font-size:2rem;font-weight:700;color:#111827}.price-period{font-size:1rem;color:#6b7280}.price-savings{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.original-price{font-size:.875rem;color:#9ca3af;text-decoration:line-through}.savings-badge{padding:.125rem .5rem;background:#dcfce7;color:#15803d;font-size:.75rem;font-weight:600;border-radius:.25rem}.price-per-month{font-size:.875rem;color:#059669;font-weight:500;margin-bottom:1.5rem}.card-features{list-style:none;padding:0;margin:0 0 1.5rem;flex:1}.card-features li{display:flex;align-items:flex-start;gap:.625rem;padding:.5rem 0;font-size:.875rem;color:#4b5563}.card-features li svg{flex-shrink:0;color:#10b981;margin-top:.125rem}.card-button{width:100%;padding:.875rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.card-button.primary{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none}.card-button.primary:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.card-button.secondary{background:#fff;color:#374151;border:1px solid #e5e7eb}.card-button.secondary:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.card-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.comparison-section{margin-bottom:3rem}.comparison-section h2{text-align:center;font-size:1.5rem;font-weight:600;color:#111827;margin:0 0 1.5rem}.comparison-table-wrapper{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;overflow:hidden}.comparison-table th,.comparison-table td{padding:1rem 1.25rem;text-align:left}.comparison-table th{background:#f9fafb;font-weight:600;border-bottom:1px solid #e5e7eb}.tier-header{text-align:center!important;min-width:140px}.tier-header.premium{background:linear-gradient(135deg,#ecfdf5,#d1fae5)}.tier-header svg{display:inline-block;color:#f59e0b;margin-bottom:.25rem}.tier-name{display:block;font-size:.875rem;font-weight:600}.tier-price{display:block;font-size:.75rem;font-weight:400;color:#6b7280;margin-top:.25rem}.comparison-table tbody tr{border-bottom:1px solid #f3f4f6}.comparison-table tbody tr:last-child{border-bottom:none}.comparison-table tbody tr.highlight{background:#fefce8}.feature-cell{font-size:.875rem;color:#374151}.feature-info{display:flex;align-items:center;gap:.75rem}.feature-info svg{color:#6b7280;flex-shrink:0}.value-cell{text-align:center!important}.limit-text{font-size:.875rem;color:#6b7280}.unlimited-text{font-size:.875rem;color:#059669;font-weight:500}.value-cell svg.text-emerald-500{color:#10b981}.value-cell svg.text-gray-300{color:#d1d5db}.pricing-faq{margin-bottom:3rem}.pricing-faq h2{text-align:center;font-size:1.5rem;font-weight:600;color:#111827;margin:0 0 1.5rem}.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.faq-item{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem}.faq-item h4{font-size:1rem;font-weight:600;color:#111827;margin:0 0 .5rem}.faq-item p{font-size:.875rem;color:#6b7280;margin:0;line-height:1.6}.pricing-cta{text-align:center;padding:3rem 2rem;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-radius:1rem}.pricing-cta svg{color:#f59e0b;margin-bottom:1rem}.pricing-cta h3{font-size:1.5rem;font-weight:600;color:#111827;margin:0 0 .5rem}.pricing-cta p{font-size:1rem;color:#6b7280;margin:0 0 1.5rem}.cta-button{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 2rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:1rem;font-weight:600;border:none;border-radius:.5rem;cursor:pointer;transition:all .2s}.cta-button:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}@media(max-width:768px){.pricing-hero h1{font-size:1.5rem}.pricing-hero p{font-size:1rem}.pricing-cards-container{grid-template-columns:1fr}.pricing-card.featured{order:-1}.faq-grid{grid-template-columns:1fr}.comparison-table-wrapper{overflow-x:auto}.comparison-table{min-width:500px}.current-status{flex-wrap:wrap}.status-expiry{width:100%;margin-top:.5rem}}.admin-guard-container{display:flex;align-items:center;justify-content:center;min-height:400px;padding:2rem}.admin-guard-card{max-width:420px;width:100%;text-align:center;padding:2.5rem 2rem;background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;border:1px solid #e5e7eb}.admin-guard-card.denied{border-color:#fecaca;background:linear-gradient(to bottom,#fff5f5,#fff)}.admin-guard-icon{font-size:4rem;margin-bottom:1rem}.admin-guard-card h2{font-size:1.5rem;font-weight:700;color:#0f172a;margin:0 0 .75rem}.admin-guard-card.denied h2{color:#dc2626}.admin-guard-card p{font-size:1rem;color:#64748b;margin:0 0 1rem;line-height:1.6}.admin-guard-note{font-size:.875rem!important;color:#94a3b8!important;padding:.75rem;background:#f1f5f9;border-radius:8px;margin-bottom:1.5rem!important}.admin-guard-card .btn-primary{padding:.75rem 1.5rem;background:linear-gradient(to right,#3b82f6,#1e40af);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.admin-guard-card .btn-primary:hover{opacity:.9;transform:translateY(-1px)}.admin-guard-card .btn-secondary{padding:.75rem 1.5rem;background:#fff;color:#64748b;border:1px solid #e5e7eb;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.admin-guard-card .btn-secondary:hover{background:#f1f5f9;color:#475569}.admin-overview{display:flex;flex-direction:column;gap:1.5rem}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.stat-card{display:flex;align-items:center;gap:1rem;background:#fff;border-radius:12px;padding:1.25rem;border:1px solid #e5e7eb;border-top:4px solid #3b82f6}.stat-icon{font-size:2rem}.stat-content{display:flex;flex-direction:column}.stat-value{font-size:1.75rem;font-weight:700;color:#0f172a;line-height:1.2}.stat-label{font-size:.875rem;color:#64748b}.quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.quick-action{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s}.quick-action:hover{background:#f1f5f9;border-color:#3b82f6}.qa-icon{font-size:1.5rem}.qa-label{font-size:.8125rem;color:#475569;font-weight:500}.activity-list{display:flex;flex-direction:column;gap:.5rem}.activity-item{display:flex;align-items:center;gap:.75rem;padding:.625rem;background:#f8fafc;border-radius:6px}.activity-icon{font-size:1rem}.activity-text{flex:1;font-size:.875rem;color:#475569}.activity-time{font-size:.75rem;color:#94a3b8}.system-info{display:flex;flex-direction:column;gap:.5rem}.info-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #f1f5f9}.info-row:last-child{border-bottom:none}.info-label{font-size:.875rem;color:#64748b}.info-value{font-size:.875rem;color:#0f172a;font-weight:500}.admin-error{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#fef2f2;color:#dc2626;border-radius:8px;margin-bottom:1rem;font-size:.875rem}.admin-error button{background:none;border:none;color:#dc2626;cursor:pointer;padding:.25rem}.admin-modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.admin-modal{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 40px #0003}.admin-modal.large{max-width:700px}.admin-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb}.admin-modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#0f172a}.modal-close{background:#f1f5f9;border:none;width:28px;height:28px;border-radius:6px;cursor:pointer;font-size:1rem;color:#64748b}.modal-close:hover{background:#e2e8f0}.admin-modal-body{padding:1.25rem;overflow-y:auto}.admin-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid #e5e7eb;background:#f9fafb}.admin-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-hint{display:block;font-size:.75rem;color:#94a3b8;margin-top:.25rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-label input{width:auto}.faq-question{font-weight:500;color:#0f172a;margin-bottom:.25rem}.faq-answer-preview{font-size:.8125rem;color:#94a3b8}.category-badge{display:inline-block;padding:.25rem .5rem;background:#f1f5f9;color:#475569;border-radius:4px;font-size:.75rem;font-weight:500}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;border:none;transition:all .2s}.status-badge.published{background:#dcfce7;color:#166534}.status-badge.draft{background:#fef3c7;color:#854d0e}.status-badge:hover{opacity:.8}.action-buttons{display:flex;gap:.375rem}.btn-icon{padding:.375rem .5rem;background:#f1f5f9;border:1px solid #e5e7eb;border-radius:4px;cursor:pointer;font-size:.875rem;transition:all .2s}.btn-icon:hover{background:#e2e8f0}.btn-icon.danger:hover{background:#fef2f2;border-color:#fecaca}.article-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.article-card{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;transition:all .2s}.article-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #0000000d}.article-cover{height:120px;background-size:cover;background-position:center;background-color:#e2e8f0}.article-content{padding:1rem}.article-meta{display:flex;gap:.5rem;margin-bottom:.5rem}.article-title{font-size:1rem;font-weight:600;color:#0f172a;margin:0 0 .375rem;line-height:1.4}.article-excerpt{font-size:.8125rem;color:#64748b;margin:0 0 .75rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.article-stats{display:flex;gap:1rem;font-size:.75rem;color:#94a3b8;margin-bottom:.75rem}.article-actions{display:flex;gap:.5rem}.article-actions button{flex:1;padding:.5rem;font-size:.8125rem}@media(max-width:1024px){.stats-grid,.quick-actions{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.stats-grid{grid-template-columns:1fr}.quick-actions{grid-template-columns:1fr 1fr}.admin-form-row,.article-grid{grid-template-columns:1fr}}@media(max-width:480px){.admin-modal{max-width:100%;margin:.5rem}}.admin-stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.admin-stat-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem}.admin-stat-card .stat-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:.75rem;color:#fff}.admin-stat-card .stat-icon.pending{background:#f59e0b}.admin-stat-card .stat-icon.success{background:#10b981}.admin-stat-card .stat-icon.revenue{background:#3b82f6}.admin-stat-card .stat-icon.default{background:#6b7280}.admin-stat-card .stat-icon.premium{background:#f59e0b}.admin-stat-card .stat-icon.admin{background:#ef4444}.admin-stat-card .stat-info{display:flex;flex-direction:column}.admin-stat-card .stat-value{font-size:1.5rem;font-weight:700;color:#111827}.admin-stat-card .stat-label{font-size:.75rem;color:#6b7280}.admin-filters{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.filter-tabs{display:flex;gap:.25rem;background:#f3f4f6;padding:.25rem;border-radius:.5rem}.filter-tab{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:transparent;border:none;border-radius:.375rem;font-size:.8rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s}.filter-tab:hover{color:#374151}.filter-tab.active{background:#fff;color:#111827;box-shadow:0 1px 2px #0000000d}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 .375rem;background:#ef4444;color:#fff;font-size:.625rem;font-weight:600;border-radius:9px}.filter-group{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.filter-actions{display:flex;gap:.5rem;align-items:center}.search-input{position:relative;display:flex;align-items:center}.search-input svg{position:absolute;left:.75rem;color:#9ca3af}.search-input input{padding:.5rem .75rem .5rem 2.25rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;width:240px}.search-input input:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.filter-select{padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;background:#fff;cursor:pointer}.refresh-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;color:#6b7280;cursor:pointer;transition:all .2s}.refresh-btn:hover:not(:disabled){background:#f3f4f6;color:#10b981}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.refresh-btn .spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.add-btn,.export-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:#10b981;color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.add-btn:hover,.export-btn:hover{background:#059669}.export-btn{background:#fff;color:#374151;border:1px solid #e5e7eb}.export-btn:hover{background:#f3f4f6}.admin-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;color:#dc2626;font-size:.875rem;margin-bottom:1rem}.admin-success{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:.5rem;color:#059669;font-size:.875rem;margin-bottom:1rem}.admin-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;overflow:hidden}.admin-table th,.admin-table td{padding:.75rem 1rem;text-align:left;font-size:.875rem}.admin-table th{background:#f9fafb;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb}.admin-table td{border-bottom:1px solid #f3f4f6;color:#4b5563}.admin-table tr:hover td{background:#f9fafb}.admin-table .empty-cell{text-align:center;padding:2rem;color:#9ca3af}.cell-id{font-family:monospace;font-size:.8rem;color:#6b7280}.cell-user .user-info{display:flex;flex-direction:column}.cell-user .user-name{font-weight:500;color:#111827}.cell-user .user-email,.cell-user .user-username{font-size:.75rem;color:#9ca3af}.cell-amount{font-weight:600}.cell-amount .discount-note{display:block;font-size:.75rem;color:#10b981;font-weight:400}.cell-date{font-size:.8rem;color:#6b7280}.cell-actions{display:flex;gap:.25rem}.action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid #e5e7eb;border-radius:.375rem;color:#6b7280;cursor:pointer;transition:all .2s}.action-btn:hover{background:#f3f4f6;color:#10b981}.action-btn.danger:hover{background:#fef2f2;color:#ef4444;border-color:#fecaca}.plan-badge{display:inline-block;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500}.plan-badge.monthly{background:#e0e7ff;color:#4338ca}.plan-badge.yearly{background:#fef3c7;color:#b45309}.voucher-badge{display:inline-block;padding:.25rem .5rem;background:#f3f4f6;color:#374151;border-radius:.25rem;font-size:.75rem;font-family:monospace}.status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500;color:#fff}.status-badge.large{padding:.5rem .75rem;font-size:.875rem}.status-badge.active{background:#10b981}.status-badge.inactive{background:#6b7280}.status-badge.expired{background:#ef4444}.status-badge.upcoming{background:#3b82f6}.role-badge{display:inline-block;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500;color:#fff}.tier-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500;color:#fff}.proof-modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.proof-modal{background:#fff;border-radius:1rem;width:100%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.proof-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb}.proof-modal-header h3{margin:0;font-size:1.125rem;font-weight:600}.close-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#6b7280;cursor:pointer}.close-btn:hover{color:#111827}.proof-modal-content{padding:1.25rem;overflow-y:auto}.proof-info{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:#f9fafb;border-radius:.5rem;margin-bottom:1rem}.proof-info .info-row{display:flex;justify-content:space-between;font-size:.875rem}.proof-info .info-row span{color:#6b7280}.proof-info .info-row strong{color:#111827}.proof-image-container{position:relative;margin-bottom:1rem}.proof-image{width:100%;max-height:300px;-o-object-fit:contain;object-fit:contain;border-radius:.5rem;border:1px solid #e5e7eb}.open-image-btn{display:inline-flex;align-items:center;gap:.25rem;margin-top:.5rem;font-size:.875rem;color:#10b981;text-decoration:none}.open-image-btn:hover{text-decoration:underline}.verify-section{margin-top:1rem}.verify-section textarea{width:100%;padding:.75rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;resize:vertical;margin-bottom:.75rem}.verify-actions{display:flex;gap:.75rem}.reject-btn,.approve-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.75rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.reject-btn{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.reject-btn:hover:not(:disabled){background:#fee2e2}.approve-btn{background:#10b981;color:#fff}.approve-btn:hover:not(:disabled){background:#059669}.reject-btn:disabled,.approve-btn:disabled{opacity:.6;cursor:not-allowed}.processed-info{text-align:center;padding:1rem}.admin-notes{margin:1rem 0 .5rem;font-size:.875rem;color:#4b5563}.verified-time{font-size:.75rem;color:#9ca3af}.cell-code .code-container{display:flex;align-items:center;gap:.5rem}.voucher-code{font-family:monospace;font-weight:600;color:#111827}.copy-code-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;color:#9ca3af;cursor:pointer}.copy-code-btn:hover{color:#10b981}.type-badge{display:inline-block;padding:.25rem .5rem;background:#f3f4f6;color:#374151;border-radius:.25rem;font-size:.75rem}.cell-value{font-weight:600;color:#059669}.cell-usage{font-size:.875rem}.cell-period .period-info{display:flex;flex-direction:column;gap:.125rem;font-size:.75rem}.period-separator{color:#9ca3af}.expired-row{opacity:.6}.form-modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.form-modal{background:#fff;border-radius:1rem;width:100%;max-width:480px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.form-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb}.form-modal-header h3{margin:0;font-size:1.125rem;font-weight:600}.voucher-form{padding:1.25rem;overflow-y:auto}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.375rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem .75rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.code-input-group{display:flex;gap:.5rem}.code-input-group input{flex:1}.generate-btn{padding:.625rem 1rem;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;color:#374151;cursor:pointer}.generate-btn:hover{background:#e5e7eb}.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{width:auto}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.cancel-btn{padding:.625rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;color:#6b7280;cursor:pointer}.cancel-btn:hover:not(:disabled){background:#f3f4f6}.submit-btn{padding:.625rem 1rem;background:#10b981;color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer}.submit-btn:hover:not(:disabled){background:#059669}.submit-btn:disabled,.cancel-btn:disabled{opacity:.6;cursor:not-allowed}.user-avatar{width:36px;height:36px;border-radius:50%;background:#e5e7eb;display:flex;align-items:center;justify-content:center;font-weight:600;color:#6b7280;font-size:.875rem;overflow:hidden}.user-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.cell-user .user-info{display:flex;align-items:center;gap:.75rem}.cell-email .email-info{display:flex;align-items:center;gap:.375rem;color:#6b7280}.cell-premium-status .premium-expired{display:flex;align-items:center;gap:.25rem;color:#ef4444;font-size:.8rem}.cell-premium-status .premium-active{display:flex;align-items:center;gap:.25rem;color:#10b981;font-size:.8rem}.cell-premium-status .premium-na{color:#9ca3af}.actions-dropdown{position:relative}.actions-menu{position:absolute;top:100%;right:0;z-index:100;min-width:180px;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 10px 20px #0000001a;overflow:hidden}.menu-section{padding:.5rem}.menu-section+.menu-section{border-top:1px solid #e5e7eb}.menu-label{display:block;padding:.375rem .5rem;font-size:.7rem;font-weight:600;color:#9ca3af;text-transform:uppercase}.menu-section button{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem;background:transparent;border:none;font-size:.875rem;color:#374151;cursor:pointer;border-radius:.25rem;text-align:left}.menu-section button:hover:not(:disabled){background:#f3f4f6}.menu-section button:disabled{opacity:.5;cursor:not-allowed}.menu-section button.danger{color:#dc2626}.menu-section button.danger:hover:not(:disabled){background:#fef2f2}.dropdown-backdrop{position:fixed;inset:0;z-index:50}.pricing-management{display:flex;flex-direction:column;gap:1.5rem}.pricing-header{display:flex;justify-content:space-between;align-items:center}.pricing-header h3{display:flex;align-items:center;gap:.5rem;margin:0;font-size:1.125rem;font-weight:600}.edit-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;color:#374151;cursor:pointer}.edit-btn:hover{background:#f3f4f6}.edit-actions{display:flex;gap:.5rem}.save-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:#10b981;color:#fff;border:none;border-radius:.5rem;font-size:.875rem;cursor:pointer}.save-btn:hover:not(:disabled){background:#059669}.save-btn:disabled{opacity:.6;cursor:not-allowed}.pricing-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.pricing-card{position:relative;padding:1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem}.pricing-card.featured{border-color:#10b981;border-width:2px}.card-badge{position:absolute;top:-10px;right:1rem;padding:.25rem .75rem;background:#10b981;color:#fff;font-size:.75rem;font-weight:600;border-radius:.25rem}.card-header h4{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#111827}.price-input-group{margin-bottom:.5rem}.price-input-group label{display:block;font-size:.75rem;color:#6b7280;margin-bottom:.25rem}.price-input-group input{width:100%;padding:.625rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:1.25rem;font-weight:700}.price-display{font-size:1.5rem;font-weight:700;color:#111827}.price-per-month{font-size:.875rem;color:#6b7280;margin-bottom:.75rem}.savings-info{display:flex;align-items:center;gap:.5rem}.savings-badge{padding:.25rem .5rem;background:#dcfce7;color:#15803d;font-size:.75rem;font-weight:600;border-radius:.25rem}.savings-amount{font-size:.75rem;color:#6b7280}.limits-section{padding:1.5rem;background:#f9fafb;border-radius:.75rem}.limits-section h4{margin:0 0 .5rem;font-size:1rem;font-weight:600}.limits-description{font-size:.875rem;color:#6b7280;margin:0 0 1rem}.limits-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}.limit-item{padding:1rem;background:#fff;border-radius:.5rem;text-align:center}.limit-label{display:block;font-size:.75rem;color:#6b7280;margin-bottom:.25rem}.limit-value{font-size:.875rem;font-weight:600;color:#111827}.comparison-section{padding:1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem}.comparison-section h4{margin:0 0 1rem;font-size:1rem;font-weight:600}.comparison-table{width:100%;border-collapse:collapse}.comparison-table th,.comparison-table td{padding:.75rem;text-align:left;border-bottom:1px solid #e5e7eb;font-size:.875rem}.comparison-table th{font-weight:600;background:#f9fafb}.comparison-table td:nth-child(2),.comparison-table td:nth-child(3){text-align:center}.comparison-table tr:last-child td{border-bottom:none}@media(max-width:768px){.admin-filters{flex-direction:column;align-items:stretch}.filter-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.search-input input{width:100%}.admin-table-container{overflow-x:auto}.pricing-cards{grid-template-columns:1fr}.limits-grid{grid-template-columns:repeat(2,1fr)}.form-row{grid-template-columns:1fr}}.admin-dashboard{min-height:100%;background:#f8fafc}.admin-header{background:linear-gradient(135deg,#1e293b,#0f172a);padding:2rem;color:#fff}.admin-header-content{max-width:1200px;margin:0 auto}.admin-header h1{display:flex;align-items:center;gap:.75rem;font-size:1.75rem;font-weight:700;margin:0 0 .5rem}.admin-icon{font-size:1.5rem}.admin-header p{margin:0;color:#94a3b8;font-size:1rem}.admin-tabs{display:flex;gap:0;background:#fff;border-bottom:1px solid #e5e7eb;padding:0 1rem;max-width:1200px;margin:0 auto}.admin-tab{display:flex;align-items:center;gap:.5rem;padding:1rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;color:#64748b;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s}.admin-tab:hover{color:#1e293b;background:#f8fafc}.admin-tab.active{color:#3b82f6;border-bottom-color:#3b82f6}.tab-icon{font-size:1.125rem}.admin-content{max-width:1200px;margin:0 auto;padding:1.5rem}.admin-section{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden;margin-bottom:1.5rem}.admin-section-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb;background:#fafafa}.admin-section-header h2{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:600;color:#0f172a;margin:0}.admin-section-body{padding:1.25rem}.btn-admin-primary{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:linear-gradient(to right,#3b82f6,#1e40af);color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-admin-primary:hover:not(:disabled){opacity:.9}.btn-admin-primary:disabled{opacity:.5;cursor:not-allowed}.btn-admin-secondary{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:#fff;color:#64748b;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-admin-secondary:hover:not(:disabled){background:#f1f5f9;color:#475569}.btn-admin-danger{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-admin-danger:hover:not(:disabled){background:#fee2e2}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e5e7eb}.admin-table th{font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;background:#f9fafb}.admin-table td{font-size:.9375rem;color:#0f172a}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:#f8fafc}.admin-form-group{margin-bottom:1rem}.admin-form-group label{display:block;font-size:.875rem;font-weight:500;color:#475569;margin-bottom:.375rem}.admin-form-group input,.admin-form-group textarea,.admin-form-group select{width:100%;padding:.625rem .875rem;border:1px solid #e5e7eb;border-radius:6px;font-size:.9375rem;color:#0f172a;background:#fff;transition:border-color .2s}.admin-form-group input:focus,.admin-form-group textarea:focus,.admin-form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.admin-form-group textarea{min-height:100px;resize:vertical}.admin-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;color:#64748b}.admin-empty .empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.admin-empty p{margin:0}.admin-loading{display:flex;align-items:center;justify-content:center;padding:3rem;color:#64748b}.admin-loading .spinner{animation:spin 1s linear infinite;font-size:2rem;margin-right:.75rem}@media(max-width:768px){.admin-header{padding:1.5rem 1rem}.admin-header h1{font-size:1.25rem}.admin-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-tab{padding:.75rem 1rem;white-space:nowrap}.admin-content{padding:1rem}}.main-canvas{min-height:calc(100vh - 64px);background:#f8fafc}.content-frame{max-width:1440px;margin:0 auto;position:relative}.panel{width:100%;min-height:calc(100vh - 64px)}.panel.active{display:block}.panel.hidden{display:none}.footer{background:linear-gradient(to bottom,#1e293b,#0f172a);padding:2rem;text-align:center}.footer-container{max-width:1200px;margin:0 auto}.footer-logo{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:.75rem}.footer-logo .logo-main{font-size:1.5rem;font-weight:700;color:#10b981}.footer-logo .logo-tagline{font-size:.875rem;color:#94a3b8}.footer-description{color:#94a3b8;font-size:.875rem;margin-bottom:.5rem}.footer-copyright{color:#64748b;font-size:.75rem}.login-modal-overlay{position:fixed;inset:0;z-index:200;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem}.login-modal-content{position:relative;background:#fff;border-radius:1rem;box-shadow:0 20px 25px -5px #0000001a;max-width:420px;width:100%;max-height:90vh;overflow-y:auto;padding:2rem;animation:modalFadeIn .2s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-close{position:absolute;top:1rem;right:1rem;width:32px;height:32px;border:none;background:#f1f5f9;border-radius:8px;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.modal-close:hover{background:#e2e8f0;color:#334155}.modal-header{text-align:center;margin-bottom:1.5rem}.modal-title{font-size:1.5rem;font-weight:700;color:#0f172a;margin-bottom:.5rem}.modal-subtitle{font-size:.875rem;color:#64748b}.alert{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;margin-bottom:.5rem}.alert-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.alert-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.modal-form{display:flex;flex-direction:column;gap:1rem}.input-with-icon{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:.875rem;color:#94a3b8;pointer-events:none}.input-with-icon input{width:100%;padding:.75rem 1rem .75rem 2.75rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.9375rem;transition:all .2s}.input-with-icon input:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.password-toggle{position:absolute;right:.5rem;padding:.5rem;border:none;background:transparent;color:#94a3b8;cursor:pointer;display:flex;align-items:center;justify-content:center}.password-toggle:hover{color:#64748b}.submit-btn{padding:.875rem 1rem;border:none;background:linear-gradient(to right,#10b981,#059669);color:#fff;font-size:1rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s}.submit-btn:hover:not(:disabled){background:linear-gradient(to right,#059669,#047857);transform:translateY(-1px)}.submit-btn:disabled{background:#cbd5e1;cursor:not-allowed;transform:none}.divider{display:flex;align-items:center;text-align:center;color:#94a3b8;font-size:.875rem}.divider:before,.divider:after{content:"";flex:1;border-bottom:1px solid #e5e7eb}.divider span{padding:0 .75rem}.google-btn{width:100%;padding:.75rem 1rem;border:2px solid #e5e7eb;background:#fff;border-radius:8px;font-size:.9375rem;font-weight:500;color:#334155;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.google-btn:hover:not(:disabled){border-color:#cbd5e1;background:#f8fafc}.google-btn:disabled{opacity:.6;cursor:not-allowed}.form-footer{text-align:center;font-size:.875rem;color:#64748b;margin-top:.5rem}.link-btn{background:none;border:none;color:#10b981;font-weight:600;cursor:pointer;padding:0;font-size:inherit}.link-btn:hover{color:#059669;text-decoration:underline}.verify-email-view{text-align:center;padding:1rem 0}.verify-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;margin:0 auto 1.5rem;background:linear-gradient(to right,#10b981,#059669);border-radius:50%;color:#fff}.verify-title{font-size:1.25rem;font-weight:700;color:#0f172a;margin-bottom:1rem}.verify-text{font-size:.875rem;color:#64748b;margin-bottom:.25rem}.verify-email{font-size:1rem;font-weight:600;color:#0f172a;margin-bottom:1rem}.verify-instruction{font-size:.8125rem;color:#94a3b8;line-height:1.5;margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column}.field-error{font-size:.75rem;color:#dc2626;margin-top:.25rem}.field-hint{font-size:.75rem;color:#94a3b8;margin-top:.25rem}.input-with-icon.has-error input{border-color:#fca5a5}.input-with-icon.has-error input:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.input-with-icon.is-checking input{border-color:#60a5fa}.input-checking{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:.75rem;color:#3b82f6;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.remember-row{flex-direction:row;justify-content:space-between;align-items:center}.remember-me{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:#475569}.remember-me input[type=checkbox]{width:16px;height:16px;accent-color:#10b981;cursor:pointer}.forgot-link{font-size:.875rem}@media(max-width:640px){.login-modal-content{padding:1.5rem;margin:.5rem}.modal-title{font-size:1.25rem}}.login-modal-content.oauth-only{max-width:400px;padding:2rem}.oauth-buttons{display:flex;flex-direction:column;gap:12px;margin:24px 0}.oauth-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:14px 16px;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.oauth-btn:disabled{opacity:.6;cursor:not-allowed}.oauth-btn svg{flex-shrink:0}.oauth-btn.google-btn{background:#fff;border:1px solid #dadce0;color:#3c4043}.oauth-btn.google-btn:hover:not(:disabled){background:#f8f9fa;border-color:#dadce0;box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326}.oauth-btn.facebook-btn{background:#1877f2;color:#fff;border:none}.oauth-btn.facebook-btn:hover:not(:disabled){background:#166fe5}.terms-text{text-align:center;font-size:12px;color:#64748b;margin-top:20px;line-height:1.5}.terms-text a{color:#10b981;text-decoration:none}.terms-text a:hover{text-decoration:underline}.hamburger-overlay{position:fixed;inset:0;z-index:150;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.hamburger-drawer{position:fixed;top:0;right:0;bottom:0;z-index:160;width:320px;max-width:85vw;background:#fff;box-shadow:-8px 0 30px #00000026;display:flex;flex-direction:column;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border:none;background:#f1f5f9;border-radius:50%;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:10}.drawer-close:hover{background:#e2e8f0;color:#334155}.drawer-user-section{padding:60px 20px 20px;background:linear-gradient(135deg,#1e3a8a,#1e40af);color:#fff}.user-info{display:flex;align-items:center;gap:14px}.user-avatar{width:56px;height:56px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;border:2px solid rgba(255,255,255,.3)}.user-details{display:flex;flex-direction:column;gap:2px}.user-name{font-size:1.125rem;font-weight:600}.user-email{font-size:.8125rem;opacity:.8}.guest-info{display:flex;align-items:center;gap:12px;opacity:.9}.guest-info span{font-size:1rem;font-weight:500}.drawer-nav{flex:1;padding:12px;display:flex;flex-direction:column;gap:4px;overflow-y:auto}.drawer-item{display:flex;align-items:center;gap:14px;padding:14px 16px;border:none;background:#fff;border-radius:10px;cursor:pointer;text-align:left;transition:all .2s;width:100%}.drawer-item:hover{background:#f1f5f9}.drawer-item.active{background:#eff6ff;color:#1e40af}.drawer-item.active .item-label{color:#1e40af;font-weight:600}.item-icon{font-size:1.375rem;width:28px;text-align:center}.item-label{font-size:.9375rem;font-weight:500;color:#334155}.drawer-divider{height:1px;background:#e5e7eb;margin:8px 16px}.drawer-actions{padding:0 12px 12px;display:flex;flex-direction:column;gap:4px}.drawer-item.admin-item{background:#fef3c7}.drawer-item.admin-item:hover{background:#fde68a}.drawer-item.admin-item .item-label{color:#92400e}.drawer-item.logout{color:#dc2626}.drawer-item.logout:hover{background:#fef2f2}.drawer-item.logout .item-label{color:#dc2626}.drawer-item.login{background:linear-gradient(to right,#3b82f6,#1e40af);color:#fff}.drawer-item.login:hover{opacity:.9}.drawer-item.login .item-label{color:#fff}.drawer-footer{padding:16px 20px;border-top:1px solid #e5e7eb;text-align:center}.drawer-footer p{margin:0;font-size:.8125rem;color:#64748b}.drawer-footer .version{margin-top:4px;font-size:.75rem;color:#94a3b8}@media(max-width:480px){.hamburger-drawer{width:100%;max-width:100%}}@media(min-width:769px){.hamburger-overlay,.hamburger-drawer{display:none}}.ai-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.ai-modal{background:#fff;border-radius:24px;max-width:480px;width:100%;padding:2.5rem;text-align:center;position:relative;animation:slideUp .3s ease-out;box-shadow:0 20px 60px #0003}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ai-modal-close{position:absolute;top:1rem;right:1rem;width:36px;height:36px;border:none;background:#f1f5f9;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#64748b;transition:all .2s}.ai-modal-close:hover{background:#e2e8f0;color:#334155}.ai-modal-icon{width:80px;height:80px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);border-radius:50%;display:flex;align-items:center;justify-content:center;animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.ai-modal-icon svg{width:40px;height:40px;color:#fff}.ai-modal h2{font-size:1.75rem;font-weight:800;color:#0f172a;margin:0 0 .75rem}.ai-modal-subtitle{font-size:1rem;color:#64748b;margin:0 0 1.5rem;line-height:1.6}.ai-features{text-align:left;margin-bottom:2rem}.ai-feature-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid #f1f5f9}.ai-feature-item:last-child{border-bottom:none}.ai-feature-icon{font-size:1.25rem}.ai-feature-text{font-size:.9375rem;color:#334155}.ai-email-form{margin-bottom:1.5rem}.ai-email-label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.5rem;text-align:left}.ai-email-input-wrapper{display:flex;gap:.5rem}.ai-email-input{flex:1;padding:.875rem 1rem;border:2px solid #e5e7eb;border-radius:10px;font-size:.9375rem;outline:none;transition:all .2s}.ai-email-input:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.ai-email-input::-moz-placeholder{color:#9ca3af}.ai-email-input::placeholder{color:#9ca3af}.ai-submit-btn{padding:.875rem 1.5rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.ai-submit-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf666}.ai-submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.ai-success-message{padding:1rem;background:#dcfce7;border:1px solid #bbf7d0;border-radius:10px;color:#15803d;font-size:.9375rem;font-weight:500;margin-bottom:1rem}.ai-error-message{padding:1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#dc2626;font-size:.9375rem;font-weight:500;margin-bottom:1rem}.ai-modal-footer{font-size:.8125rem;color:#9ca3af}.ai-modal-footer a{color:#8b5cf6;text-decoration:none;font-weight:500}.ai-modal-footer a:hover{text-decoration:underline}@media(max-width:480px){.ai-modal{padding:1.5rem;border-radius:16px}.ai-modal h2{font-size:1.5rem}.ai-email-input-wrapper{flex-direction:column}.ai-submit-btn{width:100%}}.ai-assistant-button{position:fixed;bottom:2rem;right:2rem;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#ec4899);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #8b5cf666;z-index:999;transition:all .3s ease}.ai-assistant-button:hover{transform:scale(1.1);box-shadow:0 6px 28px #8b5cf680}.ai-assistant-button:active{transform:scale(.95)}.ai-assistant-button svg{width:28px;height:28px;color:#fff}.ai-assistant-button:before{content:"";position:absolute;width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#ec4899);animation:pulse 2s ease-out infinite;z-index:-1}@keyframes pulse{0%{transform:scale(1);opacity:.7}to{transform:scale(1.5);opacity:0}}.ai-assistant-tooltip{position:absolute;bottom:calc(100% + .75rem);right:0;padding:.5rem 1rem;background:#1e293b;color:#fff;font-size:.8125rem;font-weight:500;border-radius:8px;white-space:nowrap;opacity:0;visibility:hidden;transform:translateY(8px);transition:all .2s ease}.ai-assistant-tooltip:after{content:"";position:absolute;bottom:-6px;right:20px;width:12px;height:12px;background:#1e293b;transform:rotate(45deg)}.ai-assistant-button:hover .ai-assistant-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.ai-badge{position:absolute;top:-4px;right:-4px;width:20px;height:20px;background:#ef4444;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:700;color:#fff;border:2px solid white}@media(max-width:640px){.ai-assistant-button{bottom:1rem;right:1rem;width:48px;height:48px}.ai-assistant-button svg{width:24px;height:24px}}.offline-banner{position:fixed;top:0;left:0;right:0;background:linear-gradient(to right,#fbbf24,#f59e0b);color:#78350f;padding:10px 16px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:.875rem;font-weight:500;z-index:10000;animation:slideDown .3s ease;box-shadow:0 2px 8px #0000001a}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@media(max-width:480px){.offline-banner{font-size:.8125rem;padding:8px 12px}}.install-pwa-banner{position:fixed;inset:80px 20px auto auto;max-width:320px;background:linear-gradient(135deg,#1e3a5f,#2563eb);color:#fff;padding:16px 20px;border-radius:12px;display:flex;flex-direction:column;gap:12px;z-index:1000;animation:slideInRight .4s ease-out;box-shadow:0 8px 32px #0003}@keyframes slideInRight{0%{transform:translate(120%);opacity:0}to{transform:translate(0);opacity:1}}.install-pwa-content{display:flex;align-items:flex-start;gap:12px}.install-pwa-content>svg{flex-shrink:0;margin-top:2px}.install-pwa-text{display:flex;flex-direction:column;gap:4px}.install-pwa-text strong{font-size:1rem;font-weight:600}.install-pwa-text span{font-size:.8125rem;opacity:.9;line-height:1.4}.install-pwa-actions{display:flex;align-items:center;gap:10px;width:100%}.btn-install{flex:1;padding:10px 20px;background:#fff;color:#1e3a5f;border:none;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-install:hover{background:#f1f5f9;transform:scale(1.02)}.btn-dismiss{width:36px;height:36px;background:#ffffff26;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.btn-dismiss:hover{background:#ffffff40}@media(max-width:480px){.install-pwa-banner{inset:auto 16px 20px;max-width:none;animation:slideUp .4s ease-out}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{min-height:100vh;display:flex;flex-direction:column;background:#f8fafc}.app .main-canvas{flex:1}.app-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#1e40af,#3b82f6)}.app-loading-content{text-align:center;color:#fff}.app-loading-logo{font-size:3rem;font-weight:700;letter-spacing:.1em;margin-bottom:1.5rem;text-shadow:0 2px 10px rgba(0,0,0,.2)}.app-loading-spinner{width:48px;height:48px;margin:0 auto 1rem;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}.app-loading-text{font-size:1rem;opacity:.9}*,: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}body{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1));font-family:Inter,system-ui,-apple-system,sans-serif}.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}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{left:0;right:0}.bottom-0{bottom:0}.left-0{left:0}.left-3{left:.75rem}.right-0{right:0}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-4{top:1rem}.top-full{top:100%}.z-40{z-index:40}.z-50{z-index:50}.z-\[60\]{z-index:60}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.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}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.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{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-20{height:5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-\[500px\]{height:500px}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[calc\(85vh-140px\)\]{max-height:calc(85vh - 140px)}.min-h-\[200px\]{min-height:200px}.min-h-\[600px\]{min-height:600px}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-20{width:5rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-\[200px\]{min-width:200px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-7xl{max-width:80rem}.max-w-\[80\%\]{max-width:80%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.flex-grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-y-1\/2{--tw-translate-y: -50%;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 fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,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-start{justify-content:flex-start}.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-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-16>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(4rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(4rem * var(--tw-space-y-reverse))}.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))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity, 1))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{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-t-2xl{border-top-left-radius:1rem;border-top-right-radius:1rem}.rounded-bl-none{border-bottom-left-radius:0}.rounded-br-none{border-bottom-right-radius:0}.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-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-dashed{border-style:dashed}.border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity, 1))}.border-amber-300{--tw-border-opacity: 1;border-color:rgb(252 211 77 / var(--tw-border-opacity, 1))}.border-amber-400{--tw-border-opacity: 1;border-color:rgb(251 191 36 / 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-300{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.border-blue-400{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-cyan-300{--tw-border-opacity: 1;border-color:rgb(103 232 249 / var(--tw-border-opacity, 1))}.border-cyan-400{--tw-border-opacity: 1;border-color:rgb(34 211 238 / var(--tw-border-opacity, 1))}.border-emerald-300{--tw-border-opacity: 1;border-color:rgb(110 231 183 / var(--tw-border-opacity, 1))}.border-emerald-400{--tw-border-opacity: 1;border-color:rgb(52 211 153 / var(--tw-border-opacity, 1))}.border-emerald-500{--tw-border-opacity: 1;border-color:rgb(16 185 129 / var(--tw-border-opacity, 1))}.border-emerald-600{--tw-border-opacity: 1;border-color:rgb(5 150 105 / var(--tw-border-opacity, 1))}.border-fuchsia-200{--tw-border-opacity: 1;border-color:rgb(245 208 254 / 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-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-indigo-200{--tw-border-opacity: 1;border-color:rgb(199 210 254 / var(--tw-border-opacity, 1))}.border-purple-200{--tw-border-opacity: 1;border-color:rgb(233 213 255 / var(--tw-border-opacity, 1))}.border-purple-400{--tw-border-opacity: 1;border-color:rgb(192 132 252 / var(--tw-border-opacity, 1))}.border-purple-500{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.border-rose-200{--tw-border-opacity: 1;border-color:rgb(254 205 211 / var(--tw-border-opacity, 1))}.border-rose-300{--tw-border-opacity: 1;border-color:rgb(253 164 175 / var(--tw-border-opacity, 1))}.border-rose-400{--tw-border-opacity: 1;border-color:rgb(251 113 133 / var(--tw-border-opacity, 1))}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-slate-300{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.border-slate-400{--tw-border-opacity: 1;border-color:rgb(148 163 184 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-violet-300{--tw-border-opacity: 1;border-color:rgb(196 181 253 / var(--tw-border-opacity, 1))}.border-violet-400{--tw-border-opacity: 1;border-color:rgb(167 139 250 / var(--tw-border-opacity, 1))}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.border-yellow-300{--tw-border-opacity: 1;border-color:rgb(253 224 71 / var(--tw-border-opacity, 1))}.border-yellow-400{--tw-border-opacity: 1;border-color:rgb(250 204 21 / var(--tw-border-opacity, 1))}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/50{background-color:#00000080}.bg-black\/70{background-color:#000000b3}.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-cyan-50{--tw-bg-opacity: 1;background-color:rgb(236 254 255 / var(--tw-bg-opacity, 1))}.bg-emerald-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / 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-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / 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-purple-600{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / 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-rose-100{--tw-bg-opacity: 1;background-color:rgb(255 228 230 / var(--tw-bg-opacity, 1))}.bg-rose-50{--tw-bg-opacity: 1;background-color:rgb(255 241 242 / var(--tw-bg-opacity, 1))}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-violet-50{--tw-bg-opacity: 1;background-color:rgb(245 243 255 / var(--tw-bg-opacity, 1))}.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-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.bg-opacity-50{--tw-bg-opacity: .5}.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-blue-50{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-600{--tw-gradient-from: #2563eb var(--tw-gradient-from-position);--tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-emerald-50{--tw-gradient-from: #ecfdf5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 253 245 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-emerald-500{--tw-gradient-from: #10b981 var(--tw-gradient-from-position);--tw-gradient-to: rgb(16 185 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-emerald-600{--tw-gradient-from: #059669 var(--tw-gradient-from-position);--tw-gradient-to: rgb(5 150 105 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-emerald-700{--tw-gradient-from: #047857 var(--tw-gradient-from-position);--tw-gradient-to: rgb(4 120 87 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-fuchsia-50{--tw-gradient-from: #fdf4ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(253 244 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-50{--tw-gradient-from: #f0fdf4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(240 253 244 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from: #a855f7 var(--tw-gradient-from-position);--tw-gradient-to: rgb(168 85 247 / 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-50{--tw-gradient-from: #fef2f2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(254 242 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-yellow-50{--tw-gradient-from: #fefce8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(254 252 232 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-blue-100{--tw-gradient-to: #dbeafe var(--tw-gradient-to-position)}.to-blue-700{--tw-gradient-to: #1d4ed8 var(--tw-gradient-to-position)}.to-cyan-600{--tw-gradient-to: #0891b2 var(--tw-gradient-to-position)}.to-emerald-700{--tw-gradient-to: #047857 var(--tw-gradient-to-position)}.to-fuchsia-100{--tw-gradient-to: #fae8ff var(--tw-gradient-to-position)}.to-green-100{--tw-gradient-to: #dcfce7 var(--tw-gradient-to-position)}.to-pink-500{--tw-gradient-to: #ec4899 var(--tw-gradient-to-position)}.to-purple-700{--tw-gradient-to: #7e22ce var(--tw-gradient-to-position)}.to-red-100{--tw-gradient-to: #fee2e2 var(--tw-gradient-to-position)}.to-teal-50{--tw-gradient-to: #f0fdfa var(--tw-gradient-to-position)}.to-teal-500{--tw-gradient-to: #14b8a6 var(--tw-gradient-to-position)}.to-teal-600{--tw-gradient-to: #0d9488 var(--tw-gradient-to-position)}.to-teal-700{--tw-gradient-to: #0f766e var(--tw-gradient-to-position)}.to-yellow-100{--tw-gradient-to: #fef9c3 var(--tw-gradient-to-position)}.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-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.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-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-10{padding-left:2.5rem}.pr-4{padding-right:1rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.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-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.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}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-amber-800{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity, 1))}.text-amber-900{--tw-text-opacity: 1;color:rgb(120 53 15 / 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-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.text-cyan-600{--tw-text-opacity: 1;color:rgb(8 145 178 / var(--tw-text-opacity, 1))}.text-cyan-900{--tw-text-opacity: 1;color:rgb(22 78 99 / var(--tw-text-opacity, 1))}.text-emerald-100{--tw-text-opacity: 1;color:rgb(209 250 229 / var(--tw-text-opacity, 1))}.text-emerald-200{--tw-text-opacity: 1;color:rgb(167 243 208 / var(--tw-text-opacity, 1))}.text-emerald-500{--tw-text-opacity: 1;color:rgb(16 185 129 / var(--tw-text-opacity, 1))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-emerald-900{--tw-text-opacity: 1;color:rgb(6 78 59 / var(--tw-text-opacity, 1))}.text-fuchsia-600{--tw-text-opacity: 1;color:rgb(192 38 211 / var(--tw-text-opacity, 1))}.text-fuchsia-700{--tw-text-opacity: 1;color:rgb(162 28 175 / var(--tw-text-opacity, 1))}.text-fuchsia-900{--tw-text-opacity: 1;color:rgb(112 26 117 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / 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-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-green-900{--tw-text-opacity: 1;color:rgb(20 83 45 / var(--tw-text-opacity, 1))}.text-indigo-700{--tw-text-opacity: 1;color:rgb(67 56 202 / var(--tw-text-opacity, 1))}.text-orange-600{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.text-purple-100{--tw-text-opacity: 1;color:rgb(243 232 255 / 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-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / 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-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-red-900{--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.text-rose-600{--tw-text-opacity: 1;color:rgb(225 29 72 / var(--tw-text-opacity, 1))}.text-rose-700{--tw-text-opacity: 1;color:rgb(190 18 60 / var(--tw-text-opacity, 1))}.text-rose-900{--tw-text-opacity: 1;color:rgb(136 19 55 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.text-violet-600{--tw-text-opacity: 1;color:rgb(124 58 237 / var(--tw-text-opacity, 1))}.text-violet-900{--tw-text-opacity: 1;color:rgb(76 29 149 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.text-yellow-900{--tw-text-opacity: 1;color:rgb(113 63 18 / var(--tw-text-opacity, 1))}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow{--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)}.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)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-2{--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)}.ring-blue-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.ring-offset-1{--tw-ring-offset-width: 1px}.blur{--tw-blur: blur(8px);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-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,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-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.animate-fade-in{animation:fadeIn .5s ease-in-out}.hover\:-translate-y-1:hover{--tw-translate-y: -.25rem;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-\[1\.02\]:hover{--tw-scale-x: 1.02;--tw-scale-y: 1.02;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-500:hover{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.hover\:border-emerald-400:hover{--tw-border-opacity: 1;border-color:rgb(52 211 153 / var(--tw-border-opacity, 1))}.hover\:border-emerald-500:hover{--tw-border-opacity: 1;border-color:rgb(16 185 129 / var(--tw-border-opacity, 1))}.hover\:border-purple-400:hover{--tw-border-opacity: 1;border-color:rgb(192 132 252 / var(--tw-border-opacity, 1))}.hover\:border-purple-500:hover{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity, 1))}.hover\:border-slate-300:hover{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.hover\:bg-blue-200:hover{--tw-bg-opacity: 1;background-color:rgb(191 219 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-600:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.hover\:bg-emerald-200:hover{--tw-bg-opacity: 1;background-color:rgb(167 243 208 / var(--tw-bg-opacity, 1))}.hover\:bg-emerald-400:hover{--tw-bg-opacity: 1;background-color:rgb(52 211 153 / var(--tw-bg-opacity, 1))}.hover\:bg-emerald-50:hover{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.hover\:bg-emerald-600:hover{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity, 1))}.hover\:bg-emerald-700:hover{--tw-bg-opacity: 1;background-color:rgb(4 120 87 / 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-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-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-50:hover{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-600:hover{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-700:hover{--tw-bg-opacity: 1;background-color:rgb(126 34 206 / var(--tw-bg-opacity, 1))}.hover\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / 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-600:hover{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-100:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-200:hover{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-300:hover{--tw-bg-opacity: 1;background-color:rgb(203 213 225 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-50:hover{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/20:hover{background-color:#fff3}.hover\:bg-white\/30:hover{background-color:#ffffff4d}.hover\:bg-yellow-600:hover{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity, 1))}.hover\:from-emerald-700:hover{--tw-gradient-from: #047857 var(--tw-gradient-from-position);--tw-gradient-to: rgb(4 120 87 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-purple-600:hover{--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)}.hover\:to-cyan-700:hover{--tw-gradient-to: #0e7490 var(--tw-gradient-to-position)}.hover\:to-pink-600:hover{--tw-gradient-to: #db2777 var(--tw-gradient-to-position)}.hover\:text-blue-600:hover{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.hover\:text-blue-900:hover{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.hover\:text-emerald-600:hover{--tw-text-opacity: 1;color:rgb(5 150 105 / 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-gray-800:hover{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover\:text-purple-600:hover{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.hover\:text-purple-700:hover{--tw-text-opacity: 1;color:rgb(126 34 206 / 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\:text-red-800:hover{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.hover\:text-slate-700:hover{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.hover\:text-slate-900:hover{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow-lg:hover{--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)}.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-amber-500:focus{--tw-border-opacity: 1;border-color:rgb(245 158 11 / var(--tw-border-opacity, 1))}.focus\:border-blue-400:focus{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:border-cyan-500:focus{--tw-border-opacity: 1;border-color:rgb(6 182 212 / var(--tw-border-opacity, 1))}.focus\:border-emerald-500:focus{--tw-border-opacity: 1;border-color:rgb(16 185 129 / var(--tw-border-opacity, 1))}.focus\:border-purple-400:focus{--tw-border-opacity: 1;border-color:rgb(192 132 252 / var(--tw-border-opacity, 1))}.focus\:border-purple-500:focus{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity, 1))}.focus\:border-rose-500:focus{--tw-border-opacity: 1;border-color:rgb(244 63 94 / var(--tw-border-opacity, 1))}.focus\:border-slate-500:focus{--tw-border-opacity: 1;border-color:rgb(100 116 139 / var(--tw-border-opacity, 1))}.focus\:border-violet-500:focus{--tw-border-opacity: 1;border-color:rgb(139 92 246 / var(--tw-border-opacity, 1))}.focus\:border-yellow-400:focus{--tw-border-opacity: 1;border-color:rgb(250 204 21 / var(--tw-border-opacity, 1))}.focus\:border-yellow-500:focus{--tw-border-opacity: 1;border-color:rgb(234 179 8 / var(--tw-border-opacity, 1))}.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-amber-500\/20:focus{--tw-ring-color: rgb(245 158 11 / .2)}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-blue-500\/20:focus{--tw-ring-color: rgb(59 130 246 / .2)}.focus\:ring-cyan-500\/20:focus{--tw-ring-color: rgb(6 182 212 / .2)}.focus\:ring-emerald-500\/20:focus{--tw-ring-color: rgb(16 185 129 / .2)}.focus\:ring-purple-100:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(243 232 255 / var(--tw-ring-opacity, 1))}.focus\:ring-purple-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1))}.focus\:ring-rose-500\/20:focus{--tw-ring-color: rgb(244 63 94 / .2)}.focus\:ring-slate-500\/20:focus{--tw-ring-color: rgb(100 116 139 / .2)}.focus\:ring-violet-500\/20:focus{--tw-ring-color: rgb(139 92 246 / .2)}.focus\:ring-yellow-500\/20:focus{--tw-ring-color: rgb(234 179 8 / .2)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-gray-300:disabled{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.disabled\:bg-slate-300:disabled{--tw-bg-opacity: 1;background-color:rgb(203 213 225 / var(--tw-bg-opacity, 1))}.disabled\:bg-slate-400:disabled{--tw-bg-opacity: 1;background-color:rgb(148 163 184 / var(--tw-bg-opacity, 1))}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}@media(min-width:640px){.sm\:block{display:block}.sm\:inline{display:inline}.sm\:flex-row{flex-direction:row}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}}@media(min-width:768px){.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:text-left{text-align:left}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media(min-width:1024px){.lg\:flex{display:flex}.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))}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media(min-width:1280px){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}:root{--grid-gap-xl: 24px;--grid-gap-lg: 20px;--grid-gap-md: 16px;--grid-gap-sm: 12px;--grid-gap-xs: 10px;--padding-xl: 32px;--padding-lg: 24px;--padding-md: 20px;--padding-sm: 16px;--padding-xs: 12px;--card-radius: 12px;--card-radius-sm: 8px}.chemical-grid,.chemicals-grid,.knowledge-grid,.articles-grid,.sites-grid,.features-grid,.cards-grid,.grid-container,.card-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:var(--grid-gap-lg)!important;padding:var(--grid-gap-md)!important;width:100%!important;box-sizing:border-box!important}@media(min-width:1601px){.chemical-grid,.chemicals-grid,.knowledge-grid,.articles-grid,.sites-grid,.features-grid,.cards-grid,.grid-container,.card-grid{grid-template-columns:repeat(5,1fr)!important;gap:var(--grid-gap-xl)!important}}@media(min-width:1201px)and (max-width:1600px){.chemical-grid,.chemicals-grid,.knowledge-grid,.articles-grid,.sites-grid,.features-grid,.cards-grid,.grid-container,.card-grid{grid-template-columns:repeat(4,1fr)!important;gap:var(--grid-gap-lg)!important}}@media(min-width:901px)and (max-width:1200px){.chemical-grid,.chemicals-grid,.knowledge-grid,.articles-grid,.sites-grid,.features-grid,.cards-grid,.grid-container,.card-grid{grid-template-columns:repeat(3,1fr)!important;gap:var(--grid-gap-md)!important;padding:var(--padding-sm)!important}}@media(min-width:601px)and (max-width:900px){.chemical-grid,.chemicals-grid,.knowledge-grid,.articles-grid,.sites-grid,.features-grid,.cards-grid,.grid-container,.card-grid{grid-template-columns:repeat(2,1fr)!important;gap:var(--grid-gap-md)!important;padding:var(--padding-sm)!important}}@media(max-width:900px)and (orientation:landscape){.chemical-grid,.chemicals-grid,.knowledge-grid,.articles-grid,.sites-grid,.features-grid,.cards-grid,.grid-container,.card-grid{grid-template-columns:repeat(4,1fr)!important;gap:var(--grid-gap-xs)!important;padding:var(--padding-xs)!important}}@media(max-width:600px)and (orientation:portrait){.chemical-grid,.chemicals-grid,.knowledge-grid,.articles-grid,.sites-grid,.features-grid,.cards-grid,.grid-container,.card-grid{grid-template-columns:repeat(2,1fr)!important;gap:var(--grid-gap-sm)!important;padding:var(--padding-xs)!important}}@media(max-width:400px){.chemical-grid,.chemicals-grid,.knowledge-grid,.articles-grid,.sites-grid,.features-grid,.cards-grid,.grid-container,.card-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px!important;padding:8px!important}}.stats-grid,.stats-cards,.usage-cards,.usage-grid,.metrics-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:var(--grid-gap-lg)!important;padding:var(--padding-md)!important}@media(max-width:1200px){.stats-grid,.stats-cards,.usage-cards,.usage-grid,.metrics-grid{grid-template-columns:repeat(2,1fr)!important;gap:var(--grid-gap-md)!important}}@media(max-width:600px){.stats-grid,.stats-cards,.usage-cards,.usage-grid,.metrics-grid{grid-template-columns:repeat(2,1fr)!important;gap:var(--grid-gap-sm)!important;padding:var(--padding-xs)!important}}@media(max-width:400px){.stats-grid,.stats-cards,.usage-cards,.usage-grid,.metrics-grid{grid-template-columns:1fr!important;gap:var(--grid-gap-xs)!important}}.quick-access-grid,.quick-actions,.action-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(140px,180px))!important;gap:var(--grid-gap-md)!important;justify-content:center!important}@media(max-width:600px){.quick-access-grid,.quick-actions,.action-grid{grid-template-columns:repeat(3,1fr)!important;gap:var(--grid-gap-sm)!important}}@media(max-width:400px){.quick-access-grid,.quick-actions,.action-grid{grid-template-columns:repeat(2,1fr)!important;gap:var(--grid-gap-xs)!important}}.pricing-grid,.pricing-cards,.plans-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:var(--grid-gap-xl)!important;max-width:900px!important;margin:0 auto!important;padding:var(--padding-lg)!important}@media(max-width:768px){.pricing-grid,.pricing-cards,.plans-grid{grid-template-columns:1fr!important;max-width:400px!important;gap:var(--grid-gap-lg)!important}}.form-grid,.form-row,.input-grid,.form-fields{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:var(--grid-gap-md)!important}.form-grid-3,.input-grid-3{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:var(--grid-gap-md)!important}@media(max-width:900px){.form-grid-3,.input-grid-3{grid-template-columns:repeat(2,1fr)!important}}@media(max-width:600px){.form-grid,.form-row,.input-grid,.form-fields,.form-grid-3,.input-grid-3{grid-template-columns:1fr!important;gap:var(--grid-gap-sm)!important}}.form-full,.input-full,.form-group-full,.form-group.full-width{grid-column:1 / -1!important}.feature-cards,.features-section .cards{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important;gap:var(--grid-gap-xl)!important;padding:var(--padding-lg)!important}@media(max-width:900px){.feature-cards,.features-section .cards{grid-template-columns:repeat(2,1fr)!important;gap:var(--grid-gap-md)!important}}@media(max-width:600px){.feature-cards,.features-section .cards{grid-template-columns:1fr!important;gap:var(--grid-gap-md)!important;padding:var(--padding-sm)!important}}.admin-table-container,.table-container,.data-table-wrap{width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}.admin-table,.data-table{min-width:700px!important}@media(max-width:768px){.admin-table,.data-table{font-size:12px!important}.admin-table th,.admin-table td,.data-table th,.data-table td{padding:8px 10px!important}}.modal-content,.modal-container,.modal-box{width:90%!important;max-width:560px!important;max-height:90vh!important;overflow-y:auto!important;border-radius:var(--card-radius)!important}@media(max-width:600px){.modal-content,.modal-container,.modal-box{width:95%!important;max-width:none!important;max-height:95vh!important;margin:2.5vh auto!important;border-radius:var(--card-radius-sm)!important}}@media(max-width:400px){.modal-content,.modal-container,.modal-box{width:100%!important;height:100%!important;max-height:100vh!important;margin:0!important;border-radius:0!important}}.panel-header,.section-header,.page-header,.chemical-header{padding:var(--padding-md) var(--padding-lg)!important;display:flex!important;justify-content:space-between!important;align-items:center!important;flex-wrap:wrap!important;gap:12px!important}@media(max-width:600px){.panel-header,.section-header,.page-header,.chemical-header{padding:var(--padding-sm)!important;flex-direction:column!important;align-items:flex-start!important}.panel-header h1,.section-header h1,.page-header h1,.chemical-header h2{font-size:18px!important}}.card,.grid-card,.item-card,.chemical-card,.article-card,.site-card,.feature-card,.stat-card,.usage-card{background:#fff!important;border-radius:var(--card-radius)!important;overflow:hidden!important;box-shadow:0 2px 8px #0000000f!important;transition:all .25s ease!important;width:100%!important}.card:hover,.grid-card:hover,.item-card:hover,.chemical-card:hover,.article-card:hover,.site-card:hover,.feature-card:hover{transform:translateY(-4px)!important;box-shadow:0 8px 24px #0000001f!important}@media(max-width:900px){.card:active,.grid-card:active,.item-card:active,.chemical-card:active{transform:scale(.98)!important}}.card-body,.card-content,.chemical-card-body{padding:var(--padding-sm)!important}@media(max-width:600px){.card-body,.card-content,.chemical-card-body{padding:var(--padding-xs)!important}}@media(max-width:900px)and (orientation:landscape){.card-body,.card-content,.chemical-card-body,.article-card-body{padding:8px 10px!important}.card-title,.chemical-card-name,.article-title{font-size:11px!important}.card-subtitle,.chemical-card-code{font-size:9px!important;margin-bottom:6px!important}.card-info,.chemical-card-stats{font-size:10px!important;margin:6px 0!important}.badge-safety{font-size:8px!important;padding:2px 6px!important}}@media(max-width:600px)and (orientation:portrait){.card-body,.card-content,.chemical-card-body,.article-card-body{padding:10px 12px!important}.card-title,.chemical-card-name,.article-title{font-size:12px!important}.card-subtitle,.chemical-card-code{font-size:9px!important;margin-bottom:6px!important}.card-info,.chemical-card-stats{font-size:10px!important;margin:6px 0!important}.badge-safety{font-size:8px!important;padding:2px 6px!important}}.hero-section,.hero{padding:var(--padding-xl) var(--padding-lg)!important;text-align:center!important}.hero h1,.hero-headline{font-size:clamp(24px,5vw,42px)!important;line-height:1.2!important}.hero p,.hero-subheadline{font-size:clamp(14px,2vw,18px)!important;max-width:700px!important;margin:0 auto!important}@media(max-width:600px){.hero-section,.hero{padding:var(--padding-lg) var(--padding-sm)!important}}.faq-section,.accordion-container,.faq-container{max-width:800px!important;margin:0 auto!important;padding:var(--padding-lg)!important}@media(max-width:600px){.faq-section,.accordion-container,.faq-container{padding:var(--padding-sm)!important}.faq-item,.accordion-item{padding:12px 14px!important}}.tabs,.tab-list{display:flex!important;gap:4px!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important}.tabs::-webkit-scrollbar{display:none!important}.tab,.tab-btn{padding:10px 20px!important;white-space:nowrap!important;flex-shrink:0!important}@media(max-width:600px){.tab,.tab-btn{padding:8px 14px!important;font-size:13px!important}}.container,.section-container,.content-container{width:100%!important;max-width:1400px!important;margin:0 auto!important;padding:0 var(--padding-md)!important}@media(max-width:600px){.container,.section-container,.content-container{padding:0 var(--padding-sm)!important}}.hide-mobile{display:block!important}.show-mobile{display:none!important}@media(max-width:600px){.hide-mobile{display:none!important}.show-mobile{display:block!important}}.text-center-mobile{text-align:left}@media(max-width:600px){.text-center-mobile{text-align:center!important}}.toolbar,.chemical-toolbar,.search-toolbar{display:flex!important;gap:12px!important;padding:var(--padding-sm) var(--padding-md)!important;flex-wrap:wrap!important;align-items:center!important}@media(max-width:600px){.toolbar,.chemical-toolbar,.search-toolbar{flex-direction:column!important;padding:var(--padding-xs)!important;gap:10px!important}.toolbar>*,.chemical-toolbar>*,.search-toolbar>*{width:100%!important}.chemical-search{min-width:100%!important}}@media print{.header,.navbar,.hamburger-btn,.nav-links,.modal-overlay,.sidebar{display:none!important}.card,.grid-card,.chemical-card{-moz-column-break-inside:avoid!important;break-inside:avoid!important;box-shadow:none!important;border:1px solid #ddd!important}}
