/* MarżaBot — Obsidian Ledger workspaces.
   Deep visual treatment for every application screen outside the dashboard.
   Existing markup, IDs and JavaScript contracts remain unchanged. */

body.app-page {
  --ledger-paper: #e7ece6;
  --ledger-paper-raised: #f3f5f1;
  --ledger-paper-muted: #d6ddd5;
  --ledger-ink: #0b1510;
  --ledger-ink-muted: #536158;
  --ledger-mint: #59dfae;
  --ledger-mint-dark: #0e6d4b;
  --ledger-panel: #101714;
  --ledger-panel-raised: #141d19;
  --ledger-panel-soft: #18221d;
  --ledger-line: #29362f;
  --ledger-line-soft: #202c26;
  --ledger-danger: #ee8585;
  --ledger-danger-dark: #9e3038;
  --ledger-warning: #dfa04c;
  --ledger-blue: #84aef5;
  --ledger-ease: cubic-bezier(.22, 1, .36, 1);
}

/* Shared rhythm and motion ------------------------------------------------ */

.app-shell .page:not(#page-dashboard) {
  width: 100%;
  max-width: 1460px;
}

.app-shell .page:not(#page-dashboard).is-active {
  animation: ledger-page-enter 300ms var(--ledger-ease) both;
}

.app-shell .page:not(#page-dashboard).is-active > * {
  animation: ledger-section-enter 390ms var(--ledger-ease) both;
}

.app-shell .page:not(#page-dashboard).is-active > :nth-child(2) { animation-delay: 45ms; }
.app-shell .page:not(#page-dashboard).is-active > :nth-child(3) { animation-delay: 85ms; }
.app-shell .page:not(#page-dashboard).is-active > :nth-child(4) { animation-delay: 120ms; }

@keyframes ledger-page-enter {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes ledger-section-enter {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

.screen-masthead {
  min-height: 178px;
  margin-bottom: 14px;
  padding: clamp(27px, 3.5vw, 42px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 30px;
  border: 1px solid var(--ledger-line);
  border-radius: 3px;
  background: #0d1411;
}

.screen-masthead > div:first-child { min-width: 0; }

.screen-kicker {
  display: block;
  color: var(--ledger-mint);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.screen-masthead h2 {
  max-width: 860px;
  margin: 12px 0 10px;
  font-size: clamp(29px, 4vw, 49px);
  font-weight: 690;
  line-height: 1;
  letter-spacing: -.058em;
}

.screen-masthead p {
  max-width: 690px;
  margin: 0;
  color: #7d8a83;
  font-size: 11px;
  line-height: 1.6;
}

.screen-masthead-aside {
  min-width: 188px;
  padding: 19px 0 2px 24px;
  border-left: 1px solid var(--ledger-line);
}

.screen-masthead-aside :is(span, strong, small) { display: block; }
.screen-masthead-aside span {
  color: #66746c;
  font-size: 8px;
  font-weight: 760;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.screen-masthead-aside strong { margin-top: 9px; color: #dce5df; font-size: 14px; }
.screen-masthead-aside small { margin-top: 4px; color: #627068; font-size: 8px; }

.screen-masthead-compact {
  min-height: 150px;
  padding-block: 30px;
}

.screen-masthead-compact h2 {
  max-width: 900px;
  font-size: clamp(27px, 3.5vw, 43px);
}

.screen-step {
  align-self: center;
  padding: 7px 9px;
  border: 1px solid #33433b;
  border-radius: 3px;
  color: #819087;
  font-size: 8px;
  font-weight: 760;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.mobile-account-row { display: none; }

:is(
  #page-alerts,
  #page-integrations,
  #page-store,
  #page-import,
  #page-simulator,
  #page-report,
  #page-settings,
  #page-calculator
) :is(.button, .icon-button, .connection-card, .alert-item, .theme-card, .import-dropzone) {
  transition: transform 170ms var(--ledger-ease), opacity 170ms ease;
}

:is(
  #page-alerts,
  #page-integrations,
  #page-store,
  #page-import,
  #page-simulator,
  #page-report,
  #page-settings,
  #page-calculator
) :is(.button, .icon-button):hover:not(:disabled) {
  transform: translateY(-1px);
}

:is(
  #page-alerts,
  #page-integrations,
  #page-store,
  #page-import,
  #page-simulator,
  #page-report,
  #page-settings,
  #page-calculator
) :is(.button, .icon-button):active:not(:disabled) {
  transform: translateY(1px);
}

:is(
  #page-integrations,
  #page-store,
  #page-import,
  #page-simulator,
  #page-settings,
  #page-calculator
) :is(input, select) {
  border-radius: 6px;
  background: #0c1310;
  box-shadow: none;
}

:is(
  #page-integrations,
  #page-store,
  #page-import,
  #page-simulator,
  #page-settings,
  #page-calculator
) :is(input, select):focus {
  border-color: var(--ledger-mint);
  box-shadow: none;
}

:is(
  #page-alerts,
  #page-integrations,
  #page-store,
  #page-import,
  #page-simulator,
  #page-settings,
  #page-calculator
) .panel-heading {
  padding-bottom: 18px;
  border-bottom: 1px solid var(--ledger-line-soft);
}

:is(
  #page-alerts,
  #page-integrations,
  #page-store,
  #page-import,
  #page-simulator,
  #page-settings,
  #page-calculator
) .panel-heading h2 {
  font-size: clamp(18px, 2vw, 23px);
  font-weight: 690;
  letter-spacing: -.035em;
}

:is(
  #page-alerts,
  #page-integrations,
  #page-store,
  #page-import,
  #page-simulator,
  #page-settings,
  #page-calculator
) .panel-heading p {
  max-width: 620px;
  margin-top: 6px;
  color: #74827a;
  font-size: 11px;
  line-height: 1.55;
}

/* Alerts — decision inbox ------------------------------------------------- */

#page-alerts .alerts-stats {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-bottom: 34px;
  overflow: hidden;
  border: 1px solid var(--ledger-line);
  border-radius: 3px;
  background: var(--ledger-panel);
}

#page-alerts .alerts-stats .stat-card {
  min-height: 154px;
  padding: 24px 27px;
  display: flex;
  flex-direction: column;
  border: 0;
  border-right: 1px solid var(--ledger-line);
  border-radius: 0;
  background: transparent;
}

#page-alerts .alerts-stats .stat-card:last-child {
  border-right: 0;
  background: var(--ledger-paper);
  color: var(--ledger-ink);
}

#page-alerts .alerts-stats .stat-card span {
  color: #7d8b83;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: .11em;
  text-transform: uppercase;
}

#page-alerts .alerts-stats .stat-card strong {
  margin: auto 0 6px;
  padding: 22px 0 0;
  font-size: clamp(32px, 3vw, 44px);
  font-weight: 710;
  line-height: .95;
}

#page-alerts .alerts-stats .stat-card small {
  color: #65736b;
  font-size: 9px;
}

#page-alerts .alerts-stats .stat-card:last-child :is(span, small) { color: var(--ledger-ink-muted); }
#page-alerts .alerts-stats .stat-card:last-child strong { color: var(--ledger-mint-dark); }

#page-alerts .page-toolbar {
  margin-bottom: 0;
  padding: 0 0 18px;
  border-bottom: 1px solid var(--ledger-line);
}

#page-alerts .page-toolbar h2 {
  font-size: clamp(22px, 2.4vw, 31px);
  font-weight: 680;
  letter-spacing: -.045em;
}

#page-alerts .page-toolbar p {
  margin-top: 7px;
  color: #6e7c74;
  font-size: 11px;
}

#page-alerts .alert-list {
  gap: 0;
}

#page-alerts .alert-item {
  position: relative;
  min-height: 164px;
  padding: 25px 22px 25px 26px;
  grid-template-columns: 42px minmax(0, 1fr) minmax(190px, auto);
  gap: 20px;
  border: 0;
  border-bottom: 1px solid var(--ledger-line);
  border-radius: 0;
  background: transparent;
}

