
        /* ========================================== */
        /* 載入畫面專用 CSS                               */
        /* ========================================== */
        #initial-loader {
            position: fixed;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh;
            background-color: #000000;
            display: flex;
            justify-content: center;
            align-items: center;
            z-index: 99999;
            transition: opacity 0.6s ease;
        }
        .agf-logo {
            width: 500px; 
            max-width: 85vw;
            animation: textGlow 2s ease-in-out infinite alternate;
        }
        @keyframes textGlow {
            0% { filter: invert(1) drop-shadow(0 0 5px rgba(255, 255, 255, 0.2)); transform: scale(1); }
            100% { filter: invert(1) drop-shadow(0 0 15px rgba(255, 255, 255, 0.9)) drop-shadow(0 0 30px rgba(255, 255, 255, 0.6)); transform: scale(1.02); }
        }
        /* ========================================== */

        /* NSASRC Engineering Control Interface */
        :root {
            --nasa-red: #FC3D21; --nasa-blue: #0B3D91; --space-black: #050505;
            --panel-bg: #111111; --card-bg: #1A1A1A; --text-main: #FFFFFF;
            --text-dim: #A0A0A0; --accent-green: #00FF55; --accent-amber: #FFB800;
            --grid-line: #333333;
            --font-sans: "Helvetica Neue", Helvetica, Arial, sans-serif;
            --font-mono: "SFMono-Regular", Consolas, "Liberation Mono", Courier, monospace;
        }
        * { box-sizing: border-box; margin: 0; padding: 0; }
        body { font-family: var(--font-sans); background: var(--space-black); color: var(--text-main); display: flex; flex-direction: column; height: 100vh; overflow: hidden; border-top: 4px solid var(--nasa-red); }

        .overlay { 
            position: fixed; top: 0; left: 0; width: 100%; height: 100%; 
            background: rgba(0,0,0,0.85); display: flex; justify-content: center; align-items: center; 
            z-index: 1000; backdrop-filter: blur(5px);
            transition: opacity 0.6s ease, visibility 0.6s ease;
            opacity: 1; visibility: visible;
        }
        .hidden { display: none !important; }
        
        .overlay.hidden { display: flex !important; opacity: 0; visibility: hidden; pointer-events: none; }

        .modal-box { background: var(--panel-bg); border: 1px solid var(--grid-line); border-top: 3px solid var(--nasa-blue); padding: 30px; width: 100%; max-width: 500px; font-family: var(--font-mono); max-height: 90vh; overflow-y: auto;}
        .modal-box.large { max-width: 700px; }
        .modal-box h2 { margin-bottom: 20px; font-size: 18px; letter-spacing: 1px; color: var(--text-main); }
        
        .input-group { margin-bottom: 15px; text-align: left; }
        .input-group label { display: block; font-size: 12px; color: var(--text-dim); margin-bottom: 5px; }
        .input-group input, .input-group select, .input-group textarea { width: 100%; padding: 10px; background: #000; border: 1px solid var(--grid-line); color: var(--accent-green); font-family: var(--font-mono); resize: vertical;}
        
        .btn { background: var(--text-main); color: #000; border: none; padding: 10px 20px; font-family: var(--font-mono); font-weight: bold; cursor: pointer; text-transform: uppercase; width: 100%; transition: background 0.2s;}
        .btn:hover { background: var(--accent-green); }
        .btn:disabled { opacity: 0.5; cursor: not-allowed; }
        .btn-outline { background: transparent; border: 1px solid #FFFFFF; color: #FFFFFF; cursor: pointer; padding: 6px 12px; font-family: var(--font-mono); font-size: 11px; transition: background 0.2s, color 0.2s;}
        .btn-outline:hover { background: #FFFFFF; color: #000; }
        .btn-outline:disabled { border-color: #FFFFFF !important; color: #FFFFFF !important; opacity: 0.5; cursor: not-allowed; }
        .btn-text { background: none; border: none; color: #FFFFFF; font-family: var(--font-mono); cursor: pointer; text-decoration: underline; font-size: 11px; }
        .btn-text:hover { color: var(--accent-green); }

        .top-nav { display: flex; justify-content: space-between; align-items: center; padding: 10px 20px; background: var(--panel-bg); border-bottom: 1px solid var(--grid-line); font-family: var(--font-mono); font-size: 12px; }
        .brand span { color: var(--nasa-red); margin-right: 10px; }
        
        .dashboard-container { display: grid; grid-template-columns: 280px 1fr 340px; flex: 1; overflow: hidden; }
        .sidebar, .datalink-panel { background: var(--panel-bg); padding: 20px; overflow-y: auto; border-right: 1px solid var(--grid-line); }
        .datalink-panel { border-right: none; border-left: 1px solid var(--grid-line); }
        .main-stream { padding: 30px; overflow-y: auto; background-color: var(--space-black); background-image: linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px); background-size: 20px 20px; }

        .section-header { font-family: var(--font-mono); font-size: 11px; color: var(--text-dim); border-bottom: 1px solid var(--grid-line); padding-bottom: 5px; margin-bottom: 15px; display: flex; justify-content: space-between; align-items: center;}
        .list-item { font-size: 13px; margin-bottom: 12px; font-family: var(--font-mono); display: flex; align-items: center; flex-wrap: wrap;}
        .indicator { display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 8px; flex-shrink: 0;}
        .ind-live { background: var(--accent-green); box-shadow: 0 0 5px var(--accent-green); animation: blink 2s infinite; }
        .ind-err { background: var(--nasa-red); }
        .ind-offline { background: #555; }
        @keyframes blink { 0% { opacity: 1; } 50% { opacity: 0.4; } 100% { opacity: 1; } }

        .project-card { border: 1px solid var(--grid-line); padding: 15px; margin-bottom: 15px; background: rgba(255,255,255,0.02); }
        .project-card h3 { color: var(--accent-blue); font-size: 16px; margin-bottom: 8px; }
        .prj-badge { font-size: 10px; padding: 2px 6px; border: 1px solid var(--grid-line); margin-right: 5px; }
        .badge-priv { border-color: var(--nasa-red); color: var(--nasa-red); }
        .badge-pub { border-color: var(--accent-green); color: var(--accent-green); }

        .view-toggles { display: flex; gap: 10px; }
        .view-toggles button.active { background-color: #FFFFFF; color: #000; }
        
        .ticket-card { background-color: var(--card-bg); border: 1px solid var(--grid-line); margin-bottom: 24px; position: relative; }
        .ticket-card::before { content: ''; position: absolute; top: 0; left: 0; width: 3px; height: 100%; background-color: var(--nasa-blue); }
        .ticket-card.alert::before { background-color: var(--accent-amber); }
        .ticket-card.mentioned { border-color: var(--accent-green); background-color: rgba(0, 255, 85, 0.05); }
        .ticket-card.mentioned::before { background-color: var(--accent-green); width: 4px; box-shadow: 0 0 8px var(--accent-green); }
        .ticket-card.hidden-ticket { opacity: 0.5; border-style: dashed; }
        
        .ticket-header { display: flex; justify-content: space-between; padding: 12px 20px; border-bottom: 1px solid var(--grid-line); background-color: rgba(255,255,255,0.02); font-family: var(--font-mono); }
        .ticket-id { font-weight: bold; color: var(--text-main); font-size: 14px;}
        .ticket-meta { color: var(--text-dim); font-size: 12px; text-align: right;}
        .ticket-body { padding: 20px; }
        .ticket-title { font-size: 18px; font-weight: 600; margin-bottom: 15px; letter-spacing: 0.5px; }
        .log-section { margin-bottom: 15px; font-size: 14px; line-height: 1.6; color: #CCC; white-space: pre-line;}
        
        .reply-thread { margin-top: 15px; border-top: 1px dashed var(--grid-line); padding-top: 15px; }
        .reply-item { background: #111; border-left: 2px solid var(--accent-green); padding: 10px 15px; margin-bottom: 10px; font-size: 13px; font-family: var(--font-mono); color: #CCC;}
        .reply-meta { font-size: 11px; color: var(--text-dim); margin-bottom: 5px; }
        .reply-box { margin-top: 10px; display: none; }
        .reply-box.active { display: block; }

        .timeline-container { border-left: 2px solid var(--grid-line); margin-left: 10px; padding-left: 30px; position: relative; }
        .tl-node { position: relative; margin-bottom: 30px; }
        .tl-node::before { content: ''; position: absolute; left: -36px; top: 0; width: 10px; height: 10px; background: var(--nasa-blue); border-radius: 50%; box-shadow: 0 0 5px var(--nasa-blue); }
        .tl-node.reply::before { background: var(--accent-green); box-shadow: 0 0 5px var(--accent-green); width: 8px; height: 8px; left: -35px; top: 2px;}
        .tl-time { font-family: var(--font-mono); font-size: 12px; color: var(--text-dim); margin-bottom: 5px; }
        .tl-content { background: var(--card-bg); border: 1px solid var(--grid-line); padding: 15px; border-radius: 2px; }
        .tl-content h4 { margin-bottom: 8px; color: var(--text-main); font-size: 15px; }
        .tl-content p { font-size: 13px; color: #CCC; white-space: pre-line; line-height: 1.5; }

        .img-preview { max-width: 150px; max-height: 150px; object-fit: cover; cursor: pointer; border: 1px solid var(--grid-line); transition: border-color 0.3s; }
        .img-preview:hover { border-color: var(--accent-green); }
        #lightbox-overlay { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(0,0,0,0.9); display: flex; justify-content: center; align-items: center; z-index: 100000; cursor: zoom-out; }
        #lightbox-overlay img { max-width: 90vw; max-height: 90vh; border: 2px solid var(--grid-line); }
        .auto-load-container { margin-top: 15px; font-size: 12px; }

        @media (max-width: 1024px) { .dashboard-container { grid-template-columns: 220px 1fr 280px; } }
        
        @media (max-width: 768px) {
            body { overflow-y: auto; overflow-x: hidden; height: auto; min-height: 100vh; }
            .dashboard-container { display: flex; flex-direction: column; overflow: visible; }
            .sidebar, .datalink-panel, .main-stream { border-right: none; border-left: none; border-bottom: 1px solid var(--grid-line); width: 100%; padding: 15px; height: auto; overflow: visible; }
            .top-nav { flex-direction: column; align-items: flex-start; gap: 12px; }
            .top-nav > div:last-child { width: 100%; justify-content: space-between; }
            .modal-box { width: 92%; padding: 20px; }
            .ticket-header { flex-direction: column; gap: 5px; }
            .ticket-meta { text-align: left; }
            .main-stream > div:first-child { flex-direction: column !important; align-items: stretch !important; gap: 15px; }
            .view-toggles { justify-content: space-between; width: 100%; }
            .view-toggles button { flex: 1; }
            .img-preview { max-width: 100%; height: auto; }
        }
    
        /* ========================================== */
        /* MISSION LOG 2.x compatibility upgrade     */
        /* Keeps legacy workflow; adds persistent nav */
        /* ========================================== */
        :root {
            --ml-bottom-nav-h: 66px;
            --ml-top-offset: 50px;
        }
        body { padding-bottom: var(--ml-bottom-nav-h); }
        .top-nav { position: relative; z-index: 850; flex-shrink: 0; }
        .dashboard-container { padding-bottom: 0; }

        /* Gateway is now a full page, not a modal. */
        #project-overlay.gateway-page {
            position: fixed;
            inset: var(--ml-top-offset) 0 var(--ml-bottom-nav-h) 0;
            width: auto;
            height: auto;
            background: var(--space-black);
            display: block;
            z-index: 800;
            backdrop-filter: none;
            overflow-y: auto;
            padding: 28px 18px 48px;
        }
        #project-overlay.gateway-page.hidden { display: none !important; }
        #project-overlay.gateway-page .modal-box {
            width: min(1180px, 100%);
            max-width: 1180px !important;
            min-height: calc(100% - 20px);
            margin: 0 auto;
            padding: 26px;
            background: transparent;
            border: 0;
            border-top: 0;
            overflow: visible;
        }
        #project-overlay.gateway-page .project-card {
            transition: border-color .18s ease, background .18s ease, transform .18s ease;
        }
        #project-overlay.gateway-page .project-card:hover {
            border-color: #666;
            background: rgba(255,255,255,0.045);
            transform: translateY(-1px);
        }

        /* Persistent system navigation. */
        .bottom-nav {
            position: fixed;
            left: 0; right: 0; bottom: 0;
            height: var(--ml-bottom-nav-h);
            background: rgba(12,12,12,.96);
            border-top: 1px solid var(--grid-line);
            display: grid;
            grid-template-columns: repeat(4, minmax(0,1fr));
            z-index: 900;
            backdrop-filter: blur(12px);
            font-family: var(--font-mono);
        }
        .bottom-nav.hidden { display: none !important; }
        .bottom-nav button {
            appearance: none;
            border: 0;
            border-right: 1px solid rgba(255,255,255,.06);
            background: transparent;
            color: var(--text-dim);
            min-width: 0;
            cursor: pointer;
            font: inherit;
            letter-spacing: .08em;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-direction: column;
            gap: 4px;
            transition: color .16s ease, background .16s ease;
        }
        .bottom-nav button:last-child { border-right: 0; }
        .bottom-nav button:hover { color: var(--text-main); background: rgba(255,255,255,.035); }
        .bottom-nav button.active {
            color: var(--text-main);
            background: rgba(255,255,255,.055);
            box-shadow: inset 0 2px 0 var(--accent-green);
        }
        .bottom-nav .nav-icon { font-size: 16px; line-height: 1; }
        .bottom-nav .nav-label { font-size: 10px; white-space: nowrap; }

        /* Full-page secondary destinations. */
        .ml-page {
            position: fixed;
            inset: var(--ml-top-offset) 0 var(--ml-bottom-nav-h) 0;
            z-index: 805;
            background-color: var(--space-black);
            background-image:
                linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
                linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
            background-size: 20px 20px;
            overflow-y: auto;
            padding: 28px 22px 48px;
        }
        .ml-page.hidden { display: none !important; }
        .ml-page-inner { max-width: 1180px; margin: 0 auto; }
        .ml-page-title {
            font-family: var(--font-mono);
            font-size: 12px;
            color: var(--text-dim);
            letter-spacing: .18em;
            border-bottom: 1px solid var(--grid-line);
            padding-bottom: 10px;
            margin-bottom: 22px;
        }
        .ml-kicker {
            font-family: var(--font-mono);
            font-size: 10px;
            letter-spacing: .14em;
            color: var(--accent-green);
            margin-bottom: 6px;
        }
        .ml-grid { display: grid; grid-template-columns: repeat(12, minmax(0,1fr)); gap: 14px; }
        .ml-panel {
            background: var(--panel-bg);
            border: 1px solid var(--grid-line);
            padding: 18px;
        }
        .ml-panel h3 {
            font-family: var(--font-mono);
            font-size: 11px;
            color: var(--text-dim);
            letter-spacing: .12em;
            border-bottom: 1px solid var(--grid-line);
            padding-bottom: 8px;
            margin-bottom: 14px;
        }
        .ml-span-4 { grid-column: span 4; }
        .ml-span-6 { grid-column: span 6; }
        .ml-span-8 { grid-column: span 8; }
        .ml-span-12 { grid-column: span 12; }
        .ml-metric-row { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:18px; }
        .ml-metric {
            border:1px solid var(--grid-line);
            background:rgba(255,255,255,.02);
            padding:12px;
            min-height:72px;
        }
        .ml-metric .v { font-family:var(--font-mono); font-size:22px; color:var(--text-main); }
        .ml-metric .k { font-family:var(--font-mono); font-size:9px; color:var(--text-dim); letter-spacing:.1em; margin-top:5px; }
        .ml-chip {
            display:inline-block;
            border:1px solid var(--grid-line);
            padding:2px 6px;
            font-family:var(--font-mono);
            font-size:9px;
            color:var(--text-dim);
            margin-right:5px;
            margin-bottom:5px;
        }
        .ml-chip.good { border-color:var(--accent-green); color:var(--accent-green); }
        .ml-chip.warn { border-color:var(--accent-amber); color:var(--accent-amber); }
        .ml-chip.bad { border-color:var(--nasa-red); color:var(--nasa-red); }
        .ml-queue-item, .ml-activity-item {
            border-left: 2px solid var(--nasa-blue);
            padding: 10px 12px;
            margin-bottom: 9px;
            background: rgba(255,255,255,.018);
        }
        .ml-queue-item.blocked { border-left-color: var(--accent-amber); }
        .ml-queue-title { font-size:13px; color:var(--text-main); margin-bottom:4px; }
        .ml-queue-meta { font-family:var(--font-mono); font-size:10px; color:var(--text-dim); }

        #project-summary-strip { margin-bottom: 18px; }
        .ml-project-summary {
            border:1px solid var(--grid-line);
            background:rgba(255,255,255,.02);
            padding:14px;
        }
        .ml-project-summary-top { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; margin-bottom:12px; }
        .ml-project-summary-name { font-size:14px; font-weight:700; }
        .ml-project-summary-meta { font-family:var(--font-mono); font-size:10px; color:var(--text-dim); margin-top:4px; }
        .ml-progress { height:5px; border:1px solid var(--grid-line); background:#000; overflow:hidden; margin-top:10px; }
        .ml-progress > span { display:block; height:100%; background:var(--accent-green); }

        .task-ops {
            margin-top: 16px;
            padding-top: 14px;
            border-top: 1px solid var(--grid-line);
        }
        .task-details {
            margin-top: 14px;
            padding: 14px;
            border: 1px solid var(--grid-line);
            background: rgba(0,0,0,.22);
        }
        .task-details.hidden { display:none !important; }
        .task-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
        .task-detail-grid .input-group { margin:0; }
        .task-detail-grid .span-2 { grid-column:span 2; }
        .task-detail-actions { display:flex; flex-wrap:wrap; gap:7px; margin-top:12px; }
        .task-subsection {
            margin-top: 14px;
            padding-top: 12px;
            border-top: 1px dashed var(--grid-line);
        }
        .task-subsection-title { font-family:var(--font-mono); font-size:10px; color:var(--text-dim); letter-spacing:.1em; margin-bottom:8px; }
        .decision-entry, .change-entry {
            font-size:12px;
            color:#CCC;
            margin-bottom:8px;
            padding:8px;
            background:rgba(255,255,255,.025);
            border-left:2px solid var(--nasa-blue);
        }

        .settings-row {
            display:flex;
            justify-content:space-between;
            align-items:center;
            gap:14px;
            padding:11px 0;
            border-bottom:1px solid var(--grid-line);
        }
        .settings-row:last-child { border-bottom:0; }
        .settings-label { font-family:var(--font-mono); font-size:10px; color:var(--text-dim); letter-spacing:.08em; }
        .settings-value { font-family:var(--font-mono); font-size:12px; color:var(--text-main); text-align:right; }
        .settings-row select {
            background:#000; color:var(--accent-green); border:1px solid var(--grid-line);
            font-family:var(--font-mono); padding:7px 9px;
        }
        .status-dot { display:inline-block; width:7px; height:7px; border-radius:50%; margin-right:6px; background:#555; }
        .status-dot.online { background:var(--accent-green); box-shadow:0 0 5px var(--accent-green); }
        .status-dot.warn { background:var(--accent-amber); }

        body.ml-theme-light {
            --space-black:#f2f4f6;
            --panel-bg:#ffffff;
            --card-bg:#ffffff;
            --text-main:#111417;
            --text-dim:#606870;
            --grid-line:#c9ced4;
        }
        body.ml-theme-light .main-stream,
        body.ml-theme-light .ml-page,
        body.ml-theme-light #project-overlay.gateway-page {
            background-color: var(--space-black);
        }
        body.ml-theme-light .bottom-nav { background:rgba(255,255,255,.97); }
        body.ml-theme-light .input-group input,
        body.ml-theme-light .input-group select,
        body.ml-theme-light .input-group textarea,
        body.ml-theme-light .settings-row select { background:#fff; color:#111417; }
        body.ml-theme-light .reply-item { background:#f6f7f8; color:#333; }
        body.ml-theme-light .task-details { background:rgba(255,255,255,.65); }
        body.ml-theme-light .decision-entry,
        body.ml-theme-light .change-entry { color:#333; }
        body.ml-theme-light .ml-progress { background:#fff; }

        @media (max-width: 768px) {
            :root { --ml-top-offset: 92px; --ml-bottom-nav-h: 64px; }
            body { padding-bottom: var(--ml-bottom-nav-h); }
            #project-overlay.gateway-page, .ml-page { padding:18px 12px 34px; }
            #project-overlay.gateway-page .modal-box { padding:12px; }
            .bottom-nav .nav-label { font-size:9px; }
            .ml-grid { grid-template-columns:1fr; }
            .ml-span-4,.ml-span-6,.ml-span-8,.ml-span-12 { grid-column:auto; }
            .ml-metric-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
            .task-detail-grid { grid-template-columns:1fr; }
            .task-detail-grid .span-2 { grid-column:auto; }
            .ml-project-summary-top { flex-direction:column; }
        }



        /* ========================================== */
        /* MISSION LOG 2.0 production UX refinement  */
        /* ========================================== */
        :root {
            --accent-blue: var(--nasa-blue);
            --ml-bottom-nav-h: 46px;
        }

        /* thinner persistent navigation */
        .bottom-nav { height: var(--ml-bottom-nav-h); }
        .bottom-nav button {
            flex-direction: row;
            gap: 7px;
            padding: 0 10px;
            letter-spacing: .07em;
        }
        .bottom-nav .nav-icon { display:flex; width:16px; height:16px; flex:0 0 16px; }
        .bottom-nav .nav-icon svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
        .bottom-nav .nav-label { font-size:9px; }
        .bottom-nav button.active { box-shadow: inset 0 2px 0 var(--nasa-blue); }

        /* Gateway / NSASRC Engineering Control Interface */
        #project-overlay.gateway-page {
            background-color: var(--space-black);
            background-image:
                linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
                linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
            background-size:20px 20px;
            padding:0;
        }
        .gateway-shell { max-width:1220px; margin:0 auto; padding:30px 24px 42px; min-height:100%; }
        .gateway-header { display:flex; justify-content:space-between; align-items:flex-start; gap:24px; padding:22px 0 18px; border-bottom:1px solid var(--grid-line); }
        .gateway-path { font-family:var(--font-mono); font-size:10px; letter-spacing:.18em; color:var(--nasa-blue); margin-bottom:9px; }
        .gateway-title-row { display:flex; align-items:center; gap:15px; flex-wrap:wrap; }
        .gateway-title-row h1 { font-family:var(--font-mono); font-size:30px; letter-spacing:.12em; font-weight:600; color:var(--text-main); }
        .gateway-state { font-family:var(--font-mono); font-size:9px; letter-spacing:.12em; color:var(--text-dim); border-left:1px solid var(--grid-line); padding-left:14px; }
        .gateway-subtitle { font-family:var(--font-mono); font-size:10px; letter-spacing:.11em; color:var(--text-dim); margin-top:7px; }
        .gateway-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
        .gateway-status-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid var(--grid-line); border-top:0; background:rgba(255,255,255,.012); }
        .gateway-status-cell { min-height:58px; padding:11px 14px; border-right:1px solid var(--grid-line); display:flex; flex-direction:column; justify-content:center; gap:5px; }
        .gateway-status-cell:last-child { border-right:0; }
        .gateway-status-cell span { font-family:var(--font-mono); font-size:8px; letter-spacing:.12em; color:var(--text-dim); }
        .gateway-status-cell strong { font-family:var(--font-mono); font-size:11px; color:var(--text-main); font-weight:500; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
        .gateway-section { margin-top:28px; }
        .gateway-section-head { display:flex; align-items:center; justify-content:space-between; gap:16px; border-bottom:1px solid var(--grid-line); padding-bottom:8px; margin-bottom:12px; font-family:var(--font-mono); font-size:10px; letter-spacing:.11em; color:var(--text-main); }
        .gateway-index { color:var(--nasa-blue); margin-right:12px; }
        .gateway-section-note { color:var(--text-dim); font-size:8px; }
        .gateway-project-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
        #project-overlay.gateway-page .project-card { margin:0; background:rgba(255,255,255,.018); border-left:2px solid var(--nasa-blue); padding:15px 16px; min-height:116px; }
        #project-overlay.gateway-page .project-card h3 { font-family:var(--font-sans); color:var(--text-main); font-size:15px; letter-spacing:.02em; }
        #project-overlay.gateway-page .project-card:hover { border-color:var(--grid-line); border-left-color:var(--accent-green); background:rgba(255,255,255,.035); transform:none; }
        .gateway-footer { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-top:34px; padding-top:11px; border-top:1px solid var(--grid-line); font-family:var(--font-mono); font-size:8px; letter-spacing:.1em; color:var(--text-dim); }
        .danger-text { color:var(--nasa-red) !important; }

        /* Work view selection */
        .view-toggles { gap:6px; flex-wrap:wrap; }
        .view-toggles .btn-outline { min-width:104px; }
        .queue-view-head { display:flex; justify-content:space-between; gap:16px; align-items:flex-end; border-bottom:1px solid var(--grid-line); padding-bottom:10px; margin-bottom:14px; }
        .queue-view-head h3 { font-family:var(--font-mono); font-size:11px; letter-spacing:.12em; }
        .queue-view-head span { font-family:var(--font-mono); color:var(--text-dim); font-size:9px; }
        .queue-empty { border:1px dashed var(--grid-line); padding:24px; font-family:var(--font-mono); font-size:10px; color:var(--text-dim); }

        /* Custom command panel, replacing browser-native prompt/confirm */
        .ml-command-overlay { z-index:2200; background:rgba(0,0,0,.76); backdrop-filter:blur(5px); }
        .ml-command-box { width:min(560px,calc(100vw - 32px)); background:var(--panel-bg); border:1px solid var(--grid-line); border-top:2px solid var(--nasa-blue); box-shadow:0 16px 60px rgba(0,0,0,.45); }
        .ml-command-bar { height:30px; display:flex; justify-content:space-between; align-items:center; padding:0 12px; border-bottom:1px solid var(--grid-line); font-family:var(--font-mono); font-size:8px; letter-spacing:.11em; color:var(--text-dim); }
        .ml-command-body { padding:22px; }
        .ml-command-body h2 { font-family:var(--font-mono); font-size:16px; letter-spacing:.08em; margin:4px 0 16px; }
        .ml-command-message { color:var(--text-dim); font-size:12px; line-height:1.55; margin-bottom:15px; white-space:pre-wrap; border-left:2px solid var(--nasa-blue); padding:8px 10px; background:rgba(255,255,255,.02); }
        .ml-command-actions { display:flex; justify-content:flex-end; gap:8px; margin-top:18px; }
        .ml-command-actions .btn { width:auto; min-width:118px; }
        .ml-command-actions .btn-outline { min-width:90px; }
        .ml-toast-region { position:fixed; top:64px; right:16px; width:min(390px,calc(100vw - 32px)); z-index:2600; pointer-events:none; }
        .ml-toast { pointer-events:auto; background:var(--panel-bg); border:1px solid var(--grid-line); border-left:3px solid var(--nasa-blue); padding:11px 13px; margin-bottom:8px; box-shadow:0 8px 28px rgba(0,0,0,.28); font-family:var(--font-mono); font-size:10px; line-height:1.45; color:var(--text-main); animation:mlToastIn .18s ease-out; }
        .ml-toast.warn { border-left-color:var(--accent-amber); }
        .ml-toast.error { border-left-color:var(--nasa-red); }
        .ml-toast.good { border-left-color:var(--accent-green); }
        @keyframes mlToastIn { from { opacity:0; transform:translateY(-6px); } to { opacity:1; transform:none; } }

        /* Light theme contrast pass */
        body.ml-theme-light {
            --space-black:#f3f5f7;
            --panel-bg:#ffffff;
            --card-bg:#ffffff;
            --text-main:#111820;
            --text-dim:#56616d;
            --grid-line:#c5ccd3;
            --accent-green:#007a3f;
            --accent-amber:#8a5b00;
            --nasa-red:#b42318;
            --nasa-blue:#0b3d91;
        }
        body.ml-theme-light { background:#f3f5f7; color:var(--text-main); }
        body.ml-theme-light .top-nav,
        body.ml-theme-light .sidebar,
        body.ml-theme-light .datalink-panel { background:#fff; }
        body.ml-theme-light .main-stream,
        body.ml-theme-light .ml-page,
        body.ml-theme-light #project-overlay.gateway-page {
            background-color:#f3f5f7;
            background-image:linear-gradient(rgba(11,61,145,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(11,61,145,.055) 1px,transparent 1px);
        }
        body.ml-theme-light .bottom-nav { background:rgba(255,255,255,.98); }
        body.ml-theme-light .bottom-nav button { border-right-color:rgba(17,24,32,.09); }
        body.ml-theme-light .bottom-nav button:hover,
        body.ml-theme-light .bottom-nav button.active { background:rgba(11,61,145,.06); color:#111820; }
        body.ml-theme-light .btn { background:#111820; color:#fff; }
        body.ml-theme-light .btn:hover { background:#0b3d91; color:#fff; }
        body.ml-theme-light .btn-outline { border-color:#53606c; color:#1c2630; }
        body.ml-theme-light .btn-outline:disabled { border-color:#8e99a4 !important; color:#68737d !important; background:transparent !important; }
        body.ml-theme-light .btn-outline:hover,
        body.ml-theme-light .view-toggles button.active { background:#1c2630; color:#fff; border-color:#1c2630; }
        body.ml-theme-light .btn-text { color:#263442; }
        body.ml-theme-light .btn-text:hover { color:#006b37; }
        body.ml-theme-light #nav-project,
        body.ml-theme-light #verify-email-display { color:#111820 !important; }
        body.ml-theme-light .input-group input,
        body.ml-theme-light .input-group select,
        body.ml-theme-light .input-group textarea,
        body.ml-theme-light .settings-row select,
        body.ml-theme-light textarea,
        body.ml-theme-light input,
        body.ml-theme-light select { background:#fff !important; color:#111820 !important; border-color:#aeb8c2 !important; }
        body.ml-theme-light .ticket-card,
        body.ml-theme-light .tl-content,
        body.ml-theme-light .reply-item,
        body.ml-theme-light .task-details,
        body.ml-theme-light .decision-entry,
        body.ml-theme-light .change-entry,
        body.ml-theme-light .ml-panel,
        body.ml-theme-light .ml-metric,
        body.ml-theme-light .ml-project-summary,
        body.ml-theme-light .ml-queue-item,
        body.ml-theme-light .ml-activity-item { background:#fff; }
        body.ml-theme-light .ticket-header { background:#f4f6f8; }
        body.ml-theme-light .log-section,
        body.ml-theme-light .reply-item,
        body.ml-theme-light .tl-content p,
        body.ml-theme-light .decision-entry,
        body.ml-theme-light .change-entry { color:#303b46; }
        body.ml-theme-light .ticket-card.mentioned { background:#ecfff3; }
        body.ml-theme-light .auto-load-container { background:#f8fafb !important; }
        body.ml-theme-light #json-view { color:#0b3d91 !important; }
        body.ml-theme-light .overlay { background:rgba(229,234,239,.86); }
        body.ml-theme-light .modal-box,
        body.ml-theme-light .ml-command-box { background:#fff; }
        body.ml-theme-light .ml-command-message { background:#f4f6f8; }
        body.ml-theme-light .ml-progress { background:#e6ebef; }
        body.ml-theme-light #project-overlay.gateway-page .project-card { background:rgba(255,255,255,.8); }
        body.ml-theme-light #project-overlay.gateway-page .project-card:hover { background:#fff; }
        body.ml-theme-light .gateway-status-strip { background:rgba(255,255,255,.68); }
        body.ml-theme-light .gateway-path,
        body.ml-theme-light .gateway-index { color:#0b3d91; }
        body.ml-theme-light .danger-text { color:#b42318 !important; }

        @media (max-width: 720px) {
            :root { --ml-bottom-nav-h:48px; }
            .bottom-nav button { gap:5px; padding:0 5px; }
            .bottom-nav .nav-label { font-size:8px; letter-spacing:.03em; }
            .bottom-nav .nav-icon, .bottom-nav .nav-icon svg { width:15px; height:15px; }
            .gateway-shell { padding:18px 12px 30px; }
            .gateway-header { flex-direction:column; gap:14px; }
            .gateway-actions { width:100%; justify-content:flex-start; }
            .gateway-title-row h1 { font-size:24px; }
            .gateway-status-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
            .gateway-status-cell:nth-child(2) { border-right:0; }
            .gateway-status-cell:nth-child(-n+2) { border-bottom:1px solid var(--grid-line); }
            .gateway-project-list { grid-template-columns:1fr; }
            .gateway-section-note { display:none; }
            .ml-command-body { padding:18px; }
        }

        /* ========================================== */
        /* MISSION LOG 2.0 PRODUCTION HARDENING      */
        /* ========================================== */
        html, body { width:100%; max-width:100%; }
        html { background:var(--space-black); }
        body { min-width:0; }
        button, input, select, textarea { max-width:100%; }
        img, video { max-width:100%; }
        .dashboard-container > *, .main-stream, .sidebar, .datalink-panel,
        .ml-page-inner, .gateway-shell, .ticket-card, .ticket-body { min-width:0; }

        /* Single-file loading mark: avoids broken local image dependencies. */
        .agf-loader-lockup {
            width:min(520px,84vw);
            padding:22px 0;
            border-top:1px solid rgba(255,255,255,.72);
            border-bottom:1px solid rgba(255,255,255,.18);
            font-family:var(--font-mono);
            text-align:left;
            animation:textGlow 2s ease-in-out infinite alternate;
        }
        .agf-loader-path { color:#fff; font-size:clamp(17px,4.4vw,30px); letter-spacing:.16em; font-weight:600; }
        .agf-loader-status { color:#8e969f; font-size:9px; letter-spacing:.18em; margin-top:10px; }

        /* Light mode: LEDs use a solid instrument indicator rather than neon glow. */
        body.ml-theme-light .status-dot.online,
        body.ml-theme-light .ind-live {
            background:#12824a;
            border:1px solid rgba(5,96,52,.28);
            box-shadow:0 0 0 2px rgba(18,130,74,.08);
            animation:none;
        }
        body.ml-theme-light .ml-chip.good { color:#086b3b; border-color:#5b9f7b; }
        body.ml-theme-light .ml-kicker { color:#086b3b; }
        body.ml-theme-light .ticket-card.mentioned::before { background:#12824a; box-shadow:none; }

        /* Keep the command interface within the viewport on small devices. */
        .ml-command-box, .modal-box { max-width:calc(100vw - 24px); }
        .ml-command-overlay, .overlay { padding:12px; }

        @supports (height: 100dvh) {
            body { min-height:100dvh; }
            .overlay { min-height:100dvh; }
        }

        @media (max-width: 768px) {
            :root {
                --ml-top-offset:52px;
                --ml-bottom-nav-h:calc(50px + env(safe-area-inset-bottom, 0px));
            }
            body {
                height:auto;
                min-height:100vh;
                padding-bottom:var(--ml-bottom-nav-h);
                overflow-x:hidden;
                -webkit-text-size-adjust:100%;
            }
            .top-nav {
                min-height:48px;
                padding:7px 10px;
                flex-direction:row;
                align-items:center;
                gap:8px;
                flex-wrap:nowrap;
            }
            .top-nav .brand {
                min-width:0;
                flex:1 1 auto;
                overflow:hidden;
                white-space:nowrap;
                text-overflow:ellipsis;
                font-size:10px;
            }
            .top-nav > div:last-child {
                width:auto;
                flex:0 0 auto;
                justify-content:flex-end;
                gap:7px !important;
            }
            .top-nav .btn-outline { padding:5px 7px; font-size:9px; }
            #nav-user { max-width:105px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:9px; }

            #project-overlay.gateway-page,
            .ml-page {
                inset:var(--ml-top-offset) 0 var(--ml-bottom-nav-h) 0;
                padding:0;
                overscroll-behavior:contain;
            }
            .gateway-shell { padding:14px 10px 24px; }
            .gateway-header { padding:12px 0 14px; gap:12px; }
            .gateway-title-row { gap:9px; }
            .gateway-title-row h1 { font-size:21px; letter-spacing:.09em; }
            .gateway-state { padding-left:9px; font-size:8px; }
            .gateway-subtitle { line-height:1.45; }
            .gateway-actions { width:100%; }
            .gateway-actions .btn-outline { width:100%; min-height:38px; }
            .gateway-status-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
            .gateway-status-cell { padding:9px 10px; min-height:54px; }
            .gateway-section { margin-top:20px; }
            .gateway-project-list { grid-template-columns:1fr; }

            #project-overlay.gateway-page .project-card > div:first-child { flex-direction:column; align-items:stretch !important; }
            #project-overlay.gateway-page .project-card > div:first-child > div:first-child { width:100%; }
            #project-overlay.gateway-page .project-card > div:first-child > div:last-child {
                width:100%;
                display:grid !important;
                grid-template-columns:repeat(2,minmax(0,1fr));
                gap:6px !important;
            }
            #project-overlay.gateway-page .project-card > div:first-child > div:last-child .btn-outline {
                width:100%;
                margin-right:0 !important;
                min-width:0;
                white-space:normal;
                line-height:1.25;
            }
            .gateway-footer { flex-direction:column; align-items:flex-start; margin-top:22px; gap:10px; }

            .dashboard-container { width:100%; max-width:100%; }
            .sidebar, .datalink-panel, .main-stream { padding:12px 10px; }
            .main-stream { overflow-x:hidden; }
            .ticket-card { margin-bottom:14px; }
            .ticket-header { padding:10px 12px; }
            .ticket-body { padding:13px 12px; }
            .ticket-title { font-size:16px; overflow-wrap:anywhere; }
            .log-section, .reply-item, .tl-content p { overflow-wrap:anywhere; word-break:break-word; }
            .reply-item { padding:9px 10px; }
            .timeline-container { margin-left:5px; padding-left:21px; }
            .tl-node::before { left:-27px; }
            .tl-node.reply::before { left:-26px; }

            .view-toggles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; width:100%; }
            .view-toggles .btn-outline,
            .view-toggles button { min-width:0 !important; width:100%; padding:7px 4px; font-size:8px; white-space:normal; line-height:1.25; }
            .main-stream > div:first-child > .btn-outline { width:100%; min-height:38px; }

            .ml-page-inner { width:100%; }
            .ml-page { padding:14px 10px 24px; }
            .ml-panel { padding:13px 11px; }
            .ml-grid { grid-template-columns:1fr; gap:10px; }
            .ml-span-4,.ml-span-6,.ml-span-8,.ml-span-12 { grid-column:auto; }
            .ml-metric-row { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
            .ml-metric { padding:10px; min-height:64px; }
            .ml-project-summary { padding:11px; }
            .ml-project-summary-top, .queue-view-head { flex-direction:column; align-items:flex-start; }
            .ml-queue-item, .ml-activity-item { padding:9px 10px; overflow-wrap:anywhere; }

            .task-detail-grid { grid-template-columns:1fr; }
            .task-detail-grid .span-2 { grid-column:auto; }
            .task-details { padding:11px; }
            .task-detail-actions { display:grid; grid-template-columns:1fr 1fr; }
            .task-detail-actions .btn-outline { width:100%; min-height:38px; }

            .settings-row { flex-direction:column; align-items:flex-start; gap:7px; }
            .settings-value { width:100%; text-align:left; overflow-wrap:anywhere; }
            .settings-row select { width:100%; }

            .modal-box {
                width:100%;
                max-width:100%;
                max-height:calc(100dvh - 24px);
                padding:16px 14px;
                border-radius:0;
            }
            .modal-box.large { max-width:100%; }
            .modal-box [style*="display: flex"] { flex-wrap:wrap; }
            .modal-box details div[style*="grid-template-columns"] { grid-template-columns:1fr !important; }
            .input-group input, .input-group select, .input-group textarea,
            .settings-row select { font-size:16px; }
            .btn, .btn-outline { min-height:38px; }

            .ml-command-overlay { align-items:flex-end; padding:0; }
            .ml-command-box { width:100%; max-width:100%; max-height:calc(100dvh - 10px); overflow-y:auto; }
            .ml-command-body { padding:16px 13px calc(16px + env(safe-area-inset-bottom,0px)); }
            .ml-command-actions { display:grid; grid-template-columns:1fr 1fr; }
            .ml-command-actions .btn, .ml-command-actions .btn-outline { width:100%; min-width:0; }

            .bottom-nav {
                height:var(--ml-bottom-nav-h);
                padding-bottom:env(safe-area-inset-bottom,0px);
            }
            .bottom-nav button { min-height:50px; gap:4px; padding:0 4px; }
            .bottom-nav .nav-label { font-size:7.5px; letter-spacing:.02em; }
            .bottom-nav .nav-icon, .bottom-nav .nav-icon svg { width:15px; height:15px; }
            .ml-toast-region { top:58px; right:8px; width:calc(100vw - 16px); }
        }

        @media (max-width: 380px) {
            #project-overlay.gateway-page .project-card > div:first-child > div:last-child { grid-template-columns:1fr; }
            .gateway-status-strip { grid-template-columns:1fr; }
            .gateway-status-cell { border-right:0 !important; border-bottom:1px solid var(--grid-line); }
            .gateway-status-cell:last-child { border-bottom:0; }
            .ml-metric-row { grid-template-columns:1fr; }
            .task-detail-actions { grid-template-columns:1fr; }
            .bottom-nav .nav-label { font-size:7px; }
            #nav-user { display:none; }
        }

/* CSP-SAFE EXTERNALIZED LEGACY INLINE STYLES */
.ml-s-0633003456{color:var(--text-dim);}
.ml-s-081edd2627{color: var(--nasa-red); font-family: var(--font-mono); font-size: 11px; margin-bottom: 20px;}
.ml-s-0985edcc25{font-family:var(--font-mono); color:var(--text-dim);}
.ml-s-09ad61f06a{border-top: 1px solid var(--grid-line); padding-top: 20px;}
.ml-s-0bac17190a{display: flex; gap: 15px;}
.ml-s-0e08cba06e{font-size: 12px; color: var(--text-dim); margin-bottom: 10px;}
.ml-s-0f7f280019{color:var(--text-dim); font-family:var(--font-mono); font-size:9px;}
.ml-s-10b22f3f87{font-size:12px; color:var(--text-dim); margin-top:5px; white-space:pre-wrap;}
.ml-s-17a3c4b516{color:var(--text-dim); font-size:12px;}
.ml-s-1b45d86447{font-family: var(--font-mono); font-size: 11px; color: var(--accent-blue); white-space: pre-wrap; word-wrap: break-word; word-break: break-all; overflow-wrap: anywhere; overflow-x: hidden;}
.ml-s-2752ba1d54{display:flex; gap:6px; flex-wrap:wrap;}
.ml-s-281ba9f9f3{color: var(--accent-green);}
.ml-s-2d2c4036cf{font-family:var(--font-mono); color:var(--text-dim); font-size:11px;}
.ml-s-2d98adf5c6{margin-bottom: 10px;}
.ml-s-3099d9533f{color: var(--accent-green); font-family: var(--font-mono); font-size: 11px; animation: blink 1.5s infinite;}
.ml-s-31f575bea2{margin-right: 10px;}
.ml-s-327c178e39{width: 24px; height: 24px;}
.ml-s-367da999e5{min-width:0;}
.ml-s-37a6ae902e{font-size: 11px; margin-bottom: 20px; color: var(--text-dim);}
.ml-s-3e94e010e4{margin-bottom: 0; color: var(--nasa-red); letter-spacing: 1px;}
.ml-s-3fed2a7ec9{margin-left:5px;}
.ml-s-402c1aed50{border-color: var(--nasa-red); color: var(--nasa-red);}
.ml-s-410624f712{display: flex; align-items: center; gap: 15px;}
.ml-s-41618c13cb{color:var(--accent-green); text-decoration:none;}
.ml-s-42cd63ad23{display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; gap:12px; flex-wrap:wrap;}
.ml-s-43826d46df{color:var(--nasa-red);}
.ml-s-455d67e8a0{font-size:11px; color:var(--text-dim);}
.ml-s-46098bef61{min-width:0; flex:1;}
.ml-s-47b1db40b2{display:flex; flex-wrap:wrap; gap:4px; margin-bottom:9px;}
.ml-s-4833f9321e{font-size: 12px; color: var(--text-dim); margin-bottom: 20px;}
.ml-s-48cb3af43b{font-size:11px; color:var(--text-dim); line-height:1.6;}
.ml-s-48e02f10bd{display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--grid-line); padding-bottom: 15px; margin-bottom: 20px;}
.ml-s-4a3180e2eb{margin-bottom: 15px;}
.ml-s-4e8edf1efd{border-color:var(--accent-amber); color:var(--accent-amber);}
.ml-s-504ad8409b{border-left:2px solid var(--accent-green); padding:8px 10px; margin:10px 0; font-size:12px;}
.ml-s-5066b347b0{border-color:var(--accent-green); color:var(--accent-green);}
.ml-s-5a842c40d1{color:#FFF}
.ml-s-5b13827ef0{border-left:2px solid var(--accent-amber); padding:8px 10px; margin:10px 0; font-size:12px;}
.ml-s-5c006b2746{color: var(--accent-green); margin-bottom: 10px;}
.ml-s-5c78596df4{margin-top:8px; display:flex; gap:5px;}
.ml-s-5cb6d243b1{display:flex; justify-content:space-between; gap:12px; align-items:flex-start;}
.ml-s-5efb2661e2{text-align: center; margin-bottom: 20px;}
.ml-s-5fa693f3d4{margin-top: 20px;}
.ml-s-66459b62f3{border-color:var(--nasa-red); color:var(--nasa-red);}
.ml-s-66491dde52{font-size:11px; color:var(--text-dim); font-family:var(--font-mono);}
.ml-s-671d4a3683{width: 50px; height: 50px; border-radius: 50%; border: 2px solid var(--accent-amber); display: flex; align-items: center; justify-content: center; color: var(--accent-amber);}
.ml-s-6e118dacb0{font-size:12px; color:var(--text-dim);}
.ml-s-6f3241c2b1{display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:14px;}
.ml-s-7177d830b4{background: rgba(255,255,255,0.05); padding: 10px; font-size: 11px; color: var(--text-dim); border-left: 3px solid var(--accent-amber); margin-bottom: 20px; text-align: left;}
.ml-s-72b3bbf650{color: var(--nasa-red); margin-left: 10px;}
.ml-s-73f312456e{font-size: 12px; color: var(--text-dim);}
.ml-s-770c5ce9d8{cursor:pointer; font-family:var(--font-mono); font-size:11px; color:var(--text-dim);}
.ml-s-7787b625df{font-family:var(--font-mono); font-size:9px; color:var(--text-dim);}
.ml-s-79aa248fd4{width:100%; background:#000; color:#FFF; border:1px solid #333; padding:8px; margin-top:10px;}
.ml-s-7b058252a4{display: flex; justify-content: center; margin-bottom: 15px;}
.ml-s-7f434d0211{cursor:pointer; color:var(--accent-amber); font-size:10px; margin-left:10px;}
.ml-s-8118af951d{color:var(--text-dim); font-family:var(--font-mono);}
.ml-s-84ad5f6f03{font-family:var(--font-mono); font-size:9px; color:var(--text-dim); margin-top:8px;}
.ml-s-8583a783ce{width:16px;height:16px;}
.ml-s-87bd79fdba{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px;}
.ml-s-88b9d5c614{margin-top:14px;}
.ml-s-8a14f90be5{color: var(--accent-amber); border-color: var(--accent-amber);}
.ml-s-8a5030625b{margin-bottom: 15px; padding: 10px; font-size: 11px; font-family: var(--font-mono); display: none; border: 1px solid; text-align: left;}
.ml-s-8e2cb94098{display:flex; justify-content:space-between; align-items:center;flex-wrap:wrap; gap:10px;}
.ml-s-9aa2196bb9{margin-right: 10px; border-color: var(--nasa-red); color: var(--nasa-red);}
.ml-s-9ab1272f33{text-align: center; max-width: 420px;}
.ml-s-af787fe9ad{margin-top:7px; display:flex; gap:6px;}
.ml-s-afb297c549{color: var(--text-dim); text-decoration: line-through;}
.ml-s-b03d2dc3e7{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px;}
.ml-s-b1285b4cfa{max-width: 650px;}
.ml-s-b57eae5430{color:var(--accent-amber); margin-left: 5px;}
.ml-s-b75fad0009{margin-bottom: 20px;}
.ml-s-bdcaca75c4{max-width:700px;}
.ml-s-be2a573ca3{font-size:12px; color:var(--text-main); margin-top:7px;}
.ml-s-c053968e01{padding:15px; background:rgba(255,255,255,0.02); border:1px dashed var(--grid-line); text-align:left;}
.ml-s-c1d78f12d7{font-family:var(--font-mono); font-size:10px; color:var(--text-dim); display:flex; align-items:center; gap:8px; margin-top:10px;}
.ml-s-c2a68eb78e{display: flex; gap: 10px; margin-top: 20px;}
.ml-s-c2d2e263dc{flex: 2;}
.ml-s-c3c3228aea{width: 100%; border-color: #4285F4; color: #4285F4; display: flex; align-items: center; justify-content: center; gap: 10px;}
.ml-s-c49624011e{color: var(--nasa-blue); margin-bottom: 10px;}
.ml-s-c58f2e6dbc{color: #FFF; font-family: var(--font-mono); margin-bottom: 20px; font-size: 14px; border-bottom: 1px solid var(--grid-line); padding-bottom: 10px;}
.ml-s-c72829f9ea{font-size:11px; color:var(--accent-amber); margin-top:5px;}
.ml-s-c82f7b3767{border-color: var(--nasa-red);}
.ml-s-cc65aecf9f{font-size:10px; color:var(--text-dim); margin:0 5px;}
.ml-s-cf1d2f46fc{text-align: center; padding: 40px 0;}
.ml-s-d2b67dab8c{margin-top:5px; background:#FFFFFF; color:#000;}
.ml-s-d5f7d6ccce{display: flex; gap: 10px;}
.ml-s-d76d83a250{color: var(--nasa-red); margin-bottom: 10px;}
.ml-s-d806c08fd8{border-left:2px solid var(--nasa-blue); padding:8px 10px; margin:10px 0; font-size:12px;}
.ml-s-d8a81eac84{margin-top:10px;}
.ml-s-ddc122fd31{border: 1px dashed var(--accent-amber); padding: 8px;}
.ml-s-e018b7aa85{display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;}
.ml-s-e137aa004d{flex: 1; border-color: var(--nasa-red) !important; color: var(--nasa-red) !important;}
.ml-s-e472db546c{color: var(--accent-amber); margin-left: 10px;}
.ml-s-e477dd5334{color:var(--text-dim); font-size:13px; line-height:1.6; margin-bottom:16px;}
.ml-s-e651b90447{border-color: var(--accent-green); color: var(--accent-green);}
.ml-s-ebffd8ddcc{font-size:11px; color:var(--text-dim); font-family:var(--font-mono); margin-bottom:10px;}
.ml-s-ec065cfe3f{display:flex; gap:10px; margin-top:20px; flex-wrap:wrap;}
.ml-s-ec980a1a34{font-family:var(--font-mono); font-size:10px; color:var(--text-dim); margin-bottom:14px;}
.ml-s-ee3d55bf99{flex: 1;}
.ml-s-ef97e54568{margin-right:10px;}
.ml-s-f2892a2e8a{display: none;}
.ml-s-f4e4455d7a{margin: 4px 0 18px 0; border:1px solid var(--grid-line); padding:12px;}
.ml-s-f8ad7d3121{text-align: right; margin-top: 5px;}
.ml-s-f98701f372{color: var(--accent-amber); margin-bottom: 10px;}
.ml-s-fb9057b616{display: flex; align-items: center; gap: 10px;}
.ml-s-fbc217fdde{color: var(--accent-blue); font-family: var(--font-mono); font-size: 11px; animation: blink 1.5s infinite;}
.ml-s-fda60ed349{display:flex; gap:7px; flex-wrap:wrap;}
.ml-progress > span[data-progress="0"]{width:0%}
.ml-progress > span[data-progress="1"]{width:1%}
.ml-progress > span[data-progress="2"]{width:2%}
.ml-progress > span[data-progress="3"]{width:3%}
.ml-progress > span[data-progress="4"]{width:4%}
.ml-progress > span[data-progress="5"]{width:5%}
.ml-progress > span[data-progress="6"]{width:6%}
.ml-progress > span[data-progress="7"]{width:7%}
.ml-progress > span[data-progress="8"]{width:8%}
.ml-progress > span[data-progress="9"]{width:9%}
.ml-progress > span[data-progress="10"]{width:10%}
.ml-progress > span[data-progress="11"]{width:11%}
.ml-progress > span[data-progress="12"]{width:12%}
.ml-progress > span[data-progress="13"]{width:13%}
.ml-progress > span[data-progress="14"]{width:14%}
.ml-progress > span[data-progress="15"]{width:15%}
.ml-progress > span[data-progress="16"]{width:16%}
.ml-progress > span[data-progress="17"]{width:17%}
.ml-progress > span[data-progress="18"]{width:18%}
.ml-progress > span[data-progress="19"]{width:19%}
.ml-progress > span[data-progress="20"]{width:20%}
.ml-progress > span[data-progress="21"]{width:21%}
.ml-progress > span[data-progress="22"]{width:22%}
.ml-progress > span[data-progress="23"]{width:23%}
.ml-progress > span[data-progress="24"]{width:24%}
.ml-progress > span[data-progress="25"]{width:25%}
.ml-progress > span[data-progress="26"]{width:26%}
.ml-progress > span[data-progress="27"]{width:27%}
.ml-progress > span[data-progress="28"]{width:28%}
.ml-progress > span[data-progress="29"]{width:29%}
.ml-progress > span[data-progress="30"]{width:30%}
.ml-progress > span[data-progress="31"]{width:31%}
.ml-progress > span[data-progress="32"]{width:32%}
.ml-progress > span[data-progress="33"]{width:33%}
.ml-progress > span[data-progress="34"]{width:34%}
.ml-progress > span[data-progress="35"]{width:35%}
.ml-progress > span[data-progress="36"]{width:36%}
.ml-progress > span[data-progress="37"]{width:37%}
.ml-progress > span[data-progress="38"]{width:38%}
.ml-progress > span[data-progress="39"]{width:39%}
.ml-progress > span[data-progress="40"]{width:40%}
.ml-progress > span[data-progress="41"]{width:41%}
.ml-progress > span[data-progress="42"]{width:42%}
.ml-progress > span[data-progress="43"]{width:43%}
.ml-progress > span[data-progress="44"]{width:44%}
.ml-progress > span[data-progress="45"]{width:45%}
.ml-progress > span[data-progress="46"]{width:46%}
.ml-progress > span[data-progress="47"]{width:47%}
.ml-progress > span[data-progress="48"]{width:48%}
.ml-progress > span[data-progress="49"]{width:49%}
.ml-progress > span[data-progress="50"]{width:50%}
.ml-progress > span[data-progress="51"]{width:51%}
.ml-progress > span[data-progress="52"]{width:52%}
.ml-progress > span[data-progress="53"]{width:53%}
.ml-progress > span[data-progress="54"]{width:54%}
.ml-progress > span[data-progress="55"]{width:55%}
.ml-progress > span[data-progress="56"]{width:56%}
.ml-progress > span[data-progress="57"]{width:57%}
.ml-progress > span[data-progress="58"]{width:58%}
.ml-progress > span[data-progress="59"]{width:59%}
.ml-progress > span[data-progress="60"]{width:60%}
.ml-progress > span[data-progress="61"]{width:61%}
.ml-progress > span[data-progress="62"]{width:62%}
.ml-progress > span[data-progress="63"]{width:63%}
.ml-progress > span[data-progress="64"]{width:64%}
.ml-progress > span[data-progress="65"]{width:65%}
.ml-progress > span[data-progress="66"]{width:66%}
.ml-progress > span[data-progress="67"]{width:67%}
.ml-progress > span[data-progress="68"]{width:68%}
.ml-progress > span[data-progress="69"]{width:69%}
.ml-progress > span[data-progress="70"]{width:70%}
.ml-progress > span[data-progress="71"]{width:71%}
.ml-progress > span[data-progress="72"]{width:72%}
.ml-progress > span[data-progress="73"]{width:73%}
.ml-progress > span[data-progress="74"]{width:74%}
.ml-progress > span[data-progress="75"]{width:75%}
.ml-progress > span[data-progress="76"]{width:76%}
.ml-progress > span[data-progress="77"]{width:77%}
.ml-progress > span[data-progress="78"]{width:78%}
.ml-progress > span[data-progress="79"]{width:79%}
.ml-progress > span[data-progress="80"]{width:80%}
.ml-progress > span[data-progress="81"]{width:81%}
.ml-progress > span[data-progress="82"]{width:82%}
.ml-progress > span[data-progress="83"]{width:83%}
.ml-progress > span[data-progress="84"]{width:84%}
.ml-progress > span[data-progress="85"]{width:85%}
.ml-progress > span[data-progress="86"]{width:86%}
.ml-progress > span[data-progress="87"]{width:87%}
.ml-progress > span[data-progress="88"]{width:88%}
.ml-progress > span[data-progress="89"]{width:89%}
.ml-progress > span[data-progress="90"]{width:90%}
.ml-progress > span[data-progress="91"]{width:91%}
.ml-progress > span[data-progress="92"]{width:92%}
.ml-progress > span[data-progress="93"]{width:93%}
.ml-progress > span[data-progress="94"]{width:94%}
.ml-progress > span[data-progress="95"]{width:95%}
.ml-progress > span[data-progress="96"]{width:96%}
.ml-progress > span[data-progress="97"]{width:97%}
.ml-progress > span[data-progress="98"]{width:98%}
.ml-progress > span[data-progress="99"]{width:99%}
.ml-progress > span[data-progress="100"]{width:100%}
.ml-auth-message-visible{display:block!important}
.ml-auth-message-error{border-color:var(--nasa-red)!important;color:var(--nasa-red)!important}
.ml-auth-message-good{border-color:var(--accent-green)!important;color:var(--accent-green)!important}
.ml-auth-title-login{color:var(--nasa-red)!important}
.ml-auth-title-register{color:var(--nasa-blue)!important}
.ml-status-delayed{animation:none!important;color:var(--accent-amber)!important}
.ml-status-error{animation:none!important;color:var(--nasa-red)!important}
.ml-attachment-loaded{background:transparent!important;border:none!important;padding:0!important;text-align:left!important}
.ml-text-left{text-align:left!important}
.ml-loader-fade{opacity:0!important}
.ml-toast-leaving{opacity:0!important;transform:translateY(-4px)!important;transition:opacity .18s ease,transform .18s ease!important}
.ml-danger-confirm{background:var(--nasa-red)!important;color:#fff!important}


/* ========================================== */
/* MISSION LOG 2.1 // PROJECT CONTROL          */
/* Gantt / Schedule / Dependency / Phase Gate  */
/* ========================================== */
.ml-schedule-span-2 { grid-column: span 2; }
.ml-schedule-shell { display:grid; gap:14px; min-width:0; }
.ml-schedule-toolbar { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:12px 14px; border:1px solid var(--grid-line); background:var(--panel-bg); }
.ml-schedule-toolbar h3 { font-size:15px; margin-top:3px; }
.ml-schedule-actions { display:flex; gap:7px; flex-wrap:wrap; }
.ml-schedule-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.ml-schedule-metric { border:1px solid var(--grid-line); background:var(--panel-bg); padding:10px 12px; min-width:0; }
.ml-schedule-metric .v { font-family:var(--font-mono); font-size:17px; color:var(--text-main); overflow-wrap:anywhere; }
.ml-schedule-metric .k { margin-top:4px; font-family:var(--font-mono); font-size:9px; letter-spacing:.08em; color:var(--text-dim); }
.ml-schedule-panel { border:1px solid var(--grid-line); background:var(--panel-bg); min-width:0; }
.ml-schedule-panel-head { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; padding:11px 13px; border-bottom:1px solid var(--grid-line); }
.ml-schedule-panel-head h4 { font-size:12px; letter-spacing:.05em; }
.ml-schedule-subnote { font-family:var(--font-mono); font-size:9px; color:var(--text-dim); margin-top:3px; }
.ml-schedule-scroll { overflow-x:auto; overscroll-behavior-inline:contain; max-width:100%; }
.ml-gantt { border-collapse:separate; border-spacing:0; width:max-content; min-width:100%; font-family:var(--font-mono); font-size:9px; }
.ml-gantt th, .ml-gantt td { border-right:1px solid var(--grid-line); border-bottom:1px solid var(--grid-line); height:28px; padding:0; text-align:center; }
.ml-gantt thead th { background:var(--card-bg); color:var(--text-dim); font-weight:500; }
.ml-gantt .task-col { position:sticky; left:0; z-index:4; width:220px; min-width:220px; max-width:220px; padding:6px 9px; text-align:left; background:var(--panel-bg); color:var(--text-main); box-shadow:1px 0 0 var(--grid-line); }
.ml-gantt thead .task-col { z-index:6; background:var(--card-bg); }
.ml-gantt .unit-col { width:24px; min-width:24px; max-width:24px; }
.ml-gantt.week-mode .unit-col { width:34px; min-width:34px; max-width:34px; }
.ml-gantt .month-head { height:23px; color:var(--text-main); letter-spacing:.04em; }
.ml-gantt .weekend { background:rgba(255,255,255,.025); }
.ml-gantt .today { box-shadow:inset 2px 0 0 var(--nasa-blue); }
.ml-gantt .bar { border-top:4px solid var(--nasa-blue); border-bottom:4px solid var(--nasa-blue); background:rgba(11,61,145,.22); }
.ml-gantt .bar.start { border-left:4px solid var(--nasa-blue); }
.ml-gantt .bar.end { border-right:4px solid var(--nasa-blue); }
.ml-gantt .bar.critical { border-color:var(--nasa-red); background:rgba(252,61,33,.20); }
.ml-gantt .bar.blocked { border-color:var(--accent-amber); background:rgba(255,184,0,.18); }
.ml-gantt .bar.done { border-color:var(--accent-green); background:rgba(0,255,85,.10); opacity:.68; }
.ml-gantt .milestone-cell { font-size:14px; color:var(--text-main); }
.ml-gantt .milestone-cell.gate { color:var(--accent-amber); }
.ml-gantt .milestone-cell.passed { color:var(--accent-green); }
.ml-gantt .milestone-cell.failed, .ml-gantt .milestone-cell.at-risk { color:var(--nasa-red); }
.ml-gantt-task-id { font-size:9px; color:var(--text-dim); }
.ml-gantt-task-name { margin-top:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ml-gantt-task-meta { margin-top:3px; font-size:8px; color:var(--text-dim); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ml-critical-badge { color:var(--nasa-red); font-weight:700; }
.ml-schedule-warning { border-left:3px solid var(--accent-amber); padding:9px 11px; background:rgba(255,184,0,.08); font-family:var(--font-mono); font-size:10px; color:var(--text-main); }
.ml-unscheduled { padding:10px 12px; display:grid; gap:6px; }
.ml-unscheduled-item { border-left:2px solid var(--grid-line); padding:6px 9px; font-family:var(--font-mono); font-size:10px; color:var(--text-dim); }
.ml-dep-wrap { overflow-x:auto; padding:12px; }
.ml-dep-svg { display:block; min-width:720px; height:auto; }
.ml-dep-edge { fill:none; stroke:var(--grid-line); stroke-width:1.5; }
.ml-dep-arrow { fill:var(--grid-line); }
.ml-dep-edge.critical { stroke:var(--nasa-red); stroke-width:2.5; }
.ml-dep-node { cursor:pointer; }
.ml-dep-node rect { fill:var(--card-bg); stroke:var(--grid-line); stroke-width:1.5; }
.ml-dep-node text { fill:var(--text-main); font-family:var(--font-mono); font-size:10px; }
.ml-dep-node .sub { fill:var(--text-dim); font-size:8px; }
.ml-dep-node.critical rect { stroke:var(--nasa-red); stroke-width:2; }
.ml-dep-node.blocked rect { stroke:var(--accent-amber); stroke-width:2; }
.ml-milestone-list { display:grid; gap:7px; padding:10px 12px; }
.ml-milestone-item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:center; border-left:3px solid var(--grid-line); padding:8px 10px; background:var(--card-bg); }
.ml-milestone-item.gate { border-left-color:var(--accent-amber); }
.ml-milestone-item.passed { border-left-color:var(--accent-green); }
.ml-milestone-item.at-risk, .ml-milestone-item.failed { border-left-color:var(--nasa-red); }
.ml-milestone-name { font-size:12px; color:var(--text-main); }
.ml-milestone-meta { margin-top:3px; font-family:var(--font-mono); font-size:9px; color:var(--text-dim); }
.ml-milestone-actions { display:flex; gap:5px; flex-wrap:wrap; justify-content:flex-end; }
.ml-schedule-task-fields .ml-schedule-id-list { margin-top:5px; font-family:var(--font-mono); font-size:8px; color:var(--text-dim); line-height:1.45; overflow-wrap:anywhere; }
.ml-schedule-health { font-family:var(--font-mono); font-size:9px; letter-spacing:.06em; }
.ml-schedule-health.nominal { color:var(--accent-green); }
.ml-schedule-health.risk { color:var(--accent-amber); }
.ml-schedule-health.blocked { color:var(--nasa-red); }
body.ml-theme-light .ml-gantt .weekend { background:#f3f5f7; }
body.ml-theme-light .ml-gantt .bar { background:#dce8f5; }
body.ml-theme-light .ml-gantt .bar.critical { background:#f7ded9; }
body.ml-theme-light .ml-gantt .bar.blocked { background:#fff1ce; }
body.ml-theme-light .ml-gantt .bar.done { background:#e0f1e7; }
body.ml-theme-light .ml-schedule-warning { background:#fff7df; }
body.ml-theme-light .ml-dep-node rect, body.ml-theme-light .ml-milestone-item { fill:#fff; background:#fff; }
@media (max-width:720px) {
  .view-toggles { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ml-schedule-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ml-schedule-toolbar { padding:10px; }
  .ml-schedule-panel-head { flex-direction:column; }
  .ml-gantt .task-col { width:154px; min-width:154px; max-width:154px; padding:5px 7px; }
  .ml-gantt .unit-col { width:22px; min-width:22px; max-width:22px; }
  .ml-milestone-item { grid-template-columns:1fr; }
  .ml-milestone-actions { justify-content:flex-start; }
  .ml-schedule-span-2 { grid-column:auto; }
}
@media (max-width:380px) {
  .ml-schedule-metrics { grid-template-columns:1fr; }
  .ml-gantt .task-col { width:138px; min-width:138px; max-width:138px; }
}

/* ========================================== */
/* MISSION LOG 2.1.1 // RECORD TYPES & BRIEFS */
/* ========================================== */
.ml-record-type-row {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-bottom:12px;
}
.ml-record-type-control {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}
.ml-record-type-value {
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.08em;
  color:var(--text-main);
}
.ml-record-type-note {
  margin-top:4px;
  font-size:11px;
  line-height:1.5;
  color:var(--text-dim);
}
.brief-view-head {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:14px;
  padding:0 0 14px;
  margin-bottom:14px;
  border-bottom:1px solid var(--grid-line);
}
.brief-view-head h3 { margin-top:3px; }
.brief-view-head > span {
  font-family:var(--font-mono);
  font-size:9px;
  letter-spacing:.08em;
  color:var(--text-dim);
}
.brief-card::before { background:var(--nasa-blue); }
.brief-id-tag {
  display:inline-block;
  margin-left:6px;
  padding:2px 5px;
  border:1px solid var(--nasa-blue);
  font-size:8px;
  letter-spacing:.08em;
  color:var(--nasa-blue);
  vertical-align:1px;
}
.brief-chip-row {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:13px;
}
.ml-chip.brief-chip {
  border-color:var(--nasa-blue);
  color:var(--nasa-blue);
}
body.ml-theme-light .brief-id-tag,
body.ml-theme-light .ml-chip.brief-chip {
  border-color:#0b3d91;
  color:#0b3d91;
}
body.ml-theme-light .brief-card::before { background:#0b3d91; }

@media (max-width:720px) {
  .ml-record-type-row { grid-template-columns:1fr; gap:0; }
  .brief-view-head { flex-direction:column; align-items:flex-start; }
  .ml-record-type-control { align-items:flex-start; }
  .ml-record-type-control .btn-outline { width:100%; }
}

/* MISSION LOG 2.1.3 // Data-integrity + recovery-safe state guard */
.ml-recovery-panel{margin:18px 0 4px;border:1px solid var(--nasa-red);border-left:4px solid var(--nasa-red);background:var(--panel-bg);padding:16px;font-family:var(--font-mono)}
.ml-recovery-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:1px solid var(--grid-line);padding-bottom:12px;margin-bottom:12px}
.ml-recovery-kicker{font-size:9px;letter-spacing:.16em;color:var(--nasa-red);margin-bottom:5px}.ml-recovery-head h2{font-size:16px;letter-spacing:.05em}.ml-recovery-lock{font-size:9px;letter-spacing:.12em;color:var(--nasa-red);border:1px solid var(--nasa-red);padding:5px 7px;white-space:nowrap}
.ml-recovery-panel>p{font-size:11px;line-height:1.7;color:var(--text-dim);max-width:860px}.ml-recovery-actions{margin-top:12px}.ml-recovery-results{margin-top:14px;border-top:1px solid var(--grid-line);padding-top:10px}.ml-recovery-loading,.ml-recovery-error{font-size:10px;line-height:1.7;color:var(--text-dim)}
.ml-recovery-error{color:var(--nasa-red)}.ml-recovery-backup{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--grid-line)}.ml-recovery-backup-main{display:flex;flex-direction:column;gap:3px;min-width:0}.ml-recovery-backup-main strong{font-size:10px;letter-spacing:.08em}.ml-recovery-backup-main span,.ml-recovery-backup-main small{font-size:9px;color:var(--text-dim);overflow-wrap:anywhere}.ml-recovery-counts{display:flex;gap:6px;flex-wrap:wrap}.ml-recovery-counts span{font-size:8px;border:1px solid var(--grid-line);padding:4px 6px;white-space:nowrap}
body.ml-theme-light .ml-recovery-panel{background:#fff;border-color:#b42318}body.ml-theme-light .ml-recovery-kicker,body.ml-theme-light .ml-recovery-lock,body.ml-theme-light .ml-recovery-error{color:#b42318;border-color:#b42318}
@media(max-width:720px){.ml-recovery-head{flex-direction:column}.ml-recovery-backup{grid-template-columns:1fr}.ml-recovery-counts{justify-content:flex-start}.ml-recovery-backup .btn-outline{width:100%;min-height:44px}}
