.landing{min-height:100vh}.hero{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:0;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg"><defs><pattern id="grid" width="100" height="100" patternUnits="userSpaceOnUse"><path d="M 100 0 L 0 0 0 100" fill="none" stroke="rgba(255,255,255,0.1)" stroke-width="1"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');opacity:.3}.navbar{position:relative;z-index:10;padding:1rem 0;background:#0000001a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.nav-container{max-width:1400px;margin:0 auto;padding:0 3rem;display:flex!important;flex-direction:row!important;justify-content:space-between;align-items:center;gap:2rem}.logo{flex-shrink:0}.logo h1{font-size:1.4rem;margin:0;font-weight:700;letter-spacing:-.5px;white-space:nowrap}.nav-links{display:flex!important;flex-direction:row!important;gap:.5rem;align-items:center;flex-wrap:nowrap}.nav-links a{color:#fff;text-decoration:none;font-weight:500;font-size:.95rem;padding:.6rem 1rem;border-radius:8px;transition:all .2s ease;white-space:nowrap}.nav-links a:hover{background:#ffffff26}.nav-links a:focus,.nav-links a:active{background:#fff3;color:#fff;outline:none}.btn-login,.btn-dashboard{background:#fff!important;color:#667eea!important;padding:.6rem 1.5rem!important;border-radius:8px;border:none!important;font-weight:600!important;box-shadow:0 2px 10px #0000001a;transition:all .2s ease!important;cursor:pointer;text-decoration:none;display:inline-block;font-size:.95rem}.btn-login:hover,.btn-dashboard:hover{background:#f0f0f0!important;transform:translateY(-1px);box-shadow:0 4px 15px #00000026}.btn-login:focus,.btn-login:active{background:#e8e8e8!important;color:#667eea!important;outline:none}.hero-content{position:relative;z-index:10;max-width:1200px;margin:0 auto;padding:6rem 2rem;text-align:center}.hero-title{font-size:3.5rem;font-weight:800;margin-bottom:1.5rem;line-height:1.2}.hero-subtitle{font-size:1.25rem;margin-bottom:2.5rem;opacity:.95;max-width:700px;margin-left:auto;margin-right:auto}.hero-cta{display:flex;gap:1rem;justify-content:center}.btn-primary{background:#fff;color:#667eea;padding:1rem 2rem;border-radius:8px;text-decoration:none;font-weight:600;transition:transform .2s,box-shadow .2s;display:inline-block}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 25px #0003}.btn-primary.large{padding:1.25rem 3rem;font-size:1.1rem}.btn-secondary{background:transparent;color:#fff;padding:1rem 2rem;border-radius:8px;text-decoration:none;font-weight:600;border:2px solid white;transition:background .2s;display:inline-block}.btn-secondary:hover{background:#ffffff1a}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.features{padding:6rem 0;background:#f8f9fa}.section-title{text-align:center;font-size:2.5rem;font-weight:700;margin-bottom:3rem;color:#2c3e50}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.feature-card{background:#fff;padding:2.5rem;border-radius:12px;box-shadow:0 4px 6px #0000001a;transition:transform .2s,box-shadow .2s}.feature-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #00000026}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-card h3{font-size:1.5rem;margin-bottom:1rem;color:#2c3e50}.feature-card p{color:#666;margin-bottom:1.5rem;line-height:1.6}.feature-card ul{list-style:none;padding:0}.feature-card li{color:#555;position:relative;padding:.5rem 0 .5rem 1.5rem}.feature-card li:before{content:"✓";position:absolute;left:0;color:#27ae60;font-weight:700}.technologies{padding:6rem 0;background:#fff}.tech-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}.tech-item{text-align:center;padding:2rem;background:#f8f9fa;border-radius:12px;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;gap:1rem}.tech-item:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0000001a;background:#fff}.tech-logo{width:80px;height:80px;display:flex;align-items:center;justify-content:center;margin-bottom:.5rem}.tech-logo svg{width:100%;height:100%;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));transition:transform .3s ease}.tech-item:hover .tech-logo svg{transform:scale(1.1)}.tech-name{font-size:1.25rem;font-weight:600;color:#1a1a2e;margin-bottom:.25rem}.tech-item p{color:#666;font-size:.9rem;margin:0}.use-cases{padding:6rem 0;background:#f8f9fa}.use-cases-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.use-case-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 6px #0000001a}.use-case-card h3{font-size:1.5rem;margin-bottom:1rem;color:#2c3e50}.use-case-card p{color:#666;line-height:1.6}.pricing{padding:6rem 0;background:#fff}.pricing-subtitle{text-align:center;font-size:1.1rem;color:#666;margin-bottom:3rem}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:3rem;max-width:1200px;margin-left:auto;margin-right:auto}.pricing-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;padding:2.5rem;position:relative;transition:transform .2s,box-shadow .2s}.pricing-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #0000001a}.pricing-card.featured{border-color:#667eea;box-shadow:0 10px 25px #667eea33}.pricing-card.free{border-color:#27ae60}.pricing-card.free .price-amount{color:#27ae60}.pricing-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#667eea;color:#fff;padding:.5rem 1.5rem;border-radius:20px;font-size:.85rem;font-weight:600}.pricing-header{text-align:center;margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid #e0e0e0}.pricing-header h3{font-size:1.75rem;margin-bottom:1rem;color:#2c3e50}.price{display:flex;align-items:baseline;justify-content:center;gap:.5rem}.price-amount{font-size:2.5rem;font-weight:700;color:#667eea}.price-period{font-size:1rem;color:#666}.price-note{font-size:.85rem;color:#999;margin-top:.5rem}.pricing-features{list-style:none;padding:0;margin-bottom:2rem}.pricing-features li{padding:.75rem 0;color:#555;border-bottom:1px solid #f0f0f0}.pricing-features li:last-child{border-bottom:none}.pricing-limit{background:#f8f9fa;padding:1.25rem;border-radius:8px;margin-bottom:1.5rem;text-align:center;border:2px solid #e0e0e0}.limit-text{color:#2c3e50;font-size:1rem;line-height:1.6;margin:0}.limit-text strong{color:#667eea;font-size:1.1rem}.limit-extra{display:block;color:#666;font-size:.9rem;margin-top:.5rem;font-weight:500}.btn-pricing{display:block;width:100%;padding:1rem;text-align:center;background:#667eea;color:#fff;text-decoration:none;border-radius:8px;font-weight:600;transition:background .2s}.btn-pricing:hover{background:#5568d3}.pricing-info{max-width:800px;margin:0 auto;padding:2rem;background:#f8f9fa;border-radius:12px}.pricing-info p{color:#666;line-height:1.8;margin-bottom:1rem}.pricing-info strong{color:#2c3e50}.trusted-by{padding:5rem 0;background:#f8f9fa;text-align:center}.trusted-subtitle{color:#666;font-size:1.1rem;margin-bottom:3rem}.trusted-logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:3rem}.trusted-logo{display:flex;align-items:center;justify-content:center;padding:1.5rem 2rem;background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;transition:transform .2s,box-shadow .2s}.trusted-logo:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f}.trusted-logo img{max-height:50px;max-width:180px;object-fit:contain;filter:grayscale(0);transition:filter .2s}.cta{padding:6rem 0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;text-align:center}.cta h2{font-size:2.5rem;margin-bottom:1rem}.cta p{font-size:1.25rem;margin-bottom:2rem;opacity:.95}.footer{background:#2c3e50;color:#fff;padding:3rem 0 1.5rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:2rem}.footer-section h4{margin-bottom:1rem;font-size:1.1rem}.footer-section p{color:#bdc3c7;line-height:1.6}.footer-section a{display:block;color:#bdc3c7;text-decoration:none;margin-bottom:.5rem;transition:color .2s}.footer-section a:hover{color:#fff}.footer-bottom{display:flex;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap;text-align:center;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);color:#95a5a6}.footer-bottom a{color:#95a5a6;text-decoration:none;transition:color .2s}.footer-bottom a:hover{color:#667eea}@media (max-width: 1024px){.nav-container{padding:0 1.5rem}.nav-links{gap:.25rem}.nav-links a{padding:.5rem .75rem;font-size:.9rem}}@media (max-width: 768px){.hero-title{font-size:2.5rem}.nav-container{flex-direction:column!important;gap:1rem}.nav-links{flex-wrap:wrap;justify-content:center;gap:.5rem}.nav-links a{padding:.5rem .75rem;font-size:.85rem}.hero-cta{flex-direction:column}.pricing-grid{grid-template-columns:1fr}.trusted-logos{gap:1.5rem}.trusted-logo{padding:1rem 1.5rem}.trusted-logo img{max-height:40px;max-width:140px}}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.login-card{background:#fff;padding:3rem;border-radius:16px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:550px;animation:slideUp .3s ease-out}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{font-size:2rem;color:#2c3e50;margin-bottom:.5rem;font-weight:700}.login-header h2{font-size:1.5rem;color:#667eea;margin-bottom:.5rem;font-weight:600}.login-subtitle{color:#666;font-size:.95rem;margin-top:.5rem;line-height:1.5}.auth-form{margin-top:2rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;color:#333;font-weight:600;font-size:.9rem}.form-group input,.form-group select{width:100%;padding:.875rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:all .2s;font-family:inherit}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled,.form-group select:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.7}.form-group input::placeholder{color:#999}.password-group{position:relative}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{padding-right:3rem}.password-toggle{position:absolute;right:.75rem;background:none;border:none;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s;z-index:1}.password-toggle:hover:not(:disabled){color:#667eea}.password-toggle:disabled{opacity:.5;cursor:not-allowed}.recaptcha-container{display:flex;justify-content:center;margin:1.5rem 0;padding:1rem 0}.btn-submit{width:100%;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:1rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 25px #667eea66}.btn-submit:active:not(:disabled){transform:translateY(0)}.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.loading-spinner{display:inline-block;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error{background:#fee;color:#c33;padding:1rem;border-radius:8px;margin-bottom:1.5rem;text-align:center;border:1px solid #fcc;font-size:.9rem}.toggle{text-align:center;margin-top:2rem;color:#666;font-size:.95rem}.toggle button{background:none;color:#667eea;text-decoration:underline;padding:0;margin:0;width:auto;cursor:pointer;border:none;font-size:inherit;font-weight:600}.toggle button:hover{color:#5568d3}.back-link{text-align:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #eee}.back-link a{color:#667eea;text-decoration:none;font-size:.9rem;font-weight:500;transition:color .2s}.back-link a:hover{color:#5568d3;text-decoration:underline}@media (max-width: 600px){.login-card{padding:2rem 1.5rem}.form-row{grid-template-columns:1fr}.login-header h1{font-size:1.75rem}.login-header h2{font-size:1.25rem}}.documentation{min-height:100vh;display:flex;flex-direction:column}.doc-navbar{background:#1a1a2e;padding:1rem 2rem;position:sticky;top:0;z-index:100;border-bottom:1px solid #333}.doc-navbar .nav-container{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.doc-navbar .logo{text-decoration:none}.doc-navbar .logo h1{color:#667eea;font-size:1.5rem;margin:0}.doc-navbar .nav-links{display:flex;align-items:center;gap:2rem}.doc-navbar .nav-links a{color:#ccc;text-decoration:none;font-weight:500;transition:color .2s}.doc-navbar .nav-links a:hover{color:#667eea}.doc-navbar .nav-links a:focus,.doc-navbar .nav-links a:active{color:#667eea;outline:none}.doc-navbar .btn-login,.doc-navbar .btn-dashboard{background:linear-gradient(135deg,#667eea,#764ba2)!important;color:#fff!important;padding:.5rem 1.5rem;border-radius:6px;border:none;cursor:pointer;text-decoration:none;display:inline-block;font-weight:500;font-size:.95rem}.doc-navbar .btn-login:hover,.doc-navbar .btn-login:focus,.doc-navbar .btn-login:active,.doc-navbar .btn-dashboard:hover,.doc-navbar .btn-dashboard:focus,.doc-navbar .btn-dashboard:active{background:linear-gradient(135deg,#5a6fd6,#6a4190)!important;color:#fff!important;outline:none}.doc-container{display:flex;flex:1;max-width:1400px;margin:0 auto;width:100%}.doc-sidebar{width:280px;background:#f8f9fa;border-right:1px solid #e0e0e0;padding:2rem;position:sticky;top:70px;height:calc(100vh - 70px);overflow-y:auto}.doc-nav h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:#666;margin:1.5rem 0 .75rem}.doc-nav h3:first-child{margin-top:0}.doc-nav ul{list-style:none;padding:0;margin:0}.doc-nav li{margin:.5rem 0}.doc-nav a{color:#333;text-decoration:none;font-size:.95rem;transition:color .2s;display:block;padding:.25rem 0}.doc-nav a:hover{color:#667eea}.doc-content{flex:1;padding:3rem 4rem;max-width:900px}.doc-content h1{font-size:2.5rem;color:#1a1a2e;margin-bottom:1rem}.doc-intro{font-size:1.2rem;color:#666;line-height:1.8;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid #e0e0e0}.doc-content section{margin-bottom:4rem}.doc-content h2{font-size:1.75rem;color:#1a1a2e;margin-bottom:1rem;padding-top:1rem}.doc-content h3{font-size:1.25rem;color:#333;margin:1.5rem 0 .75rem}.doc-content p{color:#444;line-height:1.8;margin-bottom:1rem}.doc-content ul{margin:1rem 0;padding-left:1.5rem}.doc-content li{color:#444;line-height:1.8;margin:.5rem 0}.doc-content code{background:#f0f0f0;padding:.2rem .4rem;border-radius:4px;font-family:Fira Code,Consolas,monospace;font-size:.9rem;color:#e74c3c}.doc-content pre{background:#1a1a2e;border-radius:8px;padding:1.5rem;overflow-x:auto;margin:1rem 0}.doc-content pre code{background:none;color:#e0e0e0;padding:0;font-size:.9rem;line-height:1.6}.doc-content table{width:100%;border-collapse:collapse;margin:1.5rem 0}.doc-content th,.doc-content td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e0e0e0}.doc-content th{background:#f8f9fa;font-weight:600;color:#333}.doc-content td{color:#444}.doc-content td code{font-size:.85rem}.severity-high{color:#e74c3c;font-weight:600}.severity-medium{color:#f39c12;font-weight:600}.severity-low{color:#3498db;font-weight:600}.doc-cta{background:linear-gradient(135deg,#667eea,#764ba2);padding:3rem;border-radius:12px;text-align:center;margin-top:4rem}.doc-cta h2{color:#fff;margin-bottom:1rem;padding-top:0}.doc-cta p{color:#ffffffe6;margin-bottom:1.5rem}.doc-cta .btn-primary{display:inline-block;background:#fff;color:#667eea;padding:.875rem 2rem;border-radius:8px;text-decoration:none;font-weight:600;transition:transform .2s,box-shadow .2s}.doc-cta .btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px #0003}.doc-footer{background:#1a1a2e;padding:2rem;margin-top:auto}.doc-footer .container{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.doc-footer p{color:#888;margin:0}.doc-footer .footer-links{display:flex;gap:2rem}.doc-footer .footer-links a{color:#888;text-decoration:none;transition:color .2s}.doc-footer .footer-links a:hover{color:#667eea}@media (max-width: 1024px){.doc-container{flex-direction:column}.doc-sidebar{width:100%;height:auto;position:relative;top:0;border-right:none;border-bottom:1px solid #e0e0e0}.doc-nav{display:flex;flex-wrap:wrap;gap:2rem}.doc-nav>*{flex:1;min-width:200px}.doc-content{padding:2rem}}@media (max-width: 768px){.doc-navbar{padding:1rem}.doc-navbar .logo h1{font-size:1.2rem}.doc-navbar .nav-links{gap:1rem}.doc-content h1{font-size:2rem}.doc-content h2{font-size:1.5rem}.doc-footer .container{flex-direction:column;gap:1rem;text-align:center}}.legal{min-height:100vh;background:#f8f9fa}.legal-navbar{background:#fff;box-shadow:0 2px 4px #0000001a;position:sticky;top:0;z-index:100}.legal-navbar .nav-container{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.legal-navbar .logo{text-decoration:none;color:#1a1a2e}.legal-navbar .logo h1{margin:0;font-size:1.5rem;font-weight:700}.legal-navbar .nav-links{display:flex;gap:1.5rem;align-items:center}.legal-navbar .nav-links a{text-decoration:none;color:#333;font-weight:500;transition:color .2s}.legal-navbar .nav-links a:hover{color:#667eea}.legal-navbar .btn-login{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.5rem 1.25rem;border-radius:8px;text-decoration:none;font-weight:500;transition:transform .2s,box-shadow .2s}.legal-navbar .btn-login:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.legal-container{max-width:900px;margin:0 auto;padding:3rem 2rem;background:#fff;margin-top:2rem;margin-bottom:2rem;border-radius:12px;box-shadow:0 2px 8px #00000014}.legal-container h1{color:#1a1a2e;font-size:2.5rem;margin-bottom:.5rem;font-weight:700}.legal-updated{color:#666;font-size:.9rem;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e0e0e0}.legal-container section{margin-bottom:2.5rem}.legal-container h2{color:#1a1a2e;font-size:1.5rem;margin-bottom:1rem;font-weight:600;padding-top:1rem}.legal-container p{color:#444;line-height:1.7;margin-bottom:1rem}.legal-container a{color:#667eea;text-decoration:none;transition:color .2s}.legal-container a:hover{color:#764ba2;text-decoration:underline}.legal-info{background:#f8f9fa;padding:1.5rem;border-radius:8px;border-left:4px solid #667eea;margin:1rem 0}.legal-info p{margin:.5rem 0;color:#333}.legal-info strong{color:#1a1a2e}.legal-footer{margin-top:3rem;padding-top:2rem;border-top:1px solid #e0e0e0;text-align:center}.btn-back{display:inline-block;background:#f8f9fa;color:#333;padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;font-weight:500;transition:all .2s;border:1px solid #e0e0e0}.btn-back:hover{background:#e9ecef;border-color:#667eea;color:#667eea;transform:translate(-4px)}@media (max-width: 768px){.legal-navbar .nav-container{padding:1rem;flex-direction:column;gap:1rem}.legal-navbar .nav-links{flex-wrap:wrap;justify-content:center}.legal-container{padding:2rem 1.5rem;margin:1rem}.legal-container h1{font-size:2rem}.legal-container h2{font-size:1.25rem}}.dashboard{display:flex;min-height:100vh}.sidebar{width:260px;background:linear-gradient(180deg,#1a1a2e,#16213e);color:#fff;display:flex;flex-direction:column;position:fixed;height:100vh;z-index:100}.sidebar-header{flex:1;overflow-y:auto;display:flex;flex-direction:column}.logo{padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.logo h2{margin:0;font-size:1.25rem;font-weight:700;color:#667eea;display:flex;align-items:center;gap:.5rem}.logo h2:before{content:"🛡️";font-size:1.5rem}.sidebar .nav-links{list-style:none;padding:1rem .75rem;margin:0;display:flex!important;flex-direction:column!important;align-items:stretch;gap:.5rem}.sidebar .nav-links li{width:100%;display:block}.nav-links a{color:#fffc;text-decoration:none;display:flex;align-items:center;justify-content:flex-start;gap:.75rem;padding:.875rem 1rem;border-radius:8px;transition:all .2s;font-weight:500;font-size:.95rem;white-space:nowrap;width:100%}.nav-links li:first-child a:before{content:"📋";font-size:1.1rem;flex-shrink:0}.nav-links li:nth-child(2) a:before{content:"➕";font-size:1.1rem;flex-shrink:0}.nav-links a:hover{background:#667eea33;color:#fff}.nav-links a.active{background:#667eea40;color:#a5b4fc}.nav-section-title{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#fff6;padding:1.5rem 1rem .5rem;font-weight:600}.nav-links.secondary{padding-top:0}.nav-links.secondary a{font-size:.85rem;color:#fff9}.nav-links.secondary a:before{content:"📄"!important;font-size:.9rem!important}.nav-links.secondary li:first-child a:before{content:"🏠"!important}.nav-links.admin a{color:#f87171}.nav-links.admin a:before{content:"👤"!important;font-size:.9rem!important}.nav-links.admin li:nth-child(2) a:before{content:"📊"!important}.nav-links.admin a:hover{background:#f8717126}.user-info{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem;padding:.75rem;background:#ffffff0d;border-radius:8px}.user-email{font-size:.8rem;color:#ffffffb3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;padding:.25rem .5rem;border-radius:4px;font-weight:600;text-transform:uppercase;width:fit-content}.role-badge.admin{background:#f8717133;color:#f87171}.role-badge.admin:before{content:"⭐";font-size:.65rem}.sidebar-footer{padding:1rem .75rem;border-top:1px solid rgba(255,255,255,.1)}.logout-btn{width:100%;background:#e74c3c26;color:#f87171;border:1px solid rgba(231,76,60,.3);padding:.75rem 1rem;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.logout-btn:before{content:"🚪"}.logout-btn:hover{background:#e74c3c;color:#fff;border-color:#e74c3c}.content{flex:1;margin-left:260px;background:#f8fafc;min-height:100vh}@media (max-width: 768px){.dashboard{flex-direction:column}.sidebar{width:100%;height:auto;position:relative;flex-direction:row;align-items:center;padding:.5rem 1rem}.sidebar-header{flex-direction:row;align-items:center;flex:1;gap:1rem}.logo{padding:0;border-bottom:none}.logo h2{font-size:1rem}.sidebar .nav-links{flex-direction:row!important;padding:0;gap:.25rem}.sidebar .nav-links li{width:auto}.sidebar .nav-links a{padding:.5rem .75rem;font-size:.85rem}.sidebar-footer{padding:0;border-top:none}.logout-btn{padding:.5rem .75rem;font-size:.8rem}.content{margin-left:0}}.license-list{padding:2rem;max-width:1400px;margin:0 auto}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.header h1{color:#1a1a2e;font-size:1.75rem;font-weight:700;margin:0}.btn-primary{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.75rem 1.25rem;border-radius:8px;text-decoration:none;font-weight:600;font-size:.9rem;border:none;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #667eea4d}.btn-primary:before{content:"+";font-size:1.1rem;font-weight:700}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-danger{background:transparent;color:#e74c3c;border:1px solid #e74c3c;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s}.btn-danger:hover{background:#e74c3c;color:#fff}.licenses-table{width:100%;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #00000014,0 4px 12px #0000000a;border-collapse:collapse}.licenses-table thead{background:#f8fafc}.licenses-table th{padding:1rem 1.25rem;text-align:left;font-weight:600;color:#64748b;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e2e8f0}.licenses-table td{padding:1rem 1.25rem;border-bottom:1px solid #f1f5f9;color:#334155;font-size:.95rem}.licenses-table tbody tr{transition:background .15s}.licenses-table tbody tr:hover{background:#f8fafc}.licenses-table tbody tr:last-child td{border-bottom:none}.license-key{color:#667eea;text-decoration:none;font-family:Fira Code,Consolas,monospace;font-size:.85rem;font-weight:500;padding:.25rem .5rem;background:#667eea14;border-radius:4px;transition:all .2s}.license-key:hover{background:#667eea26;text-decoration:none}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;text-transform:capitalize}.status-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.type-badge{display:inline-block;padding:.25rem .625rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:capitalize}.type-badge.free{background:#f1f5f9;color:#64748b}.type-badge.starter{background:#667eea1a;color:#667eea}.type-badge.professional{background:#764ba21a;color:#764ba2}.type-badge.admin{background:#e74c3c1a;color:#e74c3c;font-weight:700}.usage-indicator{display:flex;flex-direction:column;gap:.25rem;min-width:100px}.usage-mini-bar{height:6px;background:#e0e0e0;border-radius:3px;overflow:hidden}.usage-mini-fill{height:100%;border-radius:3px;transition:width .3s ease}.usage-indicator.normal .usage-mini-fill{background:linear-gradient(90deg,#3498db,#2ecc71)}.usage-indicator.warning .usage-mini-fill{background:#f39c12}.usage-indicator.danger .usage-mini-fill{background:#e67e22}.usage-indicator.critical .usage-mini-fill{background:#e74c3c}.usage-text{font-size:.75rem;color:#666;font-family:Fira Code,monospace}.usage-indicator.critical .usage-text{color:#e74c3c;font-weight:600}.usage-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.usage-badge.free{background:#f1f5f9;color:#64748b}.usage-badge.unlimited{background:#27ae601a;color:#27ae60}.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014}.empty-state p{color:#64748b;font-size:1rem;margin:0}.empty-state:before{content:"📭";font-size:3rem;display:block;margin-bottom:1rem}.error{color:#e74c3c;background:#fef2f2;border-radius:8px;border:1px solid #fecaca}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:#fff;padding:1.25rem;border-radius:12px;box-shadow:0 1px 3px #00000014}.stat-card h3{font-size:.8rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem}.stat-card .value{font-size:1.75rem;font-weight:700;color:#1a1a2e}@media (max-width: 1024px){.licenses-table{display:block;overflow-x:auto}}@media (max-width: 768px){.license-list{padding:1rem}.header{flex-direction:column;align-items:flex-start}.header h1{font-size:1.5rem}.btn-primary{width:100%;justify-content:center}}.usage-stats{background:#fff;border-radius:12px;padding:1.5rem;margin-top:1.5rem;box-shadow:0 2px 8px #00000014}.usage-stats h3{margin:0 0 1.5rem;font-size:1.25rem;color:#1a1a2e}.usage-stats h4{margin:0 0 1rem;font-size:1rem;color:#333}.usage-stats.loading,.usage-stats.error{text-align:center;padding:3rem;color:#666}.usage-stats.error{color:#e74c3c}.usage-meter{background:#f8f9fa;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem;border-left:4px solid #3498db}.usage-meter.warning{border-left-color:#f39c12;background:#fffbf0}.usage-meter.danger{border-left-color:#e67e22;background:#fff5f0}.usage-meter.critical{border-left-color:#e74c3c;background:#fef0f0}.usage-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.usage-count{font-size:1.25rem;font-weight:700;color:#1a1a2e;font-family:Fira Code,monospace}.progress-bar{position:relative;height:12px;background:#e0e0e0;border-radius:6px;overflow:visible;margin-bottom:.75rem}.progress-fill{height:100%;border-radius:6px;transition:width .5s ease,background .3s ease;background:linear-gradient(90deg,#3498db,#2ecc71)}.usage-meter.warning .progress-fill{background:linear-gradient(90deg,#f39c12,#e67e22)}.usage-meter.danger .progress-fill{background:linear-gradient(90deg,#e67e22,#e74c3c)}.usage-meter.critical .progress-fill{background:#e74c3c}.threshold-marker{position:absolute;top:-4px;width:2px;height:20px;opacity:.5}.threshold-marker.warning{background:#f39c12}.threshold-marker.danger{background:#e74c3c}.status-badge{font-size:.85rem;padding:.25rem .75rem;border-radius:4px;font-weight:500}.status-badge.info{color:#3498db;background:#3498db1a}.app-stats{margin-bottom:1.5rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.btn-clear-filter{background:none;border:1px solid #ddd;padding:.25rem .75rem;border-radius:4px;font-size:.8rem;color:#666;cursor:pointer;transition:all .2s}.btn-clear-filter:hover{border-color:#667eea;color:#667eea}.app-list{display:flex;flex-direction:column;gap:.5rem}.app-item{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1rem;background:#f8f9fa;border-radius:8px;cursor:pointer;transition:all .2s;border:2px solid transparent}.app-item:hover{background:#f0f0f5;border-color:#e0e0e5}.app-item.selected{background:#f0f4ff;border-color:#667eea}.app-info{display:flex;flex-direction:column;gap:.25rem}.app-name{font-weight:600;color:#1a1a2e;font-family:Fira Code,monospace;font-size:.9rem}.app-last-used{font-size:.75rem;color:#888}.app-metrics{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.requests-count{font-weight:600;color:#667eea;font-size:.9rem}.success-rate{font-size:.75rem;color:#27ae60}.recent-activity{border-top:1px solid #eee;padding-top:1.5rem}.activity-list{display:flex;flex-direction:column;gap:.5rem}.activity-item{display:flex;align-items:center;gap:1rem;padding:.75rem;background:#f8f9fa;border-radius:6px;font-size:.85rem}.activity-item.success .activity-icon{color:#27ae60;background:#27ae601a}.activity-item.failed .activity-icon{color:#e74c3c;background:#e74c3c1a}.activity-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.activity-details{flex:1;display:flex;flex-direction:column;gap:.125rem}.activity-app{font-weight:500;color:#333;font-family:Fira Code,monospace;font-size:.8rem}.activity-type{font-size:.75rem;color:#888;text-transform:capitalize}.activity-time{color:#888;font-size:.75rem;white-space:nowrap}.no-usage{text-align:center;padding:2rem;color:#666}.no-usage pre{background:#1a1a2e;padding:1rem;border-radius:8px;margin-top:1rem;display:inline-block}.no-usage code{color:#e0e0e0;font-family:Fira Code,monospace}.no-usage.free-info{background:#f0f4ff;border-radius:8px;border:1px solid #e0e8ff;text-align:left}.no-usage.free-info p{margin:.5rem 0;line-height:1.6}.no-usage.free-info p:first-child{font-size:1rem;color:#333}.no-usage.free-info p:last-child{color:#667eea;font-weight:500}.activity-item.clickable{cursor:pointer;transition:all .2s ease}.activity-item.clickable:hover{background:#f0f0f5;transform:translate(4px)}.activity-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.view-result-hint{font-size:.7rem;color:#667eea;opacity:0;transition:opacity .2s}.activity-item.clickable:hover .view-result-hint{opacity:1}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-container{background:#fff;border-radius:16px;width:100%;max-width:900px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e0e0e0;flex-shrink:0}.modal-header h3{margin:0;font-size:1.25rem;color:#1a1a2e}.modal-actions{display:flex;gap:.75rem;align-items:center}.btn-export-pdf{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-export-pdf:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-export-pdf svg{stroke:#fff}.btn-close-modal{background:transparent;border:none;padding:.5rem;cursor:pointer;color:#666;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-close-modal:hover{background:#f0f0f5;color:#333}.modal-body{flex:1;overflow-y:auto;padding:1.5rem}.modal-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#666}.spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.modal-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem;padding:1rem;background:#f8f9fa;border-radius:10px}.meta-item{display:flex;flex-direction:column;gap:.25rem}.meta-label{font-size:.75rem;color:#888;text-transform:uppercase;letter-spacing:.05em}.meta-value{font-weight:500;color:#333;font-family:Fira Code,monospace;font-size:.9rem}.meta-value.status-success{color:#27ae60}.meta-value.status-failed{color:#e74c3c}.modal-content{background:#fff;border-radius:12px;padding:2rem;border:1px solid #e2e8f0;max-width:100%;overflow-x:auto;box-shadow:0 1px 3px #0000000d}.pdf-export-container{font-size:12pt;line-height:1.6}.pdf-export-container .pdf-header-content{margin-bottom:2rem}.pdf-export-container .pdf-content{color:#1a1a2e}.pdf-export-container .markdown-content{font-size:11pt}.pdf-export-container .analysis-table{font-size:10pt;margin:1rem 0}.pdf-export-container .severity-header{margin:1.5rem 0 1rem;padding:.5rem .75rem;font-size:12pt}.analysis-result{line-height:1.8;color:#2d3748;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.analysis-result .pdf-header{margin-bottom:1.5rem}.analysis-result .pdf-header h1{color:#667eea;font-size:1.5rem}.markdown-content{font-size:.95rem}.markdown-content h1{font-size:1.75rem;color:#1a1a2e;margin:2rem 0 1.25rem;border-bottom:3px solid #667eea;padding-bottom:.75rem;font-weight:700}.markdown-content h2{font-size:1.4rem;color:#2d3748;margin:1.75rem 0 1rem;font-weight:600;padding-left:.5rem;border-left:4px solid #667eea}.markdown-content h3{font-size:1.15rem;color:#4a5568;margin:1.5rem 0 .75rem;font-weight:600}.markdown-content .severity-header{display:flex;align-items:center;gap:.75rem;margin:1.5rem 0 1rem;padding:.75rem 1rem;border-radius:8px;font-size:1.15rem;font-weight:600}.markdown-content .severity-header.severity-critical{background:linear-gradient(135deg,#fee2e2,#fecaca);border-left:4px solid #dc2626;color:#991b1b}.markdown-content .severity-header.severity-high{background:linear-gradient(135deg,#fed7aa,#fdba74);border-left:4px solid #ea580c;color:#9a3412}.markdown-content .severity-header.severity-medium{background:linear-gradient(135deg,#fef3c7,#fde68a);border-left:4px solid #d97706;color:#78350f}.markdown-content .severity-header.severity-low{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-left:4px solid #2563eb;color:#1e40af}.markdown-content .severity-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.markdown-content .severity-critical .severity-badge{background:#dc2626;color:#fff}.markdown-content .severity-high .severity-badge{background:#ea580c;color:#fff}.markdown-content .severity-medium .severity-badge{background:#d97706;color:#fff}.markdown-content .severity-low .severity-badge{background:#2563eb;color:#fff}.markdown-content .severity-keyword{font-weight:700;padding:.15rem .4rem;border-radius:4px;font-size:.9em;background:#f1f5f9;color:#475569}.markdown-content p{margin:1rem 0;line-height:1.8}.markdown-content strong{color:#1a1a2e;font-weight:600}.markdown-content em{color:#4a5568;font-style:italic}.markdown-content ul.analysis-list,.markdown-content ol.analysis-list{margin:1.25rem 0;padding-left:2rem;list-style-type:disc}.markdown-content ol.analysis-list{list-style-type:decimal}.markdown-content ul.analysis-list li,.markdown-content ol.analysis-list li{margin:.75rem 0;line-height:1.7;padding-left:.5rem}.markdown-content ul.analysis-list li::marker{color:#667eea;font-weight:700}.markdown-content ul.analysis-list li strong{color:#1a1a2e;font-weight:600}.markdown-content hr{border:none;border-top:2px solid #e2e8f0;margin:2rem 0}.markdown-content table.analysis-table{width:100%;border-collapse:collapse;margin:1.5rem 0;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a;border:1px solid #e2e8f0}.markdown-content table.analysis-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.markdown-content table.analysis-table thead th{padding:.875rem 1rem;text-align:left;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid rgba(255,255,255,.2)}.markdown-content table.analysis-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background .2s}.markdown-content table.analysis-table tbody tr:hover{background:#f7fafc}.markdown-content table.analysis-table tbody tr:last-child{border-bottom:none}.markdown-content table.analysis-table th,.markdown-content table.analysis-table td{padding:.875rem 1rem;vertical-align:top;line-height:1.6;text-align:left}.markdown-content table.analysis-table th:first-child,.markdown-content table.analysis-table td:first-child{font-weight:600;color:#2d3748}.markdown-content table.analysis-table td{color:#4a5568}.markdown-content table.analysis-table td code{background:#f1f5f9;padding:.15rem .4rem;border-radius:4px;font-size:.85em}.markdown-content code{background:#f1f5f9;padding:.2rem .5rem;border-radius:4px;font-family:Fira Code,Consolas,Monaco,Courier New,monospace;font-size:.875rem;color:#dc2626;border:1px solid #e2e8f0;font-weight:500}.markdown-content code.migration-file{background:#fef3c7;color:#92400e;border-color:#fde68a;font-weight:600;padding:.25rem .6rem}.markdown-content p code{font-size:.85rem}.markdown-content pre{background:#1a1a2e;color:#e0e0e0;padding:1.25rem;border-radius:8px;overflow-x:auto;margin:1.5rem 0;border:1px solid #2d3748;box-shadow:0 2px 8px #0000001a}.markdown-content pre code{background:transparent;padding:0;color:inherit;border:none;font-size:.875rem;line-height:1.6}.markdown-content>*:first-child{margin-top:0}.markdown-content>*:last-child{margin-bottom:0}.error-result{color:#e74c3c;background:#fff5f5;padding:1rem;border-radius:8px;border:1px solid #ffcccc}.no-result{color:#888;text-align:center;padding:2rem}@media print{.modal-overlay{position:static;background:none}.modal-container{max-width:none;max-height:none;box-shadow:none}.modal-header{display:none}.pdf-header{display:block!important}}@media (max-width: 768px){.app-item{flex-direction:column;align-items:flex-start;gap:.5rem}.app-metrics{align-items:flex-start;flex-direction:row;gap:1rem}.activity-item{flex-wrap:wrap}.activity-time{width:100%;margin-left:44px;margin-top:-.25rem}.modal-overlay{padding:1rem}.modal-container{max-height:90vh;border-radius:12px}.modal-header{padding:1rem;flex-wrap:wrap;gap:.5rem}.modal-header h3{font-size:1.1rem;width:100%}.modal-actions{width:100%;justify-content:flex-end}.modal-body{padding:1rem}.modal-meta{grid-template-columns:1fr}}.license-detail{padding:2rem;max-width:1000px;margin:0 auto}.back-btn{display:inline-flex;align-items:center;gap:.5rem;background:transparent;color:#64748b;border:none;padding:.5rem 0;cursor:pointer;font-size:.95rem;font-weight:500;margin-bottom:1.5rem;transition:color .2s}.back-btn:hover{color:#667eea}.license-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.license-header h1{color:#1a1a2e;font-size:1.75rem;font-weight:700;margin:0}.status-controls{display:flex;align-items:center;gap:.5rem}.status-select{padding:.625rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:.95rem;font-weight:500;background:#fff;cursor:pointer;transition:all .2s}.status-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.license-info{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 1px 3px #00000014,0 4px 12px #0000000a;margin-bottom:2rem}.info-card{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid #e2e8f0}.info-card:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.info-card h3{margin:0 0 1rem;color:#64748b;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.license-key-display{display:flex;gap:1rem;align-items:center}.license-key-display code{flex:1;background:#f8fafc;padding:1rem 1.25rem;border-radius:8px;font-family:Fira Code,Consolas,monospace;font-size:.9rem;word-break:break-all;color:#334155;border:1px solid #e2e8f0}.copy-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.25rem;border-radius:8px;cursor:pointer;white-space:nowrap;font-weight:600;font-size:.9rem;transition:all .2s;box-shadow:0 2px 8px #667eea4d}.copy-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.5rem}.info-item label{display:block;color:#64748b;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.375rem;font-weight:600}.info-item p{color:#1a1a2e;font-size:1rem;font-weight:600;margin:0}.status-active{color:#22c55e!important}.status-inactive{color:#94a3b8!important}.status-expired{color:#ef4444!important}.activations-section{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 1px 3px #00000014,0 4px 12px #0000000a}.activations-section h2{margin:0 0 1.5rem;color:#1a1a2e;font-size:1.25rem;font-weight:700}.activations-table{width:100%;border-collapse:collapse}.activations-table th{text-align:left;padding:.875rem 1rem;background:#f8fafc;color:#64748b;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;border-bottom:1px solid #e2e8f0}.activations-table td{padding:1rem;border-bottom:1px solid #f1f5f9;color:#334155;font-size:.95rem}.activations-table tbody tr:hover{background:#f8fafc}.activations-table tbody tr:last-child td{border-bottom:none}.activations-table code{background:#f1f5f9;padding:.25rem .5rem;border-radius:4px;font-family:Fira Code,Consolas,monospace;font-size:.85rem;color:#475569}.loading,.error{text-align:center;padding:3rem;color:#64748b;font-size:1rem}.error{color:#ef4444;background:#fef2f2;border-radius:8px;border:1px solid #fecaca}@media (max-width: 768px){.license-detail{padding:1rem}.license-header{flex-direction:column;align-items:flex-start}.license-key-display{flex-direction:column}.license-key-display code{width:100%}.copy-btn{width:100%;text-align:center}}.create-license{padding:2rem;max-width:1100px;margin:0 auto}.page-header{margin-bottom:2rem}.page-header h1{margin:0 0 .5rem;color:#1a1a2e;font-size:1.75rem;font-weight:700}.page-header p{margin:0;color:#64748b;font-size:1rem}.plans-section{margin-bottom:2rem}.plans-section h2{font-size:1.1rem;color:#1a1a2e;margin:0 0 1rem;font-weight:600}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.plan-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .2s;position:relative}.plan-card:hover:not(.disabled){border-color:#cbd5e1;box-shadow:0 4px 12px #00000014}.plan-card.selected{border-color:#667eea;box-shadow:0 0 0 3px #667eea26}.plan-card.highlighted{border-color:#667eea}.plan-card.disabled{opacity:.6;cursor:not-allowed}.plan-badge{position:absolute;top:-10px;right:1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.7rem;font-weight:600}.plan-badge.coming-soon{background:#94a3b8}.plan-header{margin-bottom:.75rem}.plan-header h3{margin:0 0 .375rem;font-size:1.1rem;color:#1a1a2e;font-weight:700}.plan-price{display:flex;align-items:baseline;gap:.25rem}.plan-price .price{font-size:1.75rem;font-weight:700;color:#1a1a2e}.plan-price .period{font-size:.85rem;color:#64748b}.plan-description{color:#64748b;font-size:.85rem;margin:0 0 1rem;line-height:1.4}.plan-features{list-style:none;padding:0;margin:0 0 1rem}.plan-features li{display:flex;align-items:flex-start;gap:.5rem;padding:.3rem 0;font-size:.85rem;color:#334155;line-height:1.3}.plan-features li.not-included{color:#94a3b8}.feature-icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0;margin-top:1px}.plan-features li.included .feature-icon{color:#22c55e}.plan-features li.not-included .feature-icon{color:#cbd5e1}.plan-select{display:flex;align-items:center;gap:.5rem;padding-top:1rem;border-top:1px solid #e2e8f0;font-size:.85rem;color:#64748b;font-weight:500}.radio-indicator{width:18px;height:18px;border:2px solid #cbd5e1;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}.radio-indicator.active{border-color:#667eea}.radio-dot{width:8px;height:8px;background:#667eea;border-radius:50%}.generate-section{display:flex;flex-direction:column;gap:1rem}.summary-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1.25rem}.summary-icon{font-size:2.5rem;flex-shrink:0}.summary-content{flex:1}.summary-content h3{margin:0 0 .25rem;font-size:1.1rem;color:#1a1a2e;font-weight:600}.summary-content p{margin:0;color:#64748b;font-size:.9rem}.summary-content strong{color:#667eea}.btn-generate{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #667eea4d;white-space:nowrap}.btn-generate:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-generate:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-back{background:transparent;color:#64748b;border:none;padding:.5rem 0;font-size:.9rem;font-weight:500;cursor:pointer;transition:color .2s;text-align:left}.btn-back:hover{color:#667eea}.error{background:#fef2f2;color:#dc2626;padding:1rem;border-radius:8px;margin-bottom:1.5rem;border:1px solid #fecaca;font-size:.9rem}@media (max-width: 900px){.plans-grid{grid-template-columns:1fr}}@media (max-width: 768px){.create-license{padding:1rem}.summary-card{flex-direction:column;text-align:center}.btn-generate{width:100%}}.subscription{padding:2rem;max-width:1200px;margin:0 auto}.subscription-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.subscription-header h1{color:#1a1a2e;font-size:2rem;font-weight:700;margin:0}.btn-back{background:#f8f9fa;border:1px solid #e0e0e0;padding:.5rem 1rem;border-radius:8px;color:#333;text-decoration:none;cursor:pointer;transition:all .2s}.btn-back:hover{background:#e9ecef;border-color:#667eea;color:#667eea}.payment-alert{display:flex;gap:1rem;padding:1.5rem;border-radius:12px;margin-bottom:2rem;align-items:flex-start}.payment-alert-error{background:#fff5f5;border:2px solid #e74c3c}.alert-icon{font-size:2rem;flex-shrink:0}.alert-content h3{margin:0 0 .5rem;color:#e74c3c;font-size:1.1rem}.alert-content p{margin:0 0 1rem;color:#666;line-height:1.6}.subscription-card{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #00000014}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.card-header h2{margin:0;color:#1a1a2e;font-size:1.5rem;font-weight:600}.btn-manage-billing{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.5rem 1.25rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-manage-billing:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-manage-billing:disabled{opacity:.6;cursor:not-allowed}.plan-info{display:flex;align-items:center;gap:1.5rem}.plan-badge{padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:1.1rem;text-transform:capitalize}.plan-badge-free{background:#e9ecef;color:#495057}.plan-badge-starter{background:#e3f2fd;color:#1976d2}.plan-badge-professional{background:#f3e5f5;color:#7b1fa2}.plan-badge-admin{background:#fff3e0;color:#e65100}.plan-details{flex:1}.plan-status,.plan-renewal{margin:.25rem 0;color:#666;font-size:.9rem}.status-active{color:#27ae60;font-weight:600}.status-past_due,.status-unpaid{color:#e74c3c;font-weight:600}.status-canceled{color:#95a5a6;font-weight:600}.usage-meter{margin-top:1rem}.usage-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.usage-label{font-weight:600;color:#333}.usage-count{font-size:1.25rem;font-weight:700;color:#1a1a2e}.progress-bar-container{width:100%;background-color:#e0e0e0;border-radius:10px;height:24px;overflow:hidden;margin-bottom:1rem;position:relative}.progress-bar{height:100%;border-radius:10px;transition:width .5s ease-in-out;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.8rem}.progress-bar-green{background:linear-gradient(90deg,#27ae60,#2ecc71)}.progress-bar-yellow{background:linear-gradient(90deg,#f39c12,#e67e22)}.progress-bar-orange{background:linear-gradient(90deg,#e67e22,#d35400)}.progress-bar-red{background:#e74c3c}.usage-info{display:flex;justify-content:flex-end}.status-badge{font-size:.85rem;padding:.5rem 1rem;border-radius:6px;font-weight:500}.status-badge.normal{color:#27ae60;background:#27ae601a}.status-badge.warning{color:#f39c12;background:#f39c121a}.status-badge.danger{color:#e67e22;background:#e67e221a}.status-badge.critical{color:#e74c3c;background:#e74c3c1a}.free-plan-message{text-align:center;padding:2rem;color:#666;line-height:1.6}.free-plan-message p{margin:.5rem 0}.usage-warning{margin-top:1rem;padding:1rem;background:#fff5f5;border:1px solid #ffcccc;border-radius:8px;color:#e74c3c}.upgrade-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:1.5rem}.upgrade-option{background:#f8f9fa;border:2px solid #e0e0e0;border-radius:12px;padding:2rem;text-align:center;position:relative;transition:all .3s}.upgrade-option:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0000001a;border-color:#667eea}.upgrade-option.featured{background:linear-gradient(135deg,#f8f9fa,#f0f4ff);border-color:#667eea;border-width:3px}.featured-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.25rem 1rem;border-radius:20px;font-size:.75rem;font-weight:600}.upgrade-option h3{margin:1rem 0 .5rem;color:#1a1a2e;font-size:1.5rem}.price{font-size:2.5rem;font-weight:700;color:#667eea;margin:1rem 0}.price span{font-size:1rem;color:#666;font-weight:400}.upgrade-option ul{list-style:none;padding:0;margin:1.5rem 0;text-align:left}.upgrade-option li{padding:.5rem 0;color:#555}.btn-upgrade{width:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s;margin-top:1rem}.btn-upgrade:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-upgrade:disabled{opacity:.6;cursor:not-allowed}.subscription-loading,.subscription-error{text-align:center;padding:3rem;color:#666}.subscription-error{color:#e74c3c}@media (max-width: 768px){.subscription{padding:1rem}.subscription-header,.card-header{flex-direction:column;align-items:flex-start;gap:1rem}.plan-info{flex-direction:column;align-items:flex-start}.upgrade-options{grid-template-columns:1fr}}.admin-users{padding:2rem;max-width:1400px;margin:0 auto}.admin-users .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.admin-users h1{color:#1a1a2e;font-size:1.75rem;margin:0}.user-count{background:#f1f5f9;color:#64748b;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:500}.users-table{width:100%;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #00000014;border-collapse:collapse}.users-table thead{background:#f8fafc}.users-table th{padding:1rem 1.25rem;text-align:left;font-weight:600;color:#64748b;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e2e8f0}.users-table td{padding:1rem 1.25rem;border-bottom:1px solid #f1f5f9;vertical-align:middle}.users-table tbody tr:hover{background:#f8fafc}.user-cell{display:flex;flex-direction:column;gap:.125rem}.user-name{font-weight:600;color:#1a1a2e}.user-email{font-size:.85rem;color:#64748b}.user-company{font-size:.75rem;color:#94a3b8}.role-select{padding:.375rem .75rem;border-radius:6px;border:1px solid #e2e8f0;font-size:.85rem;font-weight:500;cursor:pointer;background:#fff}.role-select.admin{background:#f871711a;color:#dc2626;border-color:#f871714d}.role-select.user{background:#3b82f61a;color:#2563eb;border-color:#3b82f64d}.account-type{display:inline-block;padding:.25rem .625rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:capitalize}.account-type.individual{background:#f1f5f9;color:#64748b}.account-type.professional{background:#667eea1a;color:#667eea}.btn-delete{background:transparent;color:#e74c3c;border:1px solid #e74c3c;padding:.375rem .75rem;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:500;transition:all .2s}.btn-delete:hover{background:#e74c3c;color:#fff}.admin-stats{padding:2rem;max-width:1200px;margin:0 auto}.admin-stats h1{color:#1a1a2e;font-size:1.75rem;margin:0 0 2rem}.admin-stats h2{color:#1a1a2e;font-size:1.1rem;margin:0 0 1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 3px #00000014}.stat-card.active{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-card.active .stat-value,.stat-card.active .stat-label{color:#fff}.stat-icon{font-size:2rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:#f8fafc;border-radius:12px}.stat-card.active .stat-icon{background:#fff3}.stat-content{display:flex;flex-direction:column}.stat-value{font-size:2rem;font-weight:700;color:#1a1a2e;line-height:1}.stat-label{font-size:.85rem;color:#64748b;margin-top:.25rem}.panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.panel{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #00000014}.license-types{display:flex;flex-direction:column;gap:.75rem}.type-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f8fafc;border-radius:8px}.type-name{font-weight:500;text-transform:capitalize}.type-count{font-weight:700;font-size:1.1rem}.type-row.free{border-left:3px solid #94a3b8}.type-row.starter{border-left:3px solid #667eea}.type-row.professional{border-left:3px solid #764ba2}.type-row.admin{border-left:3px solid #e74c3c}.recent-users{display:flex;flex-direction:column;gap:.5rem}.user-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f8fafc;border-radius:8px}.user-row .user-info{display:flex;flex-direction:column;gap:.125rem}.user-row .user-email{font-weight:500;color:#1a1a2e;font-size:.9rem}.user-row .user-date{font-size:.75rem;color:#94a3b8}.admin-badge{background:#f8717126;color:#dc2626;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.loading,.error{text-align:center;padding:3rem;color:#64748b}.error{color:#e74c3c;background:#fef2f2;border-radius:8px}.app{min-height:100vh}.loading{display:flex;justify-content:center;align-items:center;height:100vh;font-size:1.2rem;color:#666}*{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;background:#f5f5f5}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
