/* Touch-first SOC layout for landscape tablets. Desktop layout is unchanged. */
@media (orientation: landscape) and (min-width: 760px) and (max-width: 1366px) and (hover: none) and (pointer: coarse) {
    .scc-header {
        position: sticky;
        z-index: 1200;
        top: 0;
        height: 58px;
        padding: 0 14px;
    }

    .scc-brand { gap: 7px; }
    .scc-brand-symbol { width: 30px; height: 30px; }
    .scc-logo { width: 112px; height: 30px; }
    .scc-brand > span { display: none; }
    .scc-header-actions { gap: 8px; }
    .scc-system-status { font-size: 11px; }
    .scc-demo-badge { min-height: 22px; padding: 4px 7px; font-size: 9px; }
    .scc-theme-toggle { min-width: 40px; width: 40px; min-height: 40px; padding: 0; }
    .scc-theme-toggle > [data-scc-theme-label] { display: none; }
    .scc-logout-button { min-width: 76px; min-height: 40px; padding: 7px 10px; }

    .operation-context {
        grid-template-columns: minmax(140px, .55fr) minmax(260px, 1.5fr) minmax(150px, .65fr);
        gap: 8px;
        padding: 6px 10px;
    }

    .operation-context span { font-size: .58rem; }
    .operation-context strong,
    .operation-context__selector select { font-size: .72rem; }
    .operation-context__selector select { min-height: 40px; padding: 6px 9px; }
    .operation-context__status { padding: 5px 8px; }

    .scc-sidebar,
    .scc-sidebar:hover,
    .scc-sidebar:focus-within {
        width: 60px;
        flex: 0 0 60px;
    }

    .scc-sidebar nav,
    .scc-sidebar:hover nav,
    .scc-sidebar:focus-within nav {
        top: 58px;
        width: 60px;
        max-height: calc(100dvh - 58px);
        min-height: calc(100dvh - 58px);
        padding: 7px 4px;
        box-shadow: 7px 0 20px rgba(0, 0, 0, .2);
    }

    .scc-sidebar nav .scc-menu-item,
    .scc-sidebar:hover nav .scc-menu-item,
    .scc-sidebar:focus-within nav .scc-menu-item {
        grid-template-columns: 44px;
        width: 52px;
        min-height: 48px;
        gap: 0;
        margin-bottom: 4px;
        padding: 2px 4px;
    }

    .scc-menu-item__icon { width: 44px; height: 42px; }
    .scc-menu-item__copy,
    .scc-sidebar:hover .scc-menu-item__copy,
    .scc-sidebar:focus-within .scc-menu-item__copy { display: none; }
    .scc-menu-separator { width: 40px; margin: 8px 6px; }
    .scc-sidebar:hover .scc-menu-separator,
    .scc-sidebar:focus-within .scc-menu-separator { width: 40px; }

    .scc-content { padding: 12px; }
    .dashboard-layout { --dashboard-padding: 13px; gap: 12px; }
    .dashboard-card > h3,
    .command-header { margin-bottom: 12px; }
    .map-card { grid-column: 1 / 8; }
    .operation-card { grid-column: 8 / 13; }
    .map-card,
    .operation-card { min-height: clamp(390px, calc(100dvh - 168px), 680px); }
    .map-card .scc-map { height: clamp(350px, calc(100dvh - 224px), 620px); }
    .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

    .workspace-header { margin-bottom: 14px; }
    .workspace-header h1 { font-size: clamp(1.45rem, 3vw, 2rem); }
    .workspace-panel { padding: 14px; }
    .workspace-map-stage,
    .workspace-map { height: calc(100dvh - 190px); min-height: 420px; }
    .workspace-map-expanded-actions { top: 9px; right: 9px; }
    .workspace-map-expanded-actions button,
    .workspace-map-overlay-menu summary,
    .workspace-button { min-height: 44px; }

    :where(button, [role="button"], select, input:not([type="checkbox"]):not([type="radio"])) {
        touch-action: manipulation;
    }

    :where(
        .operation-dialog,
        .team-position-dialog,
        .team-asset-dialog,
        .team-telemetry-dialog,
        .team-command-feedback-dialog,
        .team-field-enrollment-dialog,
        .asset-dialog,
        .scc-logout-dialog,
        .soc-emergency-alert
    ) {
        max-height: calc(100dvh - 20px);
        overflow-y: auto;
    }

    .messaging-shell,
    .medevac-page { padding: 14px; }
    .messaging-feed { max-height: calc(100dvh - 238px); min-height: 320px; }
    .medevac-march { grid-template-columns: repeat(5, minmax(132px, 1fr)); }
}

/* iPad split-screen may expose a fine pointer; retain the compact content rules. */
@media (orientation: landscape) and (min-width: 760px) and (max-width: 1100px) and (max-height: 850px) {
    .scc-content { padding: 12px; }
    .dashboard-layout { --dashboard-padding: 13px; gap: 12px; }
    .map-card .scc-map { height: clamp(340px, 57vh, 520px); }
    .workspace-map-stage,
    .workspace-map { height: calc(100dvh - 200px); min-height: 400px; }
}
