/* A calmer navy-and-teal operations theme. Visual-only overrides. */
:root{
  color-scheme:light;
  --nx-forest:#17324d;
  --nx-forest-deep:#12263a;
  --nx-teal:#147d86;
  --nx-teal-soft:#e8f3f4;
  --nx-sage:#dce9ea;
  --nx-gold:#b9904d;
  --nx-ivory:#f5f7fa;
  --nx-white:#fff;
  --nx-card:#fff;
  --nx-text:#1d2c3a;
  --nx-muted:#647487;
  --nx-muted-2:#8997a5;
  --nx-line:#dce4ec;
  --nx-line-strong:#c8d4df;
  --nx-blue:#2876a4;
  --nx-blue-dark:#17324d;
  --nx-blue-soft:#eaf2f8;
  --nx-success:#24724f;
  --nx-success-bg:#eaf5ee;
  --nx-warning:#875b16;
  --nx-warning-bg:#fff5df;
  --nx-danger:#a43c36;
  --nx-danger-bg:#fff0ed;
  --nx-info:#285f79;
  --nx-info-bg:#eaf3f8;
  --nx-shadow:0 3px 12px rgba(28,54,78,.045);
  --nx-shadow-lg:0 12px 30px rgba(28,54,78,.11);
  --ink:#1d2c3a;
  --muted:#647487;
  --brand:#17324d;
  --brand2:#147d86;
  --accent:#b9904d;
  --bg:#f5f7fa;
  --line:#dce4ec;
  --primary:#147d86;
  --primary-dark:#17324d;
  --border:#dce4ec;
  --text:#1d2c3a;
  --surface:#fff;
  --surface-soft:#f8fafc;
  --shadow:0 3px 12px rgba(28,54,78,.045);
}

html,body,body.ops-ready{background:var(--nx-ivory)!important;color:var(--nx-text)}
body{line-height:1.55;-webkit-font-smoothing:antialiased}
body.ops-ready .main{background:transparent!important}

/* Navigation and page header */
#opsSidebar.ops-ui-sidebar,#opsSidebar.ops-ui-sidebar .ops-nav{
  background:linear-gradient(180deg,#142b42 0%,#17324d 58%,#23445f 100%)!important;
}
#opsSidebar.ops-ui-sidebar{border-right:1px solid rgba(19,48,73,.2)!important;box-shadow:5px 0 20px rgba(28,54,78,.08)!important}
#opsSidebar.ops-ui-sidebar .ops-ui-group-title{color:#d8e5ef!important}
#opsSidebar.ops-ui-sidebar .ops-ui-group-meta{color:#b6c9d9!important}
#opsSidebar.ops-ui-sidebar .ops-ui-search-label{color:#e0eaf2!important}
#opsSidebar.ops-ui-sidebar #opsUiNavSearch,#opsSidebar.ops-ui-sidebar #opsNavSearch{border-color:#ffffff38!important;background:#ffffff12!important}
#opsSidebar.ops-ui-sidebar .ops-nav button[data-ops-view]{min-height:42px!important;border-radius:10px!important}
#opsSidebar.ops-ui-sidebar .ops-nav button[data-ops-view]:hover{background:#ffffff12!important;border-left-color:var(--nx-gold)!important}
#opsSidebar.ops-ui-sidebar .ops-nav button[data-ops-view].active,
#opsSidebar.ops-ui-sidebar .ops-nav button[data-ops-view][aria-current="page"]{
  background:linear-gradient(105deg,#147d86,#236d88)!important;
  border-left-color:#e0bc73!important;box-shadow:0 5px 14px #102c4440!important;
}
#opsSidebar.ops-ui-sidebar .ops-side-foot{background:#102b4345!important;color:#dce8f1!important}
.topbar.ops-ui-topbar{background:rgba(255,255,255,.96)!important;border-bottom:1px solid var(--nx-line)!important;box-shadow:0 2px 8px rgba(28,54,78,.035)!important}
#opsUiWorkspace .ops-ui-breadcrumb{color:#6e7e76!important}
#opsUiWorkspace #opsUiPageTitle{color:#1d3448!important;letter-spacing:-.02em}

