/* Smart Fin Reports — 5.4.51.8 Central Appearance Customization — A02 Direct Route Fix */
:root{
  --sfr-user-font-family:"Cairo","Tajawal","Noto Sans Arabic",Tahoma,Arial,sans-serif;
  --sfr-user-accent:#2563eb;
  --sfr-user-size-base:16px;
  --sfr-user-size-label:14px;
  --sfr-user-size-note:12.75px;
  --sfr-user-size-table:13.5px;
  --sfr-user-size-table-head:13px;
  --sfr-user-size-control:15px;
  --sfr-user-size-button:13.5px;
  --sfr-user-size-h1:34px;
  --sfr-user-size-h2:20px;
  --sfr-user-size-h3:16px;
  --sfr-user-size-kpi:19px;
}
html[data-sfr-font] body,
html[data-sfr-font] #sfr-platform-root,
html[data-sfr-font] #sfr-platform-root [data-sfr-module-root],
html[data-sfr-font] .sfr-a01{
  font-family:var(--sfr-user-font-family)!important;
}
html[data-sfr-font] #sfr-platform-root :is(button,input,select,textarea,option),
html[data-sfr-font] .sfr-a01 :is(button,input,select,textarea,option){font-family:var(--sfr-user-font-family)!important}
html[data-sfr-font] #sfr-platform-root :is(.num,.sfr-num,[data-number],input[type="number"],input[type="date"],td[data-value]),
html[data-sfr-font] .sfr-a01 :is(.num,.sfr-num,[data-number],input[type="number"],input[type="date"],td[data-value]){
  font-family:"Inter","JetBrains Mono",Consolas,monospace!important;
}

/* Variable-driven scaling keeps card widths fixed while allowing text and card height to grow naturally. */
#sfr-platform-root{
  --sfr-type-base:var(--sfr-user-size-base)!important;
  --sfr-type-label:var(--sfr-user-size-label)!important;
  --sfr-type-note:var(--sfr-user-size-note)!important;
  --sfr-type-table:var(--sfr-user-size-table)!important;
  --sfr-type-table-head:var(--sfr-user-size-table-head)!important;
  --sfr-type-button:var(--sfr-user-size-button)!important;
  --sfr-ref-font-ar:var(--sfr-user-font-family)!important;
  --sfr-ref-body:var(--sfr-user-size-base)!important;
  --sfr-ref-label:var(--sfr-user-size-label)!important;
  --sfr-ref-support:var(--sfr-user-size-note)!important;
  --sfr-ref-control:var(--sfr-user-size-control)!important;
  --sfr-ref-button:var(--sfr-user-size-button)!important;
  --sfr-ref-table:var(--sfr-user-size-table)!important;
  --sfr-ref-table-head:var(--sfr-user-size-table-head)!important;
  --sfr-ref-page-title:var(--sfr-user-size-h1)!important;
  --sfr-ref-section-title:var(--sfr-user-size-h2)!important;
  --sfr-ref-panel-title:var(--sfr-user-size-h3)!important;
  --sfr-ref-kpi-value:var(--sfr-user-size-kpi)!important;
}
#sfr-platform-root [data-sfr-module-root]{font-size:var(--sfr-user-size-base)!important}
#sfr-platform-root [data-sfr-module-root] :is(input,select,textarea){font-size:var(--sfr-user-size-control)!important}
#sfr-platform-root [data-sfr-module-root] :is(button,[role="button"],summary){font-size:var(--sfr-user-size-button)!important}
#sfr-platform-root [data-sfr-module-root] :is(label>span,.sfr-pfa-field>span,[class*="form-grid"] label>span,[class*="fields"] label>span){font-size:var(--sfr-user-size-label)!important}
#sfr-platform-root [data-sfr-module-root] :is(label>small,.sfr-pfa-field>small,[class*="form-grid"] label>small,[class*="field"]>small,[class*="input"]>small){font-size:var(--sfr-user-size-note)!important}
#sfr-platform-root [data-sfr-module-root] table :is(th,td){font-size:var(--sfr-user-size-table)!important}
#sfr-platform-root [data-sfr-module-root] table th{font-size:var(--sfr-user-size-table-head)!important}

