/* A comfortable reading scale for the entire Arabic and English workspace. */
:root{--text-body:18px;--text-detail:16px;--text-label:17px;--calendar-hour:184px;--muted:#5b7179}
body,html[lang=ar] body{font-size:var(--text-body);line-height:1.65}
button,input,select,textarea{font-size:18px;line-height:1.5}
button{min-height:46px}
input,select,textarea{padding:12px 15px}
h1,html[lang=ar] h1{font-size:42px;line-height:1.4}
h2{font-size:27px;line-height:1.5}
h3{font-size:22px;line-height:1.5}
small{font-size:var(--text-detail)}
.small{font-size:16px;padding:9px 13px}
.eyebrow,html[lang=ar] .eyebrow{font-size:16px;line-height:1.7;letter-spacing:.4px}
.shell{grid-template-columns:280px minmax(0,1fr)}
.sidebar{width:280px;padding:25px 20px;overflow-y:auto}
.sidebar nav button{font-size:18px;padding:12px 13px;gap:11px}
.brand strong{font-size:27px}
.brand small,html[lang=ar] .brand small{font-size:16px;line-height:1.7;letter-spacing:.3px}
.nav-label,html[lang=ar] .nav-label{font-size:16px;letter-spacing:.4px;margin-top:26px}
.count{font-size:16px;min-width:25px;text-align:center}
.side-caption,.profile small{font-size:16px;line-height:1.8}
.side-bottom{padding-top:24px}
.profile strong,.avatar{font-size:17px}
.topbar,html[lang=ar] .topbar{height:auto;min-height:96px;padding-top:15px;padding-bottom:15px;flex-wrap:wrap}
.breadcrumb{font-size:16px;line-height:1.7}
.top-actions{gap:10px;flex-wrap:wrap}
.saved{font-size:16px}
.language-toggle{font-size:17px}
.page-heading p,html[lang=ar] .page-heading p{font-size:19px;line-height:1.8}
.page-heading{align-items:flex-start;flex-wrap:wrap}
.page-heading>div:first-child{min-width:0}
.badge{font-size:16px;padding:6px 10px;white-space:normal;line-height:1.6}
.welcome{grid-template-columns:minmax(0,1fr) 215px}
.welcome h2{font-size:34px;line-height:1.5}
.welcome p{font-size:19px;line-height:1.85}
.welcome-graphic{padding:24px 10px 90px;min-height:260px}
.graphic-caption{font-size:16px;letter-spacing:.5px;text-align:center;padding:0 15px}
.stat{padding:23px}
.stat .label{font-size:18px;line-height:1.7}
.stat strong{font-size:42px;line-height:1.35;margin:13px 0}
.stat small{font-size:16px;line-height:1.8;display:block}
.panel-head{align-items:flex-start;flex-wrap:wrap}
.panel-head p{font-size:17px;line-height:1.7}
.step strong{font-size:19px}
.step p{font-size:17px;line-height:1.75}
.step-num{font-size:17px;width:40px;height:40px}
.step{gap:15px;flex-wrap:wrap}
.step>div:nth-child(2){flex:1;min-width:180px}
.notice,.check-list{font-size:18px;line-height:1.8}
.card-footer{font-size:16px;line-height:1.8}
th{font-size:16px;letter-spacing:.2px;line-height:1.7}
th button.small{font-size:16px;line-height:1.7;text-align:inherit;min-height:30px}
td{font-size:18px;line-height:1.7}
td small{font-size:16px;line-height:1.7}
.tabs button{font-size:17px}
.field{font-size:18px;gap:9px;line-height:1.7}
.field small{font-size:16px;line-height:1.75}
.form-grid{gap:22px}
dialog{width:min(760px,94vw)}
dialog p{font-size:18px;line-height:1.8}
.switches label{font-size:18px}
.import-text{font-size:16px;line-height:1.75;min-height:210px}
.option-card p{font-size:17px;line-height:1.75}
.day-head{font-size:18px;padding:18px 12px}
.time-label{height:var(--calendar-hour);font-size:16px;padding:12px 9px}
.day-track{background:repeating-linear-gradient(to bottom,transparent,transparent calc(var(--calendar-hour) - 1px),#e7ece7 calc(var(--calendar-hour) - 1px),#e7ece7 var(--calendar-hour))}
.event{font-size:16px;line-height:1.4;padding:10px 11px;overflow:auto;min-height:0}
.event strong{font-size:18px;line-height:1.45;margin:6px 0}
.event small{font-size:16px;line-height:1.45;opacity:1}
.legend{font-size:16px;line-height:1.7;gap:16px}
.login-box{width:420px;max-width:100%}
.login-box h2,html[lang=ar] .login-box h2{font-size:38px}
.login-footer{font-size:16px;line-height:1.85}
.login-story>.brand small,.login-story .side-caption{font-size:16px}
.login-story p{font-size:18px;line-height:1.85}
.login-story h1,html[lang=ar] .login-story h1{font-size:40px}
.bar-heading{font-size:19px;line-height:1.6;flex-wrap:wrap}
.bar-heading strong{font-size:18px}
.bar-heading small,.bar-caption{font-size:16px;line-height:1.75}
.bar-caption{gap:12px;flex-wrap:wrap}
.bar-track{height:16px}
.chart-bars{gap:27px}
.load-chart{overflow-x:auto;padding-top:8px}
.load-chart svg{min-width:560px}
.load-chart figcaption{font-size:17px;line-height:1.7}
.mix-chart{grid-template-columns:180px minmax(0,1fr);gap:22px}
.mix-key{font-size:18px;line-height:1.7;gap:12px}
.summary-bar{font-size:17px;grid-template-columns:minmax(140px,1fr) minmax(100px,2fr) 90px;gap:16px}
.summary-bar strong{font-size:16px}
@media(max-width:1200px){
 .two-col{grid-template-columns:minmax(0,1fr)}
 .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 .welcome{grid-template-columns:minmax(0,1fr) 170px}
 .welcome h2{font-size:30px}
 .shell{grid-template-columns:255px minmax(0,1fr)}.sidebar{width:255px;padding:22px 14px}
 .sidebar nav button{font-size:17px}
 .top-actions{justify-content:flex-start}
}
@media(max-width:720px){
 body,html[lang=ar] body{font-size:18px}
 .shell{display:block}.sidebar{width:100%;height:auto;max-height:none;overflow:visible;padding:18px 15px}
 .sidebar nav{gap:6px}.sidebar nav button{font-size:17px;padding:11px 12px;flex-shrink:0}
 .sidebar .brand strong{font-size:26px}
 .topbar,html[lang=ar] .topbar{padding:16px 15px;gap:14px}
 .breadcrumb{font-size:16px;max-width:none;width:100%}
 .top-actions{width:100%;justify-content:flex-start;gap:10px}
 .top-actions button,.language-toggle{font-size:17px;padding:10px 13px}
 .content{padding:25px 16px}
 h1,html[lang=ar] h1{font-size:34px}h2{font-size:25px}
 .page-heading p,html[lang=ar] .page-heading p{font-size:18px}
 .eyebrow,html[lang=ar] .eyebrow{font-size:16px}
 .welcome{display:block}.welcome-text{padding:25px 21px}.welcome h2{font-size:29px}.welcome p{font-size:18px}
 .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat{padding:18px 15px}
 .stat strong{font-size:36px}.stat .label{font-size:17px}.stat small{font-size:16px}
 .panel-head,.panel-body{padding:20px 18px}.panel-head h2{font-size:24px}
 .summary-bar{grid-template-columns:1fr 90px;gap:10px;font-size:17px}.summary-bar .bar-track{grid-column:1/-1;grid-row:2}
 .mix-chart{grid-template-columns:140px minmax(0,1fr);gap:14px}.mix-key{font-size:17px}
 .form-grid{gap:20px}.field{font-size:18px}
 .login-story{padding:28px 20px}.login-story h1,html[lang=ar] .login-story h1{font-size:30px}
 .login-story>.brand strong{font-size:29px}.login-story>.brand small,.login-story .side-caption{font-size:16px}
 .login-form{padding:90px 25px 36px}.login-box h2,html[lang=ar] .login-box h2{font-size:34px}
 .login-footer{font-size:16px}
}
@media(max-width:380px){.stats{grid-template-columns:minmax(0,1fr)}.mix-chart{grid-template-columns:minmax(0,1fr)}.mix-chart svg{max-width:190px;margin:auto}}
@media print{.time-label{height:var(--calendar-hour)}.event{font-size:16px}.day-track{background-size:auto var(--calendar-hour)}}
