@import url("adaa-foundation.css");

/* Aljouf Health Cluster brand fonts (Janna LT + Saudi Font) */
@font-face{font-family:"Janna LT";src:url("res/fonts/alfont_com_Janna-LT-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Janna LT";src:url("res/fonts/alfont_com_Janna-LT-Bold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Saudi";src:url("res/fonts/Saudi-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+FB50-FDFF,U+FE70-FEFF}
@font-face{font-family:"Saudi";src:url("res/fonts/Saudi-Bold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+FB50-FDFF,U+FE70-FEFF}

:root{--bg:#f4f8fc;--panel:#fff;--soft:#eef4fb;--text:#0c2a52;--muted:#5c7a99;--line:#e2e8ee;--brand:#1691d0;--brand2:#15508a;--ok:#48ad48;--warn:#ad6800;--bad:#bd3545;--nav-width:17.5rem;--content-width:1360px;--s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.5rem;--s6:2rem;--control:2.875rem}
html[data-theme=dark]{--bg:#0a1a2e;--panel:#122539;--soft:#173250;--text:#eef6fc;--muted:#9fb6d0;--line:#26425f;--brand:#2fa9e0;--brand2:#7fc9ec;--ok:#5ad391;--warn:#f4b84c;--bad:#ff7686}
*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background:var(--bg)!important;color:var(--text)!important;font-family:"Janna LT","Saudi",Tajawal,system-ui,sans-serif}.app{display:grid;min-height:100vh}.side{position:sticky;top:0;display:flex;flex-direction:column;border-inline-end:1px solid var(--line);z-index:20}.main{min-width:0}.content-area{display:block!important;min-height:0!important;padding:0!important}.top{display:flex;align-items:center;justify-content:space-between}.top-actions{display:none}.nav-backdrop{border:0}
.hero,.admin-hero{background:var(--panel);border:1px solid var(--line);color:var(--text)}.hero{display:flex;align-items:center;justify-content:space-between;position:relative;overflow:hidden}.hero h2{color:var(--brand)}.quick-icon,.section-icon{display:grid;place-items:center;background:var(--soft);color:var(--brand);border-radius:.75rem}.quick-icon svg{width:1.35rem;height:1.35rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.shortcuts{display:grid}.quick{display:block;background:var(--panel);border:1px solid var(--line);color:var(--text);text-decoration:none}.quick:hover{border-color:var(--brand);color:var(--text)}
.icon-btn{border:1px solid var(--line);background:var(--panel);color:var(--text);min-height:44px;border-radius:.75rem;cursor:pointer;font-family:inherit}.avatar{width:40px;height:40px;border-radius:.75rem;display:grid;place-items:center;background:var(--brand);font-weight:900}.user{display:flex;gap:.7rem;align-items:center}.saas-muted{color:var(--muted)!important}.primary{background:var(--brand);border:0;border-radius:.75rem;text-decoration:none;font-weight:800}.section-head{display:flex;align-items:center;justify-content:space-between}.section-head h2{margin:0}
.admin-table-card,.admin-section-card{background:var(--panel)!important;border-color:var(--line)!important}.admin-table{color:var(--text)!important}.admin-table th,.admin-table td{border-color:var(--line)!important}.admin-table thead th{background:var(--soft)!important;color:var(--muted)!important}.form-control,.form-select{background-color:var(--panel)!important;color:var(--text)!important;border-color:var(--line)!important}.form-control:focus,.form-select:focus{border-color:var(--brand)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 20%,transparent)!important}.admin-page-header{padding-top:1.5rem!important}.btn-admin.is-success,.submit-btn{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}html[data-theme=dark] .btn-admin.is-success,html[data-theme=dark] .submit-btn{color:#08243f!important}
.form-control[type=number],.form-control[type=file]{color-scheme:inherit;transition:border-color .18s cubic-bezier(.22,1,.36,1),box-shadow .18s cubic-bezier(.22,1,.36,1)!important}.form-control[type=file]::file-selector-button{background:var(--soft)!important;color:var(--text)!important;border-color:var(--line)!important;transition:none!important}
body{overflow-x:hidden}.app{grid-template-columns:var(--nav-width) minmax(0,1fr)}
.side{height:100dvh;padding:0 1rem 1.25rem;overflow:hidden;background:var(--panel)}
.logo{display:block;width:13.5rem;max-width:100%;height:6.25rem;margin:1rem auto .75rem;object-fit:contain}
.mobile-nav-toggle{display:none;width:var(--control);height:var(--control);border:1px solid var(--line);border-radius:.75rem;background:var(--panel);color:var(--text);align-items:center;justify-content:center;cursor:pointer;flex:none}
.mobile-nav-toggle svg{width:1.35rem;height:1.35rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.side-menu-content{display:flex;min-height:0;flex:1;flex-direction:column;direction:inherit;text-align:start}.nav{display:grid;gap:var(--s1)}
.nav a,.side-utilities .icon-btn,.side-logout .logout{width:100%;min-height:var(--control);padding:.7rem .875rem;border:1px solid transparent;border-radius:.75rem;background:transparent;color:var(--muted);display:flex;align-items:center;justify-content:flex-start;gap:.75rem;text-decoration:none;font-family:"Janna LT","Saudi",Tajawal,system-ui;font-size:.88rem;line-height:1.4;font-weight:700;box-shadow:none}
.nav a:hover,.nav a.active,.side-utilities .icon-btn:hover,.side-logout .logout:hover{background:var(--soft);color:var(--brand)}.nav a.active{border-color:color-mix(in srgb,var(--brand) 16%,var(--line))}
.nav svg,.side-utilities svg,.side-logout svg{width:1.3rem;height:1.3rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.side-actions{display:grid;gap:var(--s1);margin-top:var(--s5)}.side-utilities{display:grid;gap:var(--s1)}.side-logout{margin-top:auto}.side-foot{margin-top:var(--s3);padding-top:.9rem;border-top:1px solid var(--line)}
.avatar,.primary{color:#fff}html[data-theme=dark] .avatar,html[data-theme=dark] .primary{color:#08243f}
.main{width:100%;max-width:var(--content-width);margin:0 auto;padding:0 clamp(1.5rem,3vw,3rem) 3rem}.top{min-height:6.25rem;margin:0;gap:var(--s4)}.top h1{font-size:1.5rem;line-height:1.25}.top p{font-size:.875rem}.top-actions{display:none}
.hero{min-height:10rem;padding:var(--s6);border-radius:1.25rem;box-shadow:0 12px 36px color-mix(in srgb,var(--text) 8%,transparent)}.hero h2{font-size:clamp(1.45rem,2vw,1.8rem);line-height:1.3;letter-spacing:-.015em;text-wrap:balance}.hero p{font-size:.9rem}.primary{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding-inline:1.25rem}
.section-head{margin:var(--s6) 0 .875rem}.section-head h2,.divider-label{font-size:1.05rem}.shortcuts,.admin-sections{grid-template-columns:repeat(4,minmax(0,1fr));gap:.875rem}.quick,.admin-section-card{min-width:0;padding:1.125rem;border-radius:1rem}.quick-icon,.section-icon{width:2.75rem;height:2.75rem}.quick h3,.admin-section-card h3{margin:var(--s4) 0 .3rem;font-size:.95rem}.quick p,.admin-section-card p{font-size:.8rem;line-height:1.7}.section-icon svg{width:1.45rem;height:1.45rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.admin-table-card{max-width:100%;overflow-x:auto;border-radius:1rem}.admin-table{min-width:42rem}.admin-table th,.admin-table td{padding:.8rem 1rem}.admin-table th{font-weight:800}
.nav a,.side-utilities .icon-btn,.side-logout .logout,.mobile-nav-toggle,.primary,.quick,.admin-section-card{transition:background-color .18s cubic-bezier(.22,1,.36,1),color .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s cubic-bezier(.22,1,.36,1)}
.nav-backdrop{display:none}
@media(max-width:1100px) and (min-width:992px){:root{--nav-width:14rem}.side{padding-inline:.75rem}.logo{width:10.75rem;height:5.5rem}.nav a,.side-utilities .icon-btn,.side-logout .logout{padding-inline:.7rem;font-size:.82rem;gap:.55rem;justify-content:flex-start}.nav a span{display:inline!important}.side-foot{display:block!important}.main{padding-inline:1.5rem}.shortcuts,.admin-sections{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding:1.5rem}}
@media(max-width:991.98px){
 body.nav-open{overflow:hidden}.app{display:block;padding:0}.side{height:4.5rem;min-height:4.5rem;position:sticky;top:0;z-index:30;overflow:visible;display:flex;flex-direction:row;align-items:center;padding:.35rem .75rem;border:0;border-bottom:1px solid var(--line)}
 .logo{width:9rem;height:3.75rem;max-width:calc(100% - 4rem);margin:0}.mobile-nav-toggle{display:inline-flex;margin-inline-start:auto}.side.is-open .mobile-nav-toggle{background:var(--soft);color:var(--brand)}
 .side-menu-content{display:none;position:fixed;z-index:32;top:5rem;inset-inline:.5rem;max-height:calc(100dvh - 5.5rem);overflow-y:auto;overscroll-behavior:contain;padding:.65rem;background:var(--panel);border:1px solid var(--line);border-radius:1rem;box-shadow:0 20px 55px #0005;direction:inherit;text-align:start}.side.is-open .side-menu-content{display:flex}
 .nav{gap:.2rem}.nav a,.nav a:nth-child(n){display:flex;width:100%;min-height:44px;padding:.7rem .875rem;justify-content:flex-start}.nav a span{display:inline}.side-actions{margin-top:.65rem;padding-top:.65rem;border-top:1px solid var(--line)}.side-logout{margin-top:.65rem;padding-top:.65rem;border-top:1px solid var(--line)}.side-foot{display:block;margin-top:.65rem;padding:.85rem .25rem .25rem}
 .nav-backdrop{position:fixed;z-index:29;inset:4.5rem 0 0;background:#0007}.nav-backdrop.is-visible{display:block}
 .main{width:100%;padding:0 .75rem 3rem}.top{min-height:4.5rem}.top h1{font-size:1.2rem}.top p{max-width:58vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem}
 .hero{min-height:0;padding:1.25rem;gap:var(--s4);border-radius:1rem}.hero h2{font-size:1.35rem}.hero p{font-size:.82rem}.primary{width:100%}.shortcuts,.admin-sections{grid-template-columns:1fr;gap:.65rem}.quick,.admin-section-card{display:grid;grid-template-columns:2.75rem minmax(0,1fr);column-gap:.875rem;align-items:center;padding:.875rem}.quick-icon,.section-icon{grid-row:1/3}.quick h3,.admin-section-card h3{margin:0 0 .2rem}.section-head,.divider-label{margin-top:1.5rem}.admin-table{min-width:35rem}
}
@media(max-width:360px){.side{padding-inline:.5rem}.logo{width:7.75rem}.main{padding-inline:.6rem}.hero h2{font-size:1.2rem}.quick,.admin-section-card{border-radius:.875rem}}
@media(max-width:650px){.nav{margin-inline-start:0}}
@media(prefers-reduced-motion:reduce){.nav a,.side-utilities .icon-btn,.side-logout .logout,.mobile-nav-toggle,.primary,.quick,.admin-section-card{transition:none}}

/* Upload workflow */
.admin-page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.breadcrumb-trail{color:var(--muted)}.breadcrumb-trail a{color:var(--muted)}
.admin-table-card{box-shadow:none!important}.admin-table-card>.divider-label{margin-top:0}.admin-table-card table{margin-bottom:0}.admin-table td,.admin-table th{vertical-align:middle}.admin-pill{white-space:nowrap}.wp-actions{display:flex;justify-content:flex-end;align-items:center;gap:.4rem}.wp-actions form{margin:0}.confirm-btn,.btn-admin{min-height:40px;display:inline-flex;align-items:center;justify-content:center}.pagination{gap:.25rem}.page-link{background:var(--panel)!important;color:var(--text)!important;border-color:var(--line)!important}.page-item.active .page-link{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}
@media(max-width:640px){.admin-page-header{align-items:flex-start}.admin-page-header h1{font-size:1.35rem}.admin-table-card.p-4,.admin-table-card.p-md-5{padding:1rem!important}#uploadForm .col-12>div[style]{flex:0 0 100%!important;max-width:100%!important}.admin-table-card{overflow-x:auto}.wp-actions{min-width:15rem}.confirm-btn,.btn-admin{min-height:44px}.modal-dialog{margin:.75rem}.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Shared component vocabulary for the approved application design */
.admin-sections{display:grid}.admin-section-card{display:block;background:var(--panel);border:1px solid var(--line);border-radius:1rem;padding:1.125rem;color:var(--text);text-decoration:none}.admin-section-card:hover{border-color:var(--brand);color:var(--text)}.admin-section-card h3{margin:1rem 0 .3rem;font-size:.95rem;color:var(--text)}.admin-section-card p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.7}.divider-label{display:flex;align-items:center;gap:.75rem;color:var(--text);font-weight:800}.admin-table-card{background:var(--panel);border:1px solid var(--line);border-radius:1rem}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:.8rem 1rem;border-top:1px solid var(--line)}.admin-table thead th{border-top:0}.admin-empty{padding:2rem;text-align:center;color:var(--muted)}.admin-pill{display:inline-block;padding:.3rem .6rem;border-radius:999px;background:var(--soft);font-size:.72rem;font-weight:800}.admin-pill.is-success{color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,transparent)}.admin-pill.is-warning{color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent)}
/* Exact Home parity with the approved preview */
.hero:after{left:-70px;right:auto;inset-inline-end:auto}
.nav a:focus-visible,.side-utilities .icon-btn:focus-visible,.side-logout .logout:focus-visible,.mobile-nav-toggle:focus-visible,.primary:focus-visible,.quick:focus-visible,.admin-section-card:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 55%,transparent);outline-offset:2px}.nav a:active,.side-utilities .icon-btn:active,.side-logout .logout:active,.primary:active{transform:translateY(1px)}.user{min-width:0}.user>div:last-child{min-width:0}.user b,.user .saas-muted{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick h3,.quick p,.admin-section-card h3,.admin-section-card p{overflow-wrap:anywhere}@media(hover:none){.quick:hover,.admin-section-card:hover{transform:none;box-shadow:none}}
.hero:after{content:"";position:absolute;width:260px;height:260px;border:50px solid color-mix(in srgb,var(--brand) 12%,transparent);border-radius:50%;inset-inline-end:-70px;top:-100px;pointer-events:none}.hero>div,.hero>.primary{position:relative;z-index:1}.hero h2{margin:0 0 .5rem}.hero p{margin:0;color:var(--muted)}.quick h3{color:var(--text)}.quick p{margin-bottom:0;color:var(--muted)}

/* Approved application design */
.hero{box-shadow:none;background:transparent;border-color:var(--line)}
.hero:after{display:none}
.hero-motif{position:absolute;z-index:0;inset:0;width:100%;pointer-events:none;opacity:.34;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='150' viewBox='0 0 220 150'%3E%3Cg fill='%238b9294'%3E%3Cpath d='M18 4C31 13 38 23 38 34c0 12-9 21-20 21S-2 46-2 34C-2 23 5 13 18 4Z'/%3E%3Cpath d='M82 18c13 9 20 19 20 30 0 12-9 21-20 21s-20-9-20-21c0-11 7-21 20-30Z'/%3E%3Cpath d='M148 2c13 9 20 19 20 30 0 12-9 21-20 21s-20-9-20-21c0-11 7-21 20-30Z'/%3E%3Cpath d='M204 31c11 8 17 17 17 26 0 11-7 18-17 18s-17-7-17-18c0-9 6-18 17-26Z'/%3E%3Cpath d='M48 79c12 9 19 18 19 29 0 11-8 20-19 20s-19-9-19-20c0-11 7-20 19-29Z'/%3E%3Cpath d='M119 91c12 9 19 18 19 29 0 11-8 20-19 20s-19-9-19-20c0-11 7-20 19-29Z'/%3E%3Cpath d='M185 86c12 9 19 18 19 29 0 11-8 20-19 20s-19-9-19-20c0-11 7-20 19-29Z'/%3E%3C/g%3E%3Cg fill='%2312a97a'%3E%3Cpath d='M116 36c12 9 19 18 19 29 0 11-8 20-19 20s-19-9-19-20c0-11 7-20 19-29Z'/%3E%3Cpath d='M15 105c11 8 17 17 17 26 0 11-7 18-17 18s-17-7-17-18c0-9 6-18 17-26Z'/%3E%3C/g%3E%3Cg fill='none' stroke='%238b9294' stroke-width='5'%3E%3Cpath d='M51 8c12 9 19 18 19 29 0 11-8 20-19 20S32 48 32 37c0-11 7-20 19-29Z'/%3E%3Cpath d='M157 70c12 9 19 18 19 29 0 11-8 20-19 20s-19-9-19-20c0-11 7-20 19-29Z'/%3E%3C/g%3E%3C/svg%3E");background-size:13.75rem 9.375rem;background-repeat:repeat;background-position:center}
.hero-motif svg{display:none}
.hero-motif{display:none}
.hero-motif-image{position:absolute;z-index:0;top:50%;left:50%;width:100%;height:100%;object-fit:cover;object-position:50% 50%;transform:translate(-50%,-50%);pointer-events:none;image-rendering:auto;filter:saturate(.92) contrast(.96);-webkit-mask-image:linear-gradient(90deg,transparent 0%,transparent 24%,#000 42%,#000 50%,rgba(0,0,0,.12) 70%,transparent 88%);mask-image:linear-gradient(90deg,transparent 0%,transparent 24%,#000 42%,#000 50%,rgba(0,0,0,.12) 70%,transparent 88%)}
html[dir=ltr] .hero-motif-image{-webkit-mask-image:linear-gradient(270deg,transparent 0%,transparent 24%,#000 42%,#000 50%,rgba(0,0,0,.12) 70%,transparent 88%);mask-image:linear-gradient(270deg,transparent 0%,transparent 24%,#000 42%,#000 50%,rgba(0,0,0,.12) 70%,transparent 88%)}
html[data-theme=dark] .hero-motif-image{opacity:.3;filter:saturate(.82) brightness(.88)}
@media(max-width:640px){.hero-motif-image{opacity:.28}html[data-theme=dark] .hero-motif-image{opacity:.18}}
@media(max-width:1100px) and (min-width:641px){.hero-motif-image{object-position:50% 52%;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 28%,#000 66%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 28%,#000 66%,transparent 100%)}}
@media(max-width:1100px){.hero>.primary{display:none}}
.hero>.primary{display:none}
@media(max-width:640px){.hero-motif-image{object-position:50% 50%;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 38%,#000 62%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 38%,#000 62%,transparent 100%)}}
@media(min-width:1400px){.hero-motif-image{object-fit:fill}}
.hero-motif-image,html[data-theme=dark] .hero-motif-image,html[dir=ltr] .hero-motif-image{opacity:1;filter:none;-webkit-mask-image:none;mask-image:none}
html[dir=rtl] .hero-motif-image{-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 58%,rgba(0,0,0,.18) 76%,transparent 92%);mask-image:linear-gradient(90deg,#000 0%,#000 58%,rgba(0,0,0,.18) 76%,transparent 92%)}
html[dir=ltr] .hero-motif-image{-webkit-mask-image:linear-gradient(270deg,#000 0%,#000 58%,rgba(0,0,0,.18) 76%,transparent 92%);mask-image:linear-gradient(270deg,#000 0%,#000 58%,rgba(0,0,0,.18) 76%,transparent 92%)}
.hero p{font-weight:900}
html[data-theme=dark] .hero-motif-image{opacity:.5}
:root{--icu-occ:#000;--icu-alos:#b85f16;--icu-longstay:#2f8068}html[data-theme=dark]{--icu-occ:#f4f6fb;--icu-alos:#d78135;--icu-longstay:#60b99c}
.icu-stat-occ{color:var(--icu-occ)!important}.icu-stat-alos{color:var(--icu-alos)!important}.icu-stat-longstay{color:var(--icu-longstay)!important}

/* Dropdown and select color system */
html[data-theme=dark]{color-scheme:dark}html[data-theme=light]{color-scheme:light}
.dropdown-menu,.dropdown-menu.glass,.settings-menu{background:var(--panel)!important;color:var(--text)!important;border:1px solid var(--line)!important;border-radius:.875rem!important;box-shadow:0 1rem 2.5rem color-mix(in srgb,var(--text) 14%,transparent)!important;padding:.45rem!important}
.dropdown-item,.dropdown-item-text{color:var(--text)!important;border-radius:.625rem;padding:.65rem .75rem!important;font-size:.875rem;line-height:1.5}
.dropdown-item:hover,.dropdown-item:focus{background:var(--soft)!important;color:var(--brand)!important}
.dropdown-item.active,.dropdown-item:active{background:color-mix(in srgb,var(--brand) 16%,var(--panel))!important;color:var(--brand)!important;font-weight:800}
.dropdown-divider{border-color:var(--line)!important;opacity:1;margin:.35rem 0!important}
select.form-control,.form-select{min-height:2.875rem;border:1px solid var(--line)!important;border-radius:.75rem!important;background-color:var(--panel)!important;color:var(--text)!important;font:700 .875rem/1.5 "Janna LT","Saudi",Tajawal,system-ui,sans-serif;padding-block:.6rem!important;cursor:pointer}
select.form-control:hover,.form-select:hover{border-color:color-mix(in srgb,var(--brand) 45%,var(--line))!important}
select.form-control:focus,.form-select:focus{border-color:var(--brand)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 20%,transparent)!important}
select.form-control:disabled,.form-select:disabled{background:var(--soft)!important;color:var(--muted)!important;cursor:not-allowed;opacity:.72}
select option,select optgroup{background:var(--panel)!important;color:var(--text)!important}
select option:checked{background:var(--brand)!important;color:var(--panel)!important}
.dropdown-menu,.dropdown-menu.glass,.settings-menu{box-shadow:0 .75rem 1.75rem color-mix(in srgb,var(--text) 9%,transparent)!important}
.adaa-select-menu{box-shadow:0 1rem 2.5rem color-mix(in srgb,var(--text) 5%,transparent)}
.adaa-select-trigger-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.adaa-select{position:relative;width:100%}.adaa-select-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;inset-inline-start:0;bottom:0}.adaa-select-trigger{width:100%;min-height:2.875rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .875rem;border:1px solid var(--line);border-radius:.75rem;background:var(--panel);color:var(--text);font:700 .875rem/1.5 "Janna LT","Saudi",Tajawal,system-ui,sans-serif;text-align:start;cursor:pointer}.adaa-select-trigger:after{content:"";width:.55rem;height:.55rem;border-inline-end:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-.15rem);color:var(--muted);flex:none}.adaa-select-trigger:hover{border-color:color-mix(in srgb,var(--brand) 45%,var(--line))}.adaa-select-trigger:focus-visible,.adaa-select.is-open .adaa-select-trigger{outline:0;border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 20%,transparent)}.adaa-select-trigger:disabled{background:var(--soft);color:var(--muted);cursor:not-allowed;opacity:.72}.adaa-select-menu{position:fixed;z-index:1055;display:none;max-height:min(20rem,calc(100dvh - 1rem));overflow-y:auto;overscroll-behavior:contain;padding:.4rem;background:var(--panel);border:1px solid var(--line);border-radius:.875rem;box-shadow:0 1rem 2.5rem color-mix(in srgb,var(--text) 5%,transparent)}.adaa-select-menu.is-open{display:block}.adaa-select-option{width:100%;min-height:2.75rem;display:flex;align-items:center;padding:.6rem .75rem;border:0;border-radius:.625rem;background:transparent;color:var(--text);font:700 .875rem/1.45 "Janna LT","Saudi",Tajawal,system-ui,sans-serif;text-align:start;cursor:pointer}.adaa-select-option:hover,.adaa-select-option:focus{outline:0;background:var(--soft);color:var(--brand)}.adaa-select-option.is-selected{background:color-mix(in srgb,var(--brand) 16%,var(--panel));color:var(--brand);font-weight:900}.adaa-select-option:disabled{color:var(--muted);cursor:not-allowed;opacity:.55}.adaa-select-group{padding:.55rem .75rem .3rem;color:var(--muted);font-size:.75rem;font-weight:900}
.hero-motif use:nth-child(2n){transform:rotate(180deg)}.hero-motif use:nth-child(3n){transform:rotate(12deg)}
.quick,.admin-section-card{box-shadow:none}
.quick:hover,.admin-section-card:hover{box-shadow:0 10px 28px color-mix(in srgb,var(--text) 9%,transparent);transform:translateY(-2px)}
.context-help{display:inline-flex;align-items:center;gap:.45rem;color:var(--brand);font-size:.8rem;font-weight:700;text-decoration:none;min-height:44px;padding:.5rem .75rem;border-radius:.7rem}
.context-help:hover{background:var(--soft);color:var(--brand)}
.context-help svg{width:1.1rem;height:1.1rem;fill:none;stroke:currentColor;stroke-width:1.8}
.mobile-table-hint{display:none;color:var(--muted);font-size:.75rem;margin:.4rem 0 .6rem}
@media(max-width:640px){.mobile-table-hint{display:block}.admin-table th:first-child,.admin-table td:first-child{position:sticky;inset-inline-start:0;z-index:1;background:var(--panel);box-shadow:-1px 0 var(--line)}.admin-table thead th:first-child{z-index:2;background:var(--soft)}.side-menu-content:focus{outline:none}}

/* Impeccable layout and typography pass */
:root{--font-caption:.75rem;--font-secondary:.875rem;--font-body:1rem;--font-subheading:1.125rem;--font-heading:1.5rem;--leading-tight:1.3;--leading-body:1.6;--space-section:2rem}
body{font-size:var(--font-body);line-height:var(--leading-body);font-kerning:normal;font-optical-sizing:auto}
.main{max-width:85rem;padding-inline:clamp(1.5rem,3vw,3rem)}
.top{min-height:6.5rem}.top h1{font-size:var(--font-heading);line-height:var(--leading-tight);font-weight:800;margin:0}.top p{font-size:var(--font-secondary);line-height:1.5;margin:.3rem 0 0}
.hero{min-height:10.5rem;padding:2rem}.hero h2{font-size:1.75rem;line-height:var(--leading-tight);font-weight:800;letter-spacing:0}.hero p{font-size:var(--font-body);line-height:1.55;max-width:65ch}
.section-head{margin:var(--space-section) 0 .875rem}.section-head h2,.divider-label{font-size:var(--font-subheading);line-height:1.4;font-weight:800}
.content-area>.divider-label{margin:var(--space-section) 0 .875rem!important}
.shortcuts,.admin-sections{gap:1rem}.quick,.admin-section-card{padding:1.25rem}.quick h3,.admin-section-card h3{font-size:var(--font-body);line-height:1.45}.quick p,.admin-section-card p{font-size:var(--font-secondary);line-height:1.65;max-width:65ch}
.nav a,.side-utilities .icon-btn,.side-logout .logout{font-size:var(--font-secondary);line-height:1.5}
.user b{font-size:var(--font-body);line-height:1.4}.user .saas-muted{font-size:var(--font-secondary);line-height:1.45}
.admin-table{font-size:var(--font-secondary);font-variant-numeric:tabular-nums}.admin-table th,.admin-table td{line-height:1.55}
.admin-pill{font-size:var(--font-caption);line-height:1.4}
@media(max-width:1100px) and (min-width:641px){.main{padding-inline:1.5rem}.hero{min-height:9.5rem}.quick,.admin-section-card{padding:1.125rem}}
@media(max-width:640px){.main{padding-inline:.875rem}.top{min-height:4.75rem}.top h1{font-size:1.25rem}.top p{font-size:.8125rem}.hero{padding:1.25rem}.hero h2{font-size:1.375rem}.hero p{font-size:.9375rem}.hero-motif{opacity:.2;background-size:11rem 7.5rem}.section-head h2,.divider-label{font-size:1.0625rem}.quick h3,.admin-section-card h3{font-size:.9375rem}.quick p,.admin-section-card p{font-size:.875rem}.context-help{font-size:.8125rem}}

.hero-motif{background-image:url('/res/hero-pattern.png');background-size:100% 100%;background-repeat:no-repeat;background-position:center;opacity:.62;filter:saturate(.92) contrast(.96);-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.42) 16%,#000 42%,#000 58%,rgba(0,0,0,.2) 82%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.42) 16%,#000 42%,#000 58%,rgba(0,0,0,.2) 82%,transparent 100%)}
html[data-theme=dark] .hero-motif{opacity:.3;filter:saturate(.82) brightness(.88)}
@media(max-width:640px){.hero-motif{background-size:100% 100%;opacity:.28;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 38%,#000 62%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 38%,#000 62%,transparent 100%)}html[data-theme=dark] .hero-motif{opacity:.18}}
.admin-page-header>div{display:flex;min-width:0;flex-direction:column}.admin-page-header h1{order:1;margin:0}.admin-page-header .breadcrumb-trail{order:2;margin:.45rem 0 0!important}
.breadcrumb-trail{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;color:var(--muted)!important;font-size:.8125rem;line-height:1.5}
.breadcrumb-trail a{color:var(--brand)!important;text-decoration:none;font-weight:800}
.breadcrumb-trail a:hover,.breadcrumb-trail a:focus{color:var(--brand2)!important;text-decoration:underline;text-underline-offset:.2em}
.breadcrumb-trail>span:not(:last-child){color:color-mix(in srgb,var(--muted) 72%,transparent)}
.breadcrumb-trail>span:last-child{color:var(--muted);font-weight:700}
.adaa-select-menu .adaa-select-group{margin:.2rem 0;padding:.55rem .75rem;border:1px solid color-mix(in srgb,var(--line) 80%,#000);border-radius:.625rem;background:color-mix(in srgb,var(--panel) 82%,#000);color:var(--text);cursor:default;pointer-events:none;user-select:none}
.guest-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem}.auth-card{width:100%;max-width:440px;padding:2.5rem 2rem;border:1px solid var(--line);border-radius:1.25rem;background:var(--panel);box-shadow:0 18px 50px color-mix(in srgb,var(--text) 10%,transparent)}.auth-logo{display:flex;justify-content:center;margin-bottom:1.75rem}.auth-logo #logoImg{width:auto;max-width:100%;height:96px;object-fit:contain}
#dashboardContent{transition:opacity .18s ease-out}#dashboardContent.is-loading{opacity:.45;pointer-events:none}
.viewer-shortcuts .viewer-department-card{min-height:7rem;padding:1rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between}.viewer-shortcuts .viewer-department-card .section-icon{width:2.25rem;height:2.25rem}.viewer-shortcuts .viewer-department-card h3{margin:.65rem 0 0;font-size:.9rem}
.uploads-hosp-toggle[aria-expanded=true] .uploads-hosp-chevron{transform:rotate(90deg)}.uploads-hosp-chevron{display:inline-block;transition:transform .15s ease}
@media(max-width:480px){.auth-logo #logoImg{height:80px}}@media(prefers-reduced-motion:reduce){#dashboardContent{transition:none}.uploads-hosp-chevron{transition:none}}

/* ===== الداشبورد المتقدمة (شاشة عرض ثابتة 100%×100%) ===== */
.adv-screen{height:100dvh;overflow:hidden;display:flex;flex-direction:column;background:var(--bg);color:var(--text)}
.adv-topbar{flex:0 0 auto;display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1rem;padding:.6rem 1.25rem;background:var(--panel);border-bottom:1px solid var(--line)}
.adv-brand img{height:2.4rem;width:auto;display:block}
.adv-title{font-size:1.05rem;font-weight:900;white-space:nowrap}
.adv-tabs{display:flex;gap:.4rem;flex-wrap:wrap}
.adv-tabs button{display:inline-flex;align-items:center;min-height:2.1rem;padding:.3rem .95rem;border:1px solid var(--line);border-radius:999px;background:var(--soft);color:var(--text);font-weight:800;font-size:.82rem;cursor:pointer}
.adv-tabs button.is-active{background:var(--brand);border-color:var(--brand);color:#fff}
.adv-filters{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-inline-start:auto}
.adv-filters fieldset{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;border:0;padding:0;margin:0;min-width:0}
.adv-filters label{display:flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:800;color:var(--muted);margin:0}
.adv-filters select,.adv-filters input[type=month]{min-height:2.1rem;padding:.25rem .55rem;border:1px solid var(--line);border-radius:.6rem;background:var(--soft);color:var(--text);font-size:.8rem;font-weight:700;max-width:11rem}
.adv-filters select:focus,.adv-filters input[type=month]:focus{outline:2px solid var(--brand);outline-offset:1px}
.adv-actions{display:flex;align-items:center;gap:.5rem}
.adv-stage{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:1.25rem;min-height:0}
.adv-hint{color:var(--muted);font-size:.85rem;margin:0 0 1rem}
.adv-loading{position:fixed;inset-inline-end:1.25rem;bottom:1.25rem;z-index:50;display:flex;align-items:center;gap:.5rem;padding:.5rem .9rem;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--text);font-size:.82rem;font-weight:800;box-shadow:0 10px 30px color-mix(in srgb,var(--text) 14%,transparent)}
.adv-legend{display:flex;gap:.9rem;flex-wrap:wrap;margin-bottom:.9rem;font-size:.85rem;font-weight:800;color:var(--text)}
.adv-legend .dot{display:inline-block;width:.7rem;height:.7rem;border-radius:50%;margin-inline-end:.35rem;vertical-align:middle}
.adv-best{color:var(--ok);font-weight:900}
.adv-delta-up{color:var(--ok);font-weight:800}
.adv-delta-down{color:var(--bad);font-weight:800}
.adv-delta-flat{color:var(--muted);font-weight:700}
.adv-tier{display:inline-block;min-width:1.6rem;text-align:center;border-radius:6px;padding:.1rem .4rem;margin-inline-start:.3rem;color:#fff;font-weight:800;font-size:.72rem}
/* بطاقات الرسوم داخل الشاشة (نسخة مختصرة من بطاقات الداشبورد) */
.adv-stage .kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
@media(max-width:1100px){.adv-stage .kpi-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.adv-stage .kpi-grid{grid-template-columns:1fr}}
.adv-stage .kpi-card{background:var(--panel);border:1px solid var(--line);border-radius:1rem;padding:.85rem .95rem;color:var(--text);box-shadow:0 10px 30px color-mix(in srgb,var(--text) 14%,transparent)}
.adv-stage .kpi-head{display:flex;align-items:center;gap:.75rem}
.adv-stage .kpi-stats{display:flex;gap:.9rem;flex-wrap:wrap}
.adv-stage .kpi-stat{text-align:center;min-width:48px}
.adv-stage .kpi-stat .v{font-size:1.1rem;font-weight:800;line-height:1.05}
.adv-stage .kpi-stat .l{font-size:.62rem;color:var(--muted);letter-spacing:.4px;text-transform:uppercase}
.adv-stage .kpi-chart{height:150px;position:relative;margin-top:.5rem}
.adv-stage .kpi-name{margin-top:.55rem;padding-top:.5rem;border-top:1px solid var(--line);font-size:.78rem;font-weight:800;color:var(--text)}
@media(max-width:900px){.adv-screen{height:auto;overflow:auto}.adv-stage{overflow:visible}}
.adv-filters input[type=number]{min-height:2.1rem;padding:.25rem .55rem;border:1px solid var(--line);border-radius:.6rem;background:var(--soft);color:var(--text);font-size:.8rem;font-weight:700;width:5.2rem}
.adv-filters input[type=number]:focus{outline:2px solid var(--brand);outline-offset:1px}
.adv-range-variant{display:inline-flex;align-items:center;gap:.35rem}

/* ===== تقارير الزيارات (مراسلة بريدية) ===== */
.vr-thread{display:flex;flex-direction:column;gap:1rem}
.vr-msg{background:var(--panel);border:1px solid var(--line);border-radius:1rem;padding:1rem 1.15rem;border-inline-start:4px solid var(--muted)}
.vr-msg.is-admin{border-inline-start-color:var(--brand)}
.vr-msg-head{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .75rem;margin-bottom:.6rem;font-size:.875rem}
.vr-msg-body{white-space:pre-line;line-height:1.8}

/* ===== محرر النصوص المنسّق ===== */
.adaa-editor{border:1px solid var(--line);border-radius:.75rem;background:var(--soft);overflow:hidden}
.adaa-editor-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.2rem;padding:.4rem .5rem;background:var(--panel);border-bottom:1px solid var(--line)}
.adaa-editor-toolbar button{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;padding:0 .4rem;border:1px solid transparent;border-radius:.5rem;background:transparent;color:var(--text);font-size:.85rem;font-weight:800;cursor:pointer;line-height:1}
.adaa-editor-toolbar button:hover{background:var(--soft);border-color:var(--line)}
.adaa-editor-toolbar button.is-active{background:var(--brand);border-color:var(--brand);color:#fff}
.adaa-editor-toolbar button svg{width:1.05rem;height:1.05rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.adaa-editor-toolbar button svg circle{fill:currentColor;stroke:none}
.adaa-editor-sep{width:1px;height:1.3rem;background:var(--line);margin:0 .25rem}
.adaa-editor-linkbar{display:flex;align-items:center;gap:.4rem;padding:.5rem;background:var(--panel);border-bottom:1px solid var(--line)}
.adaa-editor-linkbar input{flex:1;min-height:2.1rem;padding:.25rem .6rem;border:1px solid var(--line);border-radius:.5rem;background:var(--soft);color:var(--text);font-size:.85rem}
.adaa-editor-area{padding:.9rem 1rem;background:var(--panel);color:var(--text);line-height:1.9;outline:none;overflow-y:auto;max-height:26rem}
.adaa-editor-area:focus{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--brand) 45%,transparent)}
.adaa-editor.is-empty .adaa-editor-area:before{content:attr(data-placeholder);color:var(--muted);pointer-events:none;display:block}
.adaa-editor-area p{margin:0 0 .6rem}
.adaa-editor-area h3{font-size:1.05rem;font-weight:800;margin:.6rem 0 .4rem}
.adaa-editor-area ul,.adaa-editor-area ol{margin:0 0 .6rem;padding-inline-start:1.6rem}
.adaa-editor-area blockquote{margin:.4rem 0;padding:.4rem .9rem;border-inline-start:3px solid var(--brand);color:var(--muted)}
.adaa-editor-area a{color:var(--brand)}
/* عرض نص الرسالة المنسّق داخل سلسلة التقرير */
.vr-msg-body.is-html{white-space:normal}
.vr-msg-body.is-html p{margin:0 0 .6rem}
.vr-msg-body.is-html h3{font-size:1.05rem;font-weight:800;margin:.6rem 0 .4rem}
.vr-msg-body.is-html ul,.vr-msg-body.is-html ol{margin:0 0 .6rem;padding-inline-start:1.6rem}
.vr-msg-body.is-html blockquote{margin:.4rem 0;padding:.4rem .9rem;border-inline-start:3px solid var(--brand);color:var(--muted)}
.vr-msg-body.is-html a{color:var(--brand)}

/* ===== محرر Quill — مواءمة مع ثيم أداء (فاتح/داكن + RTL) ===== */
.adaa-editor{border:0;background:transparent;overflow:visible}
.adaa-editor .ql-toolbar.ql-snow{border:1px solid var(--line);border-radius:.75rem .75rem 0 0;background:var(--panel)}
.adaa-editor .ql-container.ql-snow{border:1px solid var(--line);border-top:0;border-radius:0 0 .75rem .75rem;background:var(--panel);font-family:inherit;font-size:1rem}
.adaa-editor .ql-editor{color:var(--text);line-height:1.9}
.adaa-editor .ql-editor.ql-blank::before{color:var(--muted);font-style:normal;inset-inline-start:1rem;inset-inline-end:1rem}
.adaa-editor .ql-editor h3{font-size:1.1rem;font-weight:800}
.adaa-editor .ql-editor blockquote{border-inline-start:3px solid var(--brand);border-left:0;padding-inline-start:.9rem;color:var(--muted)}
/* أيقونات الشريط تتبع لون النص (تظهر في الوضع الداكن) */
.adaa-editor .ql-snow .ql-stroke{stroke:var(--text)}
.adaa-editor .ql-snow .ql-fill,.adaa-editor .ql-snow .ql-stroke.ql-fill{fill:var(--text)}
.adaa-editor .ql-snow .ql-picker{color:var(--text)}
.adaa-editor .ql-snow .ql-picker-options{background:var(--panel);border-color:var(--line)}
.adaa-editor .ql-snow.ql-toolbar button:hover .ql-stroke,.adaa-editor .ql-snow.ql-toolbar button.ql-active .ql-stroke{stroke:var(--brand)}
.adaa-editor .ql-snow.ql-toolbar button:hover .ql-fill,.adaa-editor .ql-snow.ql-toolbar button.ql-active .ql-fill{fill:var(--brand)}
.adaa-editor .ql-snow.ql-toolbar button.ql-active,.adaa-editor .ql-snow.ql-toolbar .ql-picker-label.ql-active{color:var(--brand)}
/* تلميح الرابط */
.adaa-editor .ql-snow .ql-tooltip{background:var(--panel);border-color:var(--line);color:var(--text);box-shadow:0 6px 18px color-mix(in srgb,var(--text) 18%,transparent);z-index:20}
.adaa-editor .ql-snow .ql-tooltip input[type=text]{background:var(--soft);border-color:var(--line);color:var(--text)}

/* عناصر إضافية في نص الرسالة المنسّق */
.vr-msg-body.is-html pre,.adaa-editor .ql-editor pre{background:var(--soft);border:1px solid var(--line);border-radius:.5rem;padding:.6rem .85rem;overflow-x:auto;font-family:ui-monospace,Consolas,monospace;direction:ltr;text-align:left;white-space:pre-wrap}
.vr-msg-body.is-html code{background:var(--soft);border-radius:.3rem;padding:.05rem .3rem;font-family:ui-monospace,Consolas,monospace}
.vr-msg-body.is-html sub,.vr-msg-body.is-html sup{font-size:.75em}
.vr-msg-body.is-html h1{font-size:1.4rem;font-weight:800;margin:.6rem 0 .4rem}
.vr-msg-body.is-html h2{font-size:1.2rem;font-weight:800;margin:.6rem 0 .4rem}

/* منطقة كتابة الرسالة RTL، ومنتقيا الحجم والعنوان LTR */
.adaa-editor .ql-editor{direction:rtl;text-align:right}
.adaa-editor .ql-editor.ql-blank::before{right:1rem;left:auto;text-align:right}
.adaa-editor .ql-snow .ql-picker.ql-size,.adaa-editor .ql-snow .ql-picker.ql-header{direction:ltr}

/* ===== لوحة النظرة العامة (Power BI) ===== */
.adv-kpi-row{display:grid;grid-template-columns:repeat(5,1fr);gap:.9rem;margin-bottom:1rem}
@media(max-width:1100px){.adv-kpi-row{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.adv-kpi-row{grid-template-columns:repeat(2,1fr)}}
.adv-kpi-tile{display:flex;align-items:center;gap:.75rem;padding:1rem 1.1rem;background:var(--panel);border:1px solid var(--line);border-radius:1rem;border-inline-start:4px solid var(--muted);box-shadow:0 8px 24px color-mix(in srgb,var(--text) 8%,transparent)}
.adv-kpi-tile.is-info{border-inline-start-color:#2f6fed}
.adv-kpi-tile.is-success{border-inline-start-color:#1aa64b}
.adv-kpi-tile.is-warning{border-inline-start-color:#f5c518}
.adv-kpi-tile.is-danger{border-inline-start-color:#e23a2e}
.adv-kpi-ico{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;flex:0 0 auto;border-radius:.75rem;background:var(--soft)}
.adv-kpi-ico svg{width:1.4rem;height:1.4rem;fill:none;stroke:var(--muted);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.adv-kpi-tile.is-info .adv-kpi-ico svg{stroke:#2f6fed}
.adv-kpi-tile.is-success .adv-kpi-ico svg{stroke:#1aa64b}
.adv-kpi-tile.is-warning .adv-kpi-ico svg{stroke:#d19a00}
.adv-kpi-tile.is-danger .adv-kpi-ico svg{stroke:#e23a2e}
.adv-kpi-val{font-size:1.7rem;font-weight:900;line-height:1.05;color:var(--text)}
.adv-kpi-lbl{font-size:.78rem;color:var(--muted);font-weight:700;margin-top:.15rem}
.adv-bi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem}
@media(max-width:900px){.adv-bi-grid{grid-template-columns:1fr}}
.adv-bi-card{background:var(--panel);border:1px solid var(--line);border-radius:1rem;padding:.9rem 1rem;box-shadow:0 8px 24px color-mix(in srgb,var(--text) 8%,transparent)}
.adv-bi-title{font-size:.9rem;font-weight:800;color:var(--text);margin-bottom:.5rem}
.adv-bi-body{position:relative;width:100%}
.adv-legend-center{justify-content:center;margin-top:.6rem;font-size:.75rem;gap:.6rem}
/* الخريطة الحرارية */
.adv-heatmap-scroll{overflow-x:auto}
.adv-heatmap{border-collapse:separate;border-spacing:3px;font-size:.75rem}
.adv-heatmap th{font-weight:700;color:var(--muted);padding:.2rem;vertical-align:bottom;text-align:center;white-space:nowrap}
.adv-heatmap th span{display:inline-block;writing-mode:vertical-rl;transform:rotate(180deg);max-height:7rem;overflow:hidden;text-overflow:ellipsis}
.adv-heat-corner{writing-mode:horizontal-tb!important;text-align:start!important}
.adv-heat-row{font-weight:800;color:var(--text);white-space:nowrap;padding-inline-end:.5rem;position:sticky;inset-inline-start:0;background:var(--panel);z-index:1}
.adv-heat-cell{width:2.4rem;height:2.4rem;text-align:center;font-weight:800;border-radius:6px;background:var(--soft);color:var(--muted)}

/* AJAX regions — تعتيم لطيف أثناء الجلب بلا قفزة تخطيط */
[data-ajax-region]{transition:opacity .18s cubic-bezier(.22,1,.36,1)}
[data-ajax-region].is-ajax-loading{opacity:.45;pointer-events:none}
@media(prefers-reduced-motion:reduce){[data-ajax-region]{transition:none}}

/* الترقيم — خصائص منطقية فيصحّ في الاتجاهين بلا قلب يدوي */
.adaa-pagination{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:1rem}
.adaa-pagination-summary{margin:0;color:var(--muted);font-size:.82rem;font-weight:700}
.adaa-pagination-list{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap;margin:0;padding:0;list-style:none}
.adaa-page{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-width:2.5rem;min-height:2.5rem;padding:0 .7rem;border:1px solid var(--line);border-radius:.7rem;background:var(--panel);color:var(--text);font-family:inherit;font-size:.85rem;font-weight:800;text-decoration:none;transition:background-color .18s cubic-bezier(.22,1,.36,1),color .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1)}
.adaa-page svg{width:1.05rem;height:1.05rem;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;flex:none}
a.adaa-page:hover{border-color:var(--brand);color:var(--brand);background:var(--soft)}
a.adaa-page:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 55%,transparent);outline-offset:2px}
.adaa-page.is-current{background:var(--brand);border-color:var(--brand);color:#fff;pointer-events:none}
html[data-theme=dark] .adaa-page.is-current{color:#08243f}
.adaa-page.is-disabled{opacity:.45;pointer-events:none}
.adaa-page.is-gap{border-color:transparent;background:transparent;color:var(--muted);min-width:1.5rem;padding:0}
@media(max-width:640px){
 .adaa-pagination{justify-content:center}
 .adaa-pagination-summary{width:100%;text-align:center}
 .adaa-page span{display:none}
 .adaa-page svg{display:block}
 .adaa-page{min-width:2.5rem;padding:0 .5rem}
}
@media(prefers-reduced-motion:reduce){.adaa-page{transition:none}}

/* بطاقة تعريف المؤشّر — خانة عنوان زرقاء وخانة قيمة بيضاء على شبكة 12 عموداً */
.spec-card{display:grid;grid-template-columns:repeat(24,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:1rem;overflow:hidden}
.spec-label,.spec-value{grid-column:span var(--span,3);display:flex;align-items:center;min-height:3.25rem;padding:.7rem .9rem}
.spec-label{background:var(--brand);color:#fff;font-size:.82rem;font-weight:800;line-height:1.45}
html[data-theme=dark] .spec-label{color:#08243f}
.spec-value{background:var(--panel)}
.spec-input{width:100%;border:1px solid transparent;border-radius:.55rem;background:transparent;color:var(--text);font-family:inherit;font-size:.85rem;line-height:1.6;padding:.4rem .5rem;resize:vertical;transition:background-color .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1)}
textarea.spec-input{min-height:3rem}
.spec-input.is-title{font-size:1rem;font-weight:800}
.spec-input:hover:not([readonly]):not(:disabled){border-color:var(--line);background:var(--soft)}
.spec-input:focus{outline:0;border-color:var(--brand);background:var(--panel);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 20%,transparent)}
.spec-input[readonly],.spec-input:disabled{cursor:default;opacity:.9}
select.spec-input{appearance:none;cursor:pointer}
.spec-label.is-band.is-standard{background:var(--ok)}
.spec-label.is-band.is-distress{background:#e0a800}
.spec-label.is-band.is-failing{background:#e07a1f}
.spec-label.is-band.is-failed{background:var(--bad)}
.spec-label.is-band{color:#fff}
.spec-status-toggle{display:inline-flex;align-items:center;gap:.6rem;cursor:pointer;font-weight:800;font-size:.85rem}
.spec-status-toggle input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}
.spec-dot{width:1rem;height:1rem;border-radius:50%;background:var(--muted);flex:none;transition:background-color .18s cubic-bezier(.22,1,.36,1)}
.spec-status-toggle:has(input:checked) .spec-dot{background:var(--ok)}
.spec-status-toggle:has(input:disabled){cursor:default}
.spec-status-toggle:has(input:focus-visible) .spec-dot{outline:3px solid color-mix(in srgb,var(--brand) 55%,transparent);outline-offset:2px}
/* شريط الحفظ يلاصق أسفل النافذة ما دام هناك تعديل */
.spec-bar{position:sticky;bottom:1rem;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:1rem;padding:.8rem 1.1rem;background:var(--panel);border:1px solid var(--brand);border-radius:1rem;box-shadow:0 12px 32px color-mix(in srgb,var(--text) 18%,transparent)}
.spec-bar-note{color:var(--muted);font-size:.82rem;font-weight:800}
.spec-bar-actions{display:flex;gap:.5rem}
@media(max-width:900px){
 .spec-label,.spec-value{grid-column:1/-1;min-height:0}
 .spec-label{border-radius:0;padding:.5rem .9rem;font-size:.78rem}
 .spec-value{padding:.5rem .9rem}
}
@media(prefers-reduced-motion:reduce){.spec-input,.spec-dot{transition:none}}


/* صفحة عريضة: تستثمر الفراغ الجانبي حين تتّسع الشاشة */
.content-area.is-wide{width:100%}
@media(min-width:1500px){
 .main:has(.content-area.is-wide){max-width:min(96vw,1920px)}
}
/* الحقول النصّية تتمدّد بارتفاع نصّها بدل شريط تمرير يقتطع السطور */
textarea.spec-input{overflow:hidden;min-height:2.4rem}


/* ===== شاشة الإدخال: بطاقة لكل مجموعة قياس ===== */
/* البطاقات شبكة متساوية الارتفاع: النصوص تُقصّ ولا تمطّ البطاقة، فيبقى
   موضع كل حقل وزرّ ثابتاً عبر البطاقات كلها ويسهل المسح البصري. */
.entry-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:1rem;align-items:stretch}
.entry-card{display:flex;flex-direction:column;height:25.5rem;overflow:hidden;padding:1.25rem 1.25rem 1.4rem;background:var(--panel);border:1px solid var(--line);border-radius:1rem;transition:border-color .18s ease}
.entry-card:hover{border-color:var(--brand)}
/* العنوان سطران على الأكثر، وما زاد يُختصر بنقاط ويظهر كاملاً في التلميح. */
.entry-card-title{font-size:.95rem;font-weight:800;line-height:1.35;margin:0;min-height:2.6em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.entry-card-meta{font-size:.75rem;margin:.35rem 0 .9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.entry-field{display:flex;flex-direction:column;gap:.4rem}
.entry-field-head{display:flex;flex-direction:column;gap:.3rem}
.entry-badge{align-self:flex-start;padding:.15rem .55rem;border-radius:.5rem;font-size:.7rem;font-weight:800;color:#fff}
.entry-badge.is-num{background:var(--brand)}
.entry-badge.is-den{background:var(--muted)}
.entry-field-desc{color:var(--muted);font-size:.78rem;line-height:1.45;min-height:2.9em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;cursor:help}
.entry-fraction-bar{height:2px;background:var(--line);margin:.7rem 0}
/* الزرّ ملتصق بالقاع في كل بطاقة مهما قصُر نصّها. */
.entry-card>button[type=submit]{margin-top:auto;margin-bottom:0;flex:none}
/* mt-3 من بوتستراب لا يكفي فراغاً فوق الزرّ حين تمتلئ البطاقة. */
.entry-card>button[type=submit].mt-3{margin-top:auto!important}
/* حالة اكتمال التسليم */
.entry-done{padding:3.5rem 1.5rem;text-align:center}
.entry-done-mark{width:3.5rem;height:3.5rem;margin:0 auto 1rem;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--ok) 18%,transparent);color:var(--ok);font-size:1.75rem;font-weight:800}
.entry-done h2{font-size:1.15rem;font-weight:800;margin:0 0 .4rem}
@media(max-width:520px){.entry-card{height:auto}}
/* المراقبة */
.monitor-late{color:var(--bad);font-weight:800}


/* ===== شريط مرشّحات بتسمية سابقة للحقل ===== */
/* التسمية تسبق الحقل في السطر نفسه: مرشّحان أو ثلاثة قصيرة لا تستحق عموداً
   لكل منها، وبقاؤها في سطر واحد يبقي الشريط منخفضاً فوق المحتوى. */
.filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem}
.filter-inline{display:flex;align-items:center;gap:.6rem;margin:0;font-weight:800;font-size:.85rem;color:var(--muted)}
.filter-inline>span{flex:none}
.filter-inline .form-control{width:auto;min-width:16rem;max-width:100%}
/* حقل السنة رقم قصير: لا يستحق عرض القوائم. */
.filter-inline input[type=number].form-control{min-width:7rem;width:7rem}
@media(max-width:600px){
 .filter-inline{width:100%;justify-content:space-between}
 .filter-inline .form-control{flex:1;min-width:0}
}


/* ===== القوائم المنسدلة: سطر واحد لا يتراصّ ===== */
/* الخيار الطويل يُقصّ بنقاط بدل أن يلتفّ على سطرين فتتداخل السطور، وتُترك
   مساحة لسهم القائمة كي لا يركبه النصّ. */
select.form-control,.form-select{white-space:nowrap;text-overflow:ellipsis;padding-inline-end:2.25rem!important}
/* لا تُنسَّق عناصر option: تنسيقها (حشو أو التفاف) يجعل كروم يعيد رسم نافذة
   الخيارات بعرض ضيّق فتتراصّ السطور. تُترك للمتصفّح بعرض الحقل نفسه. */
.filter-inline>span{unicode-bidi:plaintext}
/* حدّ أدنى لعرض أي قائمة داخل البطاقات: نافذة الخيارات في المتصفّح تأخذ عرض
   الحقل، فالحقل الضيّق يرصّ خياراته سطرين. ولا يتجاوز الحدّ عرض العمود. */
.admin-table-card select.form-control{min-width:min(100%,11rem)}
/* شريط المرشّحات فليكس: النسبة المئوية فيه تُحسب على الحقل نفسه فتنكمش،
   فيُثبَّت له عرض أدنى صريح بعد القاعدة العامة. */
.admin-table-card .filter-inline select.form-control{min-width:16rem}
.admin-table-card .filter-inline input[type=number].form-control{min-width:7rem;width:7rem}

/* ===== القائمة المخصّصة (.adaa-select): خيار في سطر واحد ونافذة بعرض نصّها =====
   النافذة كانت تأخذ عرض الزرّ حرفياً، فالخيار الطويل يلتفّ سطرين ويتراصّ.
   صارت تتّسع لنصّها ولا تقلّ عن عرض الزرّ، والخيار سطر واحد يُقصّ بنقاط. */
.adaa-select-menu{width:max-content;max-width:min(92vw,34rem)}
.adaa-select-option{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:2.1}
.adaa-select-trigger-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* شريط المرشّحات: للقائمة عرض أدنى معقول حتى لا ينكمش زرّها إلى نصّه. */
.filter-inline .adaa-select{width:auto;min-width:12rem}

/* المقام الثابت يُعرض كقيمة لا كحقل إدخال */
.entry-constant{display:flex;align-items:center;justify-content:center;min-height:var(--control);padding:.4rem .75rem;border:1px dashed var(--line);border-radius:.75rem;background:var(--soft);color:var(--muted);font-weight:900;font-size:1rem}

/* النطاق: حقل الحدّ ثم مداه المشتقّ */
.spec-band{gap:.6rem}
.spec-band-input{max-width:9rem;flex:0 0 auto}
.spec-band-range{flex:1 1 auto;color:var(--muted);font-size:.82rem;font-weight:800;letter-spacing:.01em}
