.layout{display:flex;flex-direction:column;min-height:100vh}.header{background:linear-gradient(135deg,#1a2332,#2c3e50 50%,#34495e);box-shadow:0 2px 8px #0003;color:var(--white);padding:0 1rem}.header-content{height:64px;justify-content:space-between;margin:0 auto;max-width:1400px}.header-content,.logo{align-items:center;display:flex}.logo{gap:.75rem}.logo,.logo:hover{color:var(--white);text-decoration:none}.logo-shield{font-size:2.5rem;line-height:1}.logo-text{align-items:flex-start;display:flex;flex-direction:column;gap:0}.logo-titan{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#7eb3d5,#a8d5f0,#7eb3d5);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:900;letter-spacing:.2em;line-height:1;margin-bottom:-4px}.logo-subtitle{color:#ffffffb3;font-size:.75rem;font-weight:400;letter-spacing:.15em;margin-left:8px}.nav{display:flex;gap:1rem}.nav-link{border-radius:.375rem;color:#fffc;padding:.5rem 1rem;text-decoration:none;transition:all .2s}.nav-link:hover{background-color:#ffffff1a;color:var(--white);text-decoration:none}.nav-link.active{background-color:#fff3;color:var(--white)}.user-menu{align-items:center;display:flex;gap:1rem}.user-name{font-size:.875rem}.btn-sm{padding:.25rem .75rem}.main{flex:1 1;margin:0 auto;max-width:1400px;padding:2rem 1rem;width:100%}.login-page{align-items:center;background-color:var(--light);display:flex;justify-content:center;min-height:100vh}.login-card{max-width:400px;width:100%}.login-logo{display:flex;justify-content:center;margin-bottom:1.5rem}.login-shield{font-size:6rem;line-height:1}.login-title{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#7eb3d5,#a8d5f0,#7eb3d5);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:900;letter-spacing:.2em;margin-bottom:.25rem;text-align:center}.login-subtitle{color:var(--secondary);font-size:.875rem;letter-spacing:.1em;margin-bottom:1.5rem;text-align:center;text-transform:uppercase}.btn-block{width:100%}.alert{border-radius:.375rem;margin-bottom:1rem;padding:.75rem 1rem}.alert-error{background-color:#fee2e2;border:1px solid #fecaca;color:#991b1b}.dashboard{background:#fff;min-height:100vh;overflow:hidden;padding-bottom:2rem;position:relative}.dashboard:before{background-image:url(/static/media/mechanical-bg.32da40f15f3d72c96e12.png);background-position:50%;background-repeat:no-repeat;background-size:cover;content:"";height:100%;left:0;opacity:.15;pointer-events:none;position:fixed;top:0;width:100%;z-index:0}.dashboard>*{position:relative;z-index:1}.dashboard-layout{display:block;padding:0 460px 0 1.5rem}.main-content{min-width:0}.dashboard-header{background:#002356;color:#fff;margin:-1.5rem -1.5rem 2rem;padding:2rem;text-align:center}.company-name{color:#fff;font-size:2rem;font-weight:700;margin:0}.company-tagline{color:#fffc;font-size:1rem;margin-top:.5rem}.modules-grid{grid-gap:1.25rem;gap:1.25rem;grid-template-columns:repeat(4,1fr)!important;margin-top:1rem}.module-tile{align-items:center;background:#fffffff2;border:2px solid #9ca3af;border-radius:12px;color:inherit;display:flex;flex-direction:column;gap:.4rem;justify-content:center;min-height:120px;padding:1.25rem 1rem;text-align:center;text-decoration:none;transition:all .3s ease}.module-tile:hover{background:#fff;border-color:#002356;box-shadow:0 12px 24px #00235626;text-decoration:none;transform:translateY(-6px)}.module-icon{align-items:center;display:flex;height:2.5rem;justify-content:center;line-height:1;width:2.5rem}.module-name{color:#002356;font-size:1rem;font-weight:700}.module-count{background:#f37b03;border-radius:12px;color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .75rem}.module-desc{color:#747678;font-size:.75rem}.stats-grid{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:0 1.5rem}.stat-card{border-left:4px solid #002356;text-align:center}.stat-value{color:#002356;font-size:2.5rem}.stat-label{color:#747678;margin-top:.25rem}.section{margin-bottom:2rem;padding:0 1.5rem}.section-header{margin-bottom:1rem}.section-title{font-size:1.25rem}.projects-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.project-card{border-left:4px solid #f37b03;color:inherit;text-decoration:none;transition:transform .2s,box-shadow .2s}.project-card:hover{box-shadow:0 4px 12px #00000026;text-decoration:none;transform:translateY(-2px)}.project-number{color:#747678;font-size:.75rem;margin-bottom:.25rem}.project-name{color:#002356;font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.project-client{color:#747678;margin-bottom:.25rem}.project-manager{color:#747678;font-size:.875rem}.empty-state{color:#747678;padding:3rem 1.5rem}.loading{padding:3rem}.dashboard-footer,.loading{color:#747678;text-align:center}.dashboard-footer{border-top:1px solid #e2e8f0;font-size:.875rem;margin-top:2rem;padding:2rem}.coming-soon-badge{border-radius:4px;font-size:.6rem;padding:.2rem .5rem;right:8px;top:8px}.module-tile{position:relative}.module-tile.disabled{cursor:default;opacity:.6}.module-tile.disabled:hover{border-color:#e2e8f0;box-shadow:0 2px 8px #0000000f;transform:none}.module-tile.ready:hover{border-color:#002356;box-shadow:0 12px 24px #00235626;transform:translateY(-6px)}.logo-container{background:#fff;border-radius:8px;padding:10px 15px}.company-logo{height:40px;width:auto}.dashboard-header{align-items:center;display:flex;justify-content:space-between}.chatbot-section{position:fixed;right:1.5rem;top:80px;width:420px;z-index:100}.chatbot-card{border:2px solid #e2e8f0;display:flex;flex-direction:column;height:700px;overflow:hidden}.chatbot-header{background:linear-gradient(135deg,#002356,#004080);border-bottom:1px solid #e2e8f0;padding:.625rem .875rem}.chatbot-title-wrapper{align-items:center;display:flex;gap:.625rem}.chatbot-avatar{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:50%;display:flex;font-size:1.25rem;height:32px;justify-content:center;width:32px}.chatbot-title{color:#fff;font-size:1rem;font-weight:700;margin:0}.chatbot-status{color:#ffffffe6;font-size:.7rem;margin:0}.chatbot-messages{background:#f8fafc;flex:1 1;gap:.5rem;overflow-y:auto;padding:.75rem}.chatbot-messages,.message{display:flex;flex-direction:column}.message-content{align-items:flex-start;display:flex;gap:.5rem}.message-titan .message-content{justify-content:flex-start}.message-user .message-content{justify-content:flex-end}.message-avatar{align-items:center;display:flex;flex-shrink:0;font-size:1rem;height:24px;justify-content:center;margin-top:.25rem;width:24px}.message-bubble{border-radius:10px;max-width:90%;padding:.5rem .75rem;position:relative}.message-titan .message-bubble{background:#fff;border:1px solid #e2e8f0;border-bottom-left-radius:4px}.message-user .message-bubble{background:linear-gradient(135deg,#002356,#004080);border-bottom-right-radius:4px;color:#fff}.message-bubble p{font-size:.875rem;line-height:1.4;margin:0 0 .25rem}.message-time{font-size:.65rem;opacity:.7}.typing-indicator{align-items:center;display:flex;gap:.35rem;padding:.5rem .75rem}.typing-indicator span{animation:typing 1.4s infinite;background:#9ca3af;border-radius:50%;height:6px;width:6px}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.7;transform:translateY(0)}30%{opacity:1;transform:translateY(-10px)}}.chatbot-input-form{background:#fff;border-top:1px solid #e2e8f0;display:flex;gap:.5rem;padding:.625rem .75rem}.chatbot-input{border:1px solid #e2e8f0;border-radius:6px;flex:1 1;font-size:.875rem;outline:none;padding:.5rem .75rem;transition:all .2s}.chatbot-input:focus{border-color:#002356;box-shadow:0 0 0 2px #0023561a}.chatbot-send-btn{align-items:center;background:linear-gradient(135deg,#002356,#004080);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:1rem;justify-content:center;padding:.5rem 1rem;transition:all .2s}.chatbot-send-btn:hover:not(:disabled){box-shadow:0 4px 12px #00235666;transform:translateY(-2px)}.chatbot-send-btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:1200px){.dashboard-layout{grid-template-columns:1fr}.chatbot-section{position:relative;top:0}.chatbot-card{height:500px}.modules-grid{grid-template-columns:repeat(3,1fr)!important}}@media (max-width:768px){.dashboard-layout{padding:0 1rem}.chatbot-card{height:400px}.message-bubble{max-width:85%}.modules-grid{grid-template-columns:repeat(2,1fr)!important}}:root{--bg-dark:#f0f1f3;--bg-card:#fff;--bg-card-hover:#f8f9fa;--border:#e0e2e7;--text-primary:#1a1a2e;--text-secondary:#5a5a72;--text-muted:#8888a0;--accent-blue:#3b82f6;--accent-purple:#8b5cf6;--accent-emerald:#10b981;--accent-amber:#f59e0b;--accent-rose:#f43f5e;--accent-cyan:#06b6d4;--gradient-1:linear-gradient(135deg,#3b82f6,#8b5cf6);--gradient-2:linear-gradient(135deg,#10b981,#06b6d4);--gradient-3:linear-gradient(135deg,#f59e0b,#f43f5e)}.sales-container{background:#f0f1f3;background:var(--bg-dark);margin:0 auto;max-width:1600px;min-height:100vh;padding:24px}.sales-page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:32px}.sales-page-title{align-items:center;display:flex;gap:16px}.sales-page-title h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#8b5cf6);background:var(--gradient-1);-webkit-background-clip:text;background-clip:text;font-size:28px;font-weight:700;margin:0}.sales-subtitle{color:#5a5a72;color:var(--text-secondary);font-size:14px;margin-top:4px}.sales-header-actions{display:flex;gap:12px}.sales-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s}.sales-btn-primary{background:linear-gradient(135deg,#3b82f6,#8b5cf6);background:var(--gradient-1);color:#fff}.sales-btn-primary:hover{box-shadow:0 4px 20px #3b82f666;transform:translateY(-1px)}.sales-btn-secondary{background:#fff;background:var(--bg-card);border:1px solid #e0e2e7;border:1px solid var(--border);color:#1a1a2e;color:var(--text-primary)}.sales-btn-secondary:hover{background:#f8f9fa;background:var(--bg-card-hover);border-color:#3b82f6;border-color:var(--accent-blue)}.sales-kpi-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);margin-bottom:32px}.sales-kpi-card{background:#fff;background:var(--bg-card);border:1px solid #e0e2e7;border:1px solid var(--border);border-radius:16px;box-shadow:0 1px 3px #00000014;overflow:hidden;padding:24px;position:relative}.sales-kpi-card:before{content:"";height:3px;left:0;position:absolute;right:0;top:0}.sales-kpi-card.blue:before{background:linear-gradient(135deg,#3b82f6,#8b5cf6);background:var(--gradient-1)}.sales-kpi-card.green:before{background:linear-gradient(135deg,#10b981,#06b6d4);background:var(--gradient-2)}.sales-kpi-card.amber:before{background:linear-gradient(135deg,#f59e0b,#f43f5e);background:var(--gradient-3)}.sales-kpi-card.purple:before{background:linear-gradient(135deg,#8b5cf6,#ec4899)}.sales-kpi-label{color:#5a5a72;color:var(--text-secondary);font-size:13px;font-weight:500;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.sales-kpi-value{font-size:32px;font-weight:700;margin-bottom:8px}.sales-kpi-card.blue .sales-kpi-value{color:#3b82f6;color:var(--accent-blue)}.sales-kpi-card.green .sales-kpi-value{color:#10b981;color:var(--accent-emerald)}.sales-kpi-card.amber .sales-kpi-value{color:#f59e0b;color:var(--accent-amber)}.sales-kpi-card.purple .sales-kpi-value{color:#8b5cf6;color:var(--accent-purple)}.sales-kpi-trend{align-items:center;display:flex;font-size:13px;gap:6px}.sales-kpi-trend.up{color:#10b981;color:var(--accent-emerald)}.sales-kpi-trend.down{color:#f43f5e;color:var(--accent-rose)}.sales-charts-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:2fr 1fr 1fr;margin-bottom:32px}.sales-chart-card{background:#fff;background:var(--bg-card);border:1px solid #e0e2e7;border:1px solid var(--border);border-radius:16px;box-shadow:0 1px 3px #00000014;padding:24px}.sales-chart-card:has(.sales-market-chart-full){padding:24px 8px 24px 24px}.sales-chart-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.sales-chart-title{font-size:16px;font-weight:600}.sales-chart-subtitle{color:#5a5a72;color:var(--text-secondary);font-size:12px;margin-top:2px}.sales-chart-container{height:220px;position:relative}.sales-funnel-container{display:flex;flex-direction:column;gap:8px;height:100%;justify-content:center}.sales-market-chart-full{align-items:center;display:flex;height:220px;justify-content:flex-start;overflow:visible;padding:0;width:100%}.sales-market-chart-full>div{max-width:100%!important;width:100%!important}.sales-funnel-stage{align-items:center;display:flex;gap:12px}.sales-funnel-bar-container{background:#f0f1f3;background:var(--bg-dark);border-radius:6px;flex:1 1;height:32px;overflow:hidden;position:relative}.sales-funnel-bar{align-items:center;border-radius:6px;color:#fff;display:flex;font-size:12px;font-weight:600;height:100%;padding:0 12px;transition:width .5s ease}.sales-funnel-label{color:#5a5a72;color:var(--text-secondary);font-size:12px;width:80px}.sales-funnel-value{font-size:13px;font-weight:600;text-align:right;width:80px}.sales-pipeline-board{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(5,1fr);margin-bottom:32px}.sales-pipeline-column{background:#fff;background:var(--bg-card);border:1px solid #e0e2e7;border:1px solid var(--border);border-radius:12px;min-height:300px;padding:16px}.sales-column-header{align-items:center;border-bottom:1px solid #e0e2e7;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.sales-column-title{font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.sales-column-count{background:#f0f1f3;background:var(--bg-dark);border-radius:20px;font-size:12px;font-weight:600;padding:4px 10px}.sales-column-total{color:#5a5a72;color:var(--text-secondary);font-size:11px;margin-top:4px}.sales-opportunity-card{background:#f0f1f3;background:var(--bg-dark);border:1px solid #e0e2e7;border:1px solid var(--border);border-radius:10px;cursor:pointer;margin-bottom:10px;padding:14px;transition:all .2s}.sales-opportunity-card:hover{border-color:#3b82f6;border-color:var(--accent-blue);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.sales-opp-name{font-size:14px;font-weight:600;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sales-opp-value{color:#10b981;color:var(--accent-emerald);font-size:18px;font-weight:700;margin-bottom:8px}.sales-opp-meta{align-items:center;display:flex;justify-content:space-between}.sales-opp-date{color:#8888a0;color:var(--text-muted);font-size:11px}.sales-opp-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:10px;font-weight:600;height:24px;justify-content:center;width:24px}.sales-table-section{background:#fff;background:var(--bg-card);border:1px solid #e0e2e7;border:1px solid var(--border);border-radius:16px;box-shadow:0 1px 3px #00000014;overflow:hidden}.sales-table-header{align-items:center;border-bottom:1px solid #e0e2e7;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:20px 24px}.sales-table-title{font-size:18px;font-weight:600}.sales-table-controls{display:flex;gap:12px}.sales-search-box{align-items:center;background:#f0f1f3;background:var(--bg-dark);border:1px solid #e0e2e7;border:1px solid var(--border);border-radius:8px;display:flex;gap:8px;padding:8px 14px}.sales-search-box input{background:none;border:none;color:#1a1a2e;color:var(--text-primary);font-size:14px;outline:none;width:200px}.sales-search-box input::placeholder{color:#8888a0;color:var(--text-muted)}.sales-filter-btn{align-items:center;background:#f0f1f3;background:var(--bg-dark);border:1px solid #e0e2e7;border:1px solid var(--border);border-radius:8px;color:#5a5a72;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;gap:6px;padding:8px 14px;transition:all .2s}.sales-filter-btn:hover{border-color:#3b82f6;border-color:var(--accent-blue);color:#1a1a2e;color:var(--text-primary)}.sales-table{border-collapse:collapse;width:100%}.sales-table th{background:#f0f1f3;background:var(--bg-dark);border-bottom:1px solid #e0e2e7;border-bottom:1px solid var(--border);color:#5a5a72;color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;padding:14px 24px;text-align:left;text-transform:uppercase}.sales-table th.sales-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.sales-table th.sales-sortable:hover{color:#1a1a2e;color:var(--text-primary)}.sales-table th .sales-sort-icon{margin-left:6px;opacity:.5}.sales-table td{border-bottom:1px solid #e0e2e7;border-bottom:1px solid var(--border);font-size:14px;padding:16px 24px}.sales-table tr:hover td{background:#f8f9fa;background:var(--bg-card-hover)}.sales-project-cell{align-items:center;display:flex;gap:12px}.sales-project-icon{align-items:center;border-radius:10px;display:flex;font-size:18px;height:40px;justify-content:center;width:40px}.sales-project-info h4{font-size:14px;font-weight:600;margin:0 0 2px}.sales-project-info span{color:#5a5a72;color:var(--text-secondary);font-size:12px}.sales-value-cell{font-size:15px;font-weight:700}.sales-stage-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:6px 12px}.sales-stage-badge.lead{background:#6b728026;color:#6b7280}.sales-stage-badge.opportunity-received{background:#3b82f626;color:#3b82f6}.sales-stage-badge.quoted{background:#8b5cf626;color:#8b5cf6}.sales-stage-badge.awarded{background:#10b98126;color:#10b981}.sales-stage-badge.lost{background:#ef444426;color:#ef4444}.sales-stage-badge.passed{background:#37415126;color:#374151}.sales-stage-badge.qualified{background:#06b6d426;color:#06b6d4;color:var(--accent-cyan)}.sales-stage-badge.proposal{background:#3b82f626;color:#3b82f6;color:var(--accent-blue)}.sales-stage-badge.negotiation{background:#f59e0b26;color:#f59e0b;color:var(--accent-amber)}.sales-stage-badge.won{background:#10b98126;color:#10b981;color:var(--accent-emerald)}.sales-stage-dot{background:currentColor;border-radius:50%;height:8px;width:8px}.sales-probability-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:6px 12px}.sales-probability-badge.low{background:#6b728026;color:#6b7280}.sales-probability-badge.medium{background:#f59e0b26;color:#f59e0b}.sales-probability-badge.high{background:#10b98126;color:#10b981}.sales-probability-dot{background:currentColor;border-radius:50%;height:8px;width:8px}.sales-salesperson-cell{align-items:center;display:flex;gap:10px}.sales-salesperson-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:600;height:32px;justify-content:center;width:32px}.sales-probability-bar{background:#f0f1f3;background:var(--bg-dark);border-radius:3px;display:inline-block;height:6px;margin-right:8px;overflow:hidden;width:60px}.sales-probability-fill{border-radius:3px;height:100%}.sales-actions-cell{display:flex;gap:8px}.sales-action-btn{align-items:center;background:#f0f1f3;background:var(--bg-dark);border:1px solid #e0e2e7;border:1px solid var(--border);border-radius:6px;color:#5a5a72;color:var(--text-secondary);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s;width:32px}.sales-action-btn:hover{border-color:#3b82f6;border-color:var(--accent-blue);color:#3b82f6;color:var(--accent-blue)}.sales-view-toggle{background:#f0f1f3;background:var(--bg-dark);border:1px solid #e0e2e7;border:1px solid var(--border);border-radius:8px;display:flex;overflow:hidden}.sales-view-toggle button{background:none;border:none;color:#5a5a72;color:var(--text-secondary);cursor:pointer;font-size:13px;padding:8px 16px;transition:all .2s}.sales-view-toggle button.active{background:#3b82f6;background:var(--accent-blue);color:#fff}.sales-view-toggle button:hover:not(.active){color:#1a1a2e;color:var(--text-primary)}@media (max-width:1400px){.sales-charts-grid{grid-template-columns:1fr 1fr}.sales-kpi-grid{grid-template-columns:repeat(2,1fr)}.sales-pipeline-board{grid-template-columns:repeat(3,1fr)}}@media (max-width:1024px){.sales-charts-grid{grid-template-columns:1fr}.sales-pipeline-board{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.sales-container{padding:16px}.sales-page-header{align-items:flex-start;flex-direction:column;gap:16px}.sales-header-actions{flex-direction:column;width:100%}.sales-view-toggle{width:100%}.sales-view-toggle button{flex:1 1}.sales-kpi-grid,.sales-pipeline-board{grid-template-columns:1fr}.sales-table-section{overflow-x:auto}.sales-table{min-width:800px}}@keyframes fadeInSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.sales-page-header{animation:fadeInSlide .4s ease-out}.sales-kpi-grid{animation:fadeInSlide .5s ease-out .1s backwards}.sales-charts-grid{animation:fadeInSlide .5s ease-out .2s backwards}.marketing-page{margin:0 auto;max-width:1400px;padding:2rem}.marketing-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:3rem}.marketing-category-card{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;color:var(--text);display:flex;gap:1rem;overflow:hidden;padding:1.5rem;position:relative;text-decoration:none;transition:all .3s ease}.marketing-category-card.disabled{cursor:default;opacity:.6}.marketing-category-card.disabled:hover{border-color:#e5e7eb;box-shadow:none;transform:none}.marketing-category-card.disabled:hover:before{transform:scaleX(0)}.marketing-category-card.disabled:hover .category-icon-wrapper{background:linear-gradient(135deg,#f8f9fa,#e9ecef);transform:none}.marketing-category-card.disabled:hover .category-icon{transform:none}.marketing-category-card.disabled .category-arrow{opacity:0}.coming-soon-badge{z-index:1}.marketing-category-card:before{background:var(--category-color);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.marketing-category-card:hover{border-color:var(--category-color);box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.marketing-category-card:hover:before{transform:scaleX(1)}.category-icon-wrapper{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;display:flex;flex-shrink:0;height:64px;justify-content:center;transition:all .3s ease;width:64px}.marketing-category-card:hover .category-icon-wrapper{background:var(--category-color);transform:rotate(5deg) scale(1.05)}.category-icon{font-size:2rem;transition:transform .3s ease}.marketing-category-card:hover .category-icon{transform:scale(1.1)}.category-content{flex:1 1}.category-name{color:var(--text);font-size:1.125rem;font-weight:600;margin:0 0 .25rem}.category-desc{color:var(--secondary);font-size:.875rem;margin:0}.category-arrow{color:var(--secondary);font-size:1.5rem;opacity:0;transition:all .3s ease}.marketing-category-card:hover .category-arrow{color:var(--category-color);opacity:1;transform:translateX(4px)}.marketing-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:3rem}.marketing-stats .stat-card{align-items:center;background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #e5e7eb;display:flex;gap:1.5rem;padding:2rem;transition:all .3s ease}.marketing-stats .stat-card:hover{border-color:var(--primary);box-shadow:0 8px 24px #3b82f626;transform:translateY(-4px)}.stat-value{font-size:1.5rem}@media (max-width:768px){.marketing-page{padding:1rem}.marketing-grid{gap:1rem;grid-template-columns:1fr}.page-title{font-size:1.5rem}.marketing-stats{grid-template-columns:1fr}}:root{--brand-navy:#002356;--brand-black:#000;--brand-gray:#747678;--brand-blue:#004f8f;--brand-orange:#f37b03;--brand-green:#2b923b}.branding-page{background:#f8f9fa;margin:0 auto;max-width:1400px;padding:2rem}.branding-header{background:linear-gradient(135deg,#002356,#004f8f);background:linear-gradient(135deg,var(--brand-navy) 0,var(--brand-blue) 100%);border-radius:16px;box-shadow:0 8px 24px #00235633;color:#fff;margin-bottom:3rem;padding:3rem 2rem;text-align:center}.branding-header h1{font-size:2.5rem;font-weight:700;margin:0 0 1rem}.branding-subtitle{font-size:1.125rem;margin:0;opacity:.9}.brand-section{margin-bottom:3rem}.section-title{border-bottom:3px solid #f37b03;border-bottom:3px solid var(--brand-orange);color:#002356;color:var(--brand-navy);font-size:2rem;margin-bottom:1.5rem;padding-bottom:.75rem}.section-content{display:flex;flex-direction:column;gap:1.5rem}.section-description{color:#747678;color:var(--brand-gray);line-height:1.6;margin-bottom:1rem}.guideline-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:2rem}.guideline-card h3{font-size:1.5rem;margin:0 0 1.5rem}.guideline-card h3,.guideline-card h4{color:#002356;color:var(--brand-navy);font-weight:600}.guideline-card h4{font-size:1.125rem;margin:0 0 .75rem}.intro-card{background:linear-gradient(135deg,#f8f9fa,#fff);border:2px solid #002356;border:2px solid var(--brand-navy)}.intro-content{grid-gap:2rem;align-items:center;display:grid;gap:2rem;grid-template-columns:1fr 1fr}.intro-text h3{color:#002356;color:var(--brand-navy);font-size:1.5rem;margin-bottom:1rem}.intro-text p{color:#747678;color:var(--brand-gray);line-height:1.6}.intro-logo-display{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:2rem}.logo-svg{height:auto;width:100%}.logo-variations-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-top:1rem}.logo-variation-item{text-align:center}.logo-display-box{background:#fff;border:2px solid #e5e7eb;border-radius:8px;margin-bottom:1rem;padding:2rem;transition:all .3s}.logo-display-box:hover{border-color:#004f8f;border-color:var(--brand-blue);box-shadow:0 4px 12px #004f8f1a}.logo-display-box.navy-bg{background:#002356;background:var(--brand-navy)}.logo-display-box.black-bg{background:#000;background:var(--brand-black)}.color-variations-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:1rem}.color-var-item{text-align:center}.olney-section{grid-gap:2rem;align-items:center;display:grid;gap:2rem;grid-template-columns:1fr 1.5fr;margin-top:1rem}.olney-logo-display{background:#fff;border:2px solid #2b923b;border:2px solid var(--brand-green);border-radius:8px;padding:2rem}.olney-info ul{list-style:none;margin:1rem 0 0;padding:0}.olney-info li{color:#002356;color:var(--brand-navy);padding:.5rem 0 .5rem 1.5rem;position:relative}.olney-info li:before{color:#2b923b;color:var(--brand-green);content:"→";font-weight:700;left:0;position:absolute}.logo-label{color:#002356;color:var(--brand-navy);font-weight:600;margin-bottom:.5rem}.usage-note{color:#747678;color:var(--brand-gray);font-size:.875rem;font-style:italic}.color-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.color-card{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:transform .2s,box-shadow .2s}.color-card:hover{box-shadow:0 8px 16px #0000001a;transform:translateY(-4px)}.color-swatch{border-bottom:1px solid #e5e7eb;height:120px}.color-info{padding:1.5rem}.color-info h4{color:#002356;color:var(--brand-navy);font-size:1.25rem;margin:0 0 .5rem}.color-code-accent,.color-code-primary{display:block;font-size:.875rem;font-weight:600;margin-bottom:1rem}.color-code-primary{color:#002356;color:var(--brand-navy)}.color-code-accent{color:#004f8f;color:var(--brand-blue)}.color-codes{display:flex;flex-direction:column;gap:.5rem}.color-codes span{color:#747678;color:var(--brand-gray);font-family:Courier New,monospace;font-size:.875rem}.color-codes strong{color:#002356;color:var(--brand-navy);font-weight:600}.typography-showcase{background:#f8f9fa;border-radius:8px;padding:2rem}.font-display{text-align:center}.font-name{font-size:1rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.font-name,.font-sample-large{color:#002356;color:var(--brand-navy);margin-bottom:1rem}.font-sample-large{font-family:Arial,sans-serif;font-size:3rem}.font-sample-large.secondary-font{font-weight:700}.font-sample-text{color:#747678;color:var(--brand-gray);font-family:Arial,sans-serif;font-size:1.25rem;margin-bottom:1.5rem}.font-sample-text.secondary-font{font-weight:700}.font-weights{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.weight-sample{background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-family:Arial,sans-serif;font-size:.875rem;padding:.5rem 1rem}.weight-sample.book{font-weight:400}.weight-sample.book-italic{font-style:italic;font-weight:400}.weight-sample.bold{font-weight:700}.weight-sample.bold-italic{font-style:italic;font-weight:700}.specs-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.spec-item{align-items:center;background:#f8f9fa;border-left:4px solid #004f8f;border-left:4px solid var(--brand-blue);border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.spec-item.highlight{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-left-color:#f37b03;border-left-color:var(--brand-orange)}.spec-label{color:#002356;color:var(--brand-navy);font-weight:600}.spec-value{color:#004f8f;color:var(--brand-blue);font-size:1.125rem;font-weight:700}.apparel-showcase{grid-gap:2rem;align-items:center;display:grid;gap:2rem;grid-template-columns:300px 1fr;margin-top:1rem}.apparel-visual{background:#fff;border:2px solid #e5e7eb;border-radius:8px;display:flex;justify-content:center;padding:1.5rem}.apparel-svg{height:auto;max-width:300px;width:100%}.apparel-specs h4{font-size:1.25rem;margin:0 0 1rem}.apparel-note,.apparel-specs h4{color:#002356;color:var(--brand-navy)}.apparel-note{background:#f0f9ff;border-left:4px solid #004f8f;border-left:4px solid var(--brand-blue);border-radius:4px;font-size:.9375rem;margin-top:1.5rem;padding:1rem}.placement-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:1.5rem}.placement-item{text-align:center}.placement-diagram{align-items:center;background:#f8f9fa;border:2px solid #e5e7eb;border-radius:8px;display:flex;height:200px;justify-content:center;margin-bottom:1rem;position:relative;width:100%}.placement-diagram.left-chest .logo-position{left:20%;position:absolute;top:20%}.placement-diagram.right-sleeve .logo-position{position:absolute;right:15%;top:30%}.logo-position{background:#002356;background:var(--brand-navy);border-radius:4px;color:#fff;font-size:.75rem;font-weight:700;padding:.5rem 1rem}.placement-label{bottom:1rem;color:#002356;color:var(--brand-navy);font-size:.875rem;font-weight:600;left:50%;position:absolute;transform:translateX(-50%)}.placement-desc{color:#747678;color:var(--brand-gray);font-size:.875rem}.method-comparison{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:1rem}.method-card{background:#f8f9fa;border:2px solid #e5e7eb;border-radius:8px;padding:1.5rem}.method-card h4{color:#002356;color:var(--brand-navy);font-size:1.125rem;margin:0 0 1rem}.method-card ul{list-style-type:none;margin:0;padding-left:1.25rem}.method-card li{color:#747678;color:var(--brand-gray);margin-bottom:.75rem;padding-left:1.5rem;position:relative}.method-card li:before{color:#004f8f;color:var(--brand-blue);content:"→";font-weight:700;left:0;position:absolute}.vehicle-colors{display:flex;flex-direction:column;gap:1rem}.vehicle-color-item{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:1.5rem;padding:1rem}.vehicle-color-item .color-swatch{border:2px solid #e5e7eb;border-radius:8px;flex-shrink:0;height:80px;width:80px}.color-usage{color:#747678;color:var(--brand-gray);font-size:.875rem;margin-top:.25rem}.vehicle-example{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:12px;margin:2rem 0;padding:2rem}.vehicle-example h4{color:#002356;color:var(--brand-navy);font-size:1.25rem;font-weight:600;margin:0 0 1.5rem}.vehicle-svg{background:#fff;border-radius:8px;height:auto;margin-bottom:1rem;padding:1rem;width:100%}.vehicle-desc{background:#fff;border-radius:6px;color:#747678;color:var(--brand-gray);font-size:.9375rem;margin:0;padding:.75rem;text-align:center}.vehicle-types-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:1rem}.vehicle-type-card{background:linear-gradient(135deg,#f8f9fa,#fff);border:2px solid #e5e7eb;border-radius:8px;padding:2rem 1.5rem;text-align:center;transition:all .3s}.vehicle-type-card:hover{border-color:#004f8f;border-color:var(--brand-blue);box-shadow:0 4px 12px #004f8f26;transform:translateY(-4px)}.vehicle-icon{font-size:3rem;margin-bottom:1rem}.vehicle-type-card h4{color:#002356;color:var(--brand-navy);margin:0 0 .5rem}.vehicle-type-card p{color:#747678;color:var(--brand-gray);font-size:.875rem;margin:0}.requirements-list{list-style:none;margin:1rem 0;padding:0}.requirements-list li{background:#f8f9fa;border-left:4px solid #2b923b;border-left:4px solid var(--brand-green);border-radius:4px;color:#002356;color:var(--brand-navy);font-weight:500;margin-bottom:.5rem;padding:.75rem}.installation-notes{display:flex;flex-direction:column;gap:1rem}.installation-notes p{background:#f8f9fa;border-radius:8px;color:#002356;color:var(--brand-navy);margin:0;padding:1rem}.dos-donts-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:1rem}.donts-column,.dos-column{border-radius:8px;padding:1.5rem}.dos-column{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:2px solid #86efac}.donts-column{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:2px solid #fca5a5}.dos-header{color:#16a34a}.donts-header,.dos-header{font-size:1.25rem;margin:0 0 1rem}.donts-header{color:#dc2626}.donts-column ul,.dos-column ul{margin:0;padding-left:1.5rem}.donts-column li,.dos-column li{color:#002356;color:var(--brand-navy);line-height:1.5;margin-bottom:.75rem}.contact-info{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-left:4px solid #004f8f;border-left:4px solid var(--brand-blue);border-radius:8px;color:#002356;color:var(--brand-navy);font-size:1rem;margin-top:1rem;padding:1.5rem;text-align:center}@media (max-width:768px){.branding-page{padding:1rem}.branding-header{padding:2rem 1rem}.branding-header h1{font-size:1.75rem}.section-title{font-size:1.5rem}.guideline-card{padding:1.5rem}.apparel-showcase,.color-grid,.color-variations-grid,.dos-donts-grid,.intro-content,.logo-variations-grid,.method-comparison,.olney-section{grid-template-columns:1fr}.vehicle-types-grid{grid-template-columns:repeat(2,1fr)}.vehicle-example{padding:1rem}}@media (max-width:480px){.vehicle-types-grid{grid-template-columns:1fr}.font-sample-large{font-size:2rem}.font-sample-text{font-size:1rem}.stats-grid{grid-template-columns:1fr}.apparel-svg{max-width:250px}}.estimating-dashboard{margin:0 auto;max-width:1400px;padding:2rem}.breadcrumb-link{color:var(--secondary);display:inline-block;font-size:.875rem;margin-bottom:1rem;text-decoration:none;transition:color .2s}.breadcrumb-link:hover{color:var(--primary)}.page-title{color:var(--text);font-size:2rem;font-weight:700;margin:0 0 .5rem}.page-subtitle{color:var(--secondary);font-size:1rem;margin:0}.estimating-modules-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));margin-bottom:3rem}.estimating-module-card{background:#fff;border:2px solid #e5e7eb;border-radius:16px;color:var(--text);display:flex;flex-direction:column;gap:1.5rem;overflow:hidden;padding:2rem;position:relative;text-decoration:none;transition:all .3s ease}.estimating-module-card:before{background:var(--module-color);content:"";height:6px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.estimating-module-card:hover{border-color:var(--module-color);box-shadow:0 12px 32px #0000001f;transform:translateY(-4px)}.estimating-module-card:hover:before{transform:scaleX(1)}.module-header{gap:1.5rem}.module-icon-large{flex-shrink:0;font-size:4rem;transition:transform .3s ease}.estimating-module-card:hover .module-icon-large{transform:scale(1.1) rotate(5deg)}.module-title{color:var(--text);font-size:1.75rem;margin:0 0 .5rem}.module-description{color:var(--secondary);font-size:.9375rem;margin:0}.module-stats{grid-gap:1.5rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));padding:1.5rem}.stat-item{text-align:center}.stat-number{color:var(--module-color);font-size:2rem;font-weight:700;line-height:1;margin-bottom:.5rem}.stat-label{font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.module-action{border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding-top:1rem}.action-text{color:var(--module-color);font-weight:600}.action-arrow{color:var(--module-color);font-size:1.5rem;transition:transform .3s ease}.estimating-module-card:hover .action-arrow{transform:translateX(8px)}.quick-stats-section,.recent-activity-section{margin-bottom:3rem}.section-title{color:var(--text);margin:0 0 1.5rem}.quick-stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.stat-card{padding:2rem}.stat-icon{font-size:3rem}.empty-state{padding:3rem 2rem}.empty-state p{margin:.5rem 0}.empty-state-hint{font-size:.875rem}@media (max-width:768px){.estimating-dashboard{padding:1rem}.estimating-modules-grid{gap:1rem;grid-template-columns:1fr}.page-title{font-size:1.5rem}.module-title{font-size:1.25rem}.module-icon-large{font-size:3rem}.module-stats{grid-template-columns:repeat(2,1fr)}.quick-stats-grid{grid-template-columns:1fr}}.estimates-filters{background:#fff}.estimate-new{max-width:100%}.estimate-section{background-color:var(--background);border:1px solid var(--border);border-radius:.5rem;padding:1rem}.section-header-row{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.5rem}.section-name-input{flex:1 1;font-size:1.125rem;font-weight:600}.line-items-table{margin-bottom:1rem;overflow-x:auto}.line-items-table td:nth-child(6),.line-items-table td:nth-child(7),.line-items-table td:nth-child(8),.line-items-table td:nth-child(9){position:relative}.line-items-table td:nth-child(6):before,.line-items-table td:nth-child(7):before,.line-items-table td:nth-child(8):before,.line-items-table td:nth-child(9):before{color:#6b7280;content:"$";font-size:.875rem;left:.5rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.line-items-table td:nth-child(6) input,.line-items-table td:nth-child(7) input,.line-items-table td:nth-child(8) input,.line-items-table td:nth-child(9) input{padding-left:1.25rem}.line-items-table table{min-width:1200px;table-layout:fixed;width:100%}.line-items-table tbody tr:hover{background-color:#6b7280!important}.form-input-sm{border:1px solid var(--border);border-radius:.25rem;font-size:.875rem;padding:.25rem .5rem;width:100%}.form-input-sm:focus{border-color:var(--primary);outline:none}.form-input-sm[type=number]::-webkit-inner-spin-button,.form-input-sm[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.form-input-sm[type=number]{-moz-appearance:textfield}.btn-icon-danger{background:none;border:none;color:var(--danger);cursor:pointer;font-size:1.25rem;line-height:1;padding:.25rem}.btn-icon-danger:hover{color:#c82333}.summary-table{margin-left:auto;max-width:600px;width:100%}.summary-table td{border-bottom:1px solid var(--border);padding:.5rem}.summary-table .amount{text-align:right}.summary-table .subtotal-row td{border-top:2px solid var(--border);padding-top:1rem}.summary-table .total-row td{border-top:3px double var(--border);color:var(--primary);font-size:1.25rem;padding-bottom:1rem;padding-top:1rem}.form-actions{padding:1.5rem 0}.budgets-filters{background:#fff}.cost-database{margin:0 auto;max-width:1400px;padding:2rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.stat-card{background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #e5e7eb;gap:1.5rem;transition:all .3s ease}.stat-card:hover{border-color:var(--primary);box-shadow:0 8px 24px #3b82f626;transform:translateY(-4px)}.stat-icon{flex-shrink:0}.stat-value{color:var(--text);font-size:1.75rem}.category-filters{display:flex;flex-wrap:wrap;gap:.75rem}.category-chip{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:24px;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.category-chip:hover{background:#f8f9fa;border-color:var(--primary)}.category-chip.active{background:var(--primary);border-color:var(--primary);color:#fff}.category-icon{font-size:1.25rem}.empty-state{color:var(--secondary)}.modal-overlay{padding:2rem}.modal-content{border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:600px}.modal-header{padding:1.5rem 2rem}.modal-close{color:var(--secondary);height:32px;line-height:1;padding:0;width:32px}.modal-close:hover{color:var(--text)}.modal-body{padding:2rem}.import-instructions{background:#f8f9fa;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.import-instructions h3{font-size:1.125rem;font-weight:600;margin:0 0 1rem}.import-instructions p{color:var(--secondary);margin:0 0 .75rem}.import-instructions ul{margin:0;padding-left:1.5rem}.import-instructions li{color:var(--text);margin:.5rem 0}.upload-area{margin-bottom:2rem}.upload-label{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;cursor:pointer;display:block;padding:3rem 2rem;text-align:center;transition:all .3s ease}.upload-label:hover{background:#eff6ff;border-color:var(--primary)}.upload-icon{font-size:3rem;margin-bottom:1rem}.upload-text{font-size:1rem;margin-bottom:.5rem}.upload-text strong{color:var(--primary)}.upload-hint{color:var(--secondary);font-size:.875rem}.import-options{display:flex;flex-direction:column;gap:.75rem}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-size:.9375rem;gap:.75rem}.checkbox-label input[type=checkbox]{cursor:pointer;height:18px;width:18px}.resizable-table{table-layout:fixed}.resizable-table th{position:relative;-webkit-user-select:none;user-select:none}.resize-handle{background:#0000;cursor:col-resize;height:100%;position:absolute;right:0;top:0;width:5px;z-index:1}.resize-handle:hover{background:#3b82f64d}.resize-handle:active{background:#3b82f680}@media (max-width:768px){.cost-database{padding:1rem}.stats-grid{grid-template-columns:1fr}.category-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.5rem}.modal-content{border-radius:0;max-width:100%}}.account-management-page{margin:0 auto;max-width:1400px;padding:2rem}.account-management-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:2rem}.account-management-card{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;display:flex;gap:1.5rem;overflow:hidden;padding:1.5rem;position:relative;text-decoration:none;transition:all .3s}.account-management-card:before{background:var(--module-color);content:"";height:100%;left:0;position:absolute;top:0;transform:scaleY(0);transition:transform .3s;width:4px}.account-management-card:hover:before{transform:scaleY(1)}.account-management-card:hover{border-color:var(--module-color);box-shadow:0 8px 24px #0000001a;transform:translateY(-4px)}.account-management-card.coming-soon{cursor:not-allowed;opacity:.6}.account-management-card.coming-soon:hover{border-color:#e5e7eb;box-shadow:none;transform:none}.module-icon-wrapper{background:linear-gradient(135deg,var(--module-color),color-mix(in srgb,var(--module-color) 80%,#fff));flex-shrink:0;height:60px;width:60px}.module-icon{font-size:2rem}.module-content{flex:1 1}.module-name{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.module-desc{color:#6b7280;font-size:.9375rem;line-height:1.5;margin:0}.coming-soon-badge{background:#fef3c7;border-radius:12px;color:#92400e;display:inline-block;font-size:.75rem;font-weight:600;margin-top:.5rem;padding:.25rem .75rem}.module-arrow{color:var(--module-color);font-size:1.5rem;transition:transform .3s}.account-management-card:hover .module-arrow{transform:translateX(4px)}.account-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:2rem}@media (max-width:768px){.account-management-page{padding:1rem}.account-management-grid,.account-stats{grid-template-columns:1fr}}.customer-detail-page{margin:0 auto;max-width:1400px;padding:2rem}.customer-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 10px 30px #667eea4d;color:#fff;margin-bottom:2rem;padding:2rem}.customer-header-content{align-items:flex-start;display:flex;justify-content:space-between}.customer-info h1{font-size:2rem;font-weight:700;margin:0 0 .5rem}.customer-subtitle{font-size:1.1rem;margin-bottom:1rem;opacity:.9}.customer-meta{display:flex;gap:2rem;margin-top:1rem}.meta-item{align-items:center;display:flex;gap:.5rem}.meta-icon{font-size:1.2rem}.back-button{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;gap:.5rem;margin-bottom:1rem;padding:.5rem 1rem;text-decoration:none;transition:all .3s}.back-button:hover{background:#ffffff4d;transform:translateX(-4px)}.metrics-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.metric-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #00000012;overflow:hidden;padding:1.5rem;position:relative;transition:all .3s}.metric-card:before{background:#667eea;background:var(--metric-color,#667eea);content:"";height:4px;left:0;position:absolute;right:0;top:0}.metric-card:hover{box-shadow:0 12px 24px #00000026;transform:translateY(-4px)}.metric-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.metric-icon{font-size:2rem;opacity:.8}.metric-label{color:#6b7280;font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.metric-value{color:#1f2937;font-size:2.25rem;font-weight:700;margin-bottom:.25rem}.metric-subtitle{color:#9ca3af;font-size:.875rem}.modules-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:2rem}.module-card{border:2px solid #0000;border-radius:12px;box-shadow:0 4px 6px #00000012;cursor:pointer;overflow:hidden;transition:all .3s}.module-card:before{background:linear-gradient(135deg,var(--module-color-start),var(--module-color-end));bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s}.module-card:hover{border-color:var(--module-color-start);box-shadow:0 12px 24px #00000026;transform:translateY(-4px)}.module-card:hover:before{opacity:.05}.module-content{position:relative;z-index:1}.module-header{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.module-icon-wrapper{align-items:center;background:linear-gradient(135deg,var(--module-color-start),var(--module-color-end));border-radius:12px;box-shadow:0 4px 12px #0000001a;color:#fff;display:flex;font-size:1.5rem;height:3rem;justify-content:center;width:3rem}.module-title{color:#1f2937;font-size:1.25rem;font-weight:700;margin:0}.module-description{color:#6b7280;font-size:.9rem;line-height:1.5;margin-bottom:1rem}.module-action{align-items:center;color:var(--module-color-start);display:inline-flex;font-size:.9rem;font-weight:600;gap:.5rem;transition:gap .3s}.module-card:hover .module-action{gap:.75rem}.data-sections-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);margin-bottom:2rem}.data-section{background:#fff;border-radius:12px;box-shadow:0 4px 6px #00000012;display:flex;flex-direction:column;overflow:hidden}.section-header{border-bottom:2px solid #f3f4f6;justify-content:space-between;padding:1.5rem}.section-header,.section-title{align-items:center;display:flex}.section-title{color:#1f2937;font-size:1.5rem;font-weight:700;gap:.75rem;margin:0}.section-badge{background:#667eea;border-radius:12px;color:#fff;font-size:.875rem;font-weight:600;padding:.25rem .75rem}.data-tabs{border-bottom:2px solid #f3f4f6;display:flex;gap:1rem;padding:0 1.5rem}.tab-button{background:none;border:none;border-bottom:3px solid #0000;color:#6b7280;cursor:pointer;font-weight:600;padding:1rem 1.5rem;position:relative;transition:all .3s}.tab-button:hover{color:#667eea}.tab-button.active{border-bottom-color:#667eea;color:#667eea}.tab-count{background:#f3f4f6;border-radius:10px;font-size:.75rem;margin-left:.5rem;padding:.125rem .5rem}.tab-button.active .tab-count{background:#667eea;color:#fff}.data-content{flex:1 1;max-height:500px;overflow-y:auto;padding:1.5rem}.data-table thead th{background:#f9fafb;color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.75rem 1rem;text-align:left;text-transform:uppercase}.data-table tbody td{border-top:1px solid #f3f4f6;padding:1rem}.data-table tbody tr{transition:background .2s}.status-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:capitalize}.status-completed{background:#d1fae5;color:#065f46}.status-active{background:#dbeafe;color:#1e40af}.touchpoint-list{grid-gap:1rem;display:grid;gap:1rem}.touchpoint-item{border:2px solid #f3f4f6;border-radius:12px;padding:1.25rem;transition:all .3s}.touchpoint-item:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea1a}.touchpoint-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.75rem}.touchpoint-type{color:#1f2937;font-size:1rem;font-weight:700}.touchpoint-date{color:#6b7280;font-size:.875rem}.touchpoint-notes{color:#4b5563;line-height:1.6;margin-bottom:.5rem}.touchpoint-meta{align-items:center;color:#9ca3af;display:flex;font-size:.75rem;gap:.5rem}.empty-state{color:#9ca3af;padding:3rem}.empty-state-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-state-text{font-size:1.125rem;margin-bottom:.5rem}.modal-container{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.modal-header{border-bottom:2px solid #f3f4f6;padding:2rem 2rem 1rem}.modal-header h2{font-size:1.75rem}.modal-close{align-items:center;background:none;border:none;border-radius:8px;color:#9ca3af;cursor:pointer;display:flex;font-size:2rem;height:2.5rem;justify-content:center;transition:all .2s;width:2.5rem}.modal-close:hover{background:#f3f4f6;color:#1f2937}.modal-subtitle{color:#6b7280;font-size:.95rem;padding:0 2rem 1rem}.modal-body,.modal-footer{padding:1.5rem 2rem}.modal-footer{border-top:2px solid #f3f4f6}.form-row{margin-bottom:1rem}.form-group label{font-size:.9rem;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{font-size:1rem;padding:.75rem}.btn-primary,.btn-secondary{padding:.75rem 1.5rem}.btn-primary:hover:not(:disabled){box-shadow:0 8px 16px #667eea4d;transform:translateY(-2px)}.btn-secondary{background:#f3f4f6}.btn-secondary:hover{background:#e5e7eb}.error-message{border:1px solid #fecaca;border-radius:8px}.error-message,.success-message{font-size:.9rem;margin:1rem 2rem;padding:.75rem 1rem}.success-message{background:#d1fae5;border:1px solid #a7f3d0;border-radius:8px;color:#065f46}@media (max-width:640px){.form-row{grid-template-columns:1fr}.modal-container{margin:1rem;width:95%}.modal-body,.modal-footer,.modal-header,.modal-subtitle{padding-left:1.5rem;padding-right:1.5rem}}.customer-list-page{margin:0 auto;max-width:1600px;padding:2rem}.filters-section{margin-bottom:1.5rem;padding:1.5rem}.filters-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:2fr 1fr 1fr}.filter-group{gap:.5rem}.filter-group label{color:#374151;font-size:.875rem;font-weight:600}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:1.5rem}.stat-value{color:#1f2937}.stat-label{color:#6b7280;font-weight:500}.table-container{overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table th{background:#f9fafb;border-bottom:2px solid #e5e7eb;color:#374151;font-weight:600;padding:1rem;text-align:left;white-space:nowrap}.data-table td{border-bottom:1px solid #e5e7eb;color:#1f2937;padding:1rem}.data-table tbody tr:hover{background:#f9fafb}.text-muted{color:#6b7280}.small{font-size:.875rem}.badge-success{background:#d1fae5}.badge-secondary{background:#e5e7eb;color:#374151}.btn-icon{background:none;border:none;cursor:pointer;font-size:1.25rem;padding:.25rem;transition:transform .2s}.btn-icon:hover{transform:scale(1.2)}.empty-state h3{color:#374151;margin:0 0 .5rem}.empty-state p{color:#6b7280;margin:0}.modal-overlay{background:#00000080}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;max-width:800px;width:100%}.btn-close{border-radius:4px;color:#6b7280;height:32px;width:32px}.btn-close:hover{color:#1f2937}.modal-body{padding:1.5rem}.detail-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.detail-item label{color:#6b7280;display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.detail-item>div{color:#1f2937;font-size:.9375rem}.modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem}@media (max-width:768px){.customer-list-page{padding:1rem}.detail-grid,.filters-grid,.stats-grid{grid-template-columns:1fr}.data-table{font-size:.875rem}.data-table td,.data-table th{padding:.75rem .5rem}}.feedback-list{background:#fff;display:flex;flex-direction:column;gap:0;max-height:calc(100vh - 200px);overflow-y:auto}.feedback-empty{color:#6c757d;padding:48px 16px;text-align:center}.feedback-item{align-items:center;background:#fff;border-bottom:1px solid #f0f0f0;border-left:4px solid #0000;cursor:pointer;display:flex;gap:16px;padding:14px 160px 14px 16px;position:relative;transition:all .15s ease}.feedback-item:first-child{border-top:1px solid #f0f0f0}.feedback-item:hover{background-color:#f8f9fa;border-left-color:#007bff}.feedback-item.selected{background-color:#f0f8ff;border-bottom-color:#007bff;border-left-color:#007bff}.feedback-vote-section{flex-direction:row;flex-shrink:0;position:absolute;right:16px;top:12px}.feedback-vote-section,.vote-btn{align-items:center;display:flex;gap:6px}.vote-btn{background:#fff;border:1px solid #dee2e6;border-radius:20px;box-shadow:0 1px 3px #0000001a;cursor:pointer;font-size:18px;justify-content:center;padding:6px 12px;transition:all .2s}.vote-btn:hover{background-color:#f8f9fa;border-color:#007bff;box-shadow:0 2px 5px #00000026;transform:translateY(-1px)}.vote-btn.vote-up.active{background-color:#e8f5e9;border-color:#4caf50}.vote-btn.vote-down.active{background-color:#ffebee;border-color:#f44336}.vote-count{color:#495057;font-size:13px;font-weight:700;min-width:16px;text-align:center}.feedback-content{min-width:0}.feedback-header{gap:10px;margin-bottom:6px}.feedback-type-icon{flex-shrink:0;font-size:22px}.feedback-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#212529;display:-webkit-box;flex:1 1;font-size:15px;font-weight:600;line-height:1.4;margin:0;overflow:hidden;text-overflow:ellipsis}.feedback-status-badge{border-radius:12px;color:#fff;flex-shrink:0;font-size:11px;font-weight:600;padding:3px 10px;text-transform:capitalize;white-space:nowrap}.feedback-meta{align-items:center;color:#6c757d;display:flex;flex-wrap:wrap;font-size:12px;gap:8px}.feedback-module{background-color:#e7f3ff;border-radius:4px;color:#007bff;font-size:11px;font-weight:600;padding:2px 8px}.feedback-separator{color:#dee2e6;font-weight:700}.feedback-comments,.feedback-date{color:#6c757d;font-size:12px}@media (max-width:768px){.feedback-item{flex-direction:column}.feedback-vote-section{flex-direction:row;justify-content:flex-start;width:100%}}.feedback-form-container{background:#fff;border-radius:8px;height:100%;overflow-y:auto;padding:24px}.feedback-form-title{color:#212529;font-size:24px;font-weight:600;margin:0 0 8px}.feedback-form-subtitle{color:#6c757d;font-size:14px;margin:0 0 24px}.feedback-form{margin-bottom:32px}.form-row{grid-gap:16px;gap:16px}.form-group,.form-row{margin-bottom:16px}.form-group label{color:#495057;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.form-control{border:1px solid #ced4da;border-radius:4px;font-family:inherit;font-size:14px;padding:10px 12px;transition:border-color .2s,box-shadow .2s;width:100%}.form-control:focus{border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40;outline:none}.form-control.is-invalid{border-color:#dc3545}.form-control.is-invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem #dc354540}.form-control:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.6}textarea.form-control{min-height:120px;resize:vertical}.invalid-feedback{color:#dc3545;display:block;font-size:13px;margin-top:4px}.character-count{color:#6c757d;font-size:12px;margin-top:4px;text-align:right}.form-actions{border-top:1px solid #dee2e6;gap:12px;margin-top:24px;padding-top:24px}.alert{border-radius:4px;margin-bottom:16px;padding:12px 16px}.alert-danger{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.feedback-tips{background-color:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;padding:20px}.feedback-tips h3{color:#212529;font-size:16px;font-weight:600;margin:0 0 12px}.feedback-tips ul{margin:0;padding-left:20px}.feedback-tips li{color:#495057;font-size:14px;line-height:1.5;margin-bottom:8px}.feedback-tips strong{color:#212529;font-weight:600}@media (max-width:768px){.form-row{grid-template-columns:1fr}.feedback-form-container{padding:16px}}.feedback-detail{background:#fff;border-radius:8px;display:flex;flex-direction:column;height:100%;overflow:hidden}.feedback-detail-header{border-bottom:1px solid #dee2e6;padding:24px;position:relative}.close-btn{font-size:24px;position:absolute;right:16px;top:16px;transition:all .2s}.close-btn:hover{color:#212529}.feedback-detail-title-row{align-items:center;display:flex;gap:12px;margin-bottom:12px;padding-right:40px}.feedback-detail-type-icon{font-size:32px}.feedback-detail-title-row h2{color:#212529;flex:1 1;font-size:24px;font-weight:600;margin:0}.feedback-detail-meta{align-items:center;display:flex;gap:12px}.feedback-detail-status{color:#fff}.feedback-detail-priority,.feedback-detail-status{border-radius:16px;font-size:13px;font-weight:500;padding:6px 16px;text-transform:capitalize}.feedback-detail-priority{background-color:#e9ecef;color:#495057}.priority-critical{background-color:#dc3545;color:#fff}.priority-high{background-color:#fd7e14;color:#fff}.priority-medium{background-color:#ffc107;color:#212529}.priority-low{background-color:#6c757d;color:#fff}.feedback-detail-body{flex:1 1;overflow-y:auto;padding:24px}.feedback-detail-info{background-color:#f8f9fa;border-radius:8px;margin-bottom:24px;padding:16px}.info-row{display:flex;gap:12px;margin-bottom:8px}.info-row:last-child{margin-bottom:0}.info-label{color:#495057;font-weight:600;min-width:120px}.info-value{color:#212529}.admin-controls{background-color:#fff3cd;border:1px solid #ffc107;border-radius:8px;margin-bottom:24px;padding:16px}.admin-controls label{color:#212529;display:block;font-weight:600;margin-bottom:8px}.admin-controls .form-control{max-width:300px}.feedback-detail-description{margin-bottom:32px}.feedback-detail-description h3{color:#212529;font-size:18px;font-weight:600;margin:0 0 12px}.feedback-detail-description p{color:#495057;line-height:1.6;margin:0;white-space:pre-wrap}.feedback-detail-comments h3{color:#212529;font-size:18px;font-weight:600;margin:0 0 16px}.comment-form{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.comment-form textarea{resize:vertical}.comment-form button{align-self:flex-end}.comments-list{display:flex;flex-direction:column;gap:16px}.no-comments{color:#6c757d;padding:32px;text-align:center}.comment,.no-comments{background-color:#f8f9fa;border-radius:8px}.comment{border-left:3px solid #007bff;padding:16px}.comment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.comment-author{color:#212529;font-weight:600}.comment-date{color:#6c757d;font-size:13px}.comment-text{color:#495057;line-height:1.5;margin:0;white-space:pre-wrap}@media (max-width:768px){.feedback-detail-body,.feedback-detail-header{padding:16px}.info-row{flex-direction:column;gap:4px}.info-label{min-width:auto}}.feedback-page{background-color:#f8f9fa;display:flex;flex-direction:column;height:100%}.feedback-header{align-items:center;background:#fff;border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;padding:24px}.feedback-header-content h1{color:#212529;font-size:28px;font-weight:700;margin:0 0 4px}.feedback-header-content p{color:#6c757d;font-size:14px;margin:0}.feedback-filters{align-items:flex-end;background:#fff;border-bottom:1px solid #dee2e6;display:flex;flex-wrap:wrap;gap:20px;padding:16px 24px}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{color:#495057;font-size:13px;font-weight:500}.form-control-sm{font-size:13px;min-width:150px;padding:6px 10px}.feedback-content{grid-gap:16px;display:grid;flex:1 1;gap:16px;grid-template-columns:1fr 1fr;overflow:hidden;padding:16px}.feedback-left,.feedback-right{background:#fff;border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.feedback-left,.feedback-right{border:1px solid #dee2e6}.loading{color:#6c757d;height:200px}.feedback-placeholder{align-items:center;display:flex;height:100%;justify-content:center;padding:48px;text-align:center}.feedback-placeholder p{color:#6c757d;font-size:16px}@media (max-width:1200px){.feedback-content{grid-template-columns:1fr;grid-template-rows:auto 1fr}.feedback-left{max-height:400px}}@media (max-width:768px){.feedback-header{align-items:flex-start;flex-direction:column;gap:16px}.feedback-header button{width:100%}.feedback-filters{align-items:stretch;flex-direction:column}.filter-group{width:100%}.form-control-sm{min-width:auto;width:100%}.feedback-content{gap:8px;padding:8px}}.administration-dashboard{margin:0 auto;max-width:1400px;padding:2rem}.administration-header{margin-bottom:2rem}.administration-header h1{color:#002356;font-size:2rem;font-weight:700;margin:0 0 .5rem}.administration-subtitle{color:#747678;font-size:1rem;margin:0}.administration-modules{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:3rem}.admin-module-card{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:inherit;display:flex;gap:1.5rem;min-height:140px;padding:2rem;position:relative;text-decoration:none;transition:all .3s ease}.admin-module-card:hover{border-color:#002356;box-shadow:0 8px 16px #00235626;transform:translateY(-4px)}.admin-module-card.disabled{cursor:default;opacity:.6}.admin-module-card.disabled:hover{border-color:#e2e8f0;box-shadow:none;transform:none}.coming-soon-badge{background:#f37b03;border-radius:6px;color:#fff;font-size:.65rem;font-weight:700;letter-spacing:.5px;padding:.3rem .6rem;position:absolute;right:12px;text-transform:uppercase;top:12px}.admin-module-icon{align-items:center;background:#f8fafc;border-radius:12px;display:flex;flex-shrink:0;font-size:3.5rem;height:3.5rem;justify-content:center;padding:.5rem;width:3.5rem}.admin-module-content{flex:1 1}.admin-module-name{color:#002356;font-size:1.25rem;font-weight:700;margin:0 0 .5rem}.admin-module-desc{color:#747678;font-size:.875rem;line-height:1.5;margin:0}.administration-info{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:3rem}.info-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem}.info-card h3{color:#002356;font-size:1rem;font-weight:600;margin:0 0 .75rem}.info-card p{color:#747678;font-size:.875rem;line-height:1.6;margin:0}@media (max-width:768px){.administration-dashboard{padding:1rem}.administration-modules{grid-template-columns:1fr}.admin-module-card{flex-direction:column;text-align:center}.administration-info{grid-template-columns:1fr}}.risk-dashboard{margin:0 auto;max-width:1400px;padding:2rem}.stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.stat-card{align-items:center;background:#fff;border-left:4px solid;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;gap:1rem;padding:1.5rem}.stat-card.blue{border-color:#3b82f6}.stat-card.yellow{border-color:#f59e0b}.stat-card.red{border-color:#ef4444}.stat-card.green{border-color:#10b981}.stat-icon{font-size:2.5rem;opacity:.8}.stat-content{flex:1 1}.stat-label{color:#666;margin-bottom:.25rem}.stat-value{color:#1a1a1a}.modules-section{margin-bottom:2rem}.modules-section h2{color:#1a1a1a;font-size:1.5rem;margin-bottom:1rem}.modules-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.module-card{background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:inherit;padding:1.5rem;position:relative;text-decoration:none;transition:all .2s}.module-card.ready:hover{border-color:#3b82f6;box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.module-card.disabled{cursor:not-allowed;opacity:.6}.module-card .coming-soon{background:#f59e0b;border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .75rem;position:absolute;right:1rem;top:1rem}.module-icon{font-size:2.5rem;margin-bottom:.75rem}.module-card h3{color:#1a1a1a;font-size:1.25rem;margin-bottom:.5rem}.module-card p{color:#666;font-size:.875rem;margin-bottom:1rem}.module-badge{background:#eff6ff;border-radius:12px;color:#3b82f6;display:inline-block;font-size:.875rem;font-weight:600;padding:.25rem .75rem}.dashboard-content{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(500px,1fr))}.dashboard-column{display:flex;flex-direction:column;gap:1.5rem}.card-header{padding:1.5rem}.card-header h3{color:#1a1a1a;font-size:1.125rem;margin:0}.review-list{display:flex;flex-direction:column;gap:.75rem}.review-item{align-items:center;background:#f9fafb;border-radius:6px;color:inherit;display:flex;justify-content:space-between;padding:1rem;text-decoration:none;transition:all .2s}.review-item:hover{background:#eff6ff;transform:translateX(4px)}.review-info{flex:1 1}.review-name{color:#1a1a1a;font-weight:600;margin-bottom:.25rem}.review-meta{color:#666;display:flex;font-size:.875rem;gap:1rem}.review-project:before{content:"📋 "}.review-value:before{content:"💰 "}.review-date:before{content:"📅 "}.review-badges{align-items:center;display:flex;gap:.5rem}.badge-warning{background:#fef3c7}.empty-state{color:#666;padding:2rem}.empty-state p{margin-bottom:1rem}.value-summary{gap:1.5rem}.value-item,.value-summary{display:flex;flex-direction:column}.value-item{gap:.5rem}.value-label{color:#666;font-size:.875rem}.value-amount{color:#1a1a1a;font-size:1.5rem;font-weight:700}.btn-sm{font-size:.875rem;padding:.375rem .75rem}@media (max-width:768px){.risk-dashboard{padding:1rem}.dashboard-content,.modules-grid,.stats-grid{grid-template-columns:1fr}}.contract-review-list{margin:0 auto;max-width:1400px;padding:2rem}.page-header{align-items:flex-start;display:flex;justify-content:space-between}.btn-primary:hover{background:#2563eb}.filters-bar{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.filter-group{flex:1 1;min-width:200px}.filter-select,.search-input{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;padding:.75rem;width:100%}.filter-select:focus,.search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.table-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.reviews-table{border-collapse:collapse;width:100%}.reviews-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.reviews-table th{color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.5px;padding:1rem;text-align:left;text-transform:uppercase}.reviews-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.reviews-table tbody tr:hover{background:#f9fafb}.reviews-table td{color:#1a1a1a;padding:1rem}.contract-cell{display:flex;flex-direction:column;gap:.25rem}.contract-name,.legal-flag{font-weight:600}.legal-flag{color:#f59e0b;font-size:.75rem}.date-cell{display:flex;flex-direction:column;gap:.25rem}.uploaded-by{color:#666;font-size:.875rem}.badge{padding:.25rem .75rem}.btn-link{text-decoration:none;transition:color .2s}.btn-link:hover{text-decoration:underline}.empty-state{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:4rem 2rem;text-align:center}.empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.empty-state h3{color:#1a1a1a;font-size:1.5rem;margin-bottom:.5rem}.empty-state p{color:#666;font-size:1rem;margin-bottom:2rem}.loading{align-items:center;color:#666;display:flex;font-size:1.125rem;justify-content:center;min-height:400px}@media (max-width:768px){.contract-review-list{padding:1rem}.page-header{gap:1rem}.filters-bar,.page-header{flex-direction:column}.table-container{overflow-x:auto}.reviews-table{min-width:800px}}.contract-upload{margin:0 auto;max-width:900px;padding:2rem}.page-header{margin-bottom:2rem;text-align:center}.page-header h1{color:#1a1a1a;font-size:2rem;margin-bottom:.5rem}.page-header p{color:#666;font-size:1rem}.upload-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:2rem}.dropzone{background:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;cursor:pointer;padding:3rem 2rem;text-align:center;transition:all .3s}.dropzone.dragover,.dropzone:hover{background:#eff6ff;border-color:#3b82f6}.dropzone.dragover{transform:scale(1.02)}.dropzone-icon{font-size:3rem;margin-bottom:1rem}.dropzone-text{color:#1a1a1a;font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.dropzone-subtext{color:#666;font-size:.875rem}.file-preview{align-items:center;background:#f9fafb;border-radius:6px;display:flex;gap:1rem;margin-top:1.5rem;padding:1rem}.file-icon{font-size:1.5rem}.file-info{color:#1a1a1a;flex:1 1;font-weight:500}.file-remove{background:none;border:none;color:#666;cursor:pointer;font-size:1.25rem;padding:.25rem;transition:color .2s}.file-remove:hover{color:#ef4444}.error-message{align-items:center;background:#fee2e2;border-radius:6px;color:#991b1b;display:flex;font-weight:500;gap:.75rem;margin-top:1.5rem;padding:1rem}.error-icon{font-size:1.25rem}.api-key-section{margin-top:1.5rem;text-align:center}.btn-link{background:none;border:none;color:#3b82f6;cursor:pointer;font-size:.875rem;font-weight:600;text-decoration:underline}.btn-link:hover{color:#2563eb}.api-key-input-group{margin-top:1rem}.api-key-input{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;padding:.75rem;width:100%}.api-key-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.api-key-note{color:#666;font-size:.875rem;margin-top:.5rem}.analyzing-overlay{margin-top:1.5rem;padding:2rem;text-align:center}.spinner{height:50px;margin:0 auto 1rem;width:50px}.analyzing-overlay p{color:#1a1a1a;font-size:1.125rem;font-weight:600;margin-bottom:.25rem}.analyzing-subtext{color:#666;font-size:.875rem}.btn{display:inline-block;font-size:1rem;padding:.75rem 1.5rem}.btn-primary:disabled{background:#d1d5db}.btn-secondary{background:#e5e7eb}.btn-secondary:hover{background:#d1d5db}.btn-large{font-size:1.125rem;margin-top:1.5rem;padding:1rem;width:100%}.results-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:2rem}.results-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.results-header h2{color:#1a1a1a;font-size:1.75rem;margin:0}.risk-badge{border-radius:6px;font-size:.875rem;font-weight:700;padding:.5rem 1rem;text-transform:uppercase}.risk-badge.risk-high{background:#fee2e2;color:#991b1b}.risk-badge.risk-moderate{background:#fef3c7;color:#92400e}.risk-badge.risk-low{background:#d1fae5;color:#065f46}.results-summary{grid-gap:1.5rem;background:#f9fafb;border-radius:6px;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr);margin-bottom:2rem;padding:1.5rem}.summary-item{gap:.5rem;min-width:0}.summary-label{color:#666;font-size:.875rem;font-weight:500}.summary-item strong{color:#1a1a1a;font-size:1.125rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.risk-counts{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:2rem}.risk-count{border:2px solid;border-radius:6px;padding:1.5rem;text-align:center}.risk-count.high{border-color:#ef4444}.risk-count.moderate{border-color:#f59e0b}.risk-count.low{border-color:#10b981}.risk-count .count{display:block;font-size:2.5rem;font-weight:700;margin-bottom:.25rem}.risk-count.high .count{color:#991b1b}.risk-count.moderate .count{color:#92400e}.risk-count.low .count{color:#065f46}.risk-count .label{color:#666;font-size:.875rem;font-weight:600;text-transform:uppercase}.results-container h3{color:#1a1a1a;font-size:1.25rem;margin-bottom:1rem}.findings-list{gap:.75rem;margin-bottom:2rem}.finding-item{border:1px solid #e5e7eb;border-radius:6px;overflow:hidden}.finding-item summary{align-items:center;background:#f9fafb;cursor:pointer;display:flex;font-weight:600;gap:1rem;padding:1rem;transition:background .2s}.finding-item summary:hover{background:#eff6ff}.finding-badge{font-size:.75rem}.finding-title{flex:1 1}.finding-content{background:#fff;padding:1rem}.finding-section{margin-bottom:1rem}.finding-section strong{color:#1a1a1a;margin-bottom:.5rem}.finding-section p{color:#666}.results-actions{border-top:2px solid #e5e7eb;display:flex;gap:1rem;margin-top:2rem;padding-top:2rem}.results-actions .btn{flex:1 1}@media (max-width:768px){.contract-upload{padding:1rem}.results-summary,.risk-counts{grid-template-columns:1fr}.results-actions{flex-direction:column}}:root{--react-pdf-annotation-layer:1;--annotation-unfocused-field-background:url('data:image/svg+xml;charset=utf-8,<svg width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" style="fill:rgba(0,54,255,.13)"/></svg>');--input-focus-border-color:Highlight;--input-focus-outline:1px solid Canvas;--input-unfocused-border-color:#0000;--input-disabled-border-color:#0000;--input-hover-border-color:#000;--link-outline:none}@media screen and (forced-colors:active){:root{--input-focus-border-color:CanvasText;--input-unfocused-border-color:ActiveText;--input-disabled-border-color:GrayText;--input-hover-border-color:Highlight;--link-outline:1.5px solid LinkText}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .textWidgetAnnotation :is(input,textarea):required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{left:0;pointer-events:none;position:absolute;top:0;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translateX(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{height:100%;position:absolute;width:100%}.annotationLayer section{box-sizing:border-box;margin:0;pointer-events:auto;position:absolute;text-align:left;text-align:initial;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:none;outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{font-size:1em;height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{background:#ff0;box-shadow:0 2px 10px #ff0;opacity:.2}.annotationLayer .textAnnotation img{cursor:pointer;height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input,.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .textWidgetAnnotation :is(input,textarea){background-image:url('data:image/svg+xml;charset=utf-8,<svg width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" style="fill:rgba(0,54,255,.13)"/></svg>');background-image:var(--annotation-unfocused-field-background);border:2px solid #0000;border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px*var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .textWidgetAnnotation :is(input,textarea):required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled]{background:none;border:2px solid #0000;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .textWidgetAnnotation :is(input,textarea):hover{border:2px solid #000;border:2px solid var(--input-hover-border-color)}.annotationLayer .buttonWidgetAnnotation.checkBox input:hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .textWidgetAnnotation :is(input,textarea):hover{border-radius:2px}.annotationLayer .choiceWidgetAnnotation select:focus,.annotationLayer .textWidgetAnnotation :is(input,textarea):focus{background:none;border:2px solid Highlight;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-color:initial;background-image:none}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid Highlight;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid Highlight;border:2px solid var(--input-focus-border-color);outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{-webkit-appearance:none;appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{font-size:calc(9px*var(--total-scale-factor));min-width:calc(180px*var(--total-scale-factor));pointer-events:none;position:absolute;width:100%}.annotationLayer .popup{word-wrap:break-word;background-color:#ff9;border-radius:calc(2px*var(--total-scale-factor));box-shadow:0 calc(2px*var(--total-scale-factor)) calc(5px*var(--total-scale-factor)) #888;cursor:pointer;font:message-box;margin-left:calc(5px*var(--total-scale-factor));max-width:calc(180px*var(--total-scale-factor));padding:calc(6px*var(--total-scale-factor));pointer-events:auto;position:absolute;white-space:normal}.annotationLayer .popup>*{font-size:calc(9px*var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px*var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid #333;margin-top:calc(2px*var(--total-scale-factor));padding-top:calc(2px*var(--total-scale-factor))}.annotationLayer .richText>*{font-size:calc(9px*var(--total-scale-factor));white-space:pre-wrap}.annotationLayer .caretAnnotation,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .fileAttachmentAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .highlightAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .lineAnnotation svg line,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .squareAnnotation svg rect,.annotationLayer .squigglyAnnotation,.annotationLayer .stampAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .underlineAnnotation{cursor:pointer}.annotationLayer section svg{height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer .annotationTextContent{color:#0000;height:100%;opacity:0;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;width:100%}.annotationLayer .annotationTextContent span{display:inline-block;width:100%}:root{--react-pdf-text-layer:1;--highlight-bg-color:#b400aa;--highlight-selected-bg-color:#006400}@media screen and (forced-colors:active){:root{--highlight-bg-color:Highlight;--highlight-selected-bg-color:ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translateX(-100%)}.textLayer{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;inset:0;line-height:1;overflow:hidden;position:absolute;text-align:left;text-align:initial;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:#0000;cursor:text;margin:0;position:absolute;transform-origin:0 0;white-space:pre}.textLayer span.markedContent{height:0;top:0}.textLayer .highlight{background-color:#b400aa;background-color:var(--highlight-bg-color);border-radius:4px;margin:-1px;padding:1px}.textLayer .highlight.appended{position:static}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:#006400;background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:#0000}.textLayer .endOfContent{cursor:default;display:block;inset:100% 0 0;position:absolute;-webkit-user-select:none;user-select:none;z-index:-1}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{display:none;height:0;left:0;position:absolute;top:0;width:0}.contract-viewer-new{background:#f5f5f5;display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.viewer-toolbar{background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:.75rem 1rem}.toolbar-group,.viewer-toolbar{align-items:center;display:flex}.toolbar-group{gap:.5rem}.toolbar-btn{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:4px;color:#374151;cursor:pointer;display:flex;font-size:1rem;justify-content:center;min-width:36px;padding:.5rem .75rem;transition:all .2s}.toolbar-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.toolbar-btn:active:not(:disabled){background:#e5e7eb}.toolbar-btn:disabled{cursor:not-allowed;opacity:.4}.zoom-indicator{font-weight:500;min-width:60px}.page-controls{align-items:center;background:#f9fafb;border:1px solid #d1d5db;border-radius:4px;display:flex;gap:.25rem;padding:.25rem .5rem}.page-input{-moz-appearance:textfield;background:#fff;border:none;border-radius:3px;font-size:.875rem;padding:.25rem;text-align:center;width:50px}.page-input::-webkit-inner-spin-button,.page-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.page-input:focus{outline:2px solid #3b82f6;outline-offset:1px}.page-separator{color:#9ca3af;margin:0 .25rem}.total-pages{color:#6b7280;font-size:.875rem;min-width:30px;text-align:center}.toolbar-status{display:flex;flex:1 1;justify-content:center}.searching-indicator{align-items:center;background:#eff6ff;border:1px solid #3b82f6;border-radius:4px;color:#1e40af;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem}.pdf-viewer-container{background:#525252;display:flex;flex:1 1;justify-content:center;min-height:0;overflow-x:auto;overflow-y:auto;padding:2rem}.pdf-viewer-container .react-pdf__Document{align-items:center;display:flex;flex-direction:column}.pdf-viewer-container .react-pdf__Page{background:#fff;box-shadow:0 4px 6px #0000004d;margin-bottom:2rem}.pdf-viewer-container .react-pdf__Page__canvas{display:block;height:auto!important;max-width:100%}.pdf-viewer-container .react-pdf__Page__textContent{height:100%;left:0;line-height:1;opacity:.2;position:absolute;top:0;width:100%}.pdf-viewer-container .react-pdf__Page__textContent span{color:#0000;cursor:text;position:absolute;transform-origin:0 0;white-space:pre}.page-loading,.viewer-loading{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:4rem 2rem}.viewer-loading{height:100%}.spinner{border:4px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:48px;margin-bottom:1rem;width:48px}.spinner,.spinner-small{animation:spin 1s linear infinite}.spinner-small{border:2px solid #dbeafe;border-radius:50%;border-top-color:#3b82f6;height:16px;width:16px}@keyframes spin{to{transform:rotate(1turn)}}.page-loading p,.viewer-loading p{color:#9ca3af;font-size:.875rem;margin:0}.page-error,.viewer-error{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.viewer-error{height:100%}.error-icon{font-size:3rem;margin-bottom:1rem}.viewer-error h3{color:#1f2937;font-size:1.25rem;margin:0 0 .5rem}.page-error p,.viewer-error p{color:#ef4444;font-size:.875rem;margin:0}@media (max-width:768px){.viewer-toolbar{padding:.5rem}.toolbar-btn{font-size:.875rem;min-width:32px;padding:.4rem .6rem}.pdf-viewer-container{padding:1rem}}.pdf-viewer-container::-webkit-scrollbar{height:12px;width:12px}.pdf-viewer-container::-webkit-scrollbar-track{background:#3f3f3f}.pdf-viewer-container::-webkit-scrollbar-thumb{background:#666;border-radius:6px}.pdf-viewer-container::-webkit-scrollbar-thumb:hover{background:#888}.contract-detail{background:#f9fafb;display:flex;flex-direction:column;height:100vh;margin:0;max-width:100%;overflow:hidden;padding:0}.detail-header{align-items:flex-start;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;justify-content:space-between;padding:1.5rem 2rem;z-index:10}.breadcrumb{align-items:center;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:.5rem}.breadcrumb a{color:#3b82f6;text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb span{color:#9ca3af}.detail-header h1{color:#1a1a1a;font-size:1.5rem;font-weight:600;margin:0}.header-actions{display:flex;flex-shrink:0;gap:.75rem}.contract-detail.split-view{grid-gap:0;display:grid;gap:0;grid-template-columns:600px 1fr;grid-template-rows:auto 1fr}.contract-detail.split-view .detail-header{grid-column:1/-1;grid-row:1}.contract-detail.split-view .detail-content{background:#f9fafb;border-right:1px solid #e5e7eb;grid-column:1;grid-row:2;height:100%;max-width:600px;min-height:0;overflow-x:hidden;overflow-y:auto;padding:1.5rem;width:100%}.contract-detail.split-view .viewer-panel{background:#fff;grid-column:2;grid-row:2;height:100%;min-height:0;overflow:hidden}.detail-content{display:flex;flex:1 1;flex-direction:column;gap:1.5rem;margin:0 auto;max-width:1200px;min-height:-webkit-min-content;min-height:min-content;overflow-x:hidden;overflow-y:auto;padding:2rem;width:100%}.card{background:#fff;border-radius:8px;flex-shrink:0;overflow:hidden}.card-header{align-items:center;background:#fafafa;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.card-header h2{color:#1a1a1a;font-size:1.125rem;font-weight:600;margin:0}.card-body{padding:1.5rem}.summary-badges{display:flex;flex-wrap:wrap;gap:.5rem}.summary-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.summary-item{display:flex;flex-direction:column;gap:.375rem}.summary-item .label{color:#6b7280;font-size:.8125rem;font-weight:500;letter-spacing:.025em;text-transform:uppercase}.summary-item .value{color:#1a1a1a;font-size:.9375rem;font-weight:600}.legal-notice{background:#fef3c7;border:1px solid #f59e0b;border-radius:6px;display:flex;gap:1rem;margin-top:1.25rem;padding:1rem}.legal-icon{flex-shrink:0;font-size:1.5rem}.legal-notice strong{color:#92400e;display:block;font-size:.9375rem;margin-bottom:.25rem}.legal-notice p{color:#78350f;font-size:.875rem;line-height:1.5;margin:0}.risk-summary{display:flex;flex-wrap:wrap;gap:.75rem}.risk-count{border-radius:12px;font-size:.8125rem;font-weight:600;padding:.375rem .875rem;white-space:nowrap}.risk-count.high{background:#fee2e2;color:#991b1b}.risk-count.moderate{background:#fef3c7;color:#92400e}.risk-count.low{background:#d1fae5;color:#065f46}.findings-list{display:flex;flex-direction:column;gap:1rem;max-height:none}.finding-card{background:#fff;border:2px solid #e5e7eb;border-radius:6px;cursor:pointer;overflow:hidden;transition:all .2s ease}.finding-card:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f626;transform:translateY(-1px)}.finding-card.selected{background:#eff6ff;border-color:#3b82f6;box-shadow:0 4px 12px #3b82f640}.finding-header{background:#f9fafb;gap:1rem;justify-content:space-between;padding:1rem 1.25rem}.finding-header,.finding-header>div{align-items:center;display:flex;flex-wrap:wrap}.finding-header>div{flex:1 1;gap:.75rem}.finding-badge{border-radius:12px;flex-shrink:0;font-size:.6875rem;font-weight:700;letter-spacing:.025em;padding:.25rem .75rem;text-transform:uppercase}.finding-badge.risk-high{background:#fee2e2;color:#991b1b}.finding-badge.risk-moderate{background:#fef3c7;color:#92400e}.finding-badge.risk-low{background:#d1fae5;color:#065f46}.finding-title{color:#1a1a1a;font-size:.9375rem;font-weight:600}.finding-location{background:#f3f4f6;border-radius:4px;color:#6b7280;font-size:.75rem;font-style:italic;padding:.25rem .5rem}.finding-category{color:#6b7280;flex-shrink:0;font-size:.8125rem;text-transform:capitalize}.finding-body{background:#fff;padding:1rem 1.25rem}.finding-section{margin-bottom:.875rem}.finding-section:last-child{margin-bottom:0}.finding-section strong{color:#374151;display:block;font-size:.875rem;font-weight:600;margin-bottom:.375rem}.finding-section p{color:#4b5563;font-size:.875rem;line-height:1.6;margin:0}.no-findings{color:#9ca3af;font-style:italic;padding:3rem 2rem;text-align:center}.action-section{margin-bottom:1.25rem}.action-section label{color:#1a1a1a;display:block;font-size:.9375rem;font-weight:600;margin-bottom:.5rem}.notes-textarea{border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:.9375rem;min-height:100px;padding:.75rem;resize:vertical;width:100%}.notes-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.action-buttons{display:flex;flex-wrap:wrap;gap:.75rem}.note-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:1rem;padding:1rem}.note-item:last-child{margin-bottom:0}.note-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.note-header strong{color:#1a1a1a;font-size:.9375rem}.note-date{color:#6b7280;font-size:.8125rem}.note-item p{color:#374151;font-size:.875rem;line-height:1.6;margin:0}.badge{border-radius:12px;font-weight:600;letter-spacing:.025em;padding:.5rem 1rem;text-transform:uppercase}.risk-high{background:#fee2e2;color:#991b1b}.risk-moderate{background:#fef3c7;color:#92400e}.risk-low{background:#d1fae5;color:#065f46}.status-under_review{background:#dbeafe;color:#1e40af}.status-approved{background:#d1fae5;color:#065f46}.status-rejected{background:#fee2e2;color:#991b1b}.status-needs_revision{background:#fce7f3;color:#9f1239}.btn{border-radius:6px;cursor:pointer;font-size:.9375rem;font-weight:600;padding:.625rem 1.25rem;text-decoration:none;transition:all .2s ease;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#3b82f6}.btn-primary:hover:not(:disabled){background:#2563eb;box-shadow:0 2px 4px #3b82f64d}.btn-secondary{background:#6b7280}.btn-secondary:hover:not(:disabled){background:#4b5563}.btn-success{background:#10b981;color:#fff}.btn-success:hover:not(:disabled){background:#059669;box-shadow:0 2px 4px #10b9814d}.btn-warning{background:#f59e0b;color:#fff}.btn-warning:hover:not(:disabled){background:#d97706}.btn-danger{background:#ef4444}.btn-danger:hover:not(:disabled){background:#dc2626;box-shadow:0 2px 4px #ef44444d}.viewer-panel{overflow:hidden}.no-file-message,.viewer-panel{display:flex;flex-direction:column;height:100%}.no-file-message{align-items:center;background:#f9fafb;justify-content:center;padding:3rem;text-align:center}.no-file-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.no-file-message h3{color:#1a1a1a;font-size:1.5rem;margin-bottom:.5rem}.no-file-message p{color:#6b7280;font-size:.9375rem;margin:.5rem 0}.no-file-message .hint{color:#9ca3af;font-size:.875rem;font-style:italic}.loading,.not-found{color:#6b7280;padding:4rem 2rem;text-align:center}.not-found h2{color:#1a1a1a;font-size:1.5rem;margin-bottom:1rem}.not-found a{color:#3b82f6;font-weight:600;text-decoration:none}.not-found a:hover{text-decoration:underline}.detail-content::-webkit-scrollbar{width:10px}.detail-content::-webkit-scrollbar-track{background:#f3f4f6}.detail-content::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:5px}.detail-content::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media (max-width:1400px){.contract-detail.split-view{grid-template-columns:500px 1fr}.contract-detail.split-view .detail-content{max-width:500px}}@media (max-width:1200px){.contract-detail.split-view{grid-template-columns:450px 1fr}.contract-detail.split-view .detail-content{max-width:450px;padding:1rem}}@media (max-width:1024px){.contract-detail.split-view{grid-template-columns:400px 1fr}.contract-detail.split-view .detail-content{max-width:400px}}@media (max-width:768px){.contract-detail.split-view{grid-template-columns:1fr;grid-template-rows:auto 1fr}.contract-detail.split-view .viewer-panel{display:none}.contract-detail.split-view .detail-content{max-width:100%}.detail-header{flex-direction:column;gap:1rem;padding:1rem}.header-actions{justify-content:flex-start;width:100%}.summary-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.action-buttons .btn{width:100%}}.voice-note-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;bottom:.75rem;box-shadow:0 4px 12px #667eea66;color:#fff;cursor:pointer;display:flex;height:48px;justify-content:center;position:absolute;right:.75rem;transition:all .3s cubic-bezier(.4,0,.2,1);width:48px;z-index:10}.voice-note-button:hover{box-shadow:0 6px 16px #667eea80;transform:scale(1.1)}.voice-note-button:active{transform:scale(.95)}.microphone-icon{font-size:1.5rem}.voice-note-button.recording{animation:recordingPulse 1.5s ease-in-out infinite;background:#ef4444}@keyframes recordingPulse{0%,to{box-shadow:0 4px 12px #ef444466}50%{box-shadow:0 4px 20px #ef444499,0 0 0 10px #ef444433}}.recording-icon{animation:blink 1s infinite;font-size:1.25rem}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.recording-pulse{animation:pulse 1.5s ease-out infinite;background:#ef4444;border-radius:50%;height:100%;opacity:0;position:absolute;width:100%}@media (max-width:768px){.voice-note-button{height:56px;width:56px}.microphone-icon,.recording-icon{font-size:1.75rem}}@media (hover:none) and (pointer:coarse){.voice-note-button:active{transform:scale(.9)}}.activity-timeline{display:flex;flex-direction:column;gap:1rem}.btn-add-activity{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;padding:.875rem 1.5rem;transition:all .2s}.btn-add-activity:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.add-activity-form{animation:slideDown .3s ease-out;background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;display:flex;flex-direction:column;gap:1rem;padding:1.5rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.timeline-list{display:flex;flex-direction:column;gap:1rem;max-height:500px;overflow-y:auto;padding-right:.5rem}.timeline-list::-webkit-scrollbar{width:6px}.timeline-list::-webkit-scrollbar-track{background:#f3f4f6;border-radius:3px}.timeline-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.timeline-item{animation:fadeInUp .3s ease-out;background:#fff;border-left:4px solid #e5e7eb;border-radius:12px;display:flex;gap:1rem;padding:1rem;transition:all .2s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.timeline-item:hover{box-shadow:0 4px 12px #00000014;transform:translateX(4px)}.timeline-item.completed{border-left-color:#10b981;opacity:.8}.timeline-item.overdue{background:#fef2f2;border-left-color:#ef4444}.timeline-item.pending{border-left-color:#f59e0b}.timeline-item.logged{border-left-color:#3b82f6}.timeline-icon{align-items:center;background:#f3f4f6;border-radius:50%;display:flex;flex-shrink:0;font-size:1.25rem;height:40px;justify-content:center;width:40px}.timeline-content{flex:1 1;min-width:0}.timeline-header{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.5rem}.timeline-title{display:flex;flex:1 1;flex-direction:column;gap:.25rem;min-width:0}.timeline-title strong{color:#1f2937;font-size:1rem;font-weight:600;word-break:break-word}.timeline-type{background:#e5e7eb;border-radius:12px;color:#6b7280;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:capitalize;width:-webkit-fit-content;width:fit-content}.timeline-date{color:#9ca3af;font-size:.875rem;white-space:nowrap}.timeline-notes{color:#6b7280;font-size:.9375rem;line-height:1.6;margin:.5rem 0;word-break:break-word}.voice-transcript{background:#fef3c7;border-left:3px solid #f59e0b;border-radius:8px;display:flex;gap:.5rem;margin:.75rem 0;padding:.75rem 1rem}.transcript-icon{flex-shrink:0;font-size:1.25rem}.voice-transcript p{color:#78350f;font-size:.875rem;font-style:italic;line-height:1.5;margin:0}.timeline-footer{align-items:center;border-top:1px solid #f3f4f6;display:flex;justify-content:space-between;margin-top:.75rem;padding-top:.75rem}.timeline-author{color:#9ca3af;font-size:.875rem}.btn-complete-task{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s}.btn-complete-task:hover{background:#059669;transform:translateY(-1px)}.timeline-empty{color:#9ca3af;padding:3rem 1rem;text-align:center}.timeline-empty p{font-size:1rem;margin:0}.timeline-loading{color:#9ca3af;padding:2rem;text-align:center}@media (max-width:768px){.timeline-item{gap:.75rem;padding:.875rem}.timeline-icon{font-size:1.125rem;height:36px;width:36px}.timeline-header{align-items:flex-start;flex-direction:column}.timeline-date{font-size:.75rem}.timeline-notes{font-size:.875rem}.timeline-footer{align-items:flex-start;flex-direction:column;gap:.5rem}.btn-complete-task{width:100%}}.quick-actions{grid-gap:.75rem;background:linear-gradient(135deg,#f9fafb,#e5e7eb);border-radius:12px;display:grid;gap:.75rem;grid-template-columns:repeat(4,1fr);margin-bottom:1rem;padding:1rem}.quick-action-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#fff;border:2px solid #0000;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:.5rem;justify-content:center;min-height:80px;padding:1rem .5rem;transition:all .2s}.quick-action-btn:hover:not(:disabled){box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.quick-action-btn:active:not(:disabled){transform:scale(.95)}.quick-action-btn:disabled{cursor:not-allowed;opacity:.4}.quick-action-btn.call{border-color:#10b981}.quick-action-btn.call:hover:not(:disabled){background:#f0fdf4;border-color:#10b981}.quick-action-btn.email{border-color:#3b82f6}.quick-action-btn.email:hover:not(:disabled){background:#eff6ff;border-color:#3b82f6}.quick-action-btn.meeting{border-color:#8b5cf6}.quick-action-btn.meeting:hover:not(:disabled){background:#f5f3ff;border-color:#8b5cf6}.quick-action-btn.note{border-color:#f59e0b}.quick-action-btn.note:hover:not(:disabled){background:#fffbeb;border-color:#f59e0b}.action-icon{font-size:2rem}.action-label{color:#374151;font-size:.875rem;font-weight:600}.activity-log-modal{align-items:flex-end;animation:fadeIn .2s ease-out;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1100}.log-modal-content{animation:slideUpModal .3s ease-out;background:#fff;border-radius:16px 16px 0 0;box-shadow:0 -4px 20px #00000026;max-width:500px;padding:1.5rem;width:100%}@keyframes slideUpModal{0%{transform:translateY(100%)}to{transform:translateY(0)}}.log-modal-content h3{color:#1f2937;font-size:1.25rem;font-weight:700;margin:0 0 1rem}.log-modal-content input,.log-modal-content textarea{border:2px solid #e5e7eb;border-radius:8px;font-family:inherit;font-size:1rem;margin-bottom:1rem;padding:.75rem 1rem;width:100%}.log-modal-content input:focus,.log-modal-content textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.log-modal-actions{display:flex;gap:1rem}@media (max-width:768px){.quick-actions{gap:.5rem;padding:.75rem}.quick-action-btn{min-height:70px;padding:.75rem .25rem}.action-icon{font-size:1.75rem}.action-label{font-size:.75rem}.activity-log-modal{padding:0}.log-modal-content{max-width:100%;padding:1.25rem}}@media (min-width:769px){.activity-log-modal{align-items:center}.log-modal-content{border-radius:16px}}.modal-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.opportunity-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;max-height:90vh;max-width:800px;width:100%}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem}.modal-header h2{color:#1f2937;font-size:1.5rem;font-weight:700;margin:0}.btn-close{align-items:center;background:none;border:none;border-radius:8px;color:#9ca3af;cursor:pointer;display:flex;font-size:2rem;height:40px;justify-content:center;transition:all .2s;width:40px}.btn-close:hover{background:#f3f4f6;color:#374151}.modal-tabs{border-bottom:2px solid #f3f4f6;display:flex;padding:0 1.5rem}.tab{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#6b7280;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;margin-bottom:-2px;padding:1rem 1.5rem;transition:all .2s}.tab:hover{color:#374151}.tab.active{border-bottom-color:#667eea;color:#667eea}.tab-badge{background:#667eea;border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:.125rem .5rem}.modal-content{flex:1 1;overflow-y:auto;padding:1.5rem}.opportunity-form{gap:1.5rem}.form-section,.opportunity-form{display:flex;flex-direction:column}.form-section{gap:1rem}.form-section h3{border-bottom:2px solid #f3f4f6;color:#374151;font-size:1.125rem;font-weight:600;margin:0;padding-bottom:.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:#374151;font-size:.875rem;font-weight:600}.form-group input,.form-group select,.form-group textarea{border:2px solid #e5e7eb;border-radius:8px;font-family:inherit;font-size:.9375rem;padding:.75rem 1rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group textarea{min-height:100px;resize:vertical}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.textarea-with-voice{position:relative}.form-actions{border-top:1px solid #e5e7eb;display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem}.btn-primary,.btn-secondary{border-radius:8px;font-size:1rem;padding:.75rem 2rem}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 8px #667eea4d}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.btn-secondary{background:#fff;border:2px solid #e5e7eb;color:#374151}.btn-secondary:hover{background:#f9fafb}@media (max-width:768px){.modal-overlay{padding:0}.opportunity-modal{border-radius:0;height:100vh;max-height:100vh;max-width:100%}.modal-header{padding:1rem}.modal-header h2{font-size:1.25rem}.modal-tabs{padding:0 1rem}.tab{font-size:.9375rem;padding:.75rem 1rem}.modal-content{padding:1rem}.form-row{grid-template-columns:1fr}.form-actions{background:#fff;bottom:0;box-shadow:0 -2px 10px #0000001a;margin:0 -1rem;padding:1rem;position:-webkit-sticky;position:sticky}.btn-primary,.btn-secondary{flex:1 1}}.mobile-sales-container{-webkit-overflow-scrolling:touch;background:#f5f7fa;min-height:100vh;min-height:-webkit-fill-available;overflow-x:hidden;padding-bottom:env(safe-area-inset-bottom)}.mobile-sales-header{align-items:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);box-shadow:0 2px 8px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:calc(16px + env(safe-area-inset-top)) 16px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.mobile-sales-header h1{font-size:20px;font-weight:600;margin:0}.mobile-add-btn{-webkit-tap-highlight-color:transparent;align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:44px;justify-content:center;transition:all .2s;width:44px}.mobile-add-btn:active{background:#ffffff4d;transform:scale(.95)}.mobile-loading{color:#6b7280;font-size:16px;padding:60px 20px;text-align:center}.mobile-kpi-scroll{-webkit-overflow-scrolling:touch;-ms-overflow-style:none;display:flex;gap:12px;overflow-x:auto;padding:16px;scroll-snap-type:x mandatory;scrollbar-width:none}.mobile-kpi-scroll::-webkit-scrollbar{display:none}.mobile-kpi-card{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;flex-shrink:0;min-width:140px;overflow:hidden;padding:16px;position:relative;scroll-snap-align:start}.mobile-kpi-card:before{content:"";height:3px;left:0;position:absolute;right:0;top:0}.mobile-kpi-card.blue:before{background:linear-gradient(135deg,#3b82f6,#8b5cf6)}.mobile-kpi-card.green:before{background:linear-gradient(135deg,#10b981,#06b6d4)}.mobile-kpi-card.amber:before{background:linear-gradient(135deg,#f59e0b,#f43f5e)}.mobile-kpi-label{color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.mobile-kpi-value{font-size:24px;font-weight:700;margin-bottom:6px}.mobile-kpi-card.blue .mobile-kpi-value{color:#3b82f6}.mobile-kpi-card.green .mobile-kpi-value{color:#10b981}.mobile-kpi-card.amber .mobile-kpi-value{color:#f59e0b}.mobile-kpi-trend{font-size:12px;font-weight:500}.mobile-kpi-trend.up{color:#10b981}.mobile-kpi-trend.down{color:#ef4444}.mobile-stage-filter{-webkit-overflow-scrolling:touch;-ms-overflow-style:none;display:flex;gap:8px;overflow-x:auto;padding:0 16px 16px;scroll-snap-type:x proximity;scrollbar-width:none}.mobile-stage-filter::-webkit-scrollbar{display:none}.mobile-filter-chip{-webkit-tap-highlight-color:transparent;align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:20px;color:#374151;cursor:pointer;display:flex;flex-shrink:0;font-size:13px;font-weight:500;min-height:44px;padding:8px 16px;scroll-snap-align:start;transition:all .2s;white-space:nowrap}.mobile-filter-chip.active{background:#3b82f6;border-color:#3b82f6;box-shadow:0 2px 8px #3b82f64d;color:#fff}.mobile-filter-chip:active{transform:scale(.98)}.mobile-opportunities-list{padding:0 16px 16px}.mobile-opportunity-card{-webkit-tap-highlight-color:transparent;background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;cursor:pointer;margin-bottom:12px;padding:16px;transition:all .2s}.mobile-opportunity-card:active{box-shadow:0 4px 12px #0000001a;transform:scale(.98)}.mobile-opp-header{align-items:flex-start;display:flex;gap:12px;margin-bottom:12px}.mobile-opp-icon{align-items:center;background:linear-gradient(135deg,#f0f1f3,#e5e7eb);border-radius:12px;display:flex;flex-shrink:0;font-size:22px;height:44px;justify-content:center;width:44px}.mobile-opp-title-section{flex:1 1;min-width:0}.mobile-opp-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#1a1a2e;display:-webkit-box;font-size:16px;font-weight:600;line-height:1.4;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis}.mobile-opp-subtitle{color:#6b7280;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-opp-value{color:#10b981;font-size:22px;font-weight:700;margin-bottom:12px}.mobile-opp-meta{align-items:center;display:flex;gap:8px;margin-bottom:12px}.mobile-stage-badge{flex-shrink:0}.mobile-probability,.mobile-stage-badge{border-radius:12px;font-size:12px;font-weight:600;padding:6px 12px}.mobile-probability{background:#f3f4f6;color:#374151}.mobile-opp-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#6b7280;display:-webkit-box;font-size:14px;line-height:1.5;margin-bottom:12px;overflow:hidden;text-overflow:ellipsis}.mobile-opp-footer{align-items:center;border-top:1px solid #f3f4f6;display:flex;justify-content:space-between;padding-top:12px}.mobile-opp-market{color:#6b7280;font-size:13px;font-weight:500}.mobile-opp-date{color:#9ca3af;font-size:12px}.mobile-empty-state{padding:60px 20px;text-align:center}.mobile-empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.mobile-empty-text{color:#6b7280;font-size:16px}.mobile-bottom-spacer{height:env(safe-area-inset-bottom);min-height:20px}@supports (-webkit-overflow-scrolling:touch){.mobile-sales-container{overscroll-behavior-y:contain}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.mobile-opportunity-card{animation:slideUp .3s ease-out}@supports (padding:max(0px)){.mobile-kpi-scroll,.mobile-opportunities-list,.mobile-sales-header,.mobile-stage-filter{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}}@media (prefers-color-scheme:dark){.mobile-sales-container{background:#1a1a2e}.mobile-filter-chip,.mobile-kpi-card,.mobile-opportunity-card{background:#2d2d44;border-color:#3a3a52}.mobile-opp-title{color:#fff}.mobile-kpi-label,.mobile-opp-description,.mobile-opp-market,.mobile-opp-subtitle{color:#9ca3af}.mobile-filter-chip{color:#e5e7eb}.mobile-probability{background:#3a3a52;color:#e5e7eb}.mobile-opp-footer{border-top-color:#3a3a52}}@media (orientation:landscape) and (max-height:500px){.mobile-sales-header{padding-bottom:12px;padding-top:12px}.mobile-sales-header h1{font-size:18px}.mobile-kpi-scroll{padding-bottom:12px;padding-top:12px}.mobile-kpi-card{padding:12px}.mobile-opportunities-list{padding-top:12px}}@media (max-width:375px){.mobile-sales-header h1{font-size:18px}.mobile-kpi-card{min-width:130px}.mobile-kpi-value{font-size:22px}.mobile-opp-title{font-size:15px}.mobile-opp-value{font-size:20px}}@media (min-width:428px){.mobile-sales-header h1{font-size:22px}.mobile-kpi-card{min-width:150px}.mobile-kpi-value{font-size:26px}.mobile-opp-title{font-size:17px}}@media (min-width:768px){.mobile-kpi-scroll{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.mobile-kpi-card{min-width:auto}.mobile-stage-filter{flex-wrap:wrap}.mobile-opportunities-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.mobile-opportunity-card{margin-bottom:0}}*{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.mobile-filter-chip,.mobile-opportunity-card,button{-webkit-user-select:none;user-select:none}.assessment-overlay{align-items:center;background-color:#000000bf;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:9999}.assessment-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:900px;width:100%}.assessment-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;padding:20px 24px}.assessment-header h2{color:#333;font-size:1.5rem;margin:0}.close-btn{align-items:center;background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;display:flex;font-size:2rem;height:32px;justify-content:center;padding:0;transition:background-color .2s;width:32px}.close-btn:hover{background-color:#f8f9fa;color:#333}.assessment-body{flex:1 1;overflow-y:auto;padding:24px}.score-display{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;gap:32px;margin-bottom:24px;padding:24px}.score-circle,.score-display{align-items:center;display:flex}.score-circle{background:#fff;border:6px solid #28a745;border-radius:50%;flex-direction:column;flex-shrink:0;height:120px;justify-content:center;width:120px}.score-value{font-size:2.5rem;font-weight:700;line-height:1}.score-label{color:#6c757d;font-size:.875rem;margin-top:4px}.verdict-info{display:flex;flex:1 1;flex-direction:column;gap:12px}.verdict-badge{border-radius:20px;display:inline-flex;font-size:1.125rem;font-weight:600;padding:8px 16px;width:-webkit-fit-content;width:fit-content}.verdict-go{background-color:#28a745;color:#fff}.verdict-maybe{background-color:#ffc107;color:#333}.verdict-no_go{background-color:#dc3545;color:#fff}.tier-badge{border:2px solid;border-radius:16px;display:inline-flex;font-weight:600;padding:6px 14px;width:-webkit-fit-content;width:fit-content}.tier-a{background-color:gold;border-color:#ffb700;color:#333}.tier-b{background-color:silver;border-color:#a0a0a0;color:#333}.tier-c{background-color:#cd7f32;border-color:#b56b1e;color:#fff}.knockout-warning{align-items:center;animation:pulse 2s ease-in-out infinite;background-color:#fff3cd;border:2px solid #ffc107;border-radius:8px;color:#856404;display:flex;font-weight:500;gap:8px;padding:12px 16px}.knockout-icon{font-size:1.5rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.criteria-categories{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.category-card{border:2px solid #dee2e6;border-radius:8px;overflow:hidden;transition:border-color .2s}.category-card:hover{border-color:#adb5bd}.category-header{align-items:center;background-color:#f8f9fa;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;transition:background-color .2s;-webkit-user-select:none;user-select:none}.category-header:hover{background-color:#e9ecef}.category-title{align-items:center;color:#333;display:flex;font-size:1.125rem;font-weight:600;gap:12px}.category-icon{font-size:1.5rem}.category-score{background-color:#fff;border-radius:12px;color:#495057;font-size:.875rem;margin-left:auto;padding:4px 12px}.expand-icon{color:#6c757d;font-size:.875rem;transition:transform .2s}.expand-icon.expanded{transform:rotate(180deg)}.category-criteria{background-color:#fff;border-top:1px solid #dee2e6;padding:16px 20px}.criterion-row{align-items:center;border-bottom:1px solid #f8f9fa;display:flex;justify-content:space-between;padding:12px 0}.criterion-row:last-child{border-bottom:none}.criterion-label{align-items:center;color:#495057;display:flex;flex:1 1;font-size:.9375rem;gap:8px}.knockout-indicator{background-color:#fff3cd;border-radius:4px;color:#856404;font-size:.75rem;font-weight:600;padding:2px 6px}.criterion-toggle{gap:6px}.criterion-toggle,.toggle-btn{align-items:center;display:flex}.toggle-btn{background-color:#fff;border:2px solid #dee2e6;border-radius:6px;color:#6c757d;cursor:pointer;font-size:1.125rem;font-weight:700;height:40px;justify-content:center;transition:all .2s;width:40px}.toggle-btn:hover{background-color:#f8f9fa;border-color:#adb5bd}.toggle-btn.active{background-color:#007bff;border-color:#007bff;color:#fff}.criterion-points{color:#495057;font-size:.9375rem;font-weight:600;min-width:50px;text-align:right}.notes-section{margin-top:24px}.notes-section label{color:#333;display:block;font-weight:600;margin-bottom:8px}.notes-section textarea{border:2px solid #dee2e6;border-radius:6px;font-family:inherit;font-size:.9375rem;padding:12px;resize:vertical;transition:border-color .2s;width:100%}.notes-section textarea:focus{border-color:#007bff;outline:none}.assessment-footer{align-items:center;background-color:#f8f9fa;border-top:2px solid #e9ecef;display:flex;justify-content:space-between;padding:20px 24px}.footer-actions-left,.footer-actions-right{display:flex;gap:12px}.btn-primary,.btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:.9375rem;font-weight:600;padding:10px 20px;transition:all .2s}.btn-primary{background-color:#007bff}.btn-primary:hover:not(:disabled){background-color:#0056b3}.btn-primary:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.6}.btn-secondary{background-color:#fff;border:2px solid #dee2e6;color:#495057}.btn-secondary:hover{background-color:#f8f9fa;border-color:#adb5bd}@media (max-width:768px){.score-display{align-items:center;flex-direction:column;text-align:center}.criterion-row{align-items:flex-start}.assessment-footer,.criterion-row{flex-direction:column;gap:12px}.footer-actions-left,.footer-actions-right{width:100%}.footer-actions-left button,.footer-actions-right button{flex:1 1}}.safety-dashboard{margin:0 auto;max-width:1400px}.safety-header{flex-wrap:wrap;justify-content:space-between;margin-bottom:1.5rem}.safety-header,.safety-header-content{align-items:center;display:flex;gap:1rem}.safety-icon-large{background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:1rem;font-size:3rem;padding:1rem}.safety-header h1{color:var(--text-primary);font-size:1.75rem;margin:0}.safety-header p{color:var(--secondary);font-size:.95rem;margin:.25rem 0 0}.btn-sharepoint{align-items:center;background:linear-gradient(135deg,#038387,#026d70);border:none;border-radius:.5rem;box-shadow:0 2px 8px #0383874d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.75rem;padding:.875rem 1.5rem;transition:all .2s ease}.btn-sharepoint:hover{box-shadow:0 4px 12px #03838766;transform:translateY(-2px)}.sharepoint-icon{align-items:center;display:flex}.external-icon{font-size:1.1rem;opacity:.8}.safety-alert{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:.75rem;display:flex;gap:1rem;margin-bottom:1.5rem;padding:1rem 1.5rem}.alert-icon{font-size:1.5rem}.alert-content{color:#92400e;display:flex;flex-wrap:wrap;gap:.5rem}.alert-content strong{color:#78350f}.safety-stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.safety-stat-card{align-items:center;background:var(--card-bg);border:1px solid var(--border);border-radius:.75rem;display:flex;flex-direction:column;padding:1.25rem;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.safety-stat-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.stat-icon{align-items:center;border-radius:.75rem;display:flex;font-size:1.5rem;height:3rem;justify-content:center;margin-bottom:.75rem;width:3rem}.stat-value{font-size:2rem;font-weight:700;margin-bottom:.25rem}.stat-label{color:var(--secondary);font-size:.875rem}.safety-content-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}@media (max-width:1024px){.safety-content-grid{grid-template-columns:1fr}}.safety-content-grid .card{padding:1.5rem}.safety-content-grid h2{align-items:center;color:var(--text-primary);display:flex;font-size:1.125rem;gap:.5rem;margin:0 0 1rem}.card-icon{font-size:1.25rem}.resources-list{display:flex;flex-direction:column;gap:.5rem}.resource-item{align-items:center;background:var(--background);border-radius:.5rem;cursor:pointer;display:flex;gap:1rem;padding:.875rem;transition:all .2s ease}.resource-item:hover{background:var(--hover-bg);transform:translateX(4px)}.resource-icon{flex-shrink:0;font-size:1.5rem}.resource-info{flex:1 1}.resource-name{color:var(--text-primary);font-weight:500}.resource-desc{color:var(--secondary);font-size:.875rem}.resource-arrow{color:var(--secondary);font-size:1.25rem}.actions-list{display:flex;flex-direction:column;gap:.75rem}.action-btn{align-items:center;border:none;border-radius:.5rem;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:.75rem;padding:1rem;text-align:left;transition:all .2s ease}.action-btn:hover{transform:translateY(-2px)}.action-icon{font-size:1.25rem}.action-btn-danger{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b}.action-btn-danger:hover{background:linear-gradient(135deg,#fecaca,#fca5a5)}.action-btn-warning{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.action-btn-warning:hover{background:linear-gradient(135deg,#fde68a,#fcd34d)}.action-btn-primary{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af}.action-btn-primary:hover{background:linear-gradient(135deg,#bfdbfe,#93c5fd)}.action-btn-secondary{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#374151}.action-btn-secondary:hover{background:linear-gradient(135deg,#e5e7eb,#d1d5db)}.training-list{display:flex;flex-direction:column;gap:.75rem}.training-item{align-items:center;background:var(--background);border-radius:.5rem;display:flex;gap:1rem;padding:.75rem}.training-status{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:.875rem;font-weight:600;height:2rem;justify-content:center;width:2rem}.status-complete{background:#d1fae5;color:#065f46}.status-pending{background:#fef3c7;color:#92400e}.training-info{flex:1 1}.training-name{color:var(--text-primary);font-weight:500}.training-date{color:var(--secondary);font-size:.875rem}.contacts-list{display:flex;flex-direction:column;gap:.75rem}.contact-item{align-items:center;background:var(--background);border-radius:.5rem;display:flex;gap:1rem;padding:.875rem}.contact-emergency{background:linear-gradient(135deg,#fee2e2,#fecaca)}.contact-icon{flex-shrink:0;font-size:1.5rem}.contact-name{color:var(--text-primary);font-weight:500}.contact-number{color:var(--primary);font-size:1.125rem;font-weight:600}.contact-emergency .contact-number{color:#dc2626;font-size:1.25rem}*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#1a56db;--primary-dark:#1e40af;--secondary:#6b7280;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--light:#f3f4f6;--dark:#1f2937;--white:#fff}body{background-color:#f3f4f6;background-color:var(--light);color:#1f2937;color:var(--dark);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.5}a{color:#1a56db;color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}.container{margin:0 auto;max-width:1200px;padding:0 1rem}.btn{align-items:center;border:none;border-radius:.375rem;display:inline-flex;font-weight:500;justify-content:center;padding:.5rem 1rem;transition:all .2s}.btn-primary{background-color:#1a56db;background-color:var(--primary);color:#fff;color:var(--white)}.btn-primary:hover{background-color:#1e40af;background-color:var(--primary-dark)}.btn-secondary{background-color:#6b7280;background-color:var(--secondary)}.btn-danger,.btn-secondary{color:#fff;color:var(--white)}.btn-danger{background-color:#ef4444;background-color:var(--danger)}.card{background-color:#fff;background-color:var(--white);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.form-group{margin-bottom:1rem}.form-label{display:block;font-weight:500;margin-bottom:.5rem}.form-input{border:1px solid #d1d5db;border-radius:.375rem;font-size:1rem;padding:.5rem .75rem;width:100%}.form-input:focus{border-color:#1a56db;border-color:var(--primary);box-shadow:0 0 0 3px #1a56db1a;outline:none}.table{border-collapse:collapse;width:100%}.table td,.table th{border-bottom:1px solid #e5e7eb;padding:.75rem 1rem;text-align:left}.table th{background-color:#f3f4f6;background-color:var(--light);font-weight:600}.table tbody tr:hover{background-color:#f9fafb}.badge{border-radius:9999px;display:inline-block;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.badge-success{background-color:#d1fae5;color:#065f46}.badge-warning{background-color:#fef3c7;color:#92400e}.badge-danger{background-color:#fee2e2;color:#991b1b}.badge-info{background-color:#dbeafe;color:#1e40af}
/*# sourceMappingURL=main.edd91598.css.map*/