@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--color-primary:#f60;--color-primary-hover:#e55a00;--color-primary-light:#ff66001f;--color-navy:#1a1a2e;--color-navy-light:#16213e;--color-bg:#f5f5f5;--color-surface:#fff;--color-surface-2:#f8f8f8;--color-border:#e2e8f0;--color-text:#1a1a2e;--color-text-secondary:#64748b;--color-text-muted:#94a3b8;--color-success:#34c759;--color-success-light:#34c7591f;--color-danger:#ff3b30;--color-danger-light:#ff3b301f;--color-warning:#fc0;--color-warning-light:#ffcc0026;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 12px #00000014, 0 2px 6px #0000000a;--shadow-lg:0 10px 30px #0000001f, 0 4px 10px #0000000f;--shadow-glow:0 0 20px #f603;--navbar-height:56px;--panel-width:380px;--gap:16px;--transition:.2s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}#root{flex-direction:column;height:100%;display:flex}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.navbar{height:var(--navbar-height);background:var(--color-navy);z-index:100;flex-shrink:0;align-items:center;gap:12px;padding:0 24px;display:flex;position:relative;box-shadow:0 2px 12px #00000040}.navbar-logo-icon{background:linear-gradient(135deg, var(--color-primary), #ff9500);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:18px;display:flex;box-shadow:0 2px 8px #f606}.navbar-brand{flex-direction:column;line-height:1;display:flex}.navbar-title{color:#fff;letter-spacing:-.3px;font-size:18px;font-weight:800}.navbar-title span{color:var(--color-primary)}.navbar-subtitle{color:#ffffff80;letter-spacing:.3px;margin-top:2px;font-size:11px;font-weight:400}.navbar-badge{background:var(--color-primary-light);color:var(--color-primary);letter-spacing:.5px;text-transform:uppercase;border:1px solid #ff66004d;border-radius:20px;margin-left:auto;padding:4px 10px;font-size:11px;font-weight:600}.analysis-page{height:calc(100vh - var(--navbar-height));flex:1;display:flex;overflow:hidden}.control-panel{width:var(--panel-width);background:var(--color-surface);border-right:1px solid var(--color-border);padding:var(--gap);gap:var(--gap);z-index:10;flex-direction:column;flex-shrink:0;display:flex;position:relative;overflow:hidden auto}.map-panel{flex:1;position:relative;overflow:hidden}.error-banner{background:var(--color-danger-light);border-radius:var(--radius-md);border:1px solid #ff3b304d;align-items:flex-start;gap:10px;padding:12px 14px;animation:.3s slideDown;display:flex}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.error-banner-icon{flex-shrink:0;margin-top:1px;font-size:16px}.error-banner-body{flex:1}.error-banner-title{color:var(--color-danger);font-size:13px;font-weight:600}.error-banner-message{color:#c0392b;margin-top:2px;font-size:12px;line-height:1.5}.error-banner-close{cursor:pointer;color:var(--color-danger);opacity:.7;transition:opacity var(--transition);background:0 0;border:none;flex-shrink:0;padding:0;font-size:16px;line-height:1}.error-banner-close:hover{opacity:1}.section-label{letter-spacing:1px;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:6px;font-size:10px;font-weight:700}.location-input-wrapper{flex-direction:column;gap:6px;display:flex}.location-input-container{position:relative}.location-input-icon{z-index:1;pointer-events:none;font-size:16px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.location-input{border:1.5px solid var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text);background:var(--color-surface);transition:border-color var(--transition), box-shadow var(--transition);outline:none;padding:11px 14px 11px 40px;font-family:inherit;font-size:13px}.location-input::placeholder{color:var(--color-text-muted)}.location-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.location-input-hint{color:var(--color-text-muted);align-items:center;gap:5px;padding-left:4px;font-size:11px;display:flex}.location-selected-chip{background:var(--color-primary-light);border-radius:var(--radius-sm);border:1px solid #ff660040;align-items:center;gap:8px;padding:8px 12px;animation:.3s fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.location-selected-chip-icon{font-size:14px}.location-selected-chip-text{color:var(--color-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;font-weight:500;overflow:hidden}.drawing-instructions{border-radius:var(--radius-lg);background:linear-gradient(135deg,#f0f9ff 0%,#e8f4fd 100%);border:1px solid #bee3f8;padding:16px;animation:.4s fadeIn}.drawing-instructions-header{align-items:center;gap:8px;margin-bottom:12px;display:flex}.drawing-instructions-icon{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;display:flex}.drawing-instructions-title{color:#1e40af;font-size:13px;font-weight:700}.drawing-instructions-steps{flex-direction:column;gap:9px;list-style:none;display:flex}.drawing-instructions-step{align-items:flex-start;gap:10px;display:flex}.step-number{color:#fff;background:#3b82f6;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-top:1px;font-size:11px;font-weight:700;display:flex}.step-text{color:#1e3a8a;font-size:12px;line-height:1.5}.step-text strong{font-weight:600}.analyse-section{flex-direction:column;gap:8px;animation:.4s slideUp;display:flex}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.analyse-btn{background:linear-gradient(135deg, var(--color-primary), #ff8c00);color:#fff;border-radius:var(--radius-md);cursor:pointer;width:100%;transition:all var(--transition);letter-spacing:.2px;border:none;justify-content:center;align-items:center;gap:8px;padding:14px 20px;font-family:inherit;font-size:15px;font-weight:700;display:flex;box-shadow:0 4px 14px #ff660059}.analyse-btn:hover:not(:disabled){background:linear-gradient(135deg, var(--color-primary-hover), #e07000);transform:translateY(-1px);box-shadow:0 6px 20px #ff660073}.analyse-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #ff66004d}.analyse-btn:disabled{opacity:.75;cursor:not-allowed;transform:none}.area-chip{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-size:12px;display:flex}.area-chip-value{color:var(--color-text);font-weight:700}.spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.result-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);animation:.5s slideUp;overflow:hidden}.result-header{align-items:center;gap:10px;padding:14px 16px;display:flex}.result-header.no-panels{background:linear-gradient(135deg,#fff5f5,#fff0f0);border-bottom:1px solid #ff3b3026}.result-header.has-panels{background:linear-gradient(135deg,#f0fff4,#ecfdf5);border-bottom:1px solid #34c75933}.result-status-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex}.result-status-icon.no-panels{background:var(--color-danger-light)}.result-status-icon.has-panels{background:var(--color-success-light)}.result-status-text{flex:1}.result-status-title{font-size:14px;font-weight:700;line-height:1.2}.result-status-title.no-panels{color:var(--color-danger)}.result-status-title.has-panels{color:#15803d}.result-status-subtitle{color:var(--color-text-muted);margin-top:2px;font-size:11px}.result-body{flex-direction:column;gap:12px;padding:14px 16px;display:flex}.result-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.result-metric{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition);flex-direction:column;gap:3px;padding:10px 12px;display:flex}.result-metric:hover{border-color:var(--color-primary)}.result-metric-label{letter-spacing:.5px;text-transform:uppercase;color:var(--color-text-muted);font-size:10px;font-weight:600}.result-metric-value{color:var(--color-text);font-size:16px;font-weight:800;line-height:1.2}.result-metric-unit{color:var(--color-text-secondary);font-size:10px;font-weight:500}.confidence-badge{text-transform:capitalize;border-radius:20px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.confidence-badge.high{background:var(--color-success-light);color:#15803d;border:1px solid #34c7594d}.confidence-badge.medium{background:var(--color-warning-light);color:#92400e;border:1px solid #fc06}.confidence-badge.low{background:var(--color-danger-light);color:var(--color-danger);border:1px solid #ff3b304d}.result-notes{background:var(--color-surface-2);border:1px solid var(--color-border);border-left:3px solid var(--color-primary);border-radius:var(--radius-sm);padding:10px 12px}.result-notes-label{letter-spacing:.5px;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:5px;font-size:10px;font-weight:700}.result-notes-text{color:var(--color-text-secondary);font-size:12px;line-height:1.6}.result-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.btn-save-lead{background:linear-gradient(135deg, var(--color-primary), #ff8c00);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition);border:none;justify-content:center;align-items:center;gap:5px;padding:10px 12px;font-family:inherit;font-size:12px;font-weight:600;display:flex;box-shadow:0 2px 8px #ff66004d}.btn-save-lead:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #f606}.btn-save-lead:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn-reset{background:var(--color-surface);color:var(--color-text-secondary);border:1.5px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition);justify-content:center;align-items:center;gap:5px;padding:10px 12px;font-family:inherit;font-size:12px;font-weight:600;display:flex}.btn-reset:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.btn-export-excel{color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition);background:linear-gradient(135deg,#10b981,#059669);border:none;justify-content:center;align-items:center;gap:5px;padding:10px 12px;font-family:inherit;font-size:12px;font-weight:600;display:flex;box-shadow:0 2px 8px #10b9814d}.btn-export-excel:hover{background:linear-gradient(135deg,#34d399,#10b981);transform:translateY(-1px);box-shadow:0 4px 12px #10b98173}.map-container{width:100%;height:100%}.map-load-error{background:var(--color-bg);width:100%;height:100%;color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.map-load-error-icon{font-size:48px}.map-load-error-title{color:var(--color-text);font-size:16px;font-weight:600}.map-load-error-msg{font-size:13px}.map-legend{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius-md);color:#fff;pointer-events:none;z-index:5;background:#1a1a2eeb;border:1px solid #ffffff1f;padding:10px 14px;font-size:11px;position:absolute;bottom:20px;left:20px}.map-legend-title{letter-spacing:.5px;text-transform:uppercase;opacity:.6;margin-bottom:6px;font-size:10px;font-weight:700}.map-legend-items{flex-direction:column;gap:4px;display:flex}.map-legend-item{align-items:center;gap:7px;display:flex}.map-legend-dot{border-radius:2px;flex-shrink:0;width:10px;height:10px}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0000008c;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal{background:var(--color-surface);border-radius:var(--radius-xl);width:100%;max-width:420px;box-shadow:var(--shadow-lg);animation:.3s cubic-bezier(.34,1.56,.64,1) modalPop;overflow:hidden}@keyframes modalPop{0%{opacity:0;transform:scale(.9)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-header{background:linear-gradient(135deg, var(--color-navy), var(--color-navy-light));justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header-left{align-items:center;gap:12px;display:flex}.modal-header-icon{background:var(--color-primary);border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex}.modal-title{color:#fff;font-size:16px;font-weight:700}.modal-subtitle{color:#ffffff80;margin-top:1px;font-size:11px}.modal-close-btn{color:#fff;cursor:pointer;transition:background var(--transition);background:#ffffff1a;border:none;border-radius:6px;padding:6px 8px;font-size:16px}.modal-close-btn:hover{background:#fff3}.modal-body{flex-direction:column;gap:14px;padding:20px 24px;display:flex}.modal-pre-filled{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);grid-template-columns:1fr 1fr;gap:10px;padding:12px 14px;display:grid}.modal-pre-field{flex-direction:column;gap:2px;display:flex}.modal-pre-label{letter-spacing:.5px;text-transform:uppercase;color:var(--color-text-muted);font-size:10px;font-weight:700}.modal-pre-value{color:var(--color-text);font-size:13px;font-weight:600}.modal-pre-value.address{color:var(--color-text-secondary);grid-column:1/-1;font-size:12px;font-weight:500}.form-group{flex-direction:column;gap:5px;display:flex}.form-label{color:var(--color-text-secondary);font-size:12px;font-weight:600}.form-input,.form-textarea{border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);background:var(--color-surface);transition:border-color var(--transition), box-shadow var(--transition);outline:none;padding:10px 12px;font-family:inherit;font-size:13px}.form-input:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-textarea{resize:vertical;min-height:70px;line-height:1.5}.modal-footer{border-top:1px solid var(--color-border);gap:10px;padding:16px 24px;display:flex}.btn-primary{background:linear-gradient(135deg, var(--color-primary), #ff8c00);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition);border:none;flex:1;justify-content:center;align-items:center;gap:7px;padding:11px 16px;font-family:inherit;font-size:13px;font-weight:700;display:flex;box-shadow:0 2px 8px #ff66004d}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 14px #f606}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--color-surface);color:var(--color-text-secondary);border:1.5px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition);padding:11px 16px;font-family:inherit;font-size:13px;font-weight:600}.btn-secondary:hover{border-color:var(--color-primary);color:var(--color-primary)}.toast-container{z-index:2000;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:24px;right:24px}.toast{background:var(--color-navy);color:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);pointer-events:auto;align-items:center;gap:10px;max-width:320px;padding:12px 18px;font-size:13px;font-weight:500;animation:.4s cubic-bezier(.34,1.56,.64,1) toastIn;display:flex}.toast.success{border-left:3px solid var(--color-success)}.toast.error{border-left:3px solid var(--color-danger)}@keyframes toastIn{0%{opacity:0;transform:translate(30px)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes toastOut{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(30px)scale(.95)}}.toast.leaving{animation:.3s forwards toastOut}.panel-divider{background:var(--color-border);height:1px;margin:0 -16px}.map-cursor-crosshair,.map-cursor-crosshair *{cursor:crosshair!important}.map-draw-toolbar{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;background:#1a1a2eeb;border:1px solid #ffffff1f;border-radius:30px;flex-wrap:nowrap;align-items:center;gap:6px;max-width:calc(100% - 180px);padding:6px 10px;animation:.3s fadeIn;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #00000059}.draw-btn{cursor:pointer;transition:all var(--transition);white-space:nowrap;border:none;border-radius:20px;align-items:center;gap:5px;padding:7px 14px;font-family:inherit;font-size:12px;font-weight:600;line-height:1;display:flex}.draw-btn-start{background:var(--color-primary);color:#fff;box-shadow:0 2px 8px #f606}.draw-btn-start:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #ff660080}.draw-btn-icon{font-size:13px}.draw-btn-finish{background:var(--color-success);color:#fff;box-shadow:0 2px 8px #34c75966}.draw-btn-finish:hover{background:#28a745;transform:translateY(-1px)}.draw-btn-undo{color:#ffffffd9;background:#ffffff1a;border:1px solid #ffffff26}.draw-btn-undo:hover{background:#ffffff2e}.draw-btn-cancel{color:#ff6b6b;background:#ff3b3026;border:1px solid #ff3b3040}.draw-btn-cancel:hover{background:#ff3b3040}.draw-status{color:#fffc;white-space:nowrap;align-items:center;gap:7px;padding:0 6px;font-size:11px;font-weight:500;display:flex}.draw-status-dot{background:var(--color-primary);width:7px;height:7px;box-shadow:0 0 6px var(--color-primary);border-radius:50%;flex-shrink:0;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}@media (width<=768px){.analysis-page{flex-direction:column}.control-panel{border-right:none;border-bottom:1px solid var(--color-border);width:100%;height:auto;max-height:50vh}.map-panel{flex:none;height:50vh}.navbar-badge{display:none}.result-grid{grid-template-columns:1fr 1fr}}@media (width<=480px){.modal{max-width:100%;margin:0 10px}.modal-pre-filled,.result-actions{grid-template-columns:1fr}}.mode-toggle-tabs{background:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border);grid-template-columns:1fr 1fr;margin-bottom:16px;padding:4px;display:grid}.tab-btn{color:var(--color-text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition);background:0 0;border:none;padding:8px 12px;font-family:inherit;font-size:12px;font-weight:600}.tab-btn:hover{color:var(--color-text)}.tab-btn.active{background:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-sm)}.radius-control-group{flex-direction:column;gap:8px;margin-top:14px;display:flex}.radius-label-row{justify-content:space-between;align-items:center;display:flex}.radius-label-row label{color:var(--color-text);font-size:12px;font-weight:600}.radius-value{color:var(--color-primary);background:var(--color-primary-light);border-radius:4px;padding:2px 6px;font-size:12px;font-weight:700}.radius-control-group input[type=range]{width:100%;accent-color:var(--color-primary);cursor:pointer}.scanned-results-container{flex-direction:column;margin-top:16px;animation:.3s fadeIn;display:flex}.scanned-results-header{color:var(--color-text-secondary);border-bottom:1.5px solid var(--color-border);margin-bottom:8px;padding-bottom:6px;font-size:12px;font-weight:700}.scanned-results-list{flex-direction:column;gap:8px;max-height:250px;padding-right:4px;display:flex;overflow-y:auto}.scanned-roof-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition);align-items:center;gap:10px;padding:10px 12px;display:flex}.scanned-roof-item:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.scanned-roof-item.selected{border-color:var(--color-primary);background:var(--color-primary-light);box-shadow:0 0 0 1px var(--color-primary)}.roof-item-number{color:#fff;background:#ff3b30;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;min-width:28px;height:28px;font-family:Inter,sans-serif;font-size:13px;font-weight:700;transition:background .2s,transform .2s;display:flex;box-shadow:0 2px 6px #ff3b3073}.scanned-roof-item.selected .roof-item-number{background:var(--color-primary);transform:scale(1.1);box-shadow:0 2px 8px #ff660080}.roof-item-details{flex-direction:column;min-width:0;display:flex}.roof-item-title{color:var(--color-text);margin-bottom:2px;font-size:13px;font-weight:700}.roof-item-addr{color:var(--color-text-muted);font-size:11px;line-height:1.35}.ai-establishment-box{background:linear-gradient(135deg,#1e293bf2,#0f172afa);border:1px solid #94a3b82e;border-radius:10px;margin-bottom:16px;padding:14px 16px;box-shadow:0 4px 14px #00000038}.ai-est-header{margin-bottom:10px}.ai-est-badge{color:#fff;text-transform:uppercase;letter-spacing:.6px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:6px;padding:3px 8px;font-size:11px;font-weight:700;box-shadow:0 2px 6px #3b82f659}.ai-est-title{color:#f8fafc;align-items:center;gap:8px;margin-bottom:10px;font-size:15px;font-weight:700;display:flex}.ai-est-icon{font-size:18px}.ai-est-row{align-items:flex-start;gap:8px;margin-bottom:6px;font-size:12.5px;line-height:1.4;display:flex}.ai-est-row:last-child{margin-bottom:0}.ai-est-label{color:#94a3b8;flex-shrink:0;min-width:70px;font-weight:600}.ai-est-val{color:#e2e8f0;word-break:break-word}.highlight-contact{color:#38bdf8;font-weight:600}.login-page-container{background-color:#0f172a;justify-content:center;align-items:center;width:100vw;min-height:100vh;padding:24px;font-family:Inter,sans-serif;display:flex;position:relative;overflow:hidden}.login-background-glow{filter:blur(120px);z-index:1;opacity:.35;pointer-events:none;border-radius:50%;position:absolute}.glow-orange{background:radial-gradient(circle,#f97316 0%,#0000 70%);width:480px;height:480px;top:-100px;right:-100px}.glow-blue{background:radial-gradient(circle,#38bdf8 0%,#0000 70%);width:520px;height:520px;bottom:-120px;left:-120px}.login-glass-card{z-index:2;-webkit-backdrop-filter:blur(20px);background:#1e293bbf;border:1px solid #ffffff1f;border-radius:20px;width:100%;max-width:440px;padding:36px 32px;animation:.4s cubic-bezier(.16,1,.3,1) cardAppear;position:relative;box-shadow:0 25px 50px -12px #00000080,0 0 40px #f973161a}@keyframes cardAppear{0%{opacity:0;transform:translateY(16px)scale(.98)}10%{opacity:1;transform:translateY(0)scale(1)}}.login-header{text-align:center;margin-bottom:28px}.login-brand-icon{margin-bottom:10px;font-size:38px;animation:3s ease-in-out infinite pulseGlow;display:inline-block}@keyframes pulseGlow{0%,to{filter:drop-shadow(0 0 8px #f9731680);transform:scale(1)}50%{filter:drop-shadow(0 0 16px #f97316cc);transform:scale(1.08)}}.login-title{color:#fff;letter-spacing:-.5px;margin-bottom:6px;font-size:26px;font-weight:800}.login-title span{color:#f97316}.login-subtitle{color:#94a3b8;font-size:13.5px;font-weight:400}.login-step-tracker{background:#0f172a80;border:1px solid #ffffff0f;border-radius:12px;justify-content:center;align-items:center;margin-bottom:24px;padding:8px 12px;display:flex}.step-item{color:#64748b;align-items:center;gap:8px;font-size:12.5px;font-weight:500;transition:all .3s;display:flex}.step-item.active{color:#f8fafc;font-weight:600}.step-num{color:#94a3b8;background:#334155;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:700;transition:all .3s;display:flex}.step-item.active .step-num{color:#fff;background:#f97316;box-shadow:0 0 12px #f9731666}.step-line{background:#334155;flex:1;height:1px;margin:0 12px}.login-error-alert{color:#fca5a5;background:#ef444426;border:1px solid #ef444466;border-radius:10px;align-items:center;gap:10px;margin-bottom:20px;padding:12px 14px;font-size:13px;animation:.4s ease-in-out shake;display:flex}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.login-form{flex-direction:column;gap:18px;display:flex}.login-input-group{flex-direction:column;gap:6px;display:flex}.login-input-group label{color:#cbd5e1;font-size:12.5px;font-weight:600}.input-with-icon{align-items:center;display:flex;position:relative}.input-icon{color:#94a3b8;pointer-events:none;font-size:16px;position:absolute;left:14px}.input-with-icon input{color:#fff;background:#0f172a;border:1px solid #ffffff26;border-radius:10px;outline:none;width:100%;height:46px;padding:0 16px 0 42px;font-size:14px;transition:all .2s}.input-with-icon input:focus{border-color:#f97316;box-shadow:0 0 0 3px #f9731633}.input-with-icon input::placeholder{color:#475569}.input-hint{color:#64748b;margin-top:2px;font-size:11.5px}.input-hint strong{color:#94a3b8}.btn-login-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f97316 0%,#ea580c 100%);border:none;border-radius:10px;justify-content:center;align-items:center;height:48px;margin-top:6px;font-size:15px;font-weight:700;transition:all .25s;display:flex;box-shadow:0 4px 14px #f9731659}.btn-login-submit:hover:not(:disabled){background:linear-gradient(135deg,#fb923c 0%,#f97316 100%);transform:translateY(-1px);box-shadow:0 6px 20px #f9731673}.btn-login-submit:active:not(:disabled){transform:translateY(0)}.btn-login-submit:disabled{opacity:.65;cursor:not-allowed}.verified-comp-banner{background:#34c7591f;border:1px solid #34c75959;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:4px;padding:12px 16px;display:flex}.banner-label{text-transform:uppercase;letter-spacing:.5px;color:#4ade80;margin-bottom:2px;font-size:10.5px;font-weight:700;display:block}.banner-val{color:#fff;font-size:14px;display:block}.banner-url{color:#86efac;opacity:.8;font-size:11px;display:block}.btn-change-comp{color:#cbd5e1;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .2s}.btn-change-comp:hover{color:#fff;background:#ffffff1a}.login-footer{text-align:center;color:#475569;margin-top:28px;font-size:11.5px}.navbar-user-profile{background:#ffffff14;border:1px solid #ffffff1f;border-radius:30px;align-items:center;gap:12px;padding:4px 12px;display:flex}.nav-comp-badge{color:#f97316;font-size:12px;font-weight:700}.nav-user-badge{color:#e2e8f0;font-size:12px;font-weight:500}.btn-nav-logout{color:#fca5a5;cursor:pointer;background:#ef444433;border:1px solid #ef444466;border-radius:14px;padding:4px 10px;font-size:11px;font-weight:700;transition:all .2s}.btn-nav-logout:hover{color:#fff;background:#ef4444}
