/* Restored premium v3 visual layer. CSS-only; no business logic or data changes. */
:root {
  --premium-bg-top: #f8f1df;
  --premium-bg-mid: #edf4ef;
  --premium-bg-low: #f3ead8;
  --premium-surface: rgba(255, 255, 255, 0.94);
  --premium-surface-solid: #ffffff;
  --premium-surface-warm: #fffaf0;
  --premium-ink: #17211d;
  --premium-muted: #66736e;
  --premium-line: rgba(176, 190, 181, 0.62);
  --premium-line-strong: rgba(130, 151, 141, 0.72);
  --premium-pine: #173f36;
  --premium-pine-deep: #0b2927;
  --premium-sage: #3f7a64;
  --premium-blue: #2f6fd0;
  --premium-indigo: #6658d9;
  --premium-amber: #c98126;
  --premium-coral: #c95645;
  --premium-red: #bb3f3f;
  --premium-green: #23724f;
  --premium-rose: #b85f4f;
  --premium-violet: #6658d9;
  --premium-slate: #335665;
  --premium-shadow: 0 16px 36px rgba(25, 45, 38, 0.10);
  --premium-shadow-soft: 0 8px 22px rgba(25, 45, 38, 0.07);
  --premium-radius: 8px;
  --accent: var(--premium-sage);
  --accent-strong: var(--premium-pine);
  --accent-soft: #edf5ef;
  --line: var(--premium-line);
}

html {
  background: var(--premium-bg-mid) !important;
}

* {
  letter-spacing: 0 !important;
}

body {
  color: var(--premium-ink) !important;
  background:
    linear-gradient(132deg, transparent 0 11%, rgba(201, 129, 38, 0.12) 11% 13%, transparent 13% 42%, rgba(47, 111, 208, 0.075) 42% 45%, transparent 45% 100%),
    linear-gradient(48deg, transparent 0 58%, rgba(102, 88, 217, 0.06) 58% 61%, transparent 61% 100%),
    repeating-linear-gradient(90deg, rgba(23, 63, 54, 0.045) 0 1px, transparent 1px 38px),
    repeating-linear-gradient(0deg, rgba(23, 63, 54, 0.032) 0 1px, transparent 1px 38px),
    linear-gradient(180deg, var(--premium-bg-top) 0%, var(--premium-bg-mid) 44%, var(--premium-bg-low) 100%) !important;
  background-attachment: fixed !important;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(118deg, transparent 0 31%, rgba(255, 255, 255, 0.42) 31% 39%, transparent 39% 57%, rgba(47, 111, 208, 0.08) 57% 59%, transparent 59% 100%),
    linear-gradient(62deg, transparent 0 70%, rgba(201, 129, 38, 0.10) 70% 73%, transparent 73%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.52), transparent 360px) !important;
}

.app-shell,
.main-shell,
.content,
.main-shell > .content {
  background: transparent !important;
}

.main-shell {
  position: relative;
  isolation: isolate;
}

.main-shell::before {
  content: "";
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 280px;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(140deg, rgba(255,255,255,0.66) 0 12%, transparent 12% 45%, rgba(23,63,54,0.065) 45% 50%, transparent 50%),
    linear-gradient(34deg, transparent 0 62%, rgba(201,129,38,0.09) 62% 66%, transparent 66%),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.36) 0 1px, transparent 1px 76px),
    linear-gradient(180deg, rgba(255, 255, 255, 0.38), transparent 420px) !important;
}

.main-shell::after {
  content: "";
  position: fixed;
  top: 72px;
  right: 22px;
  width: min(520px, 36vw);
  height: 210px;
  z-index: -1;
  pointer-events: none;
  opacity: 0.42;
  background:
    linear-gradient(135deg, transparent 0 22%, rgba(255,255,255,0.62) 22% 39%, transparent 39%),
    linear-gradient(45deg, transparent 0 52%, rgba(201,129,38,0.20) 52% 54%, transparent 54%),
    linear-gradient(90deg, rgba(47,111,208,0.14), transparent 68%);
  clip-path: polygon(12% 0, 100% 0, 82% 100%, 0 100%);
}

.main-shell > .topbar {
  background: linear-gradient(90deg, rgba(255, 253, 246, 0.92) 0%, rgba(255,255,255,.94) 52%, rgba(237,246,241,.90) 100%) !important;
  border-bottom: 1px solid rgba(179, 190, 181, 0.78) !important;
  box-shadow: 0 10px 24px rgba(25, 45, 38, 0.06) !important;
  backdrop-filter: blur(16px);
}

.main-shell > .topbar h1,
.ed-page-header h1,
.page-header-title,
.oc-title,
.occ-title,
.pc-command h2,
.tc-command h2,
.stc-command h2,
.manual-data-hero h2,
.import-center-header h1 {
  color: #17211d !important;
  font-weight: 880 !important;
}

.main-shell > .topbar p,
.ed-page-header p,
.page-header-desc,
.oc-subtitle,
.pc-lede,
.tc-lede,
.stc-lede,
.manual-data-hero p {
  color: var(--premium-muted) !important;
}

.app-shell > .sidebar,
body .app-shell > aside.sidebar {
  position: sticky !important;
  overflow-x: hidden !important;
  background:
    linear-gradient(160deg, rgba(232, 164, 74, 0.16) 0 12%, transparent 12% 52%, rgba(75, 104, 171, 0.16) 52% 68%, transparent 68%),
    linear-gradient(180deg, #102e35 0%, #123b35 36%, #263f37 68%, #182c34 100%) !important;
  border-right: 1px solid rgba(224, 196, 132, 0.18) !important;
  box-shadow: inset -1px 0 rgba(255, 255, 255, 0.10), 14px 0 34px rgba(16, 35, 31, 0.18) !important;
}

.app-shell > .sidebar::before,
body .app-shell > aside.sidebar::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(232, 164, 74, 0.34) 0 3px, transparent 3px 100%),
    linear-gradient(128deg, transparent 0 34%, rgba(255,255,255,0.075) 34% 43%, transparent 43% 100%),
    repeating-linear-gradient(0deg, rgba(255,255,255,0.035) 0 1px, transparent 1px 42px);
}

