:root{
  --ico-overview:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='9' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='5' rx='1.5'/%3E%3Crect x='14' y='12' width='7' height='9' rx='1.5'/%3E%3Crect x='3' y='16' width='7' height='5' rx='1.5'/%3E%3C/svg%3E");
  --ico-payments:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M2.5 20c.8-3.6 3.4-5.5 6.5-5.5s5.7 1.9 6.5 5.5'/%3E%3Cpath d='M16 4.5a3.5 3.5 0 0 1 0 7M18.5 14.8c1.7.8 2.7 2.5 3 5.2'/%3E%3C/svg%3E");
  --ico-expenses:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7h15a3 3 0 0 1 3 3v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V7z'/%3E%3Cpath d='M3 7l12-3.5V7'/%3E%3Ccircle cx='16.5' cy='14' r='1.3'/%3E%3C/svg%3E");
  --ico-receipt:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2.5h12v19l-3-2-3 2-3-2-3 2z'/%3E%3Cpath d='M9 7.5h6M9 11h6M9 14.5h4'/%3E%3C/svg%3E");
  --ico-ledger:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 6h13M8 12h13M8 18h13'/%3E%3Ccircle cx='3.8' cy='6' r='.9'/%3E%3Ccircle cx='3.8' cy='12' r='.9'/%3E%3Ccircle cx='3.8' cy='18' r='.9'/%3E%3C/svg%3E");
  --ico-reports:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3v18h18'/%3E%3Cpath d='M7 15l4-4 3 3 5-6'/%3E%3C/svg%3E");
  --ico-backup:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 18a4.5 4.5 0 0 1-.6-8.96A6 6 0 0 1 18 8a4 4 0 0 1 .5 7.97'/%3E%3Cpath d='M12 12v8M9 17l3 3 3-3'/%3E%3C/svg%3E");
  --ico-profile:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c1-4 4.2-6 8-6s7 2 8 6'/%3E%3C/svg%3E");
  --ico-subscription:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l2.7 5.6 6.1.9-4.4 4.3 1 6.1L12 17l-5.4 2.9 1-6.1L3.2 9.5l6.1-.9z'/%3E%3C/svg%3E");
  --ico-users:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.5'/%3E%3Cpath d='M5 20c.8-3.4 3.6-5.2 7-5.2s6.2 1.8 7 5.2'/%3E%3Cpath d='M19 3.5l1 1.8 2 .3-1.5 1.4.4 2-1.9-1-1.9 1 .4-2L16 5.6l2-.3z'/%3E%3C/svg%3E");
  --ico-health:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12h4l2.5-6 4 12 2.5-6H21'/%3E%3C/svg%3E");
  --ico-guide:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4.5A2.5 2.5 0 0 1 6.5 2H20v17H6.5A2.5 2.5 0 0 0 4 21.5z'/%3E%3Cpath d='M4 21.5A2.5 2.5 0 0 1 6.5 19H20v3H6.5'/%3E%3C/svg%3E");
  --ico-logout:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 4h3a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-3'/%3E%3Cpath d='M10 17l-5-5 5-5M5 12h11'/%3E%3C/svg%3E");
  --ico-more:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='5' cy='12' r='1.4'/%3E%3Ccircle cx='12' cy='12' r='1.4'/%3E%3Ccircle cx='19' cy='12' r='1.4'/%3E%3C/svg%3E");
  --ico-save:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 18a4.5 4.5 0 0 1-.6-8.96A6 6 0 0 1 18 8a4 4 0 0 1 .5 7.97'/%3E%3Cpath d='M12 20v-8M9 15l3-3 3 3'/%3E%3C/svg%3E");
  --ico-plus:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E");
  --ico-trash:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M10 11v6M14 11v6M6 7l1 13h10l1-13M9 7V4h6v3'/%3E%3C/svg%3E");
}

/* =====================================================================
   SSBAPP — هيكل الواجهة الجديد: قائمة جانبية + تبويبات + شريط علوي
   يعمل فوق ملفي CSS الأصلي و Ledger. شاشة فقط، لا يمس الطباعة أو PDF.
   ===================================================================== */
