/* === Modal + Ask Anything terminal + Monozen chassis + modal-close/corners + modal content (moved from main.css) === */
        /* Smooth Modal Transitions */
        #modalOverlay {
            position: fixed;
            inset: 0;
            background: rgba(0, 0, 0, 0.75);
            z-index: 2000;
            display: flex;
            align-items: center;
            justify-content: center;
            backdrop-filter: blur(8px);
            -webkit-backdrop-filter: blur(8px);
            opacity: 0;
            visibility: hidden;
            transition: opacity 0.4s cubic-bezier(0.2, 0, 0, 1), visibility 0.4s;
            will-change: opacity, visibility;
        }
        #modalOverlay.open {
            opacity: 1;
            visibility: visible;
        }
        .modal-card {
            background: var(--bg);
            border: 1px solid var(--accent);
            padding: 64px 64px 48px 48px;
            max-width: 600px;
            width: 90%;
            position: relative;
            transform: translateY(20px) scale(0.98);
            opacity: 0;
            transition: transform 0.4s cubic-bezier(0.2, 0, 0, 1), opacity 0.4s cubic-bezier(0.2, 0, 0, 1);
            box-shadow: 0 10px 30px rgba(0,0,0,0.15), 0 30px 70px rgba(0,0,0,0.2);
            will-change: transform, opacity;
        }
        #modalOverlay.open .modal-card {
            transform: translateY(0) scale(1);
            opacity: 1;
        }
        
        /* Ask Anything - Monozen Brutalist Terminal */
        #askModal {
            position: fixed; inset: 0; z-index: 9999;
            display: none;
            align-items: center;
            justify-content: center;
            background: rgba(0,0,0,0.8);
            backdrop-filter: blur(4px);
        }
        #askModal.open { display: flex !important; }

        .monozen-chassis {
            width: 100%;
            max-width: 672px;
            background: #0d0d0d;
            border: 1px solid #262626;
            box-shadow: 0 25px 50px -12px rgba(0,0,0,0.5);
            font-family: 'SF Mono', 'JetBrains Mono', 'Fira Code', monospace;
            font-size: 13px;
            color: #e5e5e5;
            position: relative;
            overflow: hidden;
            resize: none;
        }
        .monozen-chassis .resize-handle {
            position: absolute;
            bottom: 0; right: 0;
            width: 20px; height: 20px;
            cursor: nwse-resize;
            z-index: 10;
            background: linear-gradient(135deg, transparent 50%, #262626 50%);
            opacity: 0.4;
            transition: opacity 0.2s;
        }
        .monozen-chassis .resize-handle:hover { opacity: 0.8; }
        .monozen-chassis .resize-handle::after {
            content: '';
            position: absolute;
            bottom: 2px; right: 2px;
            width: 8px; height: 8px;
            border-right: 1.5px solid var(--accent, #dc2626);
            border-bottom: 1.5px solid var(--accent, #dc2626);
            opacity: 0.6;
        }

        .monozen-chassis .status-bar {
            display: flex;
            align-items: center;
            justify-content: space-between;
            border-bottom: 1px solid #262626;
            padding: 8px 16px;
            background: #121212;
            font-size: 11px;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            color: #737373;
            user-select: none;
        }
        .monozen-chassis .status-bar .left { display: flex; align-items: center; gap: 8px; }
        /* Ask chassis reticle prompt echo */
        .monozen-chassis .status-bar .right { display: flex; align-items: center; gap: 16px; }

        .monozen-chassis .status-indicator {
            display: inline-block;
            width: 8px; height: 8px;
            background: #dc2626;
            animation: monoPulse 2s ease-in-out infinite;
        }
        @keyframes monoPulse { 0%,100% { opacity: 1; } 50% { opacity: 0.3; } }

        .monozen-chassis .close-btn {
            background: none; border: none;
            color: #737373; cursor: pointer;
            font-family: inherit; font-size: 11px;
            text-transform: uppercase; letter-spacing: 0.05em;
        }
        .monozen-chassis .close-btn:hover { color: #fff; }

        .monozen-chassis .screen {
            position: relative;
            padding: 20px;
            min-height: 380px;
            max-height: 65vh;
            overflow-y: auto;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            background: #080808;
        }
        .monozen-chassis .screen::-webkit-scrollbar { width: 4px; }
        .monozen-chassis .screen::-webkit-scrollbar-track { background: transparent; }
        .monozen-chassis .screen::-webkit-scrollbar-thumb { background: #262626; }

        /* VISITOR SCAN panel inside the Ask terminal */
        .monozen-chassis .session-block {
            border-top: 1px solid #262626;
            padding: 14px 16px;
            background: #0a0a0a;
            font-size: 12px;
            line-height: 1.5;
        }
        .monozen-chassis .session-block .sess-head {
            color: #dc2626;
            font-weight: 700;
            font-size: 11px;
            letter-spacing: 0.08em;
            margin-bottom: 8px;
            text-transform: uppercase;
        }
        .monozen-chassis .session-block .srow {
            display: flex;
            gap: 12px;
            padding: 2px 0;
        }
        .monozen-chassis .session-block .sk {
            color: #737373;
            min-width: 84px;
            flex: none;
            opacity: 0.8;
        }
        .monozen-chassis .session-block .sv {
            color: #e5e5e5;
            word-break: break-word;
        }
        .monozen-chassis .session-block .sv.a { color: #dc2626; }
        .monozen-chassis .session-block .sv.dim { color: #737373; }

        .glyph-matrix-canvas {
            position: absolute; top: 0; left: 0;
            width: 100%; height: 100%;
            pointer-events: none; z-index: 1;
            opacity: 0;
            transition: opacity 0.4s;
        }
        .monozen-chassis { position: relative; z-index: 2; }
        #monozenOutputLog {
            position: relative; z-index: 1;
            line-height: 1.625;
            white-space: pre-wrap;
            font-family: 'SF Mono', 'JetBrains Mono', 'Fira Code', monospace;
            font-size: 12px;
            color: #a3a3a3;
        }
        #monozenOutputLog .alert { color: #dc2626; font-weight: 700; }
        #monozenOutputLog .ok    { color: #22c55e; }
        #monozenOutputLog .cmd   { color: #fff; }
        #monozenOutputLog .hl    { color: var(--accent); text-decoration: underline; cursor: pointer; }
        #monozenOutputLog .hl:hover { opacity: 0.7; }

        .ask-chips {
            display: flex; flex-wrap: wrap; gap: 6px;
            margin-top: 12px; margin-bottom: 4px; z-index: 2; position: relative;
        }
        .ask-chip {
            background: rgba(255, 255, 255, 0.03);
            border: 1px solid rgba(255, 255, 255, 0.12);
            color: var(--muted, #a3a3a3);
            font-family: 'JetBrains Mono', monospace; font-size: 10px; font-weight: 600;
            padding: 3px 8px; border-radius: 3px; cursor: pointer;
            letter-spacing: 0.05em; transition: color 0.2s, border-color 0.2s, background 0.2s;
        }
        .ask-chip:hover {
            color: var(--accent, #e63946);
            border-color: var(--accent, #e63946);
            background: rgba(230, 57, 70, 0.08);
        }

        #monozenTerminalForm {
            position: relative; z-index: 1;
            display: flex;
            align-items: baseline;
            width: 100%;
            gap: 8px;
            border-top: 1px solid #1a1a1a;
            padding-top: 12px;
            margin-top: 8px;
        }
        #monozenPromptText {
            color: #dc2626;
            font-weight: 700;
            user-select: none;
            white-space: nowrap;
        }
        #monozenTerminalInput {
            flex: 1;
            background: transparent;
            border: none;
            outline: none;
            color: #fff;
            caret-color: transparent;
            padding: 0; margin: 0;
            font-family: 'SF Mono', 'JetBrains Mono', 'Fira Code', monospace;
            font-size: 16px; /* ≥16px prevents iOS Safari auto-zoom on focus */
        }
        .monozen-chassis .cursor {
            display: inline-block;
            width: 6px; height: 15px;
            background: #dc2626;
            animation: monoBlink 1s step-end infinite;
            transform: translateY(2px);
        }
        @keyframes monoBlink { 50% { opacity: 0; } }
        .modal-close-btn {
            position: absolute;
            top: 18px;
            right: 18px;
            width: 40px;
            height: 40px;
            border-radius: 0;
            border: 1px solid var(--border);
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--fg);
            background: var(--bg);
            cursor: pointer;
            transition: border-color 0.2s, background-color 0.2s, color 0.2s, transform 0.2s;
            z-index: 10;
        }
        .modal-close-btn:hover {
            border-color: var(--accent);
            background-color: rgba(230, 57, 70, 0.04);
            color: var(--accent);
        }
        .modal-close-btn:active {
            transform: scale(0.96);
        }
        
        /* Modal reticle corner echo */
        .modal-card .modal-corner-tl,
        .modal-card .modal-corner-br {
            position: absolute;
            width: 16px;
            height: 16px;
            border-color: var(--accent);
            border-style: solid;
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.6s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .modal-card .modal-corner-tl {
            top: 12px;
            left: 12px;
            border-width: 1px 0 0 1px;
        }
        .modal-card .modal-corner-br {
            bottom: 12px;
            right: 12px;
            border-width: 0 1px 1px 0;
        }
        #modalOverlay.open .modal-corner-tl,
        #modalOverlay.open .modal-corner-br {
            opacity: 0.25;
        }
        /* Modal heading with prompt echo */
        

        /* Modal Content Styling */
        .modal-card .mlabel {
            font-family: 'JetBrains Mono', monospace;
            font-size: var(--fs-xs);
            color: var(--muted);
            letter-spacing: 0.08em;
            text-transform: uppercase;
            margin: 1.5rem 0 0.5rem;
        }
        .modal-card ul {
            list-style: none;
            display: grid;
            gap: 0.75rem;
            padding: 0;
            margin: 1rem 0;
        }
        .modal-card ul li {
            font-size: var(--fs-md);
            color: var(--fg);
            padding-left: 1.25rem;
            position: relative;
            line-height: 1.6;
        }
        .modal-card ul li::before {
            content: "";
            position: absolute;
            left: 0;
            top: 10px;
            width: 8px;
            height: 1px;
            background: var(--accent);
        }
        .modal-card ul li b {
            font-weight: 600;
        }
        .chips {
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem;
            margin-top: 1rem;
        }
        .chip {
            font-family: 'JetBrains Mono', monospace;
            font-size: var(--fs-xs);
            color: var(--muted);
            border: 1px solid var(--border);
            padding: 3px 8px;
            border-radius: 4px;
        }
        .status-badge {
            font-family: 'JetBrains Mono', monospace;
            font-size: var(--fs-2xs);
            letter-spacing: var(--ls-mono);
            text-transform: uppercase;
            color: var(--accent);
            border: 1px solid var(--accent);
            padding: 2px 8px;
            border-radius: 4px;
            font-weight: 700;
            flex: none;
        }
        .modal-card a.mlink {
            color: var(--accent);
            font-size: var(--fs-md);
            display: inline-flex;
            align-items: center;
            gap: 4px;
            text-decoration: none;
            font-weight: 600;
        }
        .modal-card a.mlink:hover {
            text-decoration: underline;
        }

/* === Telemetry opt-out toggle (footer) (moved from main.css) === */
        /* ---- Telemetry toggle in footer (inline, not fixed) ---- */
        .telemetry-toggle-footer {
            display: inline-flex; align-items: center; gap: 6px;
            background: none;
            border: 1px solid var(--border);
            border-radius: 999px;
            padding: 4px 10px;
            font-family: 'JetBrains Mono', monospace;
            font-size: var(--fs-2xs);
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: var(--muted);
            cursor: pointer;
            opacity: 0.65;
            transition: opacity 0.2s, color 0.2s, border-color 0.2s;
            white-space: nowrap;
        }
        .telemetry-toggle-footer:hover { opacity: 1; color: var(--fg); border-color: var(--accent); }
        .telemetry-toggle-footer .telemetry-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--accent); flex: none; }
        .telemetry-toggle-footer.opted-out .telemetry-dot { background: var(--muted); }

/* === Telemetry toggle mobile padding (moved from main.css) === */
            .telemetry-toggle-footer { padding: 4px 8px; font-size: 0.5rem; }

/* === Harvested data card (sidebar telemetry disclosure) (moved from main.css) === */
    /* ---- HARVESTED DATA CARD (sidebar telemetry disclosure) ---- */
    .hd-card {
        margin-top: 12px;
        border: 1px solid var(--border);
        background: var(--nav-bg);
        font-family: 'JetBrains Mono', monospace;
        font-size: 11px;
        color: var(--muted);
        overflow: hidden;
        transition: border-color 0.25s;
    }
    .hd-card:hover { border-color: var(--accent); }

    .hd-header {
        display: flex;
        align-items: center;
        gap: 6px;
        padding: 8px 10px;
        cursor: pointer;
        user-select: none;
        -webkit-tap-highlight-color: transparent;
        transition: background 0.2s;
    }
    .hd-header:hover { background: rgba(127,127,127,0.06); }
    .hd-header:active { transform: scale(0.98); }

    .hd-status-dot {
        width: 5px;
        height: 5px;
        border-radius: 50%;
        background: var(--accent);
        flex: none;
        animation: hdPulse 2.4s ease-in-out infinite;
        box-shadow: 0 0 6px color-mix(in srgb, var(--accent) 50%, transparent);
    }
    @keyframes hdPulse {
        0%, 100% { opacity: 1; transform: scale(1); }
        50% { opacity: 0.4; transform: scale(0.75); }
    }

    .hd-title {
        flex: 1;
        font-weight: 700;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: var(--fg);
        font-size: 8px;
    }
    .hd-count {
        font-size: 7px;
        color: var(--accent);
        font-weight: 700;
        opacity: 0.6;
        min-width: 14px;
        text-align: right;
    }
    .hd-chevron {
        flex: none;
        color: var(--muted);
        transition: transform 0.35s cubic-bezier(0.19, 1, 0.22, 1);
    }
    .hd-card.expanded .hd-chevron {
        transform: rotate(180deg);
    }

    .hd-body {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    }
    .hd-card.expanded .hd-body {
        max-height: 800px;
    }

    .hd-section {
        padding: 6px 10px 4px;
        border-top: 1px solid var(--border);
    }
    .hd-section:first-of-type { border-top: none; }

    .hd-section-label {
        font-size: 8px;
        letter-spacing: 0.15em;
        color: var(--accent);
        opacity: 0.5;
        margin-bottom: 4px;
        text-transform: uppercase;
        font-weight: 700;
    }

    .hd-row {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        padding: 2px 0;
        gap: 8px;
        opacity: 0;
        transform: translateX(-4px);
        transition: opacity 0.35s cubic-bezier(0.19, 1, 0.22, 1),
                    transform 0.35s cubic-bezier(0.19, 1, 0.22, 1);
    }
    .hd-card.hd-revealed .hd-row {
        opacity: 1;
        transform: translateX(0);
    }

    .hd-key {
        font-size: 10px;
        color: var(--muted);
        opacity: 0.7;
        white-space: nowrap;
    }
    .hd-val {
        font-size: 10px;
        color: var(--fg);
        text-align: right;
        word-break: break-word;
        max-width: none;
        line-height: 1.4;
    }

    .hd-advisory {
        padding: 8px 10px 10px;
        border-top: 1px dashed var(--border);
        margin-top: 2px;
    }
    .hd-advisory-line {
        font-size: 10px;
        line-height: 1.6;
        color: var(--muted);
        opacity: 0.7;
    }

