/* FinalDesk UI layer — presentation only. No functional selectors or states are changed. */
:root{
  --fd-orange:#ff9f1a;
  --fd-orange-bright:#ffc043;
  --fd-orange-soft:rgba(255,159,26,.16);
  --fd-line:rgba(255,255,255,.13);
  --fd-line-strong:rgba(255,159,26,.58);
  --fd-bg:#090d11;
  --fd-panel:rgba(24,29,35,.92);
  --fd-panel-2:rgba(34,40,47,.88);
  --fd-text:#f5f7f8;
  --fd-muted:#9ca6ad;
  --accent:#ff9f1a;
  --gold:#ff9f1a;
  --primary:#ff9f1a;
}

html{color-scheme:dark;scrollbar-color:var(--fd-orange) #11161b;}
body:not(.family-report-printing){
  color:var(--fd-text);
  background-color:var(--fd-bg)!important;
  font-family:"Arial Narrow","Roboto Condensed","Segoe UI",Arial,sans-serif!important;
  letter-spacing:.01em;
}

body:not(.family-report-printing) :is(h1,h2,h3,h4,.brand,.ipad-brand,.eyebrow,.kicker,.section-title,.panel-title){
  font-family:Impact,"Arial Black","Arial Narrow",sans-serif!important;
  letter-spacing:.055em;
}

body:not(.family-report-printing) :is(.panel,.card,.section,.hero,.dialog,.modal-content,.sheet,.box,.widget,.sidebar,.content-card,.ticket-row,.access-card,.post-panel,.family,.person-card,.stat,.metric,.toolbar,.topbar,.window-titlebar){
  background-color:var(--fd-panel)!important;
  border-color:var(--fd-line)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.28)!important;
}

body:not(.family-report-printing) :is(.panel,.card,.section,.dialog,.content-card,.post-panel,.ticket-row,.family,.person-card,.access-card){
  border-radius:6px!important;
}

body:not(.family-report-printing) :is(.panel,.card,.section,.dialog,.content-card,.post-panel,.ticket-row,.family,.person-card):has(> header),
body:not(.family-report-printing) :is(.hero,.topbar,.toolbar){
  border-top:1px solid rgba(255,255,255,.16)!important;
}

body:not(.family-report-printing) :is(button,.btn,.button,[type="button"],[type="submit"],a.btn){
  border-radius:5px!important;
  font-family:"Arial Narrow","Segoe UI",Arial,sans-serif!important;
  font-weight:800!important;
  letter-spacing:.035em;
  transition:border-color .16s ease,background-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease;
}

body:not(.family-report-printing) :is(button,.btn,.button,[type="button"],a.btn):not(.danger):not(.red):hover{
  border-color:var(--fd-orange)!important;
  box-shadow:0 0 0 1px rgba(255,159,26,.2),0 0 18px rgba(255,159,26,.12)!important;
  transform:translateY(-1px);
}

body:not(.family-report-printing) :is(.primary,.gold,.active,[aria-selected="true"],.selected):not(.danger){
  border-color:var(--fd-orange)!important;
  color:#fff!important;
  box-shadow:inset 3px 0 0 var(--fd-orange),0 0 16px rgba(255,159,26,.1)!important;
}

body:not(.family-report-printing) :is(.primary,.gold){
  background:linear-gradient(180deg,rgba(255,159,26,.30),rgba(255,159,26,.12))!important;
}

body:not(.family-report-printing) :is(input,select,textarea,.input,.select){
  color:var(--fd-text)!important;
  background-color:rgba(9,13,17,.78)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:5px!important;
  outline:none!important;
}

body:not(.family-report-printing) :is(input,select,textarea):focus{
  border-color:var(--fd-orange)!important;
  box-shadow:0 0 0 2px rgba(255,159,26,.14)!important;
}

