
/* online v19: font-face references; upload real files to assets/fonts if needed */
@font-face{font-family:"Vazirmatn";src:url("assets/fonts/Vazirmatn-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Estedad";src:url("assets/fonts/Estedad-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Shabnam";src:url("assets/fonts/Shabnam-FD.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Sahel";src:url("assets/fonts/Sahel.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Samim";src:url("assets/fonts/Samim.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Gandom";src:url("assets/fonts/Gandom.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Tajawal";src:url("assets/fonts/Tajawal-Bold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}

:root{
  --bg:#f3f4f6;--panel:#ffffff;--ink:#1f2937;--muted:#6b7280;--blue:#123c69;--blue2:#1e6091;--gold:#d4a017;--red:#cf2e2e;--orange:#ed8936;--green:#16834a;--border:#d9dee8;--shadow:0 18px 45px rgba(18,60,105,.10);--radius:22px;--body-font:"B Roya","Roya","B Nazanin","Nazanin","Vazirmatn","Tahoma",system-ui,sans-serif;--heading-font:"B Titr","Titr","B Roya","Roya","B Nazanin","Nazanin","Tahoma",system-ui,sans-serif;--urgent-color:#cf2e2e;--important-color:#ed8936;--normal-color:#16834a
}
*{box-sizing:border-box}
body{margin:0;background:linear-gradient(135deg,#f8fafc 0,#f3f4f6 45%,#eef2f7 100%);color:var(--ink);font-family:var(--body-font);line-height:1.75}
.topbar{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 24px;background:rgba(255,255,255,.90);backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}
.brand{display:flex;gap:14px;align-items:center}.logo{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),#0b223d);font-size:26px;box-shadow:var(--shadow)}
h1,h2,h3,p{margin:0}h1,h2,h3,.card-head strong{font-family:var(--heading-font)}h1{font-size:24px;color:var(--blue);letter-spacing:-.3px}h2{font-size:29px}.brand p,.muted{color:var(--muted);font-size:14px}.mini{font-weight:400;font-size:12px}.top-actions,.toolbar,.form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:22px;padding:22px}.sidebar{position:sticky;top:96px;height:calc(100vh - 118px);background:linear-gradient(180deg,#123c69,#0c2b4e);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow)}
.nav{width:100%;margin:5px 0;padding:13px 15px;border:0;border-radius:16px;background:transparent;color:#eaf4ff;text-align:right;font:inherit;font-weight:800;cursor:pointer}.nav:hover,.nav.active{background:rgba(255,255,255,.14)}.content{min-width:0}.view{display:none}.view.active{display:block}.hero,.card{background:rgba(255,255,255,.94);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;padding:24px}.card{padding:20px;margin-bottom:18px}.sub-card{margin:18px 0;padding:16px;border:1px solid var(--border);border-radius:18px;background:#f8fafc}.card-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.grid{display:grid;gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.stat{padding:16px;border-radius:20px;background:#fff;border:1px solid var(--border)}.stat strong{display:block;font-size:28px;color:var(--blue)}button,.ghost,.primary,.secondary{font:inherit;border:0;border-radius:15px;padding:10px 15px;cursor:pointer;transition:.2s}.primary{background:linear-gradient(135deg,var(--blue),var(--blue2));color:white}.secondary{background:#e8f1fa;color:var(--blue)}.ghost{background:#fff;color:var(--blue);border:1px solid var(--border)}.danger{color:var(--red)}.input{width:100%;border:1px solid var(--border);background:#fff;border-radius:15px;padding:11px 13px;font:inherit;color:var(--ink);outline:none}.input:focus{border-color:var(--blue2);box-shadow:0 0 0 4px rgba(30,96,145,.12)}.small{max-width:210px}label{display:block;font-weight:800;color:#344054}.input, textarea, select{font-family:var(--body-font)}textarea{resize:vertical}.jalali-input,.money{direction:ltr;text-align:left;font-variant-numeric:tabular-nums}.rial-label{font-size:12px;color:var(--muted);font-weight:700}.list{display:grid;gap:10px}.item,.case-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:14px}.case-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:14px}.case-card{border-right:7px solid var(--normal-color)}.case-card.فوری{border-right-color:var(--urgent-color)}.case-card.مهم{border-right-color:var(--important-color)}.case-card.کم‌اهمیت{border-right-color:#7c8a99}.case-card h3{color:var(--blue)}.meta{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:3px 9px;background:#edf2f7;color:#344054;font-size:12px}.badge.red{background:rgba(207,46,46,.13);color:var(--urgent-color)}.badge.orange{background:rgba(237,137,54,.14);color:var(--important-color)}.badge.green{background:rgba(22,131,74,.13);color:var(--normal-color)}.badge.blue{background:rgba(30,96,145,.12);color:var(--blue2)}.ai-box{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:16px;padding:16px;border-radius:18px;background:linear-gradient(135deg,#f9fafb,#eef7ff);border:1px dashed #cbd5e1}.ai-result{margin-top:12px;padding:14px;border-radius:16px;background:#f0f9ff;border:1px solid #bae6fd}.report-box,.table-wrap{margin-top:15px;overflow:auto}.report-table{width:100%;border-collapse:collapse;background:#fff;border-radius:16px;overflow:hidden}.report-table th,.report-table td{border-bottom:1px solid var(--border);padding:10px;text-align:right;white-space:nowrap}.report-table th{background:#123c69;color:white}.calendar-result{display:grid;grid-template-columns:repeat(1,1fr);gap:12px;margin-top:15px}.date-card{padding:18px;border-radius:18px;background:#fff;border:1px solid var(--border);text-align:center}.date-card strong{display:block;color:var(--blue);font-size:20px;direction:ltr}.toast{position:fixed;bottom:18px;left:18px;z-index:20;background:#111827;color:white;padding:12px 16px;border-radius:16px;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);transition:.25s}.toast.show{opacity:1;transform:translateY(0)}dialog{border:0;border-radius:22px;box-shadow:0 20px 90px rgba(0,0,0,.35);max-width:760px;width:92%;padding:22px;background:var(--panel)}.time-wrap.hidden{display:none!important}.spacious .item{margin-bottom:14px}.alert-red{border-right:6px solid var(--urgent-color)}.alert-orange{border-right:6px solid var(--important-color)}.alert-green{border-right:6px solid var(--normal-color)}.alert-blue{border-right:6px solid var(--blue2)}.report-filters{margin-top:18px}.report-actions{margin-top:16px;align-items:end;flex-wrap:wrap}.report-summary{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:12px;margin:18px 0}.report-box{margin-top:18px}.report-box .report-table{margin-top:12px}.table-wrap{overflow:auto}
@media(max-width:1100px){.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.layout{grid-template-columns:1fr;padding:14px}.sidebar{position:static;height:auto;display:grid;grid-template-columns:repeat(2,1fr)}.topbar,.hero{align-items:flex-start;flex-direction:column}.grid.two,.grid.three,.grid.four,.stats,.calendar-result,.report-summary{grid-template-columns:1fr}.case-list{grid-template-columns:1fr}.top-actions{width:100%}.top-actions>*{flex:1}.small{max-width:none}}
@media print{.topbar,.sidebar,.toolbar,.report-actions,#expenseForm,.nav,.ghost,.primary,.secondary{display:none!important}.layout{display:block;padding:0}.content{width:100%}.view{display:block!important}.view:not(#reports){display:none!important}.card{box-shadow:none;border:0}.report-table{font-size:11px}body{background:white}}


/* v4 visual refinements requested by user */
body{background:linear-gradient(135deg,#eef1f5 0,#f3f4f6 38%,#e8edf4 100%)}
.topbar{background:rgba(246,248,251,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(18,60,105,.10)}
.logo{background:#0b223d;padding:6px;overflow:hidden}
.logo img{width:100%;height:100%;object-fit:contain;display:block}
.brand h1{font-family:var(--heading-font);font-weight:900}.brand p{font-weight:700;color:#4b5f77}
.nav{font-weight:950;font-size:15.5px;letter-spacing:-.15px}.nav.active{box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
.hero,.card{background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(248,250,252,.95));border-color:#d7dee9}
.hero{background:linear-gradient(135deg,#ffffff 0,#f5f8fc 55%,#edf4fb 100%)}
#todayLine{font-weight:950;color:#123c69;background:rgba(30,96,145,.08);display:inline-block;margin-top:8px;padding:5px 12px;border-radius:999px}
.content{background:radial-gradient(circle at 15% 4%,rgba(212,160,23,.06),transparent 28%),radial-gradient(circle at 90% 18%,rgba(30,96,145,.08),transparent 26%);border-radius:28px}
.input{background:#fbfcfe;border-width:1.5px}.input:focus{background:#fff}.session-time-field{border:2px dashed rgba(30,96,145,.25);border-radius:16px;padding:9px 11px;background:#f8fbff}.session-time-field input{margin-top:4px}
.case-card{border:2px solid var(--normal-color);border-right-width:7px;background:linear-gradient(180deg,#fff,#fbfcff)}
.case-card.فوری{border-color:var(--urgent-color);background:linear-gradient(180deg,#fff,#fff7f7)}
.case-card.مهم{border-color:var(--important-color);background:linear-gradient(180deg,#fff,#fffaf4)}
.case-card.کم‌اهمیت{border-color:#7c8a99;background:linear-gradient(180deg,#fff,#f7f9fb)}
.badge.priority-badge{font-size:14px;font-weight:950;padding:5px 13px;border-radius:999px;box-shadow:0 6px 18px rgba(0,0,0,.06)}
.alert-red{border:2px solid var(--urgent-color);border-right-width:7px}.alert-orange{border:2px solid var(--important-color);border-right-width:7px}.alert-green{border:2px solid var(--normal-color);border-right-width:7px}.alert-blue{border:2px solid var(--blue2);border-right-width:7px}
.jalali-picker-dialog{max-width:390px;width:92%;padding:18px;background:#f8fafc}.picker-head,.picker-actions{display:flex;justify-content:space-between;align-items:center;gap:10px}.picker-head strong{font-family:var(--heading-font);font-size:20px;color:var(--blue)}.picker-weekdays,.picker-days{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-top:12px}.picker-weekdays span{text-align:center;color:var(--muted);font-weight:900}.picker-days button{border:1px solid var(--border);background:#fff;border-radius:12px;padding:9px 0;font:inherit;font-weight:900;cursor:pointer}.picker-days button:hover{background:#e8f1fa;color:var(--blue);border-color:var(--blue2)}.picker-actions{margin-top:14px;justify-content:flex-end}
@media(max-width:760px){.logo{width:48px;height:48px}.content{border-radius:18px}.picker-days button{padding:8px 0}}

/* v5 requested fixes: navy logo, softer backgrounds, configurable card/input colors, better calendars */
:root{--app-bg:#eef1f5;--card-bg:#f7f9fc;--input-bg:#fbfcfe}
body{background:linear-gradient(135deg,var(--app-bg) 0,#f0f3f8 42%,#e7edf5 100%)}
.topbar{background:rgba(240,244,249,.94)}
.logo{width:66px;height:66px;border-radius:18px;background:#fff!important;box-shadow:0 10px 32px rgba(8,38,73,.16);padding:4px;border:1px solid rgba(8,38,73,.10)}
.logo img{width:100%;height:100%;object-fit:contain;display:block}
.hero,.card{background:linear-gradient(180deg,var(--card-bg),#f3f6fa);border-color:var(--border)}
.hero{background:linear-gradient(135deg,var(--card-bg) 0,#eef4fb 62%,#e6edf6 100%)}
.sub-card,.stat,.item,.case-card,.date-card{background:var(--card-bg)}
.input{background:var(--input-bg)}
.input:focus{background:#fff}
h1,h2,h3,.card-head strong,.picker-head strong{font-weight:650}
.brand h1{font-weight:650}.brand p{font-weight:750;color:#344f6f}.brand p::after{content:''}
.picker-days button.today{background:#123c69!important;color:#fff!important;border-color:#123c69!important;box-shadow:0 8px 18px rgba(18,60,105,.20)}
.picker-days button.holiday{color:#cf2e2e;border-color:rgba(207,46,46,.35)}
.jalali-picker-dialog::backdrop{background:rgba(15,23,42,.28);backdrop-filter:blur(2px)}
.full-calendar-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:10px 0 14px}.full-calendar-head strong{font-family:var(--heading-font);font-size:22px;color:#123c69;font-weight:650}.full-weekdays,.full-days{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.full-weekdays span{text-align:center;font-weight:850;color:#475569;background:rgba(255,255,255,.65);border:1px solid var(--border);border-radius:12px;padding:8px}.day{min-height:88px;border:1px solid var(--border);border-radius:16px;background:var(--input-bg);text-align:right;padding:9px;display:flex;flex-direction:column;gap:3px;color:#0f172a;cursor:pointer}.day.empty{background:transparent;border:0;cursor:default}.day b{font-size:18px}.day small{font-size:11px;color:#64748b;line-height:1.45}.day em{font-style:normal;font-size:11px;background:#123c69;color:#fff;border-radius:999px;padding:1px 7px;width:max-content}.day.today{border:2px solid #123c69;background:#eef6ff}.day.holiday b,.day.holiday small{color:#cf2e2e}.selected-date{margin-top:14px;text-align:center;background:linear-gradient(135deg,#f8fafc,#eef6ff)}.selected-date p{margin-top:6px}.calendar-toolbar{align-items:end;margin:12px 0 16px}.calendar-toolbar label{min-width:260px}
@media(max-width:760px){.full-weekdays span{font-size:11px;padding:6px}.full-days{gap:5px}.day{min-height:70px;padding:6px}.day small{display:none}.full-calendar-head{flex-direction:column}.calendar-toolbar label{min-width:0;width:100%}}

/* v6: print-perfect reports, prettier compact calendars, stronger mobile/PWA layout */
.report-table{border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 8px 24px rgba(18,60,105,.04)}
.report-table th,.report-table td{border:1px solid #d9dee8;vertical-align:middle;background-clip:padding-box}.report-table tbody tr:nth-child(even) td{background:rgba(255,255,255,.42)}
.report-box::before{content:'برای PDF مرتب: بعد از زدن چاپ، مقصد را Save as PDF بگذارید. جدول با خطوط کامل و تفکیک‌شده چاپ می‌شود.';display:block;margin:8px 0 12px;padding:9px 12px;border-radius:14px;background:#eef6ff;border:1px solid #cfe3f7;color:#123c69;font-size:13px;font-weight:800}

/* compact elegant date picker */
.jalali-picker-dialog{max-width:338px;padding:14px;border-radius:20px;background:linear-gradient(180deg,#fbfdff,#f1f6fb);border:1px solid rgba(18,60,105,.08)}
.picker-head strong{font-size:18px}.picker-head .ghost,.picker-actions .ghost,.picker-actions .secondary{padding:7px 10px;border-radius:12px;font-size:13px}.picker-weekdays,.picker-days{gap:5px;margin-top:10px}.picker-weekdays span{font-size:12px}.picker-days button{min-height:34px;padding:5px 0;border-radius:11px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 4px 10px rgba(18,60,105,.04)}.picker-days button.today{background:linear-gradient(135deg,#123c69,#1e6091)!important;color:#fff!important}.picker-actions{margin-top:11px}

/* full calendar: smaller and more decorative */
#calendar .card{max-width:980px;margin-inline:auto}.full-calendar-head{background:linear-gradient(135deg,#eef6ff,#f8fafc);border:1px solid #d7e6f6;border-radius:18px;padding:10px 12px;box-shadow:0 8px 24px rgba(18,60,105,.06)}.full-calendar-head strong{font-size:20px}.full-calendar-head .ghost{padding:7px 11px;border-radius:12px}.full-weekdays,.full-days{gap:6px}.full-weekdays span{padding:6px;font-size:12px;background:#f8fbff}.day{min-height:66px;border-radius:14px;padding:7px;background:linear-gradient(180deg,#fff,#f7fbff);box-shadow:0 5px 14px rgba(18,60,105,.045)}.day b{font-size:16px}.day small{font-size:10.5px;line-height:1.35;max-height:28px;overflow:hidden}.day.today{background:linear-gradient(135deg,#e9f5ff,#ffffff);box-shadow:inset 0 0 0 2px #123c69,0 8px 20px rgba(18,60,105,.10)}.day.today b{background:#123c69;color:#fff;border-radius:999px;padding:1px 8px;width:max-content}.day.holiday{background:linear-gradient(180deg,#fff7f7,#fff)}.selected-date{border:1px solid #d7e6f6}

/* Mobile/PWA responsive corrections */
@media(max-width:640px){
  body{font-size:14px;line-height:1.65;overflow-x:hidden;background:#eef2f7}
  .topbar{position:static;padding:12px 12px;gap:10px}.brand{gap:10px}.logo{width:50px;height:50px;border-radius:14px}.brand h1{font-size:20px}.brand p{font-size:12px;line-height:1.5}.top-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px}.top-actions .ghost,.top-actions .file-label{padding:8px 10px;text-align:center;justify-content:center}
  .layout{display:block;padding:10px}.sidebar{display:flex;position:sticky;top:0;z-index:6;height:auto;overflow-x:auto;gap:8px;padding:9px;border-radius:16px;margin-bottom:12px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.sidebar::-webkit-scrollbar{height:4px}.nav{min-width:132px;white-space:nowrap;text-align:center;margin:0;padding:9px 10px;border-radius:13px;font-size:13px;scroll-snap-align:start}.content{border-radius:18px;padding:0;background:transparent}.hero,.card{border-radius:17px;padding:14px;margin-bottom:12px}.hero{gap:12px}.hero h2{font-size:22px}.hero .primary{width:100%}
  .grid.two,.grid.three,.grid.four,.stats,.report-summary{grid-template-columns:1fr!important;gap:10px}.stat{padding:12px}.stat strong{font-size:22px}.case-list{grid-template-columns:1fr!important}.case-card,.item{border-radius:15px;padding:12px}.toolbar{display:grid;grid-template-columns:1fr;align-items:stretch}.toolbar .input,.toolbar .small{max-width:none;width:100%}.form-actions .primary{width:100%}
  label{font-size:13px}.input{min-height:42px;border-radius:13px;padding:9px 10px}.session-time-field{padding:8px}.ai-box{display:block}.ai-box button{margin-top:10px;width:100%}
  dialog{width:94vw;max-width:94vw;padding:14px;border-radius:18px}.jalali-picker-dialog{width:330px;max-width:94vw}.picker-days button{min-height:32px;font-size:13px}.picker-weekdays span{font-size:11px}
  .report-box,.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.report-table{min-width:720px;font-size:12px}.report-table th,.report-table td{padding:7px 8px}.report-box::before{font-size:12px;line-height:1.6}
  .calendar-toolbar{display:grid;grid-template-columns:1fr;gap:8px}.calendar-toolbar label{width:100%;min-width:0}.full-calendar-head{gap:8px;padding:9px}.full-calendar-head strong{font-size:17px}.full-weekdays,.full-days{gap:4px}.full-weekdays span{font-size:10px;padding:5px 2px;border-radius:9px}.day{min-height:48px;padding:5px;border-radius:10px}.day b{font-size:14px}.day small,.day em{display:none}.selected-date{padding:12px}
}

@media(max-width:380px){.nav{min-width:118px;font-size:12px}.brand h1{font-size:18px}.logo{width:46px;height:46px}.jalali-picker-dialog{width:310px}.picker-days button{min-height:30px}.day{min-height:43px}}

/* Dedicated print/PDF format for reports */
@page{size:A4 landscape;margin:10mm}
@media print{
  *{box-shadow:none!important;text-shadow:none!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  html,body{width:100%;background:#fff!important;color:#111!important;font-family:"B Nazanin","Nazanin","Tahoma",sans-serif!important;line-height:1.45!important}
  .topbar,.sidebar,.toolbar,.report-actions,#expenseForm,.nav,.ghost,.primary,.secondary,.toast,.report-filters,.report-box::before{display:none!important}
  .layout{display:block!important;padding:0!important;margin:0!important}.content{background:#fff!important;border-radius:0!important;width:100%!important}.view{display:none!important}.view#reports{display:block!important}.card{display:block!important;background:#fff!important;border:0!important;padding:0!important;margin:0!important}.card-head{display:block!important;margin:0 0 8px!important}.card-head h3{font-size:18px!important;color:#000!important;text-align:center!important;margin-bottom:8px!important}.muted{color:#333!important}
  .report-summary{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:6px!important;margin:6px 0 8px!important}.report-summary .stat{border:1px solid #222!important;border-radius:0!important;background:#fff!important;padding:5px!important}.report-summary .stat span{display:block;font-size:10px}.report-summary .stat strong{font-size:12px!important;color:#000!important}
  .report-box,.table-wrap{overflow:visible!important;margin:0!important}.report-table{width:100%!important;min-width:0!important;border-collapse:collapse!important;border:1.4px solid #111!important;border-radius:0!important;background:#fff!important;font-size:9.2px!important;table-layout:auto!important;page-break-inside:auto!important}.report-table thead{display:table-header-group!important}.report-table tfoot{display:table-footer-group!important}.report-table tr{page-break-inside:avoid!important;page-break-after:auto!important}.report-table th,.report-table td{border:1px solid #111!important;padding:4px 5px!important;text-align:center!important;vertical-align:middle!important;white-space:normal!important;word-break:break-word!important;background:#fff!important;color:#000!important}.report-table th{background:#e9eef5!important;font-weight:900!important}.report-table td:nth-child(2),.report-table td:nth-child(7),.report-table td:nth-child(8){text-align:right!important}
}

/* v8: generic lawyer report branding + small report corner logo */
.report-print-header{display:none}
@media screen{
  .report-print-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;padding:10px 12px;border:1px dashed var(--border);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(246,248,251,.92))}
  .report-print-title{font-weight:800;color:var(--blue);font-size:14px}
  .report-print-logo{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#fff;border:1px solid rgba(8,38,73,.10)}
  .report-print-logo img{max-width:100%;max-height:100%;object-fit:contain;display:block}
}
@media print{
  .report-print-header{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:10px!important;margin:0 0 8px!important;padding:0!important;border:0!important;background:#fff!important}
  .report-print-title{font-size:13px!important;font-weight:900!important;color:#111!important;line-height:1.5!important;text-align:right!important;flex:1}
  .report-print-logo{width:38px!important;height:38px!important;display:block!important;flex:0 0 auto;border:0!important;background:#fff!important}
  .report-print-logo img{width:100%!important;height:100%!important;object-fit:contain!important;display:block!important}
}

/* v9: improve header logo framing and restore background color controls */
.logo{width:68px!important;height:68px!important;border-radius:20px!important;background:#fff!important;padding:9px!important;border:1px solid rgba(8,38,73,.14)!important;box-shadow:0 10px 32px rgba(8,38,73,.14)!important}
.logo img{width:100%!important;height:100%!important;max-width:86%!important;max-height:86%!important;object-fit:contain!important;margin:auto;display:block}
@media(max-width:760px){.logo{width:54px!important;height:54px!important;padding:7px!important;border-radius:16px!important}}
@media(max-width:380px){.logo{width:48px!important;height:48px!important;padding:6px!important;border-radius:14px!important}}


/* v10: compact task lists and completed-actions archive */
.compact-card{padding:16px!important}
.compact-list{gap:7px!important}
.compact-item{padding:9px 11px!important;border-radius:14px!important}
.compact-item p{margin:5px 0!important;line-height:1.45!important}
.compact-task-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.compact-task-head strong{font-size:15px}
.compact-task-head .ghost{padding:6px 10px!important;border-radius:11px!important;font-size:13px}
.done-item{opacity:.86;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(240,253,244,.7))!important}
.done-item strong{text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:rgba(22,131,74,.55)}
@media(max-width:760px){.compact-task-head{align-items:flex-start;flex-direction:column}.compact-task-head .ghost{width:100%}.compact-item{padding:10px!important}}


/* v13: completion notes, report column selector, cleaner print */
.no-print{display:initial}.compact-card{padding:16px!important}.compact-list{gap:7px!important}.compact-item{padding:9px 11px!important;border-radius:14px!important}.compact-item p{margin:5px 0!important;line-height:1.45!important}.compact-task-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.compact-task-head strong{font-size:15px}.compact-task-head .ghost{padding:6px 10px!important;border-radius:11px!important;font-size:13px}.done-item{opacity:.9;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(240,253,244,.7))!important}.done-item strong{text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:rgba(22,131,74,.55)}.done-dialog textarea{margin-top:8px}.report-columns{margin:12px 0}.compact-columns{padding:12px!important;margin:10px 0!important}.column-checks{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.column-checks label{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--border);border-radius:999px;padding:6px 10px;font-size:13px;font-weight:800}.column-checks input{accent-color:var(--blue)}
@media(max-width:760px){.compact-task-head{align-items:flex-start;flex-direction:column}.compact-task-head .ghost{width:100%}.compact-item{padding:10px!important}.column-checks label{width:100%;justify-content:flex-start}}
@media print{.no-print,.report-columns,.compact-columns,.report-help,.report-screen-title .badge,.report-filters,.report-actions{display:none!important}.report-screen-title h3{display:none!important}}


/* Online version: secure login, sync controls, mobile-first polish */
.auth-overlay{position:fixed;inset:0;z-index:9999;background:linear-gradient(135deg,#e9eef5,#f8fafc);display:none;align-items:center;justify-content:center;padding:20px}
.auth-locked .auth-overlay{display:flex}
.auth-locked .topbar,.auth-locked .layout{filter:blur(2px);pointer-events:none;user-select:none}
.auth-card{width:min(440px,94vw);background:#fff;border:1px solid var(--border);border-radius:28px;box-shadow:0 24px 80px rgba(18,60,105,.20);padding:26px}
.auth-logo{width:76px;height:76px;margin:0 auto 12px;background:#fff;border:1px solid var(--border);border-radius:22px;display:grid;place-items:center}
.auth-logo img{width:84%;height:84%;object-fit:contain}
.auth-card h1{text-align:center;color:var(--blue);font-family:var(--heading-font);font-size:28px;margin:4px 0}
.auth-card p{text-align:center;color:var(--muted);margin-bottom:18px}
.auth-card form{display:grid;gap:12px}
.auth-card .primary{width:100%;margin-top:6px}
.auth-help{margin-top:12px;padding:10px;border-radius:16px;background:#f8fafc;border:1px dashed var(--border);font-size:13px;color:#344054;text-align:center}
.top-actions{flex-wrap:wrap}
#syncBtn{min-width:96px}
@media(max-width:760px){
  .auth-card{padding:20px;border-radius:22px}
  .auth-card h1{font-size:24px}
  .top-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:7px}
  .top-actions button,.top-actions label{font-size:12px;padding:8px 8px!important}
}


/* online v4: stable layout and dropdown top tools */
:root{
  --sidebar-w: 184px;
  --soft-shadow:0 18px 45px rgba(12,47,87,.10);
}
html,body{min-height:100%;overflow-x:hidden}
body{
  background:
    radial-gradient(circle at 8% 0%, rgba(12,70,116,.13), transparent 30%),
    radial-gradient(circle at 92% 8%, rgba(24,120,150,.12), transparent 28%),
    linear-gradient(180deg,#eef3f8,#f8fafc 45%,#edf2f7)!important;
}
.topbar{
  position:relative!important;
  z-index:50!important;
  width:min(1580px,calc(100% - 24px))!important;
  min-height:78px!important;
  margin:14px auto 10px!important;
  padding:12px 20px!important;
  border-radius:28px!important;
  border:1px solid rgba(18,60,105,.10)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(244,248,252,.90))!important;
  box-shadow:var(--soft-shadow)!important;
}
.layout{
  width:min(1580px,calc(100% - 24px))!important;
  margin:0 auto 28px!important;
  gap:13px!important;
  grid-template-columns:var(--sidebar-w) minmax(0,1fr)!important;
  align-items:start!important;
}
.sidebar{
  width:var(--sidebar-w)!important;
  padding:12px 9px!important;
  border-radius:25px!important;
  background:linear-gradient(180deg,#164672,#082f59)!important;
  box-shadow:0 20px 48px rgba(8,47,89,.25)!important;
  position:sticky!important;
  top:14px!important;
}
.sidebar .nav{
  font-family:var(--sidebar-font)!important;
  font-size:13.5px!important;
  padding:10px 10px!important;
  min-height:40px!important;
  border-radius:15px!important;
  font-weight:900!important;
}
.sidebar .nav.active{
  background:linear-gradient(135deg,rgba(255,255,255,.24),rgba(255,255,255,.08))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 8px 18px rgba(0,0,0,.10);
}
.account-menu{position:relative;display:inline-block;z-index:999}
.menu-toggle{
  border:1px solid rgba(18,60,105,.18);
  background:linear-gradient(135deg,#123c69,#0b6c99);
  color:#fff;
  border-radius:18px;
  padding:12px 18px;
  font-family:var(--body-font);
  font-weight:900;
  cursor:pointer;
  box-shadow:0 10px 22px rgba(18,60,105,.20);
}
.menu-panel{
  display:none;
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  min-width:190px;
  padding:10px;
  border-radius:20px;
  background:#fff;
  border:1px solid rgba(18,60,105,.12);
  box-shadow:0 22px 60px rgba(18,60,105,.22);
  z-index:1000;
}
.menu-panel.open{display:grid;gap:8px}
.menu-panel button{width:100%;justify-content:center;text-align:center}
.card,.case-card,.sub-card{
  border-radius:24px!important;
  border:1px solid rgba(18,60,105,.10)!important;
  box-shadow:0 12px 34px rgba(18,60,105,.075)!important;
}
.card{background:linear-gradient(180deg,var(--card-bg),rgba(255,255,255,.92))!important}
.input,select,textarea{border-radius:16px!important}
.primary{
  background:linear-gradient(135deg,#123c69,#0b6c99)!important;
  box-shadow:0 10px 22px rgba(18,60,105,.22)!important;
}
.auth-card input::placeholder{color:transparent!important}
.auth-card .auth-help{display:none!important}
@media(max-width:980px){
  .layout{grid-template-columns:1fr!important;width:calc(100% - 16px)!important}
  .sidebar{
    width:100%!important;
    display:flex!important;
    overflow:auto!important;
    gap:8px!important;
    position:sticky!important;
    top:0!important;
    z-index:20!important;
    border-radius:0 0 22px 22px!important;
  }
  .sidebar .nav{white-space:nowrap;flex:0 0 auto}
  .topbar{width:calc(100% - 16px)!important;border-radius:0 0 24px 24px!important;margin:0 auto 8px!important}
  .menu-panel{left:auto;right:0}
}
@media print{
  .topbar,.sidebar,.report-filters,.report-actions,.report-columns,.compact-columns,.muted.print-hide{display:none!important}
}

/* online v5: login safety patch */
.menu-file-label{display:flex!important;align-items:center;justify-content:center;cursor:pointer}


/* online v6: organizations, selectable report rows, modern polish */
.grid.five{grid-template-columns:repeat(5,minmax(120px,1fr))}
.org-settings-box{
  background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(239,246,252,.88))!important;
  border:1px solid rgba(18,60,105,.12)!important;
}
.org-list{margin-top:12px;overflow:auto}
.org-table td,.org-table th{text-align:center}
.org-actions{white-space:nowrap}
.org-rule-hint-input{
  font-size:13px!important;
  background:linear-gradient(135deg,#f5f8fc,#eef5fb)!important;
  color:#123c69!important;
  font-weight:700;
}
.report-rows-help{
  margin:10px 0;
  padding:10px 14px;
  border-radius:16px;
  background:linear-gradient(135deg,#eef6ff,#f8fbff);
  border:1px dashed rgba(18,60,105,.22);
  color:#123c69;
  font-weight:800;
}
.print-check-cell{white-space:nowrap;text-align:center}
.report-row-excluded{opacity:.42;background:rgba(120,120,120,.06)!important}
.selectable-report-table tr{transition:.15s ease}
body{
  background:
    radial-gradient(circle at 12% 0%,rgba(18,60,105,.14),transparent 32%),
    radial-gradient(circle at 88% 8%,rgba(43,142,170,.12),transparent 28%),
    linear-gradient(180deg,#eef4f9 0%,#f9fbfd 46%,#edf2f7 100%)!important;
}
.card,.sub-card,.case-card{
  box-shadow:0 14px 38px rgba(18,60,105,.08)!important;
}
.card-head h3{letter-spacing:-.3px}
.stat{
  background:linear-gradient(135deg,#ffffff,#f1f7fc)!important;
  border:1px solid rgba(18,60,105,.10)!important;
  border-radius:20px!important;
}
@media print{
  .no-print,.print-check-cell,.report-rows-help,#reportColumns{display:none!important}
  .report-row-excluded{display:none!important}
}
@media(max-width:900px){
  .grid.five{grid-template-columns:1fr 1fr}
}


/* online v8: منوی افقی شبیه نمونه، بدون استفاده از کلمات/محتوای نمونه */
:root{
  --topbar-bg:#ffffff;
  --menu-bg:#ffffff;
  --menu-active-bg:#e6f6fb;
  --primary-color:#123c69;
  --accent-color:#0b6c99;
}
body{
  background:
    radial-gradient(circle at 8% 0%, color-mix(in srgb,var(--accent-color) 9%,transparent), transparent 28%),
    linear-gradient(180deg,var(--app-bg),#f8fafc 48%,var(--app-bg))!important;
}
.topbar{
  width:min(1220px,calc(100% - 40px))!important;
  margin:22px auto 10px!important;
  min-height:72px!important;
  display:flex!important;
  align-items:center!important;
  gap:16px!important;
  border-radius:0!important;
  border:0!important;
  box-shadow:none!important;
  background:var(--topbar-bg)!important;
  padding:8px 0!important;
}
.brand{
  flex:1 1 auto!important;
}
.brand .logo{
  width:64px!important;
  height:64px!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(18,60,105,.08)!important;
}
.brand h1{
  color:var(--primary-color)!important;
  font-size:28px!important;
}
.brand p{
  color:#4c5f72!important;
}
.top-clock{
  flex:0 0 auto;
  padding:10px 18px;
  border-radius:20px;
  background:color-mix(in srgb,var(--accent-color) 9%,#ffffff);
  color:var(--primary-color);
  font-weight:900;
  white-space:nowrap;
}
.account-menu{position:relative;z-index:2000}
.menu-toggle{
  border:0!important;
  background:color-mix(in srgb,var(--accent-color) 12%,#ffffff)!important;
  color:var(--primary-color)!important;
  border-radius:20px!important;
  padding:14px 20px!important;
  box-shadow:none!important;
}
.layout{
  display:block!important;
  width:min(1220px,calc(100% - 40px))!important;
  margin:0 auto 28px!important;
}
.sidebar{
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:unset!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:8px!important;
  overflow-x:auto!important;
  margin:0 auto 20px!important;
  padding:8px 0!important;
  border-radius:0!important;
  background:var(--menu-bg)!important;
  box-shadow:none!important;
  position:sticky!important;
  top:0!important;
  z-index:80!important;
  border-bottom:1px solid color-mix(in srgb,var(--border) 80%,transparent)!important;
}
.sidebar .nav{
  flex:0 0 auto!important;
  min-height:42px!important;
  padding:10px 16px!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#243b53!important;
  border:1px solid transparent!important;
  font-weight:800!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}
.sidebar .nav.active{
  background:var(--menu-active-bg)!important;
  color:var(--primary-color)!important;
  border-color:color-mix(in srgb,var(--accent-color) 18%,#ffffff)!important;
}
.sidebar .nav:hover{
  background:color-mix(in srgb,var(--accent-color) 7%,#ffffff)!important;
}
.content{
  width:100%!important;
  max-width:100%!important;
}
#dashboard .hero{
  display:none!important;
}
.card,.case-card,.sub-card{
  border-radius:24px!important;
  border-color:var(--border)!important;
  background:linear-gradient(180deg,var(--card-bg),color-mix(in srgb,var(--card-bg) 84%,#ffffff))!important;
}
.input,select,textarea{
  background:var(--input-bg)!important;
  border-color:var(--border)!important;
}
.primary{
  background:linear-gradient(135deg,var(--primary-color),var(--accent-color))!important;
}
.report-columns .compact-columns{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
  padding:10px 12px!important;
  border-radius:18px!important;
  background:color-mix(in srgb,var(--accent-color) 6%,#ffffff)!important;
}
.report-columns .compact-columns label{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  margin:0!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  background:#fff!important;
  border:1px solid var(--border)!important;
  white-space:nowrap!important;
}
.report-row-selector{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  align-items:center!important;
  margin:12px 0!important;
  padding:10px 12px!important;
  border-radius:18px!important;
  background:color-mix(in srgb,var(--primary-color) 5%,#ffffff)!important;
  border:1px dashed color-mix(in srgb,var(--primary-color) 25%,var(--border))!important;
}
.row-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  max-width:280px;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:#fff!important;
  border:1px solid var(--border)!important;
  white-space:nowrap!important;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:12.5px;
}
.row-chip.off{
  opacity:.48;
  text-decoration:line-through;
}
.row-chip.select-all{
  background:color-mix(in srgb,var(--accent-color) 10%,#ffffff)!important;
  font-weight:900;
}
.report-table tr.report-row-excluded{
  opacity:.42;
  background:#f3f5f7!important;
}
@media(max-width:900px){
  .topbar{
    width:calc(100% - 22px)!important;
    display:grid!important;
    grid-template-columns:1fr auto!important;
  }
  .top-clock{
    grid-column:1/-1;
    justify-self:start;
  }
  .layout{
    width:calc(100% - 22px)!important;
  }
  .sidebar{
    padding:8px 0!important;
  }
}
@media print{
  .report-row-selector{display:none!important}
  .report-table tr.report-row-excluded{display:none!important}
  .topbar,.sidebar,.report-filters,.report-actions,.report-columns,.report-rows-help,.no-print{display:none!important}
}


/* online v9: final correction for horizontal menu, full width, and richer professional colors */
:root{
  --page-x-gap: 18px;
  --topbar-bg:#ffffff;
  --menu-bg:#ffffff;
  --menu-active-bg:#e7f6fb;
  --primary-color:#123c69;
  --accent-color:#0b6c99;
  --report-color:#16834a;
  --task-color:#ed8936;
  --case-color:#1f73b7;
  --warn-color:#cf2e2e;
}
html,body{
  max-width:none!important;
  overflow-x:hidden!important;
}
body{
  background:
    radial-gradient(circle at 4% 2%, color-mix(in srgb,var(--accent-color) 13%,transparent), transparent 25%),
    radial-gradient(circle at 94% 0%, rgba(237,137,54,.12), transparent 24%),
    linear-gradient(180deg,var(--app-bg),#f7fafc 42%,#eef4f8)!important;
}
.topbar{
  width:calc(100vw - var(--page-x-gap)*2)!important;
  max-width:none!important;
  margin:14px var(--page-x-gap) 8px!important;
  padding:10px 18px!important;
  min-height:72px!important;
  border-radius:26px!important;
  background:linear-gradient(135deg,var(--topbar-bg),color-mix(in srgb,var(--topbar-bg) 90%,#eaf5f8))!important;
  box-shadow:0 14px 40px rgba(18,60,105,.08)!important;
  border:1px solid color-mix(in srgb,var(--border) 78%,#fff)!important;
  box-sizing:border-box!important;
}
.layout{
  width:calc(100vw - var(--page-x-gap)*2)!important;
  max-width:none!important;
  margin:0 var(--page-x-gap) 26px!important;
  display:block!important;
  box-sizing:border-box!important;
}
.sidebar{
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:unset!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  justify-content:flex-start!important;
  align-items:center!important;
  gap:8px!important;
  overflow:visible!important;
  margin:0 0 14px 0!important;
  padding:10px!important;
  border-radius:24px!important;
  background:linear-gradient(135deg,var(--menu-bg),color-mix(in srgb,var(--menu-bg) 92%,#eaf5f8))!important;
  box-shadow:0 10px 30px rgba(18,60,105,.06)!important;
  position:relative!important;
  top:auto!important;
  z-index:50!important;
  border:1px solid color-mix(in srgb,var(--border) 80%,#fff)!important;
  box-sizing:border-box!important;
  direction:rtl!important;
}
.sidebar .nav{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:auto!important;
  max-width:none!important;
  min-height:38px!important;
  padding:8px 13px!important;
  margin:0!important;
  border-radius:15px!important;
  background:#fff!important;
  color:#263b52!important;
  border:1px solid color-mix(in srgb,var(--border) 70%,#fff)!important;
  box-shadow:0 5px 14px rgba(18,60,105,.04)!important;
  white-space:nowrap!important;
  font-size:13.5px!important;
  line-height:1.6!important;
}
.sidebar .nav.active{
  background:linear-gradient(135deg,var(--menu-active-bg),#ffffff)!important;
  color:var(--primary-color)!important;
  border-color:color-mix(in srgb,var(--accent-color) 32%,#ffffff)!important;
  box-shadow:0 8px 20px color-mix(in srgb,var(--accent-color) 13%,transparent)!important;
}
.sidebar .nav:hover{
  background:color-mix(in srgb,var(--accent-color) 7%,#ffffff)!important;
}
.content{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.card,.sub-card,.case-card{
  box-shadow:0 14px 36px rgba(18,60,105,.07)!important;
  border-color:color-mix(in srgb,var(--border) 85%,#fff)!important;
}
#dashboard .stats .stat:nth-child(1){
  background:linear-gradient(135deg,color-mix(in srgb,var(--case-color) 13%,#fff),#fff)!important;
  border-color:color-mix(in srgb,var(--case-color) 25%,#fff)!important;
}
#dashboard .stats .stat:nth-child(2){
  background:linear-gradient(135deg,color-mix(in srgb,var(--task-color) 14%,#fff),#fff)!important;
  border-color:color-mix(in srgb,var(--task-color) 28%,#fff)!important;
}
#dashboard .stats .stat:nth-child(3){
  background:linear-gradient(135deg,color-mix(in srgb,var(--report-color) 12%,#fff),#fff)!important;
  border-color:color-mix(in srgb,var(--report-color) 25%,#fff)!important;
}
#dashboard .stats .stat:nth-child(4){
  background:linear-gradient(135deg,color-mix(in srgb,var(--warn-color) 8%,#fff),#fff)!important;
  border-color:color-mix(in srgb,var(--warn-color) 18%,#fff)!important;
}
#todayView .card,#tasks .card{
  background:linear-gradient(135deg,color-mix(in srgb,var(--task-color) 7%,var(--card-bg)),var(--card-bg))!important;
}
#cases .card,#newCase .card{
  background:linear-gradient(135deg,color-mix(in srgb,var(--case-color) 7%,var(--card-bg)),var(--card-bg))!important;
}
#reports .card{
  background:linear-gradient(135deg,color-mix(in srgb,var(--report-color) 6%,var(--card-bg)),var(--card-bg))!important;
}
#settings .card{
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent-color) 6%,var(--card-bg)),var(--card-bg))!important;
}
.top-clock{
  background:color-mix(in srgb,var(--accent-color) 10%,#fff)!important;
  border:1px solid color-mix(in srgb,var(--accent-color) 20%,#fff)!important;
}
.report-columns .compact-columns,
.report-row-selector{
  overflow:visible!important;
}
@media(max-width:900px){
  :root{--page-x-gap:10px}
  .topbar{
    width:calc(100vw - 20px)!important;
    margin:0 10px 8px!important;
    border-radius:0 0 22px 22px!important;
    display:grid!important;
    grid-template-columns:1fr auto!important;
  }
  .layout{
    width:calc(100vw - 20px)!important;
    margin:0 10px 22px!important;
  }
  .sidebar{
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    position:relative!important;
  }
  .sidebar .nav{
    font-size:12.8px!important;
    padding:7px 10px!important;
  }
  .top-clock{
    grid-column:1/-1!important;
    justify-self:start!important;
  }
}
@media print{
  .topbar,.sidebar,.report-filters,.report-actions,.report-columns,.report-rows-help,.report-row-selector,.no-print{display:none!important}
  .report-table tr.report-row-excluded{display:none!important}
}


/* online v10.1 safe: modern font options and calendar color hints */
.calendar-legend{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:10px 0 12px;
  align-items:center;
}
.calendar-legend span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  border-radius:999px;
  padding:7px 11px;
  font-weight:900;
  border:1px solid var(--border);
  background:#fff;
}
.legend-free::before,.legend-light::before,.legend-medium::before,.legend-heavy::before{
  content:"";
  width:12px;
  height:12px;
  border-radius:50%;
  display:inline-block;
}
.legend-free::before{background:#fff;border:1px solid var(--border)}
.legend-light::before{background:#35a86b}
.legend-medium::before{background:#ed8936}
.legend-heavy::before{background:#cf2e2e}
.full-day.free-day{background:linear-gradient(180deg,#fff,#f9fbfd)!important}
.full-day.busy-green{background:linear-gradient(135deg,#e8f8ef,#ffffff)!important;border-color:#86d7a5!important}
.full-day.busy-orange{background:linear-gradient(135deg,#fff4db,#ffffff)!important;border-color:#ffc36d!important}
.full-day.busy-red{background:linear-gradient(135deg,#ffe8e8,#ffffff)!important;border-color:#ff9c9c!important}
.day-load{
  position:absolute;
  top:8px;
  left:8px;
  border-radius:999px;
  padding:3px 7px;
  font-size:11px;
  font-style:normal;
  background:rgba(255,255,255,.85);
  border:1px solid rgba(18,60,105,.10);
  color:#123c69;
}
.month-grid .full-day{position:relative;min-height:92px!important;overflow:hidden}
.cal-task{
  display:block!important;
  width:100%;
  text-align:right;
  font-size:11px!important;
  line-height:1.45!important;
  color:#394b5f!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  background:rgba(255,255,255,.66);
  border-radius:8px;
  padding:2px 5px;
  margin-top:2px;
}


/* online v11 quality: responsive polished UI, selectable themes, compact workload calendar */
:root{--page-gap:14px;--panel-radius:24px;--legal-gold:#d3a650;--legal-ink:#123c69;}
html,body{max-width:none!important;overflow-x:hidden!important;}
body{min-height:100vh;background:linear-gradient(180deg,var(--app-bg),#f7fafc)!important;}
.topbar,.layout{width:calc(100vw - var(--page-gap)*2)!important;max-width:none!important;margin-left:var(--page-gap)!important;margin-right:var(--page-gap)!important;box-sizing:border-box!important;}
.topbar{margin-top:12px!important;margin-bottom:10px!important;border-radius:var(--panel-radius)!important;padding:10px 18px!important;border:1px solid color-mix(in srgb,var(--border) 82%,#fff)!important;box-shadow:0 14px 38px rgba(18,60,105,.08)!important;background:linear-gradient(135deg,var(--topbar-bg),color-mix(in srgb,var(--topbar-bg) 88%,#edf6f8))!important;}
.layout{display:block!important;margin-bottom:28px!important;}
.sidebar{width:100%!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important;justify-content:flex-start!important;overflow:visible!important;position:relative!important;top:auto!important;min-height:unset!important;padding:10px!important;margin:0 0 14px 0!important;border-radius:22px!important;background:linear-gradient(135deg,var(--menu-bg),color-mix(in srgb,var(--menu-bg) 90%,#eef7f8))!important;border:1px solid color-mix(in srgb,var(--border) 80%,#fff)!important;box-shadow:0 10px 28px rgba(18,60,105,.055)!important;}
.sidebar .nav{flex:0 0 auto!important;width:auto!important;min-height:38px!important;padding:8px 13px!important;margin:0!important;border-radius:15px!important;background:#fff!important;color:#243b53!important;border:1px solid color-mix(in srgb,var(--border) 72%,#fff)!important;box-shadow:0 5px 14px rgba(18,60,105,.04)!important;white-space:nowrap!important;font-size:13.5px!important;line-height:1.6!important;}
.sidebar .nav.active{background:linear-gradient(135deg,var(--menu-active-bg),#fff)!important;color:var(--primary-color)!important;border-color:color-mix(in srgb,var(--accent-color) 32%,#fff)!important;box-shadow:0 8px 18px color-mix(in srgb,var(--accent-color) 13%,transparent)!important;}
.content{width:100%!important;max-width:100%!important;box-sizing:border-box!important;}
.card,.case-card,.sub-card{border-radius:var(--panel-radius)!important;border-color:color-mix(in srgb,var(--border) 86%,#fff)!important;box-shadow:0 14px 36px rgba(18,60,105,.065)!important;}
.input,select,textarea{background:var(--input-bg)!important;border-color:var(--border)!important;}
.primary,.menu-toggle{background:linear-gradient(135deg,var(--primary-color),var(--accent-color))!important;}
.grid.three,.grid.four,.grid.five{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;}
/* theme presets */
body.theme-emerald-gold{--app-bg:#f7f2e8;--topbar-bg:#093f3a;--menu-bg:#fffaf0;--menu-active-bg:#0b4d45;--primary-color:#0b4d45;--accent-color:#c8943c;--border:#e3c78f;--card-bg:#fffaf0;--input-bg:#fffdf8;color:#183b35;}
body.theme-emerald-gold .topbar{color:#fff;background:linear-gradient(135deg,#073b36,#0c5b53)!important;border-color:rgba(222,183,99,.35)!important;}
body.theme-emerald-gold .brand h1{color:#f4d38e!important} body.theme-emerald-gold .brand p{color:#f2ead9!important}.theme-emerald-gold .top-clock,.theme-emerald-gold .menu-toggle{background:rgba(255,255,255,.12)!important;border:1px solid rgba(244,211,142,.35)!important;color:#f4d38e!important;}
body.theme-navy-gold{--app-bg:#fbf6ec;--topbar-bg:#0b2744;--menu-bg:#fffaf2;--menu-active-bg:#0b2744;--primary-color:#0b2744;--accent-color:#d09b48;--border:#e6c995;--card-bg:#fffaf3;--input-bg:#fffdf9;}
body.theme-navy-gold .topbar{background:linear-gradient(135deg,#071f38,#123c69)!important;color:#fff!important}.theme-navy-gold .brand h1{color:#f0c879!important}.theme-navy-gold .brand p{color:#edf2f7!important}
body.theme-soft-coral{--app-bg:#fff8ef;--topbar-bg:#fffaf2;--menu-bg:#fffaf2;--menu-active-bg:#ffe2d6;--primary-color:#24615d;--accent-color:#f47761;--border:#f1d3bf;--card-bg:#fffaf5;--input-bg:#fffdf9;}
body.theme-black-orange{--app-bg:#111417;--topbar-bg:#15191d;--menu-bg:#191d21;--menu-active-bg:#9a3d0e;--primary-color:#f0832e;--accent-color:#f0832e;--border:#7a431f;--card-bg:#171b1f;--input-bg:#1d2227;color:#f4f1ea;}
body.theme-black-orange .card,body.theme-black-orange .sub-card,body.theme-black-orange .case-card{color:#f4f1ea!important;background:linear-gradient(135deg,#171b1f,#111417)!important}.theme-black-orange .input,.theme-black-orange select,.theme-black-orange textarea{color:#fff!important}.theme-black-orange .sidebar .nav{background:#13171a!important;color:#eee!important}.theme-black-orange .muted{color:#c9c1b8!important}
body.theme-clean-blue{--app-bg:#eef5fb;--topbar-bg:#ffffff;--menu-bg:#ffffff;--menu-active-bg:#e4f1fb;--primary-color:#123c69;--accent-color:#2879ad;--border:#d6e4f0;--card-bg:#ffffff;--input-bg:#fbfdff;}
/* richer dashboard cards */
.stats .stat:nth-child(1){background:linear-gradient(135deg,color-mix(in srgb,var(--accent-color) 10%,#fff),#fff)!important;}
.stats .stat:nth-child(2){background:linear-gradient(135deg,#fff4dd,#fff)!important;}
.stats .stat:nth-child(3){background:linear-gradient(135deg,#e9f8ef,#fff)!important;}
.stats .stat:nth-child(4){background:linear-gradient(135deg,#fff0ee,#fff)!important;}
/* compact calendar */
.calendar-legend-v11{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 10px;align-items:center}.calendar-legend-v11 span{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;font-weight:900;border:1px solid var(--border);background:#fff}.calendar-legend-v11 span:before{content:"";width:11px;height:11px;border-radius:50%;display:inline-block}.calendar-legend-v11 .free:before{background:#fff;border:1px solid var(--border)}.calendar-legend-v11 .light:before{background:#35a86b}.calendar-legend-v11 .medium:before{background:#ed8936}.calendar-legend-v11 .heavy:before{background:#cf2e2e}.full-days,.month-grid{gap:6px!important}.full-day{position:relative!important;min-height:82px!important;padding:8px!important;overflow:hidden!important}.full-day.cal-free{background:linear-gradient(180deg,#fff,#f9fbfd)!important}.full-day.cal-light{background:linear-gradient(135deg,#e8f8ef,#fff)!important;border-color:#86d7a5!important}.full-day.cal-medium{background:linear-gradient(135deg,#fff4db,#fff)!important;border-color:#ffc36d!important}.full-day.cal-heavy{background:linear-gradient(135deg,#ffe8e8,#fff)!important;border-color:#ff9c9c!important}.day-load-v11{position:absolute;top:6px;left:6px;border-radius:999px;padding:2px 6px;font-size:10.5px;font-style:normal;background:rgba(255,255,255,.88);border:1px solid rgba(18,60,105,.10);color:#123c69}.cal-task-v11{display:block!important;width:100%;text-align:right;font-size:10.5px!important;line-height:1.35!important;color:#394b5f!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:rgba(255,255,255,.65);border-radius:7px;padding:2px 5px;margin-top:2px}.day-agenda-v11{margin-top:10px}.day-agenda-v11 h4{margin:8px 0}.day-agenda-v11 ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}.day-agenda-v11 li{display:flex;align-items:center;gap:8px;justify-content:space-between;background:#fff;border:1px solid var(--border);border-radius:14px;padding:8px 10px}.day-agenda-v11 li span{font-size:12px;color:#667085}.mini-btn{padding:4px 8px!important;border-radius:10px!important;font-size:12px!important}
@media(max-width:900px){:root{--page-gap:8px}.topbar{margin-top:0!important;border-radius:0 0 20px 20px!important;display:grid!important;grid-template-columns:1fr auto!important;gap:8px!important;padding:10px!important}.brand h1{font-size:20px!important}.brand p{font-size:12px!important}.top-clock{grid-column:1/-1;justify-self:start}.sidebar{gap:6px!important;padding:8px!important}.sidebar .nav{font-size:12.5px!important;padding:7px 9px!important}.full-day{min-height:74px!important}.cal-task-v11{display:none!important}.grid.two{grid-template-columns:1fr!important}}
@media print{.topbar,.sidebar,.report-filters,.report-actions,.report-columns,.report-rows-help,.report-row-selector,.no-print{display:none!important}.report-table tr.report-row-excluded{display:none!important}}


/* online v12: palette-based themes with unique effects; no auth/api changes */
:root{--header-shadow:0 9px 26px rgba(20,32,44,.055);--hover-lift:-2px;--ui-radius:22px}
.topbar{
  position:relative!important;
  box-shadow:var(--header-shadow)!important;
  border-bottom:1px solid rgba(20,32,44,.055)!important;
}
.topbar:after{
  content:"";position:absolute;left:18px;right:18px;bottom:-9px;height:9px;pointer-events:none;
  background:linear-gradient(180deg,rgba(20,32,44,.055),rgba(20,32,44,0));border-radius:50%;
}
.sidebar .nav{transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease, font-weight .18s ease, border-color .18s ease!important;position:relative;}
.sidebar .nav:hover{font-weight:950!important;transform:translateY(var(--hover-lift))!important;}
.sidebar .nav:focus-visible{outline:2px solid color-mix(in srgb,var(--accent-color) 50%,#fff);outline-offset:2px;}
.card,.sub-card,.case-card,.stat{transition:box-shadow .18s ease, transform .18s ease, border-color .18s ease!important;}
.card:hover,.sub-card:hover,.case-card:hover{transform:translateY(-1px);}

/* Palette 1: provided sage / green / graphite / clay / red */
body.theme-sage-red{
  --app-bg:#f4f1e7;--topbar-bg:#f8f7ef;--menu-bg:#fbfaf3;--menu-active-bg:#dfe8c2;--primary-color:#3E3F3E;--accent-color:#69A485;--border:#B2C188;--card-bg:#fffdf5;--input-bg:#fffef9;--urgent-color:#BE0A27;--important-color:#8D574D;--normal-color:#69A485;color:#2f3732;
}
body.theme-sage-red .topbar{background:linear-gradient(135deg,#fbfaf3,#eef2df)!important;border-color:#B2C188!important;}
body.theme-sage-red .sidebar .nav:hover{background:#B2C188!important;color:#2f3732!important;box-shadow:0 8px 18px rgba(105,164,133,.22)!important;}
body.theme-sage-red .sidebar .nav.active{background:linear-gradient(135deg,#69A485,#B2C188)!important;color:#fff!important;}
body.theme-sage-red .sidebar .nav:hover:after{content:"";position:absolute;inset:auto 14px -4px 14px;height:3px;background:#BE0A27;border-radius:999px;}
body.theme-sage-red .stat:nth-child(1),body.theme-sage-red #cases .card{background:linear-gradient(135deg,#eef4df,#fffdf5)!important}
body.theme-sage-red .stat:nth-child(2),body.theme-sage-red #tasks .card{background:linear-gradient(135deg,#f1dfda,#fffdf5)!important}
body.theme-sage-red .stat:nth-child(3),body.theme-sage-red #reports .card{background:linear-gradient(135deg,#e0eee6,#fffdf5)!important}
body.theme-sage-red .stat:nth-child(4){background:linear-gradient(135deg,#fbe7e7,#fffdf5)!important}

/* Palette 2: graphite / grey / mauve / stone */
body.theme-graphite-mauve{
  --app-bg:#f2f1ef;--topbar-bg:#ffffff;--menu-bg:#fafafa;--menu-active-bg:#e8e6ee;--primary-color:#1C1D26;--accent-color:#9894A8;--border:#d6d4d2;--card-bg:#ffffff;--input-bg:#fbfbfb;--urgent-color:#80574D;--important-color:#9894A8;--normal-color:#707074;color:#1C1D26;
}
body.theme-graphite-mauve .topbar{box-shadow:0 8px 22px rgba(28,29,38,.05)!important;border-color:#e4e2df!important;}
body.theme-graphite-mauve .sidebar .nav{border-radius:12px!important;}
body.theme-graphite-mauve .sidebar .nav:hover{background:#f1f0f4!important;color:#1C1D26!important;box-shadow:inset 0 0 0 1px #9894A8!important;transform:translateY(-1px)!important;}
body.theme-graphite-mauve .sidebar .nav.active{background:#1C1D26!important;color:#fff!important;}
body.theme-graphite-mauve .card:hover{box-shadow:0 13px 35px rgba(28,29,38,.08)!important;}

/* Bright palette: blue, cyan, aqua, lime */
body.theme-aqua-lime{
  --app-bg:#ecfbff;--topbar-bg:#ffffff;--menu-bg:#ffffff;--menu-active-bg:#d7fbfa;--primary-color:#123cdd;--accent-color:#48bfe3;--border:#a6f0ec;--card-bg:#ffffff;--input-bg:#f8feff;--urgent-color:#ff5a7a;--important-color:#4db6e2;--normal-color:#12c6a3;color:#102a43;
}
body.theme-aqua-lime .topbar{background:linear-gradient(135deg,#ffffff,#effcff)!important;box-shadow:0 10px 26px rgba(72,191,227,.12)!important;}
body.theme-aqua-lime .sidebar .nav:hover{background:linear-gradient(135deg,#4db6e2,#a6f0ec)!important;color:#083344!important;box-shadow:0 8px 20px rgba(72,191,227,.20)!important;transform:translateY(-3px)!important;}
body.theme-aqua-lime .sidebar .nav.active{background:linear-gradient(135deg,#4f75f2,#48bfe3)!important;color:#fff!important;}
body.theme-aqua-lime .sidebar .nav:hover:before{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#f6ff6b;top:6px;right:8px;}
body.theme-aqua-lime .stat:nth-child(1){background:linear-gradient(135deg,#eaf1ff,#fff)!important}
body.theme-aqua-lime .stat:nth-child(2){background:linear-gradient(135deg,#e6fbff,#fff)!important}
body.theme-aqua-lime .stat:nth-child(3){background:linear-gradient(135deg,#e7fff8,#fff)!important}
body.theme-aqua-lime .stat:nth-child(4){background:linear-gradient(135deg,#fdffde,#fff)!important}

/* Deep navy / blue / rose */
body.theme-deep-rose{
  --app-bg:#f4f6ff;--topbar-bg:#ffffff;--menu-bg:#ffffff;--menu-active-bg:#e5edff;--primary-color:#121a62;--accent-color:#37a6f2;--border:#d5dcfa;--card-bg:#ffffff;--input-bg:#fbfcff;--urgent-color:#e95ea8;--important-color:#37a6f2;--normal-color:#28d8c8;color:#121a62;
}
body.theme-deep-rose .topbar{background:linear-gradient(135deg,#ffffff,#f5f7ff)!important;box-shadow:0 10px 28px rgba(18,26,98,.08)!important;}
body.theme-deep-rose .sidebar .nav:hover{background:#f6e2f0!important;color:#121a62!important;box-shadow:0 9px 20px rgba(233,94,168,.18)!important;}
body.theme-deep-rose .sidebar .nav.active{background:linear-gradient(135deg,#121a62,#37a6f2)!important;color:#fff!important;}
body.theme-deep-rose .sidebar .nav:hover:after{content:"";position:absolute;right:12px;left:12px;bottom:-5px;height:4px;border-radius:999px;background:linear-gradient(90deg,#37a6f2,#e95ea8,#28d8c8);}

/* Existing themes get distinct effects */
body.theme-emerald-gold .topbar{box-shadow:0 12px 28px rgba(9,63,58,.15)!important;}
body.theme-emerald-gold .sidebar .nav:hover{background:rgba(200,148,60,.16)!important;color:#0b4d45!important;box-shadow:0 8px 24px rgba(200,148,60,.18)!important;}
body.theme-emerald-gold .sidebar .nav:hover:after{content:"";position:absolute;bottom:-5px;right:18px;left:18px;height:2px;background:#c8943c;border-radius:20px;}
body.theme-navy-gold .topbar{box-shadow:0 13px 30px rgba(11,39,68,.13)!important;}
body.theme-navy-gold .sidebar .nav:hover{background:#fff4dc!important;color:#0b2744!important;box-shadow:0 10px 24px rgba(208,155,72,.20)!important;}
body.theme-navy-gold .sidebar .nav:hover:before{content:"";position:absolute;inset:6px auto 6px 6px;width:3px;background:#d09b48;border-radius:9px;}
body.theme-soft-coral .topbar{box-shadow:0 9px 24px rgba(244,119,97,.10)!important;}
body.theme-soft-coral .sidebar .nav:hover{background:#ffe2d6!important;color:#24615d!important;transform:translateY(-2px) scale(1.02)!important;}
body.theme-black-orange .topbar{box-shadow:0 14px 34px rgba(0,0,0,.22)!important;}
body.theme-black-orange .sidebar .nav:hover{background:#241b15!important;color:#f0832e!important;border-color:#f0832e!important;box-shadow:0 0 0 1px rgba(240,131,46,.35),0 0 18px rgba(240,131,46,.20)!important;}
body.theme-clean-blue .topbar{box-shadow:0 8px 24px rgba(40,121,173,.08)!important;}
body.theme-clean-blue .sidebar .nav:hover{background:#eef7ff!important;color:#123c69!important;box-shadow:none!important;}
body.theme-clean-blue .sidebar .nav:hover:after{content:"";position:absolute;bottom:2px;right:18px;left:18px;height:3px;background:#2879ad;border-radius:999px;}
@media(max-width:900px){.topbar:after{left:12px;right:12px;bottom:-7px;height:7px}.sidebar .nav:hover{transform:none!important}}

/* online v13: real 14 palette themes + weekly calendar */
:root{--theme-header:#072D30;--theme-menu:#065A5C;--theme-accent:#E3D783;--theme-card:#F6F6F6;--theme-alert:#BE0A27;--theme-shadow:#072D30}
body{background:linear-gradient(180deg,color-mix(in srgb,var(--theme-card) 50%,#fff),#fff 48%,color-mix(in srgb,var(--theme-accent) 12%,#fff))!important;color:#112233!important}
.topbar{box-shadow:0 10px 30px color-mix(in srgb,var(--theme-shadow) 9%,transparent)!important;border-bottom:1px solid color-mix(in srgb,var(--theme-accent) 45%,transparent)!important;background:linear-gradient(135deg,var(--theme-header),color-mix(in srgb,var(--theme-header) 76%,#ffffff))!important;color:#fff!important}
.topbar h1,.topbar p{color:#fff!important}.top-clock{background:color-mix(in srgb,var(--theme-accent) 22%,#fff)!important;color:var(--theme-header)!important}
.sidebar{background:linear-gradient(135deg,color-mix(in srgb,var(--theme-menu) 16%,#fff),#fff)!important;border-color:color-mix(in srgb,var(--theme-accent) 42%,#fff)!important}
.sidebar .nav{transition:transform .18s ease,box-shadow .18s ease,background .18s ease,font-weight .18s ease!important}.sidebar .nav:hover{font-weight:950!important;transform:translateY(-2px)!important;box-shadow:0 10px 22px color-mix(in srgb,var(--theme-accent) 20%,transparent)!important;background:color-mix(in srgb,var(--theme-accent) 24%,#fff)!important}.sidebar .nav.active{font-weight:950!important;background:linear-gradient(135deg,var(--theme-menu),var(--theme-header))!important;color:#fff!important;box-shadow:0 10px 28px color-mix(in srgb,var(--theme-menu) 22%,transparent)!important}
.card,.sub-card,.case-card{border-color:color-mix(in srgb,var(--theme-accent) 44%,#fff)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--theme-card) 78%,#fff),#fff)!important}.primary,.menu-toggle{background:linear-gradient(135deg,var(--theme-menu),var(--theme-header))!important;color:#fff!important}.secondary{background:color-mix(in srgb,var(--theme-accent) 24%,#fff)!important;color:var(--theme-header)!important}.badge.blue{background:color-mix(in srgb,var(--theme-accent) 24%,#fff)!important;color:var(--theme-header)!important}.input,select,textarea{background:color-mix(in srgb,var(--theme-card) 28%,#fff)!important;border-color:color-mix(in srgb,var(--theme-accent) 42%,#fff)!important}
.palette-preview{grid-column:1/-1;border:1px dashed color-mix(in srgb,var(--theme-accent) 55%,var(--border));border-radius:18px;padding:10px 12px;background:color-mix(in srgb,var(--theme-card) 62%,#fff)}.palette-mini-title{font-weight:900;margin-bottom:8px;color:var(--theme-header)}.palette-mini-row{display:flex;gap:6px;flex-wrap:wrap}.palette-mini-row span{min-width:92px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:11px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.35);border:1px solid rgba(0,0,0,.08)}
.week-calendar-head{display:flex;align-items:center;gap:10px;justify-content:space-between;flex-wrap:wrap;margin-bottom:12px;padding:12px;border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--theme-header) 8%,#fff),#fff);border:1px solid color-mix(in srgb,var(--theme-accent) 35%,#fff)}.week-calendar-head div{display:grid;gap:4px;text-align:center;flex:1 1 auto}.week-calendar-head span{color:#5F6875;font-size:13px}.week-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(125px,1fr));gap:10px}.week-day-box{min-height:168px;border-radius:22px;padding:12px;border:1px solid color-mix(in srgb,var(--theme-accent) 35%,#fff);background:#fff;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease;display:flex;flex-direction:column;gap:8px}.week-day-box:hover{transform:translateY(-3px);box-shadow:0 14px 28px color-mix(in srgb,var(--theme-header) 12%,transparent)}.week-day-box.today-week{outline:2px solid color-mix(in srgb,var(--theme-accent) 65%,#fff)}.week-day-box.free-work{background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--theme-card) 38%,#fff))}.week-day-box.has-work{background:linear-gradient(135deg,color-mix(in srgb,var(--theme-accent) 22%,#fff),#fff 62%,color-mix(in srgb,var(--theme-menu) 8%,#fff))}.week-day-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.week-day-top strong{color:var(--theme-header);font-size:15px}.week-day-top span{color:#5F6875;font-size:12px}.week-count{align-self:flex-start;border-radius:999px;padding:5px 10px;background:color-mix(in srgb,var(--theme-menu) 11%,#fff);color:var(--theme-header);font-weight:900;font-size:12px}.week-short-list{display:grid;gap:5px;margin-top:2px}.week-short-list p{margin:0;padding:5px 7px;border-radius:10px;background:rgba(255,255,255,.74);border:1px solid rgba(0,0,0,.04);font-size:11.5px;line-height:1.45;color:#263b52;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.week-short-list .free-text{color:#7b8794;text-align:center;margin-top:14px;border-style:dashed}.more-text{color:var(--theme-menu)!important;font-weight:900}.week-details{margin-top:14px;padding:14px;border-radius:24px;background:color-mix(in srgb,var(--theme-card) 60%,#fff);border:1px solid color-mix(in srgb,var(--theme-accent) 38%,#fff)}
@media(max-width:1150px){.week-calendar-grid{grid-template-columns:repeat(4,minmax(150px,1fr))}}@media(max-width:720px){.week-calendar-grid{grid-template-columns:1fr}.week-day-box{min-height:auto}}


/* online v14: remove palette preview bar and calendar legend; highlight only today */
.palette-preview,.palette-mini-title,.palette-mini-row,
.calendar-legend,.calendar-legend-v11,
.legend-free,.legend-light,.legend-medium,.legend-heavy,
.day-load,.cal-task,.day-load-v11,.cal-task-v11{
  display:none!important;
}
.week-day-box.free-work,
.week-day-box.has-work{
  background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--theme-card) 18%,#fff))!important;
  border-color:color-mix(in srgb,var(--theme-accent) 28%,#fff)!important;
}
.week-day-box.today-week{
  background:linear-gradient(135deg,color-mix(in srgb,var(--theme-accent) 34%,#fff),#fff 60%,color-mix(in srgb,var(--theme-menu) 12%,#fff))!important;
  border-color:var(--theme-accent)!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--theme-accent) 55%,#fff) inset, 0 14px 28px color-mix(in srgb,var(--theme-header) 12%,transparent)!important;
}
.week-day-box.today-week .week-count{
  background:var(--theme-accent)!important;
  color:color-mix(in srgb,var(--theme-header) 78%,#000)!important;
}
.week-day-box.today-week .week-day-top strong::after{
  content:' امروز';
  margin-inline-start:6px;
  font-size:11px;
  padding:2px 6px;
  border-radius:999px;
  background:color-mix(in srgb,var(--theme-menu) 12%,#fff);
  color:var(--theme-header);
}

/* online v15: hide old palette-preview bar completely */
.palette-preview,.palette-mini-title,.palette-mini-row{display:none!important}
/* Theme selector should show only 8 designed visual models, not technical palette names */
#appearancePreset option{font-family:var(--body-font)!important}
.week-calendar-grid .today-week{
  background:linear-gradient(135deg,color-mix(in srgb,var(--theme-accent) 30%,#fff),#fff 58%,color-mix(in srgb,var(--theme-menu) 12%,#fff))!important;
  outline:2px solid color-mix(in srgb,var(--theme-menu) 45%,#fff)!important;
  box-shadow:0 14px 30px color-mix(in srgb,var(--theme-menu) 13%,transparent)!important;
}



/* =========================================================
   v16 GLOBAL LAW-OFFICE DESIGN SYSTEM
   A single shared component system for all pages. Colors come
   from theme tokens only; switching one body class changes the UI.
   ========================================================= */
:root{
  --primary:#c7691e;
  --primary-dark:#8f3f0f;
  --primary-light:#fff0de;
  --accent-gold:#d8aa53;
  --bg-main:#fff8ee;
  --bg-card:#fffaf4;
  --border-soft:#e8c990;
  --text-main:#1f2933;
  --text-muted:#6c6258;
  --shadow-soft:0 20px 50px rgba(156,85,24,.15);
  --panel-header:#a54b15;
  --danger-tone:#b43122;
  --radius-xl:30px;
  --radius-lg:24px;
  --radius-md:18px;
}
body.theme-orange{--primary:#c7691e;--primary-dark:#8f3f0f;--primary-light:#fff0de;--accent-gold:#d8aa53;--bg-main:#fff8ee;--bg-card:#fffaf4;--border-soft:#e8c990;--text-main:#1f2933;--text-muted:#6c6258;--shadow-soft:0 20px 50px rgba(156,85,24,.15);--panel-header:#a54b15;--danger-tone:#b43122}
body.theme-red{--primary:#c61e2d;--primary-dark:#870e1a;--primary-light:#fff0f0;--accent-gold:#d7a64e;--bg-main:#fff6ef;--bg-card:#fffaf5;--border-soft:#e6c08b;--text-main:#262028;--text-muted:#76666a;--shadow-soft:0 20px 50px rgba(140,16,28,.16);--panel-header:#9e101d;--danger-tone:#d21f2e}
body.theme-burgundy{--primary:#7b1020;--primary-dark:#4b0711;--primary-light:#fff0f3;--accent-gold:#d8aa53;--bg-main:#fff7ef;--bg-card:#fffaf4;--border-soft:#dfbd86;--text-main:#22181b;--text-muted:#74636a;--shadow-soft:0 20px 50px rgba(92,7,18,.18);--panel-header:#650915;--danger-tone:#a70f23}
body.theme-blue{--primary:#1267c7;--primary-dark:#094a96;--primary-light:#eff7ff;--accent-gold:#d8a94e;--bg-main:#f8fbff;--bg-card:#fffdf8;--border-soft:#d9bd82;--text-main:#11243a;--text-muted:#637083;--shadow-soft:0 20px 50px rgba(18,103,199,.14);--panel-header:#0d5bb1;--danger-tone:#c33a2b}
body.theme-brown{--primary:#744521;--primary-dark:#4f2b13;--primary-light:#fff0df;--accent-gold:#c99552;--bg-main:#fff8f0;--bg-card:#fffaf4;--border-soft:#d8b37a;--text-main:#2a211b;--text-muted:#75685d;--shadow-soft:0 20px 50px rgba(93,55,24,.16);--panel-header:#5a3218;--danger-tone:#9d2f21}
body.theme-gray{--primary:#555b60;--primary-dark:#303438;--primary-light:#f2f3f4;--accent-gold:#d3a64d;--bg-main:#fbf7ef;--bg-card:#fffaf3;--border-soft:#d9c08e;--text-main:#1f2428;--text-muted:#6e7377;--shadow-soft:0 20px 50px rgba(48,52,56,.15);--panel-header:#3e4449;--danger-tone:#b13b2d}
body.theme-turquoise{--primary:#0797a1;--primary-dark:#056b73;--primary-light:#ecfeff;--accent-gold:#d6aa5c;--bg-main:#f4fffd;--bg-card:#fffff8;--border-soft:#d5bd86;--text-main:#0f2f35;--text-muted:#5f7375;--shadow-soft:0 20px 50px rgba(5,131,139,.15);--panel-header:#05838b;--danger-tone:#c13b2a}
body.theme-gold{--primary:#b8842b;--primary-dark:#7a5318;--primary-light:#fff5dc;--accent-gold:#d8a648;--bg-main:#fff9ed;--bg-card:#fffdf7;--border-soft:#ddb76a;--text-main:#2a2216;--text-muted:#7a6b55;--shadow-soft:0 20px 50px rgba(168,112,30,.16);--panel-header:#9b6f20;--danger-tone:#9c2d22}

html{background:var(--bg-main)!important;}
body{
  background:
    radial-gradient(circle at 7% 4%, color-mix(in srgb,var(--primary-light) 65%,transparent), transparent 26%),
    radial-gradient(circle at 95% 0%, color-mix(in srgb,var(--accent-gold) 22%,transparent), transparent 22%),
    linear-gradient(180deg,var(--bg-main),#fff 46%,var(--bg-main))!important;
  color:var(--text-main)!important;
}
body::before, body::after{content:"";position:fixed;z-index:-1;pointer-events:none;opacity:.12;background-repeat:no-repeat;background-size:contain;}
body::before{right:-30px;bottom:0;width:300px;height:300px;background-image:linear-gradient(135deg,transparent,transparent), radial-gradient(circle,var(--accent-gold) 0 2px,transparent 2px);background-size:22px 22px;}
body::after{left:-50px;bottom:0;width:360px;height:280px;border:1px solid color-mix(in srgb,var(--accent-gold) 55%,transparent);border-radius:50% 50% 0 0;opacity:.08;}

.topbar{
  position:relative!important;top:auto!important;z-index:20!important;width:100%!important;min-height:178px!important;margin:0!important;padding:28px clamp(18px,4vw,54px) 62px!important;
  display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:22px!important;border:0!important;border-radius:0 0 34px 34px!important;
  background:
    linear-gradient(135deg, color-mix(in srgb,var(--primary) 92%,#111), var(--primary-dark))!important;
  box-shadow:0 16px 38px color-mix(in srgb,var(--primary-dark) 22%,transparent)!important;
  overflow:visible!important;
}
.topbar::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0 55%,rgba(255,255,255,.08) 56%,transparent 58%),radial-gradient(circle at 12% 35%,rgba(255,255,255,.08),transparent 27%);opacity:.9;}
.topbar::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:5px;background:linear-gradient(90deg,transparent,var(--accent-gold),transparent);opacity:.65;}
.topbar>*{position:relative;z-index:2}.brand{display:flex!important;align-items:center!important;gap:18px!important;flex-direction:row!important}.brand .logo{order:2;width:92px!important;height:92px!important;border-radius:28px!important;background:linear-gradient(160deg,color-mix(in srgb,var(--primary-dark) 90%,#000),var(--primary))!important;border:1px solid color-mix(in srgb,var(--accent-gold) 55%,#fff)!important;box-shadow:0 18px 40px rgba(0,0,0,.22), inset 0 0 0 1px rgba(255,255,255,.14)!important;padding:13px!important}.brand .logo img{filter:sepia(.15) saturate(1.15);max-width:100%!important;max-height:100%!important}.brand h1{font-size:clamp(28px,3.1vw,44px)!important;color:#fff4dc!important;text-shadow:0 2px 12px rgba(0,0,0,.22)!important;letter-spacing:-.8px}.brand p{color:rgba(255,255,255,.86)!important;font-size:15px!important}.top-clock,.menu-toggle{background:rgba(255,255,255,.12)!important;color:#fff7e8!important;border:1px solid rgba(255,255,255,.28)!important;border-radius:999px!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 12px 26px rgba(0,0,0,.13)!important;backdrop-filter:blur(12px)!important}.top-clock{padding:12px 18px!important;font-weight:900!important}.menu-toggle{padding:13px 20px!important;font-weight:900!important}.menu-panel{border:1px solid var(--border-soft)!important;border-radius:20px!important;box-shadow:var(--shadow-soft)!important;background:var(--bg-card)!important}.menu-panel .ghost,.menu-panel .danger{color:var(--text-main)!important}

.layout{width:min(1540px,calc(100% - 32px))!important;max-width:1540px!important;margin:-46px auto 32px!important;display:block!important;padding:0!important}.sidebar{position:relative!important;top:auto!important;height:auto!important;min-height:0!important;width:100%!important;display:flex!important;flex-direction:row!important;align-items:stretch!important;justify-content:flex-start!important;gap:0!important;overflow-x:auto!important;padding:14px!important;margin:0 0 24px!important;border-radius:30px!important;border:1px solid color-mix(in srgb,var(--border-soft) 75%,#fff)!important;background:rgba(255,252,245,.94)!important;box-shadow:var(--shadow-soft)!important;backdrop-filter:blur(14px)!important}.sidebar .nav{width:auto!important;min-width:112px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:7px!important;padding:13px 14px!important;margin:0!important;border-radius:22px!important;color:var(--text-main)!important;background:transparent!important;border:0!important;white-space:nowrap!important;font-size:13px!important;line-height:1.25!important;transition:all .22s ease!important}.sidebar .nav::before{font-size:24px;line-height:1;color:var(--primary);font-weight:400;filter:drop-shadow(0 2px 2px rgba(0,0,0,.05));}
.sidebar .nav[data-view="dashboard"]::before{content:"⌂"}.sidebar .nav[data-view="cases"]::before{content:"▱"}.sidebar .nav[data-view="todayView"]::before{content:"☑"}.sidebar .nav[data-view="tomorrowView"]::before{content:"▣"}.sidebar .nav[data-view="overdueView"]::before{content:"◴"}.sidebar .nav[data-view="newCase"]::before{content:"▤"}.sidebar .nav[data-view="tasks"]::before{content:"⚖"}.sidebar .nav[data-view="reports"]::before{content:"▥"}.sidebar .nav[data-view="calendar"]::before{content:"▦"}.sidebar .nav[data-view="settings"]::before{content:"⚙"}
.sidebar .nav:hover{font-weight:950!important;background:color-mix(in srgb,var(--primary-light) 58%,#fff)!important;transform:translateY(-3px)!important;box-shadow:0 12px 22px color-mix(in srgb,var(--primary) 14%,transparent)!important}.sidebar .nav.active{background:linear-gradient(135deg,var(--primary),var(--primary-dark))!important;color:#fff!important;box-shadow:0 14px 30px color-mix(in srgb,var(--primary) 24%,transparent)!important}.sidebar .nav.active::before{color:#fff4df!important}
.content{width:100%!important;max-width:none!important}.hero{display:flex!important;background:linear-gradient(135deg,var(--bg-card),color-mix(in srgb,var(--primary-light) 40%,#fff))!important;border:1px solid var(--border-soft)!important;border-radius:var(--radius-xl)!important;box-shadow:var(--shadow-soft)!important;padding:22px 28px!important}.hero h2{color:var(--panel-header)!important}.hero .badge{background:var(--primary-light)!important;color:var(--primary-dark)!important}
.card,.sub-card,.case-card,.form-card,.report-box,.date-card{background:linear-gradient(180deg,var(--bg-card),#fffdf8)!important;border:1px solid color-mix(in srgb,var(--border-soft) 84%,#fff)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-soft)!important;color:var(--text-main)!important}.card{padding:22px!important}.sub-card{background:color-mix(in srgb,var(--bg-card) 80%,#fff)!important}.card-head{margin:-22px -22px 18px!important;padding:15px 20px!important;background:linear-gradient(135deg,var(--panel-header),var(--primary-dark))!important;color:#fff!important;border-radius:var(--radius-lg) var(--radius-lg) 0 0!important;border-bottom:1px solid color-mix(in srgb,var(--accent-gold) 45%,transparent)!important}.card-head h3,.card-head strong{color:#fff!important;font-size:20px!important}.card-head .badge,.card-head .ghost,.card-head .secondary{background:rgba(255,255,255,.12)!important;color:#fff!important;border-color:rgba(255,255,255,.28)!important}.card>h3:first-child,.sub-card>h3:first-child{margin:-22px -22px 18px!important;padding:14px 20px!important;border-radius:var(--radius-lg) var(--radius-lg) 0 0!important;background:linear-gradient(135deg,var(--panel-header),var(--primary-dark))!important;color:#fff!important}.stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:20px!important}.stat{min-height:126px!important;position:relative!important;overflow:hidden!important;padding:20px 22px!important;background:linear-gradient(135deg,#fff,var(--bg-card))!important;border:1px solid color-mix(in srgb,var(--border-soft) 80%,#fff)!important;border-radius:26px!important;box-shadow:var(--shadow-soft)!important}.stat::after{content:"";position:absolute;left:22px;top:50%;width:62px;height:62px;border-radius:50%;transform:translateY(-50%);background:radial-gradient(circle at 32% 25%,#fff8dc,var(--accent-gold) 42%,var(--primary) 100%);box-shadow:0 12px 25px color-mix(in srgb,var(--primary) 20%,transparent),inset 0 0 0 5px rgba(255,255,255,.36)}.stat:nth-child(1)::before{content:"▱"}.stat:nth-child(2)::before{content:"◴"}.stat:nth-child(3)::before{content:"⚖"}.stat:nth-child(4)::before{content:"◉"}.stat::before{position:absolute;left:42px;top:50%;transform:translateY(-50%);z-index:2;color:#fff;font-size:24px;text-shadow:0 1px 3px rgba(0,0,0,.22)}.stat span{font-weight:900;color:var(--text-main)!important}.stat strong{font-size:30px!important;color:var(--primary-dark)!important;margin-top:14px!important}
.input,select,textarea{background:#fffdf8!important;border:1px solid color-mix(in srgb,var(--border-soft) 75%,#fff)!important;border-radius:18px!important;color:var(--text-main)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)!important}.input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb,var(--primary) 25%,transparent)!important;border-color:var(--primary)!important}.primary,button.primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark))!important;color:#fff!important;border:0!important;border-radius:18px!important;box-shadow:0 14px 28px color-mix(in srgb,var(--primary) 18%,transparent)!important}.primary:hover{filter:brightness(.92)!important;transform:translateY(-1px)!important}.secondary,.ghost{border:1px solid color-mix(in srgb,var(--border-soft) 80%,#fff)!important;border-radius:16px!important;color:var(--primary-dark)!important;background:#fffaf3!important}.secondary:hover,.ghost:hover{background:var(--primary-light)!important;color:var(--primary-dark)!important}.danger{color:var(--danger-tone)!important}.badge{border-radius:999px!important}.badge.blue{background:var(--primary-light)!important;color:var(--primary-dark)!important;border:1px solid color-mix(in srgb,var(--primary) 22%,#fff)!important}.tag.urgent,.priority-فوری{border-color:var(--danger-tone)!important;color:var(--danger-tone)!important}.case-card{border-right:5px solid var(--primary)!important}.item{background:rgba(255,255,255,.68)!important;border:1px solid color-mix(in srgb,var(--border-soft) 72%,#fff)!important;border-radius:18px!important}.table-wrap,.report-box{border-radius:22px!important;overflow:hidden!important;border:1px solid var(--border-soft)!important}.report-table th,table th{background:linear-gradient(135deg,var(--panel-header),var(--primary-dark))!important;color:#fff!important}.report-table td,table td{background:#fffdf8!important;border-color:color-mix(in srgb,var(--border-soft) 60%,#fff)!important}.report-summary .stat{min-height:92px!important}.report-summary .stat::before,.report-summary .stat::after{display:none!important}
.week-calendar-head{background:linear-gradient(135deg,var(--panel-header),var(--primary-dark))!important;color:#fff!important;border:0!important;box-shadow:var(--shadow-soft)!important}.week-calendar-head span,.week-calendar-head strong{color:#fff!important}.week-calendar-grid{grid-template-columns:repeat(7,minmax(128px,1fr))!important;gap:12px!important}.week-day-box{border:1px solid color-mix(in srgb,var(--border-soft) 80%,#fff)!important;background:linear-gradient(180deg,var(--bg-card),#fff)!important;border-radius:22px!important;box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 8%,transparent)!important}.week-day-box.today-week{background:linear-gradient(135deg,var(--primary-light),#fff)!important;border-color:var(--primary)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent),var(--shadow-soft)!important}.week-day-top strong{color:var(--primary-dark)!important}.week-count{background:color-mix(in srgb,var(--primary) 10%,#fff)!important;color:var(--primary-dark)!important}.week-details{background:var(--bg-card)!important;border-color:var(--border-soft)!important}.calendar-legend,.legend-free,.legend-light,.legend-medium,.legend-heavy{display:none!important}
.auth-overlay{background:linear-gradient(135deg,var(--bg-main),#fff)!important}.auth-card{background:var(--bg-card)!important;border:1px solid var(--border-soft)!important;border-radius:28px!important;box-shadow:var(--shadow-soft)!important}.auth-card h1{color:var(--primary-dark)!important}.done-dialog form{background:var(--bg-card)!important;border:1px solid var(--border-soft)!important;border-radius:24px!important}.toast{background:var(--primary-dark)!important;color:#fff!important;border-radius:18px!important}.palette-preview,.palette-mini-title,.palette-mini-row{display:none!important}
@media(max-width:1150px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.week-calendar-grid{grid-template-columns:repeat(4,minmax(150px,1fr))!important}.topbar{min-height:160px!important}.layout{width:calc(100% - 20px)!important}}
@media(max-width:720px){.topbar{min-height:190px!important;display:grid!important;grid-template-columns:1fr!important;padding:18px 14px 60px!important}.brand .logo{width:70px!important;height:70px!important}.layout{margin-top:-38px!important}.sidebar{padding:10px!important;gap:6px!important}.sidebar .nav{min-width:92px!important;font-size:12px!important;padding:10px 11px!important}.stats{grid-template-columns:1fr!important}.grid.two,.grid.three,.grid.four{grid-template-columns:1fr!important}.week-calendar-grid{grid-template-columns:1fr!important}.card-head{margin:-18px -18px 16px!important}.card{padding:18px!important}}


/* v17 font references: upload owned font files into /fonts/ with these filenames for @font-face to load */
@font-face{font-family:'Tajawal';src:url('fonts/Tajawal-ExtraLight.ttf') format('truetype');font-weight:200;font-style:normal;font-display:swap}
@font-face{font-family:'Tajawal';src:url('fonts/Tajawal-Light.ttf') format('truetype');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'Tajawal';src:url('fonts/Tajawal-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Tajawal';src:url('fonts/Tajawal-ExtraBold.ttf') format('truetype');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Gandom';src:url('fonts/Gandom.woff') format('woff');font-display:swap}
@font-face{font-family:'Samim';src:url('fonts/Samim.woff2') format('woff2'),url('fonts/Samim.woff') format('woff');font-display:swap}
@font-face{font-family:'Sahel';src:url('fonts/Sahel.woff') format('woff');font-display:swap}
@font-face{font-family:'Shabnam';src:url('fonts/Shabnam.woff2') format('woff2'),url('fonts/Shabnam.woff') format('woff');font-display:swap}
@font-face{font-family:'Estedad';src:url('fonts/Estedad-Regular.woff2') format('woff2');font-display:swap}
@font-face{font-family:'Vazirmatn';src:url('fonts/Vazirmatn-Regular.woff2') format('woff2');font-display:swap}


/* v17 logo transparency + coherent theme frame */
:root{--logo-frame-bg:color-mix(in srgb,var(--primary-dark) 72%, transparent);--logo-frame-border:rgba(255,215,150,.70)}
.logo,.brand .logo,.auth-logo,.report-print-logo,.logo-box,.header-logo,.brand-logo{
  background:transparent!important;
  background-color:transparent!important;
}
.brand .logo.logo-box,.brand .logo,.auth-logo.logo-box{
  width:92px!important;height:92px!important;border-radius:22px!important;padding:10px!important;
  background:var(--logo-frame-bg)!important;
  border:1px solid var(--logo-frame-border)!important;
  box-shadow:0 10px 25px rgba(0,0,0,.18), inset 0 0 0 1px rgba(255,255,255,.10)!important;
  display:grid!important;place-items:center!important;overflow:visible!important;
}
.logo img,.brand .logo img,.auth-logo img,.report-print-logo img,.logo-box img,.header-logo img,.brand-logo img{
  width:64px!important;height:64px!important;object-fit:contain!important;background:transparent!important;background-color:transparent!important;display:block!important;filter:none!important;mix-blend-mode:normal!important;
}
.auth-logo.logo-box{margin:0 auto 12px!important;width:82px!important;height:82px!important;border-radius:22px!important;background:color-mix(in srgb,var(--primary-dark) 60%, transparent)!important}
.report-print-logo{background:transparent!important;border:1px solid rgba(214,170,92,.45)!important;border-radius:12px!important;padding:4px!important}
.report-print-logo img{width:38px!important;height:38px!important}
body.theme-turquoise{--logo-frame-bg:color-mix(in srgb,#056b73 76%, transparent)}
body.theme-red{--logo-frame-bg:color-mix(in srgb,#870e1a 76%, transparent)}
body.theme-burgundy{--logo-frame-bg:color-mix(in srgb,#4b0711 76%, transparent)}
body.theme-brown{--logo-frame-bg:color-mix(in srgb,#4f2b13 76%, transparent)}
body.theme-gray{--logo-frame-bg:color-mix(in srgb,#303438 76%, transparent)}
body.theme-blue{--logo-frame-bg:color-mix(in srgb,#094a96 76%, transparent)}
body.theme-navy{--logo-frame-bg:color-mix(in srgb,#183755 76%, transparent)}
body.theme-sky{--logo-frame-bg:color-mix(in srgb,#1479b8 72%, transparent)}
body.theme-gold{--logo-frame-bg:color-mix(in srgb,#7a5318 76%, transparent)}
body.theme-orange{--logo-frame-bg:color-mix(in srgb,#8f3f0f 76%, transparent)}

/* v17: apply menu font to the new horizontal menu, not only the old right sidebar */
body,input,select,textarea,button,.input,.item,.table-wrap,.report-table{font-family:var(--body-font)!important}
h1,h2,h3,.card-head h3,.card-head strong,.brand h1,.hero-title{font-family:var(--heading-font)!important}
.sidebar,.sidebar .nav,.nav,.top-nav,.menu-panel,.menu-toggle{font-family:var(--sidebar-font)!important}
.sidebar .nav{font-weight:850!important}
.sidebar .nav:hover{font-weight:950!important}

/* v17: unified system tokens on added themes */
body.theme-navy .topbar{background:linear-gradient(135deg,#244e7a,#183755)!important}
body.theme-sky .topbar{background:linear-gradient(135deg,#45a9e6,#1479b8)!important}
body.theme-turquoise .topbar{background:linear-gradient(135deg,#0797a1,#056b73)!important}
@media(max-width:720px){.brand .logo.logo-box,.brand .logo{width:74px!important;height:74px!important}.logo img,.brand .logo img{width:54px!important;height:54px!important}}


/* online v18: CMYK theme tokens + monthly calendar + variable font system */

@font-face{font-family:"Tajawal";src:url("assets/fonts/Tajawal-Light.ttf") format("truetype");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Tajawal";src:url("assets/fonts/Tajawal-Bold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Gandom";src:url("assets/fonts/Gandom.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Samim";src:url("assets/fonts/Samim.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Sahel";src:url("assets/fonts/Sahel.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Shabnam";src:url("assets/fonts/Shabnam.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Estedad";src:url("assets/fonts/Estedad-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Vazirmatn";src:url("assets/fonts/Vazirmatn-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}

:root{
--font-main:Vazirmatn;--font-title:Estedad;--font-menu:Vazirmatn;--font-card:Estedad;--font-form:Vazirmatn;--font-table:Vazirmatn;
--font-size-page-title:34px;--font-size-section-title:22px;--font-size-card-title:16px;--font-size-card-number:30px;--font-size-body:15px;--font-size-menu:14px;--font-size-button:14px;--font-size-form-label:14px;--font-size-input:15px;--font-size-table-header:14px;--font-size-table-body:13px;--font-size-calendar:14px;
--bg-main:#fff8ed;--bg-card:#fffaf1;--border-soft:#ead7b6;--text-main:#1f2933;--text-muted:#6b6259;--shadow-soft:0 18px 45px rgba(70,45,20,.10);
--primary:#c7691e;--primary-dark:#8f3f0f;--primary-light:#f0cfae;--primary-soft:#fcf3ea;--top-header-bg:var(--primary-dark);--top-header-text:#fff;--nav-bg:#fffaf1;--nav-active-bg:var(--primary);--nav-active-text:#fff;--panel-header-bg:var(--primary-dark);--panel-header-text:#fff;--primary-btn-bg:var(--primary);--primary-btn-hover:var(--primary-dark);--icon-bg:var(--primary);--icon-text:#fff;--link-color:var(--primary-dark);--calendar-today-bg:var(--primary);--calendar-today-text:#fff;--logo-frame-bg:rgba(0,0,0,.18);--logo-frame-border:var(--primary-light);--card-border:var(--primary-light);--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:var(--primary-light);--table-header-bg:var(--primary-dark);
--calendar-header-bg:var(--panel-header-bg);--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:var(--card-border);--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:var(--primary-soft);--calendar-event-text:#1f2933;
}
body.theme-palette-01{--primary:#FF00CC;--primary-dark:#AD008B;--primary-light:#FFA6ED;--primary-soft:#FFE6FA;--top-header-bg:#AD008B;--top-header-text:#FFFFFF;--nav-bg:#fffaf1;--nav-active-bg:#FF00CC;--nav-active-text:#FFFFFF;--panel-header-bg:#AD008B;--panel-header-text:#FFFFFF;--primary-btn-bg:#FF00CC;--primary-btn-hover:#C7009F;--icon-bg:#FF00CC;--icon-text:#FFFFFF;--link-color:#AD008B;--calendar-today-bg:#FF00CC;--calendar-today-text:#FFFFFF;--logo-frame-bg:#FFCCF5;--logo-frame-border:#FFA6ED;--card-border:#FFA6ED;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#FFA6ED;--table-header-bg:#AD008B;--calendar-header-bg:#AD008B;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#FFA6ED;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#FFE6FA;--calendar-event-text:#1f2933;}
body.theme-palette-02{--primary:#FF4D19;--primary-dark:#AD3411;--primary-light:#FFC1AE;--primary-soft:#FFEDE8;--top-header-bg:#AD3411;--top-header-text:#FFFFFF;--nav-bg:#fffaf1;--nav-active-bg:#FF4D19;--nav-active-text:#FFFFFF;--panel-header-bg:#AD3411;--panel-header-text:#FFFFFF;--primary-btn-bg:#FF4D19;--primary-btn-hover:#C73C14;--icon-bg:#FF4D19;--icon-text:#FFFFFF;--link-color:#AD3411;--calendar-today-bg:#FF4D19;--calendar-today-text:#FFFFFF;--logo-frame-bg:#FFDBD1;--logo-frame-border:#FFC1AE;--card-border:#FFC1AE;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#FFC1AE;--table-header-bg:#AD3411;--calendar-header-bg:#AD3411;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#FFC1AE;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#FFEDE8;--calendar-event-text:#1f2933;}
body.theme-palette-03{--primary:#FFCC00;--primary-dark:#AD8B00;--primary-light:#FFEDA6;--primary-soft:#FFFAE6;--top-header-bg:#AD8B00;--top-header-text:#1F2933;--nav-bg:#fffaf1;--nav-active-bg:#FFCC00;--nav-active-text:#1F2933;--panel-header-bg:#AD8B00;--panel-header-text:#1F2933;--primary-btn-bg:#FFCC00;--primary-btn-hover:#C79F00;--icon-bg:#FFCC00;--icon-text:#1F2933;--link-color:#AD8B00;--calendar-today-bg:#FFCC00;--calendar-today-text:#1F2933;--logo-frame-bg:#856A00;--logo-frame-border:#FFEDA6;--card-border:#FFEDA6;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#FFEDA6;--table-header-bg:#AD8B00;--calendar-header-bg:#AD8B00;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#FFEDA6;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#FFFAE6;--calendar-event-text:#1f2933;}
body.theme-palette-04{--primary:#99FF00;--primary-dark:#68AD00;--primary-light:#DBFFA6;--primary-soft:#F5FFE6;--top-header-bg:#68AD00;--top-header-text:#1F2933;--nav-bg:#fffaf1;--nav-active-bg:#99FF00;--nav-active-text:#1F2933;--panel-header-bg:#68AD00;--panel-header-text:#1F2933;--primary-btn-bg:#99FF00;--primary-btn-hover:#77C700;--icon-bg:#99FF00;--icon-text:#1F2933;--link-color:#68AD00;--calendar-today-bg:#99FF00;--calendar-today-text:#1F2933;--logo-frame-bg:#508500;--logo-frame-border:#DBFFA6;--card-border:#DBFFA6;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#DBFFA6;--table-header-bg:#68AD00;--calendar-header-bg:#68AD00;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#DBFFA6;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#F5FFE6;--calendar-event-text:#1f2933;}
body.theme-palette-05{--primary:#3340FF;--primary-dark:#232CAD;--primary-light:#B8BCFF;--primary-soft:#EBECFF;--top-header-bg:#232CAD;--top-header-text:#FFFFFF;--nav-bg:#fffaf1;--nav-active-bg:#3340FF;--nav-active-text:#FFFFFF;--panel-header-bg:#232CAD;--panel-header-text:#FFFFFF;--primary-btn-bg:#3340FF;--primary-btn-hover:#2832C7;--icon-bg:#3340FF;--icon-text:#FFFFFF;--link-color:#232CAD;--calendar-today-bg:#3340FF;--calendar-today-text:#FFFFFF;--logo-frame-bg:#D6D9FF;--logo-frame-border:#B8BCFF;--card-border:#B8BCFF;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#B8BCFF;--table-header-bg:#232CAD;--calendar-header-bg:#232CAD;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#B8BCFF;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#EBECFF;--calendar-event-text:#1f2933;}
body.theme-palette-06{--primary:#CC00FF;--primary-dark:#8B00AD;--primary-light:#EDA6FF;--primary-soft:#FAE6FF;--top-header-bg:#8B00AD;--top-header-text:#FFFFFF;--nav-bg:#fffaf1;--nav-active-bg:#CC00FF;--nav-active-text:#FFFFFF;--panel-header-bg:#8B00AD;--panel-header-text:#FFFFFF;--primary-btn-bg:#CC00FF;--primary-btn-hover:#9F00C7;--icon-bg:#CC00FF;--icon-text:#FFFFFF;--link-color:#8B00AD;--calendar-today-bg:#CC00FF;--calendar-today-text:#FFFFFF;--logo-frame-bg:#F5CCFF;--logo-frame-border:#EDA6FF;--card-border:#EDA6FF;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#EDA6FF;--table-header-bg:#8B00AD;--calendar-header-bg:#8B00AD;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#EDA6FF;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#FAE6FF;--calendar-event-text:#1f2933;}
body.theme-palette-07{--primary:#FFCCB2;--primary-dark:#AD8B79;--primary-light:#FFEDE4;--primary-soft:#FFFAF7;--top-header-bg:#AD8B79;--top-header-text:#1F2933;--nav-bg:#fffaf1;--nav-active-bg:#FFCCB2;--nav-active-text:#1F2933;--panel-header-bg:#AD8B79;--panel-header-text:#1F2933;--primary-btn-bg:#FFCCB2;--primary-btn-hover:#C79F8B;--icon-bg:#FFCCB2;--icon-text:#1F2933;--link-color:#AD8B79;--calendar-today-bg:#FFCCB2;--calendar-today-text:#1F2933;--logo-frame-bg:#856A5D;--logo-frame-border:#FFEDE4;--card-border:#FFEDE4;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#FFEDE4;--table-header-bg:#AD8B79;--calendar-header-bg:#AD8B79;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#FFEDE4;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#FFFAF7;--calendar-event-text:#1f2933;}
body.theme-palette-08{--primary:#4DFF00;--primary-dark:#34AD00;--primary-light:#C1FFA6;--primary-soft:#EDFFE6;--top-header-bg:#34AD00;--top-header-text:#1F2933;--nav-bg:#fffaf1;--nav-active-bg:#4DFF00;--nav-active-text:#1F2933;--panel-header-bg:#34AD00;--panel-header-text:#1F2933;--primary-btn-bg:#4DFF00;--primary-btn-hover:#3CC700;--icon-bg:#4DFF00;--icon-text:#1F2933;--link-color:#34AD00;--calendar-today-bg:#4DFF00;--calendar-today-text:#1F2933;--logo-frame-bg:#288500;--logo-frame-border:#C1FFA6;--card-border:#C1FFA6;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#C1FFA6;--table-header-bg:#34AD00;--calendar-header-bg:#34AD00;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#C1FFA6;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#EDFFE6;--calendar-event-text:#1f2933;}
body.theme-palette-09{--primary:#0080FF;--primary-dark:#0057AD;--primary-light:#A6D3FF;--primary-soft:#E6F2FF;--top-header-bg:#0057AD;--top-header-text:#FFFFFF;--nav-bg:#fffaf1;--nav-active-bg:#0080FF;--nav-active-text:#FFFFFF;--panel-header-bg:#0057AD;--panel-header-text:#FFFFFF;--primary-btn-bg:#0080FF;--primary-btn-hover:#0064C7;--icon-bg:#0080FF;--icon-text:#FFFFFF;--link-color:#0057AD;--calendar-today-bg:#0080FF;--calendar-today-text:#FFFFFF;--logo-frame-bg:#CCE6FF;--logo-frame-border:#A6D3FF;--card-border:#A6D3FF;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#A6D3FF;--table-header-bg:#0057AD;--calendar-header-bg:#0057AD;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#A6D3FF;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#E6F2FF;--calendar-event-text:#1f2933;}
body.theme-palette-10{--primary:#FF80E6;--primary-dark:#AD579C;--primary-light:#FFD3F6;--primary-soft:#FFF2FC;--top-header-bg:#AD579C;--top-header-text:#FFFFFF;--nav-bg:#fffaf1;--nav-active-bg:#FF80E6;--nav-active-text:#FFFFFF;--panel-header-bg:#AD579C;--panel-header-text:#FFFFFF;--primary-btn-bg:#FF80E6;--primary-btn-hover:#C764B3;--icon-bg:#FF80E6;--icon-text:#FFFFFF;--link-color:#AD579C;--calendar-today-bg:#FF80E6;--calendar-today-text:#FFFFFF;--logo-frame-bg:#FFE6FA;--logo-frame-border:#FFD3F6;--card-border:#FFD3F6;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#FFD3F6;--table-header-bg:#AD579C;--calendar-header-bg:#AD579C;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#FFD3F6;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#FFF2FC;--calendar-event-text:#1f2933;}
body.theme-palette-11{--primary:#19FF80;--primary-dark:#11AD57;--primary-light:#AEFFD3;--primary-soft:#E8FFF2;--top-header-bg:#11AD57;--top-header-text:#1F2933;--nav-bg:#fffaf1;--nav-active-bg:#19FF80;--nav-active-text:#1F2933;--panel-header-bg:#11AD57;--panel-header-text:#1F2933;--primary-btn-bg:#19FF80;--primary-btn-hover:#14C764;--icon-bg:#19FF80;--icon-text:#1F2933;--link-color:#11AD57;--calendar-today-bg:#19FF80;--calendar-today-text:#1F2933;--logo-frame-bg:#0D8543;--logo-frame-border:#AEFFD3;--card-border:#AEFFD3;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#AEFFD3;--table-header-bg:#11AD57;--calendar-header-bg:#11AD57;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#AEFFD3;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#E8FFF2;--calendar-event-text:#1f2933;}
body.theme-palette-12{--primary:#B2E6FF;--primary-dark:#799CAD;--primary-light:#E4F6FF;--primary-soft:#F7FCFF;--top-header-bg:#799CAD;--top-header-text:#1F2933;--nav-bg:#fffaf1;--nav-active-bg:#B2E6FF;--nav-active-text:#1F2933;--panel-header-bg:#799CAD;--panel-header-text:#1F2933;--primary-btn-bg:#B2E6FF;--primary-btn-hover:#8BB3C7;--icon-bg:#B2E6FF;--icon-text:#1F2933;--link-color:#799CAD;--calendar-today-bg:#B2E6FF;--calendar-today-text:#1F2933;--logo-frame-bg:#5D7885;--logo-frame-border:#E4F6FF;--card-border:#E4F6FF;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#E4F6FF;--table-header-bg:#799CAD;--calendar-header-bg:#799CAD;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#E4F6FF;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#F7FCFF;--calendar-event-text:#1f2933;}
body.theme-palette-13{--primary:#00CCFF;--primary-dark:#008BAD;--primary-light:#A6EDFF;--primary-soft:#E6FAFF;--top-header-bg:#008BAD;--top-header-text:#FFFFFF;--nav-bg:#fffaf1;--nav-active-bg:#00CCFF;--nav-active-text:#FFFFFF;--panel-header-bg:#008BAD;--panel-header-text:#FFFFFF;--primary-btn-bg:#00CCFF;--primary-btn-hover:#009FC7;--icon-bg:#00CCFF;--icon-text:#FFFFFF;--link-color:#008BAD;--calendar-today-bg:#00CCFF;--calendar-today-text:#FFFFFF;--logo-frame-bg:#006A85;--logo-frame-border:#A6EDFF;--card-border:#A6EDFF;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#A6EDFF;--table-header-bg:#008BAD;--calendar-header-bg:#008BAD;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#A6EDFF;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#E6FAFF;--calendar-event-text:#1f2933;}
body.theme-palette-14{--primary:#FFFF80;--primary-dark:#ADAD57;--primary-light:#FFFFD3;--primary-soft:#FFFFF2;--top-header-bg:#ADAD57;--top-header-text:#1F2933;--nav-bg:#fffaf1;--nav-active-bg:#FFFF80;--nav-active-text:#1F2933;--panel-header-bg:#ADAD57;--panel-header-text:#1F2933;--primary-btn-bg:#FFFF80;--primary-btn-hover:#C7C764;--icon-bg:#FFFF80;--icon-text:#1F2933;--link-color:#ADAD57;--calendar-today-bg:#FFFF80;--calendar-today-text:#1F2933;--logo-frame-bg:#858543;--logo-frame-border:#FFFFD3;--card-border:#FFFFD3;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#FFFFD3;--table-header-bg:#ADAD57;--calendar-header-bg:#ADAD57;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#FFFFD3;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#FFFFF2;--calendar-event-text:#1f2933;}
body.theme-palette-15{--primary:#CCFF80;--primary-dark:#8BAD57;--primary-light:#EDFFD3;--primary-soft:#FAFFF2;--top-header-bg:#8BAD57;--top-header-text:#1F2933;--nav-bg:#fffaf1;--nav-active-bg:#CCFF80;--nav-active-text:#1F2933;--panel-header-bg:#8BAD57;--panel-header-text:#1F2933;--primary-btn-bg:#CCFF80;--primary-btn-hover:#9FC764;--icon-bg:#CCFF80;--icon-text:#1F2933;--link-color:#8BAD57;--calendar-today-bg:#CCFF80;--calendar-today-text:#1F2933;--logo-frame-bg:#6A8543;--logo-frame-border:#EDFFD3;--card-border:#EDFFD3;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#EDFFD3;--table-header-bg:#8BAD57;--calendar-header-bg:#8BAD57;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#EDFFD3;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#FAFFF2;--calendar-event-text:#1f2933;}
body.theme-palette-16{--primary:#6600FF;--primary-dark:#4500AD;--primary-light:#C9A6FF;--primary-soft:#F0E6FF;--top-header-bg:#4500AD;--top-header-text:#FFFFFF;--nav-bg:#fffaf1;--nav-active-bg:#6600FF;--nav-active-text:#FFFFFF;--panel-header-bg:#4500AD;--panel-header-text:#FFFFFF;--primary-btn-bg:#6600FF;--primary-btn-hover:#5000C7;--icon-bg:#6600FF;--icon-text:#FFFFFF;--link-color:#4500AD;--calendar-today-bg:#6600FF;--calendar-today-text:#FFFFFF;--logo-frame-bg:#E0CCFF;--logo-frame-border:#C9A6FF;--card-border:#C9A6FF;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#C9A6FF;--table-header-bg:#4500AD;--calendar-header-bg:#4500AD;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#C9A6FF;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#F0E6FF;--calendar-event-text:#1f2933;}
body.theme-palette-17{--primary:#0000FF;--primary-dark:#0000AD;--primary-light:#A6A6FF;--primary-soft:#E6E6FF;--top-header-bg:#0000AD;--top-header-text:#FFFFFF;--nav-bg:#fffaf1;--nav-active-bg:#0000FF;--nav-active-text:#FFFFFF;--panel-header-bg:#0000AD;--panel-header-text:#FFFFFF;--primary-btn-bg:#0000FF;--primary-btn-hover:#0000C7;--icon-bg:#0000FF;--icon-text:#FFFFFF;--link-color:#0000AD;--calendar-today-bg:#0000FF;--calendar-today-text:#FFFFFF;--logo-frame-bg:#CCCCFF;--logo-frame-border:#A6A6FF;--card-border:#A6A6FF;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#A6A6FF;--table-header-bg:#0000AD;--calendar-header-bg:#0000AD;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#A6A6FF;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#E6E6FF;--calendar-event-text:#1f2933;}
body.theme-palette-18{--primary:#FF0000;--primary-dark:#AD0000;--primary-light:#FFA6A6;--primary-soft:#FFE6E6;--top-header-bg:#AD0000;--top-header-text:#FFFFFF;--nav-bg:#fffaf1;--nav-active-bg:#FF0000;--nav-active-text:#FFFFFF;--panel-header-bg:#AD0000;--panel-header-text:#FFFFFF;--primary-btn-bg:#FF0000;--primary-btn-hover:#C70000;--icon-bg:#FF0000;--icon-text:#FFFFFF;--link-color:#AD0000;--calendar-today-bg:#FF0000;--calendar-today-text:#FFFFFF;--logo-frame-bg:#FFCCCC;--logo-frame-border:#FFA6A6;--card-border:#FFA6A6;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#FFA6A6;--table-header-bg:#AD0000;--calendar-header-bg:#AD0000;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#FFA6A6;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#FFE6E6;--calendar-event-text:#1f2933;}
body.theme-palette-19{--primary:#00FF00;--primary-dark:#00AD00;--primary-light:#A6FFA6;--primary-soft:#E6FFE6;--top-header-bg:#00AD00;--top-header-text:#1F2933;--nav-bg:#fffaf1;--nav-active-bg:#00FF00;--nav-active-text:#1F2933;--panel-header-bg:#00AD00;--panel-header-text:#1F2933;--primary-btn-bg:#00FF00;--primary-btn-hover:#00C700;--icon-bg:#00FF00;--icon-text:#1F2933;--link-color:#00AD00;--calendar-today-bg:#00FF00;--calendar-today-text:#1F2933;--logo-frame-bg:#008500;--logo-frame-border:#A6FFA6;--card-border:#A6FFA6;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#A6FFA6;--table-header-bg:#00AD00;--calendar-header-bg:#00AD00;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#A6FFA6;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#E6FFE6;--calendar-event-text:#1f2933;}
body.theme-palette-20{--primary:#CCCC00;--primary-dark:#8B8B00;--primary-light:#EDEDA6;--primary-soft:#FAFAE6;--top-header-bg:#8B8B00;--top-header-text:#1F2933;--nav-bg:#fffaf1;--nav-active-bg:#CCCC00;--nav-active-text:#1F2933;--panel-header-bg:#8B8B00;--panel-header-text:#1F2933;--primary-btn-bg:#CCCC00;--primary-btn-hover:#9F9F00;--icon-bg:#CCCC00;--icon-text:#1F2933;--link-color:#8B8B00;--calendar-today-bg:#CCCC00;--calendar-today-text:#1F2933;--logo-frame-bg:#6A6A00;--logo-frame-border:#EDEDA6;--card-border:#EDEDA6;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#EDEDA6;--table-header-bg:#8B8B00;--calendar-header-bg:#8B8B00;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#EDEDA6;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#FAFAE6;--calendar-event-text:#1f2933;}
body.theme-palette-21{--primary:#80FFFF;--primary-dark:#57ADAD;--primary-light:#D3FFFF;--primary-soft:#F2FFFF;--top-header-bg:#57ADAD;--top-header-text:#1F2933;--nav-bg:#fffaf1;--nav-active-bg:#80FFFF;--nav-active-text:#1F2933;--panel-header-bg:#57ADAD;--panel-header-text:#1F2933;--primary-btn-bg:#80FFFF;--primary-btn-hover:#64C7C7;--icon-bg:#80FFFF;--icon-text:#1F2933;--link-color:#57ADAD;--calendar-today-bg:#80FFFF;--calendar-today-text:#1F2933;--logo-frame-bg:#438585;--logo-frame-border:#D3FFFF;--card-border:#D3FFFF;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#D3FFFF;--table-header-bg:#57ADAD;--calendar-header-bg:#57ADAD;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#D3FFFF;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#F2FFFF;--calendar-event-text:#1f2933;}
body.theme-palette-22{--primary:#FF80FF;--primary-dark:#AD57AD;--primary-light:#FFD3FF;--primary-soft:#FFF2FF;--top-header-bg:#AD57AD;--top-header-text:#FFFFFF;--nav-bg:#fffaf1;--nav-active-bg:#FF80FF;--nav-active-text:#FFFFFF;--panel-header-bg:#AD57AD;--panel-header-text:#FFFFFF;--primary-btn-bg:#FF80FF;--primary-btn-hover:#C764C7;--icon-bg:#FF80FF;--icon-text:#FFFFFF;--link-color:#AD57AD;--calendar-today-bg:#FF80FF;--calendar-today-text:#FFFFFF;--logo-frame-bg:#FFE6FF;--logo-frame-border:#FFD3FF;--card-border:#FFD3FF;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#FFD3FF;--table-header-bg:#AD57AD;--calendar-header-bg:#AD57AD;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#FFD3FF;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#FFF2FF;--calendar-event-text:#1f2933;}
body.theme-palette-23{--primary:#FFFF80;--primary-dark:#ADAD57;--primary-light:#FFFFD3;--primary-soft:#FFFFF2;--top-header-bg:#ADAD57;--top-header-text:#1F2933;--nav-bg:#fffaf1;--nav-active-bg:#FFFF80;--nav-active-text:#1F2933;--panel-header-bg:#ADAD57;--panel-header-text:#1F2933;--primary-btn-bg:#FFFF80;--primary-btn-hover:#C7C764;--icon-bg:#FFFF80;--icon-text:#1F2933;--link-color:#ADAD57;--calendar-today-bg:#FFFF80;--calendar-today-text:#1F2933;--logo-frame-bg:#858543;--logo-frame-border:#FFFFD3;--card-border:#FFFFD3;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#FFFFD3;--table-header-bg:#ADAD57;--calendar-header-bg:#ADAD57;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#FFFFD3;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#FFFFF2;--calendar-event-text:#1f2933;}
body.theme-palette-24{--primary:#808080;--primary-dark:#575757;--primary-light:#D3D3D3;--primary-soft:#F2F2F2;--top-header-bg:#575757;--top-header-text:#FFFFFF;--nav-bg:#fffaf1;--nav-active-bg:#808080;--nav-active-text:#FFFFFF;--panel-header-bg:#575757;--panel-header-text:#FFFFFF;--primary-btn-bg:#808080;--primary-btn-hover:#646464;--icon-bg:#808080;--icon-text:#FFFFFF;--link-color:#575757;--calendar-today-bg:#808080;--calendar-today-text:#FFFFFF;--logo-frame-bg:#E6E6E6;--logo-frame-border:#D3D3D3;--card-border:#D3D3D3;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#D3D3D3;--table-header-bg:#575757;--calendar-header-bg:#575757;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#D3D3D3;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#F2F2F2;--calendar-event-text:#1f2933;}
body.theme-palette-25{--primary:#00FFFF;--primary-dark:#00ADAD;--primary-light:#A6FFFF;--primary-soft:#E6FFFF;--top-header-bg:#00ADAD;--top-header-text:#1F2933;--nav-bg:#fffaf1;--nav-active-bg:#00FFFF;--nav-active-text:#1F2933;--panel-header-bg:#00ADAD;--panel-header-text:#1F2933;--primary-btn-bg:#00FFFF;--primary-btn-hover:#00C7C7;--icon-bg:#00FFFF;--icon-text:#1F2933;--link-color:#00ADAD;--calendar-today-bg:#00FFFF;--calendar-today-text:#1F2933;--logo-frame-bg:#008585;--logo-frame-border:#A6FFFF;--card-border:#A6FFFF;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#A6FFFF;--table-header-bg:#00ADAD;--calendar-header-bg:#00ADAD;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#A6FFFF;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#E6FFFF;--calendar-event-text:#1f2933;}
body.theme-palette-26{--primary:#FF00FF;--primary-dark:#AD00AD;--primary-light:#FFA6FF;--primary-soft:#FFE6FF;--top-header-bg:#AD00AD;--top-header-text:#FFFFFF;--nav-bg:#fffaf1;--nav-active-bg:#FF00FF;--nav-active-text:#FFFFFF;--panel-header-bg:#AD00AD;--panel-header-text:#FFFFFF;--primary-btn-bg:#FF00FF;--primary-btn-hover:#C700C7;--icon-bg:#FF00FF;--icon-text:#FFFFFF;--link-color:#AD00AD;--calendar-today-bg:#FF00FF;--calendar-today-text:#FFFFFF;--logo-frame-bg:#FFCCFF;--logo-frame-border:#FFA6FF;--card-border:#FFA6FF;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#FFA6FF;--table-header-bg:#AD00AD;--calendar-header-bg:#AD00AD;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#FFA6FF;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#FFE6FF;--calendar-event-text:#1f2933;}
body.theme-palette-27{--primary:#FFFF00;--primary-dark:#ADAD00;--primary-light:#FFFFA6;--primary-soft:#FFFFE6;--top-header-bg:#ADAD00;--top-header-text:#1F2933;--nav-bg:#fffaf1;--nav-active-bg:#FFFF00;--nav-active-text:#1F2933;--panel-header-bg:#ADAD00;--panel-header-text:#1F2933;--primary-btn-bg:#FFFF00;--primary-btn-hover:#C7C700;--icon-bg:#FFFF00;--icon-text:#1F2933;--link-color:#ADAD00;--calendar-today-bg:#FFFF00;--calendar-today-text:#1F2933;--logo-frame-bg:#858500;--logo-frame-border:#FFFFA6;--card-border:#FFFFA6;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#FFFFA6;--table-header-bg:#ADAD00;--calendar-header-bg:#ADAD00;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#FFFFA6;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#FFFFE6;--calendar-event-text:#1f2933;}
body.theme-palette-28{--primary:#000000;--primary-dark:#000000;--primary-light:#A6A6A6;--primary-soft:#E6E6E6;--top-header-bg:#000000;--top-header-text:#FFFFFF;--nav-bg:#fffaf1;--nav-active-bg:#000000;--nav-active-text:#FFFFFF;--panel-header-bg:#000000;--panel-header-text:#FFFFFF;--primary-btn-bg:#000000;--primary-btn-hover:#000000;--icon-bg:#000000;--icon-text:#FFFFFF;--link-color:#000000;--calendar-today-bg:#000000;--calendar-today-text:#FFFFFF;--logo-frame-bg:#CCCCCC;--logo-frame-border:#A6A6A6;--card-border:#A6A6A6;--card-bg:#fffaf1;--app-bg:#fff8ed;--input-bg:#fffdf7;--input-border:#A6A6A6;--table-header-bg:#000000;--calendar-header-bg:#000000;--calendar-weekday-bg:#fff3df;--calendar-day-bg:#fffdf7;--calendar-day-border:#A6A6A6;--calendar-holiday-bg:#fff0f2;--calendar-holiday-text:#b4232a;--calendar-event-bg:#E6E6E6;--calendar-event-text:#1f2933;}

body{font-family:var(--font-main),Tahoma,Arial,sans-serif!important;font-size:var(--font-size-body)!important;background:var(--app-bg)!important;color:var(--text-main)!important}
.brand h1,.app-title,.hero h2{font-family:var(--font-title),var(--font-main),sans-serif!important;font-size:var(--font-size-page-title)!important}
.card h3,.panel-header-title,.card-head h3{font-family:var(--font-title),var(--font-main),sans-serif!important;font-size:var(--font-size-section-title)!important}
.sidebar .nav,.nav-item{font-family:var(--font-menu),var(--font-main),sans-serif!important;font-size:var(--font-size-menu)!important}
.stat span,.card-title{font-family:var(--font-card),var(--font-main),sans-serif!important;font-size:var(--font-size-card-title)!important}
.stat strong,.card-number{font-family:var(--font-card),var(--font-main),sans-serif!important;font-size:var(--font-size-card-number)!important}
label{font-family:var(--font-form),var(--font-main),sans-serif!important;font-size:var(--font-size-form-label)!important}
.input,input,select,textarea{font-family:var(--font-form),var(--font-main),sans-serif!important;font-size:var(--font-size-input)!important;background:var(--input-bg)!important;border-color:var(--input-border)!important}
button,.primary,.secondary,.ghost{font-family:var(--font-main),Tahoma,sans-serif!important;font-size:var(--font-size-button)!important}
table th,.report-table th{font-family:var(--font-table),var(--font-main),sans-serif!important;font-size:var(--font-size-table-header)!important;background:var(--table-header-bg)!important;color:var(--panel-header-text)!important}
table td,.report-table td{font-family:var(--font-table),var(--font-main),sans-serif!important;font-size:var(--font-size-table-body)!important}
.topbar{background:linear-gradient(135deg,var(--top-header-bg),color-mix(in srgb,var(--top-header-bg) 82%,#000))!important;color:var(--top-header-text)!important;box-shadow:var(--shadow-soft)!important;border-color:color-mix(in srgb,var(--logo-frame-border) 70%,transparent)!important}
.brand h1,.brand p{color:var(--top-header-text)!important}.logo-box,.brand .logo{background:var(--logo-frame-bg)!important;border:1px solid var(--logo-frame-border)!important;border-radius:22px!important;padding:10px!important;box-shadow:0 10px 25px rgba(0,0,0,.18)!important}.logo-box img,.brand .logo img,.brand img{background:transparent!important;object-fit:contain!important}
.sidebar{background:var(--nav-bg)!important;border-color:var(--card-border)!important}.sidebar .nav.active{background:var(--nav-active-bg)!important;color:var(--nav-active-text)!important}.sidebar .nav:hover{background:var(--primary-soft)!important;color:var(--primary-dark)!important;font-weight:950!important;transform:translateY(-2px)!important}
.card,.sub-card,.case-card,.stat{background:var(--card-bg)!important;border-color:var(--card-border)!important;box-shadow:var(--shadow-soft)!important}.card-head:not(.inner-head){background:var(--panel-header-bg)!important;color:var(--panel-header-text)!important;border-radius:18px;padding:10px 14px}.card-head:not(.inner-head) h3{color:var(--panel-header-text)!important}.primary{background:var(--primary-btn-bg)!important;color:var(--nav-active-text)!important;border-color:var(--primary-btn-bg)!important}.primary:hover{background:var(--primary-btn-hover)!important}.secondary{background:var(--primary-soft)!important;color:var(--primary-dark)!important;border-color:var(--primary-light)!important}.ghost{border-color:var(--card-border)!important;color:var(--primary-dark)!important}a,.link{color:var(--link-color)!important}.badge.blue{background:var(--primary-soft)!important;color:var(--primary-dark)!important}.icon-circle,.stat .icon{background:var(--icon-bg)!important;color:var(--icon-text)!important}
.theme-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin:12px 0 18px}.theme-choice-card{border:1px solid var(--card-border);background:var(--card-bg);border-radius:18px;padding:10px;display:grid;gap:7px;text-align:center;cursor:pointer;box-shadow:0 8px 20px rgba(0,0,0,.05)}.theme-choice-card.active{outline:3px solid var(--primary);box-shadow:0 12px 26px color-mix(in srgb,var(--primary) 20%,transparent)}.theme-color{width:100%;height:40px;border-radius:12px;display:block}.theme-choice-card small{direction:ltr}.theme-choice-card em{display:flex;gap:4px;justify-content:center}.theme-choice-card i{width:22px;height:8px;border-radius:999px;display:block}.inner-head{margin-top:18px}.theme-color-input{height:42px!important;padding:4px!important}.theme-size-input{direction:ltr;text-align:center}.calendar-header-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:var(--calendar-header-bg);color:var(--panel-header-text);border-radius:22px 22px 0 0;padding:16px 18px}.calendar-header-bar h3,.calendar-header-bar p{color:var(--panel-header-text)!important}.calendar-actions{display:flex;gap:8px;flex-wrap:wrap}.calendar-panel{overflow:hidden;padding:0!important}.calendar-result.monthly{padding:16px;font-size:var(--font-size-calendar)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:8px}.calendar-weekdays span{background:var(--calendar-weekday-bg);border:1px solid var(--calendar-day-border);border-radius:12px;padding:9px;text-align:center;font-weight:900;color:var(--primary-dark)}.calendar-grid-month{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar-empty{min-height:118px;border-radius:16px;background:rgba(255,255,255,.38);border:1px dashed rgba(0,0,0,.06)}.calendar-day{min-height:118px;background:var(--calendar-day-bg)!important;border:1px solid var(--calendar-day-border)!important;border-radius:16px;padding:8px!important;text-align:right!important;display:flex!important;flex-direction:column!important;gap:6px!important;color:var(--text-main)!important;box-shadow:0 6px 15px rgba(0,0,0,.035)!important;overflow:hidden}.calendar-day.today{background:linear-gradient(135deg,var(--calendar-today-bg),var(--primary-dark))!important;color:var(--calendar-today-text)!important}.calendar-day.today .day-number,.calendar-day.today .calendar-event,.calendar-day.today .calendar-more{color:var(--calendar-today-text)!important}.calendar-day.friday,.calendar-day.holiday{background:var(--calendar-holiday-bg)!important;border-color:color-mix(in srgb,var(--calendar-holiday-text) 30%,#fff)!important}.calendar-day.today.holiday{background:linear-gradient(135deg,var(--calendar-today-bg),var(--primary-dark))!important}.day-number{font-weight:950;font-size:1.1em;color:var(--primary-dark)}.day-events{display:grid;gap:4px}.holiday-label{font-size:.82em;background:rgba(180,35,42,.09);color:var(--calendar-holiday-text);border-radius:9px;padding:3px 6px}.calendar-event{font-size:.82em;background:var(--calendar-event-bg);color:var(--calendar-event-text);border-radius:9px;padding:3px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-more{font-size:.8em;color:var(--primary-dark);font-weight:900}.calendar-day-details{margin-top:14px;border:1px solid var(--card-border);border-radius:20px;padding:14px;background:var(--card-bg)}.holiday-note{color:var(--calendar-holiday-text);font-weight:900}.full-calendar-head,.full-weekdays,.full-days,.week-calendar-head,.week-calendar-grid,.week-details,.calendar-legend,.calendar-legend-v11{display:none!important}
@media(max-width:900px){.calendar-grid-month,.calendar-weekdays{grid-template-columns:repeat(2,1fr)}.calendar-empty{display:none}.calendar-day{min-height:100px}.theme-card-grid{grid-template-columns:repeat(2,1fr)}}


/* online v19: cleanup theme selector, reset-safe colors, and simplified font controls */
.theme-card-grid{display:block!important}
.theme-select-row{display:grid;grid-template-columns:minmax(260px,420px) 1fr;gap:12px;align-items:end;margin:12px 0 16px}
.theme-compact-preview{min-height:54px;padding:10px 12px;border:1px solid var(--card-border);border-radius:16px;background:var(--card-bg);box-shadow:0 6px 16px rgba(0,0,0,.04)}
.theme-mini-preview{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.theme-mini-preview span{width:34px;height:22px;border-radius:8px;border:1px solid rgba(0,0,0,.08);display:inline-block}
.theme-mini-preview strong{margin-inline-start:8px;color:var(--text-main)}
.theme-mini-preview small{direction:ltr;color:var(--text-muted)}
.theme-choice-card{display:none!important}
.font-simple-grid{margin-top:12px}
.topbar,.calendar-header-bar,.card-head:not(.inner-head){color:var(--text-on-dark)!important}
.sidebar .nav.active{background:var(--nav-active-bg)!important;color:var(--nav-active-text)!important;border-color:var(--primary-light)!important}
.primary,.btn-primary{background:var(--button-bg,var(--primary-btn-bg))!important;color:var(--button-text,var(--text-on-primary))!important;border-color:var(--button-bg,var(--primary-btn-bg))!important}
.primary:hover,.btn-primary:hover{background:var(--primary-btn-hover)!important;color:var(--button-text,var(--text-on-primary))!important}
.card-head:not(.inner-head){background:var(--panel-header-bg)!important;color:var(--panel-header-text)!important}.card-head:not(.inner-head) *{color:var(--panel-header-text)!important}
.calendar-day.today{background:linear-gradient(135deg,var(--calendar-today-bg),var(--primary-dark))!important;color:var(--calendar-today-text)!important}.calendar-day.today *{color:var(--calendar-today-text)!important}.calendar-day.today .calendar-event{background:rgba(255,255,255,.18)!important;border:1px solid rgba(255,255,255,.22)!important}
.calendar-event{background:var(--calendar-event-bg)!important;color:var(--calendar-event-text)!important}
.logo-box,.brand .logo{background:var(--logo-frame-bg)!important;border-color:var(--logo-frame-border)!important}.logo-box img,.brand .logo img,.brand img{background:transparent!important;filter:drop-shadow(0 2px 2px rgba(0,0,0,.18))}
.icon-circle,.stat .icon{background:var(--icon-bg)!important;color:var(--icon-text)!important}
@media(max-width:900px){.theme-select-row{grid-template-columns:1fr}}


/* online v20: embedded Persian fonts */
@font-face{font-family:"BJalal";src:url("assets/fonts/BJALAL.TTF") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"BYagut";src:url("assets/fonts/BYAGUT.TTF") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"BYagutBold";src:url("assets/fonts/BYAGUTBD.TTF") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"BMitra";src:url("assets/fonts/MITRA.TTF") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"BMitraBold";src:url("assets/fonts/MITRAB.TTF") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"MitraModir2";src:url("assets/fonts/MMITRABDMRT2.TTF") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"MitraModir3";src:url("assets/fonts/MMITRABDMRT3.TTF") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"MitraModir4";src:url("assets/fonts/MMITRABDMRT4.TTF") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"MitraModir5";src:url("assets/fonts/MMITRABDMRT5.TTF") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Tajawal";src:url("assets/fonts/Tajawal-Light.ttf") format("truetype");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Tajawal";src:url("assets/fonts/Tajawal-Bold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Tajawal";src:url("assets/fonts/Tajawal-ExtraBold.ttf") format("truetype");font-weight:900;font-style:normal;font-display:swap}
@font-face{font-family:"Gandom";src:url("assets/fonts/Gandom.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Samim";src:url("assets/fonts/Samim.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Sahel";src:url("assets/fonts/Sahel.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Shabnam";src:url("assets/fonts/Shabnam.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Estedad";src:url("assets/fonts/Estedad-Regular.woff2") format("woff2");font-weight:400 900;font-style:normal;font-display:swap}
@font-face{font-family:"Vazirmatn";src:url("assets/fonts/Vazirmatn-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}

:root{--calendar-holiday-bg:var(--primary-soft);--calendar-holiday-text:var(--primary-dark);--calendar-holiday-border:var(--primary-light);--card-soft-bg:var(--primary-soft);--panel-bg:var(--card-bg)}
html,body,.content{background:var(--app-bg)!important;color:var(--text-main,#1F2933)!important}
.topbar{background:linear-gradient(135deg,var(--top-header-bg),var(--primary-dark))!important;color:var(--top-header-text)!important;overflow:visible!important;z-index:9999!important}
.topbar h1,.topbar p,.brand h1,.brand p{color:var(--top-header-text)!important}
.layout,.content,.view,.card,.sub-card,.case-card,.form-card,.report-box,.table-wrap,.week-details,.calendar-day-details{overflow:visible!important}
.account-menu{position:relative!important;z-index:999999!important}.menu-panel,.tools-menu,#accountMenuPanel{position:absolute!important;z-index:999999!important;top:calc(100% + 10px)!important;right:0!important;left:auto!important;background:var(--card-bg)!important;border:1px solid var(--card-border)!important;box-shadow:0 22px 60px rgba(0,0,0,.22)!important}.menu-panel.open,#accountMenuPanel.open{display:grid!important}
.card,.sub-card,.case-card,.form-card,.stat,.item,.report-summary .stat,.calendar-day,.input,select,textarea{background:var(--card-bg)!important;border-color:var(--card-border)!important;box-shadow:var(--shadow-soft,0 12px 30px rgba(0,0,0,.08))!important}
.card::before,.stat::before,.case-card::before,.form-card::before{background:none!important;display:none!important}.hero{background:var(--card-bg)!important;border-color:var(--card-border)!important;box-shadow:var(--shadow-soft,0 12px 30px rgba(0,0,0,.08))!important}.hero h2{color:var(--primary-dark)!important}
.card-head,.panel-header,.inner-head{background:var(--panel-header-bg)!important;color:var(--panel-header-text)!important;border-color:var(--card-border)!important}.card-head h3,.panel-header h3,.inner-head h3{color:var(--panel-header-text)!important}
.primary,.btn-primary,.menu-toggle{background:var(--primary-btn-bg)!important;color:var(--button-text,var(--text-on-primary))!important;border-color:var(--primary-light)!important}.primary:hover,.btn-primary:hover,.menu-toggle:hover{background:var(--primary-btn-hover)!important;color:var(--button-text,var(--text-on-primary))!important}.secondary,.ghost{border-color:var(--card-border)!important;color:var(--primary-dark)!important;background:var(--primary-soft)!important}.badge,.badge.blue,.badge.orange,.badge.red{background:var(--primary-soft)!important;color:var(--primary-dark)!important;border:1px solid var(--primary-light)!important}.sidebar{background:var(--nav-bg)!important;border-color:var(--card-border)!important}.sidebar .nav{font-family:var(--font-menu),var(--font-main),Tahoma,sans-serif!important;color:var(--text-main,#1F2933)!important}.sidebar .nav.active{background:var(--nav-active-bg)!important;color:var(--nav-active-text)!important}
.logo-box,.logo,.auth-logo{background:var(--logo-frame-bg)!important;border-color:var(--logo-frame-border)!important}.logo-box img,.logo img,.auth-logo img{background:transparent!important}
.stat-icon,.icon-circle,.case-icon{background:var(--icon-bg)!important;color:var(--icon-text)!important;border-color:var(--primary-light)!important}a{color:var(--link-color)!important}
.report-table th,table th{background:var(--table-header-bg)!important;color:var(--panel-header-text)!important}.report-table td,table td{background:var(--card-bg)!important;color:var(--text-main,#1F2933)!important}
.calendar-month-shell{font-family:var(--font-main),Tahoma,sans-serif!important;font-size:var(--font-size-calendar)!important}.calendar-weekdays span{background:var(--calendar-weekday-bg)!important;color:var(--primary-dark)!important;border-color:var(--calendar-day-border)!important}.calendar-day{background:var(--calendar-day-bg)!important;border-color:var(--calendar-day-border)!important}.calendar-day.today{background:var(--calendar-today-bg)!important;color:var(--calendar-today-text)!important;border-color:var(--primary-dark)!important}.calendar-day.today .day-number,.calendar-day.today .day-gregorian,.calendar-day.today .day-hijri{color:var(--calendar-today-text)!important}.calendar-day.friday,.calendar-day.holiday{background:var(--calendar-holiday-bg)!important;color:var(--calendar-holiday-text)!important;border-color:var(--calendar-holiday-border)!important}.calendar-day.friday .day-number,.calendar-day.holiday .day-number{color:var(--calendar-holiday-text)!important}.holiday-label{background:color-mix(in srgb,var(--calendar-holiday-bg) 72%,#fff)!important;color:var(--calendar-holiday-text)!important;border:1px solid var(--calendar-holiday-border)!important}.calendar-event{background:var(--calendar-event-bg)!important;color:var(--calendar-event-text)!important;border-color:var(--primary-light)!important}.calendar-more{color:var(--primary-dark)!important}.day-gregorian,.day-hijri{display:block;font-size:.72em;line-height:1.25;color:var(--text-muted,#667085);opacity:.76;margin-top:2px}.day-events{margin-top:6px;display:grid;gap:4px}.holiday-note{background:var(--calendar-holiday-bg)!important;color:var(--calendar-holiday-text)!important;border:1px solid var(--calendar-holiday-border)!important;border-radius:14px;padding:8px 10px}
input,select,textarea{background:var(--input-bg)!important;border-color:var(--input-border)!important;color:var(--text-main,#1F2933)!important}
body{font-family:var(--font-main),Tahoma,Arial,sans-serif!important;font-size:var(--font-size-body)!important}.brand h1,.app-title,.hero h2{font-family:var(--font-title),var(--font-main),Tahoma,sans-serif!important;font-size:var(--font-size-page-title)!important}.card-head h3,.panel-header h3{font-family:var(--font-title),var(--font-main),Tahoma,sans-serif!important}.primary,.secondary,.ghost,button{font-family:var(--font-main),Tahoma,sans-serif!important}
@media(max-width:760px){.menu-panel,#accountMenuPanel{position:fixed!important;top:84px!important;right:12px!important;left:12px!important;width:auto!important}.calendar-day{min-height:118px!important}.day-gregorian,.day-hijri{font-size:10px!important}}


/* =========================================================
   online v21: final stability override
   Fixes: login isolation, header/menu overlap, stale two-color bars,
   theme-only calendar events/holidays, tools menu z-index.
   ========================================================= */
:root{
  --app-bg:#fff8ed;
  --card-bg:#fffaf1;
  --card-border:var(--primary-light);
  --panel-bg:var(--card-bg);
  --panel-header-bg:var(--primary-dark);
  --panel-header-text:var(--text-on-dark,#fff);
  --nav-bg:#fffaf1;
  --nav-active-bg:var(--primary);
  --nav-active-text:var(--text-on-primary,#fff);
  --calendar-holiday-bg:var(--primary-soft);
  --calendar-holiday-text:var(--primary-dark);
  --calendar-holiday-border:var(--primary-light);
  --calendar-event-bg:var(--primary-soft);
  --calendar-event-text:var(--primary-dark);
}
/* Login must be isolated: app header/nav/content cannot appear behind login */
body.auth-locked{background:var(--app-bg)!important;overflow:auto!important;}
body.auth-locked .topbar,
body.auth-locked .layout,
body.auth-locked .toast{display:none!important;}
body.auth-locked .auth-overlay{
  position:fixed!important;inset:0!important;z-index:999999!important;display:grid!important;place-items:center!important;
  min-height:100vh!important;background:radial-gradient(circle at 50% 8%,var(--primary-soft),transparent 28%),var(--app-bg)!important;
  padding:24px!important;box-sizing:border-box!important;
}
body.auth-locked .auth-card{
  width:min(440px,92vw)!important;margin:0 auto!important;background:var(--card-bg)!important;border:1px solid var(--card-border)!important;
  border-radius:28px!important;box-shadow:0 24px 70px rgba(0,0,0,.14)!important;padding:28px!important;text-align:right!important;
}
body.auth-locked .auth-logo{background:var(--logo-frame-bg)!important;border-color:var(--logo-frame-border)!important;}
/* Reduce header height and keep horizontal menu in a stable normal layer */
body:not(.auth-locked) .topbar{
  min-height:132px!important;padding:20px clamp(16px,4vw,44px) 42px!important;border-radius:0 0 28px 28px!important;
  background:linear-gradient(135deg,var(--top-header-bg),var(--primary-dark))!important;background-image:linear-gradient(135deg,var(--top-header-bg),var(--primary-dark))!important;
  color:var(--top-header-text)!important;z-index:6000!important;overflow:visible!important;
}
body:not(.auth-locked) .brand .logo{width:74px!important;height:74px!important;border-radius:22px!important;padding:9px!important;}
body:not(.auth-locked) .brand h1{font-size:clamp(24px,2.5vw,36px)!important;}
body:not(.auth-locked) .layout{margin:-28px auto 30px!important;width:min(1540px,calc(100% - 32px))!important;position:relative!important;z-index:6100!important;}
body:not(.auth-locked) .sidebar{margin:0 0 22px!important;z-index:6200!important;position:relative!important;overflow:visible!important;background:var(--nav-bg)!important;background-image:none!important;}
.sidebar .nav{font-family:var(--font-menu),var(--font-main),Tahoma,sans-serif!important;}
/* Tools dropdown always above all cards/calendar/panels */
.account-menu,.top-actions,.menu-toggle-wrap{position:relative!important;z-index:99999!important;}
.menu-panel,.tools-menu,#accountMenuPanel{
  position:absolute!important;z-index:999999!important;top:calc(100% + 10px)!important;right:0!important;left:auto!important;
  background:var(--card-bg)!important;background-image:none!important;border:1px solid var(--card-border)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.24)!important;overflow:visible!important;
}
.layout,.content,.view,.card,.hero,.sub-card,.stat,.case-card,.item,.calendar-panel{overflow:visible!important;}
/* Remove old fixed gradients/backgrounds from cards, panels, forms, tables and statistics */
.content,.view{background:transparent!important;background-image:none!important;}
.hero,.card,.sub-card,.stat,.item,.case-card,.date-card,.report-box,.table-wrap,.calendar-day-details,.week-details,
#dashboard .card,#cases .card,#newCase .card,#tasks .card,#reports .card,#settings .card,#calendar .card{
  background:var(--card-bg)!important;background-image:none!important;border-color:var(--card-border)!important;color:var(--text-main)!important;
  box-shadow:var(--shadow-soft,0 14px 38px rgba(0,0,0,.08))!important;
}
.stats .stat:nth-child(1),.stats .stat:nth-child(2),.stats .stat:nth-child(3),.stats .stat:nth-child(4){
  background:var(--card-bg)!important;background-image:none!important;border-color:var(--card-border)!important;
}
.stat strong,.case-card h3,.hero h2{color:var(--primary-dark)!important;}
.case-card,.case-card.فوری,.case-card.مهم,.case-card.کم‌اهمیت{border-color:var(--card-border)!important;border-right-color:var(--primary)!important;background:var(--card-bg)!important;background-image:none!important;}
.card-head,.panel-header,.inner-head,.calendar-header-bar,.report-section-title{
  background:var(--panel-header-bg)!important;background-image:none!important;color:var(--panel-header-text)!important;border-color:var(--card-border)!important;
}
.card-head *,.panel-header *,.inner-head *,.calendar-header-bar *{color:var(--panel-header-text)!important;}
.primary,.btn-primary,.menu-toggle{background:var(--primary-btn-bg)!important;background-image:none!important;color:var(--button-text,var(--text-on-primary))!important;}
.primary:hover,.btn-primary:hover,.menu-toggle:hover{background:var(--primary-btn-hover)!important;background-image:none!important;color:var(--button-text,var(--text-on-primary))!important;}
.secondary,.ghost{background:var(--primary-soft)!important;background-image:none!important;color:var(--primary-dark)!important;border-color:var(--primary-light)!important;}
.badge,.badge.red,.badge.orange,.badge.green,.badge.blue{background:var(--primary-soft)!important;color:var(--primary-dark)!important;border:1px solid var(--primary-light)!important;}
input,select,textarea,.input{background:var(--input-bg)!important;border-color:var(--input-border)!important;color:var(--text-main)!important;box-shadow:none!important;}
.report-table th,table th{background:var(--table-header-bg)!important;color:var(--panel-header-text)!important;background-image:none!important;}
.report-table td,table td{background:var(--card-bg)!important;color:var(--text-main)!important;}
/* Calendar: Friday/holiday/event days all follow selected theme, not fixed red/green/etc. */
.calendar-month-shell{font-family:var(--font-main),Tahoma,sans-serif!important;font-size:var(--font-size-calendar)!important;}
.calendar-grid-month{gap:8px!important;}
.calendar-weekdays span{background:var(--primary-soft)!important;color:var(--primary-dark)!important;border:1px solid var(--primary-light)!important;}
.calendar-day{background:var(--calendar-day-bg,#fffdf7)!important;background-image:none!important;border-color:var(--calendar-day-border,var(--primary-light))!important;color:var(--text-main)!important;}
.calendar-day.has-events:not(.today){background:var(--primary-soft)!important;border-color:var(--primary-light)!important;box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 10%,transparent)!important;}
.calendar-day.friday:not(.today),.calendar-day.holiday:not(.today){background:var(--calendar-holiday-bg)!important;border-color:var(--calendar-holiday-border)!important;color:var(--calendar-holiday-text)!important;}
.calendar-day.friday:not(.today) .day-number,.calendar-day.holiday:not(.today) .day-number{color:var(--calendar-holiday-text)!important;}
.calendar-day.today{background:var(--calendar-today-bg)!important;background-image:none!important;color:var(--calendar-today-text)!important;border-color:var(--primary-dark)!important;box-shadow:0 18px 34px color-mix(in srgb,var(--primary) 22%,transparent)!important;}
.calendar-day.today *{color:var(--calendar-today-text)!important;}
.calendar-event{background:var(--calendar-event-bg)!important;color:var(--calendar-event-text)!important;border:1px solid var(--primary-light)!important;}
.calendar-day.today .calendar-event{background:rgba(255,255,255,.22)!important;color:var(--calendar-today-text)!important;border-color:rgba(255,255,255,.35)!important;}
.holiday-label,.holiday-note{background:var(--calendar-holiday-bg)!important;color:var(--calendar-holiday-text)!important;border:1px solid var(--calendar-holiday-border)!important;}
.day-gregorian,.day-hijri{color:var(--text-muted)!important;opacity:.72!important;}
.calendar-day.today .day-gregorian,.calendar-day.today .day-hijri{color:var(--calendar-today-text)!important;opacity:.78!important;}
/* Logo frame follows theme and never uses a white square */
.logo-box,.logo,.auth-logo,.brand .logo{background:var(--logo-frame-bg)!important;background-image:none!important;border-color:var(--logo-frame-border)!important;}
.logo-box img,.logo img,.auth-logo img,.brand .logo img{background:transparent!important;}
@media(max-width:760px){
  body:not(.auth-locked) .topbar{min-height:118px!important;padding:14px 12px 34px!important;}
  body:not(.auth-locked) .layout{width:calc(100% - 18px)!important;margin:-22px 9px 24px!important;}
  .sidebar{overflow-x:auto!important;}
  .menu-panel,#accountMenuPanel{position:fixed!important;top:74px!important;right:10px!important;left:10px!important;width:auto!important;}
}


/* v22 final stability patch: panel bars, tools menu layer, visible themed holidays */
body{
  --calendar-holiday-bg: color-mix(in srgb, var(--primary) 30%, white);
  --calendar-holiday-border: var(--primary);
  --calendar-holiday-text: var(--primary-dark);
}
/* 1) All panel title bars must be one solid theme color, no old gradients/images. */
.card-head,
.panel-header,
.section-header,
.card-header,
.inner-head,
.calendar-header-bar,
.report-section-title,
.card > h3:first-child,
.sub-card > h3:first-child,
.form-card > h3:first-child,
.settings-card > h3:first-child,
.panel-title,
.table-title,
.list-title,
.block-title{
  background: var(--panel-header-bg) !important;
  background-image: none !important;
  background-color: var(--panel-header-bg) !important;
  color: var(--panel-header-text) !important;
  border-color: var(--card-border) !important;
  box-shadow: none !important;
}
.card-head *,
.panel-header *,
.section-header *,
.card-header *,
.inner-head *,
.calendar-header-bar *,
.report-section-title *,
.card > h3:first-child *,
.sub-card > h3:first-child *,
.form-card > h3:first-child *{
  color: var(--panel-header-text) !important;
}
.card-head::before,.card-head::after,
.panel-header::before,.panel-header::after,
.section-header::before,.section-header::after,
.card-header::before,.card-header::after,
.inner-head::before,.inner-head::after,
.calendar-header-bar::before,.calendar-header-bar::after,
.card > h3:first-child::before,.card > h3:first-child::after,
.sub-card > h3:first-child::before,.sub-card > h3:first-child::after{
  background: none !important;
  background-image: none !important;
}
/* Remove the old two-color bar effect from inner blocks. */
.card,.sub-card,.form-card,.case-card,.item,.calendar-day-details,.report-box,.table-wrap{
  background: var(--card-bg) !important;
  background-image: none !important;
  border-color: var(--card-border) !important;
}
/* 2) Tools menu: portal/fixed dropdown above every page element. */
#accountMenuPanel.tools-menu,
.tools-dropdown,
.tools-menu{
  position: fixed !important;
  top: var(--tools-top, 86px) !important;
  right: var(--tools-right, 40px) !important;
  left: auto !important;
  bottom: auto !important;
  z-index: 9999999 !important;
  min-width: var(--tools-min-width, 210px) !important;
  max-width: min(360px, calc(100vw - 24px)) !important;
  max-height: calc(100vh - 110px) !important;
  overflow: auto !important;
  background: var(--card-bg) !important;
  background-image: none !important;
  border: 1px solid var(--primary-light) !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 45px rgba(0,0,0,.25) !important;
  padding: 10px !important;
  transform: none !important;
  filter: none !important;
}
#accountMenuPanel.tools-menu.open{display:grid!important;gap:8px!important;}
#accountMenuPanel.tools-menu button,
#accountMenuPanel.tools-menu label{
  width:100%!important;
  justify-content:center!important;
  text-align:center!important;
}
.topbar,.layout,.content,.view,.hero,.card,.sub-card,.stat,.calendar-panel,.calendar-month-shell,.sidebar{
  overflow: visible !important;
}
/* No page element may cover the tools dropdown. */
.topbar,.sidebar,.layout,.content,.view,.card,.sub-card,.calendar-panel,.calendar-day,.stat{
  z-index: auto !important;
}
/* 3) Holidays and Fridays: whole day cell gets a clear theme-based color, not fixed red/pink. */
.calendar-day.is-holiday,
.calendar-day.holiday:not(.today),
.calendar-day.friday:not(.today){
  background: var(--calendar-holiday-bg) !important;
  background-image: none !important;
  border: 2px solid var(--calendar-holiday-border) !important;
  color: var(--calendar-holiday-text) !important;
  box-shadow: 0 12px 26px color-mix(in srgb, var(--primary) 14%, transparent) !important;
}
.calendar-day.is-holiday *,
.calendar-day.holiday:not(.today) *,
.calendar-day.friday:not(.today) *{
  color: var(--calendar-holiday-text) !important;
}
.calendar-day.today{
  background: var(--calendar-today-bg) !important;
  background-image: none !important;
  color: var(--calendar-today-text) !important;
  border: 2px solid var(--primary-dark) !important;
}
.calendar-day.today *{color:var(--calendar-today-text)!important;}
.holiday-label{
  background: var(--primary) !important;
  color: var(--text-on-primary, #fff) !important;
  border: 1px solid var(--primary-dark) !important;
  border-radius: 8px !important;
  padding: 3px 6px !important;
  font-weight: 900 !important;
}
.holiday-note{
  background: var(--calendar-holiday-bg) !important;
  color: var(--calendar-holiday-text) !important;
  border: 2px solid var(--calendar-holiday-border) !important;
  border-radius: 14px !important;
  padding: 8px 10px !important;
  font-weight: 900 !important;
}
.calendar-event{
  background: var(--primary-soft) !important;
  color: var(--primary-dark) !important;
  border: 1px solid var(--primary-light) !important;
}
.calendar-day.today .calendar-event{
  background: rgba(255,255,255,.22) !important;
  color: var(--calendar-today-text) !important;
  border-color: rgba(255,255,255,.35) !important;
}
@media(max-width:760px){
  #accountMenuPanel.tools-menu{right:12px!important;left:12px!important;top:var(--tools-top, 78px)!important;width:auto!important;}
}


/* v23: clean A4 landscape report print/PDF output + Persian numeric display */
body{font-variant-numeric:normal;font-feature-settings:"ss01";}
.print-only{display:none;}
@page{size:A4 landscape;margin:10mm;}
@media print{
  html,body{width:297mm;min-height:210mm;background:#fff!important;direction:rtl!important;overflow:visible!important;}
  body{margin:0!important;padding:0!important;color:#111!important;font-family:var(--font-table),var(--font-main),Tahoma,Arial,sans-serif!important;font-size:11px!important;}
  body *{visibility:hidden!important;box-shadow:none!important;text-shadow:none!important;filter:none!important;transform:none!important;}
  #printArea,#printArea *{visibility:visible!important;}
  #printArea{display:block!important;position:absolute!important;inset:0!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important;direction:rtl!important;color:#111!important;overflow:visible!important;}
  .no-print,.topbar,.main-nav,.sidebar,.tools-menu,.tools-dropdown,#accountMenuPanel,.report-controls,.report-filters,.report-actions,.report-columns,.report-rows-help,.report-row-selector,button,dialog,#toast,#authOverlay{display:none!important;visibility:hidden!important;}
  .report-page{display:block!important;width:100%!important;min-height:auto!important;margin:0 auto!important;padding:0!important;background:#fff!important;color:#111!important;box-shadow:none!important;border:0!important;border-radius:0!important;overflow:visible!important;page-break-after:auto!important;}
  .print-report-header{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:10mm!important;border-bottom:2px solid #222!important;padding:0 0 5mm!important;margin:0 0 5mm!important;direction:rtl!important;}
  .print-report-title{flex:1 1 auto!important;text-align:right!important;}
  .print-report-title h1{font-size:15px!important;line-height:1.5!important;margin:0 0 2mm!important;color:#111!important;font-weight:900!important;}
  .print-report-title h2{font-size:13px!important;line-height:1.5!important;margin:0 0 2mm!important;color:#222!important;font-weight:900!important;}
  .print-report-title p{font-size:10px!important;margin:0!important;color:#333!important;}
  .report-print-logo{display:flex!important;align-items:center!important;justify-content:center!important;width:18mm!important;height:18mm!important;min-width:18mm!important;background:transparent!important;border:1px solid #777!important;border-radius:4mm!important;padding:1mm!important;}
  .report-print-logo img{display:block!important;width:16mm!important;height:16mm!important;object-fit:contain!important;background:transparent!important;}
  .report-section{display:block!important;width:100%!important;page-break-inside:avoid!important;break-inside:avoid!important;overflow:visible!important;}
  table,.print-report-table{width:100%!important;max-width:100%!important;border-collapse:collapse!important;table-layout:fixed!important;font-size:10px!important;direction:rtl!important;background:#fff!important;margin:0!important;}
  thead{display:table-header-group!important;}
  tfoot{display:table-footer-group!important;}
  tr{page-break-inside:avoid!important;break-inside:avoid!important;}
  th,td,.print-report-table th,.print-report-table td{border:1px solid #333!important;padding:3.2px 4px!important;text-align:center!important;vertical-align:middle!important;word-break:break-word!important;overflow-wrap:anywhere!important;white-space:normal!important;color:#111!important;background:#fff!important;line-height:1.45!important;}
  th,.print-report-table th{background:#eee!important;color:#111!important;font-weight:900!important;}
  .print-row-no{width:10mm!important;min-width:10mm!important;max-width:10mm!important;}
}


/* v24: professional unified form/input layout — keeps logic and IDs unchanged */
:root{
  --form-section-bg: color-mix(in srgb, var(--primary) 7%, #f3f5f7);
  --input-bg: color-mix(in srgb, #ffffff 88%, var(--primary-soft));
  --input-border: color-mix(in srgb, var(--primary) 24%, #d0d5dd);
  --input-focus-border: var(--primary);
  --input-text: var(--text-main, #1d2939);
  --input-placeholder: color-mix(in srgb, var(--text-muted,#667085) 70%, #fff);
  --label-text: color-mix(in srgb, var(--text-main,#1d2939) 84%, var(--primary-dark));
}
.view form.card,
.form-section,
.card:has(input),
.card:has(select),
.card:has(textarea),
.sub-card:has(input),
.sub-card:has(select),
.sub-card:has(textarea){
  background: var(--form-section-bg) !important;
  border: 1px solid color-mix(in srgb, var(--primary) 23%, #d7dce2) !important;
  border-radius: 18px !important;
  padding: 18px !important;
  box-shadow: 0 12px 28px color-mix(in srgb, var(--primary) 8%, transparent) !important;
}
.form-card .card-head,
.form-section .card-head,
.card:has(input) > .card-head,
.card:has(select) > .card-head,
.card:has(textarea) > .card-head{
  margin: -18px -18px 18px !important;
  padding: 13px 17px !important;
  border-radius: 17px 17px 0 0 !important;
  background: var(--panel-header-bg) !important;
  color: var(--panel-header-text) !important;
  border: 0 !important;
}
.form-card .card-head h3,
.form-section .card-head h3,
.card:has(input) > .card-head h3,
.card:has(select) > .card-head h3,
.card:has(textarea) > .card-head h3{
  color: var(--panel-header-text) !important;
  margin: 0 !important;
}
.grid,
.toolbar.report-actions,
.report-filters.grid,
.theme-color-grid,
.font-simple-grid{
  align-items: end !important;
}
.grid.three{grid-template-columns:repeat(3,minmax(190px,1fr)) !important;}
.grid.four{grid-template-columns:repeat(4,minmax(165px,1fr)) !important;}
label{
  color: var(--label-text) !important;
  font-size: var(--font-size-form-label, 14px) !important;
  font-weight: 850 !important;
  line-height: 1.45 !important;
  min-width: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
label .muted.mini{display:none !important;}
label .rial-label{
  display:inline-flex !important;
  margin-inline-start:4px !important;
  padding:1px 6px !important;
  border-radius: 7px !important;
  background: color-mix(in srgb, var(--primary) 10%, #fff) !important;
  color: var(--primary-dark) !important;
  font-size: 11px !important;
  vertical-align: middle !important;
}
.input,
input,
select,
textarea,
.form-control{
  display:block !important;
  width:100% !important;
  min-height:44px !important;
  height:44px !important;
  margin-top:6px !important;
  padding:9px 12px !important;
  background:var(--input-bg) !important;
  border:1px solid var(--input-border) !important;
  border-radius:10px !important;
  color:var(--input-text) !important;
  font-family:var(--font-form, var(--font-main)), Tahoma, Arial, sans-serif !important;
  font-size:var(--font-size-input, 14px) !important;
  box-shadow:none !important;
  outline:none !important;
  transition:border-color .15s ease, box-shadow .15s ease, background .15s ease !important;
}
textarea,
textarea.input{
  height:auto !important;
  min-height:90px !important;
  resize:vertical !important;
  line-height:1.8 !important;
  white-space:normal !important;
}
input::placeholder,
textarea::placeholder{
  color:var(--input-placeholder) !important;
  opacity:1 !important;
}
select.input{
  appearance:auto !important;
}
.input:focus,
input:focus,
select:focus,
textarea:focus,
.form-control:focus{
  border-color:var(--input-focus-border) !important;
  background:#fff !important;
  box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 18%, transparent) !important;
}
.session-time-field{
  border:1px solid var(--input-border) !important;
  border-radius:12px !important;
  padding:9px 10px !important;
  background:color-mix(in srgb, var(--input-bg) 68%, var(--form-section-bg)) !important;
}
.session-time-field input{margin-top:6px !important;}
.form-actions{
  display:flex !important;
  justify-content:flex-end !important;
  margin-top:16px !important;
}
.form-actions .primary,
form.card > button.primary,
form.card > .primary{
  min-width:160px !important;
  min-height:44px !important;
  border-radius:10px !important;
}
.ai-box{
  background: color-mix(in srgb, var(--primary-soft) 44%, #fff) !important;
  border: 1px dashed color-mix(in srgb, var(--primary) 22%, #d0d5dd) !important;
  border-radius:14px !important;
}
@media(max-width:1100px){
  .grid.three,.grid.four{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:760px){
  .grid.three,.grid.four,.grid.two{grid-template-columns:1fr !important;}
  .view form.card,.form-section,.card:has(input),.card:has(select),.card:has(textarea),.sub-card:has(input),.sub-card:has(select),.sub-card:has(textarea){padding:14px !important;border-radius:16px !important;}
  .form-card .card-head,.form-section .card-head,.card:has(input) > .card-head,.card:has(select) > .card-head,.card:has(textarea) > .card-head{margin:-14px -14px 14px!important;padding:12px 14px!important;border-radius:15px 15px 0 0!important;}
  label{font-size:13px!important;}
  .input,input,select,textarea,.form-control{height:42px!important;min-height:42px!important;border-radius:9px!important;}
}


/* AppearanceSettingsManager final CSS: one clean layer for colors, fonts and sizes */
:root{
  --app-bg:#F0E7D7; --form-section-bg:#EEE4D2; --panel-bg:#F7F0E5; --card-bg:#FFFAF0; --card-border:#D8C7A1;
  --input-bg:#FFFDF7; --input-border:#C9B893; --input-focus-border:var(--primary);
  --font-main:Vazirmatn; --font-title:Estedad; --font-panel-title:Estedad; --font-menu:Vazirmatn;
  --font-size-page-title:42px; --font-size-section-title:22px; --font-size-body:15px; --font-size-menu:14px;
}
body,.app,.main,.content,.page,.workspace{background:var(--app-bg)!important;font-family:var(--font-main),Tahoma,Arial,sans-serif!important;font-size:var(--font-size-body)!important;}
.brand h1,.app-title,.hero h2,h1.page-title{font-family:var(--font-title),var(--font-main),Tahoma,sans-serif!important;font-size:var(--font-size-page-title)!important;}
.panel-header,.section-header,.card-header,.card-head:not(.inner-head),.sub-card>.card-head,.calendar-header,.report-header-bar{background:var(--panel-header-bg)!important;background-image:none!important;color:var(--panel-header-text)!important;}
.panel-header h1,.panel-header h2,.panel-header h3,.section-header h1,.section-header h2,.section-header h3,.card-head h3,.sub-card>.card-head h3,.calendar-header h3{font-family:var(--font-panel-title),var(--font-title),var(--font-main),Tahoma,sans-serif!important;font-size:var(--font-size-section-title)!important;color:inherit!important;}
.nav,.nav button,.main-nav,.main-nav *,.top-menu,.top-menu *{font-family:var(--font-menu),var(--font-main),Tahoma,sans-serif!important;font-size:var(--font-size-menu)!important;}
.form-section,.sub-card,form,.settings-block,.case-form,.section-body{background:var(--form-section-bg)!important;}
.panel,.panel-body{background:var(--panel-bg)!important;}
.card,.stat,.stat-card,.case-card,.item,.list .item,.calendar-day,.date-card,.report-page,.modal,.box{background:var(--card-bg)!important;border-color:var(--card-border)!important;}
input,select,textarea,.input,.form-control{background:var(--input-bg)!important;border-color:var(--input-border)!important;color:var(--input-text,#1d2430)!important;font-family:var(--font-main),Tahoma,Arial,sans-serif!important;}
input:focus,select:focus,textarea:focus,.input:focus{border-color:var(--input-focus-border)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)!important;}
.primary,.btn-primary,button.primary{background:var(--primary-btn-bg)!important;background-image:none!important;color:var(--button-text,var(--text-on-primary,#fff))!important;}
.primary:hover,.btn-primary:hover,button.primary:hover{background:var(--primary-btn-hover,var(--primary-btn-bg))!important;}
.nav.active,.nav[aria-current="page"],.main-nav .active{background:var(--nav-active-bg)!important;color:var(--nav-active-text)!important;}
.appearance-color-grid,.appearance-font-grid,.appearance-size-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;align-items:end!important;}
.appearance-color-grid label,.appearance-font-grid label,.appearance-size-grid label{margin:0!important;padding:9px 10px!important;border:1px solid var(--input-border)!important;border-radius:12px!important;background:var(--card-bg)!important;display:grid!important;gap:6px!important;min-width:0!important;line-height:1.45!important;font-size:13px!important;}
.appearance-font-grid select,.appearance-size-grid input{height:40px!important;min-height:40px!important;padding:6px 10px!important;border-radius:9px!important;}
.appearance-color-grid input[type="color"]{height:40px!important;min-height:40px!important;padding:3px!important;border-radius:9px!important;background:var(--input-bg)!important;border:1px solid var(--input-border)!important;}
.appearance-color-grid input[type="color"]::-webkit-color-swatch-wrapper{padding:0!important;}
.appearance-color-grid input[type="color"]::-webkit-color-swatch{border:0!important;border-radius:7px!important;}
.font-size-control{display:flex!important;align-items:center!important;gap:6px!important;}
.font-size-control input{direction:ltr!important;text-align:center!important;}
.font-size-control span{font-size:12px!important;color:var(--text-muted)!important;}
.font-customize-box .card-head,.theme-customize-box .card-head{min-height:42px!important;padding:10px 14px!important;border-radius:14px!important;}
@media(max-width:1100px){.appearance-color-grid,.appearance-font-grid,.appearance-size-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:620px){.appearance-color-grid,.appearance-font-grid,.appearance-size-grid{grid-template-columns:1fr!important;}}

/* v34 AppearanceSettingsManager layout: compact font boxes, clean sections, real variable usage */
body{font-family:var(--font-main),Tahoma,sans-serif!important;font-size:var(--font-size-body)!important;}
.brand h1,.app-title,.hero h2,.brand-title{font-family:var(--font-title),var(--font-main),Tahoma,sans-serif!important;font-size:var(--font-size-page-title)!important;}
.panel-header,.panel-header h3,.card-head,.card-head h3,.section-header,.section-header h3{font-family:var(--font-panel-title),var(--font-title),var(--font-main),Tahoma,sans-serif!important;font-size:var(--font-size-section-title)!important;}
.main-nav,.main-nav *,.nav,.nav *,.nav-item,.nav button,.top-nav,.top-nav *{font-family:var(--font-menu),var(--font-main),Tahoma,sans-serif!important;font-size:var(--font-size-menu)!important;}
.panel-header,.section-header,.card-header{background:var(--panel-header-bg)!important;color:var(--panel-header-text)!important;background-image:none!important;}
.btn-primary,.primary,.button-primary,button.primary{background:var(--primary-btn-bg)!important;color:var(--button-text,var(--text-on-primary))!important;}
.btn-primary:hover,.primary:hover,.button-primary:hover,button.primary:hover{background:var(--primary-btn-hover)!important;}
.main-nav .active,.nav .active,.nav-item.active,.main-nav button.active{background:var(--nav-active-bg)!important;color:var(--nav-active-text)!important;}
input:focus,select:focus,textarea:focus{border-color:var(--input-focus-border)!important;}

.theme-customize-box,.font-customize-box,.appearance-section,.settings-block{overflow:visible!important;}
.theme-customize-box .card-head,.font-customize-box .card-head,.inner-head{position:static!important;margin:0 0 10px 0!important;min-height:auto!important;padding:8px 12px!important;line-height:1.4!important;}
.appearance-color-grid{display:grid!important;grid-template-columns:repeat(4,minmax(150px,1fr))!important;gap:8px!important;margin:12px 0 18px!important;align-items:end!important;}
.appearance-font-grid,.appearance-size-grid{display:grid!important;grid-template-columns:repeat(4,minmax(150px,1fr))!important;gap:8px!important;margin:12px 0 18px!important;align-items:end!important;}
.appearance-color-grid label,.appearance-font-grid label,.appearance-size-grid label{padding:6px 8px!important;border-radius:10px!important;min-height:auto!important;font-size:12px!important;line-height:1.35!important;background:var(--card-bg)!important;border:1px solid var(--input-border)!important;display:grid!important;gap:5px!important;min-width:0!important;box-shadow:none!important;}
.appearance-color-grid input[type="color"]{height:34px!important;min-height:34px!important;padding:3px 6px!important;border-radius:8px!important;width:100%!important;}
.appearance-font-grid select,.appearance-size-grid input{height:34px!important;min-height:34px!important;padding:4px 8px!important;font-size:13px!important;border-radius:8px!important;width:100%!important;}
.font-size-control{display:flex!important;align-items:center!important;gap:6px!important;}
.font-size-control input{flex:1!important;}
.font-size-control span{font-size:12px!important;color:var(--text-muted)!important;}
#resetThemeFonts,#resetThemeColors,#resetThemeColorsV31{position:static!important;margin:8px 0!important;display:inline-flex!important;align-items:center!important;min-height:34px!important;padding:6px 12px!important;border-radius:10px!important;}
@media(max-width:1100px){.appearance-color-grid,.appearance-font-grid,.appearance-size-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:620px){.appearance-color-grid,.appearance-font-grid,.appearance-size-grid{grid-template-columns:1fr!important;}}

/* v35: real separate mobile layout - desktop stays unchanged */
.mobile-tabbar,.mobile-more-sheet,.mobile-more-backdrop{display:none}
@media (min-width:769px){
  .mobile-tabbar,.mobile-more-sheet,.mobile-more-backdrop{display:none!important}
}
@media (max-width:768px){
  *{box-sizing:border-box}
  html,body{width:100%;max-width:100%;overflow-x:hidden!important}
  body{padding-bottom:calc(92px + env(safe-area-inset-bottom,0px));background:var(--app-bg,#f0e7d7)}
  .auth-card{width:min(94vw,420px);padding:18px;border-radius:20px}
  .auth-logo.logo-box{width:58px;height:58px;margin-inline:auto}
  .topbar{position:sticky;top:0;z-index:30;display:flex;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:8px;padding:8px 10px;background:var(--top-header-bg,var(--primary-dark,#123c69))!important;color:var(--top-header-text,#fff)!important;border-bottom:1px solid rgba(0,0,0,.12);border-radius:0;min-height:58px}
  .brand{min-width:0;display:flex;align-items:center;gap:8px;flex:1}
  .brand .logo,.logo-box.logo{width:38px!important;height:38px!important;border-radius:12px!important;box-shadow:none!important;flex:0 0 auto;background:var(--logo-frame-bg,var(--primary-dark,#123c69))!important;border:1px solid var(--logo-frame-border,rgba(255,255,255,.35))!important}
  .brand .logo img{max-width:92%;max-height:92%;object-fit:contain}
  .brand h1{font-size:15px!important;line-height:1.25!important;color:var(--top-header-text,#fff)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:48vw}
  .brand p{display:none!important}
  #topClock,.top-clock{display:none!important}
  .top-actions{flex:0 0 auto;width:auto!important;gap:6px;justify-content:flex-end}
  .account-menu .menu-toggle{font-size:0!important;width:38px;height:38px;padding:0!important;border-radius:12px;background:rgba(255,255,255,.14)!important;color:var(--top-header-text,#fff)!important;border:1px solid rgba(255,255,255,.22)!important}
  .account-menu .menu-toggle::before{content:'☰';font-size:20px;line-height:1}
  .account-menu .menu-panel{position:fixed!important;top:58px!important;left:10px!important;right:auto!important;max-width:calc(100vw - 20px);width:220px;z-index:80;border-radius:16px;background:var(--card-bg,#fffaf1)!important}
  .layout{display:block!important;padding:10px 10px 92px!important;margin:0!important;max-width:100%;width:100%;overflow-x:hidden!important}
  .sidebar{display:none!important}
  .content{width:100%!important;max-width:100%!important;min-width:0!important;border-radius:0!important;background:transparent!important;overflow-x:hidden!important;padding:0!important}
  .view{width:100%;max-width:100%;overflow-x:hidden}
  .hero{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px;margin:8px 0 12px!important;padding:14px!important;border-radius:18px!important;background:var(--card-bg,#fffaf1)!important}
  .hero h2{font-size:20px!important;line-height:1.35!important}
  .hero p{font-size:12px!important}
  .hero .primary{width:100%;min-height:42px}
  .card,.sub-card,.form-section,.settings-block{padding:13px!important;margin:10px 0!important;border-radius:18px!important;max-width:100%;overflow:hidden;background:var(--card-bg,#fffaf1)}
  .sub-card{background:var(--form-section-bg,#eee4d2)!important}
  .card-head{gap:8px;align-items:center!important;margin-bottom:10px!important;flex-wrap:wrap}
  .card-head h3{font-size:var(--font-size-section-title,17px)!important;line-height:1.35!important}
  .badge{font-size:10.5px;padding:3px 7px}
  .grid,.grid.two,.grid.three,.grid.four,.grid.five,.report-summary{grid-template-columns:1fr!important;gap:10px!important}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:8px 0 12px!important}
  .stat{padding:11px!important;border-radius:16px!important;min-height:78px;background:var(--card-bg,#fffaf1)!important}
  .stat span{font-size:11px;line-height:1.4}
  .stat strong{font-size:21px!important;line-height:1.2}
  .grid.two{display:grid!important}
  .case-list{grid-template-columns:1fr!important;gap:10px!important}
  .case-card,.item{border-radius:16px!important;padding:12px!important}
  label{font-size:12px!important;line-height:1.45!important;font-weight:800!important}
  .input,input,select,textarea{width:100%!important;max-width:100%!important;min-height:42px!important;border-radius:12px!important;padding:8px 10px!important;font-size:15px!important;touch-action:manipulation;background:var(--input-bg,#fffdf7)!important;border-color:var(--input-border,#c9b893)!important}
  textarea{min-height:88px!important}
  button,.primary,.secondary,.ghost,.danger{min-height:42px;border-radius:12px!important;padding:8px 12px!important;font-size:14px!important;touch-action:manipulation}
  .toolbar,.form-actions,.report-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;align-items:stretch!important}
  .toolbar>* ,.form-actions>* ,.report-actions>*{width:100%!important}
  .table-wrap,.report-box{overflow-x:auto!important;max-width:100%;-webkit-overflow-scrolling:touch}
  .report-table{min-width:640px;font-size:12px}
  .report-table th,.report-table td{padding:8px;white-space:nowrap}
  #calendar .card{max-width:100%!important;margin:0!important;padding:10px!important}
  .calendar-header-bar,.full-calendar-head{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important;padding:10px!important;border-radius:16px!important}
  .calendar-actions{display:grid!important;grid-template-columns:1fr 1fr 1fr;gap:6px;width:100%}
  .calendar-actions button,.full-calendar-head button{min-height:38px!important;font-size:12px!important;padding:6px!important}
  .calendar-month-shell{width:100%;max-width:100%;overflow:hidden}
  .calendar-weekdays,.full-weekdays{grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:3px!important}
  .calendar-weekdays span,.full-weekdays span{font-size:10px!important;padding:5px 1px!important;border-radius:8px!important;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:clip}
  .calendar-grid-month,.full-days{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:3px!important;width:100%}
  .calendar-day,.day{min-width:0!important;min-height:52px!important;padding:5px 2px!important;border-radius:10px!important;font-size:11px!important;text-align:center!important;overflow:hidden;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:2px!important}
  .calendar-day .day-number,.day b{font-size:15px!important;line-height:1.1!important}
  .calendar-day .day-gregorian,.calendar-day .day-hijri{font-size:8.5px!important;line-height:1.05!important;max-width:100%;overflow:hidden;white-space:nowrap}
  .calendar-day .day-events,.day small{display:none!important}
  .calendar-day.has-events::after,.day:not(.empty):has(small:not(:empty))::after{content:'•';font-size:18px;line-height:8px;color:var(--primary,#c7691e)}
  .calendar-day-details,.selected-date{margin-top:10px!important;padding:12px!important;border-radius:16px!important;background:var(--card-bg,#fffaf1)!important;border:1px solid var(--card-border,var(--border))!important}
  .calendar-day-details .card-head{display:grid!important;grid-template-columns:1fr!important}
  .theme-customize-box,.font-customize-box{overflow:visible!important}
  .theme-customize-box>.card-head,.font-customize-box>.card-head{position:static!important;margin:0 0 8px!important;padding:8px 10px!important;border-radius:14px!important;background:var(--panel-header-bg,var(--primary-dark,#123c69))!important;color:var(--panel-header-text,#fff)!important;cursor:pointer}
  .theme-customize-box>.card-head h3,.font-customize-box>.card-head h3{font-size:15px!important;color:inherit!important}
  .mobile-layout .theme-customize-box.mobile-collapsed>*:not(.card-head),.mobile-layout .font-customize-box.mobile-collapsed>*:not(.card-head){display:none!important}
  .theme-select-row{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .appearance-color-grid{grid-template-columns:1fr 1fr!important;gap:8px!important;margin:10px 0!important}
  .appearance-color-grid label{padding:7px!important;border-radius:12px!important;min-height:auto!important;background:var(--card-bg,#fffaf1)!important}
  .appearance-color-grid input[type=color]{height:36px!important;min-height:36px!important;padding:2px!important;border-radius:10px!important}
  .appearance-font-grid,.appearance-size-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin:10px 0 14px!important;align-items:end!important}
  .appearance-font-grid label,.appearance-size-grid label{padding:6px 7px!important;border-radius:10px!important;min-height:auto!important;font-size:12px!important;background:var(--card-bg,#fffaf1)!important;border:1px solid var(--card-border,var(--border))!important}
  .appearance-font-grid select,.appearance-size-grid input{height:36px!important;min-height:36px!important;padding:5px 7px!important;font-size:13px!important;border-radius:8px!important}
  .font-size-control{display:grid!important;grid-template-columns:1fr auto!important;gap:4px!important;align-items:center!important}
  .font-size-control span{font-size:11px;color:var(--muted)}
  .inner-head{margin-top:12px!important;margin-bottom:8px!important;position:static!important;display:grid!important;grid-template-columns:1fr!important;gap:8px!important;background:transparent!important;color:var(--ink)!important;padding:0!important}
  .inner-head .ghost{width:100%!important;min-height:36px!important;font-size:12px!important}

  /* v36 mobile dashboard cards: remove decorative circles/icons that cover text */
  #dashboard .stats,.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
  #dashboard .stat,.stat-card{min-height:120px!important;padding:16px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:flex-end!important;text-align:right!important;overflow:hidden!important;}
  #dashboard .stat::before,#dashboard .stat::after,.stat-card::before,.stat-card::after,.stat-card .stat-icon,.stat-card .icon-circle,.stat-card .decor-circle,.stat .stat-icon,.stat .icon-circle,.stat .decor-circle,.stat .icon{display:none!important;content:none!important;}
  #dashboard .stat span,.stat-card-title{font-size:15px!important;line-height:1.7!important;position:relative!important;z-index:2!important;text-align:right!important;width:100%!important;}
  #dashboard .stat strong,.stat-card-number{font-size:24px!important;line-height:1.8!important;position:relative!important;z-index:2!important;text-align:right!important;width:100%!important;margin-top:4px!important;}
  .app-main,main,.content,.view{padding-bottom:88px!important;}

  dialog{width:min(94vw,760px)!important;max-height:88vh!important;overflow:auto!important;padding:14px!important;border-radius:18px!important}
  .jalali-picker-dialog{width:min(94vw,430px)!important}
  .picker-days{gap:4px!important}.picker-days button{min-height:36px!important;padding:6px 0!important}
  .mobile-tabbar{position:fixed;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));left:0;right:0;bottom:0;z-index:99999;height:calc(72px + env(safe-area-inset-bottom,0px));max-width:100vw;overflow:hidden;padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));background:color-mix(in srgb,var(--nav-bg,#fffaf1) 92%,white 8%);border-top:1px solid var(--card-border,rgba(0,0,0,.12));box-shadow:0 -10px 30px rgba(0,0,0,.14);gap:4px;backdrop-filter:blur(14px)}
  .mobile-tabbar .mobile-tab,.mobile-tabbar .mobile-more{width:100%!important;min-width:0!important;margin:0!important;padding:5px 2px!important;min-height:50px!important;border:0!important;border-radius:14px!important;background:transparent!important;color:var(--link-color,var(--primary-dark,#123c69))!important;text-align:center!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;font-family:var(--font-menu),var(--font-main),Tahoma,sans-serif!important;font-size:11px!important;font-weight:850!important;line-height:1.1!important;box-shadow:none!important}
  .mobile-tabbar .mobile-tab span,.mobile-tabbar .mobile-more span{font-size:18px!important;line-height:1!important}
  .mobile-tabbar .mobile-tab b,.mobile-tabbar .mobile-more b{font-size:10.5px!important;font-weight:850!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .mobile-tabbar .mobile-tab.active{background:var(--nav-active-bg,var(--primary,#c7691e))!important;color:var(--nav-active-text,#fff)!important}
  .mobile-more-backdrop{display:block;position:fixed!important;inset:0!important;z-index:999998!important;background:rgba(0,0,0,.35)!important;backdrop-filter:blur(2px)!important}
  .mobile-more-backdrop[hidden]{display:none!important}
  .mobile-more-sheet{display:block;position:fixed!important;right:0!important;left:0!important;bottom:calc(72px + env(safe-area-inset-bottom,0px))!important;max-height:65vh!important;overflow-y:auto!important;z-index:999999!important;padding:14px!important;border-radius:22px 22px 0 0!important;background:var(--card-bg,#fffaf1)!important;border:1px solid var(--card-border,var(--border))!important;box-shadow:0 -18px 45px rgba(0,0,0,.25)!important;transform:none!important}
  .mobile-more-sheet[hidden]{display:none!important}
  .mobile-layout .topbar,.mobile-layout .sidebar,.mobile-layout .content,.mobile-layout .panel,.mobile-layout .card,.mobile-layout #dashboard,.mobile-layout .stats,.mobile-layout .stat{z-index:auto!important;}
  .mobile-sheet-open{overflow:hidden!important;}

  .mobile-sheet-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}
  .mobile-sheet-head strong{font-size:15px;color:var(--primary-dark,#123c69)}
  .mobile-sheet-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .mobile-sheet-grid .nav,.mobile-sheet-grid .mobile-more-item{width:100%!important;margin:0!important;padding:10px!important;min-height:42px!important;border-radius:13px!important;background:var(--form-section-bg,#eee4d2)!important;color:var(--ink,#1f2933)!important;text-align:center!important;font-size:13px!important;position:relative!important;z-index:1000000!important}
  .mobile-sheet-grid .nav.active,.mobile-sheet-grid .mobile-more-item.active{background:var(--nav-active-bg,var(--primary,#c7691e))!important;color:var(--nav-active-text,#fff)!important}
  .mobile-sheet-tools{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:10px}
  .mobile-sheet-tools button{font-size:12px!important;padding:7px!important;min-height:38px!important}
}
@media (max-width:420px){
  .stats{grid-template-columns:1fr 1fr!important}
  .appearance-color-grid,.appearance-font-grid,.appearance-size-grid{grid-template-columns:1fr!important}
  .mobile-tabbar{grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding-inline:3px}
  .mobile-tabbar .mobile-tab,.mobile-tabbar .mobile-more{min-height:48px!important;border-radius:12px!important}
  .mobile-tabbar .mobile-tab b,.mobile-tabbar .mobile-more b{font-size:9.5px!important}
  .brand h1{max-width:54vw;font-size:14px!important}
}

@media (max-width:480px){
  #dashboard .stats,.stats-grid{grid-template-columns:1fr 1fr!important;gap:10px!important;}
}
@media (max-width:360px){
  #dashboard .stats,.stats-grid{grid-template-columns:1fr!important;}
  .mobile-tabbar .mobile-tab b,.mobile-tabbar .mobile-more b{font-size:9px!important;}
}

/* v37 dashboard-first-page stat cards cleanup + top menu icon size only */
#dashboard #stats .stat::before,
#dashboard #stats .stat::after{
  content:none!important;
  display:none!important;
  background:none!important;
  box-shadow:none!important;
}

#dashboard #stats .stat,
#dashboard #stats .stat:nth-child(1),
#dashboard #stats .stat:nth-child(2),
#dashboard #stats .stat:nth-child(3),
#dashboard #stats .stat:nth-child(4),
#dashboard .stats .stat:nth-child(1),
#dashboard .stats .stat:nth-child(2),
#dashboard .stats .stat:nth-child(3),
#dashboard .stats .stat:nth-child(4){
  min-height:126px!important;
  padding:20px 22px!important;
  background:var(--card-bg)!important;
  background-image:none!important;
  border:1px solid var(--card-border)!important;
  border-radius:22px!important;
  box-shadow:var(--shadow-soft,0 14px 38px rgba(0,0,0,.08))!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-end!important;
  text-align:right!important;
}

#dashboard #stats .stat span{
  color:var(--text-main)!important;
  font-weight:900!important;
  margin-bottom:10px!important;
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  text-align:right!important;
}

#dashboard #stats .stat strong{
  color:var(--primary-dark)!important;
  font-weight:950!important;
  font-size:var(--font-size-card-number,30px)!important;
  line-height:1.35!important;
  margin:0!important;
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  text-align:right!important;
}

.sidebar .nav::before{
  font-size:30px!important;
  line-height:1!important;
  margin-bottom:4px!important;
}

.sidebar .nav{
  gap:8px!important;
  padding:13px 15px!important;
}

@media(max-width:768px){
  #dashboard #stats .stat,
  #dashboard #stats .stat:nth-child(1),
  #dashboard #stats .stat:nth-child(2),
  #dashboard #stats .stat:nth-child(3),
  #dashboard #stats .stat:nth-child(4){
    min-height:120px!important;
    padding:16px!important;
    border-radius:18px!important;
  }
  #dashboard #stats .stat span{font-size:15px!important;line-height:1.7!important;margin-bottom:6px!important;}
  #dashboard #stats .stat strong{font-size:24px!important;line-height:1.6!important;}
}


/* ===== v39: actions, printing, wrapping, multi-expense, court-workday UI ===== */
.task-controls-v39{margin:8px 0 14px}.task-controls-v39 .toolbar{gap:8px;flex-wrap:wrap}.task-section-v39{margin-top:12px}.task-section-v39 .inner-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0 8px;padding:8px 10px;border-radius:14px;background:var(--primary-soft);border:1px solid var(--card-border)}.task-section-v39 h4{margin:0;font-size:15px}.task-source-badge{margin-inline:5px}.case-details-table td,.case-last-action-cell,.case-notes-cell{white-space:pre-wrap!important;overflow-wrap:anywhere!important;word-break:normal!important;line-height:1.9!important;max-width:100%!important}.expense-inline-toolbar{margin-top:10px;align-items:center}.pending-expense-list{margin-top:10px}.pending-expense-row{display:grid;grid-template-columns:1fr auto auto auto;gap:8px;align-items:center;padding:8px 10px;margin:6px 0;border:1px solid var(--card-border);border-radius:12px;background:var(--card-bg)}.pending-expense-row b{white-space:nowrap}.pending-expense-existing,.pending-expense-new{margin-top:8px}.print-only{display:none}
@media print{body>*:not(#printArea){display:none!important}#printArea{display:block!important;direction:rtl;font-family:var(--font-main),Tahoma,sans-serif;color:#111;padding:20px}.print-report-header{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #222;margin-bottom:16px;padding-bottom:10px}.print-report-title{font-size:18px;font-weight:900}.report-print-logo img{max-height:52px}.print-report-table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.8}.print-report-table th,.print-report-table td{border:1px solid #777;padding:6px 8px;vertical-align:top;white-space:pre-wrap;overflow-wrap:anywhere}.print-report-table th{background:#eee;font-weight:900}h3{margin:16px 0 8px}}
@media (max-width:768px){.pending-expense-row{grid-template-columns:1fr;align-items:stretch}.task-controls-v39 .toolbar button{flex:1 1 45%}}

/* ===== v40: staged next actions and task layout stability ===== */
.grid.two,
#tasks .grid.two,
.view .grid.two {
  align-items: start !important;
  align-content: start !important;
}
#taskList,
#doneTaskList,
.compact-list,
.task-section-v39 {
  display: block !important;
  align-content: start !important;
  margin-top: 0 !important;
}
#tasks .card,
#tasks form,
#tasks .compact-card {
  align-self: start !important;
}
.task-section-v39 {
  break-inside: avoid;
  page-break-inside: avoid;
}
.task-case-block {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  margin: 9px 0 7px;
  flex-wrap: wrap;
}
.task-case-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  line-height: 1.8;
}
.task-case-meta span {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--card-border);
  background: var(--primary-soft);
  color: var(--text-main);
  border-radius: 999px;
  padding: 3px 9px;
  font-size: 12px;
  font-weight: 800;
}
.task-case-open {
  white-space: nowrap;
  padding: 7px 12px !important;
}
@media (max-width:768px){
  .task-case-block{display:block}
  .task-case-open{width:100%;margin-top:8px}
}
.task-stage-badges{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:8px 0 6px;
  align-items:center;
}
.task-stage-badges .badge{
  line-height:1.7;
}
.pending-expense-row .danger{
  justify-self:end;
}

/* v43: actions page now shows only automatic tasks generated from cases */
#tasks #taskForm{display:none!important;}
#tasks .grid.two{grid-template-columns:1fr!important;align-items:start!important;}
.task-controls-v39 .auto-task-filter-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px;}
.task-controls-v39 #autoTaskDatePicker{max-width:180px;min-width:150px;}
.task-section-v39 .inner-head{align-items:center;}
@media (max-width:768px){.task-controls-v39 .auto-task-filter-bar{display:grid;grid-template-columns:1fr 1fr;gap:8px}.task-controls-v39 #autoTaskDatePicker{max-width:none;min-width:0;width:100%;}.task-controls-v39 .auto-task-filter-bar button:last-child{grid-column:1/-1;}}

/* v44 auto online sync status */
.sync-status-badge{
  position:fixed;
  left:16px;
  bottom:18px;
  z-index:1000000;
  max-width:min(320px, calc(100vw - 32px));
  padding:9px 14px;
  border-radius:999px;
  background:var(--card-bg,#fff);
  border:1px solid var(--card-border,#d8d1c4);
  box-shadow:0 10px 30px rgba(0,0,0,.18);
  color:var(--text-main,#222);
  font-size:13px;
  font-weight:800;
  direction:rtl;
  pointer-events:none;
}
.sync-status-badge[data-state="ok"]{background:#e9f8ef;border-color:#8fd0a5;color:#116530;}
.sync-status-badge[data-state="syncing"],
.sync-status-badge[data-state="pending"]{background:#fff7df;border-color:#e6c96e;color:#6b4b00;}
.sync-status-badge[data-state="offline"],
.sync-status-badge[data-state="local"],
.sync-status-badge[data-state="error"]{background:#fff0ee;border-color:#e0a199;color:#8a1f14;}
@media(max-width:768px){.sync-status-badge{left:10px;right:10px;bottom:82px;text-align:center;}}
/* v47 final client/no-placeholder/dashboard/action layout fixes */
input::placeholder,
textarea::placeholder {
  color: transparent !important;
  opacity: 0 !important;
}
#dashboard #stats .stat strong,
#dashboard #stats .stat span.value,
#dashboard #stats .stat .value,
#dashboard #stats .stat .stat-value,
#dashboard #stats .stat .stat-number,
#dashboard #stats .stat .num,
#dashboard .stats .stat strong,
#dashboard .stats .stat span.value,
#dashboard .stats .stat .value,
#dashboard .stats .stat .stat-value,
#dashboard .stats .stat .stat-number,
#dashboard .stats .stat .num {
  font-size: 21px !important;
  line-height: 1.45 !important;
  font-weight: 900 !important;
  letter-spacing: -0.4px !important;
  white-space: nowrap !important;
}
.auto-task-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  align-items: start !important;
}
.auto-task-list .task-item,
.auto-task-list .compact-card,
.auto-task-list .item,
.auto-task-list article {
  width: 100% !important;
  margin: 0 !important;
}
@media (max-width: 768px) {
  #dashboard #stats .stat strong,
  #dashboard #stats .stat span.value,
  #dashboard #stats .stat .value,
  #dashboard #stats .stat .stat-value,
  #dashboard #stats .stat .stat-number,
  #dashboard #stats .stat .num,
  #dashboard .stats .stat strong,
  #dashboard .stats .stat span.value,
  #dashboard .stats .stat .value,
  #dashboard .stats .stat .stat-value,
  #dashboard .stats .stat .stat-number,
  #dashboard .stats .stat .num {
    font-size: 16px !important;
    line-height: 1.45 !important;
  }
  .auto-task-list { grid-template-columns: 1fr !important; }
}

/* v48 final report layout: compact printable columns, smaller report stats, total row */
#reports .report-columns .compact-columns{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:4px!important;
  padding:5px 6px!important;
  margin:5px 0 7px!important;
  border-radius:9px!important;
  overflow-x:auto!important;
  background:color-mix(in srgb,var(--accent-color, #1e6091) 4%,#ffffff)!important;
  border:1px solid color-mix(in srgb,var(--border, #d8e0ea) 85%,#fff)!important;
}
#reports .report-columns .compact-columns strong{
  font-size:10.5px!important;
  line-height:1.2!important;
  margin:0 0 0 4px!important;
  white-space:nowrap!important;
}
#reports .report-columns .compact-columns label{
  display:inline-flex!important;
  align-items:center!important;
  gap:3px!important;
  margin:0!important;
  padding:3px 6px!important;
  border-radius:8px!important;
  font-size:10.5px!important;
  line-height:1.25!important;
  min-height:22px!important;
  white-space:nowrap!important;
  background:#fff!important;
  border:1px solid var(--card-border, var(--border, #d8e0ea))!important;
  box-shadow:none!important;
}
#reports .report-columns .compact-columns input[type="checkbox"]{
  width:12px!important;
  height:12px!important;
  min-width:12px!important;
  margin:0!important;
}
#reports .report-summary.compact-report-summary,
#reports .report-summary{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:6px!important;
  margin:6px 0 8px!important;
}
#reports .report-summary .stat{
  min-height:44px!important;
  padding:7px 9px!important;
  border-radius:11px!important;
  border:1px solid var(--card-border, var(--border, #d8e0ea))!important;
  box-shadow:0 7px 16px rgba(15,23,42,.06)!important;
  background:var(--card-bg,#fff)!important;
}
#reports .report-summary .stat::before,
#reports .report-summary .stat::after{
  content:none!important;
  display:none!important;
}
#reports .report-summary .stat span{
  font-size:10.5px!important;
  line-height:1.25!important;
  margin-bottom:3px!important;
  font-weight:800!important;
}
#reports .report-summary .stat strong{
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:900!important;
  color:var(--primary-dark,var(--blue,#1e6091))!important;
  white-space:normal!important;
}
#reports .report-total-row td,
.print-report-table .report-total-row td{
  background:color-mix(in srgb,var(--primary,#1e6091) 8%,#fff)!important;
  color:var(--primary-dark,#123c69)!important;
  font-weight:950!important;
  border-top:2px solid var(--primary,#1e6091)!important;
}
@media(max-width:768px){
  #reports .report-columns .compact-columns{flex-wrap:wrap!important;gap:4px!important;padding:5px!important;}
  #reports .report-summary.compact-report-summary,#reports .report-summary{grid-template-columns:1fr!important;}
}

/* v49: compact expense statement paging and separate financial totals */
.expense-statement-note{font-size:11px;color:var(--muted);margin:4px 0 8px 0}
.expense-more-row{display:flex;justify-content:center;margin:8px 0 2px 0}
.small-btn{padding:6px 10px!important;border-radius:10px!important;font-size:11px!important;min-height:0!important}
.expense-statement-table th,.expense-statement-table td{font-size:12px;padding:7px 8px}
.report-total-row td{font-weight:800;background:rgba(15,23,42,.055)}
@media(max-width:760px){.expense-statement-table th,.expense-statement-table td{font-size:11px;padding:6px}.expense-statement-note{font-size:10px}}


/* v50 final: compact fixed report tables and clean total rows */
#reports .report-box,
#reports .table-wrap{max-width:100%!important;overflow-x:auto!important;border-radius:16px!important;}
#reports .report-table.selectable-report-table,
#reports #expenseList .report-table{width:100%!important;max-width:100%!important;min-width:0!important;table-layout:fixed!important;border-collapse:collapse!important;font-size:11px!important;line-height:1.35!important;}
#reports .report-table.selectable-report-table th,
#reports .report-table.selectable-report-table td,
#reports #expenseList .report-table th,
#reports #expenseList .report-table td{padding:5px 4px!important;white-space:normal!important;word-break:break-word!important;overflow-wrap:anywhere!important;text-align:center!important;vertical-align:middle!important;}
#reports .report-table.selectable-report-table td:nth-child(2),
#reports .report-table.selectable-report-table td:nth-child(9),
#reports #expenseList .report-table td:nth-child(2),
#reports #expenseList .report-table td:nth-child(6){text-align:right!important;}
#reports .report-total-row td{background:#f6edf5!important;color:#710057!important;font-weight:900!important;border-top:2px solid #7a005e!important;}
#reports .report-total-row .report-total-label{text-align:right!important;}
#reports .report-total-row .report-total-value{text-align:center!important;direction:rtl!important;white-space:normal!important;}
#reports .expense-statement-note{font-size:11px!important;padding:5px 8px!important;margin:6px 0!important;color:#5b6472!important;}
#reports .expense-more-row{text-align:center;margin:8px 0 0!important;}
#reports .expense-more-row .small-btn{padding:5px 11px!important;border-radius:10px!important;font-size:12px!important;}
@page{size:A4 landscape;margin:7mm;}
@media print{
  body>*:not(#printArea){display:none!important;}
  #printArea{display:block!important;width:100%!important;max-width:100%!important;padding:0!important;margin:0!important;direction:rtl!important;color:#111!important;background:#fff!important;}
  #printArea .report-page,#printArea .report-section{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;}
  #printArea .print-report-header{display:flex!important;align-items:center!important;justify-content:space-between!important;margin:0 0 6px!important;padding:0 0 5px!important;border-bottom:1.5px solid #222!important;}
  #printArea .print-report-title{font-size:12px!important;line-height:1.35!important;font-weight:900!important;}
  #printArea .print-report-title h1{font-size:13px!important;margin:0 0 2px!important;}
  #printArea .print-report-title h2{font-size:12px!important;margin:0 0 2px!important;}
  #printArea .print-report-title p{font-size:9px!important;margin:0!important;}
  #printArea .report-print-logo img{max-height:34px!important;}
  #printArea table,#printArea .print-report-table{width:100%!important;max-width:100%!important;min-width:0!important;border-collapse:collapse!important;table-layout:fixed!important;font-size:8.2px!important;line-height:1.25!important;margin:0!important;direction:rtl!important;}
  #printArea th,#printArea td,#printArea .print-report-table th,#printArea .print-report-table td{border:1px solid #222!important;padding:2.2px 2.6px!important;text-align:center!important;vertical-align:middle!important;white-space:normal!important;word-break:break-word!important;overflow-wrap:anywhere!important;color:#111!important;background:#fff!important;}
  #printArea th,#printArea .print-report-table th{background:#e9e9e9!important;font-weight:900!important;}
  #printArea .report-total-row td{background:#f3eef3!important;font-weight:900!important;border-top:1.5px solid #222!important;}
  #printArea .report-total-label{text-align:right!important;}
  #printArea .report-total-value{direction:rtl!important;}
}

/* v52: financial letter A4/letterhead/archive fixes */
.sidebar .nav.nav-financial-letter::before{content:"✉️";display:inline-block;margin-left:7px;font-size:1.05em;vertical-align:middle}
.financial-letter-screen{max-width:100%;overflow:hidden}
.financial-letter-controls{align-items:end}
.financial-letter-controls .wide{grid-column:span 3}
.financial-letter-columns{margin:10px 0;padding:8px 10px;border:1px solid var(--card-border,#d8e0ea);border-radius:14px;background:rgba(255,255,255,.62);max-width:100%;overflow:hidden}
.financial-letter-columns strong{display:block;font-size:12px;margin-bottom:7px;color:var(--primary-dark,#123c69)}
.letter-columns-grid{display:flex;flex-wrap:wrap;gap:6px;max-width:100%}
.letter-columns-grid label{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border:1px solid var(--card-border,#d8e0ea);border-radius:10px;background:#fff;font-size:11px;line-height:1.3;white-space:nowrap;max-width:100%}
.letter-columns-grid input{width:13px;height:13px;min-width:13px;margin:0}
.letter-text-editor{display:block;margin-top:10px}
.letter-text-editor textarea{width:100%;resize:vertical;line-height:1.9;min-height:130px}
.financial-letter-toolbar{margin:10px 0;gap:8px;flex-wrap:wrap}
.financial-letter-archive{margin:10px 0 12px;padding:10px;border:1px solid var(--card-border,#d8e0ea);border-radius:16px;background:rgba(255,255,255,.6)}
.financial-letter-archive .inner-head{margin-bottom:8px;padding:7px 10px;border-radius:12px;background:rgba(255,255,255,.55)!important;color:inherit!important}
.financial-letter-archive .inner-head h3{font-size:14px;margin:0;color:inherit!important}
.letter-archive-list{display:grid;gap:7px;margin-top:8px;max-height:240px;overflow:auto;padding-left:4px}
.letter-archive-item{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--card-border,#d8e0ea);border-radius:12px;background:#fff;padding:8px 10px}
.letter-archive-item strong{display:block;color:var(--primary-dark,#123c69);font-size:13px}.letter-archive-item span,.letter-archive-item small{display:block;color:#64748b;font-size:11px;line-height:1.7}.letter-archive-actions{display:flex;gap:6px;flex-wrap:wrap}.letter-archive-actions button{padding:6px 9px;font-size:12px;border-radius:10px}
.financial-letter-preview{max-width:100%;overflow:auto;padding:12px;border-radius:18px;background:linear-gradient(180deg,#f8fafc,#eef3f7);border:1px solid var(--card-border,#d8e0ea)}
.financial-letter-a4{width:210mm;max-width:100%;min-height:297mm;margin:0 auto;background:#fff;color:#111;border:1px solid #d8e0ea;box-shadow:0 12px 35px rgba(15,23,42,.12);padding:13mm 13mm 14mm;direction:rtl;overflow:hidden;position:relative;font-family:var(--font-main),Tahoma,sans-serif}
.financial-letter-head{direction:ltr;display:grid;grid-template-columns:48mm minmax(0,1fr);gap:12mm;align-items:start;border-bottom:1.5px solid #cbd5e1;padding-bottom:6mm;margin-bottom:10mm;max-width:100%}
.letter-meta{direction:rtl;text-align:right;font-size:11px;line-height:2;color:#555;padding-top:18mm;min-width:0}.letter-meta div{display:flex;align-items:center;gap:5px;border-bottom:1px dotted #9aa5b1;min-width:42mm;height:6.5mm;overflow:hidden}.letter-meta span{font-weight:800;color:#667085}.letter-meta b{font-weight:800;color:#344054;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.letter-brand{direction:rtl;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:8mm;text-align:center;min-width:0;overflow:hidden}
.letter-brand img{width:32mm;height:32mm;object-fit:contain;flex:0 0 auto}.letter-brand-text{min-width:0;flex:1}.letter-brand h2{font-size:30px;margin:0;font-weight:900;line-height:1.18;color:#334155}.letter-brand p{margin:2px 0;font-size:12px;color:#334155}.letter-brand .mini{font-size:10px;color:#64748b}
.financial-letter-body{position:relative;font-size:14px;line-height:2.25;max-width:100%;overflow:hidden;padding-right:0}.financial-letter-body h3,.financial-letter-body h4,.letter-greeting{text-align:right;margin-right:0}.financial-letter-body h3{font-size:18px;margin:0 0 8mm;font-weight:900}.financial-letter-body h4{font-size:16px;margin:0 0 6mm;font-weight:900}.letter-greeting{font-weight:800;margin:0 0 5mm}.letter-subject{margin:5mm 0;font-weight:800;text-align:right}.letter-main-text{text-align:justify;margin:5mm 0 7mm;white-space:normal;overflow-wrap:anywhere}.letter-blue-ornament{position:absolute;top:13mm;right:-4mm;width:18mm;height:155mm;opacity:.22;background:repeating-linear-gradient(45deg,#0b6f95 0 4px,transparent 4px 9px);border-radius:4mm;z-index:0}.financial-letter-body>*:not(.letter-blue-ornament){position:relative;z-index:1}
.financial-letter-table{width:100%;max-width:100%;border-collapse:collapse;table-layout:fixed;margin:6mm 0;font-size:10.5px;line-height:1.55}.financial-letter-table th,.financial-letter-table td{border:1px solid #334155;padding:3.5px 4px;text-align:center;vertical-align:middle;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.financial-letter-table th{background:#eef3f7;font-weight:900}.letter-note{font-size:10.5px;color:#475569;margin-top:5mm}.letter-sign{margin-top:13mm;text-align:left;display:flex;flex-direction:column;gap:3px}.letter-sign strong{font-size:15px}
@media(max-width:900px){.financial-letter-controls .wide{grid-column:auto}.financial-letter-a4{width:100%;min-height:auto;padding:14px;border-radius:14px}.financial-letter-head{direction:rtl;grid-template-columns:1fr;gap:10px}.letter-meta{padding-top:0}.letter-brand{justify-content:center}.letter-brand h2{font-size:22px}.financial-letter-preview{padding:8px}.letter-columns-grid label{font-size:10.5px;padding:4px 6px}.letter-archive-item{align-items:flex-start;flex-direction:column}.letter-archive-actions{width:100%}}
@media print{body:not(.printing-financial-letter) #financialLetters{display:none!important}}


/* v54-from-v52: safe financial letter visual fixes only */
.financial-letter-a4{
  width:210mm!important;
  min-height:297mm!important;
  padding:25mm!important;
  font-family:var(--letter-font), var(--font-main), Tahoma, sans-serif!important;
}
.financial-letter-head{
  position:relative!important;
  border-bottom:0!important;
  padding-bottom:6mm!important;
  margin-bottom:10mm!important;
  grid-template-columns:48mm minmax(0,1fr)!important;
}
.financial-letter-head:after{
  content:"";position:absolute;left:-20mm;right:-20mm;bottom:0;height:2.2mm;
  border-top:1.2px solid #111;border-bottom:1.2px solid #111;
}
.letter-brand{justify-content:flex-end!important;gap:6mm!important;text-align:center!important}
.letter-brand img{width:22mm!important;height:22mm!important;filter:grayscale(1) brightness(0)!important;object-fit:contain!important}
.letter-brand h2{font-size:var(--letter-header-size,22px)!important;color:#111!important}
.letter-brand p{color:#111!important;font-weight:700!important}
.letter-blue-ornament{display:none!important}
.financial-letter-body{font-size:var(--letter-text-size,14px)!important;line-height:2.15!important;overflow:hidden!important}
.financial-letter-body h3{font-size:calc(var(--letter-text-size,14px) + 4px)!important;text-align:right!important}
.financial-letter-body h4{font-size:calc(var(--letter-text-size,14px) + 2px)!important;text-align:right!important}
.financial-letter-table{display:table!important;width:100%!important;margin:6mm 0!important;border-collapse:collapse!important;table-layout:fixed!important}
.financial-letter-table th,.financial-letter-table td{border:1px solid #111!important;color:#111!important}
@media print{
  .letter-blue-ornament{display:none!important}
  .financial-letter-a4{width:210mm!important;min-height:297mm!important;padding:25mm!important;border:0!important;box-shadow:none!important}
  .financial-letter-head:after{left:-20mm!important;right:-20mm!important}
}

/* v55: final three safe fixes requested by user - header alignment, right-aligned recipient, menu envelope icon */
.nav.nav-financial-letter::before{
  content:"✉️";
  display:block;
  font-size:18px;
  line-height:1;
  margin:0 0 4px 0;
  text-align:center;
}
.sidebar .nav.nav-financial-letter::before{
  display:inline-block;
  margin:0 0 0 7px;
  vertical-align:middle;
  text-align:inherit;
}
.mobile-sheet-grid .nav.nav-financial-letter::before{
  display:block;
  margin:0 0 4px 0;
}
.financial-letter-head{
  direction:ltr!important;
  display:grid!important;
  grid-template-columns:44mm minmax(0,1fr) 22mm!important;
  gap:8mm!important;
  align-items:start!important;
}
.letter-meta{
  grid-column:1!important;
  justify-self:start!important;
  text-align:right!important;
  direction:rtl!important;
  padding-top:4mm!important;
}
.letter-brand-text{
  grid-column:2!important;
  direction:rtl!important;
  text-align:center!important;
  align-self:center!important;
  justify-self:stretch!important;
}
.letter-brand-text h2,
.letter-brand-text p{
  text-align:center!important;
}
.letter-logo-wrap{
  grid-column:3!important;
  justify-self:end!important;
  text-align:right!important;
}
.letter-logo-wrap img{
  width:18mm!important;
  height:18mm!important;
  object-fit:contain!important;
  filter:grayscale(1) brightness(0)!important;
}
.financial-letter-body,
.financial-letter-body .letter-recipient,
.financial-letter-body .letter-person,
.financial-letter-body .letter-greeting{
  direction:rtl!important;
  text-align:right!important;
  margin-right:0!important;
  padding-right:0!important;
  width:100%!important;
}
@media print{
  .financial-letter-head{
    grid-template-columns:44mm minmax(0,1fr) 22mm!important;
    gap:8mm!important;
  }
  .letter-logo-wrap img{width:18mm!important;height:18mm!important;filter:grayscale(1) brightness(0)!important}
  .letter-meta{justify-self:start!important;text-align:right!important;direction:rtl!important;padding-top:4mm!important}
  .letter-brand-text{text-align:center!important;align-self:center!important;justify-self:stretch!important}
  .financial-letter-body .letter-recipient,
  .financial-letter-body .letter-person,
  .financial-letter-body .letter-greeting{text-align:right!important;direction:rtl!important;width:100%!important}
}

/* v56: restore separate font/size controls and 1.5cm body/table side margins */
.financial-letter-style-panel{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:10px 0;
  padding:8px;
  border:1px solid var(--card-border,#d8e0ea);
  border-radius:14px;
  background:rgba(255,255,255,.62);
}
.letter-style-group{
  display:grid;
  grid-template-columns:1fr 82px;
  gap:7px;
  align-items:end;
  padding:8px;
  border:1px solid rgba(148,163,184,.35);
  border-radius:12px;
  background:#fff;
}
.letter-style-group strong{grid-column:1/-1;font-size:12px;color:var(--primary-dark,#123c69);font-weight:900;margin-bottom:2px}
.letter-style-group label{font-size:11px;line-height:1.5;margin:0}
.letter-style-group .input{min-height:34px;padding:5px 8px;font-size:12px}
.financial-letter-a4{font-family:var(--letter-body-font),BMitra,var(--font-main),Tahoma,sans-serif!important}
.financial-letter-head{font-family:var(--letter-header-font),BMitra,var(--font-main),Tahoma,sans-serif!important}
.letter-brand-text h2{font-size:var(--letter-header-size,22px)!important}
.financial-letter-body{
  margin-left:-10mm!important;
  margin-right:-10mm!important;
  font-family:var(--letter-body-font),BMitra,var(--font-main),Tahoma,sans-serif!important;
  font-size:var(--letter-body-size,14px)!important;
}
.financial-letter-body h3{font-size:calc(var(--letter-body-size,14px) + 4px)!important}
.financial-letter-body h4{font-size:calc(var(--letter-body-size,14px) + 2px)!important}
.financial-letter-table{
  font-family:var(--letter-table-font),BMitra,var(--font-main),Tahoma,sans-serif!important;
  font-size:var(--letter-table-size,10.5px)!important;
}
.letter-note{font-size:calc(var(--letter-table-size,10.5px) - .5px)!important}
@media(max-width:900px){
  .financial-letter-style-panel{grid-template-columns:1fr}
  .letter-style-group{grid-template-columns:1fr 82px}
  .financial-letter-body{margin-left:0!important;margin-right:0!important}
}
@media print{
  .financial-letter-body{margin-left:-10mm!important;margin-right:-10mm!important;font-family:var(--letter-body-font),BMitra,Tahoma,sans-serif!important;font-size:var(--letter-body-size,14px)!important}
  .financial-letter-table{font-family:var(--letter-table-font),BMitra,Tahoma,sans-serif!important;font-size:var(--letter-table-size,10.5px)!important}
  .financial-letter-head{font-family:var(--letter-header-font),BMitra,Tahoma,sans-serif!important}
}

/* v57: clean row selection inside report table */
#reports .report-row-selector.compact-row-selector{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  margin:8px 0!important;
  padding:6px 8px!important;
  border-radius:12px!important;
  background:color-mix(in srgb,var(--primary-color,#1e6091) 4%,#fff)!important;
  border:1px solid color-mix(in srgb,var(--primary-color,#1e6091) 16%,var(--border,#d8e0ea))!important;
}
#reports .report-row-selector.compact-row-selector .row-chip.select-all{
  padding:4px 8px!important;
  font-size:11.5px!important;
  border-radius:9px!important;
  max-width:none!important;
  gap:5px!important;
}
#reports .report-row-selector.compact-row-selector input{width:13px!important;height:13px!important;min-width:13px!important;margin:0!important;}
#reports .report-select-col,#reports .report-select-cell{width:34px!important;min-width:34px!important;max-width:34px!important;text-align:center!important;padding:3px!important;}
#reports .report-row-no{width:42px!important;min-width:42px!important;max-width:42px!important;text-align:center!important;font-weight:900!important;white-space:nowrap!important;}
#reports .report-select-cell input{width:14px!important;height:14px!important;min-width:14px!important;margin:0 auto!important;display:block!important;accent-color:var(--primary-color,#1e6091)!important;}
#reports .selectable-report-table th.report-select-col,#reports .selectable-report-table th.report-row-no{font-size:10.5px!important;}
#reports .selectable-report-table tr.report-row-excluded td:not(.report-select-cell){opacity:.55!important;}
#reports .selectable-report-table td:nth-child(3),
#reports .selectable-report-table td:nth-child(10){text-align:right!important;}
@media(max-width:760px){
  #reports .report-select-col,#reports .report-select-cell{width:30px!important;min-width:30px!important;max-width:30px!important;}
  #reports .report-row-no{width:34px!important;min-width:34px!important;max-width:34px!important;}
  #reports .report-row-selector.compact-row-selector{padding:5px 6px!important;gap:6px!important;}
}

/* v59: report row checkbox column compact and financial columns at the end */
#reports .report-table.selectable-report-table{table-layout:fixed!important;width:100%!important;max-width:100%!important;min-width:0!important;}
#reports .selectable-report-table col.report-select-colgroup{width:34px!important;min-width:34px!important;max-width:34px!important;}
#reports .selectable-report-table col.report-row-colgroup{width:42px!important;min-width:42px!important;max-width:42px!important;}
#reports .selectable-report-table col.report-money-colgroup{width:110px!important;}
#reports .selectable-report-table col.report-wide-colgroup{width:118px!important;}
#reports .selectable-report-table col.report-normal-colgroup{width:auto!important;}
#reports .selectable-report-table th.report-select-col,
#reports .selectable-report-table td.report-select-cell{width:34px!important;min-width:34px!important;max-width:34px!important;padding:2px!important;text-align:center!important;vertical-align:middle!important;}
#reports .selectable-report-table th.report-row-no,
#reports .selectable-report-table td.report-row-no{width:42px!important;min-width:42px!important;max-width:42px!important;padding:3px!important;text-align:center!important;vertical-align:middle!important;font-weight:900!important;}
#reports .selectable-report-table td.report-select-cell input{width:13px!important;height:13px!important;min-width:13px!important;margin:0 auto!important;display:block!important;accent-color:var(--table-header-bg,var(--primary-color,#8a006a))!important;}
#reports .selectable-report-table th.report-select-col{font-size:9px!important;line-height:1.2!important;writing-mode:horizontal-tb!important;}
#reports .selectable-report-table th,
#reports .selectable-report-table td{overflow:hidden!important;text-overflow:clip!important;}
@media print{
  #reports .selectable-report-table col.report-select-colgroup,
  #reports .selectable-report-table th.report-select-col,
  #reports .selectable-report-table td.report-select-cell{display:none!important;width:0!important;max-width:0!important;min-width:0!important;padding:0!important;border:0!important;}
  #printArea .print-report-table{table-layout:fixed!important;}
  #printArea .print-report-table .report-total-row td{font-weight:900!important;}
}

/* v65.2: compact the actual report row-number column (visual-only fix) */
#reports .selectable-report-table col.report-row-colgroup{
  width:42px!important;
  min-width:42px!important;
  max-width:42px!important;
}
#reports .selectable-report-table th.report-row-no,
#reports .selectable-report-table td.report-row-no{
  width:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  padding:3px 2px!important;
  text-align:center!important;
  vertical-align:middle!important;
  font-weight:900!important;
  font-size:inherit!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
@media(max-width:760px){
  #reports .selectable-report-table col.report-row-colgroup{
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
  }
  #reports .selectable-report-table th.report-row-no,
  #reports .selectable-report-table td.report-row-no{
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    padding:2px 1px!important;
    font-size:inherit!important;
  }
}

/* v61: equal letter body margins and controllable line spacing for financial letters */
.financial-letter-a4{padding-left:20mm!important;padding-right:20mm!important;}
.financial-letter-body{margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;line-height:var(--letter-body-line-height,1.5)!important;}
.letter-main-text{line-height:var(--letter-body-line-height,1.5)!important;margin-top:4mm!important;margin-bottom:5mm!important;}
@media print{
  .financial-letter-a4{padding-left:20mm!important;padding-right:20mm!important;}
  .financial-letter-body{margin-left:0!important;margin-right:0!important;line-height:var(--letter-body-line-height,1.5)!important;}
  .letter-main-text{line-height:var(--letter-body-line-height,1.5)!important;}
}

/* v65.3 — visual-only: official holidays in the Jalali date picker */
.jalali-picker-dialog{max-width:390px!important;max-height:90vh!important;overflow:auto!important;}
.picker-days button{position:relative;isolation:isolate;}
.picker-days button .picker-day-number{position:relative;z-index:2;}
.picker-days button.court-closed:not(.official-holiday):not(.today){
  background:#fff8e6!important;
  border-color:#d99a22!important;
  color:#8a5a00!important;
}
.picker-days button.weekly-off:not(.official-holiday):not(.today){
  background:#f4f5f7!important;
  border-color:#98a2b3!important;
  color:#667085!important;
}
.picker-days button.official-holiday:not(.today){
  background:#fff0f3!important;
  border-color:#d92d20!important;
  color:#b42318!important;
  box-shadow:inset 0 0 0 1px rgba(217,45,32,.08)!important;
}
.picker-days button.official-holiday::after{
  content:"";
  position:absolute;
  width:6px;height:6px;
  left:50%;bottom:3px;
  transform:translateX(-50%);
  border-radius:50%;
  background:#d92d20;
  z-index:3;
}
.picker-days button.today.official-holiday{
  outline:3px solid #d92d20!important;
  outline-offset:1px;
}
.picker-days button.today.official-holiday::after{background:#fff;}
.picker-legend{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;font-size:10.5px;font-weight:800;}
.picker-legend span{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border-radius:999px;border:1px solid transparent;}
.picker-legend span::before{content:"";width:7px;height:7px;border-radius:50%;display:inline-block;}
.picker-legend .legend-official{background:#fff0f3;color:#b42318;border-color:rgba(217,45,32,.25)}
.picker-legend .legend-official::before{background:#d92d20}
.picker-legend .legend-court{background:#fff8e6;color:#8a5a00;border-color:rgba(217,154,34,.3)}
.picker-legend .legend-court::before{background:#d99a22}
.picker-legend .legend-friday{background:#f4f5f7;color:#667085;border-color:#d0d5dd}
.picker-legend .legend-friday::before{background:#98a2b3}
.picker-holiday-list{margin-top:8px;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.72);border:1px solid var(--card-border,var(--border));font-size:11px;line-height:1.65;color:var(--text-main,var(--ink));}
.picker-holiday-list>strong{display:block;margin-bottom:3px;color:#b42318;}
.picker-holiday-list>div{display:grid;gap:2px;}
.picker-holiday-list>div span{display:block;}
.picker-holiday-list b{color:#b42318;margin-left:3px;}

/* v65.3 — visual-only: compact two-row case cards; data and actions are unchanged */
#caseList.case-list{
  grid-template-columns:repeat(auto-fill,minmax(305px,1fr))!important;
  gap:10px!important;
  align-items:stretch!important;
}
#caseList .case-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  column-gap:10px!important;
  row-gap:4px!important;
  align-content:start!important;
  padding:10px 12px!important;
  border-radius:16px!important;
  min-height:0!important;
}
#caseList .case-card h3{
  grid-column:1/-1!important;
  margin:0!important;
  line-height:1.35!important;
  font-size:15px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#caseList .case-card .meta{
  grid-column:1/-1!important;
  margin:2px 0 3px!important;
  gap:4px!important;
}
#caseList .case-card .badge{font-size:10.5px!important;padding:2px 7px!important;line-height:1.5!important;}
#caseList .case-card p{
  margin:0!important;
  min-width:0!important;
  font-size:11.5px!important;
  line-height:1.65!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#caseList .case-card p:nth-of-type(1),#caseList .case-card p:nth-of-type(3){grid-column:1!important;}
#caseList .case-card p:nth-of-type(2),#caseList .case-card p:nth-of-type(4){grid-column:2!important;}
#caseList .case-card .toolbar{
  grid-column:1/-1!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:5px!important;
  margin-top:4px!important;
}
#caseList .case-card .toolbar button{
  min-width:0!important;
  padding:6px 4px!important;
  border-radius:11px!important;
  font-size:10.5px!important;
  line-height:1.35!important;
  white-space:nowrap!important;
}
@media(min-width:1500px){#caseList.case-list{grid-template-columns:repeat(4,minmax(0,1fr))!important;}}
@media(min-width:980px) and (max-width:1499px){#caseList.case-list{grid-template-columns:repeat(3,minmax(0,1fr))!important;}}
@media(max-width:760px){
  .jalali-picker-dialog{width:min(94vw,390px)!important;}
  .picker-holiday-list{max-height:92px;overflow:auto;}
  #caseList.case-list{grid-template-columns:1fr!important;gap:8px!important;}
  #caseList .case-card{grid-template-columns:1fr!important;padding:10px!important;}
  #caseList .case-card h3,#caseList .case-card .meta,#caseList .case-card p,#caseList .case-card .toolbar{grid-column:1!important;}
  #caseList .case-card .meta{max-height:none!important;}
  #caseList .case-card .toolbar{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}


/* v65.4 — scoped financial-letter display fixes only */
#financialLetters select,
#financialLetters select.input{
  color-scheme:light!important;
  color:#1d2430!important;
  -webkit-text-fill-color:#1d2430!important;
  background:#fffdf7!important;
}
#financialLetters select option{
  color:#1d2430!important;
  -webkit-text-fill-color:#1d2430!important;
  background:#fff!important;
  opacity:1!important;
}
@font-face{font-family:'BJalal';src:url('fonts/BJALAL.TTF') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'BYagut';src:url('fonts/BYAGUT.TTF') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'BYagutBold';src:url('fonts/BYAGUTBD.TTF') format('truetype');font-weight:700 900;font-style:normal;font-display:swap}
@font-face{font-family:'BMitra';src:url('fonts/MITRA.TTF') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'BNazanin';src:local('B Nazanin'),local('B Nazanin Regular'),url('fonts/B-NAZANIN.TTF') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:'BMitra';src:url('fonts/MITRAB.TTF') format('truetype');font-weight:700 900;font-style:normal;font-display:swap}
@font-face{font-family:'BMitraBold';src:url('fonts/MITRAB.TTF') format('truetype');font-weight:700 900;font-style:normal;font-display:swap}
@font-face{font-family:'MitraModir2';src:url('fonts/MMITRABDMRT2.TTF') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'MitraModir3';src:url('fonts/MMITRABDMRT3.TTF') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'MitraModir4';src:url('fonts/MMITRABDMRT4.TTF') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'MitraModir5';src:url('fonts/MMITRABDMRT5.TTF') format('truetype');font-weight:700;font-style:normal;font-display:swap}
#financialLetters .financial-letter-head:after{height:.66mm!important}
@media print{#financialLetters .financial-letter-head:after{height:.66mm!important}}


/* v65.6 — B Nazanin option and justified financial-letter body only */
#financialLetters .letter-main-text{
  direction:rtl!important;
  text-align:justify!important;
  text-align-last:right!important;
  text-justify:inter-word!important;
  letter-spacing:normal!important;
  word-spacing:normal!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  font-kerning:normal!important;
  font-variant-ligatures:common-ligatures contextual!important;
  font-feature-settings:"rlig" 1,"liga" 1,"calt" 1,"kern" 1!important;
}
@media print{
  #financialLetters .letter-main-text{
    text-align:justify!important;
    text-align-last:right!important;
    text-justify:inter-word!important;
  }
}


/* ===== v65.7: ثبت اقدام و گردش خودکار پرونده ===== */
.workflow-done-dialog{width:min(880px,94vw);max-height:92vh;overflow:auto}
.workflow-done-dialog form{display:grid;gap:14px}
.workflow-transition-panel{border:1px solid #e1bfdc;border-radius:16px;background:#fff8fe;padding:14px}
.workflow-transition-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.workflow-transition-head h4{margin:0 0 4px;color:var(--primary-color,#7a0068)}
.workflow-transition-head p{margin:0}
.workflow-transition-grid{align-items:end}
.workflow-submit-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-start;align-items:center}
.workflow-submit-actions button{min-height:42px}
.case-history-table{min-width:980px}
#caseDetails{max-width:min(1200px,92vw);max-height:82vh;overflow:auto}
@media(max-width:700px){.workflow-transition-head{display:block}.workflow-transition-head button{margin-top:8px}.workflow-submit-actions{display:grid;grid-template-columns:1fr}.workflow-submit-actions button{width:100%}.workflow-done-dialog{width:96vw}}
/* ===== end v65.7 ===== */


/* ===== v65.8: دکمه‌های گردش کار و انجام‌شده‌های امروز ===== */
.completed-today-card{border-color:#9fd3ad;background:linear-gradient(180deg,#ffffff,#f3fff6)}
.completed-today-card .card-head h3{color:#167443}
.completed-today-card .done-item{border-right-color:#1b8a50!important;box-shadow:0 6px 18px rgba(27,138,80,.08)}
.workflow-submit-actions button{pointer-events:auto!important;position:relative;z-index:2}
.workflow-done-dialog form{pointer-events:auto}
.case-history-table td{white-space:normal!important;vertical-align:top}
@media(max-width:700px){.completed-today-card .card-head{align-items:flex-start}.completed-today-card .toolbar{width:100%;justify-content:space-between}}
/* ===== end v65.8 ===== */


/* ===== v65.9: hotfix قطعی دکمه‌های گردش کار ===== */
.workflow-form-message{display:block;margin:2px 0 0;padding:10px 12px;border:1px solid #d88abf;border-radius:12px;background:#fff0f8;color:#8a0b61;font-weight:900;line-height:1.8}
.workflow-form-message[hidden]{display:none!important}
.workflow-submit-actions{position:relative!important;z-index:10!important;isolation:isolate}
.workflow-submit-actions button,#suggestTransitionBtn{pointer-events:auto!important;touch-action:manipulation!important;user-select:none}
.workflow-submit-actions button:disabled,#suggestTransitionBtn:disabled{opacity:.62;cursor:wait}
/* ===== end v65.9 ===== */


/* ===== v65.11: polished daily capacity calendar ===== */
.case-capacity-hint{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;margin:14px 0 16px;padding:13px 15px;border:1px solid #d9e2ec;border-radius:18px;background:linear-gradient(135deg,#f8fbff,#ffffff);box-shadow:0 10px 26px rgba(15,23,42,.06);transition:.2s ease}
.case-capacity-hint .capacity-hint-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#eaf2ff;color:#295a9f;font-size:23px;font-weight:900}.capacity-hint-content{min-width:0}.capacity-hint-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.case-capacity-hint p{margin:5px 0 0;font-size:12.5px;line-height:1.75}.capacity-status-pill{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:900;background:#eef2f6;color:#344054}.capacity-slots{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:9px}.capacity-slot-label{font-size:10px;font-weight:900;color:#667085;margin-left:2px}.capacity-slot-label.extra-label{margin-right:8px}.capacity-slot{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:24px;padding:0 8px;border-radius:999px;font-size:10px;font-weight:900;border:1px solid transparent}.capacity-slot.free{background:#e9f9f0;color:#087443;border-color:#9ce2bd}.capacity-slot.used{background:#fff1f0;color:#b42318;border-color:#f7b5ae}.capacity-slot.extraordinary.free{background:#f3edff;color:#6941c6;border-color:#cbb8f6}.capacity-slot.extraordinary.used{background:#6941c6;color:#fff;border-color:#6941c6}
.case-capacity-hint.capacity-open{border-color:#9ce2bd;background:linear-gradient(135deg,#effbf4,#fff)}.case-capacity-hint.capacity-open .capacity-hint-icon{background:#dff7ea;color:#087443}.case-capacity-hint.capacity-half{border-color:#f1d27a;background:linear-gradient(135deg,#fff9e9,#fff)}.case-capacity-hint.capacity-half .capacity-hint-icon{background:#fff0bd;color:#8a5a00}.case-capacity-hint.capacity-extra-only{border-color:#cbb8f6;background:linear-gradient(135deg,#f8f4ff,#fff)}.case-capacity-hint.capacity-extra-only .capacity-hint-icon{background:#eee7ff;color:#6941c6}.case-capacity-hint.capacity-full,.case-capacity-hint.capacity-overbooked,.case-capacity-hint.capacity-closed{border-color:#f5b5b0;background:linear-gradient(135deg,#fff2f1,#fff)}.case-capacity-hint.capacity-full .capacity-hint-icon,.case-capacity-hint.capacity-overbooked .capacity-hint-icon,.case-capacity-hint.capacity-closed .capacity-hint-icon{background:#fee4e2;color:#b42318}

.picker-days button{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:48px!important;padding:5px 2px!important}.picker-capacity-badge{display:block;max-width:100%;padding:1px 5px;border-radius:999px;font-size:8px;line-height:1.3;font-weight:900;white-space:nowrap;background:#eef2f6;color:#475467}.picker-days button.capacity-open:not(.today){box-shadow:inset 0 -3px 0 #32b36b!important}.picker-days button.capacity-half:not(.today){box-shadow:inset 0 -3px 0 #e3a008!important}.picker-days button.capacity-extra-only:not(.today){box-shadow:inset 0 -3px 0 #7f56d9!important;background:#faf7ff!important}.picker-days button.capacity-full:not(.today),.picker-days button.capacity-overbooked:not(.today){box-shadow:inset 0 -3px 0 #d92d20!important;background:#fff3f2!important}.picker-days button.capacity-closed:not(.today){opacity:.64}.picker-days button:disabled{cursor:not-allowed!important;filter:saturate(.6);opacity:.62!important}.picker-days button.capacity-open .picker-capacity-badge{background:#ddf7e8;color:#087443}.picker-days button.capacity-half .picker-capacity-badge{background:#fff0bd;color:#8a5a00}.picker-days button.capacity-extra-only .picker-capacity-badge{background:#eee7ff;color:#6941c6}.picker-days button.capacity-full .picker-capacity-badge,.picker-days button.capacity-overbooked .picker-capacity-badge{background:#fee4e2;color:#b42318}.picker-days button.today .picker-capacity-badge{background:rgba(255,255,255,.22)!important;color:inherit!important}.picker-capacity-note{margin-top:9px;padding:8px 10px;border-radius:12px;background:#f8fafc;border:1px solid #e4e7ec;font-size:10.5px;line-height:1.65}.picker-legend .legend-capacity-open{background:#e9f9f0;color:#087443;border-color:#9ce2bd}.picker-legend .legend-capacity-open::before{background:#32b36b}.picker-legend .legend-capacity-half{background:#fff8df;color:#8a5a00;border-color:#f1d27a}.picker-legend .legend-capacity-half::before{background:#e3a008}.picker-legend .legend-capacity-extra{background:#f3edff;color:#6941c6;border-color:#cbb8f6}.picker-legend .legend-capacity-extra::before{background:#7f56d9}.picker-legend .legend-capacity-full{background:#fff0ef;color:#b42318;border-color:#f5b5b0}.picker-legend .legend-capacity-full::before{background:#d92d20}

.capacity-calendar-summary{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.summary-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:900;border:1px solid transparent}.summary-chip::before{content:"";width:8px;height:8px;border-radius:50%}.summary-chip.capacity-open{background:#e9f9f0;color:#087443;border-color:#9ce2bd}.summary-chip.capacity-open::before{background:#32b36b}.summary-chip.capacity-half{background:#fff8df;color:#8a5a00;border-color:#f1d27a}.summary-chip.capacity-half::before{background:#e3a008}.summary-chip.capacity-extra-only{background:#f3edff;color:#6941c6;border-color:#cbb8f6}.summary-chip.capacity-extra-only::before{background:#7f56d9}.summary-chip.capacity-full{background:#fff0ef;color:#b42318;border-color:#f5b5b0}.summary-chip.capacity-full::before{background:#d92d20}.summary-chip.capacity-closed{background:#f2f4f7;color:#667085;border-color:#d0d5dd}.summary-chip.capacity-closed::before{background:#98a2b3}
.capacity-calendar .calendar-day{position:relative;overflow:hidden!important;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.capacity-calendar .calendar-day:not(.empty):hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(15,23,42,.11)!important}.capacity-calendar .calendar-day.capacity-open:not(.today):not(.holiday):not(.friday):not(.thursday){border-bottom:4px solid #32b36b!important}.capacity-calendar .calendar-day.capacity-half:not(.today):not(.holiday):not(.friday):not(.thursday){border-bottom:4px solid #e3a008!important}.capacity-calendar .calendar-day.capacity-extra-only:not(.today):not(.holiday):not(.friday):not(.thursday){border-bottom:4px solid #7f56d9!important;background:linear-gradient(180deg,#fff,#faf7ff)!important}.capacity-calendar .calendar-day.capacity-full:not(.today):not(.holiday):not(.friday):not(.thursday),.capacity-calendar .calendar-day.capacity-overbooked:not(.today){border-bottom:4px solid #d92d20!important;background:linear-gradient(180deg,#fff,#fff4f3)!important}.capacity-calendar .calendar-day.thursday:not(.today):not(.holiday),.capacity-calendar .calendar-day.capacity-closed:not(.today){background:#f8f4ea!important;border-color:#dfd4bc!important}.calendar-capacity-pill{display:block;width:100%;padding:3px 5px;border-radius:8px;font-size:9px;line-height:1.3;font-weight:900;text-align:center;background:#eef2f6;color:#475467;margin-top:5px}.calendar-day.capacity-open .calendar-capacity-pill{background:#ddf7e8;color:#087443}.calendar-day.capacity-half .calendar-capacity-pill{background:#fff0bd;color:#8a5a00}.calendar-day.capacity-extra-only .calendar-capacity-pill{background:#eee7ff;color:#6941c6}.calendar-day.capacity-full .calendar-capacity-pill,.calendar-day.capacity-overbooked .calendar-capacity-pill{background:#fee4e2;color:#b42318}.calendar-day.capacity-closed .calendar-capacity-pill{background:#eaecf0;color:#667085}.calendar-day.today .calendar-capacity-pill{background:rgba(255,255,255,.22)!important;color:inherit!important;border:1px solid rgba(255,255,255,.2)}
.day-capacity-details{display:grid;gap:8px;margin:12px 0;padding:12px 14px;border-radius:16px;border:1px solid #e4e7ec;background:#f8fafc}.day-capacity-details>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.day-capacity-details>div:first-child span{font-weight:900}.day-capacity-meter{position:relative;height:8px;border-radius:999px;background:#eaecf0;overflow:hidden}.day-capacity-meter i{display:block;width:var(--fill);height:100%;border-radius:inherit;background:#32b36b}.day-capacity-details.capacity-half .day-capacity-meter i{background:#e3a008}.day-capacity-details.capacity-extra-only .day-capacity-meter i,.day-capacity-details.capacity-full .day-capacity-meter i{background:#7f56d9}.day-capacity-details.capacity-overbooked .day-capacity-meter i{background:#d92d20}.extraordinary-used{display:inline-flex;width:max-content;padding:4px 8px;border-radius:999px;background:#eee7ff;color:#6941c6;font-size:11px;font-weight:900}.capacity-review-warning{color:#b42318;font-size:11px;font-weight:900}.scheduled-case-list{margin-top:12px}.scheduled-case-list h4{margin:0 0 8px}.scheduled-case-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:9px 10px;border:1px solid #e4e7ec;border-radius:13px;background:#fff;margin-bottom:7px}.scheduled-case-row>div{display:grid;gap:2px;min-width:0}.scheduled-case-row>div span{font-size:11px;color:#667085;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.capacity-extra-badge{background:#6941c6!important;color:#fff!important;border-color:#6941c6!important}.calendar-task-list{margin-top:12px}
@media(max-width:760px){.case-capacity-hint{grid-template-columns:36px minmax(0,1fr);padding:11px}.case-capacity-hint .capacity-hint-icon{width:36px;height:36px;border-radius:12px;font-size:19px}.capacity-hint-head{align-items:flex-start}.picker-days button{min-height:44px!important}.picker-capacity-badge{font-size:7px;padding:1px 3px}.capacity-calendar-summary{gap:5px}.summary-chip{font-size:9px;padding:5px 7px}.calendar-capacity-pill{font-size:7.5px;padding:2px}.scheduled-case-row{grid-template-columns:minmax(0,1fr) auto}.scheduled-case-row button{grid-column:1/-1;width:100%}}


/* ===== v65.12: 20% larger date picker only for case registration/editing ===== */
.jalali-picker-dialog.capacity-picker-large{
  max-width:406px!important;
  width:min(94vw,406px)!important;
  padding:17px!important;
  border-radius:23px!important;
}
.jalali-picker-dialog.capacity-picker-large .picker-head strong{font-size:22px!important}
.jalali-picker-dialog.capacity-picker-large .picker-head .ghost,
.jalali-picker-dialog.capacity-picker-large .picker-actions .ghost,
.jalali-picker-dialog.capacity-picker-large .picker-actions .secondary{
  padding:8px 12px!important;
  border-radius:14px!important;
  font-size:14px!important;
}
.jalali-picker-dialog.capacity-picker-large .picker-weekdays,
.jalali-picker-dialog.capacity-picker-large .picker-days{
  gap:6px!important;
  margin-top:12px!important;
}
.jalali-picker-dialog.capacity-picker-large .picker-weekdays span{font-size:14px!important}
.jalali-picker-dialog.capacity-picker-large .picker-days button{
  min-height:58px!important;
  padding:6px 3px!important;
  border-radius:13px!important;
}
.jalali-picker-dialog.capacity-picker-large .picker-day-number{font-size:16px!important;line-height:1.2!important}
.jalali-picker-dialog.capacity-picker-large .picker-capacity-badge{font-size:9.5px!important;padding:2px 6px!important}
.jalali-picker-dialog.capacity-picker-large .picker-actions{margin-top:13px!important}
.jalali-picker-dialog.capacity-picker-large .picker-holiday-list{font-size:12px!important;padding:10px 12px!important}
.jalali-picker-dialog.capacity-picker-large .picker-capacity-note{font-size:11.5px!important;padding:9px 11px!important}
@media(max-width:480px){
  .jalali-picker-dialog.capacity-picker-large{width:96vw!important;max-width:96vw!important;padding:13px!important}
  .jalali-picker-dialog.capacity-picker-large .picker-days button{min-height:50px!important}
  .jalali-picker-dialog.capacity-picker-large .picker-day-number{font-size:15px!important}
  .jalali-picker-dialog.capacity-picker-large .picker-capacity-badge{font-size:8px!important;padding:1px 4px!important}
}
/* ===== end v65.12 ===== */
