@import"https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Montserrat:wght@300;400;600&display=swap";.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-w);background:var(--navy);display:flex;flex-direction:column;z-index:100;border-right:1px solid rgba(255,255,255,.06)}.sidebar-logo{display:flex;align-items:flex-start;flex-direction:column;gap:2px;padding:20px 20px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-logo-mark{width:32px;height:32px;background:var(--blue);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;color:#fff;flex-shrink:0}.sidebar-logo img{width:52px;height:52px;object-fit:contain;mix-blend-mode:screen;flex-shrink:0}.sidebar-logo-name{font-size:18px;font-weight:700;color:#fff;letter-spacing:.12em;font-family:Bebas Neue,Impact,sans-serif}.sidebar-logo-sub{font-size:10px;color:#fff6;letter-spacing:.04em;margin-top:1px}.sidebar-nav{flex:1;padding:12px 8px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.sidebar-link{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;font-size:13px;font-weight:400;color:#ffffff8c;transition:var(--transition)}.sidebar-link:hover{background:#ffffff12;color:#ffffffe6}.sidebar-link.active{background:#1b6fd840;color:#fff;font-weight:500}.sidebar-link-icon{width:16px;height:16px;flex-shrink:0;display:flex;align-items:center}.sidebar-link-icon svg{width:16px;height:16px}.sidebar-link.accent{color:#ffc850cc}.sidebar-link.accent:hover,.sidebar-link.accent.active{background:#ffc8501f;color:#ffc850}.sidebar-footer{padding:12px 8px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:8px}.sidebar-avatar{width:30px;height:30px;background:var(--blue);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#fff;flex-shrink:0}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{font-size:12px;font-weight:500;color:#ffffffd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-role{font-size:10px;color:#ffffff59;text-transform:capitalize}.sidebar-logout{width:28px;height:28px;background:transparent;border:none;border-radius:6px;color:#ffffff59;display:flex;align-items:center;justify-content:center;transition:var(--transition);flex-shrink:0}.sidebar-logout svg{width:14px;height:14px}.sidebar-logout:hover{background:#ffffff14;color:#fffc}.login-page{display:flex;height:100vh;width:100vw;overflow:hidden}.login-left{width:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;position:relative;border-right:1px solid #E8EEF5}.login-left-content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:0}.login-logo-img{width:320px;height:320px;object-fit:contain;margin-bottom:-60px}.login-left-name{font-size:52px;font-weight:400;color:#0d2b1a;letter-spacing:.18em;font-family:Bebas Neue,Impact,sans-serif;line-height:1;margin:0;padding:0}.login-left-tagline{font-size:11px;color:#8aa0b8;letter-spacing:.14em;text-transform:uppercase;font-family:Montserrat,sans-serif;font-weight:300;margin-top:6px}.login-left-version{position:absolute;bottom:24px;font-size:11px;color:#cbd2da;letter-spacing:.04em}.login-right{width:50%;background:#1a43280b;display:flex;align-items:center;justify-content:center;padding:48px}.login-form-container{width:100%;max-width:380px}.login-form-title{font-size:28px;font-weight:700;color:#0d2b1a;margin-bottom:6px}.login-form-sub{font-size:14px;color:#6b7685;margin-bottom:32px}.login-error{background:#fef2f2;border:1px solid #FECACA;color:#dc2626;padding:10px 14px;border-radius:8px;font-size:13px;margin-bottom:20px}.login-form{display:flex;flex-direction:column;gap:20px}.login-field{display:flex;flex-direction:column;gap:6px}.login-field label{font-size:13px;font-weight:600;color:#1e2d3d}.login-field .input{height:44px;font-size:14px;border:1.5px solid #E2E6EA;border-radius:8px;padding:0 14px;background:#fff;color:#0f1923;transition:border-color .2s}.login-field .input:focus{border-color:#3a8c2f;outline:none;box-shadow:0 0 0 3px #3a8c2f1a}.login-submit-btn{height:46px;background:#0d2b1a;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;margin-top:4px;letter-spacing:.02em}.login-submit-btn:hover:not(:disabled){background:#1a4d2e;transform:translateY(-1px);box-shadow:0 4px 12px #0d2b1a40}.login-submit-btn:disabled{opacity:.5;cursor:not-allowed}.login-footer{margin-top:32px;font-size:12px;color:#8aa0b8;text-align:center;font-style:italic}.dashboard-ai-card{padding:16px 20px;border-left:3px solid #F0C040;background:linear-gradient(to right,#fffdf0,#fff);margin-bottom:20px}.dashboard-ai-header{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--amber);margin-bottom:10px;letter-spacing:.04em;text-transform:uppercase}.dashboard-ai-body p{font-size:13px;color:var(--slate-800);line-height:1.6;margin-bottom:4px}.dashboard-ai-body p:empty{display:none}.dashboard-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.kpi-card{padding:20px}.kpi-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--slate-600);margin-bottom:8px}.kpi-value{font-size:28px;font-weight:600;color:var(--navy);letter-spacing:-.03em;line-height:1;margin-bottom:6px;font-family:var(--font-mono)}.kpi-sub{font-size:12px;color:var(--slate-600)}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dashboard-section{overflow:hidden}.section-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--gray-100)}.section-title{font-size:13px;font-weight:600;color:var(--navy)}.table-card{overflow:hidden}.table-loading{display:flex;align-items:center;justify-content:center;padding:48px}.reports-section{overflow:hidden}.reports-total{padding:12px 16px;font-size:13px;color:var(--slate-700);border-bottom:1px solid var(--gray-100);background:var(--gray-50)}.reports-total strong{color:var(--navy);font-size:15px}.spend-bar-wrap{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--slate-600);font-family:var(--font-mono)}.spend-bar{height:6px;background:var(--blue);border-radius:3px;min-width:2px;max-width:120px;transition:width .3s ease}.ai-page{display:flex;flex-direction:column;height:100%;overflow:hidden}.ai-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--gray-200);background:var(--white);flex-shrink:0}.ai-header-left{display:flex;align-items:center;gap:14px}.ai-avatar-large{width:40px;height:40px;background:linear-gradient(135deg,#1b6fd8,#0e7490);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff}.ai-avatar-large svg{width:20px;height:20px}.ai-messages{flex:1;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:16px}.ai-message{display:flex;gap:12px;max-width:800px}.ai-message-assistant{align-self:flex-start}.ai-message-user{align-self:flex-end;flex-direction:row-reverse}.ai-message-avatar{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ai-message-assistant .ai-message-avatar{background:linear-gradient(135deg,#1b6fd8,#0e7490);color:#fff}.ai-message-user .ai-message-avatar{background:var(--navy);color:#fff}.ai-message-avatar svg{width:14px;height:14px}.ai-message-body{max-width:680px}.ai-bubble{background:var(--white);border:1px solid var(--gray-200);border-radius:12px;padding:12px 16px;box-shadow:var(--shadow-sm)}.ai-bubble p{font-size:13px;line-height:1.65;color:var(--slate-800);margin-bottom:4px}.ai-bubble p:last-child{margin-bottom:0}.ai-bubble p:empty{display:none}.ai-message-user .ai-bubble{background:var(--navy);border-color:var(--navy)}.ai-message-user .ai-bubble p{color:#ffffffeb}.ai-bubble-error{border-color:var(--red-light);background:var(--red-light)}.ai-bubble-error p{color:var(--red)}.ai-message-meta{font-size:11px;color:var(--slate-400);margin-top:4px;padding:0 4px}.ai-message-user .ai-message-meta{text-align:right}.ai-thinking{display:flex;gap:5px;padding:14px 16px;align-items:center}.ai-thinking span{width:6px;height:6px;background:var(--slate-300);border-radius:50%;animation:bounce 1.2s infinite}.ai-thinking span:nth-child(2){animation-delay:.2s}.ai-thinking span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px);background:var(--blue)}}.ai-suggestions{padding:0 24px 16px;display:flex;flex-wrap:wrap;gap:8px}.ai-suggestion{background:var(--white);border:1px solid var(--gray-200);border-radius:100px;padding:7px 14px;font-size:12px;color:var(--slate-700);transition:var(--transition)}.ai-suggestion:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-light)}.ai-input-area{padding:12px 24px 16px;border-top:1px solid var(--gray-200);background:var(--white);flex-shrink:0}.ai-input-wrap{display:flex;gap:10px;align-items:flex-end}.ai-input{flex:1;padding:10px 14px;border:1px solid var(--gray-200);border-radius:10px;font-size:13px;font-family:var(--font-body);color:var(--slate-900);resize:none;outline:none;transition:var(--transition);max-height:120px;line-height:1.5}.ai-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1b6fd81a}.ai-input::placeholder{color:var(--slate-400)}.ai-input:disabled{background:var(--gray-50)}.ai-send{width:38px;height:38px;background:var(--blue);border:none;border-radius:8px;color:#fff;display:flex;align-items:center;justify-content:center;transition:var(--transition);flex-shrink:0}.ai-send svg{width:16px;height:16px}.ai-send:hover:not(:disabled){background:#1559b0}.ai-send:disabled{background:var(--slate-200);color:var(--slate-400);cursor:not-allowed}.ai-input-hint{font-size:11px;color:var(--slate-400);margin-top:6px;text-align:center}.contacts-panel{display:flex;flex-direction:column;gap:14px}.contacts-panel-header{display:flex;align-items:center;justify-content:space-between}.contacts-panel-count{font-size:12px;color:var(--slate-600);font-weight:500}.contact-form-card{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:16px}.contact-form-title{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:14px}.contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}.contact-form-field label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-600);margin-bottom:4px}.contact-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--gray-200)}.role-suggestions{position:absolute;top:100%;left:0;right:0;background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:50;max-height:180px;overflow-y:auto}.role-suggestion{padding:8px 12px;font-size:13px;cursor:pointer;color:var(--slate-800)}.role-suggestion:hover{background:var(--blue-light);color:var(--blue)}.contact-checkbox-label{display:flex!important;align-items:center;gap:8px;cursor:pointer;font-size:13px!important;font-weight:400!important;text-transform:none!important;letter-spacing:0!important;color:var(--slate-700)!important}.contacts-grid-panel{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.contact-card-panel{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:14px}.contact-card-top{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--gray-100)}.contact-avatar-sm{width:32px;height:32px;background:var(--navy);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}.contact-card-info{flex:1;min-width:0}.contact-card-name{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:2px}.contact-card-role{font-size:11px;color:var(--slate-500);display:flex;align-items:center}.contact-card-actions{display:flex;gap:2px;flex-shrink:0}.contact-card-details{display:flex;flex-direction:column;gap:4px}.contact-row{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--slate-700)}.contact-row span:first-child{color:var(--slate-400);font-size:11px;width:14px;flex-shrink:0}.contact-row a{color:var(--blue)}.contact-row a:hover{text-decoration:underline}.contact-note{font-size:11px;color:var(--slate-500);font-style:italic;margin-top:4px;padding-top:6px;border-top:1px solid var(--gray-100);line-height:1.4}.contacts-empty{font-size:13px;color:var(--slate-400);font-style:italic;padding:8px 0}.edit-form-card{background:var(--gray-50);border:1px solid var(--blue);border-radius:var(--radius-lg);padding:20px;margin-bottom:16px;box-shadow:0 0 0 3px #1b6fd814}.edit-form-title{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:16px}.edit-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}.edit-form-field{display:flex;flex-direction:column;gap:4px}.edit-form-field.full-width{grid-column:1 / -1}.edit-form-field label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-600)}.edit-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--gray-200)}.edit-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--slate-700);padding-top:6px}.site-profile-title-block{display:flex;flex-direction:column;gap:3px}.site-code-badge{background:var(--navy);color:#fff;font-family:var(--font-mono);font-size:11px;font-weight:600;padding:3px 8px;border-radius:4px;letter-spacing:.05em}.site-kpis{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.site-kpi{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:14px 20px;min-width:130px}.site-kpi-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--slate-600);margin-bottom:6px}.site-kpi-value{font-size:22px;font-weight:600;color:var(--navy);font-family:var(--font-mono);letter-spacing:-.02em}.site-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--gray-200);padding-bottom:0}.site-tab{padding:8px 16px;font-size:13px;font-weight:500;color:var(--slate-600);background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;transition:var(--transition);border-radius:0}.site-tab:hover{color:var(--navy)}.site-tab.active{color:var(--blue);border-bottom-color:var(--blue)}.site-sections{display:grid;grid-template-columns:1fr 1fr;gap:16px}.site-section{overflow:hidden}.site-section-header{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--gray-100)}.site-section-icon{font-size:14px;color:var(--blue)}.site-section-title{font-size:13px;font-weight:600;color:var(--navy)}.site-section-body{padding:16px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}.info-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-500);margin-bottom:3px}.info-value{font-size:13px;color:var(--slate-800)}.site-notes-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-500);margin-bottom:6px;margin-top:12px}.site-notes-text{font-size:13px;color:var(--slate-800);line-height:1.6;white-space:pre-wrap}.site-notes-block{margin-top:12px}.site-empty-field{font-size:12px;color:var(--slate-400);font-style:italic;padding:4px 0}.circuit-id-badge{background:var(--navy);color:#fff;font-family:var(--font-mono);font-size:13px;font-weight:600;padding:4px 10px;border-radius:4px;letter-spacing:.03em}.circuit-kpis{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.circuit-kpi{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:14px 20px;min-width:130px}.circuit-kpi-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--slate-600);margin-bottom:6px}.circuit-kpi-value{font-size:18px;font-weight:600;color:var(--navy);letter-spacing:-.02em}.lifecycle-progress-card{padding:16px 20px;margin-bottom:20px}.lifecycle-progress-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--slate-600);margin-bottom:16px}.lifecycle-stages{display:flex;align-items:flex-start;gap:0;overflow-x:auto;padding-bottom:4px}.lifecycle-stage{display:flex;flex-direction:column;align-items:center;position:relative;flex:1;min-width:80px}.lifecycle-dot{width:22px;height:22px;border-radius:50%;border:2px solid var(--gray-300);background:var(--white);display:flex;align-items:center;justify-content:center;z-index:1;margin-bottom:6px;flex-shrink:0}.lifecycle-dot-inner{width:8px;height:8px;border-radius:50%;background:var(--blue)}.lifecycle-stage.completed .lifecycle-dot{background:var(--blue);border-color:var(--blue);color:#fff}.lifecycle-stage.current .lifecycle-dot{border-color:var(--blue);box-shadow:0 0 0 3px #1b6fd826}.lifecycle-label{font-size:10px;font-weight:500;text-align:center;color:var(--slate-500);text-transform:capitalize;white-space:nowrap;line-height:1.3}.lifecycle-stage.completed .lifecycle-label{color:var(--blue)}.lifecycle-stage.current .lifecycle-label{color:var(--navy);font-weight:700}.lifecycle-line{position:absolute;top:11px;left:50%;width:100%;height:2px;background:var(--gray-200);z-index:0}.lifecycle-line.completed{background:var(--blue)}.circuit-sections{display:grid;grid-template-columns:1fr 1fr;gap:16px}.circuit-section{overflow:hidden}.circuit-section-header{padding:12px 16px;font-size:13px;font-weight:600;color:var(--navy);border-bottom:1px solid var(--gray-100);background:var(--gray-50)}.circuit-section-body{padding:16px}.event-timeline{display:flex;flex-direction:column;gap:0}.event-item{display:flex;gap:16px;position:relative;padding-bottom:20px}.event-item:last-child{padding-bottom:0}.event-dot{width:12px;height:12px;border-radius:50%;background:var(--blue);flex-shrink:0;margin-top:3px;z-index:1}.event-line{position:absolute;left:5px;top:15px;bottom:0;width:2px;background:var(--gray-200)}.event-content{flex:1}.event-type{font-size:13px;font-weight:600;color:var(--navy);text-transform:capitalize;margin-bottom:4px}.event-transition{display:flex;align-items:center;margin-bottom:4px}.event-notes{font-size:13px;color:var(--slate-700);margin-bottom:4px;line-height:1.5}.event-ref{font-size:12px;color:var(--blue);margin-bottom:4px}.event-meta{font-size:11px;color:var(--slate-400)}.provider-name-badge{font-size:18px;font-weight:700;color:var(--navy);letter-spacing:-.02em}.provider-kpis{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.provider-kpi{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:14px 20px;min-width:130px}.provider-kpi-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--slate-600);margin-bottom:6px}.provider-kpi-value{font-size:22px;font-weight:600;color:var(--navy);font-family:var(--font-mono);letter-spacing:-.02em}.provider-sections{display:grid;grid-template-columns:1fr 1fr;gap:16px}.provider-section{overflow:hidden}.provider-section-header{padding:12px 16px;font-size:13px;font-weight:600;color:var(--navy);border-bottom:1px solid var(--gray-100);background:var(--gray-50)}.provider-section-body{padding:16px}.portal-links{display:flex;flex-direction:column;gap:8px}.portal-link{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:13px;color:var(--blue);transition:var(--transition);text-decoration:none}.portal-link:hover{background:var(--blue-light);border-color:var(--blue)}.portal-link-icon{display:flex;align-items:center;color:var(--blue)}.portal-link-arrow{margin-left:auto;font-size:12px;opacity:.6}.contacts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.contact-card{padding:16px}.contact-card-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--gray-100)}.contact-avatar{width:36px;height:36px;background:var(--navy);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;flex-shrink:0}.contact-name{font-size:14px;font-weight:600;color:var(--navy);margin-bottom:4px}.contact-details{display:flex;flex-direction:column;gap:6px}.contact-detail{display:flex;gap:8px;align-items:baseline}.contact-detail-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-400);min-width:52px;flex-shrink:0}.contact-detail-value{font-size:12px;color:var(--slate-800)}.contact-detail-value.link{color:var(--blue)}.contact-detail-value.link:hover{text-decoration:underline}.contact-note{font-size:11px;color:var(--slate-500);font-style:italic;margin-top:6px;padding-top:6px;border-top:1px solid var(--gray-100);line-height:1.4}.critical-alert-bar{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.critical-alert{display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:var(--radius-md);font-size:13px}.critical-alert.critical{background:var(--red-light);color:var(--red);border:1px solid rgba(185,28,28,.2)}.critical-alert.warning{background:var(--amber-light);color:var(--amber);border:1px solid rgba(180,83,9,.2)}.critical-alert-icon{font-size:14px}.critical-filters{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.critical-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(480px,1fr));gap:16px}.critical-card{overflow:hidden;transition:var(--transition)}.critical-card.risk-critical{border-left:3px solid var(--red)}.critical-card.risk-warning{border-left:3px solid var(--amber)}.critical-card.risk-ok{border-left:3px solid var(--green)}.critical-card-header{padding:16px 16px 12px;cursor:pointer;border-bottom:1px solid var(--gray-100)}.critical-card-header:hover{background:var(--gray-50)}.critical-card-title-row{display:flex;align-items:center;gap:10px;margin-bottom:4px;flex-wrap:wrap}.critical-site-code{background:var(--navy);color:#fff;font-family:var(--font-mono);font-size:10px;font-weight:600;padding:2px 6px;border-radius:3px;letter-spacing:.04em;flex-shrink:0}.critical-site-name{font-size:15px;font-weight:600;color:var(--navy)}.critical-site-address{font-size:12px;color:var(--slate-500)}.risk-badge{padding:2px 8px;border-radius:100px;font-size:11px;font-weight:600;flex-shrink:0}.critical-kpi-row{display:flex;padding:12px 16px;gap:0;border-bottom:1px solid var(--gray-100)}.critical-kpi{flex:1;padding:0 8px;border-right:1px solid var(--gray-100)}.critical-kpi:first-child{padding-left:0}.critical-kpi:last-child{border-right:none}.critical-kpi-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-500);margin-bottom:3px;white-space:nowrap}.critical-kpi-value{font-size:16px;font-weight:600;color:var(--navy);font-family:var(--font-mono);letter-spacing:-.02em}.critical-contract-alerts{padding:10px 16px;background:var(--red-light);border-bottom:1px solid rgba(185,28,28,.1);display:flex;flex-direction:column;gap:6px}.critical-contract-row{display:flex;align-items:center;gap:10px}.critical-contract-row.urgency-warning{background:transparent}.critical-expand-btn{width:100%;padding:8px 16px;background:transparent;border:none;border-top:1px solid var(--gray-100);text-align:left;font-size:11px;font-weight:500;color:var(--slate-600);cursor:pointer;transition:var(--transition)}.critical-expand-btn:hover{background:var(--gray-50);color:var(--navy)}.critical-circuits-list{padding:8px 16px 4px;background:var(--gray-50);border-top:1px solid var(--gray-100);display:flex;flex-direction:column;gap:6px}.critical-circuit-row{display:flex;align-items:center;gap:10px;font-size:12px;padding:4px 0;border-bottom:1px solid var(--gray-100)}.critical-circuit-row:last-child{border-bottom:none}.critical-card-footer{padding:8px 12px;border-top:1px solid var(--gray-100);display:flex;justify-content:flex-end}.invoice-roi-banner{background:var(--navy);border-radius:var(--radius-lg);padding:20px 24px;margin-bottom:24px;color:#fff}.invoice-roi-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#ffffff80;margin-bottom:14px}.invoice-roi-kpis{display:flex;flex-wrap:wrap}.invoice-roi-kpi{flex:1;min-width:120px;padding:0 20px;border-right:1px solid rgba(255,255,255,.1)}.invoice-roi-kpi:first-child{padding-left:0}.invoice-roi-kpi:last-child{border-right:none}.invoice-roi-label{font-size:11px;color:#ffffff80;margin-bottom:4px;font-weight:500}.invoice-roi-value{font-size:20px;font-weight:500;font-family:var(--font-sans);letter-spacing:-.01em;color:#fffffff2}.invoice-kpi-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--slate-600);margin-bottom:6px}.invoice-kpi-value{font-size:20px;font-weight:600;color:var(--navy);font-family:var(--font-sans);letter-spacing:-.02em}.invoice-form-card{padding:20px;margin-bottom:20px;border-color:var(--blue);box-shadow:0 0 0 3px #1b6fd814}.invoice-form-title{font-size:14px;font-weight:600;color:var(--navy);margin-bottom:16px}.invoice-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}.invoice-form-field{display:flex;flex-direction:column;gap:4px}.invoice-form-field label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-600)}.invoice-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--gray-200)}.invoice-number-badge{background:var(--navy);color:#fff;font-family:var(--font-mono);font-size:12px;font-weight:600;padding:4px 10px;border-radius:4px;letter-spacing:.03em}.invoice-detail-kpis{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.invoice-detail-kpi{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:14px 20px;min-width:130px}.variance-alert{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--red-light);border:1px solid rgba(185,28,28,.2);border-radius:var(--radius-md);margin-bottom:16px;font-size:13px;color:var(--red)}.variance-alert strong{font-weight:700}.dispute-form-card{padding:20px;border-color:var(--red)!important;box-shadow:0 0 0 3px #b91c1c14!important}.extract-success-banner{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--green-light);border:1px solid rgba(21,128,61,.2);border-radius:var(--radius-md);margin-bottom:16px;font-size:13px;color:var(--green)}.extract-error-banner{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--red-light);border:1px solid rgba(185,28,28,.2);border-radius:var(--radius-md);margin-bottom:16px;font-size:13px;color:var(--red)}.extracting-banner{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--blue-light);border:1px solid rgba(27,111,216,.2);border-radius:var(--radius-md);margin-bottom:16px;font-size:13px;color:var(--blue)}.tab-count{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:var(--blue-light);color:var(--blue);border-radius:50%;font-size:10px;font-weight:700;margin-left:6px;font-family:var(--font-mono)}.audit-roi-banner{background:var(--navy);border-radius:var(--radius-lg);padding:20px 24px;margin-bottom:24px;color:#fff}.audit-roi-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#ffffff80;margin-bottom:14px}.audit-roi-kpis{display:flex;gap:0;flex-wrap:wrap}.audit-roi-kpi{flex:1;min-width:120px;padding:0 20px;border-right:1px solid rgba(255,255,255,.1)}.audit-roi-kpi:first-child{padding-left:0}.audit-roi-kpi:last-child{border-right:none}.audit-roi-label{font-size:11px;color:#ffffff80;margin-bottom:4px;font-weight:500}.audit-roi-value{font-size:20px;font-weight:500;font-family:var(--font-sans);letter-spacing:-.01em;color:#fffffff2}.audit-roi-value.highlight{color:#34d399;font-size:24px;font-weight:600}.audit-campaigns-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:16px}.audit-campaign-card{padding:0;overflow:hidden}.audit-campaign-header{display:flex;align-items:flex-start;justify-content:space-between;padding:16px 16px 12px;border-bottom:1px solid var(--gray-100)}.audit-campaign-name{font-size:15px;font-weight:600;color:var(--navy);margin-bottom:6px}.audit-campaign-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.audit-campaign-desc{padding:10px 16px;font-size:12px;color:var(--slate-500);border-bottom:1px solid var(--gray-100);font-style:italic}.audit-deadline{font-size:12px;font-weight:600;color:var(--slate-500);white-space:nowrap;padding:4px 8px;border-radius:var(--radius-md);background:var(--gray-100)}.audit-deadline.urgent{color:var(--red);background:var(--red-light)}.audit-deadline.warning{color:var(--amber);background:var(--amber-light)}.audit-progress{padding:12px 16px;border-bottom:1px solid var(--gray-100)}.audit-progress-bar{height:6px;background:var(--gray-200);border-radius:100px;overflow:hidden}.audit-progress-fill{height:100%;background:var(--blue);border-radius:100px;transition:width .5s ease}.audit-progress-label{font-size:11px;color:var(--slate-500);margin-top:6px}.audit-decisions{display:flex;gap:0;padding:10px 16px;border-bottom:1px solid var(--gray-100);flex-wrap:wrap;gap:8px}.audit-decision{font-size:11px;font-weight:600;padding:4px 8px;border-radius:var(--radius-md);display:flex;align-items:center;gap:4px}.audit-decision span{font-size:14px;font-family:var(--font-mono)}.audit-decision.keep{background:var(--green-light);color:var(--green)}.audit-decision.decommission{background:var(--red-light);color:var(--red)}.audit-decision.downgrade{background:var(--amber-light);color:var(--amber)}.audit-decision.unknown{background:var(--gray-100);color:var(--slate-600)}.audit-decision.pending{background:var(--gray-50);color:var(--slate-400)}.audit-savings-preview{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--green-light);border-bottom:1px solid rgba(21,128,61,.1);font-size:12px;color:var(--green)}.audit-savings-amount{font-weight:700;font-family:var(--font-mono)}.audit-savings-chip{background:var(--green-light);color:var(--green);font-size:12px;font-weight:600;padding:4px 10px;border-radius:100px;font-family:var(--font-mono)}.audit-campaign-actions{padding:12px 16px;display:flex;gap:8px}.audit-detail-progress{padding:16px 20px;margin-bottom:16px}.audit-progress-header{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.audit-progress-pct{font-size:18px;font-weight:700;color:var(--navy);font-family:var(--font-mono)}.audit-reviews-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(480px,1fr));gap:12px}.audit-review-card{overflow:hidden;padding:0;transition:var(--transition)}.audit-review-card.decision-keep{border-left:3px solid var(--green)}.audit-review-card.decision-decommission,.audit-review-card.decision-already_requested{border-left:3px solid var(--red)}.audit-review-card.decision-downgrade{border-left:3px solid var(--amber)}.audit-review-card.decision-unknown{border-left:3px solid var(--slate-300)}.audit-review-card.decision-pending{border-left:3px solid var(--gray-200)}.audit-review-header{cursor:pointer;position:relative}.audit-review-header:hover{background:var(--gray-50)}.audit-review-status-bar{display:flex;align-items:center;gap:8px;padding:6px 12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.audit-review-status-icon{font-size:12px}.audit-review-body{padding:12px 16px 10px}.audit-review-circuit{display:flex;align-items:center;gap:8px;margin-bottom:4px;font-size:14px}.audit-review-site{font-size:13px;color:var(--navy);font-weight:500;margin-bottom:2px}.audit-review-provider{font-size:11px;color:var(--slate-500);margin-bottom:10px}.audit-review-kpis{display:flex;gap:16px;flex-wrap:wrap}.audit-kpi-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-500);margin-bottom:2px}.audit-kpi-value{font-size:14px;font-weight:600;color:var(--navy);font-family:var(--font-mono)}.audit-review-note{font-size:11px;color:var(--slate-500);font-style:italic;margin-top:8px;padding-top:8px;border-top:1px solid var(--gray-100)}.audit-expand-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:10px;color:var(--slate-400)}.audit-review-form{padding:16px;background:var(--gray-50);border-top:1px solid var(--gray-200)}.audit-decision-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.audit-decision-btn{padding:8px 14px;font-size:12px;font-weight:600;border-radius:var(--radius-md);border:2px solid transparent;cursor:pointer;transition:var(--transition);background:var(--white)}.audit-decision-btn.color-green{border-color:var(--green);color:var(--green)}.audit-decision-btn.color-red{border-color:var(--red);color:var(--red)}.audit-decision-btn.color-amber{border-color:var(--amber);color:var(--amber)}.audit-decision-btn.color-blue{border-color:var(--blue);color:var(--blue)}.audit-decision-btn.color-gray{border-color:var(--slate-400);color:var(--slate-600)}.audit-decision-btn.active.color-green{background:var(--green);color:#fff}.audit-decision-btn.active.color-red{background:var(--red);color:#fff}.audit-decision-btn.active.color-amber{background:var(--amber);color:#fff}.audit-decision-btn.active.color-blue{background:var(--blue);color:#fff}.audit-decision-btn.active.color-gray{background:var(--slate-400);color:#fff}.audit-decision-form{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:16px}.audit-submit-btn{margin-top:8px}.audit-overcharge-section{background:var(--red-light);border:1px solid rgba(185,28,28,.15);border-radius:var(--radius-md);padding:14px;margin-bottom:12px}.audit-overcharge-title{font-size:12px;font-weight:700;color:var(--red);margin-bottom:12px;text-transform:uppercase;letter-spacing:.04em}.overcharge-preview{background:var(--white);border:1px solid rgba(185,28,28,.2);border-radius:var(--radius-md);padding:12px;margin-top:12px}.overcharge-preview-row{display:flex;justify-content:space-between;font-size:12px;color:var(--slate-600);margin-bottom:6px}.overcharge-preview-total{display:flex;justify-content:space-between;font-size:14px;font-weight:700;color:var(--red);padding-top:8px;border-top:1px solid rgba(185,28,28,.2);margin-top:4px;font-family:var(--font-mono)}.lastmile-form{padding:20px 24px;margin-bottom:20px}.lastmile-form-title{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:16px}.lastmile-form-grid{display:grid;grid-template-columns:2fr 1.5fr .6fr .8fr 1fr;gap:12px;align-items:end}.lastmile-form-field{display:flex;flex-direction:column;gap:4px}.lastmile-form-field label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-600)}.lastmile-error{margin-top:12px;padding:10px 14px;background:var(--red-light);color:var(--red);border-radius:var(--radius-md);font-size:13px}.lastmile-loading{display:flex;align-items:center;gap:16px;padding:20px 24px;background:var(--blue-light);border:1px solid rgba(27,111,216,.15);border-radius:var(--radius-lg);margin-bottom:20px}.lastmile-result-header{display:flex;align-items:center;justify-content:space-between;padding:12px 0;margin-bottom:16px;border-bottom:1px solid var(--gray-200);flex-wrap:wrap;gap:8px}.lastmile-matched-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-500);margin-right:8px}.lastmile-matched-value{font-size:14px;font-weight:500;color:var(--navy)}.lastmile-coord{font-size:11px;font-family:var(--font-mono);color:var(--slate-400)}.lastmile-summary-chips{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.lastmile-chip{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:var(--radius-lg);font-size:12px;font-weight:600}.lastmile-chip-count{font-size:22px;font-weight:700;font-family:var(--font-sans);line-height:1}.lastmile-chip.total{background:var(--navy);color:#fff}.lastmile-chip.fiber{background:var(--green-light);color:var(--green)}.lastmile-chip.cable{background:var(--amber-light);color:var(--amber)}.lastmile-chip.wireless{background:var(--blue-light);color:var(--blue)}.lastmile-chip.total .lastmile-chip-count{color:#fff}.lastmile-footer{margin-top:16px;font-size:11px;color:var(--slate-400);text-align:right}.lastmile-footer a{color:var(--blue)}.lastmile-footer a:hover{text-decoration:underline}.requests-banner{background:var(--navy);border-radius:var(--radius-lg);padding:20px 24px;margin-bottom:24px;color:#fff}.requests-banner-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#ffffff80;margin-bottom:14px}.requests-banner-kpis{display:flex;gap:0;flex-wrap:wrap}.requests-banner-kpi{flex:1;min-width:100px;padding:0 20px;border-right:1px solid rgba(255,255,255,.1)}.requests-banner-kpi:first-child{padding-left:0}.requests-banner-kpi:last-child{border-right:none}.requests-banner-label{font-size:11px;color:#ffffff80;margin-bottom:4px;font-weight:500}.requests-banner-value{font-size:22px;font-weight:600;font-family:var(--font-sans);color:#fff}.request-type-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--blue-light);color:var(--blue);font-size:11px;font-weight:700}.request-id-badge{background:var(--navy);color:#fff;font-family:var(--font-mono);font-size:12px;font-weight:600;padding:4px 10px;border-radius:4px}.request-progress{padding:20px 24px;margin-bottom:16px;overflow-x:auto}.request-steps{display:flex;align-items:center;gap:0;min-width:500px}.request-step{display:flex;flex-direction:column;align-items:center;position:relative;flex:1}.request-step-dot{width:28px;height:28px;border-radius:50%;background:var(--gray-200);color:var(--slate-400);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;z-index:1;transition:var(--transition)}.request-step.done .request-step-dot{background:var(--green);color:#fff}.request-step.current .request-step-dot{background:var(--blue);color:#fff;box-shadow:0 0 0 4px var(--blue-light)}.request-step-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-400);margin-top:6px;text-align:center;white-space:nowrap}.request-step.done .request-step-label,.request-step.current .request-step-label{color:var(--navy)}.request-step-line{position:absolute;top:14px;left:50%;width:100%;height:2px;background:var(--gray-200);z-index:0}.request-step-line.done{background:var(--green)}.request-detail-grid{display:grid;grid-template-columns:1fr 340px;gap:16px;align-items:start}.request-comments{display:flex;flex-direction:column;gap:10px;margin-bottom:16px;max-height:400px;overflow-y:auto}.request-comment{background:var(--gray-50);border-radius:var(--radius-md);padding:10px 12px;border-left:3px solid var(--gray-200)}.request-comment-header{display:flex;justify-content:space-between;margin-bottom:4px}.request-comment-author{font-size:12px;font-weight:600;color:var(--navy)}.request-comment-date{font-size:11px;color:var(--slate-400);font-family:var(--font-mono)}.request-comment-body{font-size:13px;color:var(--slate-700);line-height:1.4}.capitalize{text-transform:capitalize}.util-banner{background:var(--navy);border-radius:var(--radius-lg);padding:20px 24px;margin-bottom:24px;color:#fff}.util-banner-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#ffffff80;margin-bottom:14px}.util-banner-kpis{display:flex;flex-wrap:wrap}.util-banner-kpi{flex:1;min-width:120px;padding:0 20px;border-right:1px solid rgba(255,255,255,.1)}.util-banner-kpi:first-child{padding-left:0}.util-banner-kpi:last-child{border-right:none}.util-banner-label{font-size:11px;color:#ffffff80;margin-bottom:4px}.util-banner-value{font-size:20px;font-weight:600;font-family:var(--font-sans);color:#fff}.util-empty-state{padding:48px;text-align:center;display:flex;flex-direction:column;align-items:center}.util-empty-icon{font-size:48px;margin-bottom:16px}.util-empty-state h3{color:var(--navy);margin-bottom:8px}.util-empty-state p{color:var(--slate-500);font-size:14px}.util-instructions{margin-top:24px;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:20px 24px;text-align:left;max-width:480px;width:100%}.util-instructions-title{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:10px}.util-instructions ol{padding-left:20px;font-size:13px;color:var(--slate-600);line-height:1.8}.util-instructions-note{margin-top:12px;font-size:12px;color:var(--slate-400);font-style:italic}.util-col-mapping{display:flex;flex-direction:column;gap:8px}.util-col-row{display:flex;align-items:center;gap:12px}.util-col-label{width:200px;font-size:12px;font-weight:600;color:var(--slate-700);flex-shrink:0}.util-circuit-mapping{display:flex;flex-direction:column;gap:8px}.util-circuit-row{display:flex;align-items:center;gap:10px}.util-circuit-iface{min-width:200px;font-size:12px;color:var(--navy);background:var(--gray-50);padding:6px 10px;border-radius:var(--radius-md);border:1px solid var(--gray-200)}.util-import-success{padding:40px;text-align:center;margin-bottom:24px}.util-success-icon{width:56px;height:56px;background:var(--green);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;margin:0 auto 16px}.util-success-title{font-size:20px;font-weight:700;color:var(--navy);margin-bottom:16px}.util-success-stats{display:flex;gap:32px;justify-content:center;margin-bottom:12px}.util-success-stat{display:flex;flex-direction:column;align-items:center;gap:4px}.util-success-stat span:first-child{font-size:28px;font-weight:700;color:var(--navy);font-family:var(--font-sans)}.util-success-stat span:last-child{font-size:11px;color:var(--slate-500);text-transform:uppercase;letter-spacing:.04em}.util-success-range{font-size:12px;color:var(--slate-400)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--navy: #0C2340;--navy-mid: #1A3A5C;--navy-light: #E8EEF5;--blue: #1B6FD8;--blue-light: #EBF2FC;--blue-mid: #4A90D9;--slate-900: #0F1923;--slate-800: #1E2D3D;--slate-700: #2D4159;--slate-600: #4A6080;--slate-400: #8AA0B8;--slate-200: #D0DAE6;--slate-100: #EBF0F6;--slate-50: #F5F8FB;--white: #FFFFFF;--gray-50: #F8F9FA;--gray-100: #F0F2F5;--gray-200: #E2E6EA;--gray-300: #CBD2DA;--gray-500: #6B7685;--green: #0F7B4E;--green-light: #E6F5EF;--amber: #B45309;--amber-light: #FEF3C7;--red: #B91C1C;--red-light: #FEE2E2;--teal: #0E7490;--teal-light: #E0F2FE;--font-body: "DM Sans", sans-serif;--font-mono: "DM Mono", monospace;--sidebar-w: 224px;--topbar-h: 56px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 3px rgba(12,35,64,.06), 0 1px 2px rgba(12,35,64,.04);--shadow-md: 0 4px 12px rgba(12,35,64,.08), 0 2px 4px rgba(12,35,64,.04);--shadow-lg: 0 8px 24px rgba(12,35,64,.1), 0 4px 8px rgba(12,35,64,.06);--transition: all .15s ease}html,body,#root{height:100%;font-family:var(--font-body);font-size:14px;color:var(--slate-900);background:var(--gray-50);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:var(--font-body)}input,textarea,select{font-family:var(--font-body)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--slate-200);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--slate-400)}.mono{font-family:var(--font-mono)}.text-muted{color:var(--slate-600)}.text-sm{font-size:12px}.text-xs{font-size:11px}.font-medium{font-weight:500}.font-semibold{font-weight:600}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:100px;font-size:11px;font-weight:500;letter-spacing:.02em}.badge-green{background:var(--green-light);color:var(--green)}.badge-amber{background:var(--amber-light);color:var(--amber)}.badge-red{background:var(--red-light);color:var(--red)}.badge-blue{background:var(--blue-light);color:var(--blue)}.badge-gray{background:var(--gray-100);color:var(--gray-500)}.badge-teal{background:var(--teal-light);color:var(--teal)}.card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.tea-table{width:100%;border-collapse:collapse;font-size:13px}.tea-table th{text-align:left;padding:10px 16px;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--slate-600);background:var(--gray-50);border-bottom:1px solid var(--gray-200)}.tea-table td{padding:12px 16px;border-bottom:1px solid var(--gray-100);color:var(--slate-800)}.tea-table tr:last-child td{border-bottom:none}.tea-table tr:hover td{background:var(--slate-50)}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius-md);font-size:13px;font-weight:500;border:none;transition:var(--transition);white-space:nowrap}.btn-primary{background:var(--blue);color:var(--white)}.btn-primary:hover{background:#1559b0}.btn-secondary{background:var(--white);color:var(--slate-800);border:1px solid var(--gray-200)}.btn-secondary:hover{background:var(--gray-50)}.btn-ghost{background:transparent;color:var(--slate-600)}.btn-ghost:hover{background:var(--gray-100)}.input{width:100%;padding:9px 12px;border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:13px;color:var(--slate-900);background:var(--white);transition:var(--transition);outline:none}.input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1b6fd81f}.input::placeholder{color:var(--slate-400)}.app-layout{display:flex;height:100vh;overflow:hidden}.app-content{flex:1;display:flex;flex-direction:column;overflow:hidden;margin-left:var(--sidebar-w)}.page-body{flex:1;overflow-y:auto;padding:24px}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-title{font-size:20px;font-weight:600;color:var(--navy);letter-spacing:-.02em}.page-subtitle{font-size:13px;color:var(--slate-600);margin-top:2px}.spinner{width:20px;height:20px;border:2px solid var(--slate-200);border-top-color:var(--blue);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:48px 24px;color:var(--slate-600)}.empty-state h3{font-size:15px;font-weight:500;color:var(--slate-800);margin-bottom:6px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .2s ease forwards}@media(max-width:768px){.app-layout{flex-direction:column}.sidebar{width:100%!important;height:auto;position:fixed;bottom:0;left:0;right:0;top:auto;z-index:1000;flex-direction:row;padding:0;overflow-x:auto;overflow-y:hidden;border-top:1px solid rgba(255,255,255,.1);box-shadow:0 -4px 20px #0000004d}.sidebar-logo{display:none!important}.sidebar-nav{display:flex;flex-direction:row;width:100%;padding:0;gap:0;overflow-x:auto}.nav-item{flex-direction:column;align-items:center;justify-content:center;padding:8px 12px;gap:2px;border-left:none!important;border-top:3px solid transparent;font-size:9px;min-width:60px;white-space:nowrap}.nav-item.active{border-top-color:var(--blue)!important;border-left-color:transparent!important}.nav-item svg{width:20px;height:20px}.sidebar-footer{display:none}.main-content{margin-left:0!important;padding-bottom:80px}.page-header{flex-direction:column;align-items:flex-start;gap:12px}.page-header .btn{width:100%;justify-content:center}.tea-table thead{display:none}.tea-table,.tea-table tbody,.tea-table tr,.tea-table td{display:block;width:100%}.tea-table tr{border:1px solid var(--gray-200);border-radius:var(--radius-md);margin-bottom:12px;padding:12px;background:#fff}.tea-table td{padding:4px 0;border:none;font-size:13px}.tea-table td:before{content:attr(data-label);font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-400);display:block;margin-bottom:2px}.dashboard-grid,.kpi-grid{grid-template-columns:1fr 1fr!important}.requests-banner-kpis,.util-banner-kpis,.audit-roi-kpis,.invoice-roi-kpis{flex-wrap:wrap;gap:16px}.requests-banner-kpi,.util-banner-kpi{min-width:120px;border-right:none!important;padding:0!important}.invoice-form-grid{grid-template-columns:1fr!important}.invoice-form-field{grid-column:1!important}.request-detail-grid{grid-template-columns:1fr!important}.login-page{flex-direction:column}.login-left{width:100%!important;padding:32px 24px 24px!important;min-height:auto}.login-logo-img{width:160px!important;height:160px!important}.login-left-name{font-size:36px!important}.login-left-version{display:none}.login-right{width:100%!important;padding:24px!important}.site-tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}.site-tab{white-space:nowrap;flex-shrink:0}.info-grid{grid-template-columns:1fr!important}}@media(min-width:769px)and (max-width:1024px){.sidebar{width:200px!important}.main-content{margin-left:200px!important}.nav-item{font-size:11px;padding:10px 14px}.invoice-form-grid,.dashboard-grid{grid-template-columns:1fr 1fr!important}}:root{--navy: #0D2B1A;--navy-mid: #1A4D2E;--navy-light: #E8F5EE;--blue: #3A8C2F;--blue-light: #EBF7E8;--blue-mid: #5DB832;--green: #2D7A1F;--green-light: #E6F5E0;--teal: #1A7A4E;--teal-light: #E0F5EC}.sidebar{background:linear-gradient(180deg,#0d2b1a,#0a2015)}.sidebar-logo-img{display:block!important}.sidebar-logo-text{display:none!important}.nav-item.active{background:#5db83226!important;color:#7bc62d!important;border-left-color:#7bc62d!important}.nav-item.active svg{color:#7bc62d!important}.btn-primary{background:#3a8c2f!important;border-color:#3a8c2f!important}.btn-primary:hover{background:#2d7a1f!important;border-color:#2d7a1f!important}.audit-roi-banner,.invoice-roi-banner,.requests-banner{background:linear-gradient(135deg,#0d2b1a,#1a4d2e)!important}.sidebar-logo{background:#0000004d!important;border-bottom:1px solid rgba(93,184,50,.3)!important;padding:14px 16px!important;gap:12px!important}.sidebar-logo img{width:48px!important;height:48px!important;object-fit:contain!important;mix-blend-mode:normal!important;border-radius:8px!important;background:#0a1a0d!important;padding:2px!important;border:1px solid rgba(93,184,50,.4)!important;box-shadow:0 0 10px #5db83233!important}.sidebar-logo-name{color:#7bc62d!important;font-size:16px!important;font-weight:700!important;letter-spacing:.08em!important}.sidebar-logo-sub{color:#7dc62d80!important}