#page-alerts .alert-item::before {
  content: "";
  position: absolute;
  top: 26px;
  bottom: 26px;
  left: 0;
  width: 2px;
  background: var(--ledger-blue);
}

#page-alerts .alert-item.critical::before { background: var(--ledger-danger); }
#page-alerts .alert-item.warning::before { background: var(--ledger-warning); }

#page-alerts .alert-item:hover {
  transform: translateX(3px);
  background: #0c1310;
}

#page-alerts .alert-marker {
  width: 38px;
  height: 38px;
  border: 1px solid var(--ledger-line);
  border-radius: 5px;
  background: var(--ledger-panel-soft);
  color: var(--ledger-blue);
  font-size: 13px;
}

#page-alerts .alert-item.critical .alert-marker {
  border-color: #5b3033;
  background: #211416;
  color: var(--ledger-danger);
}

#page-alerts .alert-item.warning .alert-marker {
  border-color: #5a4528;
  background: #211a11;
  color: var(--ledger-warning);
}

#page-alerts .alert-heading {
  gap: 10px;
}

#page-alerts .alert-level {
  padding: 3px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #6f7d75;
  font-size: 8px;
  letter-spacing: .13em;
}

#page-alerts .alert-heading strong {
  color: #aeb9b2;
  font-size: 10px;
  font-weight: 650;
}

#page-alerts .alert-copy h2 {
  margin: 11px 0 5px;
  font-size: clamp(17px, 1.7vw, 21px);
  font-weight: 660;
  letter-spacing: -.025em;
}

#page-alerts .alert-copy p {
  max-width: 760px;
  color: #849189;
  font-size: 11px;
  line-height: 1.55;
}

#page-alerts .alert-copy small {
  margin-top: 10px;
  color: #c9d2cc;
  font-size: 10px;
}

#page-alerts .alert-impact {
  min-width: 190px;
  padding-left: 24px;
  border-left: 1px solid var(--ledger-line-soft);
}

#page-alerts .alert-impact span {
  color: #69776f;
  font-size: 8px;
  font-weight: 740;
  letter-spacing: .1em;
  text-transform: uppercase;
}

#page-alerts .alert-impact strong {
  margin: 8px 0 15px;
  color: var(--ledger-mint);
  font-size: 26px;
  font-weight: 690;
  letter-spacing: -.035em;
}

#page-alerts .alert-impact .button {
  min-height: 35px;
  padding: 7px 11px;
  font-size: 9px;
}

#page-alerts .empty-state {
  max-width: none;
  margin: 28px 0 0;
  padding: 72px 28px;
  border: 1px solid var(--ledger-line);
  border-radius: 3px;
  background: var(--ledger-panel);
}

#page-alerts .empty-icon { border-radius: 6px; }

/* Integrations — connection ledger --------------------------------------- */

#page-integrations .connections-hero {
  margin-bottom: 16px;
  padding: clamp(28px, 4vw, 46px);
  align-items: end;
  border: 1px solid #c4cec5;
  border-radius: 3px;
  background: var(--ledger-paper);
  color: var(--ledger-ink);
}

#page-integrations .connections-hero::after { display: none; }

#page-integrations .connections-hero .eyebrow { color: var(--ledger-mint-dark); }

#page-integrations .connections-hero h2 {
  max-width: 760px;
  margin: 12px 0 12px;
  font-size: clamp(30px, 4.2vw, 54px);
  font-weight: 700;
  line-height: .98;
  letter-spacing: -.06em;
}

#page-integrations .connections-hero p {
  max-width: 720px;
  color: var(--ledger-ink-muted);
  font-size: 12px;
  line-height: 1.65;
}

#page-integrations .connections-summary {
  min-width: 148px;
  padding: 19px 21px;
  border: 1px solid #28362f;
  border-radius: 2px;
  background: #0c1511;
}

#page-integrations .connections-summary strong {
  color: var(--ledger-mint);
  font-size: 44px;
  font-weight: 690;
}

#page-integrations .connections-summary span { color: #829088; }

#page-integrations .connection-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 12px;
}

#page-integrations .connection-card {
  position: relative;
  grid-column: span 6;
  min-height: 284px;
  padding: 25px;
  gap: 20px;
  overflow: hidden;
  border: 1px solid var(--ledger-line);
  border-radius: 3px;
  background: var(--ledger-panel);
}

#page-integrations .connection-card::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 2px;
  background: #344139;
}

#page-integrations .connection-card::after {
  content: attr(data-connection-index);
  position: absolute;
  right: 24px;
  bottom: 19px;
  color: #3c4942;
  font-size: 9px;
  font-weight: 780;
  letter-spacing: .1em;
}

