/* ============================================================
   SaFrAsa brand theme for SavaPage  (matches safrasa.eu)
   dark navy + blue→violet, Inter / Plus Jakarta Sans, glass
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@600;700;800&display=swap');

:root{
  --sf-bg:#0A0F1E; --sf-bg-alt:#0E1529; --sf-surface:#111827; --sf-surface-2:#1F2937;
  --sf-text:#F1F5F9; --sf-muted:#94A3B8; --sf-body:#CBD5E1;
  --sf-primary:#3B82F6; --sf-primary-l:#60A5FA; --sf-primary-d:#2563EB;
  --sf-accent:#8B5CF6; --sf-accent-l:#A78BFA;
  --sf-border:rgba(255,255,255,.08); --sf-border-2:rgba(255,255,255,.15);
  --sf-glass:rgba(255,255,255,.05); --sf-radius:6px;
  --sf-grad:linear-gradient(135deg,#3B82F6 0%,#8B5CF6 100%);
}

/* ---- base surfaces / text ---- */
html,body,.ui-mobile,.ui-page,.ui-content,.ui-panel-wrapper,.ui-panel-inner{
  background:var(--sf-bg)!important; color:var(--sf-body)!important;
  font-family:'Inter',system-ui,-apple-system,sans-serif!important;
}
body{background:radial-gradient(1200px 600px at 50% -10%,var(--sf-bg-alt),var(--sf-bg))!important;}
h1,h2,h3,h4,.ui-title,.sp-txt-header{font-family:'Plus Jakarta Sans','Inter',sans-serif!important;color:var(--sf-text)!important;text-shadow:none!important;}
p,label,span,td,th,.ui-li-desc{color:var(--sf-body)!important;}
a,.ui-link{color:var(--sf-primary-l)!important;}

/* ---- header / footer / bars / navbar ---- */
.ui-header,.ui-footer,.ui-bar,.ui-navbar,.ui-bar-a,.ui-bar-b,.ui-bar-inherit{
  background:linear-gradient(180deg,var(--sf-surface-2),var(--sf-surface))!important;
  color:var(--sf-text)!important; border-color:var(--sf-border)!important;
  text-shadow:none!important; box-shadow:0 1px 0 var(--sf-border)!important;
}
.ui-header .ui-title,.ui-footer .ui-title{color:var(--sf-text)!important;}

/* ---- content bodies / cards / popups / dialogs ---- */
.ui-body-a,.ui-body-b,.ui-body-c,.ui-body-d,.ui-body-inherit,.ui-body-e,
.ui-collapsible-content,.ui-popup,.ui-dialog .ui-content,.ui-panel,
.ui-collapsible-heading,.ui-corner-all,fieldset{
  background:var(--sf-surface)!important; color:var(--sf-body)!important;
  border:1px solid var(--sf-border)!important; border-radius:var(--sf-radius)!important;
}
.ui-popup,.ui-dialog .ui-content{background:var(--sf-surface-2)!important; backdrop-filter:blur(8px);}

/* ---- buttons (primary = SaFrAsa gradient) ---- */
.ui-btn,.ui-btn-a,.ui-btn-b,.ui-btn-c,.ui-btn-d,button,input[type=submit]{
  color:#fff!important; border:1px solid var(--sf-border-2)!important;
  border-radius:var(--sf-radius)!important; text-shadow:none!important;
  font-family:'Inter',sans-serif!important; font-weight:600!important;
  background:var(--sf-surface-2)!important;
}
.ui-btn-b,.ui-btn-active,input[type=submit],button[type=submit],
.ui-btn.ui-shadow.ui-btn-b,.sp-btn-primary{
  background:var(--sf-grad)!important; border-color:transparent!important;
  box-shadow:0 4px 16px rgba(59,130,246,.25)!important;
}
.ui-btn:hover{filter:brightness(1.08);}
.ui-btn:focus,.ui-focus,.ui-btn-active{box-shadow:0 0 0 2px var(--sf-accent-l)!important;}

/* ---- inputs / selects ---- */
input,textarea,select,.ui-input-text,.ui-input-search,.ui-select .ui-btn,.ui-flipswitch{
  background:var(--sf-surface-2)!important; color:var(--sf-text)!important;
  border:1px solid var(--sf-border)!important; border-radius:var(--sf-radius)!important;
}
input::placeholder,textarea::placeholder{color:var(--sf-muted)!important;}
.ui-input-text.ui-focus,input:focus,textarea:focus{border-color:var(--sf-primary)!important;box-shadow:0 0 0 2px var(--sf-glass)!important;}

/* ---- list views / tables ---- */
.ui-listview>li,.ui-li-static,.ui-li-has-thumb,.ui-table td,.ui-table th{
  background:var(--sf-surface)!important; color:var(--sf-body)!important; border-color:var(--sf-border)!important;
}
.ui-li-divider,.ui-bar.ui-li-divider{background:var(--sf-bg-alt)!important;color:var(--sf-muted)!important;border-color:var(--sf-border)!important;}
.ui-listview>li:hover{background:var(--sf-surface-2)!important;}

/* ---- misc: loader, checkbox accents, dividers ---- */
.ui-loader{background:var(--sf-surface-2)!important;color:var(--sf-text)!important;}
hr,.ui-bar{border-color:var(--sf-border)!important;}
input[type=checkbox],input[type=radio]{accent-color:var(--sf-primary);}
::selection{background:var(--sf-accent);color:#fff;}

/* ---- SaFrAsa login/about branding block ---- */
.sf-brand{text-align:center;padding:.5rem 0 1rem;}
.sf-brand img{width:min(72%,240px);height:auto;display:block;margin:1.2rem auto .4rem;}
.sf-brand .sf-tag{color:var(--sf-muted);font-family:'Inter',sans-serif;font-size:.85rem;letter-spacing:.02em;}
