/* TechOpsBase v3.38.1 — Mobile Admin Density & Navigation Stabilization */

/* Footer groups remain visually identical on desktop and public pages. */
.footer-link-group{min-width:0}
.footer-link-group>summary{list-style:none;cursor:default}
.footer-link-group>summary::-webkit-details-marker{display:none}
.footer-link-group>summary>span{display:none}
.footer-link-group-body{display:grid;gap:0}
.footer-link-group-body>a{display:block;margin:8px 0;color:var(--muted);font-size:13px}
.footer-link-group-body>a:hover,.footer-link-group-body>a:focus-visible{color:var(--secondary)}

/* Dashboard disclosures behave like normal panels on desktop. */
.admin-dashboard-disclosure>summary{display:none}
.admin-dashboard-disclosure>.admin-disclosure-body{display:block}
.admin-disclosure-link{display:inline-flex;margin:0 0 12px;color:var(--secondary);font-size:.74rem;font-weight:800}
.admin-mobile-swipe-hint{display:none}

/* A stable mobile/tablet administration drawer. */
.admin-mobile-panel-heading{display:none}

@media(max-width:760px){
    body.site-area-admin{overflow-x:hidden}
    body.site-area-admin .workspace-section>.container{padding-inline:12px}
    body.site-area-admin .workspace-header{gap:14px;margin-bottom:18px}
    body.site-area-admin .workspace-header h1{font-size:clamp(2rem,10vw,2.75rem)!important;line-height:1.02!important}
    body.site-area-admin .workspace-header p{font-size:.95rem!important;line-height:1.55!important}
    body.site-area-admin .admin-header-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;gap:8px!important}
    body.site-area-admin .admin-header-actions .safety-badge{grid-column:1/-1;justify-self:start}
    body.site-area-admin .admin-header-actions .button{width:100%;min-height:44px;justify-content:center}

    /* Drawer becomes a viewport-safe sheet, not an oversized dropdown. */
    .admin-workspace-mobile{top:66px!important;margin-bottom:12px!important}
    .admin-workspace-mobile .admin-mobile-nav-toggle{min-height:52px!important;border-radius:12px!important}
    .admin-workspace-mobile .admin-mobile-nav-panel{
        position:fixed!important;z-index:1805!important;inset:72px 8px 8px!important;
        max-height:none!important;padding:0!important;overflow:hidden!important;
        border-radius:18px!important;display:flex!important;flex-direction:column!important;
    }
    .admin-workspace-mobile .admin-mobile-nav-panel[hidden]{display:none!important}
    .admin-mobile-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 14px 10px;border-bottom:1px solid var(--border);background:var(--bg-main)}
    .admin-mobile-panel-heading>div{display:grid;gap:2px}
    .admin-mobile-panel-heading small{color:var(--secondary);font-size:.63rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
    .admin-mobile-panel-heading strong{font-size:1.05rem}
    .admin-mobile-panel-heading button{display:grid;width:40px;height:40px;place-items:center;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.04);color:var(--text);font-size:1.55rem;line-height:1;cursor:pointer}
    .admin-workspace-mobile .admin-control-search{flex:0 0 auto;position:relative!important;top:auto!important;padding:12px!important;border-bottom:1px solid var(--border)!important;background:var(--bg-main)!important}
    .admin-workspace-mobile .admin-workspace-list{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:10px 8px 22px!important}
    .admin-workspace-mobile .admin-workspace-group summary{min-height:58px;padding:10px!important}
    .admin-workspace-mobile .admin-workspace-group summary small{display:none}
    .admin-workspace-mobile .admin-workspace-links{padding:0 6px 10px 46px!important}
    .admin-workspace-mobile .admin-workspace-links>a{min-height:48px;padding:9px 10px!important}
    .admin-workspace-mobile .admin-workspace-links>a small{font-size:.68rem!important;line-height:1.35!important}
    body.admin-mobile-nav-open::after{z-index:1795!important;inset:0!important}

    /* Current control becomes compact and keeps actions reachable. */
    .admin-current-control{gap:12px!important;margin-bottom:14px!important;padding:13px!important;border-radius:13px!important}
    .admin-current-control strong{font-size:.98rem!important}
    .admin-current-control small{font-size:.78rem!important}
    .admin-current-control-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
    .admin-current-control-actions .button{width:100%;min-height:42px;justify-content:center}
    .admin-current-control-actions .button:last-child:nth-child(3){grid-column:1/-1}

    /* Horizontal rails shorten repeated dashboard collections. */
    .admin-mobile-swipe-hint{display:inline-flex;color:var(--secondary);font-size:.72rem;font-weight:800}
    .admin-queue-grid.admin-mobile-rail,
    .admin-quick-grid.admin-mobile-rail{
        display:grid!important;grid-auto-flow:column!important;grid-template-columns:none!important;
        grid-auto-columns:minmax(78vw,300px)!important;gap:12px!important;
        overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory!important;
        scroll-padding-inline:2px;padding:2px 2px 14px!important;overscroll-behavior-x:contain;
        scrollbar-width:thin;-webkit-overflow-scrolling:touch;
    }
    .admin-queue-grid.admin-mobile-rail>* ,
    .admin-quick-grid.admin-mobile-rail>*{scroll-snap-align:start!important;min-width:0!important}
    .admin-queue-card{min-height:126px!important;padding:15px!important}
    .admin-quick-grid a{min-height:118px!important;padding:17px!important}

    /* Six pulse cards become a compact two-column matrix. */
    .admin-pulse-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
    .admin-pulse-card{min-height:104px!important;padding:14px!important}
    .admin-pulse-card strong{font-size:1.45rem!important}
    .admin-pulse-card span{font-size:.82rem!important;line-height:1.25!important}
    .admin-pulse-card small{font-size:.68rem!important}

    /* The activity feed stays useful but no longer dominates the page. */
    .admin-dashboard-columns{gap:14px!important;margin-top:24px!important}
    .admin-dashboard-columns .admin-panel{padding:16px!important;border-radius:14px!important}
    .admin-activity-panel .section-heading{align-items:flex-end!important}
    .admin-activity-item{padding-block:13px!important}
    .admin-activity-note{display:none!important}

    /* Secondary status panels collapse into summaries on mobile. */
    .admin-side-stack{gap:10px!important}
    .admin-dashboard-disclosure{padding:0!important;overflow:hidden}
    .admin-dashboard-disclosure>summary{
        display:grid!important;grid-template-columns:minmax(0,1fr) auto 22px;gap:10px;align-items:center;
        min-height:70px;padding:13px 14px;list-style:none;cursor:pointer
    }
    .admin-dashboard-disclosure>summary::-webkit-details-marker{display:none}
    .admin-dashboard-disclosure>summary>span{display:grid;gap:3px}
    .admin-dashboard-disclosure>summary small{color:var(--secondary);font-size:.62rem;font-weight:900;letter-spacing:.08em}
    .admin-dashboard-disclosure>summary strong{font-size:1.05rem}
    .admin-dashboard-disclosure>summary b{padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.06);color:var(--muted);font-size:.66rem;white-space:nowrap}
    .admin-dashboard-disclosure>summary i{font-style:normal;color:var(--secondary);transition:transform .18s ease}
    .admin-dashboard-disclosure[open]>summary i{transform:rotate(180deg)}
    .admin-dashboard-disclosure>.admin-disclosure-body{padding:0 14px 14px;border-top:1px solid var(--border)}
    .admin-dashboard-disclosure .admin-status-list,.admin-dashboard-disclosure .admin-compact-list{padding-top:10px}

    /* Admin footer is available without adding another long page. */
    body.site-area-admin .site-footer{padding-top:26px!important}
    body.site-area-admin .footer-journey-grid{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
    body.site-area-admin .footer-intro{margin-bottom:8px}
    body.site-area-admin .footer-link-group{border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.025)}
    body.site-area-admin .footer-link-group>summary{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:10px 13px;cursor:pointer}
    body.site-area-admin .footer-link-group>summary h3{margin:0!important;font-size:.88rem!important}
    body.site-area-admin .footer-link-group>summary>span{display:inline-grid;width:26px;height:26px;place-items:center;color:var(--secondary);font-size:1.2rem;transition:transform .18s ease}
    body.site-area-admin .footer-link-group[open]>summary>span{transform:rotate(45deg)}
    body.site-area-admin .footer-link-group-body{padding:0 13px 13px;border-top:1px solid var(--border)}
    body.site-area-admin .footer-link-group-body>a{min-height:36px;display:flex!important;align-items:center}
    body.site-area-admin .footer-bottom{gap:6px!important;align-items:flex-start!important;flex-direction:column!important;padding-top:18px!important}
}

@media(max-width:390px){
    .admin-queue-grid.admin-mobile-rail,.admin-quick-grid.admin-mobile-rail{grid-auto-columns:minmax(84vw,292px)!important}
    .admin-current-control-actions{grid-template-columns:1fr!important}
    .admin-current-control-actions .button:last-child:nth-child(3){grid-column:auto}
}