#page-integrations .connection-card:has(.connection-actions)::after,
#page-integrations .connection-card:has(.connection-meta)::after { display: none; }

#page-integrations .connection-card[data-connection-card="manual"] { grid-column: span 5; }
#page-integrations #allegro-connection-card { grid-column: span 7; }
#page-integrations .connection-card.is-connected::before { background: var(--ledger-mint); }
#page-integrations #allegro-connection-card::before { background: #ff5a00; }

#page-integrations .connection-card:hover { transform: translateY(-3px); }

#page-integrations .connection-card.is-connected {
  border-color: #345446;
  background: #111b17;
}

#page-integrations .connection-card.is-coming-soon {
  min-height: 224px;
  opacity: .55;
}

#page-integrations .connection-card.is-coming-soon:hover {
  transform: none;
  opacity: .72;
}

#page-integrations .channel-logo {
  width: 50px;
  height: 50px;
  border-radius: 6px;
  box-shadow: none;
}

#page-integrations .connection-status {
  border-radius: 3px;
  font-size: 8px;
  letter-spacing: .1em;
}

#page-integrations .connection-card h2 {
  margin-bottom: 8px;
  font-size: 23px;
  font-weight: 680;
  letter-spacing: -.035em;
}

#page-integrations .connection-card p {
  max-width: 560px;
  color: #7d8a83;
  font-size: 11px;
  line-height: 1.6;
}

#page-integrations .connection-demo-note {
  padding: 11px 0;
  border: 0;
  border-block: 1px solid var(--ledger-line-soft);
  border-radius: 0;
  background: transparent;
  color: #6f7d75;
  line-height: 1.5;
}

#page-integrations .connection-meta {
  padding-top: 14px;
  border-top: 1px solid var(--ledger-line-soft);
}

#page-integrations .connection-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#page-integrations .connection-actions .button:only-child { grid-column: 1 / -1; }

#page-integrations .connection-flow {
  margin-top: 12px;
  padding: 28px;
  border-radius: 3px;
}

#page-integrations .connection-steps {
  gap: 0;
  margin-top: 0;
}

#page-integrations .connection-steps > div {
  min-height: 148px;
  padding: 24px;
  border: 0;
  border-right: 1px solid var(--ledger-line);
  border-radius: 0;
  background: transparent;
}

#page-integrations .connection-steps > div:last-child { border-right: 0; }

#page-integrations .connection-steps span {
  width: 30px;
  height: 30px;
  margin-bottom: 24px;
  border: 1px solid #315344;
  border-radius: 4px;
  background: #11261e;
}

#page-integrations .connection-steps strong { font-size: 13px; }
#page-integrations .connection-steps small { color: #6f7c75; line-height: 1.5; }

/* Store — product ledger -------------------------------------------------- */

#page-store .store-channel-bar {
  margin-bottom: 24px;
  padding: 18px 20px;
  border: 1px solid var(--ledger-line);
  border-radius: 3px;
  background: #0d1411;
}

#page-store .store-channel-bar strong {
  margin-top: 3px;
  font-size: 17px;
  letter-spacing: -.02em;
}

#page-store .store-channel-bar small { color: #6e7b74; }

#page-store .channel-tabs {
  padding: 3px;
  border-radius: 5px;
  background: #080e0c;
}

#page-store .channel-tab {
  min-height: 34px;
  border-radius: 3px;
  transition: transform 160ms var(--ledger-ease), opacity 160ms ease;
}

#page-store .channel-tab:hover { transform: translateY(-1px); }

#page-store .channel-tab.is-active {
  background: var(--ledger-paper);
  color: var(--ledger-mint-dark);
  box-shadow: none;
}

#page-store .page-toolbar {
  margin-bottom: 14px;
  padding-bottom: 17px;
  border-bottom: 1px solid var(--ledger-line);
}

#page-store .page-toolbar h2 {
  font-size: clamp(22px, 2.4vw, 30px);
  letter-spacing: -.04em;
}

#page-store .select-label { min-width: 220px; }

#page-store .table-card {
  border-radius: 3px;
  background: var(--ledger-panel);
}

#page-store .table-card th {
  height: 48px;
  padding-inline: 18px;
  border-color: var(--ledger-line);
  background: #0c1310;
  color: #708078;
  font-size: 8px;
  letter-spacing: .12em;
}

#page-store .table-card td {
  height: 70px;
  padding-inline: 18px;
  border-color: var(--ledger-line-soft);
  font-size: 12px;
}

#page-store .table-card tbody tr {
  transition: transform 160ms var(--ledger-ease);
}

#page-store .table-card tbody tr:hover {
  transform: translateX(2px);
  background: #121a16;
}

#page-store .product-status-dot {
  width: 7px;
  height: 22px;
  border-radius: 1px;
}

#page-store .channel-badge i { border-radius: 4px; }

#page-store .icon-button {
  min-height: 32px;
  border-radius: 4px;
  background: #0c1310;
}

#page-store .empty-state {
  max-width: none;
  margin: 0;
  padding: 74px 28px;
  border: 1px solid var(--ledger-line);
  border-radius: 3px;
  background: var(--ledger-panel);
}

#page-store .empty-icon { border-radius: 5px; }

/* Import — controlled intake --------------------------------------------- */

#page-import .import-layout {
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, .55fr);
  gap: 12px;
}

#page-import .import-panel {
  padding: clamp(25px, 3.2vw, 38px);
  border: 1px solid #c4cec5;
  border-radius: 3px;
  background: var(--ledger-paper);
  color: var(--ledger-ink);
}

#page-import .import-panel .panel-heading {
  border-color: #c7d0c8;
}

#page-import .import-panel .panel-heading p { color: var(--ledger-ink-muted); }

#page-import .import-panel .pill {
  border-color: #aab9ad;
  border-radius: 3px;
  background: transparent;
  color: var(--ledger-mint-dark);
}

#page-import .import-dropzone {
  min-height: 286px;
  margin-top: 24px;
  padding: 38px 24px;
  align-content: center;
  border: 1px dashed #8d9d91;
  border-radius: 2px;
  background: var(--ledger-paper-raised);
  color: var(--ledger-ink);
}

#page-import .import-dropzone:hover {
  transform: translateY(-2px);
  border-color: var(--ledger-mint-dark);
  background: #eef2ed;
}

