/* Shared visual language measured from the original MK-S1 dashboard.
   Presentation only: financial calculations and access checks stay in PHP. */
:root {
  --bg: #070d17;
  --panel: #0c1726;
  --border: #263c55;
  --text: #edf5ff;
  --muted: #a6bad2;
  --blue: #75caff;
  --gold: #d9b66b;
}
body {
  font-family: "Segoe UI", Arial, Helvetica, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.55;
  background: radial-gradient(ellipse 85% 530px at 84% 0, #102c4d 0, transparent 70%), var(--bg);
}
h1 {font-weight: 500; line-height: 1.08; letter-spacing: -2px;}
h2 {font-size: 22px; font-weight: 500; letter-spacing: -.5px;}
h3 {font-size: 16px; font-weight: 500; letter-spacing: -.15px;}
.lead {color: #bccce0; line-height: 1.55;}
.eyebrow {font-weight: 400; color: #99abc3;}
button, .button {font-weight: 400; letter-spacing: 0;}
.button, button:not(.metric-detail-button) {transition: background-color .18s ease, border-color .18s ease;}
.quiet {background: #13253a; color: #c4d6e9;}
input, select, textarea {font-family: inherit; font-weight: 400;}
.workspace-page .panel {
  background: linear-gradient(125deg, #101e30dd, #0b1625e8);
  border-color: #263c55;
  box-shadow: none;
}
.gold, .project-gold-dot {color: var(--gold);}
.negative {color: #ff9cae;}
.metrics strong, .portfolio-metrics strong {font-weight: 450; letter-spacing: -1px; font-variant-numeric: tabular-nums;}
.portfolio-summary h2, .portfolio-section-head h3 {font-weight: 500;}
.project-page-heading {border-bottom: 0;}
.project-page-title h1 {font-size: clamp(48px, 5.25vw, 88px); letter-spacing: -4px; margin: 16px 0 12px;}
.project-page-title .lead {font-size: 17px; margin: 14px 0 18px;}
.project-page-heading .page-actions {gap: 10px;}
.project-page-heading .page-actions .button {font-size: 12px;}
.unified-project-overview {margin-top: 24px;}
.overview-panel {padding: 0;}
.overview-panel > summary, .panel-visibility > summary {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--gold);
}
.overview-panel > summary {padding: 14px 26px;}
.overview-panel-body {padding: 0 26px 26px;}
.overview-kpis {
  margin: 0 -26px;
  background: linear-gradient(110deg, #0f223b88, #0c192a55);
  border-top-color: #41688b;
}
.overview-kpis > div {
  padding: 23px 26px 20px;
  min-height: 145px;
  border-right-color: #233f5c;
  border-bottom-color: #233f5c;
}
.overview-kpis > div:nth-child(3n) {border-right: 0;}
.overview-kpis small {font-size: 12px; font-weight: 400; color: #aec2db; line-height: 1.4;}
.overview-kpis strong {
  font-size: clamp(26px, 2.75vw, 38px);
  font-weight: 450;
  line-height: 1.2;
  letter-spacing: -1.3px;
  margin: 18px 0 9px;
  font-variant-numeric: tabular-nums;
  overflow-wrap: normal;
}
.overview-kpis strong[data-metric="actual"], .cash-positive {color: #7bd2ff;}
.overview-kpis .metric-caption {font-size: 11px; color: #a6bad2; line-height: 1.4;}
.overview-kpis .metric-detail-button {font-size: 11px; font-weight: 400; min-height: 20px; margin-top: 8px; border: 0; color: #75caff;}
.overview-kpis .metric-detail-button:hover {background: transparent; text-decoration: underline;}
.overview-section-head h3 {font-size: 22px; font-weight: 500; letter-spacing: -.5px; margin: 4px 0;}
.margin-comparison-grid {gap: 30px; padding-bottom: 20px;}
.margin-comparison-grid > div + div {padding-left: 30px; border-left-color: #36516a;}
.margin-comparison-grid > div > small {font-size: 12px; color: #b8d5ef;}
.margin-main {font-size: 38px; font-weight: 450; letter-spacing: -1.3px; line-height: 1.2; margin: 16px 0 18px; padding-bottom: 20px;}
.margin-comparison-grid > div:nth-child(2) .margin-main:not(.negative) {color: #7bd2ff;}
.margin-shares {gap: 12px;}
.margin-shares small {font-size: 10px; font-weight: 400; color: #adc5df;}
.margin-shares strong {font-size: 14px; font-weight: 400; margin-top: 7px; font-variant-numeric: tabular-nums;}
.portfolio-note {font-size: 11px; font-weight: 400; color: #a6bad2; line-height: 1.65;}
.cash-indicator {background: #0e2236; border-color: #365b78; padding: 22px;}
.cash-indicator p {font-size: 12px; color: #adddff;}
.cash-indicator > strong {font-size: 30px; font-weight: 450; letter-spacing: -1px; white-space: nowrap;}
.cash-indicator.negative {background: linear-gradient(140deg, #2b1b2c, #1a1726); border-color: #95546a; color: #ff9cae;}
.cash-indicator.negative p {color: #ffb4bf;}
.cash-bar-column > strong {font-size: 11px; font-weight: 400; font-variant-numeric: tabular-nums;}
.cash-bar-column > small {font-size: 11px; color: #b7cce2;}
.work-progress-row strong {font-weight: 500;}
.work-progress-row p {font-size: 12px; color: #a6bad2;}
.work-progress-row progress {height: 9px;}
.work-progress-scale strong {font-weight: 400;}
.work-value-summary strong {font-size: 17px; font-weight: 450; letter-spacing: -.3px;}
.project-line-items {margin-top: 26px;}
.project-line-items .overview-section-head h2 {font-size: 22px; font-weight: 500;}
.task-card-heading, .standard-task-card > summary {
  grid-template-columns: minmax(220px, 2.6fr) repeat(5, minmax(75px, 1fr));
  gap: 18px;
}
.task-card-heading {padding: 0 0 11px; font-size: 11px; color: #a9bfd5; text-transform: none; letter-spacing: 0; font-weight: 400;}
.standard-task-card {margin: 0; border: 0; border-top: 1px solid #253c56; border-radius: 0; background: transparent; overflow: visible;}
.standard-task-card > summary {padding: 20px 0; color: #edf5ff; min-height: 88px;}
.standard-task-card > summary:hover {background: #15355244;}
.standard-task-card > summary > span:first-child {font-size: 14px;}
.standard-task-card > summary > span:first-child > strong {font-weight: 500; color: #edf5ff;}
.standard-task-card > summary > strong {font-size: 13px; font-weight: 400; color: #d8e5f7;}
.standard-task-card > summary > strong:nth-child(5), .standard-task-card > summary > strong:nth-child(6) {color: #80d1ff;}
.standard-task-card small, .standard-material-table small {font-size: 11px; font-weight: 400; line-height: 1.6; color: #91aac5; margin-top: 5px;}
.standard-task-card .line-code {font: 11px/1.5 Consolas, "Courier New", monospace; color: #7acbff; margin-right: 9px;}
.standard-task-card .line-chevron {font-size: 12px; color: #7acbff; padding-left: 8px;}
.standard-task-card[open] .line-chevron {display: inline-block; transform: rotate(180deg);}
.standard-task-body {padding: 18px; background: #0c1b2db3; border: 1px solid #29435d; margin: 0 0 18px;}
.standard-task-body h3 {font-size: 15px;}
.standard-material-table {font-size: 13px; line-height: 1.55;}
.standard-material-table thead th {font-size: 11px; font-weight: 400; letter-spacing: 0; text-transform: none; padding: 0 12px 11px 0; color: #a9bfd5;}
.standard-material-table tbody th {font-size: 13px; font-weight: 500; letter-spacing: 0; color: #e1edfb;}
.standard-material-table td, .standard-material-table tbody th {padding: 16px 12px 16px 0; border-bottom-color: #253c56;}
.standard-material-table td {font-variant-numeric: tabular-nums;}
.standard-material-table .quick-cost-table-row > td {padding: 0 0 12px; border-bottom: 0;}
.quick-cost > summary, .work-progress-editor > summary {font-size: 11px; font-weight: 400; padding: 8px 12px; background: #132b42;}
.management-project-card h3 a {text-decoration: none; font-weight: 500;}
.management-project-card:hover h3 a {color: var(--gold);}
.project-group-tag {font-weight: 400;}
@media (max-width: 1100px) {
  .task-card-heading {display: none;}
  .standard-task-card > summary {grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px;}
  .standard-task-card > summary > span:first-child {grid-column: 1 / -1;}
}
@media (max-width: 720px) {
  .project-page-title h1 {font-size: 54px; letter-spacing: -2.5px;}
  .overview-panel > summary {padding: 13px 18px;}
  .overview-panel-body {padding: 0 18px 20px;}
  .overview-kpis {margin: 0 -18px; grid-template-columns: repeat(2, minmax(0, 1fr));}
  .overview-kpis > div {padding: 19px 16px; min-height: 140px; border-right: 0;}
  .overview-kpis > div:nth-child(even) {border-left: 1px solid #233f5c;}
  .overview-kpis strong {font-size: 29px; letter-spacing: -1px;}
  .overview-kpis small {font-size: 11px;}
  .margin-main {font-size: 32px;}
  .margin-comparison-grid > div + div {padding: 22px 0 0; border-left: 0;}
  .cash-indicator > strong {font-size: 28px;}
  .standard-task-card > summary {grid-template-columns: repeat(2, minmax(0, 1fr));}
}
@media (max-width: 400px) {
  .overview-kpis strong {font-size: 24px;}
  .overview-kpis > div {padding: 18px 12px;}
  .overview-section-head h3 {font-size: 20px;}
  .margin-shares {grid-template-columns: 1fr;}
}
@media (prefers-reduced-motion: reduce) {
  .button, button {transition: none;}
}
@media (max-width: 720px) {
  .header-inner nav {width: 100%; max-width: 100%; justify-content: flex-start; flex-wrap: wrap; gap: 6px; margin: 0;}
  .header-inner {gap: 12px; padding-top: 12px; padding-bottom: 12px;}
}

/* The same logo-free canvas orb used by the original MK-S1 hero. */
.company-overview-card.has-company-orb {position:relative;overflow:hidden;padding-right:240px;min-height:240px;}
.company-orb {position:absolute;right:12px;top:18px;width:220px;height:220px;border:0;pointer-events:none;}
.company-overview-card.has-company-orb>div,.company-overview-card.has-company-orb>dl,.company-overview-card.has-company-orb>h4,.company-overview-card.has-company-orb>ul,.company-overview-card.has-company-orb>a {position:relative;z-index:1;}
@media(max-width:600px){.company-overview-card.has-company-orb{padding-right:24px;padding-top:160px}.company-orb{width:155px;height:155px;top:0;right:calc(50% - 77px);}}
/* Explanatory financial cards and signed cash bridge. */
.overview-kpis>.metric-shell{padding:0;position:relative;min-height:168px}.metric-card{display:block;width:100%;height:100%;min-height:168px;text-align:left;border:0;border-radius:0;background:transparent;padding:23px 26px 20px;color:var(--text)}.metric-card:hover,.metric-card:focus-visible{background:#15355277}.metric-card>small:first-child{display:flex;justify-content:space-between;gap:12px}.metric-open-arrow{color:#75caff}.metric-tooltip{display:block;position:absolute;top:calc(100% - 3px);left:12px;right:12px;background:#193149;color:#edf5ff;border:1px solid #52708a;border-radius:6px;padding:12px 14px;font-size:12px;line-height:1.6;box-shadow:0 10px 30px #0006;visibility:hidden;opacity:0;pointer-events:none;z-index:10}.metric-shell:hover,.metric-shell:focus-within{z-index:10}.metric-shell:hover .metric-tooltip,.metric-shell:focus-within .metric-tooltip{visibility:visible;opacity:1}.opening-included-badge{font-size:11px!important;color:#d9b66b!important}.finance-equation{margin:22px 0}.finance-equation>div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #29435d}.finance-equation dt{color:#adc5df;font-size:13px}.finance-equation dd{margin:0;font-size:18px;font-weight:450;font-variant-numeric:tabular-nums;white-space:nowrap}.finance-equation .equation-total{border-top:1px solid #466985;color:#d9b66b}.opening-balance-status{padding:20px;margin:20px 0;background:#0c2234;border:1px solid #365b78}.opening-balance-status h3{margin-top:0}.opening-balance-status>p{font-size:12px}.cash-waterfall-layout{grid-template-columns:minmax(0,1fr) 235px;gap:24px;align-items:stretch}.cash-chart-scroll{min-width:0;overflow-x:auto}.cash-waterfall{width:100%;min-width:600px;display:block;overflow:visible}.cash-waterfall text{font:12px 'Segoe UI',Arial,sans-serif;fill:#c8d9eb}.cash-waterfall .cash-chart-value{font-size:13px;fill:#edf5ff}.cash-waterfall .cash-axis{font-size:11px;fill:#a6bad2}.cash-grid-line{stroke:#294158;stroke-width:1}.cash-connector{stroke:#718da3;stroke-width:1;stroke-dasharray:3 4}.cash-received-fill{fill:#56bce9}.cash-balance-fill{fill:#4b9fc6}.cash-negative-fill{fill:#d8788e}.cash-category-labor{fill:#e9af61;background:#e9af61}.cash-category-material{fill:#a99af6;background:#a99af6}.cash-category-other{fill:#8fb8c7;background:#8fb8c7}.cash-category-unallocated{fill:#8091aa;background:#8091aa}.cash-category-legend{display:flex;flex-wrap:wrap;gap:12px 24px;border-top:1px solid #36516a;margin-top:18px;padding-top:18px;font-size:12px;color:#adc5df}.cash-category-legend>span{display:inline-flex;align-items:center;gap:5px;flex-wrap:wrap}.cash-category-legend i{display:inline-block;width:8px;height:8px;border-radius:2px}.cash-category-legend strong{font-weight:500;color:#e1edfb}.cash-payment-status,.opening-cash-note{font-size:12px;line-height:1.7;color:#adc5df}.cash-payment-status>strong{font-weight:500;color:#d3e4f5}.cash-indicator>small{display:block;font-size:11px;color:#adc5df}.project-page-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}.project-primary-actions{display:flex;gap:10px;align-items:center;flex-wrap:nowrap;justify-content:flex-end}.project-primary-actions>.button,.project-action-menu>summary{min-height:43px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;white-space:nowrap}.project-action-menu{position:relative;margin:0}.project-action-menu>summary{padding:12px 16px;border:1px solid #486681;border-radius:6px;background:#132b42;color:#d1e2f1;gap:14px;list-style:none}.project-action-menu>summary::-webkit-details-marker{display:none}.project-action-popover{position:absolute;right:0;top:calc(100% + 8px);width:255px;background:#102238;border:1px solid #496780;padding:8px;z-index:25;box-shadow:0 12px 40px #0007;border-radius:7px}.project-action-popover a{display:block;padding:12px;text-decoration:none;font-size:13px;color:#d5e7f8;border-radius:4px}.project-action-popover a:hover{background:#1e3b53}.project-action-popover .project-lifecycle-action{border-top:1px solid #35516b;margin-top:6px;color:#d9b66b}.project-page-heading:has(.section-page-nav){grid-template-columns:1fr}.section-page-nav{justify-content:flex-start}.overview-panel .overview-panel-body{overflow:visible}@media(max-width:1000px){.project-page-heading{grid-template-columns:1fr}.project-primary-actions{justify-content:flex-start}.cash-waterfall-layout{grid-template-columns:1fr}.cash-waterfall-layout .cash-indicator{display:flex;gap:16px;align-items:center;flex-wrap:wrap}}@media(max-width:720px){.metric-card{padding:19px 16px;min-height:168px}.finance-equation>div{flex-wrap:wrap;gap:5px}.project-primary-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.project-action-menu>summary{width:100%;padding:12px 10px}.project-primary-actions>.button{white-space:normal;text-align:center}.cash-waterfall{min-width:600px}.metric-tooltip{left:5px;right:5px;font-size:11px}.overview-kpis>.metric-shell{min-height:168px}}
.company-card-shortcuts{display:flex;gap:20px;flex-wrap:wrap;margin-top:20px}.company-card-shortcuts a{font-size:12px}.developer-nav>summary{color:#d3b4ff!important;border-color:#a57ae8!important}.developer-nav-popover a{display:block;padding:12px 14px;text-decoration:none;color:#dfcbff;border-radius:5px;font-size:12px}.developer-nav-popover a:hover{background:#35264d}
