.premium-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;transition:opacity .3s ease;padding:1rem}.premium-modal-overlay.show{opacity:1}.premium-modal-overlay.loading{pointer-events:none;opacity:.8}.premium-modal{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d;transform:scale(.9);transition:transform .3s ease}.premium-modal-overlay.show .premium-modal{transform:scale(1)}.premium-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e5e7eb}.premium-modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#111827}.modal-close-btn{background:none;border:none;padding:.5rem;cursor:pointer;color:#6b7280;transition:color .2s;display:flex;align-items:center;justify-content:center}.modal-close-btn:hover{color:#111827}.premium-modal-content{padding:1.5rem}.premium-benefits-section{margin-bottom:2rem}.premium-benefits-section h3{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:#111827}.premium-benefits-list{list-style:none;padding:0;margin:0}.premium-benefits-list li{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem 0;color:#374151}.premium-benefits-list li svg{flex-shrink:0;margin-top:.125rem;color:#0d5c65}.pricing-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}.pricing-plan{border:2px solid #e5e7eb;border-radius:8px;padding:1.5rem 1rem;text-align:center;transition:all .2s;position:relative}.pricing-plan:hover{border-color:#5a8fa8;box-shadow:0 4px 12px #5a8fa82e}.pricing-plan.featured{border-color:#5a8fa8;background:linear-gradient(135deg,#e0eef4,#b8d4e3)}.plan-badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#5a8fa8,#7ba9c1);color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.plan-header h4{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:#111827}.plan-price{margin-bottom:.5rem}.price-amount{font-size:2rem;font-weight:700;color:#111827}.price-period{font-size:.875rem;color:#6b7280}.plan-savings{font-size:.875rem;color:#0d5c65;font-weight:600;margin-top:.25rem}.plan-select-btn{width:100%;padding:.75rem 1rem;background:linear-gradient(135deg,#5a8fa8,#7ba9c1);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:background .2s;margin-top:1rem}.plan-select-btn:hover{background:#4a7f98}.plan-select-btn:active{transform:scale(.98)}.premium-modal-footer{border-top:1px solid #e5e7eb;padding-top:1.5rem;text-align:center}.account-code-note{font-size:.875rem;color:#6b7280;margin:0 0 1rem;line-height:1.5}.account-code-modal{max-width:500px}.account-code-instructions{margin-bottom:1.5rem}.account-code-instructions p{margin:0 0 .5rem;color:#374151;line-height:1.5}.device-limit-note{font-size:.875rem;color:#6b7280}.account-code-input-section{margin-bottom:1rem}.account-code-input-section label{display:block;margin-bottom:.5rem;font-weight:600;color:#111827}.account-code-input{width:100%;padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:6px;font-size:1.25rem;font-weight:600;text-align:center;letter-spacing:.1em;text-transform:uppercase;transition:border-color .2s}.account-code-input:focus{outline:none;border-color:#5a8fa8}.account-code-input:disabled{background:#f3f4f6;cursor:not-allowed}.input-hint{font-size:.75rem;color:#6b7280;margin-top:.25rem}.account-code-error,.account-code-success{padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;font-size:.875rem}.account-code-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.account-code-success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;display:flex;align-items:flex-start;gap:.75rem}.account-code-success svg{flex-shrink:0;color:#10b981;margin-top:.125rem}.account-code-success strong{display:block;margin-bottom:.25rem}.account-code-success p{margin:.25rem 0}.device-count{font-size:.75rem;color:#059669;font-weight:600}.account-code-actions{display:flex;gap:.75rem;margin-bottom:1.5rem}.account-code-actions button{flex:1}.btn-primary{padding:.75rem 1.5rem;background:linear-gradient(135deg,#5a8fa8,#7ba9c1);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:background .2s}.btn-primary:hover:not(:disabled){background:#4a7f98}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary{padding:.75rem 1.5rem;background:#fff;color:#374151;border:2px solid #e5e7eb;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{border-color:#9ca3af;background:#f9fafb}.btn-link{background:none;border:none;color:#5a8fa8;font-weight:600;cursor:pointer;text-decoration:underline;padding:.5rem}.btn-link:hover{color:#4a7f98}.account-code-help{text-align:center;padding-top:1.5rem;border-top:1px solid #e5e7eb}.account-code-help p{margin:0 0 .5rem;color:#6b7280;font-size:.875rem}.account-code-help p:first-child{font-weight:600;color:#111827}@media (max-width: 640px){.premium-modal{max-width:100%;max-height:100vh;border-radius:0}.pricing-plans{grid-template-columns:1fr}.account-code-actions{flex-direction:column}}@media (prefers-color-scheme: dark){.premium-modal{background:#1f2937}.premium-modal-header{border-bottom-color:#374151}.premium-modal-header h2{color:#f9fafb}.modal-close-btn{color:#9ca3af}.modal-close-btn:hover,.premium-benefits-section h3,.plan-header h4,.price-amount,.account-code-input-section label{color:#f9fafb}.premium-benefits-list li,.account-code-instructions p{color:#d1d5db}.pricing-plan{border-color:#374151;background:#fff}.pricing-plan:hover{border-color:#5a8fa8}.pricing-plan.featured{background:linear-gradient(135deg,#e0eef4,#b8d4e3)}.price-period{color:#6b7280}.account-code-input{background:#111827;border-color:#374151;color:#f9fafb}.account-code-input:focus{border-color:#5a8fa8}.btn-secondary{background:#374151;color:#f9fafb;border-color:#4b5563}.btn-secondary:hover{background:#4b5563;border-color:#6b7280}.premium-modal-footer,.account-code-help{border-top-color:#374151}}