#page-import .import-icon {
  width: 52px;
  height: 52px;
  margin-bottom: 10px;
  border: 1px solid #9aada0;
  border-radius: 5px;
  background: #dce5dc;
  color: var(--ledger-mint-dark);
  box-shadow: none;
}

#page-import .import-dropzone strong {
  font-size: 21px;
  letter-spacing: -.025em;
}

#page-import .import-dropzone small { color: var(--ledger-ink-muted); }

#page-import .import-dropzone input {
  max-width: 310px;
  min-height: 40px;
  border-color: #bdc8bf;
  background: #ffffff;
  color: var(--ledger-ink);
}

#page-import .import-dropzone input::file-selector-button {
  margin-right: 10px;
  border: 0;
  border-radius: 3px;
  padding: 8px 10px;
  background: #102019;
  color: #f0f5f1;
  font-weight: 680;
}

#page-import .import-actions {
  justify-content: space-between;
}

#page-import .import-actions .button-secondary {
  border-color: #aebbb1;
  background: transparent;
  color: var(--ledger-ink);
}

#page-import .import-actions span { color: var(--ledger-ink-muted); }

#page-import .import-help {
  padding: 28px;
  border-radius: 3px;
  background: #0d1411;
}

#page-import .import-help h2 {
  margin: 0;
  font-size: 18px;
  letter-spacing: -.025em;
}

#page-import .import-help ol {
  margin: 26px 0;
  padding: 0;
  list-style: none;
  counter-reset: import-step;
}

#page-import .import-help li {
  position: relative;
  min-height: 42px;
  padding: 0 0 18px 42px;
  color: #8a9890;
  line-height: 1.55;
  counter-increment: import-step;
}

#page-import .import-help li::before {
  content: counter(import-step, decimal-leading-zero);
  position: absolute;
  top: 0;
  left: 0;
  color: var(--ledger-mint);
  font-size: 10px;
  font-weight: 780;
  letter-spacing: .08em;
}

#page-import .import-help li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 22px;
  bottom: 5px;
  left: 8px;
  width: 1px;
  background: var(--ledger-line);
}

#page-import .import-preview {
  margin-top: 12px;
  border-radius: 3px;
}

#page-import .import-preview .table-scroll { margin-top: 0; }

#page-import .import-preview th {
  background: #0c1310;
  color: #718078;
}

/* Simulator — scenario studio -------------------------------------------- */

#page-simulator .simulator-panel {
  margin-bottom: 12px;
  padding: clamp(26px, 3vw, 38px);
  border: 1px solid #c6cfc7;
  border-radius: 3px;
  background: var(--ledger-paper);
  color: var(--ledger-ink);
}

#page-simulator .simulator-panel .panel-heading {
  align-items: flex-end;
  border-color: #c8d0c9;
}

#page-simulator .simulator-panel .panel-heading p { color: var(--ledger-ink-muted); }

#page-simulator .simulator-panel .select-label {
  min-width: 260px;
  color: var(--ledger-ink-muted);
}

#page-simulator .simulator-panel select {
  border-color: #aebbb1;
  background: var(--ledger-paper-raised);
  color: var(--ledger-ink);
}

#page-simulator .simulator-controls {
  gap: 10px;
  margin-top: 22px;
  padding-top: 0;
  border-top: 0;
}

#page-simulator .range-field {
  min-width: 0;
  padding: 20px;
  border: 1px solid #c8d1ca;
  border-radius: 2px;
  background: var(--ledger-paper-raised);
  color: var(--ledger-ink-muted);
}

#page-simulator .range-field span {
  align-items: baseline;
  font-size: 10px;
  letter-spacing: .02em;
}

#page-simulator .range-field output {
  color: var(--ledger-ink);
  font-size: 17px;
  font-weight: 700;
  letter-spacing: -.025em;
}

#page-simulator .range-field input[type="range"] {
  width: 100%;
  height: 26px;
  margin-top: 8px;
  appearance: none;
  border: 0;
  background: transparent;
}

#page-simulator .range-field input[type="range"]::-webkit-slider-runnable-track {
  height: 3px;
  background: #a8b6ab;
}

#page-simulator .range-field input[type="range"]::-webkit-slider-thumb {
  width: 17px;
  height: 17px;
  margin-top: -7px;
  appearance: none;
  border: 3px solid var(--ledger-paper-raised);
  border-radius: 50%;
  background: var(--ledger-mint-dark);
}

#page-simulator .range-field input[type="range"]::-moz-range-track {
  height: 3px;
  background: #a8b6ab;
}

#page-simulator .range-field input[type="range"]::-moz-range-thumb {
  width: 13px;
  height: 13px;
  border: 3px solid var(--ledger-paper-raised);
  border-radius: 50%;
  background: var(--ledger-mint-dark);
}

#page-simulator .simulator-stats {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-bottom: 12px;
  overflow: hidden;
  border: 1px solid var(--ledger-line);
  border-radius: 3px;
}

#page-simulator .simulator-stats .stat-card {
  min-height: 164px;
  padding: 25px 27px;
  border: 0;
  border-right: 1px solid var(--ledger-line);
  border-radius: 0;
  background: var(--ledger-panel);
}

#page-simulator .simulator-stats .stat-card:last-child { border-right: 0; }

#page-simulator .simulator-stats .highlight-card {
  background: var(--ledger-paper);
  color: var(--ledger-ink);
}

#page-simulator .simulator-stats .stat-card span {
  color: #78867e;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: .1em;
  text-transform: uppercase;
}

#page-simulator .simulator-stats .stat-card strong {
  margin-top: auto;
  font-size: clamp(31px, 3.2vw, 43px);
}

#page-simulator .simulator-stats .highlight-card :is(span, small) { color: var(--ledger-ink-muted); }
#page-simulator .simulator-stats .highlight-card strong { color: var(--ledger-mint-dark); }

#page-simulator .simulator-recommendation {
  min-height: 130px;
  margin-top: 0;
  padding: 26px;
  align-items: center;
  border: 1px solid #384238;
  border-radius: 3px;
  background: #16180f;
}

#page-simulator .simulator-recommendation .recommendation-icon {
  border-radius: 5px;
  background: var(--ledger-warning);
}

