/* DSM++ portal experience v55: typography, navigation and footer */
:root{
    --ux-font:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    --ux-urdu:"Noto Nastaliq Urdu","Noto Naskh Arabic",serif;
    --ux-ink:#173b36;
    --ux-muted:#617771;
    --ux-brand:#103f3d;
    --ux-brand-2:#14645c;
    --ux-line:#d9e7e2;
    --ux-soft:#f4f9f7;
    --ux-paper:#fff;
    --ux-radius:16px;
}

/* Readability first */
html[dir="ltr"] body.dawah-ui,
html[dir="ltr"] body.production-ui{
    font-family:var(--ux-font)!important;
    font-size:15px;
    line-height:1.55;
    letter-spacing:-.005em;
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
}
.dawah-ui h1,.dawah-ui h2,.dawah-ui h3,.dawah-ui h4,
.production-ui h1,.production-ui h2,.production-ui h3,.production-ui h4{
    font-family:var(--ux-font);
    color:var(--ux-ink);
    text-wrap:balance;
}
.dawah-ui h1,.production-ui h1{font-weight:760;letter-spacing:-.035em}
.dawah-ui h2,.production-ui h2{font-weight:740;letter-spacing:-.025em}
.dawah-ui h3,.production-ui h3{font-weight:720;letter-spacing:-.015em}
.dawah-ui p,.dawah-ui li,.dawah-ui dd,.dawah-ui td,
.production-ui p,.production-ui li,.production-ui dd,.production-ui td{
    line-height:1.62;
}
.dawah-ui small,.production-ui small{line-height:1.45}
.dawah-ui [lang="ur"],.dawah-ui [dir="rtl"],.dawah-ui .nastaliq-title,
.dawah-ui .reader-v36-card,.dawah-ui .marhala-card,
.production-ui [lang="ur"],.production-ui [dir="rtl"]{
    font-family:var(--ux-urdu)!important;
    letter-spacing:0!important;
}

/* Stop micro-type across management screens. */
.admin-area .admin-suite-nav-minimal .admin-suite-links>a,
.admin-area .admin-nav-dropdown>summary,
.admin-area .admin-user-copy strong,
.admin-area .admin-search-placeholder,
.admin-area .admin-create-menu>summary,
.admin-area .admin-nav-popover a,
.admin-area .admin-user-popover a,
.admin-area .admin-user-popover button{
    font-size:13px!important;
}
.admin-area .admin-user-copy small,
.admin-area .admin-create-popover small,
.admin-area .admin-command-section-title{
    font-size:11px!important;
}
.admin-area .admin-search-trigger{height:40px}
.admin-area .admin-search-trigger kbd{font-size:10px!important}
.admin-area .admin-user-avatar{font-size:12px!important}

/* Shared controls */
.production-ui input:not([type=checkbox]):not([type=radio]),
.production-ui select,
.production-ui textarea,
.production-ui button,
.production-ui .btn,
.production-ui .prod-btn{
    font-family:var(--ux-font)!important;
}
.production-ui input:not([type=checkbox]):not([type=radio]),
.production-ui select{
    min-height:42px;
    font-size:14px!important;
}
.production-ui textarea{font-size:14px!important}
.production-ui .btn,.production-ui .prod-btn{font-size:13px!important;min-height:40px}
.production-ui table thead th{font-size:11px!important}
.production-ui table tbody td{font-size:13px!important}

/* Page titles and explanatory text */
.production-ui .page-head-clean h1,
.production-ui .prod-head h1,
.production-ui .geo-page-head h1,
.production-ui .prod-hero h1,
.production-ui .desk-heading h1,
.dashboard-command-head h1{
    font-size:clamp(27px,2.4vw,38px)!important;
    line-height:1.12!important;
}
.production-ui .page-head-clean p,
.production-ui .prod-head p,
.production-ui .geo-page-head p,
.production-ui .prod-hero p,
.production-ui .desk-heading p,
.dashboard-command-head p{
    font-size:14px!important;
    line-height:1.65!important;
}

