/* Shared brand contract. Loaded after module layouts so the palette stays consistent. */
@font-face {
  font-family: Inter;
  src: url('assets/fonts/InterVariable.woff2') format('woff2');
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
:root,
.workspace-page,.dashboard-page,.pos-page,.stock-page {
  --navy: #0A0F1A;
  --teal: #14D8B1;
  --text: #1F2937;
  --muted: #64748B;
  --border: #E7EDF3;
  --line: #E7EDF3;
  --green: #14D8B1;
  --control-radius: 8px;
  --panel-radius: 12px;
  color: var(--text);
  font-family: Inter, Arial, sans-serif;
}
body { font-family: Inter, Arial, sans-serif; line-height: 1.5; }
button,input,select,textarea { font-family: inherit; }
h1,h2,h3 { color: var(--navy); }
input,select,textarea,.button,button.primary { border-radius: var(--control-radius); }
.panel,.workspace-page .panel,.dashboard-page .panel,.stock-page .panel,.stock-metric {
  background: #FFFFFF;
  border-radius: var(--panel-radius);
}
.primary,.pos-page .primary,.stock-page .primary,.stock-actions>.primary,
.stock-manage .primary.wide,.workspace-page .primary,.dashboard-page .primary {
  background: var(--teal);
  color: var(--navy);
  border-color: transparent;
}
.primary:hover,.pos-page .primary:hover,.stock-page .primary:hover,
.stock-actions>.primary:hover,.workspace-page .primary:hover,.dashboard-page .primary:hover {
  background: #10C6A3;
  color: var(--navy);
}
input:focus,select:focus,textarea:focus,
.stock-page input:focus,.stock-page select:focus,
.workspace-page input:focus,.workspace-page select:focus,.workspace-page textarea:focus {
  border-color: #0A9E82;
  box-shadow: 0 0 0 3px #14D8B126;
}
a:focus-visible,button:focus-visible,summary:focus-visible,
.stock-page .table-wrap:focus-visible { outline: 3px solid #0A9E82; outline-offset: 3px; }
.teal,.pos-heading .teal,.badge { color: var(--teal); }
.suite-dot,.workspace-dot { background: var(--teal); box-shadow: 0 0 0 4px #14D8B112; }
.sidebar,.dashboard-page .sidebar,.welcome-banner,.dashboard-page .welcome-banner,
.cloud-status,.workspace-page .cloud-status,.metric-dark {
  background: var(--navy);
  border-color: var(--navy);
}
.welcome-banner h2,.dashboard-page .welcome-banner h2,.cloud-status h2,
.workspace-page .cloud-status h2,.auth-story h1 { color: #FFFFFF; }
.dashboard-page .auth-story { background: var(--navy); }
.dashboard-page .auth-form { background: #FFFFFF; }
.dashboard-page .auth-story .eyebrow,.dashboard-page .welcome-banner .badge { color: var(--teal); }
.dashboard-page .auth-story p,.dashboard-page .auth-story footer { color: #B8C5D6; }
.metric-dark { background: var(--navy); color: #FFFFFF; }
.metric-dark .metric-top,.metric-dark strong small,.metric-dark p { color: #B8C5D6; }
.metric-dark .metric-top svg { color: var(--teal); }
.sidebar nav a,.dashboard-page .sidebar nav a { color: #B8C5D6; }
.sidebar nav a.active,.dashboard-page .sidebar nav .active {
  color: var(--teal);
  background: #14D8B114;
  box-shadow: inset 2px 0 var(--teal);
}
.dashboard-page .sidebar nav .active>span { color: var(--teal); }
.sidebar .brand-caption,.dashboard-page .brand-caption,.workspace-label { color: #A7B6C9; }
.pos-tabs [aria-current],.workspace-page .suite-tabs a[aria-current] {
  color: var(--navy);
  border-bottom-color: var(--teal);
}
.stock-tabs [aria-current]:after { background: var(--teal); }
.stock-filters>.active { background: #14D8B112; border-color: #14D8B140; color: #087F69; }
.module-icon,.dashboard-page .module-icon,.number,.stock-icon,.create-summary-icon {
  color: #087F69;
  background: #EAFBF6;
}
.required { color: #087F69; }
/* One logo, fixed aspect ratio and safe area; no rotated or recolored variants. */
.logo,.logo.small,.auth-story .logo,
.banner-art .logo,.dashboard-page .banner-art .logo,
.suite-brand,.stock-brand,.pos-brand,.dashboard-brand,.dashboard-page .dashboard-brand {
  display: inline-block;
  flex-shrink: 0;
  border: 0;
  border-radius: 0;
  background: url('assets/o-logo.svg') center / contain no-repeat;
  width: 48px;
  height: auto;
  aspect-ratio: 245 / 249;
  font-size: 0;
  letter-spacing: 0;
  line-height: 0;
  transform: none;
  opacity: 1;
  filter: none;
}
.logo:after,.logo.small:after,.banner-art .logo:after,.dashboard-page .banner-art .logo:after { content: none; }
.suite-brand>span,.stock-brand>span,.pos-brand>span,.dashboard-brand>span { display: none; }
.auth-story .logo { width: 120px; }
.dashboard-page .dashboard-brand { width: 60px; }
.banner-art,.dashboard-page .banner-art { opacity: 1; }
.banner-art .logo,.dashboard-page .banner-art .logo { width: 132px; }
.dashboard-orbit { display: none; }
@media(max-width:760px) {
  .auth-story .logo { width: 88px; }
  .suite-brand,.stock-brand,.pos-brand { width: 44px; }
}