#page-simulator .simulator-recommendation h2 {
  margin-top: 6px;
  font-size: 20px;
}

#page-simulator .simulator-recommendation p { color: #959b90; }

/* Report — off-white monthly paper --------------------------------------- */

#page-report {
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--ledger-ink);
}

#page-report .report-document {
  padding: clamp(26px, 4vw, 52px);
  border: 1px solid #bdc7be;
  border-radius: 2px;
  background: var(--ledger-paper);
  color: var(--ledger-ink);
}

#page-report .report-header {
  margin-bottom: 0;
  padding-bottom: 28px;
  border-bottom: 1px solid #bfc9c0;
}

#page-report .report-header .screen-kicker {
  color: var(--ledger-mint-dark);
}

#page-report .report-header > div:first-child { padding-top: 0; }

#page-report .report-header h2 {
  font-size: clamp(31px, 4vw, 52px);
  font-weight: 710;
  line-height: .98;
  letter-spacing: -.06em;
}

#page-report .report-header p {
  margin-top: 9px;
  color: var(--ledger-ink-muted);
  font-size: 11px;
}

#page-report .report-actions .button {
  min-height: 40px;
  border-radius: 4px;
}

#page-report .report-actions .button-secondary {
  border-color: #aeb9b0;
  background: transparent;
  color: var(--ledger-ink);
}

#page-report .report-actions .button-primary {
  border-color: #102019;
  background: #102019;
  color: #f0f5f1;
}

#page-report .report-stats {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin: 0 0 34px;
  padding: 25px 0;
  border-bottom: 1px solid #bfc9c0;
}

#page-report .report-stats .stat-card {
  min-height: 124px;
  padding: 12px 22px;
  border: 0;
  border-right: 1px solid #c4cdc5;
  border-radius: 0;
  background: transparent;
  color: var(--ledger-ink);
}

#page-report .report-stats .stat-card:first-child { padding-left: 0; }
#page-report .report-stats .stat-card:last-child { padding-right: 0; border-right: 0; }

#page-report .report-stats .stat-card span {
  color: var(--ledger-ink-muted);
  font-size: 8px;
  font-weight: 780;
  letter-spacing: .11em;
  text-transform: uppercase;
}

#page-report .report-stats .stat-card strong {
  margin: auto 0 5px;
  padding-top: 22px;
  color: var(--ledger-ink);
  font-size: clamp(28px, 2.8vw, 39px);
  font-weight: 710;
}

#page-report .report-stats .stat-card strong.negative { color: var(--ledger-danger-dark); }
#page-report .report-stats .stat-card small { color: #6a776e; }

#page-report .report-grid {
  grid-template-columns: minmax(0, 1.22fr) minmax(320px, .78fr);
  gap: 12px;
}

#page-report .report-grid .panel {
  padding: clamp(24px, 3vw, 34px);
  border: 1px solid #c7cfc8;
  border-radius: 2px;
  background: var(--ledger-paper-raised);
  color: var(--ledger-ink);
}

#page-report .panel-heading {
  padding-bottom: 17px;
  border-bottom: 1px solid #ccd3cd;
}

#page-report .panel-heading h2 {
  font-size: 20px;
  letter-spacing: -.035em;
}

#page-report .panel-heading p { color: var(--ledger-ink-muted); }

#page-report .profit-bars {
  gap: 18px;
  margin-top: 26px;
}

#page-report .profit-bar-row > div:first-child {
  margin-bottom: 8px;
  font-size: 11px;
}

#page-report .profit-bar-row span { color: var(--ledger-ink-muted); }

#page-report .profit-bar-track {
  height: 4px;
  border-radius: 0;
  background: #cdd5ce;
}

#page-report .profit-bar-track i {
  border-radius: 0;
  background: var(--ledger-mint-dark);
  box-shadow: none;
  transform-origin: left center;
  animation: ledger-bar-enter 520ms var(--ledger-ease) both;
}

#page-report .profit-bar-track i.loss { background: var(--ledger-danger-dark); }

@keyframes ledger-bar-enter {
  from { opacity: 0; transform: scaleX(.08); }
  to { opacity: 1; transform: scaleX(1); }
}

#page-report .report-insights {
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
  counter-reset: report-insight;
}

#page-report .report-insights li {
  position: relative;
  min-height: 54px;
  padding: 4px 0 17px 42px;
  border-bottom: 1px solid #d0d6d1;
  color: var(--ledger-ink-muted);
  font-size: 11px;
  line-height: 1.55;
  counter-increment: report-insight;
}

#page-report .report-insights li + li { margin-top: 14px; }

#page-report .report-insights li::before {
  content: counter(report-insight, decimal-leading-zero);
  position: absolute;
  top: 3px;
  left: 0;
  color: var(--ledger-mint-dark);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
}

#page-report .report-insights strong { color: var(--ledger-ink); }

#page-report .report-document-footer {
  margin-top: 34px;
  padding-top: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-top: 1px solid #c3ccc4;
  color: #68756c;
  font-size: 8px;
  font-weight: 690;
  letter-spacing: .08em;
  text-transform: uppercase;
}

/* Settings — structured configuration ----------------------------------- */

#page-settings .settings-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  align-items: start;
}

#page-settings .settings-panel {
  position: relative;
  min-height: 0;
  padding: 30px;
  overflow: hidden;
  border: 1px solid var(--ledger-line);
  border-radius: 3px;
  background: var(--ledger-panel);
}

#page-settings .settings-panel::before {
  content: attr(data-settings-section);
  position: absolute;
  top: 27px;
  right: 28px;
  color: #536159;
  font-size: 9px;
  font-weight: 780;
  letter-spacing: .1em;
}

#page-settings .settings-panel .panel-heading {
  padding-right: 42px;
}

#page-settings .settings-fields {
  gap: 13px;
  margin-top: 22px;
}

#page-settings .field,
#page-settings .compact-field {
  color: #829087;
  font-size: 9px;
  font-weight: 690;
  letter-spacing: .025em;
}

#page-settings :is(input, select) {
  min-height: 44px;
  border-color: #344139;
  background: #0b1210;
}

#page-settings :is(input, select):disabled {
  cursor: not-allowed;
  opacity: .42;
}

#page-settings .input-suffix em { color: #718078; }

#page-settings .vat-settings {
  margin-top: 23px;
  padding: 18px;
  border: 1px solid var(--ledger-line);
  border-radius: 2px;
  background: #0c1310;
}