body:not(.family-report-printing) :is(input,textarea)::placeholder{color:#717b83!important;}
body:not(.family-report-printing) :is(label,.field)>span,
body:not(.family-report-printing) :is(.eyebrow,.kicker,.overline){text-transform:uppercase;letter-spacing:.075em;}

body:not(.family-report-printing) :is(.badge,.chip,.pill,.status-pill,.access-chip,.mini-domain,.sealed){
  border-radius:4px!important;
  font-weight:800!important;
  letter-spacing:.045em;
}

body:not(.family-report-printing) :is(.nav-button,.tab,.tabs button,[role="tab"]){
  border-radius:4px!important;
}

body:not(.family-report-printing) :is(.nav-button,.tab,.tabs button,[role="tab"]).active{
  color:var(--fd-orange-bright)!important;
  border-color:var(--fd-orange)!important;
  box-shadow:inset 3px 0 0 var(--fd-orange)!important;
}

body:not(.family-report-printing) :is(h1,h2,.panel-title,.section-heading h3)::before{
  content:"";
  display:inline-block;
  width:8px;height:8px;
  margin:0 10px 2px 1px;
  background:var(--fd-orange);
  transform:rotate(45deg);
  box-shadow:0 0 10px rgba(255,159,26,.42);
}

body:not(.family-report-printing) :is(a,.link){color:#ffc15a;}
body:not(.family-report-printing) hr{border-color:var(--fd-line)!important;}
body:not(.family-report-printing) ::selection{background:rgba(255,159,26,.34);color:#fff;}
body:not(.family-report-printing) ::-webkit-scrollbar{width:8px;height:8px;}
body:not(.family-report-printing) ::-webkit-scrollbar-track{background:#11161b;}
body:not(.family-report-printing) ::-webkit-scrollbar-thumb{background:#3a4148;border:2px solid #11161b;border-radius:8px;}
body:not(.family-report-printing) ::-webkit-scrollbar-thumb:hover{background:var(--fd-orange);}

/* Desktop shell */
body:not(.family-report-printing) .ipad-status{
  background:rgba(8,11,14,.94)!important;
  border-bottom:1px solid rgba(255,159,26,.45)!important;
}
body:not(.family-report-printing) .ipad-brand{color:var(--fd-orange-bright)!important;text-transform:uppercase;}
body:not(.family-report-printing) :is(.app-icon,.desktop-app,.dock-app){border-radius:7px!important;}
body:not(.family-report-printing) :is(.window,.app-window){border-color:rgba(255,255,255,.18)!important;border-radius:7px!important;}
body:not(.family-report-printing) .window-titlebar{border-bottom:1px solid rgba(255,159,26,.35)!important;}

/* Preserve clean one-page official documents and all print layouts. */
@media print{
  .paper,.print-cover,.print-section,#printReport{font-family:Georgia,"Times New Roman",serif!important;}
  .paper h1::before,.paper h2::before,.print-cover h1::before,.print-cover h2::before,.print-section h2::before{content:none!important;}
}

@media (max-width:760px){
  body:not(.family-report-printing) :is(h1,h2,.panel-title,.section-heading h3)::before{width:6px;height:6px;margin-right:7px;}
}

/* Readable tablet typography; print rules retain their existing typefaces. */
@media screen{
  body:not(.family-report-printing){font-family:"Segoe UI",Arial,sans-serif!important;letter-spacing:.01em}
  body:not(.family-report-printing) :is(h1,h2,h3,h4,h5,h6,b,strong,.brand,.ipad-brand,.eyebrow,.kicker,.section-title,.panel-title,.name,.person-name,.employee-name,.user-name,.author-name,.window-title){
    font-family:"Segoe UI",Arial,sans-serif!important;font-weight:700!important;
    letter-spacing:.01em!important;line-height:1.35!important;
  }
  body:not(.family-report-printing) :is(button,.btn,.button,[type="button"],[type="submit"],a.btn){font-family:"Segoe UI",Arial,sans-serif!important}
}