@media screen{

/* ---------- أيقونات (قناع CSS بلون النص) ---------- */
.nav-item::before,.side-btn::before,.quick-link::before,#saveBtn::before,.year-box button::before,#addResidentBtn::before,#addExpenseBtn::before,#clearActiveYearBtn::before{
  content:"";flex:0 0 auto;width:19px;height:19px;background:currentColor;
  -webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat;
}
.nav-overview{--ico:var(--ico-overview);} .nav-payments,.ql-payments{--ico:var(--ico-payments);} .nav-expenses,.ql-expenses{--ico:var(--ico-expenses);} .nav-more{--ico:var(--ico-more);}
#receiptBtn,.ql-receipt{--ico:var(--ico-receipt);} #receiptsLedgerBtn{--ico:var(--ico-ledger);} #reportsBtn,.ql-reports{--ico:var(--ico-reports);}
#backupExportCenterBtn{--ico:var(--ico-backup);} #profileBtn{--ico:var(--ico-profile);} #subscriptionBtn{--ico:var(--ico-subscription);}
#usersBtn{--ico:var(--ico-users);} #systemHealthBtn{--ico:var(--ico-health);} #userGuideBtn{--ico:var(--ico-guide);} #logoutBtn{--ico:var(--ico-logout);}
#saveBtn{--ico:var(--ico-save);} #addYearBtn,#addResidentBtn,#addExpenseBtn{--ico:var(--ico-plus);} #deleteYearBtn,#clearActiveYearBtn{--ico:var(--ico-trash);}

