 .server-loading{position:fixed;z-index:1000;top:16px;right:18px;display:flex;align-items:center;gap:9px;padding:9px 13px;border:1px solid #cbd9e8;border-radius:7px;background:rgba(255,255,255,.96);color:#29445f;box-shadow:0 5px 18px rgba(15,23,42,.14);font-size:12px;font-weight:700;opacity:0;visibility:hidden;transform:translateY(-5px);transition:opacity .16s ease,transform .16s ease,visibility .16s}.server-loading.visible{opacity:1;visibility:visible;transform:translateY(0)}.server-loading-spinner{width:17px;height:17px;border:2px solid #d7e5ef;border-top-color:#14816f;border-right-color:#2878b5;border-radius:50%;animation:server-loading-spin .7s linear infinite}@keyframes server-loading-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.server-loading{transition:none}.server-loading-spinner{animation-duration:1.8s}}
 .sbu-chart-filters [hidden]{display:none!important}
 .sbu-performance{margin-top:20px;padding:20px 22px}.sbu-chart-heading,.sbu-drill-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.sbu-chart-heading h2{font-size:17px;margin-top:4px}.sbu-chart-filters{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;margin:18px 0 8px}.sbu-chart-filters>label{display:grid;gap:5px;color:#53677e;font-size:11px;font-weight:700}.sbu-chart-filters select{height:36px;min-width:110px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--text);padding:0 10px}.sbu-metric-toggle{display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:6px;background:#f5f8fc}.sbu-metric-toggle button{border:0;border-radius:4px;padding:7px 12px;background:transparent;color:#5d7187;cursor:pointer;font-size:12px;font-weight:700}.sbu-metric-toggle button[aria-pressed=true]{background:#fff;color:#185b87;box-shadow:0 1px 3px rgba(15,23,42,.12)}.sbu-filter{position:relative}.sbu-filter summary{height:36px;min-width:170px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 10px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--text);font-size:12px;font-weight:700;cursor:pointer;list-style:none}.sbu-filter summary::-webkit-details-marker{display:none}.sbu-filter summary span{color:#64748b;font-size:11px;font-weight:500}.sbu-options{position:absolute;z-index:8;top:42px;left:0;width:230px;padding:9px;background:#fff;border:1px solid var(--line);border-radius:5px;box-shadow:0 8px 22px rgba(15,23,42,.12)}.sbu-option{display:flex;align-items:center;gap:9px;padding:7px 5px;color:#344a61;font-size:12px;cursor:pointer}.sbu-option input{accent-color:#16816d}.sbu-period-note,.sbu-detail-note{margin:8px 0;color:#64748b;font-size:11px;line-height:1.5}.sbu-chart-wrap{position:relative;height:360px;margin-top:8px}.sbu-chart-hint{margin-top:4px;color:#7a8a9c;font-size:11px}.sbu-drilldown{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.sbu-drill-heading h3{font-size:14px;margin-top:4px}.sbu-detail-scroll{max-height:360px;overflow:auto;border:1px solid var(--line);border-radius:5px}.sbu-detail-scroll table{width:100%;border-collapse:collapse;font-size:12px}.sbu-detail-scroll th,.sbu-detail-scroll td{padding:9px 10px;text-align:left;border-bottom:1px solid #e8edf3;white-space:nowrap}.sbu-detail-scroll th{position:sticky;top:0;background:#f4f7fa;color:#43596f;font-size:10px;text-transform:uppercase}.sbu-detail-scroll td:last-child{text-align:right;font-variant-numeric:tabular-nums}.sbu-detail-scroll tr:last-child td{border-bottom:0}.sbu-performance .icon-button{width:30px;height:30px;border:1px solid var(--line);border-radius:4px;background:#fff;color:#53677e;font-size:18px;cursor:pointer}@media(max-width:700px){.sbu-performance{padding:16px}.sbu-chart-heading{align-items:flex-start;flex-direction:column}.sbu-chart-filters{align-items:stretch}.sbu-chart-filters>label,.sbu-chart-filters select{width:100%}.sbu-filter{width:100%}.sbu-filter summary{width:100%}.sbu-chart-wrap{height:300px}}
 .budget-status{text-align:center;font-weight:700}.budget-status.avail{color:#067647}.budget-status.hold{color:#b42318}
 .remark-entry{padding:3px 0;white-space:normal;min-width:190px}.remark-entry time{font-weight:700;color:#365b7f;white-space:nowrap}.remark-entry span{color:#35475a;overflow-wrap:anywhere}
 .status.blue{background:var(--blue-soft);color:#1d4ed8}.gauge-progress.blue{stroke:#2563eb}.gauge-needle.blue{stroke:#2563eb}.heading-icon.blue{background:var(--blue-soft);color:#2563eb}
 .bar-meta span{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-meta b{flex-shrink:0}
 .main-content .customer-charts{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:760px){.main-content .customer-charts{grid-template-columns:1fr}}
 .customer-charts{grid-template-columns:repeat(3,minmax(0,1fr));background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow);padding:18px}.customer-charts .customer-chart{border:0;border-radius:0;box-shadow:none;padding:0}.customer-charts .customer-chart+.customer-chart{border-left:1px solid #e5ebf3;padding-left:18px}@media(max-width:900px){.customer-charts{grid-template-columns:1fr 1fr}.customer-charts .customer-chart:nth-child(3){grid-column:span 2;border-left:0;padding-left:0;border-top:1px solid #e5ebf3;padding-top:18px}}@media(max-width:760px){.customer-charts{grid-template-columns:1fr}.customer-charts .customer-chart+.customer-chart{border-left:0;padding-left:0;border-top:1px solid #e5ebf3;padding-top:18px}.customer-charts .customer-chart:nth-child(3){grid-column:auto}}
 .customer-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 30px 0}.customer-chart{padding:18px;min-width:0}.customer-chart-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid #e5ebf3;padding-bottom:12px}.customer-chart-heading h3{font-size:15px;margin-top:5px}.chart-count{background:#eef4fb;color:#536b86;border-radius:999px;padding:5px 8px;font-size:10px;white-space:nowrap}.bar-list{display:grid;gap:11px;margin-top:15px}.bar-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px}.bar-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#334a62}.bar-meta b{font-size:11px;color:#1d4f80;white-space:nowrap}.bar-track{height:7px;background:#e8eef6;border-radius:999px;overflow:hidden;margin-top:5px}.bar-track i{display:block;height:100%;background:linear-gradient(90deg,#2c89c5,#36b9a4);border-radius:999px}.chart-empty{margin:20px 0;color:#75869a;font-size:12px}@media(max-width:760px){.customer-charts{grid-template-columns:1fr;margin-left:16px;margin-right:16px}}
 .main-content .revenue-banner>div:first-child h3{font-size:14px!important}.main-content .revenue-banner>div:first-child strong{font-size:27px!important}
 .revenue-banner>div:first-child h3{font-size:14px!important}.revenue-banner>div:first-child strong{font-size:27px!important}
 .revenue-plan-card{display:flex;flex-direction:column;justify-content:center;min-height:220px}.revenue-plan-card .heading-icon{background:#e4f7ef;color:#16816d}.revenue-plan-card-value{margin:22px 0 4px;color:#11825e;font-size:30px;font-weight:800;letter-spacing:-.04em}.revenue-plan-card p{margin:0;color:#718198;font-size:12px}
 .revenue-banner>div:first-child h3{font-size:18px!important}.revenue-banner>div:first-child strong{font-size:42px!important;line-height:1.1}.revenue-banner .year-block small{font-size:12px!important}.revenue-banner .year-block b{font-size:16px!important}
 .gauge{transform:translateY(-23px)!important}
 .gauge-wrap{height:220px!important;padding-top:4px}.gauge{transform:translateY(-15px);filter:drop-shadow(0 5px 5px rgba(37,99,235,.12))}.gauge-progress{filter:drop-shadow(0 2px 3px rgba(37,99,235,.24))}.gauge-progress.success{filter:drop-shadow(0 2px 3px rgba(7,150,105,.24))}.gauge-progress.warning{filter:drop-shadow(0 2px 3px rgba(193,125,8,.22))}.gauge-progress.danger{filter:drop-shadow(0 2px 3px rgba(194,65,59,.22))}.gauge-hub-ring{stroke-width:4;filter:drop-shadow(0 2px 2px rgba(7,150,105,.18))}.gauge-value{bottom:4px!important;background:#fff;padding:3px 12px 0;border-radius:8px;z-index:1}.gauge-value strong{line-height:1.05}.gauge-value span{margin-top:4px!important}
 .login-page{min-height:100vh!important;background:linear-gradient(135deg,#294d89 0%,#2f83bd 100%)!important;display:grid!important;place-items:center!important;padding:24px!important}.login-shell{width:min(460px,100%)!important}.login-card{background:#fff!important;border:0!important;border-radius:16px!important;box-shadow:0 18px 42px rgba(9,35,76,.28)!important;padding:40px 36px 34px!important;text-align:left}.login-logo{width:70px;height:70px;margin:0 auto 12px;border-radius:16px;background:linear-gradient(145deg,#2e9bd2,#263f5d);color:#fff;display:grid;place-items:center;font-size:24px;font-weight:700;box-shadow:0 10px 22px rgba(41,137,193,.28)}.login-card h1{text-align:center!important;color:#2d4057!important;font-size:22px!important;line-height:1.25!important;margin:0!important}.login-subtitle{text-align:center;color:#81909a;font-size:14px;margin:4px 0 25px!important}.login-label{display:block!important;color:#31465e;font-size:14px;font-weight:700;margin:16px 0 0!important}.login-input-wrap{position:relative;margin-top:7px}.login-input-wrap input{width:100%!important;height:50px!important;border:2px solid #dbe3ea!important;border-radius:10px!important;padding:0 42px 0 42px!important;color:#2d4057!important;background:#fff!important;outline:none!important}.login-input-wrap input:focus{border-color:#32a2e4!important;box-shadow:0 0 0 3px rgba(50,162,228,.18)!important}.input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#566a7d;font-size:17px;z-index:1}.input-action,.password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#566a7d;border:0;background:transparent;padding:3px;font-size:17px;z-index:1}.password-toggle{cursor:pointer}.login-options{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:15px 1px 16px;color:#3d5268;font-size:13px}.remember-option{display:flex;align-items:center;gap:4px!important;margin:0!important;font-size:13px!important;font-weight:600!important;color:#3d5268!important}.remember-option input{width:16px!important;height:16px!important;margin:0!important;accent-color:#3198ce}.login-options a{color:#238fd0;font-weight:600}.login-button{height:47px!important;justify-content:center!important;border-radius:9px!important;background:linear-gradient(90deg,#36a0d9,#2587bf)!important;box-shadow:0 9px 17px rgba(41,143,198,.22)}.login-footer{display:block!important;text-align:center!important;color:rgba(255,255,255,.72)!important;font:12px Arial,sans-serif!important;margin-top:18px!important}.login-card .alert{margin:0 0 14px!important}.login-card .alert.danger{font-size:12px}
 #dataTable th{font-size:12px!important;background:#cbd7e6!important;color:#1f344d!important;font-weight:700!important}
 #dataTable{min-width:1600px!important}
 .table-scroll .total-row{position:sticky;bottom:0;z-index:2}
 .table-scroll table{min-width:1600px}.gauge-hub-ring{fill:none;stroke:#2dcc77;stroke-width:3;opacity:.7}.gauge-needle{transform-origin:120px 120px}
*{font-family:Arial,sans-serif!important}.table-scroll th{font-weight:700}.numeric-right{text-align:right!important}.percent-center{text-align:center!important}.opty-percent-field{display:inline-flex;width:98px;max-width:100%;align-items:center;justify-content:flex-end;gap:3px}.opty-percent-field::after{content:'%';color:#64748b;font-size:12px}.opty-metric-input{width:70px;max-width:100%;padding:5px 4px;border:1px solid #cbd5e1;border-radius:4px;text-align:right;background:#fff;color:var(--text)}.opty-metric-input:focus{outline:2px solid #93c5fd;border-color:#2563eb}.opty-metric-input:disabled{opacity:.85;border-color:transparent;background:transparent}.opty-metric-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:150px}.opty-metric-save{padding:6px 9px;font-size:11px}.opty-metric-cancel{padding:5px 4px}.metric-save-error .opty-metric-input{border-color:#c2413b;background:#fff0ef}.quality-drop{background:#fff0ef!important;color:#b42318!important;font-weight:700}.quality-lose{background:#fff7df!important;color:#9a6700!important;font-weight:700}.total-row td{background:#eef4ff!important;font-weight:700;border-top:2px solid #b8c9e5}
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&family=Plus+Jakarta+Sans:wght@600;700&display=swap');
.remark-winning-rate{display:grid;gap:6px;margin-bottom:12px;color:var(--muted);font:600 10px 'JetBrains Mono'}.remark-winning-rate input,.remark-winning-rate textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:5px;outline:none;font:inherit}
.remark-profitability-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.remark-target-date-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.remark-target-date-fields .remark-winning-rate{margin:0}.remark-date-control{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px}.remark-date-control input{min-width:0}.remark-date-clear{min-height:42px;padding:8px 10px}.remark-date-clear:disabled{opacity:.5;cursor:not-allowed}
.remark-valid-opty{display:flex;align-items:center;gap:8px;margin-bottom:12px;color:var(--muted);font:600 11px 'JetBrains Mono'}.remark-valid-opty input{accent-color:var(--blue)}
.modal#remarkModal{padding:20px;overflow-y:auto;z-index:50}.modal#remarkModal .modal-card{width:min(100%,520px);max-height:calc(100vh - 40px);overflow-y:auto;padding:28px;border:1px solid #e2eaf4;border-radius:14px;box-shadow:0 24px 70px rgba(15,23,42,.24)}.modal#remarkModal .modal-card>.eyebrow{display:block;margin-bottom:7px;color:var(--blue);font-size:10px}.modal#remarkModal .modal-card h3{margin:0 32px 20px 0;font-size:20px;line-height:1.35;color:var(--navy)}.modal#remarkModal .modal-card form{display:grid;gap:14px}.modal#remarkModal .remark-winning-rate,.modal#remarkModal .remark-presales{display:grid;gap:7px;margin:0;color:#475569;font:600 11px Inter,sans-serif}.modal#remarkModal .remark-winning-rate input,.modal#remarkModal .remark-presales input,.modal#remarkModal textarea{width:100%;min-height:42px;padding:10px 12px;border:1px solid #cfd9e6;border-radius:7px;background:#fff;color:var(--text);font:14px Inter,sans-serif;outline:none;transition:border-color .15s,box-shadow .15s}.modal#remarkModal .remark-winning-rate input:focus,.modal#remarkModal .remark-presales input:focus,.modal#remarkModal textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.12)}.modal#remarkModal .remark-valid-opty{margin:0;padding:11px 12px;border:1px solid #e3eaf2;border-radius:7px;background:#f7f9fc;color:#475569;font:500 12px Inter,sans-serif}.modal#remarkModal textarea{min-height:120px;resize:vertical;line-height:1.5}.modal#remarkModal .modal-actions{justify-content:flex-end;gap:9px;padding-top:5px}.modal#remarkModal .modal-actions .button{min-width:96px;border-radius:6px}@media(max-width:520px){.modal#remarkModal{padding:12px}.modal#remarkModal .modal-card{max-height:calc(100vh - 24px);padding:22px 18px}}
.valid-opty-check{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#e8faf2;color:#079669;font-size:15px;font-weight:700;line-height:1}
.budget-usage-control{display:grid;grid-template-columns:minmax(110px,1fr) auto;align-items:center;gap:6px;min-width:220px}.budget-usage-input{width:100%;min-width:110px;padding:7px;border:1px solid var(--line);border-radius:5px;text-align:right}.budget-usage-save{padding:7px 10px;font-size:11px}.budget-usage-feedback{grid-column:1/-1;font-size:11px;text-align:left}.budget-usage-feedback.success{color:var(--green)}.budget-usage-feedback.error{color:var(--red)}
.modal#remarkModal .remark-date-control input{width:100%;min-height:42px;padding:10px 12px;border:1px solid #cfd9e6;border-radius:7px;background:#fff;color:var(--text);font:14px Inter,sans-serif;outline:none;transition:border-color .15s,box-shadow .15s}.modal#remarkModal .remark-date-control input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.12)}
.app-shell{height:100vh;min-height:0;overflow:hidden}.sidebar{position:fixed;left:0;top:0;bottom:0;height:100vh;overflow-y:auto;overscroll-behavior:contain;z-index:20}.main-content{height:100vh;overflow-y:auto;overscroll-behavior:contain;margin-left:250px;width:calc(100% - 250px)}.topbar{position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}@media(max-width:1100px){.main-content{margin-left:210px;width:calc(100% - 210px)}}@media(max-width:760px){.main-content{margin-left:62px;width:calc(100% - 62px)}}
:root{--navy:#0f172a;--navy-2:#17243c;--blue:#2563eb;--blue-soft:#eaf1ff;--canvas:#f5f8ff;--surface:#fff;--line:#dce5f2;--muted:#64748b;--text:#0b1c30;--green:#079669;--green-soft:#e8faf2;--amber:#c17d08;--amber-soft:#fff7df;--red:#c2413b;--red-soft:#fff0ef;--shadow:0 1px 3px rgba(15,23,42,.05),0 4px 14px rgba(15,23,42,.03)}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--text);font:14px Inter,sans-serif}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Plus Jakarta Sans',sans-serif}button,input,select,textarea{font:inherit}a{text-decoration:none;color:inherit}.app-shell{min-height:100vh;display:flex}.sidebar{width:250px;background:var(--navy);color:#dbe6f7;padding:22px 14px;display:flex;flex-direction:column;flex-shrink:0}.brand,.login-brand{display:flex;align-items:center;gap:10px}.brand-mark{width:40px;height:40px;border-radius:10px;background:var(--blue);color:white;display:grid;place-items:center;font:24px 'JetBrains Mono'}.brand strong,.login-brand strong{display:block;color:white;font:700 14px 'Plus Jakarta Sans'}.brand span,.login-brand span{display:block;color:#91a4c2;font-size:10px;letter-spacing:.08em;margin-top:3px}.nav-label{font:600 10px 'JetBrains Mono';letter-spacing:.15em;color:#6e819e;margin:38px 12px 10px}.nav-label.admin-label{margin-top:30px}.nav-item{display:flex;gap:12px;align-items:center;padding:11px 12px;border-radius:6px;color:#a8b8cf;font-size:13px;margin:3px 0}.nav-item span{width:18px;text-align:center;font-size:17px}.nav-item:hover,.nav-item.active{background:#213552;color:#fff}.nav-item.active{box-shadow:inset 3px 0 var(--blue)}.sidebar-bottom{margin-top:auto;border-top:1px solid #263650;padding:14px 8px 0;color:#778ba8;font:10px 'JetBrains Mono';display:flex;gap:8px;align-items:center}.live-dot{display:inline-block;width:7px;height:7px;background:#10b981;border-radius:50%;box-shadow:0 0 0 4px rgba(16,185,129,.12)}.main-content{flex:1;min-width:0}.topbar{min-height:86px;background:rgba(255,255,255,.8);border-bottom:1px solid var(--line);padding:16px 30px;display:flex;align-items:center;justify-content:space-between;gap:18px}.eyebrow{color:#7889a2;font:600 10px 'JetBrains Mono';letter-spacing:.12em}.topbar h1{font-size:22px;margin-top:6px}.topbar-actions,.user-menu,.profile-name,.page-actions,.card-heading,.panel-title,.quick-links,.modal-actions{display:flex;align-items:center}.topbar-actions{gap:16px}.am-switcher label,.page-actions label{font:600 10px 'JetBrains Mono';color:#73839a;display:flex;gap:7px;align-items:center}.am-switcher select,.page-actions select{border:0;background:var(--blue-soft);color:var(--text);padding:9px 26px 9px 10px;border-radius:5px;outline:none}.user-menu{gap:9px;border-left:1px solid var(--line);padding-left:16px}.user-menu b,.user-menu small{display:block}.user-menu b{font-size:12px}.user-menu small{font-size:10px;color:var(--muted);margin-top:2px}.user-menu a{font-size:21px;margin-left:6px;color:var(--muted)}.avatar,.profile-avatar{background:var(--blue);color:#fff;display:grid;place-items:center;border-radius:8px;font:700 16px 'Plus Jakarta Sans'}.avatar{width:32px;height:32px}.main-content>section,.main-content>.alert{margin-left:30px;margin-right:30px}.profile-ribbon{background:white;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:9px;margin-top:26px!important;padding:20px 22px;display:flex;align-items:center;gap:16px}.profile-avatar{width:62px;height:62px;border-radius:10px;font-size:25px}.profile-copy{flex:1;min-width:0}.profile-name{gap:8px;flex-wrap:wrap}.profile-name h2{font-size:21px}.profile-copy p{color:var(--muted);font-size:12px;margin-top:7px}.profile-copy p span{padding:0 7px;color:#aab7c8}.tag,.status{font:600 10px 'JetBrains Mono';padding:5px 8px;border-radius:999px;white-space:nowrap}.tag.blue{background:var(--blue-soft);color:#1d4ed8}.tag.green,.status.success{background:var(--green-soft);color:#06714e}.health{border-left:1px solid var(--line);padding-left:22px}.health small{display:block;color:var(--muted);font:600 9px 'JetBrains Mono';letter-spacing:.12em}.health strong{display:flex;align-items:center;gap:8px;font-size:12px;margin-top:6px}.gauge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px!important}.gauge-card,.panel,.kpi-card{background:white;border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow)}.gauge-card{padding:18px}.card-heading{gap:10px;border-bottom:1px solid #eef2f7;padding-bottom:14px}.heading-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:7px;background:var(--blue-soft);color:var(--blue);font-size:20px}.heading-icon.success{background:var(--green-soft);color:var(--green)}.card-heading h2{font-size:15px}.card-heading small{color:var(--muted);font:9px 'JetBrains Mono';letter-spacing:.08em}.card-heading .status{margin-left:auto}.status i{display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:5px}.status.warning{background:var(--amber-soft);color:var(--amber)}.status.danger{background:var(--red-soft);color:var(--red)}.gauge-wrap{height:205px;position:relative;display:flex;justify-content:center;align-items:center}.gauge{width:270px;height:170px;overflow:visible}.gauge path{fill:none;stroke-width:17;stroke-linecap:round}.gauge-track{stroke:#e8eef7}.gauge-progress{stroke:var(--blue)}.gauge-progress.success{stroke:var(--green)}.gauge-progress.warning{stroke:#e7a624}.gauge-progress.danger{stroke:var(--red)}.gauge-needle{stroke:var(--blue);stroke-width:4;stroke-linecap:round;transform-origin:120px 120px}.gauge-needle.success{stroke:var(--green)}.gauge-needle.warning{stroke:#b26d00}.gauge-needle.danger{stroke:var(--red)}.gauge-hub{fill:var(--navy);stroke:white;stroke-width:3}.gauge-value{position:absolute;bottom:8px;text-align:center}.gauge-value strong{display:block;font:600 28px 'JetBrains Mono'}.gauge-value span{display:block;color:var(--muted);font:10px 'JetBrains Mono';text-transform:uppercase;margin-top:2px}.metric-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:#f1f5fb;border-radius:7px;padding:12px}.metric-strip div+div{border-left:1px solid #dce5f2;padding-left:10px}.metric-strip small,.kpi-card small{display:block;color:var(--muted);font:600 9px 'JetBrains Mono';letter-spacing:.08em}.metric-strip b{display:block;font:600 13px 'JetBrains Mono';margin-top:7px;white-space:nowrap}.metric-strip b.success{color:var(--green)}.metric-strip b.warning{color:var(--amber)}.metric-strip b.danger{color:var(--red)}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px!important}.kpi-card{padding:16px}.kpi-card strong{display:block;font:600 25px 'JetBrains Mono';margin-top:9px}.kpi-card span{display:block;color:var(--muted);font-size:11px;margin-top:5px}.quick-panel{margin-top:18px!important;padding:18px}.panel-title{justify-content:space-between;gap:10px}.panel-title h3{font-size:15px;margin-top:5px}.muted{color:var(--muted);font-size:11px}.quick-links{gap:10px;margin-top:15px}.quick-links a{flex:1;border:1px solid var(--line);padding:14px;border-radius:7px}.quick-links a:hover{border-color:#9cb9f6;background:#f7faff}.quick-links span{float:left;font-size:20px;color:var(--blue);margin-right:10px}.quick-links b,.quick-links small{display:block}.quick-links b{font-size:12px}.quick-links small{font-size:11px;color:var(--muted);margin-top:5px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-top:28px!important}.page-head h2{font-size:24px;margin-top:7px}.page-head p{color:var(--muted);margin-top:7px;font-size:12px}.button{border:0;border-radius:5px;padding:10px 14px;cursor:pointer;font-weight:600;font-size:12px}.button.primary{background:var(--blue);color:white}.button.secondary{background:white;color:var(--text);border:1px solid var(--line)}.button.wide{width:100%;display:flex;justify-content:space-between;margin-top:6px}.button:hover{filter:brightness(.96)}.table-panel{margin-top:18px!important;overflow:hidden}.table-toolbar{padding:13px 16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.table-toolbar input{width:210px;border:1px solid var(--line);border-radius:4px;padding:8px 10px;outline:none}.table-scroll{overflow:auto;max-height:64vh}.table-scroll table{border-collapse:collapse;width:100%;min-width:900px;font-size:11px}.table-scroll th{position:sticky;top:0;text-align:left;background:#f1f5fb;color:#61728a;padding:11px 12px;font:600 9px 'JetBrains Mono';letter-spacing:.05em;white-space:nowrap;z-index:1}.table-scroll td{border-bottom:1px solid #edf2f8;padding:12px;color:#334155;white-space:nowrap}.table-scroll tbody tr:hover{background:#f8fbff}.text-action{border:0;background:var(--blue-soft);color:var(--blue);border-radius:4px;padding:6px 8px;font-size:10px;font-weight:600;cursor:pointer}.revenue-banner{background:var(--navy);color:white;border-radius:9px;margin-top:18px!important;padding:20px;display:grid;grid-template-columns:1.4fr repeat(5,1fr);gap:14px;align-items:end}.revenue-banner h3{font-size:14px;color:#aebed6;margin-top:6px}.revenue-banner>div>strong{font:600 27px 'JetBrains Mono';display:block;margin-top:10px;color:#69e2b1}.year-block{border-left:1px solid #33435c;padding-left:13px}.year-block small{color:#91a4c2;font:600 10px 'JetBrains Mono'}.year-block b{display:block;font:600 13px 'JetBrains Mono';margin-top:8px}.year-block div{height:4px;background:#2c3d56;margin-top:13px}.year-block i{display:block;height:100%;background:var(--blue)}.admin-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;margin-top:18px!important}.admin-grid .panel{padding:22px}.upload-panel{text-align:center}.upload-icon{width:50px;height:50px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;border-radius:10px;font-size:26px;margin:2px auto 14px}.admin-grid h3{font-size:17px}.admin-grid p{color:var(--muted);font-size:12px;line-height:1.6;margin:8px 0 18px}.file-drop{display:flex;flex-direction:column;align-items:center;border:1px dashed #aac0e4;background:#f8fbff;border-radius:7px;padding:20px;margin-bottom:12px;cursor:pointer}.file-drop input{display:none}.file-drop span{color:var(--blue);font-weight:600}.file-drop small{color:var(--muted);font-size:10px;margin-top:5px}.definition-list{margin:22px 0}.definition-list div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:12px 0}.definition-list dt{color:var(--muted);font-size:12px}.definition-list dd{margin:0;font:600 13px 'JetBrains Mono'}.alert{margin-top:18px!important;border-radius:6px;padding:11px 14px;font-size:12px}.alert.danger{background:var(--red-soft);color:#9c2b28;border:1px solid #f6c4c0}.alert.success{background:var(--green-soft);color:#06714e;border:1px solid #bcebd5}.modal{display:none;position:fixed;inset:0;background:rgba(15,23,42,.42);backdrop-filter:blur(3px);align-items:center;justify-content:center;padding:16px;z-index:3}.modal.open{display:flex}.modal-card{width:min(500px,100%);background:#fff;border-radius:10px;padding:24px;box-shadow:0 20px 40px rgba(15,23,42,.18);position:relative}.modal-card h3{font-size:18px;margin:8px 0 16px}.modal-card textarea{width:100%;resize:vertical;border:1px solid var(--line);border-radius:5px;padding:10px;outline:none}.modal-close{position:absolute;right:15px;top:12px;background:none;border:0;font-size:24px;color:var(--muted);cursor:pointer}.modal-actions{justify-content:flex-end;gap:8px;margin-top:14px}.login-page{min-height:100vh;background:radial-gradient(circle at 80% 10%,#dbeafe 0,#f5f8ff 36%,#edf3fb 100%);display:grid;place-items:center}.login-shell{width:min(430px,calc(100% - 32px))}.login-brand{justify-content:center;margin-bottom:28px}.login-brand strong{color:var(--navy);font-size:16px}.login-brand span{color:var(--muted)}.login-card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 45px rgba(30,64,110,.1);padding:31px}.login-card h1{font-size:27px;margin-top:9px;letter-spacing:-.02em}.login-card>p{color:var(--muted);font-size:13px;line-height:1.6;margin:10px 0 24px}.login-card label{display:block;color:#51627a;font-size:11px;font-weight:600;margin:14px 0}.login-card input{display:block;width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:5px;margin-top:7px;outline:none}.login-card input:focus{border-color:#8aacf0;box-shadow:0 0 0 3px #edf3ff}.demo-hint{display:flex;gap:8px;background:#f2f6fd;color:var(--muted);font-size:10px;line-height:1.6;border-radius:5px;padding:10px;margin-top:18px}.demo-hint b{color:var(--text)}.material{color:var(--blue);font-size:15px}.login-footer{display:block;text-align:center;color:#8394ac;font:10px 'JetBrains Mono';margin-top:18px}
@media(max-width:1100px){.sidebar{width:210px}.topbar{padding-left:22px;padding-right:22px}.main-content>section,.main-content>.alert{margin-left:22px;margin-right:22px}.revenue-banner{grid-template-columns:repeat(3,1fr)}.revenue-banner>div:first-child{grid-column:span 3}.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.sidebar{width:62px;padding:14px 8px}.brand{justify-content:center}.brand>div:last-child,.nav-label,.nav-item{font-size:0}.nav-item{justify-content:center;padding:12px}.nav-item span{font-size:19px}.sidebar-bottom{font-size:0;justify-content:center}.topbar{padding:14px 16px;align-items:flex-start}.topbar h1{font-size:18px}.topbar-actions{gap:8px}.am-switcher,.user-menu>span:not(.avatar){display:none}.user-menu{border:0;padding:0}.main-content>section,.main-content>.alert{margin-left:16px;margin-right:16px}.profile-ribbon{align-items:flex-start;flex-wrap:wrap}.health{border-left:0;padding-left:0;width:100%;border-top:1px solid var(--line);padding-top:12px}.gauge-grid,.admin-grid{grid-template-columns:1fr}.quick-links{display:grid;grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.page-actions{width:100%;justify-content:space-between}.revenue-banner{grid-template-columns:repeat(2,1fr)}.revenue-banner>div:first-child{grid-column:span 2}.kpi-grid{gap:10px}.kpi-card{padding:13px}.kpi-card strong{font-size:19px}.table-toolbar{gap:10px;align-items:flex-start;flex-direction:column}.table-toolbar input{width:100%}.login-card{padding:24px}}
.budget-usage-input[readonly]{background:#f3f5f8}.budget-usage-modal{position:fixed;inset:0;background:rgba(15,23,42,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.budget-usage-dialog{background:#fff;border-radius:10px;padding:20px;width:min(420px,92vw);display:grid;gap:12px}.budget-usage-dialog h3{margin:0}.budget-usage-dialog label{display:grid;gap:6px;font-weight:600}.budget-usage-dialog input{padding:8px;border:1px solid var(--line);border-radius:5px;text-align:right}.budget-usage-preview{font-size:12px;font-weight:600}.budget-usage-dialog-actions{display:flex;justify-content:flex-end;gap:8px}
#dataTable td.remark-column{width:28%;min-width:300px;max-width:420px;white-space:normal;vertical-align:top}.remark-scroll{max-height:3.6em;overflow-y:auto;overflow-x:hidden;padding-right:4px;line-height:1.2;scrollbar-width:thin;word-break:break-word}.remark-scroll .remark-entry{margin-bottom:4px}
.budget-usage-control{grid-template-columns:1fr auto}.budget-usage-value{text-align:right;font-weight:600}.budget-usage-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}.budget-usage-summary small{display:block;color:var(--muted);font-size:10px}.budget-usage-summary b{font-size:13px}
.remark-scroll{height:7.2em;max-height:7.2em}#dataTable tbody tr:not(.total-row) td{vertical-align:top}
#dataTable th,#dataTable td{white-space:normal;word-break:break-word;overflow-wrap:anywhere}#dataTable thead th{text-align:center;vertical-align:middle}#dataTable tbody tr:not(.total-row) td{vertical-align:middle;text-align:center}#dataTable tbody tr:not(.total-row) td.numeric-right{text-align:right}#dataTable tbody tr:not(.total-row) td.remark-column{text-align:left;vertical-align:middle}
#dataTable th.nowrap-cell,#dataTable td.nowrap-cell{white-space:nowrap;word-break:normal;overflow-wrap:normal}
#dataTable thead th{white-space:nowrap;word-break:normal;overflow-wrap:normal}
#dataTable .text-action{white-space:nowrap}
#dataTable thead th.wrap-header{white-space:normal;word-break:normal;overflow-wrap:normal;width:90px;min-width:80px}
#dataTable thead th.wrap-header{width:110px;min-width:110px}
#dataTable.no-wrap th,#dataTable.no-wrap td{white-space:nowrap;word-break:normal;overflow-wrap:normal}
.table-panel #dataTable th.opty-project-name-column,.table-panel #dataTable td.opty-project-name-column{width:30ch;min-width:30ch;max-width:30ch;white-space:normal;word-break:normal;overflow-wrap:anywhere}
.table-panel #dataTable td.opty-project-name-column,.table-panel #dataTable td.opty-customer-column{text-align:left!important}
.table-panel #dataTable th.opty-sliding-month-column,.table-panel #dataTable td.opty-sliding-month-column{width:15ch;min-width:15ch;max-width:15ch;white-space:normal;word-break:normal;overflow-wrap:anywhere}
.table-panel #dataTable th.opty-project-quality-column,.table-panel #dataTable td.opty-project-quality-column{width:15ch;min-width:15ch;max-width:15ch;white-space:normal;word-break:normal;overflow-wrap:anywhere}
.table-panel #dataTable th.opty-stage-id-column,.table-panel #dataTable td.opty-stage-id-column{width:15ch;min-width:15ch;max-width:15ch;white-space:normal;word-break:normal;overflow-wrap:anywhere}
.table-panel #dataTable thead th.opty-sliding-month-column,.table-panel #dataTable thead th.opty-project-quality-column,.table-panel #dataTable thead th.opty-stage-id-column{width:auto;min-width:0}
.opty-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 30px 20px;padding:22px;background:linear-gradient(135deg,#f5f8ff 0%,#fff 56%,#f0fbf7 100%);border:1px solid #dce6f2;border-radius:16px;box-shadow:0 10px 30px rgba(27,52,86,.06)}
.opty-summary-card{display:grid;align-content:start;gap:8px;min-width:0;min-height:95px;padding:16px;border:1px solid #e1e9f2;border-top:3px solid #5485db;border-radius:12px;background:#fff;box-shadow:none}
.opty-summary-card:nth-child(2){border-top-color:#16a47b}
.opty-summary-card small{color:#718198;font-size:11px;letter-spacing:.06em}
.opty-summary-card strong{margin:0;color:#16283f;font-size:20px;line-height:1.25;overflow-wrap:anywhere}
.opty-summary-card span{margin:0;color:#8291a5;font-size:11px}
@media(max-width:1100px){.opty-summary-grid{margin-left:22px;margin-right:22px}}
@media(max-width:760px){.opty-summary-grid{margin-left:16px;margin-right:16px;padding:15px}.opty-summary-card{min-height:86px;padding:12px}.opty-summary-card strong{font-size:15px}}
.pipeline-opty-details{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:5px}
.pipeline-opty-details>span{min-width:0;flex:1;margin-top:0}
.pipeline-opty-details>span+span{text-align:right}
@media(max-width:1100px){.pipeline-opty-details{flex-direction:column;gap:4px}.pipeline-opty-details>span+span{text-align:left}}
.opty-table-panel .table-scroll{max-height:calc(100vh - 265px);overflow:auto}
.opty-table-panel #dataTable.opty-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0}
.opty-table-panel #dataTable.opty-table th,.opty-table-panel #dataTable.opty-table td{box-sizing:border-box}
.opty-table-panel #dataTable.opty-table thead th{position:sticky;top:0;z-index:2;padding:11px 12px;background:#edf3fa;color:#304760;text-align:center;vertical-align:middle;border-bottom:1px solid #dce6f2}
.opty-table-panel #dataTable.opty-table tbody td{padding:10px 12px;border-bottom:1px solid #edf1f6;background:#fff}
.opty-table-panel #dataTable.opty-table tbody tr:hover td{background:#f7fbff}
.opty-table-panel #dataTable.opty-table tbody tr.total-row td{position:sticky;bottom:0;z-index:1;background:#f4f7fb;font-weight:700;border-top:1px solid #dce6f2}
.opty-table-panel #dataTable.opty-table .remark-column{text-align:left;vertical-align:middle}
.opty-table-panel #dataTable.opty-table .opty-project-name-column,.opty-table-panel #dataTable.opty-table .opty-end-customer-column{width:24ch;min-width:24ch;max-width:24ch;white-space:normal;overflow-wrap:anywhere}
.opty-table-panel #dataTable.opty-table .opty-product-solution-column{width:17ch;min-width:17ch;max-width:17ch;white-space:normal;overflow-wrap:anywhere}
.opty-table-panel #dataTable.opty-table .opty-sbu-column{width:12ch;min-width:12ch;max-width:12ch;white-space:normal;overflow-wrap:anywhere}
.opty-table-panel #dataTable.opty-table .opty-amount-column,.opty-table-panel #dataTable.opty-table .opty-stage-column{white-space:pre-line}
.opty-table-panel #dataTable.opty-table .opty-amount-column{width:28ch;min-width:28ch;max-width:28ch;text-align:center!important}
@media(max-width:1050px){.opty-table-panel .table-scroll{max-height:calc(100vh - 160px)}}

.sticky-hscroll{display:none;position:fixed;bottom:0;z-index:60;overflow-x:auto;overflow-y:hidden;height:16px;background:#f1f5f9;border-top:1px solid #cbd5e1}.sticky-hscroll>div{height:1px}

.upload-type{display:flex;flex-direction:column;gap:6px;margin:12px 0;text-align:left;font-weight:600}.upload-type select{padding:10px;border:1px solid #cbd5e1;border-radius:8px}
.file-drop{position:relative}.upload-tooltip{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);background:#c2413b;color:#fff;padding:8px 12px;border-radius:8px;font-size:12px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s;z-index:20}.upload-tooltip:after{content:"";position:absolute;top:100%;left:50%;margin-left:-6px;border:6px solid transparent;border-top-color:#c2413b}.upload-tooltip.show{opacity:1}
.upload-submitted-file{margin:14px 0 0;padding:10px 12px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#1e3a8a;font-size:13px;overflow-wrap:anywhere}.upload-submitted-file strong{font-weight:700}
.budget-tab{border:0;background:none;padding:10px 16px;font:600 13px inherit;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.budget-tab.active{color:var(--blue);border-bottom-color:var(--blue)}[data-budget-panel][hidden]{display:none}
.hscroll-panel:not(.opty-table-panel) .table-scroll{max-height:calc(100vh - 265px);overflow:auto}@media(max-width:1050px){.hscroll-panel:not(.opty-table-panel) .table-scroll{max-height:calc(100vh - 160px)}}.hscroll-panel:not(.opty-table-panel) table:not(.rp-table) thead th{position:sticky;top:0;z-index:2;background:#edf3fa}
.budget-tabs{display:flex;gap:8px;margin:0 0 14px;padding:5px;background:#eef2f8;border-radius:12px;width:max-content;max-width:100%;flex-wrap:wrap}.budget-tab{border:0;background:transparent;padding:10px 20px;border-radius:9px;font:700 14px Inter,sans-serif;color:#475569;cursor:pointer;margin:0;border-bottom:0}.budget-tab:hover{background:#dde6f3;color:#0f172a}.budget-tab.active{background:var(--blue);color:#fff;box-shadow:0 2px 8px rgba(37,99,235,.35)}#dataTable td.text-left{text-align:left}#dataTable .col-amount{min-width:170px;white-space:nowrap}
.table-panel #dataTable tbody td.text-left{text-align:left!important}.table-panel #dataTable td.col-amount,.table-panel #dataTable th.col-amount{min-width:170px;white-space:nowrap}
.project-empty td{text-align:center!important;padding:28px;color:var(--muted);font-size:12px}
.revenue-plan-card{grid-column:1/-1;justify-content:flex-start}.revenue-plan-card>p{margin-top:10px}.dashboard-revenue-chart{max-width:100%;overflow:auto}.dashboard-revenue-chart-head,.dashboard-revenue-am-row{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(12,minmax(82px,1fr));align-items:center;gap:4px;min-width:1320px;padding:6px 10px}.dashboard-revenue-chart-head{position:sticky;top:0;z-index:2;background:#f3f6fa;color:#63748a;font-size:10px;text-align:center}.dashboard-revenue-chart-head b,.dashboard-revenue-am-row>b{text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-revenue-chart-head span.is-current{color:#08785c;font-weight:800}.dashboard-revenue-chart-body{max-height:430px;overflow:auto}.dashboard-revenue-am-row{min-height:61px;border-top:1px solid #edf1f6}.dashboard-revenue-am-row:nth-child(even){background:#fbfcfe}.dashboard-revenue-am-row>b{font-size:11px;color:#42566d}.dashboard-revenue-month{height:50px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;border-bottom:1px solid #d9e2ee}.dashboard-revenue-month small{min-height:13px;color:#47725f;font-size:8px;line-height:12px;white-space:nowrap;font-variant-numeric:tabular-nums}.dashboard-revenue-month i{display:block;width:42%;min-height:0;background:#36a887;border-radius:3px 3px 0 0}.dashboard-revenue-month.is-current{background:#eaf8f2}.dashboard-revenue-month.is-current i{background:#137c62}.dashboard-revenue-empty{grid-column:1/-1;padding:18px;color:var(--muted);font-size:12px}.project-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 30px 0}.project-summary article{min-width:0;padding:15px 18px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.project-summary small{display:block;color:var(--muted);font:600 9px 'JetBrains Mono';letter-spacing:.04em}.project-summary strong{display:block;margin-top:8px;font:600 20px 'JetBrains Mono';white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-summary article>span{color:var(--muted);font-size:10px}.project-table-panel{margin-top:14px!important}.project-table td.text-left{text-align:left!important}.project-table td.numeric-right{text-align:right!important;font-variant-numeric:tabular-nums}.project-table td.project-metric{white-space:pre-line;line-height:1.55}.project-table td.project-metric br+*{color:var(--muted);font-size:11px}@media(max-width:760px){.project-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-left:16px;margin-right:16px}.project-summary article{padding:12px}.project-summary strong{font-size:16px}.dashboard-revenue-chart-body{max-height:360px}}
.dashboard-revenue-card{min-width:0}.revenue-plan-card{justify-content:flex-start}.revenue-plan-card>p{margin-top:10px}.dashboard-revenue-chart{margin-top:14px;border:1px solid var(--line);border-radius:6px;overflow:hidden}.dashboard-revenue-chart-head,.dashboard-revenue-am-row{display:grid;grid-template-columns:minmax(112px,1.5fr) repeat(12,minmax(18px,1fr));align-items:center;gap:3px;padding:5px 8px}.dashboard-revenue-chart-head{position:sticky;top:0;background:#f3f6fa;color:#63748a;font-size:9px;text-align:center}.dashboard-revenue-chart-head b,.dashboard-revenue-am-row>b{text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-revenue-chart-head span.is-current{color:#08785c;font-weight:800}.dashboard-revenue-chart-body{max-height:240px;overflow:auto}.dashboard-revenue-am-row{min-height:36px;border-top:1px solid #edf1f6}.dashboard-revenue-am-row:nth-child(even){background:#fbfcfe}.dashboard-revenue-am-row>b{font-size:10px;color:#42566d}.dashboard-revenue-month{height:28px;display:flex;align-items:flex-end;justify-content:center;border-bottom:1px solid #d9e2ee}.dashboard-revenue-month.is-current{background:#eaf8f2}.dashboard-revenue-month i{display:block;width:55%;min-height:0;background:#36a887;border-radius:3px 3px 0 0}.dashboard-revenue-month.is-current i{background:#137c62}.dashboard-revenue-empty{grid-column:1/-1;padding:18px;color:var(--muted);font-size:12px}.project-view-tabs{display:flex;gap:8px;margin:18px 30px 0;padding:5px;background:#eaf0f8;border-radius:8px;width:max-content;max-width:calc(100% - 60px)}.project-view-tab{padding:9px 16px;border-radius:6px;color:#51657c;font-size:12px;font-weight:700;white-space:nowrap}.project-view-tab:hover{background:#dce6f3}.project-view-tab.active{background:#2563eb;color:#fff;box-shadow:0 2px 6px rgba(37,99,235,.2)}@media(max-width:680px){.dashboard-revenue-chart-head,.dashboard-revenue-am-row{grid-template-columns:minmax(88px,1.2fr) repeat(12,minmax(18px,1fr));padding-left:5px;padding-right:5px;gap:2px}.project-view-tabs{margin-left:16px;max-width:calc(100% - 32px)}}