/* Shared A02/WCC family. Semantic success/warning/risk variables are intentionally untouched. */
.sfr-a01{--sfr-font-ar:var(--sfr-user-font-family)!important;font-size:var(--sfr-user-size-base)!important}
.sfr-a01 .sfr-a01__page-head h1{font-size:var(--sfr-user-size-h1)!important}
.sfr-a01 :is(.sfr-a01__card-head h2,.sfr-a01__card-head h3,.sfr-a01__section-head h2,.sfr-a01__report-section h2){font-size:var(--sfr-user-size-h3)!important}
.sfr-a01 :is(.sfr-a01__page-head p,.sfr-a01__card-head p,.sfr-a01__notice,.sfr-a01__field-help,.sfr-a01__state-card p){font-size:var(--sfr-user-size-note)!important}
.sfr-a01 :is(.sfr-a01__button,.sfr-a01__workflow-tab strong,.sfr-a01__field label,.sfr-a01__control){font-size:var(--sfr-user-size-button)!important}
.sfr-a01 :is(.sfr-a01__financial-table,.sfr-a01__financial-table th,.sfr-a01__financial-table td){font-size:var(--sfr-user-size-table)!important}
.sfr-a01 :is([class*="kpi"] strong,[class*="metric"]>strong,[class*="value"]>strong){font-size:var(--sfr-user-size-kpi)}

/* Central brand accent; financial semantic colors remain green/orange/red. */
#sfr-platform-root .brand-mark,
#sfr-platform-root .sfr-account-brandmark,
#sfr-platform-root .sfr-header-tool-icon{background:linear-gradient(135deg,var(--sfr-user-accent),var(--sfr-primary))!important}
#sfr-platform-root :is(a,button,input,select,textarea):focus-visible{outline-color:var(--sfr-user-accent)!important}
#sfr-platform-root .sfr-theme-choice.is-action-highlight,
.sfr-appearance-launch[aria-expanded="true"]{color:var(--sfr-user-accent)!important;border-color:color-mix(in srgb,var(--sfr-user-accent) 46%,transparent)!important;background:color-mix(in srgb,var(--sfr-user-accent) 10%,transparent)!important}

/* The utility row grows safely when the appearance button is present. */
#sfr-platform-root .sfr-sidebar-utility-row{grid-template-columns:repeat(auto-fit,34px)!important;justify-content:center!important}
.sfr-appearance-aa{font:800 12px/1 "Inter",Arial,sans-serif;letter-spacing:-.04em}
body.sfr-sidebar-collapsed #sfr-platform-root .sfr-sidebar-utility-row{grid-template-columns:42px!important}