/* Clear, consistent surfaces */
.view:not(#dashboardView),#accountsLedgerView{color:var(--nx-text)}
.view h1,.view h2,.view h3,.view h4,#accountsLedgerView h1,#accountsLedgerView h2,#accountsLedgerView h3{color:#20384e!important;letter-spacing:-.018em}
.view p,.view .subtle,#accountsLedgerView .al-section-head p{color:var(--nx-muted)!important}
.view .card,.view .panel,.view .section,.view .widget,.view .form-card,
.view .modal-content,#accountsLedgerView .al-toolbar,#accountsLedgerView .al-section,
#accountsLedgerView .al-stat,#accountsLedgerView .al-cashbook-stat{
  border-color:var(--nx-line)!important;border-radius:16px!important;
  box-shadow:var(--nx-shadow)!important;
}
.view .card,.view .panel,.view .section,.view .widget,.view .form-card,#accountsLedgerView .al-stat{background:#fff!important}

/* Inputs are easier to scan, focus, and tap */
.view input:not([type=checkbox]):not([type=radio]):not([type=range]),
.view select,.view textarea,#accountsLedgerView input,#accountsLedgerView select,
#accountsLedgerView textarea{
  min-height:44px;border:1px solid var(--nx-line-strong)!important;border-radius:11px!important;
  background:#fff!important;color:var(--nx-text)!important;box-shadow:none!important;
}
.view input::placeholder,.view textarea::placeholder,#accountsLedgerView input::placeholder{color:#84918b!important;opacity:1}
.view input:focus-visible,.view select:focus-visible,.view textarea:focus-visible,
#accountsLedgerView input:focus-visible,#accountsLedgerView select:focus-visible,
#accountsLedgerView textarea:focus-visible{
  border-color:var(--nx-teal)!important;outline:3px solid rgba(20,125,134,.18)!important;outline-offset:1px;
}
button:focus-visible,.btn:focus-visible,a:focus-visible,[role=button]:focus-visible{
  outline:3px solid rgba(20,125,134,.34)!important;outline-offset:2px;
}

/* Predictable action hierarchy */
.view .btn-primary,.view button.btn-primary,#rgLayoutOverlay .btn-primary,
#accountsLedgerView .al-btn-primary,#accountsLedgerView button.primary{
  background:linear-gradient(135deg,#147d86,#17324d)!important;border-color:#147d86!important;
  color:#fff!important;box-shadow:0 3px 8px rgba(23,50,77,.16)!important;
}
.view .btn-primary:hover,.view button.btn-primary:hover,#rgLayoutOverlay .btn-primary:hover,
#accountsLedgerView .al-btn-primary:hover,#accountsLedgerView button.primary:hover{
  background:linear-gradient(135deg,#116b73,#12263a)!important;filter:none!important;
}
.view .btn-secondary,.view .btn-ghost,.view button.secondary,
#accountsLedgerView .al-btn-secondary,#accountsLedgerView button.secondary{
  background:#fff!important;border:1px solid var(--nx-line-strong)!important;color:#1d5870!important;
}
.view .btn-danger,#accountsLedgerView .al-btn-danger{background:var(--nx-danger-bg)!important;color:#963b35!important}
.view button,.view .btn,#accountsLedgerView button{min-height:40px;border-radius:10px;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease}

/* Calm tables with stable headings and readable row separation */
.view table,#accountsLedgerView table{border-color:var(--nx-line)!important}
.view thead th,#accountsLedgerView .al-table th{background:#edf3f8!important;color:#40566b!important;border-color:var(--nx-line)!important}
.view tbody td,#accountsLedgerView .al-table td{border-color:#e8edf2!important;color:#283a4b}
.view tbody tr:nth-child(even),#accountsLedgerView .al-table tbody tr:nth-child(even){background:#fafbfd!important}
.view tbody tr:hover,#accountsLedgerView .al-table tbody tr:hover{background:#eff5f8!important}
#accountsLedgerView .al-toolbar{background:#fff!important;padding:16px!important}
#accountsLedgerView .al-stat{padding:15px!important}
#accountsLedgerView .al-stat span,#accountsLedgerView .al-table th{letter-spacing:.045em}
#accountsLedgerView .al-stat strong,#accountsLedgerView .al-table td strong{color:#1b4560!important}
#accountsLedgerView .al-section-head{background:#fff!important;border-color:var(--nx-line)!important}
#accountsLedgerView .al-ledger-note{background:#edf4f7!important;color:#455e70!important;border:1px solid #dce7ed}