#page-settings .switch-row { color: #bac5be; }

#page-settings .settings-switches {
  margin-top: 20px;
}

#page-settings .settings-switch {
  min-height: 74px;
  padding: 16px 0;
  border-color: var(--ledger-line-soft);
  cursor: pointer;
}

#page-settings .settings-switch strong {
  font-size: 12px;
  font-weight: 670;
}

#page-settings .settings-switch small {
  max-width: 410px;
  color: #708078;
  font-size: 9px;
  line-height: 1.5;
}

#page-settings .settings-switch input[type="checkbox"],
#page-settings #settings-vat-payer {
  position: relative;
  flex: 0 0 auto;
  width: 40px;
  height: 22px;
  min-height: 22px;
  padding: 0;
  appearance: none;
  border: 1px solid #3b4941;
  border-radius: 999px;
  background: #111915;
  cursor: pointer;
  transition: transform 170ms var(--ledger-ease), opacity 170ms ease;
}

#page-settings .settings-switch input[type="checkbox"]::before,
#page-settings #settings-vat-payer::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #78857e;
  transition: transform 190ms var(--ledger-ease), opacity 190ms ease;
}

#page-settings .settings-switch input[type="checkbox"]:checked,
#page-settings #settings-vat-payer:checked {
  border-color: #39745c;
  background: #143327;
}

#page-settings .settings-switch input[type="checkbox"]:checked::before,
#page-settings #settings-vat-payer:checked::before {
  transform: translateX(18px);
  background: var(--ledger-mint);
}

#page-settings .settings-threshold {
  max-width: none;
  margin-top: 18px;
  padding-top: 19px;
}

#page-settings .theme-grid {
  gap: 8px;
  margin-top: 22px;
}

#page-settings .theme-card {
  gap: 10px;
  padding: 8px;
  border-radius: 2px;
  background: #0c1310;
}

#page-settings .theme-card:hover { transform: translateY(-2px); }

#page-settings .theme-card:has(input:checked) {
  border-color: var(--ledger-mint);
  box-shadow: inset 0 -2px 0 var(--ledger-mint);
}

#page-settings .theme-preview {
  height: 54px;
  border-radius: 1px;
}

#page-settings .theme-card strong {
  padding: 0 2px 2px;
  color: #b5c0ba;
  font-size: 10px;
}

#page-settings .settings-data-panel {
  grid-column: 1 / -1;
}

#page-settings .data-actions {
  min-height: 78px;
  padding: 18px 0;
  border-color: var(--ledger-line-soft);
}

#page-settings .data-actions strong { font-size: 12px; }
#page-settings .data-actions small { color: #708078; }

#page-settings .danger-zone {
  margin-top: 2px;
  border-bottom: 0;
}

#page-settings .danger-zone strong { color: var(--ledger-danger); }

#page-settings .settings-save-bar {
  position: sticky;
  z-index: 8;
  bottom: 16px;
  margin-top: 12px;
  padding: 13px 15px 13px 18px;
  border: 1px solid #385347;
  border-radius: 3px;
  background: #101a16;
}

#page-settings .settings-save-bar span { color: #89978f; }

/* Calculator — product workbench ----------------------------------------- */

#page-calculator .calculator-layout {
  grid-template-columns: minmax(0, 1.48fr) minmax(310px, .62fr);
  gap: 12px;
}

#page-calculator .calculator-form {
  padding: clamp(25px, 3vw, 38px);
  border: 1px solid #c3cdc4;
  border-radius: 3px;
  background: var(--ledger-paper);
  color: var(--ledger-ink);
}

#page-calculator .calculator-form .panel-heading {
  border-color: #c5cec6;
}

#page-calculator .calculator-form .panel-heading h2 {
  font-size: clamp(25px, 3vw, 35px);
  line-height: 1;
  letter-spacing: -.05em;
}

#page-calculator .calculator-form .panel-heading p { color: var(--ledger-ink-muted); }

#page-calculator .calculator-form .pill {
  border-color: #9db0a2;
  border-radius: 3px;
  background: transparent;
  color: var(--ledger-mint-dark);
}

#page-calculator .calculator-form .form-grid {
  gap: 16px 14px;
  margin-top: 0;
}

#page-calculator .product-form-sections {
  margin-top: 8px;
  display: grid;
}

#page-calculator .product-form-block {
  padding: 27px 0;
  display: grid;
  grid-template-columns: minmax(155px, .42fr) minmax(0, 1fr);
  gap: 15px 30px;
  border-bottom: 1px solid #c4cdc5;
}

#page-calculator .product-form-block:last-child { padding-bottom: 20px; border-bottom: 0; }

#page-calculator .product-form-block-head {
  grid-column: 1;
  grid-row: 1 / span 2;
  min-width: 0;
  padding-right: 22px;
  border-right: 1px solid #c8d0c9;
}

#page-calculator .product-form-block-head > span {
  display: block;
  margin-bottom: 19px;
  color: var(--ledger-mint-dark);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
}

#page-calculator .product-form-block-head h3 {
  margin: 0;
  color: var(--ledger-ink);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -.025em;
}

#page-calculator .product-form-block-head p {
  margin: 7px 0 0;
  color: #6a786e;
  font-size: 9px;
  line-height: 1.55;
}

#page-calculator .product-form-block > .form-grid,
#page-calculator .product-form-block > .vat-settings {
  grid-column: 2;
}

#page-calculator .product-form-block > .vat-settings { margin-top: 0; }

#page-calculator .calculator-form .field {
  color: #48564d;
  font-size: 9px;
  font-weight: 730;
  letter-spacing: .03em;
}

#page-calculator .calculator-form :is(input, select) {
  min-height: 47px;
  border-color: #aebbb1;
  border-radius: 4px;
  background: var(--ledger-paper-raised);
  color: var(--ledger-ink);
}

#page-calculator .calculator-form :is(input, select):hover { border-color: #86998b; }

#page-calculator .calculator-form :is(input, select):focus {
  border-color: var(--ledger-mint-dark);
  background: #ffffff;
  box-shadow: none;
}

#page-calculator .calculator-form .input-suffix em { color: #65736a; }
#page-calculator .calculator-form .field-note { color: #6b786f; }

