/* Shared typography and readable staff/manager controls. */
html,body,body *,input,button,select,textarea,::before,::after{font-family:'IBM Plex Sans Arabic',Tahoma,sans-serif!important}
.shell,.reference-owner,.owner-layout{font-size:20px;line-height:1.65}
.content,.owner-main{max-width:1700px;margin-inline:auto;width:100%;box-sizing:border-box}
.shell h1,.owner-layout h1{font-size:clamp(30px,2.5vw,40px);line-height:1.3;font-weight:800}
.shell h2,.owner-layout h2{font-size:26px;font-weight:800}.shell h3,.owner-layout h3{font-size:23px}
.shell p,.owner-layout p,.shell .muted,.owner-layout .muted{font-size:19px;line-height:1.65}
.shell small,.owner-layout small{font-size:17px!important;line-height:1.5}
.sidebar .nav-item,.owner-sidebar .nav-item{font-size:20px!important;min-height:52px;gap:12px;padding-block:11px;line-height:1.3}
.sidebar,.owner-sidebar{overflow-y:auto;scrollbar-width:thin}.sidebar-label{font-size:17px!important}
.detail-icon{width:22px;height:22px;min-width:22px;vertical-align:middle;display:inline-block;margin-inline-end:8px;stroke-width:1.8;color:var(--accent,#7f1d1d)}
.sidebar .detail-icon,.owner-sidebar .detail-icon{color:inherit}
.btn .detail-icon,.badge .detail-icon,.work-status .detail-icon{color:inherit}
.shell :is(h1,h2,h3) svg,.owner-layout :is(h1,h2,h3) svg{width:26px;height:26px;vertical-align:middle;margin-inline-end:8px}
.shell .btn,.owner-layout .btn{font-size:19px;min-height:46px;gap:8px;line-height:1.3}.shell .btn.small,.owner-layout .btn.small{font-size:18px;padding:10px 14px}
.shell .field>span,.owner-layout .field>span{font-size:19px;font-weight:700;display:flex;align-items:center;gap:5px;margin-bottom:8px}
.shell :is(input,select,textarea),.owner-layout :is(input,select,textarea){font-size:20px;min-height:50px;padding:11px 14px;border-radius:12px;box-sizing:border-box}
.shell .check,.owner-layout .check{display:flex;align-items:center;gap:10px;font-size:19px;line-height:1.45;cursor:pointer}
.shell input[type=checkbox],.owner-layout input[type=checkbox]{width:21px;height:21px;min-height:21px;min-width:21px;padding:0;margin:0;accent-color:var(--accent,#7f1d1d);flex:0 0 21px}
.shell .badge,.owner-layout .badge{font-size:17px!important;padding:6px 12px;border:1px solid currentColor;font-weight:700}
.shell .table-wrap,.owner-layout .table-wrap{border:1px solid #e7dede;border-radius:16px;overflow:auto}
.shell table,.owner-layout table{font-size:20px;line-height:1.6;width:100%;border-collapse:collapse}
.shell th,.owner-layout th{font-size:19px;font-weight:800;background:#f8f0ef;padding:16px 18px;border-bottom:2px solid #e7d0cc;text-align:right}
.shell td,.owner-layout td{padding:17px 18px;border-bottom:1px solid #eee5e3;vertical-align:middle}
.shell tbody tr:nth-child(even),.owner-layout tbody tr:nth-child(even){background:#fcfaf9}.shell tbody tr:hover,.owner-layout tbody tr:hover{background:#fff5f2}
.shell .tabulator,.owner-layout .tabulator{font-size:20px!important;border:1px solid #e7dede;border-radius:14px;overflow:hidden}
.shell .tabulator .tabulator-header,.owner-layout .tabulator .tabulator-header{font-size:19px;background:#f8f0ef;font-weight:800}
.tabulator .tabulator-row .tabulator-cell{padding:16px!important;line-height:1.6;min-height:64px}
.detail-grid>div{padding:16px;border:1px solid #ece4e1;border-radius:12px;background:#fcfaf9}.detail-grid strong{display:block;font-size:21px;line-height:1.5}
.staff-request-card{gap:18px;padding:20px!important;flex-wrap:wrap}.staff-request-card .field{flex:1 1 240px;max-width:450px}
.staff-request-card>div{flex:1 1 260px}.owner-json{font-size:17px!important;max-width:100%;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}
.work-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}
.work-summary article{background:#fff;border:1px solid #e8dedb;border-radius:16px;padding:20px}.work-summary strong{display:block;font-size:26px;font-weight:800;margin-top:7px}.work-summary small{display:block;color:#687d85}
.work-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;align-items:start}.work-layout>.section{margin:0;padding:26px}
.work-card-head{display:flex;align-items:center;gap:12px;border-bottom:1px solid #ece3e0;padding-bottom:16px;margin-bottom:20px}.work-card-head>svg{width:36px;height:36px;background:#fcf0ec;padding:10px;border-radius:14px;color:var(--accent)}.work-card-head h2{margin:0}.work-card-head p{margin:4px 0 0}
.work-days{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.work-days label{padding:12px;border:1px solid #e6dedb;border-radius:10px;background:#faf9f8}.work-days label:has(input:checked){background:#fff1eb;border-color:#ab6758;color:#6a2118}
.work-presets{display:flex;gap:8px;flex-wrap:wrap}.work-presets button{flex:1;border:1px solid #dac4bd;background:#fff7f3;color:#792d20;border-radius:10px;padding:10px;font-size:18px;cursor:pointer}
.work-footer{border-top:1px solid #ece3e0;padding-top:18px;margin-top:6px;display:flex;justify-content:flex-start}.work-footer .btn{width:auto;min-width:200px}
.work-log{margin-top:24px}.work-status{display:inline-flex;align-items:center;gap:8px;border-radius:20px;padding:5px 12px;font-weight:700;background:#e9f7ef;color:#176a42}.work-status.off{background:#f3f0ed;color:#6e6660}
@media(max-width:1100px){.work-layout{grid-template-columns:1fr}.work-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.shell,.reference-owner,.owner-layout{font-size:19px}.work-summary{grid-template-columns:1fr}.work-summary article{padding:16px}.work-summary strong{font-size:24px}.work-layout>.section{padding:18px}.work-days{grid-template-columns:repeat(2,minmax(0,1fr))}.work-footer .btn{width:100%}.shell h2,.owner-layout h2{font-size:24px}.detail-grid{grid-template-columns:1fr}.detail-icon{width:21px;height:21px;min-width:21px}.work-summary small{font-size:17px}}
/* Sidebar navigation needs a stable column, independent of content typography. */
.shell .sidebar,.reference-owner .owner-sidebar{width:292px;min-width:292px;flex:0 0 292px;padding:16px 12px;overflow-x:hidden;overflow-y:auto}
.owner-layout.reference-owner{grid-template-columns:292px minmax(0,1fr)}
.shell .sidebar .nav-item,.reference-owner .owner-sidebar .nav-item{display:flex;align-items:center;justify-content:flex-start;flex:0 0 auto;width:100%;height:auto;min-height:48px;margin:4px 0;padding:11px 12px;gap:12px;font-size:18px!important;line-height:1.45;white-space:nowrap;transform:none;text-align:right}
.shell .sidebar .nav-item>span:not(.nav-icon):not(.nav-count),.reference-owner .owner-sidebar .nav-item>span:not(.nav-count){flex:1;min-width:0;white-space:nowrap;line-height:1.45}
.shell .sidebar .nav-icon,.reference-owner .owner-sidebar .nav-item>svg{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;margin:0}
.shell .sidebar .nav-icon svg,.reference-owner .owner-sidebar .nav-item>svg{width:22px;height:22px;stroke-width:1.8}
.shell .sidebar-brand,.reference-owner .ref-sidebar-brand{flex:none;min-height:84px;padding:14px 12px 20px;margin:0 0 14px;border-bottom:1px solid #ffffff22;gap:12px;font-size:25px;line-height:1.35}
.shell .sidebar-brand small,.reference-owner .ref-sidebar-brand small{font-size:16px!important;line-height:1.5;margin-top:5px}
.shell .sidebar .sidebar-label,.reference-owner .owner-sidebar .sidebar-label{font-size:15px!important;margin:4px 12px 10px;line-height:1.5}
.shell .sidebar-bottom,.reference-owner .ref-sidebar-footer{flex:none;margin-top:18px;padding-top:12px;border-top:1px solid #ffffff22}
.shell .sidebar .nav-count,.reference-owner .owner-sidebar .nav-count{flex:none;margin-inline-start:auto;font-size:14px!important}
@media(max-width:900px){.shell .sidebar,.reference-owner .owner-sidebar{width:min(292px,calc(100vw - 40px));min-width:0;right:-320px;flex-basis:auto}.shell .sidebar.open,.reference-owner .owner-sidebar.open{right:0}.owner-layout.reference-owner{grid-template-columns:minmax(0,1fr)}}

/* Balanced workspace rhythm; navigation retains its fixed, single-line geometry. */
.shell,.owner-layout{font-size:18px;line-height:1.75}
.shell h1,.owner-layout h1{font-size:clamp(26px,2.2vw,32px);font-weight:700;line-height:1.5;margin-bottom:8px}
.shell h2,.owner-layout h2{font-size:23px;line-height:1.6;font-weight:600}.shell h3,.owner-layout h3{font-size:20px;line-height:1.6}
.shell p,.owner-layout p,.shell .muted,.owner-layout .muted{font-size:17px;line-height:1.8}
.shell small,.owner-layout small{font-size:15px!important;line-height:1.7}
.shell .btn,.owner-layout .btn,.shell .btn.small,.owner-layout .btn.small,.shell .field>span,.owner-layout .field>span,.shell .check,.owner-layout .check{font-size:17px;line-height:1.6}
.shell :is(input,select,textarea),.owner-layout :is(input,select,textarea){font-size:17px;line-height:1.6}
.shell table,.owner-layout table,.shell th,.owner-layout th{font-size:17px;line-height:1.8}
.shell .tabulator,.owner-layout .tabulator,.shell .tabulator .tabulator-header,.owner-layout .tabulator .tabulator-header{font-size:17px!important}
.page-heading{margin-bottom:28px}.content>.section{margin-block:24px}.section>h2{margin-top:0;margin-bottom:18px}
.team-table td{min-width:150px}.temporary-role-summary{display:block;color:#697480;margin-top:6px;max-width:280px}
.role-permanent{border-top:1px solid #e9e3e0;padding-top:22px;margin-top:24px}.role-permanent summary{cursor:pointer;font-weight:600}
.musaned-upload{border:2px dashed #d5c6c1;border-radius:18px;padding:28px;background:#fdfaf9}.musaned-upload input{width:100%;background:white}.musaned-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.musaned-summary>div{padding:14px;background:#faf7f5;border-radius:12px}.musaned-summary dt{color:#687580;font-size:15px}.musaned-summary dd{margin:5px 0 0;font-weight:600;overflow-wrap:anywhere}.musaned-file{padding:20px;border:1px solid #e6dfdb;border-radius:16px;margin-top:18px}
@media(max-width:600px){.musaned-summary{grid-template-columns:1fr}.content{padding:20px 16px}.shell h1{font-size:26px}.shell .section{padding:20px}}

.modal{font-size:18px;line-height:1.75}.modal h2{font-size:23px;line-height:1.6}.modal p,.modal .field>span,.modal .btn{font-size:17px;line-height:1.8}.modal :is(input,select,textarea){font-size:17px;min-height:48px}.modal .stack{gap:20px}.modal .detail-grid{gap:16px}.modal-body{padding:24px}
