:root{--sans: system-ui, "Segoe UI", Roboto, sans-serif;--mono: ui-monospace, Consolas, monospace;--sidebar-w: 240px;--header-h: 56px;--navy: #1a2332;--navy-light: #1a5276;--gold: #f5c842;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-900: #1a2332;--success: #10b981;--success-light: #ecfdf5;--success-dark: #166534;--warning: #f59e0b;--warning-light: #fffbeb;--warning-dark: #92400e;--error: #ef4444;--error-light: #fef2f2;--error-dark: #991b1b;--info: #3b82f6;--info-light: #eff6ff;--info-dark: #1e40af;--purple: #8b5cf6;--orange: #f97316;--page-bg: #f5f6fa;--card-bg: #ffffff;--text-xs: 11px;--text-sm: 13px;--text-base: 14px;--text-md: 14px;--text-lg: 16px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 32px;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-12: 48px;font:var(--text-base)/1.5 var(--sans);color:var(--gray-700);background:var(--page-bg);-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;overflow-x:hidden}#root{width:100%;min-height:100vh}.skip-to-content{position:absolute;top:-100px;left:16px;z-index:9999;padding:12px 24px;background:var(--navy);color:#fff;font-size:14px;font-weight:600;border-radius:0 0 8px 8px;text-decoration:none;transition:top .15s ease}.skip-to-content:focus{top:0}:focus-visible{outline:2px solid var(--navy-light);outline-offset:2px}button:focus:not(:focus-visible),a:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible){outline:none}h1,h2,h3,h4{color:var(--navy);margin:0}a{color:var(--navy-light)}input:focus,select:focus,textarea:focus{border-color:#1a5276!important;box-shadow:0 0 0 2px #1a527626;outline:none}table{border-spacing:0}button:disabled{opacity:.5;cursor:not-allowed!important}@media(max-width:768px){input,select,textarea,button{font-size:16px!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:none;border-radius:6px;font-size:var(--text-base);font-weight:600;cursor:pointer;text-decoration:none;transition:all .15s ease}.btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:var(--navy-light);color:#fff}.btn-secondary{background:var(--gray-100);color:var(--gray-700)}.btn-gold{background:var(--gold);color:var(--navy)}.btn-outline{background:#fff;color:var(--gray-700);border:1px solid var(--gray-300);box-shadow:0 1px 3px #0000000f}.btn-outline:hover{background:var(--gray-50)}.mkt-nav{background:var(--navy);padding:14px 32px;display:flex;justify-content:space-between;align-items:center}.mkt-logo{display:flex;align-items:center;gap:10px;text-decoration:none}.mkt-logo span{font-size:18px;font-weight:700;color:#fff}.mkt-nav-links{display:flex;gap:4px;align-items:center}.mkt-nav-link{font-size:13px;font-weight:500;color:#ffffffa6;padding:8px 14px;text-decoration:none;border-radius:6px;transition:color .15s ease,background .15s ease}.mkt-nav-link:hover{color:#fff;background:#ffffff14}.mkt-nav-link.active{color:#fff;background:#ffffff1a}.mkt-nav-cta{font-size:13px;padding:8px 18px;margin-left:8px;background:var(--gold);color:var(--navy);border-radius:6px;font-weight:700;text-decoration:none;transition:filter .15s ease,transform .15s ease}.mkt-nav-cta:hover{filter:brightness(1.08);transform:translateY(-1px)}.mkt-nav-cta:active{transform:translateY(0)}.mkt-footer{padding:16px 32px;border-top:1px solid var(--gray-200);display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--gray-400);background:#fff}.mkt-footer-links{display:flex;gap:16px}.mkt-footer-links a{color:var(--gray-400);text-decoration:none;transition:color .15s ease}.mkt-footer-links a:hover{color:var(--gray-600)}@media(max-width:768px){.mkt-nav{padding:12px 16px}.mkt-nav-links{gap:0}.mkt-nav-link{padding:6px 8px;font-size:12px}.mkt-nav-cta{padding:6px 12px;font-size:12px}.mkt-footer{padding:12px 16px;flex-direction:column;gap:8px;text-align:center}}.badge{display:inline-block;border-radius:10px;padding:2px 10px;font-size:11px;font-weight:600;color:#fff;white-space:nowrap}.layout{display:flex;min-height:100vh}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;z-index:40;height:var(--header-h);background:var(--navy);color:#fff;padding:0 12px;align-items:center;justify-content:space-between}.mobile-header .mobile-logo{display:flex;align-items:center;gap:8;font-size:var(--text-lg);font-weight:600}.hamburger{background:none;border:none;color:#fff;cursor:pointer;padding:6px;border-radius:6px}.hamburger:hover{background:#ffffff1a}.sidebar{width:var(--sidebar-w);background:var(--navy);color:#fff;display:flex;flex-direction:column;flex-shrink:0;position:fixed;top:0;bottom:0;left:0;z-index:50}.sidebar-logo{padding:20px 16px;display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-nav{flex:1;padding:12px 8px;overflow-y:auto;scrollbar-width:none}.sidebar-nav::-webkit-scrollbar{display:none}.nav-link{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:6px;text-decoration:none;margin-bottom:2px;color:#ffffffb3;font-size:var(--text-base);font-weight:400;transition:background .15s,color .15s}.nav-link:hover{background:#ffffff0f;color:#fff}.nav-link--active{color:#fff;background:#ffffff1a;font-weight:600}.nav-link--highlight{color:#fff;border:2px solid #f5c842;animation:tour-pulse 1.5s ease-in-out infinite}@keyframes tour-pulse{0%,to{box-shadow:0 0 #f5c84280}50%{box-shadow:0 0 12px 4px #f5c84259}}.sidebar-user{padding:12px 16px;border-top:1px solid rgba(255,255,255,.1)}.logout-btn{display:flex;align-items:center;gap:6;background:none;border:none;color:#fff9;cursor:pointer;font-size:var(--text-sm);padding:0;transition:color .15s}.logout-btn:hover{color:#fff}.sidebar-overlay{display:none}.main-content{flex:1;margin-left:var(--sidebar-w);background:var(--page-bg);overflow:auto;min-height:100vh}@media(min-width:768px)and (max-width:1023px){:root{--sidebar-w: 60px}.sidebar{width:60px!important;overflow:hidden}.sidebar-logo span,.sidebar-nav .nav-link{font-size:0;gap:0;justify-content:center}.sidebar-nav .nav-link svg{font-size:initial;flex-shrink:0}.sidebar-logo{justify-content:center;padding:20px 8px}.sidebar-logo span{display:none}.sidebar>div:nth-child(2){display:none}.sidebar-user{padding:8px;text-align:center}.sidebar-user>div,.sidebar-user>button:first-of-type{display:none}.sidebar-user .logout-btn{justify-content:center}.sidebar-user .logout-btn span{display:none}.main-content{margin-left:60px!important}}@media(max-width:767px){.mobile-header{display:flex}.sidebar{transform:translate(-100%);transition:transform .25s ease;top:0}.sidebar--open{transform:translate(0)}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;background:#0006}.main-content{margin-left:0;padding-top:var(--header-h)}.page-header{flex-direction:column;align-items:flex-start!important;gap:12px!important}.page-header>div{width:100%;flex-wrap:wrap}.page-header input,.page-header select{width:100%!important;min-width:0!important}.page-header>div>div{flex:1 1 100%}}@media(max-width:767px){input,select,textarea,.btn,.tab-btn,.chip,.radio-chip,.nav-link,.mkt-nav-link,.mkt-mobile-link{min-height:44px}.icon-btn,button[aria-label*=Dismiss],button[aria-label*=Close],button[aria-label*=Delete],button[style*="padding: 2"]{min-height:auto}.main-content{padding-bottom:80px}}@media(max-width:1023px){.modal-overlay{padding-top:24px!important}.modal-card{max-height:90vh;overflow-y:auto}}@media(max-width:767px){.modal-overlay{padding-top:12px!important}.modal-card{max-height:95vh;padding:20px}}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;position:relative}.table-responsive table{min-width:640px}.grid-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-md)}.grid-2col{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.grid-detail{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-md)}@media(max-width:768px){.grid-2col{grid-template-columns:1fr}}@media(max-width:640px){.grid-kpis{grid-template-columns:repeat(2,1fr);gap:10px}.grid-detail{grid-template-columns:repeat(2,1fr)}.grid-mode-select{grid-template-columns:1fr!important}.step-label{display:none}.step-label-active{display:block}.wizard-actions{flex-direction:column}.wizard-actions button{width:100%}.radio-group{flex-wrap:wrap}.grid-site-conditions{grid-template-columns:1fr!important}}@media(max-width:400px){.grid-kpis{grid-template-columns:1fr}}.mkt-hamburger{display:none;background:none;border:none;cursor:pointer;padding:6px}.mkt-mobile-menu{display:none}@media(max-width:640px){.mkt-nav{flex-wrap:wrap;position:relative}.mkt-nav-links{display:none}.mkt-hamburger{display:block}.mkt-mobile-menu{display:flex;flex-direction:column;width:100%;padding:8px 0;gap:2px}.mkt-mobile-link{display:block;padding:10px 14px;font-size:14px;color:#ffffffb3;text-decoration:none;border-radius:6px;transition:background .15s}.mkt-mobile-link:hover,.mkt-mobile-link.active{background:#ffffff1a;color:#fff}.mkt-footer{flex-direction:column;gap:8px;text-align:center}.mkt-footer-links{flex-wrap:wrap;justify-content:center;gap:10px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.page{padding:var(--space-lg);animation:fadeIn .2s ease}@media(max-width:768px){.page{padding:var(--space-md)}}@media(max-width:480px){.page{padding:12px}}.card{background:var(--card-bg);border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000000f;border:1px solid transparent;transition:border-color .2s,box-shadow .2s}.card:hover{box-shadow:0 4px 12px #00000014;border-color:#1a527626}@media(max-width:480px){.card{padding:14px;border-radius:6px}}.card--lg{padding:var(--space-lg)}.card--xl{padding:28px}.main-content>.page{max-width:1200px}.form-label{display:block;font-size:var(--text-sm);font-weight:600;margin-bottom:var(--space-xs);color:var(--gray-700)}.form-label--sm{font-size:var(--text-xs);font-weight:500;color:var(--gray-500)}.form-input{width:100%;padding:8px 10px;border:1px solid var(--gray-300);border-radius:4px;font-size:var(--text-sm);box-sizing:border-box;color:inherit;background:inherit}.form-input::placeholder{color:var(--gray-400)}.form-select{width:100%;padding:8px 10px;border:1px solid var(--gray-300);border-radius:4px;font-size:var(--text-sm);box-sizing:border-box;color:inherit;background:inherit}.form-textarea{width:100%;padding:8px 10px;border:1px solid var(--gray-300);border-radius:4px;font-size:var(--text-sm);box-sizing:border-box;color:inherit;min-height:80px;resize:vertical}.form-hint{font-size:var(--text-xs);color:var(--gray-400);margin-top:var(--space-xs)}.chip{padding:6px 14px;border-radius:20px;border:1px solid var(--gray-300);background:var(--card-bg);color:var(--gray-700);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:all .15s}.chip:hover{border-color:var(--navy-light)}.chip--active{border-color:var(--navy-light);background:var(--navy-light);color:var(--card-bg)}.radio-chip{padding:8px 16px;border-radius:6px;border:2px solid var(--gray-200);background:var(--card-bg);color:var(--gray-500);font-size:var(--text-xs);font-weight:400;cursor:pointer;transition:all .15s;text-align:center}.radio-chip:hover{border-color:var(--gray-300)}.radio-chip--active{border-color:var(--navy-light);background:var(--info-light);color:var(--navy-light);font-weight:600}.section-title{font-size:var(--text-lg);font-weight:600;color:var(--navy);margin:0 0 var(--space-md)}.section-subtitle{font-size:var(--text-sm);color:var(--gray-500);margin:0 0 var(--space-md)}.flex-row{display:flex;align-items:center;gap:var(--space-sm)}.flex-row--lg{display:flex;align-items:center;gap:var(--space-md)}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-wrap{flex-wrap:wrap}.flex-center{display:flex;align-items:center;justify-content:center}.flex-col{display:flex;flex-direction:column;gap:var(--space-sm)}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-muted{color:var(--gray-500)}.text-light{color:var(--gray-400)}.text-navy{color:var(--navy)}.text-success{color:var(--success)}.text-error{color:var(--error)}.text-warning{color:var(--warning)}.font-semibold{font-weight:600}.font-bold{font-weight:700}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.trade-badge-link{cursor:pointer}.trade-badge-link:hover .trade-badge{background:#ffffff40!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 4px 12px #0003;transition:all .2s ease}.trade-badge{transition:all .15s}table tbody tr{transition:background .15s;animation:rowFadeIn .3s ease}@keyframes rowFadeIn{0%{opacity:0}to{opacity:1}}table tbody tr:hover{background:var(--gray-50)!important;transition:background .15s}.clickable-row{cursor:pointer;transition:background .1s ease}.clickable-row:hover{background:var(--gray-50)}.icon-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;transition:background .1s ease,opacity .1s ease;display:inline-flex;align-items:center}.icon-btn:hover{background:var(--gray-100);opacity:.8}.link-btn{background:none;border:none;cursor:pointer;font-weight:500;transition:opacity .1s ease}.link-btn:hover{opacity:.7}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--page-bg);padding:var(--space-md)}.auth-card{width:100%;max-width:400px;background:var(--card-bg);border-radius:12px;padding:40px;box-shadow:0 4px 20px #00000014}@media(max-width:480px){.auth-card{padding:24px 20px;border-radius:8px}}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px;flex-wrap:wrap}.page-header h1{font-size:22px;font-weight:600;color:var(--navy)}@media(max-width:480px){.page-header h1{font-size:18px}}@keyframes toast-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#00000080;display:flex;align-items:flex-start;justify-content:center;padding-top:80px;overflow-y:auto}.modal-card{background:var(--card-bg);border-radius:10px;padding:28px;width:540px;max-width:92vw;box-shadow:0 8px 40px #0003}.tab-bar{display:flex;gap:4px;margin-bottom:20px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tab-bar::-webkit-scrollbar{display:none}.tab-btn{padding:8px 16px;border-radius:6px;border:none;cursor:pointer;font-size:var(--text-sm);font-weight:600;text-transform:capitalize;background:var(--gray-100);color:var(--gray-700);transition:background .15s}.tab-btn--active{background:var(--navy-light);color:#fff}.step-bar{display:flex;gap:8px;margin-bottom:24px}.step-dot{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:600;background:var(--gray-200);color:var(--gray-500);transition:all .2s}.step-dot--active{background:var(--navy-light);color:#fff}.step-dot--done{background:var(--success);color:#fff}.step-line{flex:1;height:2px;align-self:center;background:var(--gray-200)}.step-line--done{background:var(--success)}body.hb-dark .main-content{--page-bg: #1a1d23;--card-bg: #242830;--navy: #e8eaed;--navy-light: #5ba3d9;--gray-50: #2a2e36;--gray-100: #2e323a;--gray-200: #3a3f4a;--gray-300: #4a4f5a;--gray-400: #7a8290;--gray-500: #9ca3af;--gray-600: #c8cdd4;--gray-700: #e0e0e0;--gray-900: #f0f0f0;--success-light: #1a2e1a;--success-dark: #6ee7b7;--warning-light: #2e2a1a;--warning-dark: #fbbf24;--error-light: #2e1a1a;--error-dark: #fca5a5;--info-light: #1a1a2e;--info-dark: #93c5fd;--orange: #fb923c;background:var(--page-bg);color:var(--gray-700)}body.hb-dark .main-content h1,body.hb-dark .main-content h2,body.hb-dark .main-content h3,body.hb-dark .main-content h4{color:var(--gray-900)}body.hb-dark .main-content .card,body.hb-dark .main-content .modal-card{background:var(--card-bg);box-shadow:0 1px 3px #0000004d}body.hb-dark .main-content .modal-overlay{background:#0009}body.hb-dark .main-content .page-header h1{color:var(--gray-900)}body.hb-dark .main-content table thead tr{background:var(--gray-50)!important}body.hb-dark .main-content table thead th{color:var(--gray-500)!important}body.hb-dark .main-content table tbody tr{border-color:var(--gray-200)!important}body.hb-dark .main-content table tbody td{color:var(--gray-600)}body.hb-dark .main-content input,body.hb-dark .main-content select,body.hb-dark .main-content textarea{background:var(--gray-50);border-color:var(--gray-200);color:var(--gray-700)}body.hb-dark .main-content input::placeholder,body.hb-dark .main-content select::placeholder,body.hb-dark .main-content textarea::placeholder{color:var(--gray-400)}body.hb-dark .main-content .tab-btn{background:var(--gray-50);color:var(--gray-500)}body.hb-dark .main-content .tab-btn--active{background:#1a5276;color:#fff}body.hb-dark .main-content .step-dot{background:var(--gray-200);color:var(--gray-500)}body.hb-dark .main-content .btn-secondary{background:var(--gray-100);color:var(--gray-700)}body.hb-dark .main-content .btn-outline{background:var(--gray-100);border-color:var(--gray-300);color:var(--gray-700)}body.hb-dark .main-content a{color:var(--navy-light)}body.hb-dark .main-content .spinner{border-color:var(--gray-300);border-top-color:#5ba3d9}body.hb-dark .main-content .badge{opacity:.9}body.hb-dark .main-content .table-responsive{border-color:var(--gray-200)}body.hb-dark .main-content .grid-kpis .card{border:1px solid var(--gray-200)}body.hb-dark .main-content label{color:var(--gray-600)}body.hb-dark .main-content hr{border-color:var(--gray-200)}body.hb-dark .main-content .page{color:var(--gray-700)}body.hb-dark .main-content table tbody tr:hover{background:var(--gray-100)!important}body.hb-dark .main-content .clickable-row:hover{background:var(--gray-100)}body.hb-dark .main-content .icon-btn:hover{background:var(--gray-200)}th[style*="cursor: pointer"]:hover{color:var(--navy)!important}.grid-kpis .card{padding:12px 14px!important;transition:box-shadow .2s}.grid-kpis .card .kpi-value{font-size:20px}.grid-kpis .card:hover{box-shadow:0 2px 8px #00000014}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:32px;height:32px;border:3px solid var(--gray-200);border-top-color:#1a5276;border-right-color:#f5c842;border-radius:50%;animation:spin .8s linear infinite;margin:20px auto}@keyframes skeletonReveal{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.skeleton-fade-in{animation:skeletonReveal .4s ease}table tbody{animation:skeletonReveal .3s ease}@keyframes badgeIn{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}.badge{animation:badgeIn .3s ease}.kpi-value{animation:countFadeIn .5s ease}@keyframes countFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@page{margin:.5in .6in;size:letter}@media print{.sidebar,.notification-bubble,.toast-notification,.ai-chat-bubble,nav,.page-header,.tab-bar,.breadcrumb,.logout-btn,.sidebar-user,button[aria-label="Open chat assistant"],button[aria-label="Close chat"],.sidebar-nav,.sidebar-logo{display:none!important}body{background:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.main-content{margin-left:0!important;padding:0!important}.page{animation:none!important}.card{box-shadow:none!important;border:none!important}.modal-overlay{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;background:#fff!important;z-index:99999!important;overflow:visible!important}.modal-card{max-width:100%!important;max-height:none!important;height:auto!important;box-shadow:none!important;border:none!important;margin:0!important;padding:20px!important;overflow:visible!important;border-radius:0!important}.modal-card button{display:none!important}table{page-break-inside:auto}tr{page-break-inside:avoid;page-break-after:auto}thead{display:table-header-group}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}