.app-shell > .sidebar > *,
body .app-shell > aside.sidebar > * {
  position: relative;
  z-index: 1;
}

.brand {
  border-bottom-color: rgba(224, 196, 132, 0.22) !important;
}

.brand-mark {
  background: linear-gradient(135deg, #e5a24a 0%, #38a78c 58%, #1c5c64 100%) !important;
  color: #ffffff !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.46), 0 14px 28px rgba(0, 0, 0, 0.22) !important;
}

.brand-title {
  color: #fffaf0 !important;
}

.brand-subtitle,
.side-section-title,
.sidebar details.side-section > summary {
  color: rgba(242, 230, 196, 0.72) !important;
}

.side-nav a,
.sidebar details.side-subsection > summary {
  color: rgba(245, 252, 248, 0.88) !important;
  border-radius: var(--premium-radius) !important;
  border-color: transparent !important;
}

.side-nav a::before {
  box-shadow: 0 0 13px rgba(255,255,255,.18) !important;
}

.side-nav a:nth-child(6n+1)::before { background: var(--premium-amber) !important; }
.side-nav a:nth-child(6n+2)::before { background: var(--premium-blue) !important; }
.side-nav a:nth-child(6n+3)::before { background: var(--premium-indigo) !important; }
.side-nav a:nth-child(6n+4)::before { background: var(--premium-coral) !important; }
.side-nav a:nth-child(6n+5)::before { background: var(--premium-green) !important; }
.side-nav a:nth-child(6n+6)::before { background: var(--premium-slate) !important; }

.side-nav a:hover,
.sidebar details.side-subsection > summary:hover {
  background: rgba(255, 255, 255, 0.10) !important;
  border-color: rgba(224, 196, 132, 0.18) !important;
}

.side-nav a.primary-link,
.side-nav a.active,
.side-nav .active > a {
  background: linear-gradient(90deg, rgba(201, 129, 38, 0.92), rgba(63, 122, 100, 0.88)) !important;
  border-color: rgba(255, 233, 176, 0.42) !important;
  color: #ffffff !important;
  box-shadow: inset 3px 0 rgba(255, 244, 213, 0.88), 0 12px 24px rgba(20, 42, 36, 0.30) !important;
}

body .page-header,
body .card,
body .card-link,
body .home-panel,
body .home-module-card,
body .home-source-card,
body .home-status-card,
body .table-panel,
body .data-table-wrapper,
body .executive-rank-panel,
body .ed-board-card,
body .ed-kpi-card,
body .ed-ai-strip,
body .ed-store-info-card,
body .pc-command,
body .pc-readiness,
body .pc-summary,
body .pc-toolbar,
body .pc-main,
body .pc-detail,
body .pc-card,
body .pc-panel,
body .tc-command,
body .tc-filter-bar,
body .tc-panel,
body .tc-detail-card,
body .tc-summary-card,
body .stc-command,
body .stc-panel,
body .stc-filter-bar,
body .stc-summary-card,
body .occ-card,
body .occ-panel,
body .occ-card-link,
body .occ-item,
body .manual-data-hero,
body .manual-status-card,
body .manual-action-card,
body .manual-info-card,
body .import-center-header,
body .import-status-tile,
body .import-action-card,
body .import-info-card,
body .store-home-hero,
body .store-home-section,
body .store-home-field {
  border-color: var(--premium-line) !important;
  border-radius: var(--premium-radius) !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 253, 247, 0.91)) !important;
  box-shadow: var(--premium-shadow-soft) !important;
}

body .page-header,
body .ed-board-card,
body .ed-kpi-card,
body .pc-command,
body .tc-command,
body .stc-command,
body .manual-data-hero,
body .import-center-header,
body .store-home-hero {
  position: relative;
  overflow: hidden;
}

body .page-header::after,
body .pc-command::after,
body .tc-command::after,
body .stc-command::after,
body .manual-data-hero::after,
body .import-center-header::after,
body .store-home-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(124deg, transparent 0 52%, rgba(201, 129, 38, 0.075) 52% 56%, transparent 56%),
    linear-gradient(36deg, transparent 0 70%, rgba(47, 111, 208, 0.055) 70% 77%, transparent 77%);
}

body .page-header > *,
body .pc-command > *,
body .tc-command > *,
body .stc-command > *,
body .manual-data-hero > *,
body .import-center-header > *,
body .store-home-hero > * {
  position: relative;
  z-index: 1;
}

body .ed-board-head,
body .pc-panel-head,
body .tc-panel-head,
body .stc-panel-head,
body .oc-card-head,
body .data-table-wrapper-head,
body .table-panel-head {
  border-bottom-color: rgba(176, 190, 181, 0.66) !important;
  background: linear-gradient(180deg, rgba(255, 253, 247, 0.98), rgba(241, 247, 242, 0.92)) !important;
}