/* ---------- شاشة الدخول (لوحتان) ---------- */
#loginView{place-items:center;}
.login-split{
  position:relative;
  display:grid;grid-template-columns:1.05fr 1fr;
  width:min(980px,100%);
  border-radius:28px;overflow:hidden;
  background:var(--surface);
  box-shadow:var(--shadow-lg);
}
.login-brand{
  position:relative;
  display:flex;flex-direction:column;justify-content:center;gap:14px;
  padding:44px 40px;
  color:#f3ede0;
  background:
    radial-gradient(420px 260px at 100% 0%,rgba(184,134,47,.32),transparent 65%),
    linear-gradient(160deg,var(--pine-700),var(--pine-950));
}
.login-brand::after{
  content:"";position:absolute;inset:auto 0 0 0;height:120px;opacity:.12;pointer-events:none;
  background:
    linear-gradient(rgba(255,255,255,.9) 1px,transparent 1px) 0 0/26px 26px,
    linear-gradient(90deg,rgba(255,255,255,.9) 1px,transparent 1px) 0 0/26px 26px;
  -webkit-mask-image:linear-gradient(0deg,#000,transparent);mask-image:linear-gradient(0deg,#000,transparent);
}
.login-brand h2{margin:6px 0 0;font-size:32px;font-weight:800;color:#fff;}
.login-brand p{margin:0;color:var(--pine-200);line-height:1.9;font-size:15px;font-weight:500;}
.login-features{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:10px;}
.login-features li{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.7;color:#f3ede0;font-weight:500;}
.login-features li::before{content:"";flex:0 0 auto;width:20px;height:20px;margin-top:3px;border-radius:50%;
  background:var(--brass) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat;}
.brand-mark{
  display:inline-block;flex:0 0 auto;width:40px;height:40px;border-radius:12px;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b2b28' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 21V5.5L12 3l8 2.5V21'/%3E%3Cpath d='M2.5 21h19'/%3E%3Cpath d='M8 8h2M14 8h2M8 11.5h2M14 11.5h2M8 15h2M14 15h2'/%3E%3Cpath d='M10.5 21v-3h3v3'/%3E%3C/svg%3E") center/24px no-repeat,
    linear-gradient(145deg,var(--brass-200),var(--brass));
  box-shadow:0 6px 14px -6px rgba(0,0,0,.5);
}
.brand-mark-lg{width:64px;height:64px;border-radius:18px;background-size:38px,auto;}
.login-split .login-card{
  width:auto;border:0;border-radius:0;box-shadow:none;
  padding:44px 38px 26px;text-align:start;
}
.login-split .login-card::before{display:none;}
.login-split .login-card h1{margin:0 0 4px;font-size:21px;text-align:start;}
.login-lead{margin:0 0 20px;color:var(--muted-ink);font-weight:500;}
.login-label{display:block;margin:10px 0 2px;font-size:13px;font-weight:700;color:var(--ink-2);}
.login-split .login-card input:not([type=checkbox]){text-align:start;margin:4px 0;}
.login-split .login-card #registerPanel input{text-align:start;}
.login-split .login-version{text-align:start;}

/* ---------- الإطار العام ---------- */
.ledger-shell{
  max-width:none;margin:0;padding:0;
  display:grid;grid-template-columns:272px minmax(0,1fr);
  min-height:100vh;align-items:start;
}

/* القائمة الجانبية */
.side{
  position:sticky;top:0;height:100vh;overflow-y:auto;
  display:flex;flex-direction:column;gap:4px;
  padding:18px 14px 18px;
  color:#e9e3d6;
  background:
    radial-gradient(380px 260px at 100% 0%,rgba(184,134,47,.20),transparent 65%),
    linear-gradient(180deg,var(--pine-800),var(--pine-950));
  border-inline-start:1px solid rgba(255,255,255,.05);
  scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent;
}
.side-brand{display:flex;align-items:center;gap:11px;padding:4px 6px 16px;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,.08);}
.side-brand b{display:block;font-size:16px;font-weight:800;color:#fff;}
.side-brand small{display:block;font-size:11.5px;color:var(--pine-200);font-weight:500;margin-top:2px;}
.side-close{display:none;margin-inline-start:auto;background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.15)!important;color:#fff!important;box-shadow:none!important;width:36px;height:36px;padding:0!important;border-radius:10px!important;}
.side-label{margin:14px 10px 6px;font-size:11px;font-weight:700;color:rgba(233,227,214,.5);letter-spacing:0;}
.side-nav,.side-actions{display:flex;flex-direction:column;gap:3px;}
.side .nav-item,.side .side-btn{
  display:flex!important;align-items:center;justify-content:flex-start;gap:11px;
  width:100%!important;max-width:none!important;min-height:42px;height:auto!important;
  margin:0!important;padding:9px 12px!important;
  border:1px solid transparent!important;border-radius:11px!important;
  background:transparent!important;color:#e9e3d6!important;
  box-shadow:none!important;
  font-size:14px!important;font-weight:600!important;text-align:start;
  transform:none!important;filter:none!important;
}
.side .nav-item:hover,.side .side-btn:hover{background:rgba(255,255,255,.07)!important;color:#fff!important;}
.side .nav-item.active{
  background:linear-gradient(90deg,rgba(184,134,47,.10),rgba(184,134,47,.24))!important;
  border-color:rgba(236,214,168,.25)!important;
  color:#fff!important;font-weight:800!important;
}
.side .nav-item.active::before{background:var(--brass-200);}
.side .side-btn.hidden{display:none!important;}
.side #subscriptionBtn{color:var(--brass-200)!important;}
.side-account{
  margin-top:auto;padding:12px;border-radius:14px;
  background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.07);
  display:grid;gap:7px;
}
.side-account{margin-top:18px;}
.side-account-row{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;min-width:0;}
.side-account-row>span:first-child{color:rgba(233,227,214,.55);font-weight:600;flex:0 0 auto;}
.side-account-row b{color:#fff;font-weight:700;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:ltr;}
.side-account .plan-badge{padding:3px 10px;font-size:11px;}
.side #logoutBtn{margin-top:4px!important;justify-content:center;background:rgba(176,65,45,.22)!important;border-color:rgba(240,150,130,.3)!important;color:#ffd9cf!important;}
.side #logoutBtn:hover{background:rgba(176,65,45,.45)!important;color:#fff!important;}
.side-backdrop{display:none;}

/* المحتوى الرئيسي */
.main{min-width:0;padding:0 22px 40px;}
.main-head{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  margin:0 -22px 0;padding:14px 22px;
  background:rgba(243,239,230,.86);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--hair);
}
.menu-toggle{display:none;}
.head-title{min-width:0;flex:1 1 auto;}
.head-kicker{display:block;font-size:11.5px;font-weight:700;color:var(--brass-700);}
.head-title h1{margin:2px 0 0;font-size:24px;font-weight:800;color:var(--pine-900);line-height:1.3;}
.head-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.year-box{
  display:flex;align-items:center;gap:6px;
  padding:5px;border-radius:13px;
  background:var(--surface);border:1px solid var(--hair);box-shadow:var(--shadow-sm);
}
.year-box label{padding:0 8px 0 4px;font-size:13px;font-weight:700;color:var(--muted-ink);}
.year-box select{min-width:96px;height:36px;padding:4px 10px;border-radius:9px;font-weight:800;color:var(--pine-900);background:var(--pine-50);border-color:var(--pine-100);}
.year-box button{
  display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 11px;border-radius:9px;font-size:12.5px;box-shadow:none;
}
.year-box button.success{background:var(--ok-100);color:var(--ok);border-color:#bfe0ca;}
.year-box button.danger{background:var(--bad-50);color:var(--bad);border-color:#efc8bf;}
.year-box button::before{width:16px;height:16px;}
#saveBtn{
  display:inline-flex;align-items:center;gap:8px;
  height:46px;padding:0 20px;border-radius:13px;font-size:15px;
  background:linear-gradient(180deg,var(--pine-600),var(--pine-800));
  border-color:var(--pine-800);
  box-shadow:0 10px 22px -10px rgba(15,58,54,.75);
}

.main .dirty{margin:14px 0 0;}
.main .app-status-footer{max-width:none;justify-content:flex-start;margin:12px 0 0;border-radius:12px;background:transparent;border-style:dashed;box-shadow:none;}

/* بطاقات الملخص المالي */
.main .cards{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:14px;}

/* التبويبات */
.view{margin-top:14px;animation:viewIn .22s ease;}
@keyframes viewIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.view .smart-dashboard{margin:0;}
.view>.section{margin-top:0;}
.view>.section>h2{display:none;}
.view>.section>.actions{margin:0 0 12px;}
.view>.section .actions button,#addExpenseBtn{display:inline-flex;align-items:center;gap:7px;}
#addResidentBtn::before,#addExpenseBtn::before,#clearActiveYearBtn::before{width:16px;height:16px;}
.view #paymentsWrap,.view #expensesWrap{max-height:calc(100vh - 260px);}
.view #paymentsWrap thead th,.view #expensesWrap thead th{position:sticky;top:0;z-index:3;}

/* روابط سريعة في لوحة المتابعة */
.quick-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px;}
.quick-link{
  display:grid!important;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;row-gap:2px;align-items:center;
  padding:16px!important;border-radius:16px!important;text-align:start;
  background:var(--surface)!important;color:var(--ink)!important;border:1px solid var(--hair)!important;
  box-shadow:var(--shadow-sm)!important;
}
.quick-link::before{
  grid-row:1/3;width:42px;height:42px;border-radius:12px;
  -webkit-mask:none;mask:none;
  background:var(--pine-50) center/22px no-repeat;
  box-shadow:inset 0 0 0 1px var(--pine-100);
}
.quick-link::after{content:"";}
.quick-link b{font-size:15px;font-weight:800;color:var(--pine-900);}
.quick-link span{font-size:12px;color:var(--muted-ink);font-weight:500;}
.quick-link:hover{border-color:var(--brass-200)!important;transform:translateY(-2px)!important;box-shadow:var(--shadow)!important;filter:none!important;}
/* أيقونة داخل الدائرة: نستخدم خلفية ملونة مع قناع على عنصر b لا يلزم — نرسم الأيقونة بطبقة ثانية */
.quick-link{position:relative;}
.quick-link>b::before{
  content:"";position:absolute;inset-inline-start:27px;top:50%;width:22px;height:22px;margin-top:-11px;
  background:var(--pine-700);
  -webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat;
}
.ql-receipt::before{background-color:var(--brass-100);box-shadow:inset 0 0 0 1px var(--brass-200);}
.ql-receipt>b::before{background:var(--brass-700);}

/* الشريط السفلي (جوال) */
.bottom-nav{display:none;}

/* ---------- الشاشات المتوسطة ---------- */
@media (max-width:1280px){
  .main .cards{grid-template-columns:repeat(3,minmax(0,1fr));}
  .quick-links{grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* ---------- الجوال واللوحي: قائمة منزلقة + شريط سفلي ---------- */
@media (max-width:980px){
  .ledger-shell{grid-template-columns:minmax(0,1fr);}
  .side{
    position:fixed;top:0;bottom:0;inset-inline-start:0;z-index:9000;
    width:min(300px,86vw);height:100dvh;
    transform:translateX(105%);
    transition:transform .25s cubic-bezier(.2,.8,.2,1);
    box-shadow:var(--shadow-lg);
    padding-top:calc(18px + env(safe-area-inset-top));
    padding-bottom:calc(18px + env(safe-area-inset-bottom));
  }
  body.side-open .side{transform:none;}
  .side-close{display:inline-flex;align-items:center;justify-content:center;}
  .side-backdrop{display:block;position:fixed;inset:0;z-index:8999;background:rgba(8,34,32,.5);opacity:0;pointer-events:none;transition:opacity .2s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);}
  body.side-open .side-backdrop{opacity:1;pointer-events:auto;}
  body.side-open{overflow:hidden;}

  .main{padding:0 12px calc(86px + env(safe-area-inset-bottom));}
  .main-head{margin:0 -12px;padding:calc(10px + env(safe-area-inset-top)) 12px 10px;gap:10px;}
  .menu-toggle{
    display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
    width:42px;height:42px;padding:0;border-radius:12px;
    background:var(--pine-800);box-shadow:none;
  }
  .menu-toggle span,.menu-toggle span::before,.menu-toggle span::after{display:block;width:18px;height:2px;border-radius:2px;background:#fff;position:relative;content:"";}
  .menu-toggle span::before{position:absolute;top:-6px;}
  .menu-toggle span::after{position:absolute;top:6px;}
  .head-title h1{font-size:19px;}
  .head-kicker{font-size:10.5px;}
  .head-tools{flex:1 1 100%;}
  .year-box{flex:1 1 auto;}
  .year-box select{flex:1;}
  #saveBtn{flex:1 1 auto;justify-content:center;height:46px;}

  .bottom-nav{
    display:grid;grid-template-columns:repeat(4,1fr);
    position:fixed;inset-inline:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:8000;
    padding:6px;border-radius:20px;
    background:rgba(11,43,40,.94);
    -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
    box-shadow:0 18px 40px -14px rgba(8,34,32,.7);
  }
  .bottom-nav .nav-item{
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
    min-height:54px;padding:6px 2px;border-radius:15px;
    background:transparent;border:0;box-shadow:none;color:rgba(233,227,214,.7);
    font-size:11.5px;font-weight:700;
  }
  .bottom-nav .nav-item::before{width:21px;height:21px;}
  .bottom-nav .nav-item.active{background:rgba(184,134,47,.22);color:#fff;}
  .bottom-nav .nav-item.active::before{background:var(--brass-200);}
  .view #paymentsWrap,.view #expensesWrap{max-height:none;}
}
@media (max-width:620px){
  .login-split{grid-template-columns:1fr;border-radius:24px;}
  .login-brand{padding:26px 22px;gap:8px;text-align:center;align-items:center;}
  .login-brand p,.login-features{display:none;}
  .login-brand h2{font-size:22px;}
  .brand-mark-lg{width:54px;height:54px;}
  .login-split .login-card{padding:22px 20px 18px;}
  .main .cards{grid-template-columns:repeat(2,minmax(0,1fr));}
  .quick-links{grid-template-columns:1fr;}
  .year-box button{padding:0 9px;font-size:0;gap:0;}
  .year-box button::before{width:18px;height:18px;}
  .year-box label{display:none;}
  .main .app-status-footer{font-size:11px;gap:4px 12px;}
}

/* إخفاء عناصر الهيكل عند قفل البصمة لم يتغير: #appView يُطمس كما في الأصل */
} /* end @media screen */
@media screen{
  .side #userGuideBtn,.side #systemHealthBtn,.side #profileBtn,.side #receiptBtn,.side #receiptsLedgerBtn,.side #reportsBtn,.side #backupExportCenterBtn,.side #usersBtn{background:transparent!important;color:#e9e3d6!important;}
  .side #userGuideBtn:hover,.side #systemHealthBtn:hover,.side #profileBtn:hover,.side #receiptBtn:hover,.side #receiptsLedgerBtn:hover,.side #reportsBtn:hover,.side #backupExportCenterBtn:hover,.side #usersBtn:hover{background:rgba(255,255,255,.07)!important;color:#fff!important;}
  .side #subscriptionBtn{background:transparent!important;}
  .side #subscriptionBtn:hover{background:rgba(184,134,47,.18)!important;}
}