/* Grouped management navigation: fewer visible destinations. */
.admin-suite-nav-minimal .admin-desktop-nav{
    gap:6px!important;
}
.admin-suite-nav-minimal .admin-desktop-nav>a,
.admin-suite-nav-minimal .admin-nav-dropdown>summary{
    min-height:50px!important;
    padding-inline:15px!important;
}
.admin-suite-nav-minimal .admin-nav-dropdown>summary{
    border-radius:9px 9px 0 0;
}
.admin-suite-nav-minimal .admin-nav-popover{
    min-width:230px;
    padding:8px;
}
.admin-nav-popover .nav-popover-heading{
    display:block;
    padding:8px 10px 5px;
    color:#82948e;
    font-size:10px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.admin-nav-popover .nav-popover-divider{
    height:1px;
    margin:5px 7px;
    background:#edf2f0;
}
.admin-nav-popover a{
    min-height:40px!important;
}

/* More comfortable dashboard microcopy */
.dashboard-command-center small,
.dashboard-command-center .dashboard-panel-head small,
.dashboard-command-center .dashboard-chart-head small,
.world-map-suite small{
    font-size:10px!important;
}
.dashboard-command-center .dashboard-kpi small,
.dashboard-command-center .dashboard-priority-row small,
.dashboard-command-center .dashboard-insight span,
.dashboard-command-center .dashboard-recent-row span,
.world-map-suite .world-map-detail-list dt,
.world-map-suite .world-map-detail-list dd,
.world-map-suite .world-map-status,
.world-map-suite .world-map-level-pill{
    font-size:11px!important;
}
.dashboard-command-center .dashboard-kpi span,
.dashboard-command-center .dashboard-pipeline-row span,
.world-map-suite .world-map-head p,
.world-map-suite .world-map-inspector-foot span{
    font-size:12px!important;
}
.world-map-suite .world-map-mode button,
.world-map-suite .world-map-icon-action,
.world-map-suite input,
.world-map-suite select{
    font-size:12px!important;
}

/* Footer: compact, useful, not another sitemap. */
.production-ui .portal-footer-v55{
    margin-top:34px;
    border-top:1px solid rgba(255,255,255,.08);
    background:#0d3532;
    color:#d8ebe6;
}
.portal-footer-v55 .portal-footer-main{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) auto;
    gap:28px;
    align-items:center;
    padding-block:26px 20px;
}
.portal-footer-v55 .portal-footer-brand{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:13px;
    align-items:center;
    max-width:720px;
}
.portal-footer-v55 .portal-footer-brand img{
    width:42px;
    height:42px;
    padding:5px;
    border-radius:12px;
    background:rgba(255,255,255,.09);
}
.portal-footer-v55 .portal-footer-brand strong{
    display:block;
    color:#fff;
    font-size:15px;
    font-weight:730;
}
.portal-footer-v55 .portal-footer-brand p{
    margin:4px 0 0;
    color:#bcd4ce;
    font-size:12px;
    line-height:1.55;
}
.portal-footer-v55 .portal-footer-actions{
    display:flex;
    gap:7px;
    flex-wrap:wrap;
    justify-content:flex-end;
}
.portal-footer-v55 .portal-footer-actions a,
.portal-footer-v55 .portal-footer-actions button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:36px;
    padding:7px 11px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:9px;
    background:rgba(255,255,255,.06);
    color:#fff;
    font:600 12px/1 var(--ux-font);
    text-decoration:none;
    cursor:pointer;
}
.portal-footer-v55 .portal-footer-actions a:hover,
.portal-footer-v55 .portal-footer-actions button:hover{
    background:rgba(255,255,255,.12);
}
.portal-footer-v55 .portal-footer-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:12px 0 18px;
    border-top:1px solid rgba(255,255,255,.08);
    color:#91b5ad;
    font-size:11px;
}
.portal-footer-v55 .portal-footer-bottom span:last-child{text-align:right}

/* Make supporting pages feel lighter rather than page-heavy. */
.production-ui .geo-page,
.production-ui .prod-page,
.production-ui .v34-admin-dashboard{
    gap:15px;
}
.production-ui .page-head-clean,
.production-ui .prod-head,
.production-ui .geo-page-head,
.production-ui .prod-hero,
.production-ui .desk-heading{
    margin-bottom:14px!important;
    padding:20px 22px!important;
}
.production-ui .card,
.production-ui .prod-panel,
.production-ui .geo-panel,
.production-ui .v34-card-large,
.production-ui .settings-panel{
    border-radius:15px!important;
}

/* Focus and keyboard usability */
.production-ui a:focus-visible,
.production-ui button:focus-visible,
.production-ui input:focus-visible,
.production-ui select:focus-visible,
.production-ui textarea:focus-visible{
    outline:3px solid rgba(21,160,131,.24)!important;
    outline-offset:2px;
}

@media(max-width:760px){
    html[dir="ltr"] body.dawah-ui,html[dir="ltr"] body.production-ui{font-size:15px}
    .admin-area .admin-search-trigger{height:38px}
    .admin-suite-nav-minimal .admin-mobile-nav>summary{font-size:13px!important;min-height:42px!important}
    .admin-mobile-nav-panel a{font-size:13px!important;min-height:42px!important}
    .portal-footer-v55 .portal-footer-main{grid-template-columns:1fr;gap:18px}
    .portal-footer-v55 .portal-footer-actions{justify-content:flex-start}
    .portal-footer-v55 .portal-footer-bottom{display:grid;gap:5px}
    .portal-footer-v55 .portal-footer-bottom span:last-child{text-align:left}
    .production-ui .page-head-clean,.production-ui .prod-head,.production-ui .geo-page-head,.production-ui .prod-hero,.production-ui .desk-heading{padding:17px!important}
}

@media(max-width:480px){
    .portal-footer-v55 .portal-footer-brand{grid-template-columns:36px minmax(0,1fr)}
    .portal-footer-v55 .portal-footer-brand img{width:36px;height:36px}
    .portal-footer-v55 .portal-footer-actions{display:grid;grid-template-columns:1fr 1fr}
    .portal-footer-v55 .portal-footer-actions a,.portal-footer-v55 .portal-footer-actions button{width:100%}
}