.subscription-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.subscription-modal{background:var(--glass-surface-dark-overlay,#1a1a1a);border-radius:21px;padding:2rem;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;position:relative;border:1px solid var(--glass-conn-dark-border,#333)}.subscription-modal.downgrade-modal{max-width:600px}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--glass-conn-gray-text,#888);font-size:1.5rem;cursor:pointer;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover{background:hsla(0,0%,100%,.1);color:var(--glass-surface-elevated,#fff)}.modal-header{text-align:center;margin-bottom:2rem}.modal-header h2{color:var(--glass-surface-elevated,#fff);margin:0 0 .5rem;font-size:1.5rem}.modal-header p{color:var(--glass-conn-gray-text,#888);margin:0}.billing-toggle{display:flex;gap:.5rem;justify-content:center;margin-bottom:2rem}.toggle-btn{padding:.75rem 1.5rem;border:1px solid var(--glass-conn-dark-border,#333);background:transparent;color:var(--glass-conn-gray-text,#888);border-radius:8px;cursor:pointer;transition:all .2s;font-size:.875rem}.toggle-btn:hover{border-color:var(--glass-conn-medium-gray,#555)}.toggle-btn.active,.toggle-btn:hover{color:var(--glass-surface-elevated,#fff)}.toggle-btn.active{background:var(--glass-accent-green-dark,#10b981);border-color:var(--glass-accent-green-dark,#10b981)}.save-badge{background:var(--glass-accent-green-darker,#059669);padding:.125rem .5rem;border-radius:4px;font-size:.625rem;margin-left:.5rem;text-transform:uppercase;letter-spacing:.025em}.tiers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:1rem;gap:1rem;margin-bottom:2rem}.tier-card{background:var(--glass-admin-bg-deep,#0a0a0a);border:2px solid var(--glass-conn-dark-border,#333);border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .2s;text-align:center}.tier-card:hover:not(.disabled){border-color:var(--glass-accent-green-dark,#10b981);transform:translateY(-2px)}.tier-card.selected{border-color:var(--glass-accent-green-dark,#10b981);background:rgba(16,185,129,.1)}.tier-card.disabled{opacity:.5;cursor:not-allowed}.tier-card h3{color:var(--glass-surface-elevated,#fff);margin:0 0 .5rem;font-size:1.125rem}.tier-connections{color:var(--glass-conn-gray-text,#888);font-size:.875rem;margin-bottom:1rem}.tier-price{color:var(--glass-accent-green-dark,#10b981);font-size:1.5rem;font-weight:700}.tier-price span{font-size:.875rem;font-weight:400;color:var(--glass-conn-gray-text,#888)}.tier-monthly-equiv{color:var(--glass-message-text-secondary,#666);font-size:.75rem;margin-top:.25rem}.tier-warning{color:var(--glass-accent-warning,#f59e0b);font-size:.75rem;margin-top:.75rem;padding:.5rem;background:rgba(245,158,11,.1);border-radius:4px}.tiers-loading{text-align:center;color:var(--glass-conn-gray-text,#888);padding:2rem}.preview-summary{background:var(--glass-admin-bg-deep,#0a0a0a);border-radius:8px;padding:1rem;margin-bottom:1.5rem;border:1px solid var(--glass-conn-dark-border,#333)}.preview-row{display:flex;justify-content:space-between;padding:.5rem 0;color:var(--glass-conn-gray-text,#888)}.preview-row.credit{color:var(--glass-accent-green-dark,#10b981)}.preview-row.total{border-top:1px solid var(--glass-conn-dark-border,#333);padding-top:.75rem;margin-top:.5rem}.preview-row.total,.subscribe-btn{color:var(--glass-surface-elevated,#fff);font-weight:600}.subscribe-btn{width:100%;padding:1rem;background:linear-gradient(135deg,var(--glass-accent-green-dark,#10b981) 0,var(--glass-accent-green-darker,#059669) 100%);border:none;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .2s}.subscribe-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px rgba(16,185,129,.3)}.subscribe-btn:disabled{opacity:.5;cursor:not-allowed}.subscribe-btn.downgrade{background:linear-gradient(135deg,var(--glass-accent-warning,#f59e0b) 0,var(--glass-accent-amber-dark,#d97706) 100%)}.subscription-note{text-align:center;color:var(--glass-message-text-secondary,#666);font-size:.75rem;margin-top:1rem}.subscription-error{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:var(--glass-accent-danger,#ef4444);padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.subscription-page{max-width:800px;margin:0 auto;padding:2rem}.subscription-page h1{color:var(--glass-surface-elevated,#fff);margin:0 0 2rem;font-size:1.75rem}.subscription-page h2{color:var(--glass-surface-elevated,#fff);margin:0 0 1rem;font-size:1.25rem}.loading-state{text-align:center;color:var(--glass-conn-gray-text,#888);padding:4rem 2rem}.current-plan-card{background:var(--glass-surface-dark-overlay,#1a1a1a);border-radius:12px;padding:2rem;margin-bottom:2rem;border:1px solid var(--glass-conn-dark-border,#333)}.plan-name{color:var(--glass-accent-green-dark,#10b981);font-size:1.5rem;font-weight:700}.plan-details,.plan-name{margin-bottom:1.5rem}.detail-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--glass-conn-dark-border,#333);color:var(--glass-conn-gray-text,#888)}.detail-row:last-child{border-bottom:none}.detail-row span:last-child{color:var(--glass-surface-elevated,#fff)}.status-badge{padding:.25rem .75rem;border-radius:4px;font-size:.75rem;text-transform:uppercase;letter-spacing:.025em}.status-badge.active{background:rgba(16,185,129,.2);color:var(--glass-accent-green-dark,#10b981)}.status-badge.cancelled{background:rgba(239,68,68,.2);color:var(--glass-accent-danger,#ef4444)}.status-badge.past_due{background:rgba(245,158,11,.2);color:var(--glass-accent-warning,#f59e0b)}.plan-actions{display:flex;gap:1rem;flex-wrap:wrap}.upgrade-btn{flex:1 1;min-width:120px;padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--glass-accent-green-dark,#10b981) 0,var(--glass-accent-green-darker,#059669) 100%);border:none;border-radius:8px;color:var(--glass-surface-elevated,#fff);font-weight:500;cursor:pointer;transition:all .2s}.upgrade-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(16,185,129,.3)}.downgrade-btn{flex:1 1;min-width:120px;padding:.75rem 1.5rem;background:transparent;border:1px solid var(--glass-accent-warning,#f59e0b);border-radius:8px;color:var(--glass-accent-warning,#f59e0b);font-weight:500;cursor:pointer;transition:all .2s}.downgrade-btn:hover{background:rgba(245,158,11,.1)}.cancel-btn{flex:1 1;min-width:120px;padding:.75rem 1.5rem;background:transparent;border:1px solid var(--glass-accent-danger,#ef4444);border-radius:8px;color:var(--glass-accent-danger,#ef4444);font-weight:500;cursor:pointer;transition:all .2s}.cancel-btn:hover{background:rgba(239,68,68,.1)}.upgrade-prompt{background:linear-gradient(135deg,rgba(16,185,129,.1),rgba(5,150,105,.1));border:1px solid rgba(16,185,129,.3);border-radius:8px;padding:1.5rem;text-align:center}.upgrade-prompt p{color:var(--glass-accent-green-dark,#10b981);margin:0 0 1rem;font-weight:500}.usage-progress{background:var(--glass-surface-dark-overlay,#1a1a1a);border-radius:12px;padding:1.5rem;margin-bottom:2rem;border:1px solid var(--glass-conn-dark-border,#333)}.progress-label{display:flex;justify-content:space-between;margin-bottom:.75rem;color:var(--glass-conn-gray-text,#888);font-size:.875rem}.progress-bar{background:var(--glass-conn-dark-border,#333);border-radius:4px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,var(--glass-accent-green-dark,#10b981) 0,var(--glass-accent-green-darker,#059669) 100%);height:100%;border-radius:4px;transition:width .3s}.progress-fill.warning{background:linear-gradient(90deg,var(--glass-accent-warning,#f59e0b) 0,var(--glass-accent-amber-dark,#d97706) 100%)}.usage-warning{margin:.75rem 0 0}.tier-comparison{background:var(--glass-surface-dark-overlay,#1a1a1a);border-radius:12px;padding:2rem;border:1px solid var(--glass-conn-dark-border,#333)}.tiers-comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:1rem;gap:1rem}.comparison-card{background:var(--glass-admin-bg-deep,#0a0a0a);border:2px solid var(--glass-conn-dark-border,#333);border-radius:12px;padding:1.5rem;text-align:center;position:relative}.comparison-card.current{border-color:var(--glass-accent-green-dark,#10b981)}.current-badge{position:absolute;top:-.75rem;left:50%;transform:translateX(-50%);background:var(--glass-accent-green-dark,#10b981);font-size:.625rem;font-weight:600;padding:.25rem .75rem;border-radius:4px;text-transform:uppercase;letter-spacing:.025em}.comparison-card h3,.current-badge{color:var(--glass-surface-elevated,#fff)}.comparison-card h3{margin:0 0 .5rem;font-size:1rem}.comparison-connections{color:var(--glass-conn-gray-text,#888);font-size:.75rem;margin-bottom:1rem}.comparison-price{margin-bottom:.5rem}.comparison-price .free{color:var(--glass-accent-green-dark,#10b981);font-size:1.25rem;font-weight:600}.comparison-price .amount{color:var(--glass-accent-green-dark,#10b981);font-size:1.5rem;font-weight:700}.comparison-price .period{color:var(--glass-conn-gray-text,#888);font-size:.875rem}.comparison-annual{color:var(--glass-message-text-secondary,#666);font-size:.625rem}.subscription-banner{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,var(--glass-surface-dark-overlay,#1a1a1a) 0,var(--glass-admin-bg-deep,#0a0a0a) 100%);border:1px solid var(--glass-conn-dark-border,#333);border-radius:8px;padding:1rem 1.5rem;margin-bottom:1.5rem}.banner-info{display:flex;align-items:center;gap:1rem}.plan-badge{background:var(--glass-accent-green-dark,#10b981);color:var(--glass-surface-elevated,#fff);padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.plan-badge.free{background:var(--glass-a11y-gray-500,#6b7280)}.connection-count{color:var(--glass-conn-gray-text,#888);font-size:.875rem}.upgrade-banner-btn{background:linear-gradient(135deg,var(--glass-accent-green-dark,#10b981) 0,var(--glass-accent-green-darker,#059669) 100%);border:none;padding:.5rem 1rem;border-radius:6px;color:var(--glass-surface-elevated,#fff);font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s}.upgrade-banner-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(16,185,129,.3)}.limit-warning{color:var(--glass-accent-warning,#f59e0b);font-size:.875rem;display:flex;align-items:center;gap:.5rem}@media (max-width:768px){.subscription-page{padding:1rem}.subscription-modal{padding:1.5rem;margin:1rem}.tiers-grid{grid-template-columns:1fr}.tiers-comparison-grid{grid-template-columns:1fr 1fr}.billing-toggle{flex-direction:column}.toggle-btn{width:100%}.subscription-banner{flex-direction:column;gap:1rem;text-align:center}.banner-info{gap:.5rem}.banner-info,.plan-actions{flex-direction:column}.plan-actions button{width:100%}.current-plan-card,.tier-comparison,.usage-progress{padding:1.5rem}}@media (max-width:480px){.tiers-comparison-grid{grid-template-columns:1fr}.modal-header h2{font-size:1.25rem}}.paywall-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.paywall-modal{max-width:900px}.paywall-warning-banner{background:linear-gradient(135deg,var(--glass-accent-warning,#f59e0b) 0,var(--glass-accent-amber-dark,#d97706) 100%);color:var(--glass-surface-elevated,#fff);padding:.75rem 1rem;border-radius:8px;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600}.warning-icon{font-size:1.25rem}.paywall-modal .limit-status{color:var(--glass-conn-gray-text,#888);font-size:1.125rem;margin-top:.5rem}.paywall-modal .limit-status strong{color:var(--glass-accent-warning,#f59e0b)}.paywall-progress{margin-top:1rem;display:flex;align-items:center;gap:1rem}.paywall-progress .progress-bar{flex:1 1}.progress-percent{color:var(--glass-accent-warning,#f59e0b);font-weight:600;font-size:.875rem}.paywall-benefits{background:rgba(16,185,129,.05);border:1px solid rgba(16,185,129,.2);border-radius:8px;padding:1.25rem;margin-bottom:1.5rem}.paywall-benefits h3{color:var(--glass-accent-green-dark,#10b981);font-size:.875rem;margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.05em}.paywall-benefits ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:.5rem;gap:.5rem}.paywall-benefits li{color:var(--glass-text-disabled,#ccc);font-size:.875rem;display:flex;align-items:center;gap:.5rem}.benefit-check{color:var(--glass-accent-green-dark,#10b981);font-weight:700}.paywall-tiers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1.5rem}.paywall-tier-card{background:var(--glass-admin-bg-deep,#0a0a0a);border:2px solid var(--glass-conn-dark-border,#333);border-radius:10px;padding:1rem;text-align:center;transition:all .2s;position:relative}.paywall-tier-card:hover:not(.free-tier){border-color:var(--glass-accent-green-dark,#10b981);transform:translateY(-2px)}.paywall-tier-card.selected{border-color:var(--glass-accent-green-dark,#10b981);background:rgba(16,185,129,.1)}.paywall-tier-card.free-tier{opacity:.6;cursor:not-allowed}.paywall-tier-card.free-tier:hover{transform:none}.paywall-tier-card h3{color:var(--glass-surface-elevated,#fff);font-size:.875rem;margin:0 0 .25rem}.paywall-tier-card .tier-connections{font-size:.7rem;margin-bottom:.5rem}.paywall-tier-card .tier-price{font-size:1.125rem}.paywall-tier-card .tier-price .amount{font-weight:700}.paywall-tier-card .free-label{color:var(--glass-conn-gray-text,#888);font-size:.875rem}.paywall-tier-card .tier-monthly-equiv{font-size:.625rem}.tier-select-btn{margin-top:.75rem;width:100%;padding:.5rem;border:none;border-radius:6px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s;background:linear-gradient(135deg,var(--glass-accent-green-dark,#10b981) 0,var(--glass-accent-green-darker,#059669) 100%);color:var(--glass-surface-elevated,#fff)}.tier-select-btn:hover:not(:disabled){transform:translateY(-1px)}.tier-select-btn.disabled,.tier-select-btn:disabled{background:var(--glass-conn-dark-border,#333);color:var(--glass-message-text-secondary,#666);cursor:not-allowed}.paywall-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--glass-conn-dark-border,#333)}.manage-link{color:var(--glass-accent-green-dark,#10b981);text-decoration:none;font-size:.875rem;transition:color .2s}.manage-link:hover{color:var(--glass-accent-green-darker,#059669)}.paywall-close-btn{background:none;border:1px solid var(--glass-conn-medium-gray,#555);color:var(--glass-conn-gray-text,#888);padding:.5rem 1rem;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s}.paywall-close-btn:hover{border-color:var(--glass-conn-gray-text,#888);color:var(--glass-surface-elevated,#fff)}.connection-counter-card{background:var(--glass-surface-dark-overlay,#1a1a1a);border:1px solid var(--glass-conn-dark-border,#333);border-radius:12px;padding:1.5rem}.connection-counter-card.at-limit{border-color:rgba(239,68,68,.5)}.connection-counter-card.near-limit{border-color:rgba(245,158,11,.5)}.connection-counter-card .counter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.connection-counter-card .counter-header h3{color:var(--glass-surface-elevated,#fff);font-size:1rem;margin:0}.counter-stats{display:flex;justify-content:space-around;margin-bottom:1rem}.stat-main,.stat-remaining{text-align:center}.stat-value{display:block;font-size:1.5rem;font-weight:700;color:var(--glass-accent-green-dark,#10b981)}.stat-remaining .stat-value{color:var(--glass-conn-gray-text,#888)}.at-limit .stat-remaining .stat-value{color:var(--glass-accent-danger,#ef4444)}.stat-label{color:var(--glass-conn-gray-text,#888);font-size:.75rem}.progress-section{display:flex;align-items:center;gap:1rem}.progress-section .progress-bar{flex:1 1}.progress-fill.danger{background:linear-gradient(90deg,var(--glass-accent-danger,#ef4444) 0,var(--glass-accent-red-dark,#dc2626) 100%)}.usage-warning{color:var(--glass-accent-warning,#f59e0b);font-size:.75rem;margin:1rem 0 0;text-align:center}.usage-warning.at-limit{color:var(--glass-accent-danger,#ef4444)}.upgrade-counter-btn{display:block;width:100%;margin-top:1rem;padding:.75rem;background:transparent;border:1px solid var(--glass-accent-green-dark,#10b981);border-radius:8px;color:var(--glass-accent-green-dark,#10b981);text-align:center;text-decoration:none;font-size:.875rem;font-weight:500;transition:all .2s}.upgrade-counter-btn:hover{background:rgba(16,185,129,.1)}.upgrade-counter-btn.urgent{background:linear-gradient(135deg,var(--glass-accent-green-dark,#10b981) 0,var(--glass-accent-green-darker,#059669) 100%);border:none;color:var(--glass-surface-elevated,#fff)}.connection-counter-compact{background:var(--glass-admin-bg-deep,#0a0a0a);border-radius:8px;padding:1rem}.connection-counter-compact .counter-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.connection-counter-compact .counter-label{color:var(--glass-conn-gray-text,#888);font-size:.75rem}.connection-counter-compact .counter-value{color:var(--glass-surface-elevated,#fff);font-size:.875rem;font-weight:600}.progress-bar-mini{background:var(--glass-conn-dark-border,#333);border-radius:2px;height:4px;overflow:hidden}.progress-bar-mini .progress-fill{height:100%;background:var(--glass-accent-green-dark,#10b981);border-radius:2px}.progress-bar-mini .progress-fill.warning{background:var(--glass-accent-warning,#f59e0b)}.progress-bar-mini .progress-fill.danger{background:var(--glass-accent-danger,#ef4444)}.upgrade-link-compact{display:block;margin-top:.5rem;color:var(--glass-accent-green-dark,#10b981);font-size:.75rem;text-decoration:none}.upgrade-link-compact:hover{text-decoration:underline}.connection-counter-inline{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.connection-counter-inline .counter-value{color:var(--glass-conn-gray-text,#888)}.connection-counter-inline.near-limit .counter-value{color:var(--glass-accent-warning,#f59e0b)}.connection-counter-inline.at-limit .counter-value{color:var(--glass-accent-danger,#ef4444)}.upgrade-inline-link{color:var(--glass-accent-green-dark,#10b981);text-decoration:none;font-size:.75rem}.upgrade-inline-link:hover{text-decoration:underline}.connection-counter.loading{color:var(--glass-conn-gray-text,#888);font-size:.875rem}.limit-warning.at-limit{color:var(--glass-accent-danger,#ef4444)}.tier-card-compact{background:var(--glass-admin-bg-deep,#0a0a0a);border:1px solid var(--glass-conn-dark-border,#333);border-radius:8px;padding:.75rem;text-align:center}.tier-card-compact.current,.tier-card-compact.selected{border-color:var(--glass-accent-green-dark,#10b981)}.tier-card-compact.selected{background:rgba(16,185,129,.1)}.tier-card-compact.clickable{cursor:pointer;transition:all .2s}.tier-card-compact.clickable:hover{border-color:var(--glass-accent-green-dark,#10b981)}.tier-card-compact .tier-name{font-size:.75rem;color:var(--glass-surface-elevated,#fff);margin:0 0 .25rem}.tier-card-compact .tier-price{font-size:.875rem}@media (max-width:768px){.paywall-tiers-grid{grid-template-columns:repeat(2,1fr)}.paywall-benefits ul{grid-template-columns:1fr}.paywall-footer{flex-direction:column;gap:1rem}.counter-stats{gap:1rem}}@media (max-width:480px){.paywall-tiers-grid{grid-template-columns:1fr 1fr}.paywall-tier-card{padding:.75rem}}