#page-calculator .calculator-form .vat-settings {
  margin-top: 27px;
  padding: 19px;
  border: 1px solid #c4cec6;
  border-radius: 2px;
  background: #dce3dc;
}

#page-calculator .calculator-form .switch-row { color: #28372e; }

#page-calculator #product-vat-payer {
  position: relative;
  width: 40px;
  height: 22px;
  min-height: 22px;
  padding: 0;
  appearance: none;
  border: 1px solid #87988b;
  border-radius: 999px;
  background: #c5cec6;
  cursor: pointer;
}

#page-calculator #product-vat-payer::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #66766b;
  transition: transform 190ms var(--ledger-ease), opacity 190ms ease;
}

#page-calculator #product-vat-payer:checked {
  border-color: #1c7352;
  background: #b8d9c9;
}

#page-calculator #product-vat-payer:checked::before {
  transform: translateX(18px);
  background: var(--ledger-mint-dark);
}

#page-calculator .calculator-form .compact-field { color: #48564d; }

#page-calculator .calculator-form .form-actions {
  margin-top: 22px;
  padding-top: 21px;
  border-top: 1px solid #c6cfc7;
}

#page-calculator .calculator-form .button-secondary {
  border-color: #aab7ad;
  background: transparent;
  color: var(--ledger-ink);
}

#page-calculator .calculator-result {
  top: 18px;
  gap: 12px;
}

#page-calculator .result-hero {
  min-height: 262px;
  padding: 28px;
  display: flex;
  flex-direction: column;
  border: 1px solid #8bb9a2;
  border-radius: 3px;
  background: var(--ledger-mint);
  color: #07120d;
}

#page-calculator .result-hero.warning {
  border-color: #d1a25e;
  background: #dca556;
}

#page-calculator .result-hero.loss {
  border-color: #c3767b;
  background: #d48187;
}

#page-calculator .result-status {
  width: fit-content;
  padding: 5px 8px;
  border: 1px solid rgba(7, 18, 13, .28);
  border-radius: 3px;
  background: rgba(7, 18, 13, .08);
  color: #07120d;
  font-size: 8px;
  letter-spacing: .1em;
  text-transform: uppercase;
}

#page-calculator .result-hero p {
  margin: auto 0 4px;
  color: #254438;
  font-size: 10px;
  font-weight: 680;
}

#page-calculator .result-hero strong {
  font-size: clamp(47px, 5vw, 67px);
  font-weight: 735;
  line-height: .92;
  letter-spacing: -.065em;
}

#page-calculator .result-hero small {
  margin-top: 9px;
  color: #285043;
  font-size: 10px;
}

#page-calculator .result-panel {
  padding: 27px;
  border-radius: 3px;
  background: #0d1411;
}

#page-calculator .result-panel h2 {
  font-size: 19px;
  letter-spacing: -.03em;
}

#page-calculator .result-panel > p {
  min-height: 56px;
  color: #85938b;
  line-height: 1.55;
}

#page-calculator .result-list {
  margin-top: 20px;
  border-bottom: 1px solid var(--ledger-line-soft);
}

#page-calculator .result-list div {
  min-height: 47px;
  align-items: center;
  border-color: var(--ledger-line-soft);
}

#page-calculator .result-list dt {
  color: #738178;
  font-size: 9px;
}

#page-calculator .result-list dd {
  color: #dfe8e2;
  font-size: 11px;
}

/* Responsive workspaces -------------------------------------------------- */

@media (max-width: 1180px) {
  #page-integrations .connection-card[data-connection-card="manual"],
  #page-integrations #allegro-connection-card { grid-column: span 6; }

  #page-report .report-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #page-report .report-stats .stat-card:nth-child(2) { border-right: 0; }
  #page-report .report-stats .stat-card:nth-child(-n+2) { border-bottom: 1px solid #c4cdc5; }
  #page-report .report-stats .stat-card:nth-child(3) { padding-left: 0; }

  #page-calculator .calculator-layout { grid-template-columns: minmax(0, 1.28fr) minmax(295px, .72fr); }
}

@media (max-width: 900px) {
  .app-shell .page:not(#page-dashboard) { max-width: none; }

  #page-integrations .connection-grid { grid-template-columns: 1fr; }
  #page-integrations .connection-card,
  #page-integrations .connection-card[data-connection-card="manual"],
  #page-integrations #allegro-connection-card { grid-column: auto; }

  #page-import .import-layout,
  #page-report .report-grid,
  #page-settings .settings-grid,
  #page-calculator .calculator-layout { grid-template-columns: 1fr; }

  #page-settings .settings-data-panel { grid-column: auto; }

  #page-calculator .calculator-result {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #page-settings .settings-save-bar {
    bottom: calc(91px + env(safe-area-inset-bottom));
  }

  .mobile-account-row {
    margin-top: 13px;
    padding: 13px 0 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border-top: 1px solid var(--ledger-line);
  }

  .mobile-account-row > span { min-width: 0; }
  .mobile-account-row :is(strong, small) { display: block; }
  .mobile-account-row strong { font-size: 10px; }
  .mobile-account-row small { margin-top: 3px; color: #718078; font-size: 8px; }
  .mobile-account-row .button { min-height: 34px; padding: 7px 11px; font-size: 9px; }
}

@media (max-width: 700px) {
  .screen-masthead {
    min-height: 0;
    padding: 24px 21px;
    grid-template-columns: 1fr;
    align-items: start;
    gap: 20px;
  }

  .screen-masthead h2 { font-size: clamp(27px, 8.8vw, 38px); }

  .screen-masthead-aside {
    min-width: 0;
    padding: 16px 0 0;
    border-top: 1px solid var(--ledger-line);
    border-left: 0;
  }

  .screen-step { justify-self: start; }

  #page-alerts .alerts-stats,
  #page-simulator .simulator-stats {
    grid-template-columns: 1fr;
  }

  #page-alerts .alerts-stats .stat-card,
  #page-simulator .simulator-stats .stat-card {
    min-height: 126px;
    border-right: 0;
    border-bottom: 1px solid var(--ledger-line);
  }

  #page-alerts .alerts-stats .stat-card:last-child,
  #page-simulator .simulator-stats .stat-card:last-child { border-bottom: 0; }

  #page-alerts .alert-item {
    grid-template-columns: 38px minmax(0, 1fr);
    padding: 22px 15px 22px 18px;
    gap: 14px;
  }

  #page-alerts .alert-impact {
    grid-column: 1 / -1;
    min-width: 0;
    padding: 17px 0 0 52px;
    border-top: 1px solid var(--ledger-line-soft);
    border-left: 0;
    text-align: left;
  }

  #page-alerts .alert-impact .button { width: 100%; }

  #page-integrations .connections-hero { grid-template-columns: 1fr; }
  #page-integrations .connections-summary { width: 100%; }
  #page-integrations .connection-steps { grid-template-columns: 1fr; }
  #page-integrations .connection-steps > div { border-right: 0; border-bottom: 1px solid var(--ledger-line); }
  #page-integrations .connection-steps > div:last-child { border-bottom: 0; }

  #page-simulator .simulator-panel .panel-heading { align-items: stretch; flex-direction: column; }
  #page-simulator .simulator-panel .select-label { min-width: 0; width: 100%; }
  #page-simulator .simulator-controls { grid-template-columns: 1fr; }
  #page-simulator .simulator-recommendation { align-items: flex-start; }

  #page-report .report-document {
    margin-inline: -2px;
    padding: 24px 18px;
  }

  #page-report .report-header { align-items: stretch; flex-direction: column; }
  #page-report .report-actions .button { flex: 1; }

  #page-settings .settings-panel { padding: 24px 20px; }

  #page-calculator .calculator-result { grid-template-columns: 1fr; }

  #page-calculator .product-form-block {
    grid-template-columns: 1fr;
    gap: 19px;
  }

  #page-calculator .product-form-block-head {
    grid-column: 1;
    grid-row: auto;
    padding: 0 0 17px;
    border-right: 0;
    border-bottom: 1px solid #c8d0c9;
  }

  #page-calculator .product-form-block-head > span { margin-bottom: 10px; }
  #page-calculator .product-form-block > .form-grid,
  #page-calculator .product-form-block > .vat-settings { grid-column: 1; }
}

