:root{--primary: #0891b2;--primary-dark: #0e7490;--primary-light: #22d3ee;--primary-glow: rgba(8, 145, 178, .4);--secondary: #10b981;--secondary-dark: #059669;--accent: #f59e0b;--dark: #0f172a;--darker: #020617;--card-bg: rgba(255, 255, 255, .03);--card-bg-hover: rgba(255, 255, 255, .06);--border: rgba(255, 255, 255, .1);--border-hover: rgba(255, 255, 255, .2);--text-primary: #f8fafc;--text-secondary: #64748b;--text-muted: #475569;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--info: #0891b2;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 4px 20px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .5);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--darker);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased}.layout{display:flex;min-height:100vh}.sidebar{width:260px;background:var(--dark);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100vh;z-index:100;transition:transform .3s ease}.sidebar-header{padding:1.5rem;border-bottom:1px solid var(--border)}.logo{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:700;color:var(--text-primary)}.logo-icon{width:36px;height:36px;background:linear-gradient(135deg,var(--primary),var(--primary-dark));border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:#fff}.logo-sub{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem;display:block}.sidebar-nav{flex:1;padding:1rem 0;overflow-y:auto}.nav-section{display:block;padding:1rem 1.5rem .5rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.nav-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;color:var(--text-secondary);text-decoration:none;font-size:.9rem;font-weight:500;transition:all .2s ease}.nav-link:hover{background:var(--card-bg);color:var(--text-primary)}.nav-link.active{background:linear-gradient(90deg,rgba(8,145,178,.2),transparent);color:var(--primary-light);border-left:3px solid var(--primary)}.sidebar-footer{padding:1rem 1.5rem;border-top:1px solid var(--border)}.user-info{margin-bottom:.75rem}.user-name{display:block;font-weight:600;font-size:.9rem}.user-role{display:block;font-size:.75rem;color:var(--text-secondary)}.logout-btn{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s ease}.logout-btn:hover{background:#ef44441a;border-color:var(--error);color:var(--error)}.main{flex:1;margin-left:260px;padding:2rem;min-height:100vh}.mobile-menu-toggle{display:none;position:fixed;top:1rem;left:1rem;z-index:200;width:44px;height:44px;background:var(--dark);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;align-items:center;justify-content:center}.mobile-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:50}@media (max-width: 768px){.mobile-menu-toggle{display:flex}.mobile-overlay.show{display:block}.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main{margin-left:0;padding:5rem 1rem 2rem}}.page{max-width:1400px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.page-header h1{font-size:1.75rem;font-weight:700;margin-bottom:.25rem}.page-header p{color:var(--text-secondary);font-size:.9rem}.page-loading{display:flex;align-items:center;justify-content:center;height:50vh;color:var(--text-secondary)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.5rem;display:flex;align-items:center;gap:1rem;transition:all .2s ease}.stat-card:hover{background:var(--card-bg-hover);border-color:var(--border-hover)}.stat-icon{width:48px;height:48px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.stat-icon.tenants{background:#0891b233;color:var(--primary)}.stat-icon.regions{background:#10b98133;color:var(--secondary)}.stat-icon.partners{background:#f59e0b33;color:var(--accent)}.stat-icon.nodes{background:#ec489933;color:#ec4899}.stat-icon.sessions,.stat-icon.credentials{background:#06b6d433;color:#06b6d4}.stat-value{display:block;font-size:1.75rem;font-weight:700}.stat-label{font-size:.85rem;color:var(--text-secondary)}.data-table-container{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--border)}.data-table th{background:#ffffff05;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.data-table tr:hover td{background:var(--card-bg-hover)}.data-table .empty-state{text-align:center;padding:3rem;color:var(--text-secondary)}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn:hover{background:var(--card-bg-hover);border-color:var(--border-hover)}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));border-color:transparent;color:#fff}.btn-primary:hover{box-shadow:0 4px 20px var(--primary-glow)}.btn-danger{background:#ef44441a;border-color:#ef44444d;color:var(--error)}.btn-danger:hover{background:#ef444433}.btn-sm{padding:.375rem .75rem;font-size:.8rem}.action-buttons{display:flex;gap:.5rem}.toggle-btn{padding:.375rem .75rem;background:#ef44441a;border:none;border-radius:20px;color:var(--error);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease}.toggle-btn.active{background:#10b98133;color:var(--secondary)}.toggle-btn.large{padding:.5rem 1rem;font-size:.85rem}.badge{display:inline-block;padding:.25rem .5rem;background:var(--card-bg);border-radius:20px;font-size:.75rem;font-weight:500}.badge-info{background:#0891b233;color:var(--primary-light)}.badge-success{background:#10b98133;color:var(--secondary)}.badge-warning{background:#f59e0b33;color:var(--accent)}.badge-secondary{background:#64748b33;color:var(--text-secondary)}code{background:var(--card-bg);padding:.125rem .375rem;border-radius:4px;font-size:.85rem;font-family:Fira Code,monospace}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:300;padding:1rem}.modal{background:var(--dark);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:480px;max-height:90vh;overflow-y:auto}.modal-lg{max-width:640px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}.modal-header h2{font-size:1.125rem;font-weight:600}.modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:1.5rem;cursor:pointer}.modal-close:hover{background:var(--card-bg);color:var(--text-primary)}.modal form{padding:1.5rem}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem;border-top:1px solid var(--border);margin-top:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.85rem;font-weight:500;color:var(--text-secondary);margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem 1rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9rem;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary)}.form-group textarea{resize:vertical;font-family:Fira Code,monospace;font-size:.85rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-sm);padding:.75rem 1rem;color:var(--error);font-size:.9rem;margin-bottom:1rem}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem;background:linear-gradient(135deg,var(--darker),var(--dark))}.login-container{width:100%;max-width:400px;background:var(--dark);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2.5rem}.login-header{text-align:center;margin-bottom:2rem}.login-logo{width:64px;height:64px;background:linear-gradient(135deg,var(--primary),var(--primary-dark));border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff;margin:0 auto 1rem}.login-header h1{font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.login-header p{color:var(--text-secondary)}.login-form{margin-bottom:1.5rem}.login-form .btn{width:100%;justify-content:center;padding:.875rem}.login-footer{text-align:center;font-size:.8rem;color:var(--text-muted)}.tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:1px solid var(--border);padding-bottom:.5rem}.tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.tab:hover{background:var(--card-bg);color:var(--text-primary)}.tab.active{background:var(--card-bg);color:var(--primary-light)}.settings-category{margin-bottom:2rem}.settings-category h3{font-size:.9rem;font-weight:600;color:var(--text-secondary);margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}.settings-list{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md)}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border);gap:1rem}.setting-item:last-child{border-bottom:none}.setting-key{font-weight:500;font-family:Fira Code,monospace;font-size:.9rem}.setting-description{display:block;font-size:.8rem;color:var(--text-muted)}.setting-value{display:flex;align-items:center;gap:.75rem}.setting-edit{display:flex;gap:.5rem}.setting-edit input{width:200px;padding:.375rem .75rem;background:var(--darker);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.85rem}.features-list{display:flex;flex-direction:column;gap:1rem}.feature-item{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md)}.feature-name{display:block;font-weight:600;margin-bottom:.25rem}.feature-key{display:block;font-size:.8rem;color:var(--text-muted);margin-bottom:.25rem}.feature-description{display:block;font-size:.85rem;color:var(--text-secondary)}.feature-rollout{display:inline-block;background:#f59e0b33;color:var(--accent);padding:.125rem .5rem;border-radius:20px;font-size:.75rem;font-weight:600;margin-top:.25rem}.filters-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-size:.85rem;color:var(--text-secondary)}.filter-group select{padding:.5rem .75rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.85rem}.results-count{font-size:.85rem;color:var(--text-secondary)}.audit-list{display:flex;flex-direction:column;gap:.75rem}.audit-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md)}.audit-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.audit-icon.action-created{background:#10b98133;color:var(--secondary)}.audit-icon.action-updated{background:#0891b233;color:var(--primary)}.audit-icon.action-deleted{background:#ef444433;color:var(--error)}.audit-icon.action-viewed{background:#64748b33;color:var(--text-secondary)}.audit-icon.action-tested{background:#f59e0b33;color:var(--accent)}.audit-content{flex:1;min-width:0}.audit-header{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.25rem}.action-badge{padding:.125rem .5rem;border-radius:20px;font-size:.7rem;font-weight:600;text-transform:uppercase}.action-badge.created{background:#10b98133;color:var(--secondary)}.action-badge.updated{background:#0891b233;color:var(--primary)}.action-badge.deleted{background:#ef444433;color:var(--error)}.action-badge.viewed{background:#64748b33;color:var(--text-secondary)}.action-badge.tested{background:#f59e0b33;color:var(--accent)}.audit-actor{font-weight:500;font-size:.9rem}.audit-ip{font-size:.8rem;color:var(--text-muted)}.audit-details{font-size:.85rem;color:var(--text-secondary)}.audit-credential{display:block}.audit-changes{display:block;font-size:.8rem;color:var(--text-muted);margin-top:.25rem}.audit-time{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:2rem}.page-info{font-size:.85rem;color:var(--text-secondary)}.provider-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;background:var(--card-bg);border-radius:20px;font-size:.85rem;font-weight:500}.provider-badge.payment{background:#0891b21a;color:var(--primary-light)}.priority{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.priority-1{background:#10b98133;color:var(--secondary)}.priority-2{background:#f59e0b33;color:var(--accent)}.priority-3,.priority-4,.priority-5{background:#64748b33;color:var(--text-secondary)}.test-result{font-size:.8rem;font-weight:500}.test-result.success{color:var(--secondary)}.test-result.failed{color:var(--error)}.test-result.never{color:var(--text-muted)}.activity-section{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.5rem}.activity-section h2{font-size:1rem;font-weight:600;margin-bottom:1rem}.activity-list{display:flex;flex-direction:column;gap:.75rem}.activity-item{display:flex;align-items:center;gap:1rem;padding:.75rem;background:#ffffff05;border-radius:var(--radius-sm)}.activity-icon{width:28px;height:28px;background:var(--card-bg);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.activity-content{flex:1}.activity-action{display:block;font-weight:500;font-size:.9rem}.activity-actor{display:block;font-size:.8rem;color:var(--text-secondary)}.activity-time{font-size:.75rem;color:var(--text-muted)}.empty-state{text-align:center;padding:2rem;color:var(--text-muted)}.limits{font-size:.8rem;color:var(--text-secondary)}.limits.none{color:var(--text-muted);font-style:italic}.loading-screen{display:flex;align-items:center;justify-content:center;height:100vh;font-size:1.125rem;color:var(--text-secondary)}.constellation-section{margin-top:2rem;margin-bottom:2rem}.section-header{margin-bottom:1.5rem}.section-header h2{font-size:1.25rem;font-weight:600;margin-bottom:.25rem}.section-header p{color:var(--text-secondary);font-size:.9rem}.constellation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}@media (max-width: 1200px){.constellation-grid{grid-template-columns:1fr}}.constellation-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.5rem}.constellation-card h3{font-size:1rem;font-weight:600;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.satellite-map .map-container{background:var(--darker);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:.75rem}.satellite-map .map-caption{font-size:.85rem;color:var(--text-secondary);text-align:center}.constellation-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:1rem;margin-bottom:1.5rem}.constellation-stat{text-align:center;padding:.75rem;background:#0891b21a;border-radius:var(--radius-sm)}.constellation-stat .stat-value{display:block;font-size:1.25rem;font-weight:700;color:var(--primary-light)}.constellation-stat .stat-label{display:block;font-size:.7rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}.middleware-info{background:#10b9811a;border-radius:var(--radius-sm);padding:1rem;margin-top:1rem}.middleware-info h4{font-size:.85rem;font-weight:600;color:var(--secondary);margin-bottom:.5rem}.middleware-info ul{list-style:none;padding:0;margin:0}.middleware-info li{font-size:.8rem;color:var(--text-secondary);padding:.25rem 0 .25rem 1rem;position:relative}.middleware-info li:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:4px;background:var(--secondary);border-radius:50%}.coverage-form{margin-bottom:1rem}.coverage-form .input-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.coverage-form .input-group label{display:block;font-size:.8rem;color:var(--text-secondary);margin-bottom:.25rem}.coverage-form .input-group input{width:100%;padding:.5rem .75rem;background:var(--darker);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9rem}.coverage-form .input-group input:focus{outline:none;border-color:var(--primary)}.coverage-result{padding:1rem;border-radius:var(--radius-sm);margin-top:1rem}.coverage-result.has-coverage{background:#10b9811a;border:1px solid rgba(16,185,129,.3)}.coverage-result.no-coverage{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3)}.coverage-status{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.coverage-result.has-coverage .coverage-status{color:var(--secondary)}.coverage-result.no-coverage .coverage-status{color:var(--accent)}.coverage-status span{font-weight:600}.coverage-details p{font-size:.85rem;color:var(--text-secondary);margin:.25rem 0}.stations-list{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto}.station-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#ffffff05;border-radius:var(--radius-sm);transition:background .2s ease}.station-item:hover{background:#ffffff0d}.station-icon{width:32px;height:32px;background:#0891b233;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--primary-light);flex-shrink:0}.station-info{flex:1;min-width:0}.station-name{display:block;font-weight:500;font-size:.9rem}.station-coords{display:block;font-size:.75rem;color:var(--text-muted);font-family:Fira Code,monospace}.station-country{padding:.25rem .5rem;background:var(--card-bg);border-radius:4px;font-size:.75rem;font-weight:600;color:var(--text-secondary)}.hotspots-page .filters-bar{display:flex;gap:1rem;margin-bottom:1.5rem}.hotspots-page .filters-bar select{padding:.5rem 1rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9rem}.telemetry-mini{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem}.telemetry-mini div{display:flex;align-items:center;gap:.25rem;color:var(--text-secondary)}.coverage-section{background:#0891b20d;border:1px solid rgba(8,145,178,.2);border-radius:var(--radius-md);padding:1.25rem;margin:1.5rem 0}.coverage-section h3{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:var(--primary-light);margin-bottom:1rem}.btn-secondary{background:#64748b33;border:1px solid rgba(100,116,139,.3);color:var(--text-primary)}.btn-secondary:hover{background:#64748b4d}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.coverage-validation-result{margin-top:1rem;padding:1rem;border-radius:var(--radius-sm)}.coverage-validation-result.valid{background:#10b9811a;border:1px solid rgba(16,185,129,.3)}.coverage-validation-result.warning{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3)}.coverage-validation-result .coverage-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;font-weight:600}.coverage-validation-result.valid .coverage-header{color:var(--secondary)}.coverage-validation-result.warning .coverage-header{color:var(--accent)}.coverage-validation-result .coverage-stats{display:flex;gap:1.5rem;flex-wrap:wrap;margin-bottom:1rem}.coverage-validation-result .coverage-stat{display:flex;flex-direction:column}.coverage-validation-result .coverage-stat .label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.coverage-validation-result .coverage-stat .value{font-size:1rem;font-weight:600;color:var(--text-primary)}.coverage-validation-result .coverage-stat .value small{font-size:.8rem;font-weight:400;color:var(--text-secondary);margin-left:.25rem}.coverage-warnings,.coverage-recommendations{margin-top:.75rem;padding:.75rem;background:#0003;border-radius:var(--radius-sm)}.coverage-warnings strong,.coverage-recommendations strong{display:block;font-size:.8rem;margin-bottom:.5rem}.coverage-warnings{color:var(--accent)}.coverage-recommendations{color:var(--text-secondary)}.coverage-warnings ul,.coverage-recommendations ul{margin:0;padding-left:1.25rem;font-size:.85rem}.coverage-warnings li,.coverage-recommendations li{margin:.25rem 0}.terminal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.terminal-card{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:var(--card-bg);border:2px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease}.terminal-card:hover{background:var(--card-bg-hover)}.terminal-card.selected{border-color:var(--primary);background:#0891b21a}.terminal-card input[type=radio]{margin-top:.25rem}.terminal-info{flex:1}.terminal-info strong{display:block;font-size:.9rem}.terminal-info small{display:block;font-size:.8rem;color:var(--text-muted);margin-bottom:.25rem}.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.product-card{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:var(--card-bg);border:2px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease}.product-card:hover{background:var(--card-bg-hover)}.product-card.selected{border-color:var(--secondary);background:#10b9811a}.product-card input[type=radio]{margin-top:.25rem}.product-info{flex:1}.product-info strong{display:block;font-size:.9rem}.product-info .price{display:block;font-size:1.1rem;font-weight:700;color:var(--secondary);margin:.25rem 0}.product-info small{display:block;font-size:.8rem;color:var(--text-muted)}.form-section{margin-bottom:1.5rem}.form-section h3{font-size:.9rem;font-weight:600;color:var(--text-secondary);margin-bottom:1rem}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;padding:1.5rem}.detail-section.full-width{grid-column:1 / -1}.detail-section h3{font-size:.9rem;font-weight:600;color:var(--text-secondary);margin-bottom:.75rem}.detail-section dl{display:grid;grid-template-columns:100px 1fr;gap:.5rem 1rem}.detail-section dt{font-size:.8rem;color:var(--text-muted)}.detail-section dd{font-size:.9rem;color:var(--text-primary)}.telemetry-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem}.telemetry-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1rem;text-align:center}.telemetry-label{display:block;font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.telemetry-value{display:block;font-size:1.25rem;font-weight:700;color:var(--primary-light)}.badge-gray{background:#64748b33;color:var(--text-secondary)}.badge-yellow{background:#f59e0b33;color:var(--accent)}.badge-green{background:#10b98133;color:var(--secondary)}.badge-orange{background:#f9731633;color:#f97316}.badge-red{background:#ef444433;color:var(--error)}.btn-warning{background:#f59e0b1a;border-color:#f59e0b4d;color:var(--accent)}.btn-warning:hover{background:#f59e0b33}.text-muted{color:var(--text-muted)}.text-warning{color:var(--accent)}
