/* Fusework identity, October 2026. Load after workspace-v2.css with media="screen".
   Layout, document printing and semantic payment/status colours remain independent. */
.fw-workspace,
.fw-login-page {
  --dark: #002a3a;
  --forest: #007367;
  --mid: #009ca6;
  --sage: #9ed8da;
  --sage-light: #eaf5f4;
  --cream: #f4f7f8;
  --text: #233e49;
  --text-muted: #586e77;
  --fw-border: #dce6e9;
  --fw-navy: #002a3a;
  --fw-teal: #009ca6;
  background: var(--cream);
}

.fw-workspace :focus-visible,
.fw-login-page :focus-visible {
  outline-color: #009ca6;
}
.fw-workspace input::placeholder,
.fw-workspace textarea::placeholder,
.fw-login-page input::placeholder { color: #657b83; }

/* Navigation keeps the original logo pixels and frames its square artboard. */
.fw-workspace .sidebar {
  background: #002a3a;
  border-color: #173f4e;
  color: #f5fafb;
  scrollbar-color: #365d69 transparent;
}
.fw-workspace .sidebar .brand { padding: 0; gap: 0; margin-bottom: 25px; }
.fw-workspace .sidebar .brand img {
  width: 84px;
  height: 52px;
  flex: 0 0 84px;
  object-fit: cover;
  object-position: center;
}
.fw-workspace .sidebar .brand > span {
  color: #fff;
  font-size: 23px;
  letter-spacing: -.8px;
}
.fw-workspace .sidebar .brand small {
  color: #a4c3ce;
  font-size: 6.5px;
  letter-spacing: 1.1px;
  margin-top: 7px;
}
.fw-workspace .company-block-label,
.fw-workspace .fw-nav-label { color: #a4c3ce; }
.fw-workspace .company-switch,
.fw-workspace .company-single {
  color: #f4fafb;
  background: #0b3545;
  border-color: #345563;
}
.fw-workspace .company-switch:hover,
.fw-workspace .company-switch:focus-within {
  background: #123e4d;
  border-color: #55bac0;
}
.fw-workspace .company-switch:focus-within { box-shadow: 0 0 0 3px #63d4d533; }
.fw-workspace .company-avatar {
  color: #e9ffff;
  background: #155661;
  border-color: #34747d;
}
.fw-workspace .company-switch select { color: #f4fafb; }
.fw-workspace .company-switch select option { color: #233e49; background: #fff; }
.fw-workspace .company-switch::after { border-color: #a4d7dc; }
.fw-workspace .sidebar nav a { color: #c5d6dd; }
.fw-workspace .sidebar nav a svg { opacity: .85; }
.fw-workspace .sidebar nav a:hover { color: #fff; background: #123e4d; }
.fw-workspace .sidebar nav a.active {
  color: #fff;
  background: #075765;
  box-shadow: inset 3px 0 0 #26c1c4;
}
.fw-workspace .sidebar > form:last-child { border-top-color: #31515e; }
.fw-workspace .sidebar .logout { color: #b8cdd5; }
.fw-workspace .sidebar .logout:hover { color: #ffcfca; }
.fw-workspace .sidebar :focus-visible { outline-color: #63d4d5; }
.fw-workspace .fw-menu-close { color: #c5e0e6; }
.fw-workspace .fw-menu-toggle { color: #385966; }
.fw-workspace.fw-enhanced .sidebar { box-shadow: 12px 0 40px #002a3a12; }
.fw-workspace .fw-menu-backdrop { background: #002a3a80; }

/* Neutral working surfaces keep dense financial information easy to scan. */
.fw-topbar { background: #fff; border-bottom-color: var(--fw-border); }
.fw-breadcrumb strong { color: var(--dark); }
.fw-separator { color: #b0c2c9; }
.fw-profile { color: #00685f; background: #e7f3f3; }
.fw-workspace .page-head h1 { color: #002a3a; letter-spacing: -.5px; }
.fw-eyebrow { color: #007367; }
.fw-workspace .card { border-color: var(--fw-border); }
.fw-workspace .card-section-title { color: #385c68; }
.fw-workspace .stat-card { border-top-color: var(--fw-border); }
.fw-workspace .stat-card-received { border-top-color: #91c9c7; }
.fw-workspace .stat-card-danger { border-color: #eddfd6; }
.fw-workspace .chart {
  border-bottom-color: #dae5e8;
  background: repeating-linear-gradient(to top, transparent, transparent 54px, #edf2f4 55px, transparent 56px);
}
.fw-workspace .chart-bar-inv,
.fw-workspace .chart-dot-inv { background: #9ed8da; }
.fw-workspace .chart-bar-rec,
.fw-workspace .chart-dot-rec { background: #007367; }
.fw-debt-row { border-bottom-color: #e6edef; }
.fw-debt-avatar { color: #466c78; background: #eaf2f4; }
.fw-table-scroll { scrollbar-color: #c4d6dc transparent; }
.fw-table-scroll th { background: #f5f8f9; border-bottom-color: #dce6e9; }
.fw-table-scroll td { border-color: #eaf0f2; }
.fw-table-scroll tbody tr:hover td { background: #f3f9f9; }
.fw-workspace .tabs { border-bottom-color: #d9e4e7; }
.fw-workspace .tabs a.active { border-bottom-color: #007367; }
.fw-workspace .field label { color: #38545f; }
.fw-workspace .field input,
.fw-workspace .field select,
.fw-workspace .field textarea,
.fw-workspace .line-items-table .combo input[type="text"],
.fw-workspace .line-items-table select.product-select,
.fw-search input { border-color: #cfdee3; color: #233e49; }
.fw-search input { background: #fff; }
.fw-workspace .field input:focus,
.fw-workspace .field select:focus,
.fw-workspace .field textarea:focus,
.fw-workspace .line-items-table input:focus,
.fw-workspace .line-items-table select.product-select:focus,
.fw-search input:focus,
.fw-login-page .field input:focus {
  border-color: #008c93;
  background: #fff;
  box-shadow: 0 0 0 3px #009ca61a;
}
.fw-workspace .line-items-table th { background: #f5f8f9; }
.fw-workspace .line-items-table tbody tr:nth-child(even) td { background: #f8fbfb; }
.fw-workspace .line-items-table tbody tr:hover td { background: #eef7f7; }
.fw-workspace .combo-list { border-color: #d4e2e6; box-shadow: 0 8px 24px #002a3a18; }
.fw-workspace .toggle-slider { background: #c5d5dc; }
.fw-workspace .toggle-switch input:focus-visible + .toggle-slider {
  outline: 3px solid #009ca6;
  outline-offset: 3px;
}
.fw-workspace input[type="checkbox"],
.fw-workspace input[type="radio"] { accent-color: #007367; }

/* Dark teal provides clear contrast for primary actions. */
.fw-workspace .btn-primary,
.fw-login-page .btn-primary {
  color: #fff;
  background: #007367;
  border-color: #007367;
  box-shadow: 0 2px 5px #002a3a0d;
}
.fw-workspace .btn-primary:hover,
.fw-login-page .btn-primary:hover { color: #fff; background: #00664f; border-color: #00664f; }
.fw-workspace .btn-primary:active,
.fw-login-page .btn-primary:active { background: #005343; border-color: #005343; }
.fw-workspace .btn-outline { color: #385c68; background: #fff; border-color: #cedee3; }
.fw-workspace .btn-outline:hover { color: #00685f; background: #edf7f6; border-color: #91c1c1; }
.fw-workspace .btn:disabled,
.fw-login-page .btn:disabled {
  color: #546b74;
  background: #e3ebee;
  border-color: #cbd9df;
  box-shadow: none;
  cursor: not-allowed;
  opacity: 1;
}
.fw-workspace .field input:disabled,
.fw-workspace .field select:disabled,
.fw-workspace .field textarea:disabled,
.fw-login-page .field input:disabled { color: #546b74; background: #edf2f4; opacity: 1; }

/* A quiet navy brand panel gives the sign-in page its own visual identity. */
.fw-login-page .login-wrap { background: #f1f5f6; }
.fw-login-shell { border-color: #d7e3e7; box-shadow: 0 18px 60px #002a3a0d; }
.fw-login-story { background: #002a3a; }
.fw-login-story > img {
  display: block;
  width: 260px;
  height: 160px;
  max-width: 100%;
  object-fit: cover;
  object-position: center;
  margin: -12px 0 24px -28px;
}
.fw-login-story .fw-eyebrow { color: #7ddbdd; letter-spacing: .12em; font-size: 10px; }
.fw-login-story h1 { color: #fff; font-size: 32px; font-weight: 600; line-height: 1.55; }
.fw-login-story > p:not(.fw-eyebrow) { color: #bdd1da; }
.fw-login-story > small { color: #a4c3ce; margin-top: 44px; }
.fw-login-motif { opacity: .12; }
.fw-login-motif i { background: #4bd4d5; }
.fw-login-page .login-card h2 { color: #002a3a; }
.fw-login-page .field input { color: #233e49; background: #fafcfc; border-color: #cfdee3; }

@media (max-width: 1180px) and (min-width: 861px) {
  .fw-workspace .sidebar .brand img { width: 76px; height: 48px; flex-basis: 76px; }
  .fw-workspace .sidebar .brand > span { font-size: 22px; }
}
@media (max-width: 860px) {
  .fw-login-story > img { width: 220px; height: 138px; margin-left: -24px; }
  .fw-login-story h1 { font-size: 26px; }
}
/* Invoice form's later inline mobile rules otherwise restore the former sage borders. */
@media (max-width: 900px) {
  .fw-workspace[data-page="invoices"] #invoice-form .line-items-table tbody tr { border-bottom-color: #dce6e9; }
  .fw-workspace[data-page="invoices"] #invoice-form .line-items-table input[type="text"],
  .fw-workspace[data-page="invoices"] #invoice-form .line-items-table input.month-input { border-color: #cfdee3; }
  .fw-workspace[data-page="invoices"] #invoice-form .line-items-table input[type="text"]:focus,
  .fw-workspace[data-page="invoices"] #invoice-form .line-items-table input.month-input:focus { border-color: #008c93; }
}
@media (max-width: 600px) {
  .fw-login-page .login-card { border-top: 4px solid #009ca6; }
  .fw-login-page .login-card > img {
    width: 158px;
    height: 96px;
    object-fit: cover;
    object-position: center;
    margin: -5px 0 26px -18px;
  }
  .fw-card-ready .fw-card-row { border-color: #d4e2e6; }
  .fw-workspace .fw-card-ready .fw-card-row td.fw-card-actions { border-top-color: #e0e9ec; }
}