@media (max-width: 520px) {
  #page-alerts .alerts-stats { margin-bottom: 25px; }
  #page-alerts .alert-copy h2 { font-size: 16px; }

  #page-integrations .connections-hero,
  #page-integrations .connection-card,
  #page-integrations .connection-flow { padding: 21px; }

  #page-integrations .connections-hero h2 { font-size: 33px; }
  #page-integrations .connection-actions { grid-template-columns: 1fr; }

  #page-store .store-channel-bar { grid-template-columns: 1fr; }
  #page-store .store-channel-bar > div:first-child { grid-column: auto; }
  #page-store .channel-tabs { overflow-x: auto; }
  #page-store .store-channel-bar .button { width: 100%; }
  #page-store .page-toolbar { align-items: stretch; flex-direction: column; }
  #page-store .select-label { min-width: 0; width: 100%; }

  #page-store .table-card tbody tr {
    border-radius: 3px;
    background: var(--ledger-panel);
  }

  #page-store .table-card tbody tr:hover { transform: none; }

  #page-import .import-panel,
  #page-import .import-help,
  #page-import .import-preview { padding: 20px; }

  #page-import .import-dropzone { min-height: 240px; padding-inline: 14px; }
  #page-import .import-actions { align-items: stretch; flex-direction: column; }
  #page-import .import-actions .button { width: 100%; }

  #page-simulator .simulator-panel { padding: 21px; }
  #page-simulator .range-field { padding: 17px; }
  #page-simulator .simulator-recommendation { padding: 21px; flex-wrap: wrap; }
  #page-simulator .simulator-recommendation .button { width: 100%; margin-left: 0; }

  #page-report .report-stats { grid-template-columns: 1fr; }
  #page-report .report-stats .stat-card,
  #page-report .report-stats .stat-card:first-child,
  #page-report .report-stats .stat-card:nth-child(3),
  #page-report .report-stats .stat-card:last-child {
    min-height: 106px;
    padding: 15px 0;
    border-right: 0;
    border-bottom: 1px solid #c4cdc5;
  }
  #page-report .report-stats .stat-card:last-child { border-bottom: 0; }

  #page-report .report-document-footer {
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
  }

  #page-settings .settings-fields,
  #page-calculator .calculator-form .form-grid { grid-template-columns: 1fr; }

  #page-settings .theme-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #page-settings .data-actions { grid-template-columns: 1fr; }
  #page-settings .data-actions .button { width: 100%; }
  #page-settings .settings-save-bar { align-items: stretch; flex-direction: column; }
  #page-settings .settings-save-bar .button { width: 100%; }

  #page-calculator .calculator-form,
  #page-calculator .result-panel { padding: 21px; }
  #page-calculator .calculator-form .field-wide { grid-column: auto; }
  #page-calculator .calculator-form .vat-settings { align-items: stretch; }
  #page-calculator .calculator-form .compact-field { width: 100%; grid-template-columns: 1fr 90px; }
  #page-calculator .calculator-form .form-actions .button { flex: 1; }
}

@media (prefers-reduced-motion: reduce) {
  .app-shell .page:not(#page-dashboard).is-active,
  .app-shell .page:not(#page-dashboard).is-active > *,
  #page-report .profit-bar-track i {
    animation: none !important;
  }

  :is(
    #page-alerts,
    #page-integrations,
    #page-store,
    #page-import,
    #page-simulator,
    #page-report,
    #page-settings,
    #page-calculator
  ) *,
  :is(
    #page-alerts,
    #page-integrations,
    #page-store,
    #page-import,
    #page-simulator,
    #page-report,
    #page-settings,
    #page-calculator
  ) *::before,
  :is(
    #page-alerts,
    #page-integrations,
    #page-store,
    #page-import,
    #page-simulator,
    #page-report,
    #page-settings,
    #page-calculator
  ) *::after {
    transition: none !important;
  }
}

@media print {
  #page-report {
    padding: 0;
    border: 0;
    background: transparent;
    color: #111111;
  }

  #page-report .report-document {
    padding: 0;
    border: 0;
    background: #ffffff;
  }

  #page-report .report-grid .panel,
  #page-report .report-stats .stat-card {
    background: #ffffff;
    color: #111111;
    break-inside: avoid;
  }

  #page-report .report-actions { display: none; }
  #page-report .report-header > div:first-child { padding-top: 0; }
}