button,
.button,
a.button,
button[type="submit"],
.ed-icon-button,
.ed-link-button,
.ed-range-switch button,
.pc-toolbar button,
.tc-filter-bar button,
.stc-filter-bar button,
.manual-upload-actions button,
.occ-action-btn,
.pc-button-solid {
  border-radius: var(--premium-radius) !important;
  border-color: #2f6e5b !important;
  background: linear-gradient(180deg, #3f7a64 0%, #1f5147 100%) !important;
  color: #ffffff !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.22), 0 10px 20px rgba(25, 58, 50, 0.16) !important;
  font-weight: 850 !important;
}

button:hover,
.button:hover,
a.button:hover,
button[type="submit"]:hover,
.ed-icon-button:hover,
.ed-link-button:hover,
.ed-range-switch button:hover,
.pc-toolbar button:hover,
.tc-filter-bar button:hover,
.stc-filter-bar button:hover,
.manual-upload-actions button:hover,
.occ-action-btn:hover {
  filter: none !important;
  transform: translateY(-1px);
  border-color: #193e36 !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.20), 0 13px 24px rgba(25, 58, 50, 0.20) !important;
}

:where(.button.ghost, a.button.ghost, .button.secondary, button.secondary, .pc-button-outline, .filter-bar a.button.ghost, .ed-filter-pill) {
  border-color: rgba(142, 158, 149, 0.82) !important;
  background: linear-gradient(180deg, #ffffff, #f5f6f2) !important;
  color: var(--premium-pine) !important;
  box-shadow: 0 5px 12px rgba(25, 45, 38, 0.06) !important;
}

:where(.ed-header-actions, .executive-context-actions, .manual-data-hero-actions, .pc-command-actions, .tc-command-actions, .stc-command-actions, .occ-item-actions, .rank-row-actions, .actions)
  > :where(button, .button, a.button):nth-child(2n):not(.ghost):not(.secondary):not([disabled]) {
  border-color: #285ca9 !important;
  background: linear-gradient(180deg, #477ed9 0%, #2f5fa8 100%) !important;
}

:where(.ed-header-actions, .executive-context-actions, .manual-data-hero-actions, .pc-command-actions, .tc-command-actions, .stc-command-actions, .occ-item-actions, .rank-row-actions, .actions)
  > :where(button, .button, a.button):nth-child(3n):not(.ghost):not(.secondary):not([disabled]) {
  border-color: #a8641e !important;
  background: linear-gradient(180deg, #d79b46 0%, #a96b27 100%) !important;
}

:where(button.warn, .button.warn) {
  border-color: #ad6d1d !important;
  background: linear-gradient(180deg, #dfa64d, #a96b27) !important;
}

:where(button.danger, .button.danger) {
  border-color: #a73b32 !important;
  background: linear-gradient(180deg, #d66b5a, #aa4036) !important;
}

:where(button[disabled], .button[disabled], .button.disabled, .occ-action-btn[disabled]) {
  transform: none !important;
  border-color: #c9d1cc !important;
  background: #e8ece8 !important;
  color: #7a8580 !important;
  box-shadow: none !important;
}

.ed-kpi-card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 249, 237, 0.86)) !important;
  min-height: 108px !important;
}

.ed-kpi-card:nth-child(1) { box-shadow: inset 0 3px #c98126, var(--premium-shadow-soft) !important; }
.ed-kpi-card:nth-child(2) { box-shadow: inset 0 3px #2f6fd0, var(--premium-shadow-soft) !important; }
.ed-kpi-card:nth-child(3) { box-shadow: inset 0 3px #6658d9, var(--premium-shadow-soft) !important; }
.ed-kpi-card:nth-child(4) { box-shadow: inset 0 3px #c95645, var(--premium-shadow-soft) !important; }
.ed-kpi-card:nth-child(5) { box-shadow: inset 0 3px #23724f, var(--premium-shadow-soft) !important; }
.ed-kpi-card:nth-child(6) { box-shadow: inset 0 3px #8b6f2d, var(--premium-shadow-soft) !important; }

.ed-kpi-icon,
.home-status-icon,
.home-module-icon,
.manual-status-icon,
.manual-action-icon,
.tc-summary-icon,
.stc-summary-icon,
.oc-stat-icon,
.occ-icon,
.quality-summary-icon,
.pc-kpi-icon,
.pc-brand-category-icon,
.import-action-icon {
  border-radius: 999px !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.74), 0 8px 16px rgba(25, 45, 38, 0.08) !important;
}

.ed-kpi-card:nth-child(1) .ed-kpi-icon,
.home-status-card:nth-child(1) .home-status-icon,
.home-module-card:nth-child(1) .home-module-icon {
  border-color: rgba(201, 129, 38, 0.34) !important;
  background: #fff3dc !important;
  color: #a8641e !important;
}

.ed-kpi-card:nth-child(2) .ed-kpi-icon,
.home-status-card:nth-child(2) .home-status-icon,
.home-module-card:nth-child(2) .home-module-icon {
  border-color: rgba(47, 111, 208, 0.30) !important;
  background: #edf5ff !important;
  color: #2f6fd0 !important;
}

.ed-kpi-card:nth-child(3) .ed-kpi-icon,
.home-status-card:nth-child(3) .home-status-icon,
.home-module-card:nth-child(3) .home-module-icon {
  border-color: rgba(102, 88, 217, 0.28) !important;
  background: #f1efff !important;
  color: #6658d9 !important;
}

.ed-kpi-card:nth-child(4) .ed-kpi-icon,
.home-status-card:nth-child(4) .home-status-icon,
.home-module-card:nth-child(4) .home-module-icon {
  border-color: rgba(201, 86, 69, 0.28) !important;
  background: #fff0ed !important;
  color: #c95645 !important;
}

.ed-kpi-card:nth-child(5) .ed-kpi-icon,
.home-status-card:nth-child(5) .home-status-icon,
.home-module-card:nth-child(5) .home-module-icon {
  border-color: rgba(35, 114, 79, 0.28) !important;
  background: #ecf7ef !important;
  color: #23724f !important;
}

.ed-kpi-card:nth-child(6) .ed-kpi-icon,
.home-status-card:nth-child(6) .home-status-icon,
.home-module-card:nth-child(6) .home-module-icon {
  border-color: rgba(139, 111, 45, 0.28) !important;
  background: #f8f0d9 !important;
  color: #8b6f2d !important;
}

.tc-summary-card:nth-child(1),
.stc-summary-card:nth-child(1),
.manual-status-card:nth-child(1),
.import-status-tile:nth-child(1),
.pc-kpi-card:nth-child(1),
.oc-kpi:nth-child(1) {
  box-shadow: inset 0 3px #2f6fd0, var(--premium-shadow-soft) !important;
}

.tc-summary-card:nth-child(2),
.stc-summary-card:nth-child(2),
.manual-status-card:nth-child(2),
.import-status-tile:nth-child(2),
.pc-kpi-card:nth-child(2),
.oc-kpi:nth-child(2) {
  box-shadow: inset 0 3px #c98126, var(--premium-shadow-soft) !important;
}

.tc-summary-card:nth-child(3),
.stc-summary-card:nth-child(3),
.manual-status-card:nth-child(3),
.import-status-tile:nth-child(3),
.pc-kpi-card:nth-child(3),
.oc-kpi:nth-child(3) {
  box-shadow: inset 0 3px #6658d9, var(--premium-shadow-soft) !important;
}

.tc-summary-card:nth-child(4),
.stc-summary-card:nth-child(4),
.manual-status-card:nth-child(4),
.import-status-tile:nth-child(4),
.pc-kpi-card:nth-child(4),
.oc-kpi:nth-child(4) {
  box-shadow: inset 0 3px #23724f, var(--premium-shadow-soft) !important;
}

.data-table th,
.executive-rank-table thead th,
.ed-store-table thead th,
.executive-period-table thead th {
  background: linear-gradient(180deg, #f6f1e4, #e8f0eb) !important;
  color: #20372f !important;
  border-bottom-color: rgba(130, 151, 141, 0.72) !important;
}

.data-table tbody tr:hover td,
.executive-rank-table tr:hover td,
.ed-store-table tbody tr:hover td,
.executive-period-table tbody tr:hover td {
  background: #fff8ea !important;
}

.badge.good,
.status-pill.good,
.delta-pill.good {
  background: #eaf6ed !important;
  border-color: #b7d7be !important;
  color: #23724f !important;
}

.badge.warn,
.status-pill.warn,
.delta-pill.warn {
  background: #fff3dc !important;
  border-color: #e7c57e !important;
  color: #9a5a18 !important;
}

.badge.bad,
.status-pill.bad,
.delta-pill.bad {
  background: #fff0ed !important;
  border-color: #e5b3aa !important;
  color: #a73b32 !important;
}

.level-tag.s,
.ed-grade-s,
.store-home-grade-tag.grade-s,
.pkg-grade-s {
  background: linear-gradient(180deg, #df6558, #bd3b34) !important;
  border-color: #a52f2b !important;
  color: #ffffff !important;
}

.level-tag.a,
.ed-grade-a,
.store-home-grade-tag.grade-a,
.pkg-grade-a {
  background: linear-gradient(180deg, #e3a64e, #b97522) !important;
  border-color: #a8641e !important;
  color: #ffffff !important;
}

.level-tag.b,
.ed-grade-b,
.store-home-grade-tag.grade-b,
.pkg-grade-b {
  background: linear-gradient(180deg, #5790e9, #2f6fd0) !important;
  border-color: #275ea9 !important;
  color: #ffffff !important;
}

.metric-bar-fill,
.mini-bar,
.rank-metric-bar span,
.finance-waterfall-fill {
  background: linear-gradient(90deg, #3f7a64, #c98126) !important;
}

.executive-store-link,
.ed-board-head a,
.ed-legacy-nav a,
.store-link,
a[href^="/store/"] {
  color: #245c4d !important;
  text-decoration-color: rgba(201, 129, 38, 0.44) !important;
}

.executive-store-link:hover,
.store-link:hover,
a[href^="/store/"]:hover {
  color: #a8641e !important;
}

.login-card,
.auth-card,
.mobile-card {
  background: rgba(255, 255, 255, 0.94) !important;
  border-color: var(--premium-line) !important;
  box-shadow: var(--premium-shadow) !important;
}

@media (max-width: 860px) {
  .main-shell::before,
  .main-shell::after {
    left: 0;
  }
}

/* Reference screenshot restore: deep teal sidebar, pale mint canvas, colored KPI cards. */
:root {
  --premium-bg-top: #f4faf8;
  --premium-bg-mid: #edf5f2;
  --premium-bg-low: #e8f1ed;
  --premium-surface: rgba(255, 255, 255, 0.96);
  --premium-surface-solid: #ffffff;
  --premium-surface-warm: #fbfdfc;
  --premium-ink: #102728;
  --premium-muted: #687385;
  --premium-line: rgba(207, 222, 217, 0.92);
  --premium-line-strong: rgba(159, 191, 184, 0.86);
  --premium-pine: #113b35;
  --premium-pine-deep: #0d302c;
  --premium-sage: #008f84;
  --premium-blue: #2f6fd0;
  --premium-indigo: #6658d9;
  --premium-amber: #c98126;
  --premium-coral: #c95645;
  --premium-green: #008f84;
  --premium-shadow: 0 10px 24px rgba(16, 39, 40, 0.065);
  --premium-shadow-soft: 0 8px 20px rgba(15, 23, 42, 0.045);
  --accent: #008f84;
  --accent-strong: #0b5f59;
  --accent-soft: #eefbf8;
  --line: #dce8e6;
}

html {
  background: #edf5f2 !important;
}

body {
  background:
    linear-gradient(132deg, transparent 0 12%, rgba(25, 92, 82, 0.060) 12% 14%, transparent 14% 43%, rgba(47, 111, 208, 0.035) 43% 45%, transparent 45% 100%),
    linear-gradient(48deg, transparent 0 58%, rgba(112, 151, 135, 0.050) 58% 61%, transparent 61% 100%),
    repeating-linear-gradient(90deg, rgba(23, 63, 54, 0.035) 0 1px, transparent 1px 38px),
    repeating-linear-gradient(0deg, rgba(23, 63, 54, 0.026) 0 1px, transparent 1px 38px),
    linear-gradient(180deg, #f4faf8 0%, #edf5f2 44%, #e8f1ed 100%) !important;
  color: var(--premium-ink) !important;
}

body::before {
  background:
    linear-gradient(118deg, transparent 0 31%, rgba(255, 255, 255, 0.42) 31% 39%, transparent 39% 57%, rgba(0, 143, 132, 0.055) 57% 59%, transparent 59% 100%),
    linear-gradient(62deg, transparent 0 70%, rgba(142, 173, 161, 0.070) 70% 73%, transparent 73%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.54), transparent 360px) !important;
}

.main-shell {
  background: linear-gradient(180deg, rgba(255,255,255,.20) 0%, rgba(255,255,255,0) 240px) !important;
}

.main-shell::before {
  background:
    linear-gradient(140deg, rgba(255,255,255,0.66) 0 12%, transparent 12% 45%, rgba(35, 104, 90, 0.052) 45% 50%, transparent 50%),
    linear-gradient(34deg, transparent 0 62%, rgba(47, 111, 208, 0.040) 62% 66%, transparent 66%),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.34) 0 1px, transparent 1px 76px),
    linear-gradient(180deg, rgba(255, 255, 255, 0.36), transparent 420px) !important;
}

.main-shell::after {
  opacity: 0.22 !important;
  background:
    linear-gradient(135deg, transparent 0 22%, rgba(255,255,255,0.62) 22% 39%, transparent 39%),
    linear-gradient(45deg, transparent 0 52%, rgba(0,143,132,0.095) 52% 54%, transparent 54%),
    linear-gradient(90deg, rgba(47,111,208,0.070), transparent 68%) !important;
}

.main-shell > .topbar {
  background: linear-gradient(90deg, rgba(237,249,244,.98) 0%, rgba(255,255,255,.98) 52%, rgba(231,246,241,.96) 100%) !important;
  border-bottom: 1px solid #d7e7e2 !important;
  box-shadow: 0 8px 22px rgba(21,78,72,.045) !important;
}

.app-shell > .sidebar,
body .app-shell > aside.sidebar {
  background: linear-gradient(180deg, #113b35 0%, #0d302c 58%, #172f2c 100%) !important;
  border-right: 1px solid rgba(255,255,255,.08) !important;
  box-shadow: inset -1px 0 rgba(255,255,255,.08), 10px 0 24px rgba(9,31,28,.10) !important;
}

.app-shell > .sidebar::before,
body .app-shell > aside.sidebar::before {
  background:
    linear-gradient(128deg, transparent 0 34%, rgba(255,255,255,0.055) 34% 43%, transparent 43% 100%),
    repeating-linear-gradient(0deg, rgba(255,255,255,0.026) 0 1px, transparent 1px 42px) !important;
}

.brand {
  border-bottom-color: rgba(255,255,255,.14) !important;
}

.brand-mark {
  background: linear-gradient(135deg, #33d6c2, #0f9a8e) !important;
  color: #003f43 !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.18) !important;
}

.brand-title {
  color: #ffffff !important;
}

.brand-subtitle,
.side-section-title,
.sidebar details.side-section > summary {
  color: #9ec7c1 !important;
}

.sidebar details.side-section > summary::after,
.sidebar details.side-subsection > summary::after {
  color: #c8e6e1 !important;
}

.side-nav a,
.sidebar details.side-subsection > summary {
  color: #ecfeff !important;
  background: transparent !important;
  border-color: transparent !important;
}

.sidebar details.side-subsection > summary {
  color: #d7f5ef !important;
  background: rgba(255,255,255,.06) !important;
  border-color: rgba(255,255,255,.06) !important;
}

.side-nav a::before {
  display: none !important;
  content: none !important;
}

.side-nav a:hover,
.sidebar details.side-subsection > summary:hover {
  background: rgba(255,255,255,.10) !important;
  border-color: rgba(255,255,255,.08) !important;
}

.side-nav a.primary-link,
.side-nav a.active,
.side-nav .active > a {
  background: linear-gradient(135deg, #008f84, #0aa99b) !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  border-color: rgba(167,243,208,.30) !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.14) !important;
}

.side-subnav {
  border-left-color: rgba(200,230,225,.20) !important;
}

body .page-header,
body .card,
body .card-link,
body .home-panel,
body .home-module-card,
body .home-source-card,
body .home-status-card,
body .table-panel,
body .data-table-wrapper,
body .executive-rank-panel,
body .ed-board-card,
body .ed-kpi-card,
body .ed-ai-strip,
body .ed-store-info-card,
body .pc-command,
body .pc-readiness,
body .pc-summary,
body .pc-toolbar,
body .pc-main,
body .pc-detail,
body .pc-card,
body .pc-panel,
body .tc-command,
body .tc-filter-bar,
body .tc-panel,
body .tc-detail-card,
body .tc-summary-card,
body .stc-command,
body .stc-panel,
body .stc-filter-bar,
body .stc-summary-card,
body .occ-card,
body .occ-panel,
body .occ-card-link,
body .occ-item,
body .manual-data-hero,
body .manual-status-card,
body .manual-action-card,
body .manual-info-card,
body .import-center-header,
body .import-status-tile,
body .import-action-card,
body .import-info-card,
body .store-home-hero,
body .store-home-section,
body .store-home-field {
  border-color: #dce8e6 !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.97), rgba(251, 253, 252, 0.93)) !important;
  box-shadow: var(--premium-shadow-soft) !important;
}

body .page-header::after,
body .pc-command::after,
body .tc-command::after,
body .stc-command::after,
body .manual-data-hero::after,
body .import-center-header::after,
body .store-home-hero::after {
  background:
    linear-gradient(124deg, transparent 0 52%, rgba(0, 143, 132, 0.050) 52% 56%, transparent 56%),
    linear-gradient(36deg, transparent 0 70%, rgba(47, 111, 208, 0.035) 70% 77%, transparent 77%) !important;
}

body .ed-board-head,
body .pc-panel-head,
body .tc-panel-head,
body .stc-panel-head,
body .oc-card-head,
body .data-table-wrapper-head,
body .table-panel-head {
  border-bottom-color: #d8e5e1 !important;
  background: linear-gradient(180deg, #ffffff 0%, #f3faf7 100%) !important;
}

button,
.button,
a.button,
button[type="submit"],
.ed-icon-button,
.ed-link-button,
.ed-range-switch button,
.pc-toolbar button,
.tc-filter-bar button,
.stc-filter-bar button,
.manual-upload-actions button,
.occ-action-btn,
.pc-button-solid {
  border-color: #0f6b61 !important;
  background: linear-gradient(180deg, #0f8277, #0f6b61) !important;
  color: #ffffff !important;
  box-shadow: 0 6px 14px rgba(15,107,97,.14) !important;
}

button:hover,
.button:hover,
a.button:hover,
button[type="submit"]:hover,
.ed-icon-button:hover,
.ed-link-button:hover,
.ed-range-switch button:hover,
.pc-toolbar button:hover,
.tc-filter-bar button:hover,
.stc-filter-bar button:hover,
.manual-upload-actions button:hover,
.occ-action-btn:hover {
  border-color: #0b5f59 !important;
  background: linear-gradient(180deg, #0f756c, #0b5f59) !important;
}

:where(.button.ghost, a.button.ghost, .button.secondary, button.secondary, .pc-button-outline, .filter-bar a.button.ghost, .ed-filter-pill) {
  border-color: #bfd9d5 !important;
  background: #f7fbfa !important;
  color: #0b5f59 !important;
  box-shadow: 0 4px 10px rgba(15,23,42,.04) !important;
}

:where(.button.ghost, a.button.ghost, .pc-button-outline, .filter-bar a.button.ghost, .ed-filter-pill):hover {
  background: #e7f4ef !important;
  border-color: #a8cec3 !important;
}

:where(.ed-header-actions, .executive-context-actions, .manual-data-hero-actions, .pc-command-actions, .tc-command-actions, .stc-command-actions, .occ-item-actions, .rank-row-actions, .actions)
  > :where(button, .button, a.button):nth-child(2n):not(.ghost):not(.secondary):not([disabled]) {
  border-color: #285ca9 !important;
  background: linear-gradient(180deg, #477ed9 0%, #2f5fa8 100%) !important;
}

:where(.ed-header-actions, .executive-context-actions, .manual-data-hero-actions, .pc-command-actions, .tc-command-actions, .stc-command-actions, .occ-item-actions, .rank-row-actions, .actions)
  > :where(button, .button, a.button):nth-child(3n):not(.ghost):not(.secondary):not([disabled]) {
  border-color: #0f6b61 !important;
  background: linear-gradient(180deg, #0f8277, #0f6b61) !important;
}

.ed-kpi-card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.97), rgba(251, 253, 252, 0.92)) !important;
}

.data-table th,
.executive-rank-table thead th,
.ed-store-table thead th,
.executive-period-table thead th,
th {
  background: #eef6f3 !important;
  color: #1f3438 !important;
  border-bottom-color: #d8e5e1 !important;
}

.data-table thead th:first-child,
.executive-rank-table thead th:nth-child(2),
.executive-rank-table thead th:last-child,
.executive-rank-table thead th:first-child {
  background: #e6f1ed !important;
}

.data-table tbody tr:hover td,
.executive-rank-table tr:hover td,
.ed-store-table tbody tr:hover td,
.executive-period-table tbody tr:hover td,
tr:hover td {
  background: #f7fbfa !important;
}

.metric-bar-fill,
.mini-bar,
.rank-metric-bar span,
.finance-waterfall-fill {
  background: linear-gradient(90deg, #008f84, #6ee7dc) !important;
}

.executive-store-link,
.ed-board-head a,
.ed-legacy-nav a,
.store-link,
a[href^="/store/"] {
  color: #0b5f59 !important;
  text-decoration-color: rgba(0, 143, 132, 0.36) !important;
}

.executive-store-link:hover,
.store-link:hover,
a[href^="/store/"]:hover {
  color: #008f84 !important;
}

.app-shell {
  grid-template-columns: 250px minmax(0, 1fr) !important;
}

.main-shell::before {
  left: 250px !important;
}

.app-shell > .sidebar,
body .app-shell > aside.sidebar {
  width: 250px !important;
  min-width: 250px !important;
  padding: 20px 14px !important;
  background: linear-gradient(180deg, #123b35 0%, #11362f 52%, #1a342d 100%) !important;
}

.app-shell > .sidebar::before,
body .app-shell > aside.sidebar::before {
  display: none !important;
  content: none !important;
  background: none !important;
}

.brand {
  gap: 10px !important;
  padding: 4px 8px 18px !important;
  margin-bottom: 14px !important;
}

.brand-mark {
  width: 38px !important;
  height: 38px !important;
  border-radius: 10px !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.18) !important;
  flex: 0 0 38px !important;
}

.brand-mark img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: inherit !important;
}

.brand-title {
  font-size: 16px !important;
  line-height: 1.25 !important;
}

.brand-subtitle {
  color: #c8e6e1 !important;
  font-size: 12px !important;
  margin-top: 4px !important;
}

.sidebar details.side-section {
  margin: 14px 0 !important;
}

.sidebar details.side-section > summary,
.side-section-title {
  margin: 0 8px 8px !important;
  font-size: 12px !important;
  letter-spacing: 0 !important;
  font-weight: 800 !important;
}

.side-nav {
  gap: 4px !important;
}

.side-nav a,
.sidebar details.side-subsection > summary {
  min-height: 38px !important;
  padding: 8px 10px !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  color: #ecfeff !important;
}

.sidebar details.side-subsection > summary {
  margin: 4px 4px 2px !important;
  background: rgba(255, 255, 255, 0.075) !important;
  border-color: rgba(255, 255, 255, 0.085) !important;
  box-shadow: none !important;
}

.sidebar .side-subnav {
  margin-left: 10px !important;
  padding-left: 8px !important;
  border-left: 1px solid rgba(200,230,225,.20) !important;
}

.sidebar .side-subnav a {
  min-height: 34px !important;
  padding: 7px 9px !important;
  font-size: 13px !important;
}

.side-nav a.primary-link,
.side-nav a.active,
.side-nav .active > a {
  background: rgba(0, 143, 132, 0.28) !important;
  border: 1px solid rgba(69, 219, 201, 0.45) !important;
  box-shadow: inset 3px 0 #33d6c2 !important;
  color: #ffffff !important;
}

.sidebar details.side-subsection[open] > summary {
  background: rgba(255, 255, 255, 0.095) !important;
  border-color: rgba(200, 230, 225, 0.18) !important;
}

.side-nav a:hover,
.sidebar details.side-subsection > summary:hover {
  background: rgba(255,255,255,.10) !important;
  border-color: rgba(200,230,225,.16) !important;
  box-shadow: none !important;
}

@media (max-width: 860px) {
  .app-shell {
    grid-template-columns: 1fr !important;
  }
  .app-shell > .sidebar,
  body .app-shell > aside.sidebar {
    width: auto !important;
    min-width: 0 !important;
  }
  .main-shell::before {
    left: 0 !important;
  }
}

/* Tech green refresh: lighter blue-green tone, replacing the heavier ink-green sidebar. */
:root {
  --premium-bg-top: #f2fbfb;
  --premium-bg-mid: #e8f6f4;
  --premium-bg-low: #edf8f5;
  --premium-ink: #0f2528;
  --premium-muted: #5f7280;
  --premium-pine: #005a5a;
  --premium-pine-deep: #003f4a;
  --premium-sage: #00a99a;
  --premium-green: #00a99a;
  --accent: #009c90;
  --accent-strong: #00796f;
  --accent-soft: #e8fbf7;
}

body {
  background:
    linear-gradient(132deg, transparent 0 12%, rgba(0, 169, 154, 0.070) 12% 14%, transparent 14% 43%, rgba(45, 126, 220, 0.045) 43% 45%, transparent 45% 100%),
    linear-gradient(48deg, transparent 0 58%, rgba(42, 196, 180, 0.052) 58% 61%, transparent 61% 100%),
    repeating-linear-gradient(90deg, rgba(0, 126, 124, 0.035) 0 1px, transparent 1px 38px),
    repeating-linear-gradient(0deg, rgba(0, 126, 124, 0.026) 0 1px, transparent 1px 38px),
    linear-gradient(180deg, #f2fbfb 0%, #e8f6f4 44%, #edf8f5 100%) !important;
}

body::before {
  background:
    linear-gradient(118deg, transparent 0 31%, rgba(255, 255, 255, 0.46) 31% 39%, transparent 39% 57%, rgba(0, 169, 154, 0.060) 57% 59%, transparent 59% 100%),
    linear-gradient(62deg, transparent 0 70%, rgba(45, 126, 220, 0.050) 70% 73%, transparent 73%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.58), transparent 360px) !important;
}

.main-shell > .topbar {
  background: linear-gradient(90deg, rgba(234, 252, 249, 0.98) 0%, rgba(255,255,255,.98) 52%, rgba(229, 247, 249, 0.96) 100%) !important;
  border-bottom-color: rgba(75, 193, 184, 0.30) !important;
}

.app-shell > .sidebar,
body .app-shell > aside.sidebar {
  background:
    radial-gradient(circle at 22% 0%, rgba(81, 232, 216, 0.22), transparent 30%),
    linear-gradient(180deg, #004d5b 0%, #00645f 48%, #064558 100%) !important;
  border-right: 1px solid rgba(94, 234, 212, 0.24) !important;
  box-shadow: inset -1px 0 rgba(255,255,255,.11), 12px 0 28px rgba(0, 67, 80, 0.14) !important;
}

.brand {
  border-bottom-color: rgba(166, 245, 232, 0.24) !important;
}

.brand-title {
  color: #f7fffd !important;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.10);
}

.brand-subtitle,
.side-section-title,
.sidebar details.side-section > summary {
  color: rgba(199, 252, 242, 0.82) !important;
}

.sidebar details.side-subsection > summary {
  background: rgba(94, 234, 212, 0.13) !important;
  border-color: rgba(166, 245, 232, 0.18) !important;
}

.side-nav a,
.sidebar details.side-subsection > summary {
  color: #effffd !important;
}

.side-nav a.primary-link,
.side-nav a.active,
.side-nav .active > a {
  background: linear-gradient(135deg, rgba(0, 184, 169, 0.84), rgba(0, 142, 175, 0.76)) !important;
  border-color: rgba(166, 245, 232, 0.62) !important;
  box-shadow: inset 3px 0 #7cf7e8, 0 10px 24px rgba(0, 129, 145, 0.22) !important;
}

.side-nav a:hover,
.sidebar details.side-subsection > summary:hover {
  background: rgba(94, 234, 212, 0.16) !important;
  border-color: rgba(166, 245, 232, 0.28) !important;
}

body .page-header,
body .card,
body .card-link,
body .home-panel,
body .home-module-card,
body .home-source-card,
body .home-status-card,
body .table-panel,
body .data-table-wrapper,
body .executive-rank-panel,
body .ed-board-card,
body .ed-kpi-card,
body .ed-ai-strip,
body .ed-store-info-card,
body .pc-command,
body .pc-readiness,
body .pc-summary,
body .pc-toolbar,
body .pc-main,
body .pc-detail,
body .pc-card,
body .pc-panel,
body .tc-command,
body .tc-filter-bar,
body .tc-panel,
body .tc-detail-card,
body .tc-summary-card,
body .stc-command,
body .stc-panel,
body .stc-filter-bar,
body .stc-summary-card,
body .occ-card,
body .occ-panel,
body .occ-card-link,
body .occ-item,
body .manual-data-hero,
body .manual-status-card,
body .manual-action-card,
body .manual-info-card,
body .import-center-header,
body .import-status-tile,
body .import-action-card,
body .import-info-card,
body .store-home-hero,
body .store-home-section,
body .store-home-field {
  border-color: rgba(183, 224, 220, 0.88) !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 254, 252, 0.94)) !important;
}

body .page-header::after,
body .pc-command::after,
body .tc-command::after,
body .stc-command::after,
body .manual-data-hero::after,
body .import-center-header::after,
body .store-home-hero::after {
  background:
    linear-gradient(124deg, transparent 0 52%, rgba(0, 169, 154, 0.055) 52% 56%, transparent 56%),
    linear-gradient(36deg, transparent 0 70%, rgba(45, 126, 220, 0.036) 70% 77%, transparent 77%) !important;
}

button,
.button,
a.button,
button[type="submit"],
.ed-icon-button,
.ed-link-button,
.ed-range-switch button,
.pc-toolbar button,
.tc-filter-bar button,
.stc-filter-bar button,
.manual-upload-actions button,
.occ-action-btn,
.pc-button-solid {
  border-color: #008b84 !important;
  background: linear-gradient(180deg, #00aa9c 0%, #008c86 100%) !important;
  box-shadow: 0 8px 18px rgba(0, 140, 134, 0.16) !important;
}

button:hover,
.button:hover,
a.button:hover,
button[type="submit"]:hover,
.ed-icon-button:hover,
.ed-link-button:hover,
.ed-range-switch button:hover,
.pc-toolbar button:hover,
.tc-filter-bar button:hover,
.stc-filter-bar button:hover,
.manual-upload-actions button:hover,
.occ-action-btn:hover {
  border-color: #006f72 !important;
  background: linear-gradient(180deg, #009c90 0%, #007978 100%) !important;
}

:where(.button.ghost, a.button.ghost, .button.secondary, button.secondary, .pc-button-outline, .filter-bar a.button.ghost, .ed-filter-pill) {
  border-color: rgba(91, 195, 187, 0.56) !important;
  background: #f4fffc !important;
  color: #00766f !important;
}

.data-table th,
.executive-rank-table thead th,
.ed-store-table thead th,
.executive-period-table thead th,
th {
  background: #e8f8f4 !important;
  color: #18383c !important;
}

.data-table thead th:first-child,
.executive-rank-table thead th:nth-child(2),
.executive-rank-table thead th:last-child,
.executive-rank-table thead th:first-child {
  background: #dcf2ee !important;
}

.metric-bar-fill,
.mini-bar,
.rank-metric-bar span,
.finance-waterfall-fill {
  background: linear-gradient(90deg, #00a99a, #42d4c7) !important;
}

.executive-store-link,
.ed-board-head a,
.ed-legacy-nav a,
.store-link,
a[href^="/store/"] {
  color: #00766f !important;
  text-decoration-color: rgba(0, 169, 154, 0.42) !important;
}

.executive-store-link:hover,
.store-link:hover,
a[href^="/store/"]:hover {
  color: #00a99a !important;
}

.decision-hero .hero-main,
.hero-main {
  border-color: rgba(0, 169, 154, 0.34) !important;
  background:
    radial-gradient(circle at 16% 0%, rgba(132, 255, 235, 0.24), transparent 34%),
    linear-gradient(135deg, #00a99a 0%, #008c9a 54%, #04748d 100%) !important;
  color: #f7fffd !important;
  box-shadow: 0 16px 32px rgba(0, 120, 130, 0.18) !important;
}

.decision-hero .hero-main .label,
.decision-hero .hero-main .small,
.decision-hero .hero-main .hero-title,
.decision-hero .hero-main .hero-value,
.hero-main .label,
.hero-main .small,
.hero-main .hero-title,
.hero-main .hero-value {
  color: #f7fffd !important;
}

.decision-hero .hero-main .small,
.hero-main .small {
  color: rgba(240, 255, 252, 0.86) !important;
}

.decision-hero .hero-side,
.hero-side {
  border-color: rgba(183, 224, 220, 0.90) !important;
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246,254,252,0.94)) !important;
}

/* Legacy layout floor: blue-cyan only. Final theme layers may refine it. */
.app-shell > .sidebar,
body .app-shell > aside.sidebar {
  width: 250px !important;
  min-width: 250px !important;
  padding: 20px 14px !important;
  background: linear-gradient(168deg, #2563eb 0%, #168eea 52%, #06a9d4 100%) !important;
  border-right: 1px solid rgba(191, 219, 254, 0.34) !important;
  box-shadow: inset -1px 0 rgba(255, 255, 255, 0.1), 10px 0 24px rgba(31, 91, 151, 0.18) !important;
}

.app-shell > .sidebar::before,
body .app-shell > aside.sidebar::before {
  display: none !important;
  content: none !important;
  background: none !important;
}

.brand {
  border-bottom-color: rgba(219, 234, 254, 0.24) !important;
}

.brand-title {
  color: #f5fffb !important;
  text-shadow: none !important;
}

.brand-subtitle {
  color: rgba(239, 248, 255, 0.86) !important;
}

.side-section-title,
.sidebar details.side-section > summary {
  color: #d9f2ff !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

.side-nav a,
.sidebar details.side-subsection > summary {
  color: #f4fbff !important;
  font-weight: 900 !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  box-shadow: none !important;
}

.sidebar details.side-subsection > summary {
  background: rgba(30, 97, 173, 0.48) !important;
  border-color: rgba(219, 234, 254, 0.2) !important;
}

.sidebar details.side-subsection[open] > summary {
  background: rgba(28, 94, 174, 0.66) !important;
  border-color: rgba(219, 234, 254, 0.3) !important;
}

.side-nav a.primary-link,
.side-nav a.active,
.side-nav .active > a {
  background: linear-gradient(135deg, #eff6ff 0%, #e6f8ff 100%) !important;
  border-color: rgba(191, 219, 254, 0.82) !important;
  color: #075985 !important;
  box-shadow: inset 3px 0 #38bdf8, 0 10px 22px rgba(31, 91, 151, 0.2) !important;
}

.side-nav a:hover,
.sidebar details.side-subsection > summary:hover {
  background: rgba(219, 234, 254, 0.2) !important;
  border-color: rgba(219, 234, 254, 0.3) !important;
}

.sidebar details.side-section > summary::after,
.sidebar details.side-subsection > summary::after {
  color: rgba(224, 242, 254, 0.9) !important;
}

.sidebar .side-subnav {
  border-left-color: rgba(219, 234, 254, 0.24) !important;
}

.sidebar .side-subnav a {
  color: #f4fbff !important;
}

body aside.sidebar .side-nav a.primary-link,
body aside.sidebar .side-nav a.active,
body aside.sidebar .side-nav .active > a,
html body .app-shell aside.sidebar .side-nav a.primary-link {
  background: linear-gradient(135deg, #eff6ff 0%, #e6f8ff 100%) !important;
  border-color: rgba(191, 219, 254, 0.82) !important;
  color: #075985 !important;
  box-shadow: inset 3px 0 #38bdf8, 0 10px 22px rgba(31, 91, 151, 0.2) !important;
}

@media (max-width: 860px) {
  .app-shell > .sidebar,
  body .app-shell > aside.sidebar {
    width: auto !important;
    min-width: 0 !important;
  }
}