/* Appearance panel — anchored to the Aa button like WordPress Screen Options. */
.sfr-appearance-panel{
  position:fixed;z-index:2147483000;width:min(430px,calc(100vw - 24px));max-height:min(660px,calc(100dvh - 24px));overflow:hidden;
  padding:0;border:1px solid #cbd5e1;border-radius:14px;background:#fff;color:#0f172a;
  box-shadow:0 18px 52px rgba(2,6,23,.28);font-family:var(--sfr-user-font-family);direction:rtl
}
.sfr-appearance-panel[hidden]{display:none!important}
body.dark-platform .sfr-appearance-panel{background:#0b1728;color:#e7eef8;border-color:#334a65;box-shadow:0 20px 60px rgba(0,0,0,.46)}
.sfr-appearance-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px 12px;border-bottom:1px solid rgba(100,116,139,.22)}
.sfr-appearance-head small{display:block;color:var(--sfr-user-accent);font-weight:800;font-size:10.5px}
.sfr-appearance-head h2{margin:2px 0 2px;font-size:18px;line-height:1.35}
.sfr-appearance-head p{margin:0;color:#64748b;font-size:11.5px;line-height:1.55}
body.dark-platform .sfr-appearance-head p{color:#a9b8cb}
.sfr-appearance-close{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;padding:0;border:1px solid rgba(100,116,139,.3);border-radius:8px;background:transparent;color:inherit;font-size:20px;cursor:pointer}
.sfr-appearance-body{max-height:calc(min(660px,100dvh - 24px) - 128px);overflow:auto;overscroll-behavior:contain}
.sfr-appearance-group{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:start;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(100,116,139,.18)}
.sfr-appearance-group>header{padding-top:7px}
.sfr-appearance-group h3{margin:0;font-size:13px;line-height:1.4}
.sfr-appearance-group p{margin:2px 0 0;color:#64748b;font-size:9.75px;line-height:1.45}
body.dark-platform .sfr-appearance-group p{color:#93a6bd}
.sfr-appearance-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.sfr-appearance-options.is-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.sfr-appearance-choice{position:relative;display:flex;align-items:center;justify-content:center;min-height:34px;padding:6px 7px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;font-size:11.5px;font-weight:750;cursor:pointer;text-align:center;white-space:nowrap}
body.dark-platform .sfr-appearance-choice{background:#0f2035;border-color:#37516e;color:#dce7f4}
.sfr-appearance-choice input{position:absolute;opacity:0;pointer-events:none}
.sfr-appearance-choice:has(input:checked){border-color:var(--sfr-user-accent);background:color-mix(in srgb,var(--sfr-user-accent) 10%,#fff);color:var(--sfr-primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--sfr-user-accent) 24%,transparent)}
body.dark-platform .sfr-appearance-choice:has(input:checked){background:color-mix(in srgb,var(--sfr-user-accent) 18%,#0b1728);color:#fff}
.sfr-appearance-font-sample{display:block;font-size:12px}
.sfr-appearance-font-sample[data-font="cairo"]{font-family:"Cairo",sans-serif}
.sfr-appearance-font-sample[data-font="tajawal"]{font-family:"Tajawal",sans-serif}
.sfr-appearance-font-sample[data-font="system"]{font-family:system-ui,sans-serif}
.sfr-appearance-swatches{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
.sfr-appearance-swatch{position:relative;display:grid;place-items:center;gap:3px;min-height:46px;padding:5px 3px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;cursor:pointer;font-size:9px;font-weight:750;text-align:center}
body.dark-platform .sfr-appearance-swatch{background:#0f2035;border-color:#37516e}
.sfr-appearance-swatch input[type="radio"]{position:absolute;opacity:0}
.sfr-appearance-swatch i{display:block;width:19px;height:19px;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 1px rgba(255,255,255,.45),0 0 0 1px rgba(15,23,42,.16)}
.sfr-appearance-swatch:has(input:checked){border-color:var(--sfr-user-accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--sfr-user-accent) 26%,transparent)}
.sfr-appearance-custom-color{overflow:hidden}
.sfr-appearance-custom-color input[type="color"]{width:22px;height:22px;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer}
.sfr-appearance-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;background:#f8fafc;border-top:1px solid rgba(100,116,139,.2)}
body.dark-platform .sfr-appearance-footer{background:#0f2035}
.sfr-appearance-save-state{display:flex;align-items:center;gap:6px;color:#64748b;font-size:10.5px}
.sfr-appearance-save-state:before{content:"";width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 0 3px rgba(16,185,129,.12)}
body.dark-platform .sfr-appearance-save-state{color:#a9b8cb}
.sfr-appearance-reset{min-height:32px;padding:5px 9px;border:1px solid #cbd5e1;border-radius:8px;background:transparent;color:inherit;font-size:10.5px;font-weight:750;cursor:pointer}
.sfr-appearance-aa,.sfr-a02-appearance-aa{font:800 12px/1 "Inter",Arial,sans-serif;letter-spacing:-.04em}
.sfr-appearance-launch[aria-expanded="true"],.sfr-a02__appearance-launch[aria-expanded="true"]{color:var(--sfr-user-accent)!important;border-color:color-mix(in srgb,var(--sfr-user-accent) 46%,transparent)!important;background:color-mix(in srgb,var(--sfr-user-accent) 12%,transparent)!important}
@media(max-width:560px){
  .sfr-appearance-panel{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:12px}
  .sfr-appearance-group{grid-template-columns:1fr;gap:7px;padding:11px 12px}
  .sfr-appearance-group>header{padding-top:0}
  .sfr-appearance-group p{display:none}
  .sfr-appearance-options.is-four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sfr-appearance-footer{align-items:flex-start;flex-direction:column}
}

/* Printed/PDF reports retain the official SFR identity regardless of screen preference. */
@media print{
  #sfrAppearanceButton,[data-sfr-appearance-open],#sfrAppearancePanel{display:none!important}
  #sfr-platform-root,.sfr-a01{
    --sfr-user-font-family:"Cairo","Tajawal",Tahoma,Arial,sans-serif!important;
    --sfr-user-accent:#2563eb!important;
    --sfr-primary:#1e3a8a!important;
    --sfr-action:#3b82f6!important;
    --sfr-brand-950:#10245f!important;
    --sfr-brand-900:#1e3a8a!important;
    --sfr-brand-700:#1d4ed8!important;
    --sfr-brand-500:#3b82f6!important;
    --sfr-brand-100:#dbeafe!important;
    --sfr-focus:#2563eb!important;
    font-family:"Cairo","Tajawal",Tahoma,Arial,sans-serif!important;
  }
}