/* Status messages retain meaning without harsh full-width colour */
.message.error,.error-message,[role=alert].error{background:var(--nx-danger-bg)!important;color:#8d302b!important;border-color:#f0d4d0!important}
.message.success,.success-message{background:var(--nx-success-bg)!important;color:#245c43!important;border-color:#d5e9dc!important}
.message.warning,.warning-message{background:var(--nx-warning-bg)!important;color:#75521b!important;border-color:#f0e1b9!important}

/* A quieter, higher-contrast dashboard banner */
#dashboardView.ops-dashboard .ops-home-hero{background:linear-gradient(118deg,#17324d 0%,#176c79 62%,#557b92 100%)!important;box-shadow:0 12px 26px rgba(28,66,91,.16)!important}
#dashboardView.ops-dashboard .ops-home-copy p{color:#e0ebf2!important}

@media(max-width:820px){
  .ops-ready .main{padding:14px 12px 44px!important}
  #accountsLedgerView .al-head{align-items:flex-start;flex-wrap:wrap;gap:10px}
  #accountsLedgerView .al-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #accountsLedgerView .al-toolbar .al-field:last-of-type{grid-column:1/-1}
  #accountsLedgerView .al-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #accountsLedgerView .al-section-head{align-items:flex-start;flex-direction:column}
}
@media(max-width:520px){
  .ops-ready .main{padding:11px 10px 36px!important}
  .topbar.ops-ui-topbar{min-height:64px!important}
  #accountsLedgerView .al-toolbar{grid-template-columns:1fr!important;padding:12px!important}
  #accountsLedgerView .al-toolbar .al-field:last-of-type{grid-column:auto}
  #accountsLedgerView .al-summary{gap:8px!important}
  #accountsLedgerView .al-stat{min-width:0;padding:12px!important}
  #accountsLedgerView .al-stat strong{font-size:16px!important;overflow-wrap:anywhere}
  #accountsLedgerView .al-section{margin-top:13px!important}
  #accountsLedgerView .al-section-head{padding:13px!important}
  #accountsLedgerView .al-section-actions{width:100%}
  #accountsLedgerView .al-section-actions button{flex:1}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}

/* Separate menu groups from their submenu links with two coordinated navy shades. */
#opsSidebar.ops-ui-sidebar .ops-ui-group-title{
  background:#294a67!important;color:#f2f7fb!important;
  border:1px solid rgba(210,229,242,.12);box-shadow:inset 3px 0 #52738d;
}
#opsSidebar.ops-ui-sidebar .ops-ui-group-title:hover,
#opsSidebar.ops-ui-sidebar .ops-ui-group[open]>.ops-ui-group-title{
  background:#355a77!important;color:#fff!important;
}
#opsSidebar.ops-ui-sidebar .ops-ui-group-links{
  margin:3px 0 7px 7px;padding:5px 5px 6px 8px!important;
  background:#142c43;border:1px solid rgba(210,229,242,.09);border-radius:11px;
}
#opsSidebar.ops-ui-sidebar .ops-ui-group-links button[data-ops-view]{
  background:#1b3852!important;color:#d9e6ef!important;
  border:1px solid rgba(210,229,242,.06)!important;
}
#opsSidebar.ops-ui-sidebar .ops-ui-group-links button[data-ops-view]:hover{
  background:#294b66!important;color:#fff!important;
}
#opsSidebar.ops-ui-sidebar .ops-ui-group-links button[data-ops-view].active,
#opsSidebar.ops-ui-sidebar .ops-ui-group-links button[data-ops-view][aria-current="page"]{
  background:linear-gradient(105deg,#147d86,#236d88)!important;
  border-left-color:#e0bc73!important;color:#fff!important;
}
@keyframes nestinMenuIconNudge{
  0%{transform:translateY(0) rotate(0) scale(1)}
  45%{transform:translateY(-2px) rotate(-7deg) scale(1.12)}
  100%{transform:translateY(0) rotate(0) scale(1)}
}
#opsSidebar.ops-ui-sidebar .ops-ui-group-links button[data-ops-view] .ops-nav-icon svg{
  transform-origin:center;transition:transform .18s ease;
}
#opsSidebar.ops-ui-sidebar .ops-ui-group-links button[data-ops-view]:is(:hover,:focus-visible) .ops-nav-icon svg{
  animation:nestinMenuIconNudge .34s cubic-bezier(.2,.8,.3,1) both;
}
@media(prefers-reduced-motion:reduce){
  #opsSidebar.ops-ui-sidebar .ops-ui-group-links button[data-ops-view] .ops-nav-icon svg{animation:none!important;transition:none!important}
}
