
        .lazy-img-placeholder { width: 60px; height: 60px; border-radius: 8px; background: rgba(0,200,255,0.05); display: flex; align-items: center; justify-content: center; font-size: 10px; color: rgba(0,200,255,0.25); }

        /* ===== ACT TABLE ===== */
        .act-table-container { background: rgba(0,20,60,0.3); border-radius: 12px; border: 1px solid rgba(0,200,255,0.1); overflow: auto; overflow-x: auto; -webkit-overflow-scrolling: touch; touch-action: pan-x pan-y; max-height: 60vh; }
        .act-table { min-width: 100%; border-collapse: collapse; }
        .act-table th { background: rgba(0,200,255,0.08); padding: 8px 10px; text-align: left; font-size: 11px; font-weight: 600; color: rgba(0,220,255,0.7); border: 1px solid rgba(0,200,255,0.1); position: sticky; top: 0; white-space: nowrap; }
        .act-table td { padding: 6px 8px; border: 1px solid rgba(0,200,255,0.06); font-size: 12px; color: rgba(255,255,255,0.8); min-width: 80px; }
        .act-table td[contenteditable]:focus { background: rgba(0,200,255,0.08); outline: 1px solid rgba(0,200,255,0.3); }
        @media (max-width: 600px) {
          .act-editor-modal { width: 100% !important; margin: 0 !important; border-radius: 16px 16px 0 0 !important; max-height: 94vh !important; overflow-y: auto; padding: 16px 12px 24px !important; }
          .modal-overlay:has(.act-editor-modal) { align-items: flex-end !important; padding: 0 !important; }
          .act-table-container { max-height: 48vh; border-radius: 8px; }
          .act-table { min-width: 600px; }
          .act-table th { font-size: 14px; padding: 12px 14px; min-width: 120px; }
          .act-table td { font-size: 15px; padding: 11px 14px; min-width: 120px; min-height: 44px; line-height: 1.5; }
          .act-table td[contenteditable] { min-height: 44px; }
          .act-table td[contenteditable]:focus { font-size: 16px; }
          .act-editor-actions { margin-top: 16px !important; gap: 10px !important; }
          .act-editor-actions .btn-secondary, .act-editor-actions .btn-primary { min-height: 44px; font-size: 14px !important; padding: 10px 14px !important; }
        }

        /* ===== CHAT TEXTAREA ===== */
        .chat-textarea { background: rgba(0,30,80,0.4); border: 1px solid rgba(0,200,255,0.1); border-radius: 8px; padding: 8px 12px; color: rgba(255,255,255,0.88); font-size: 13px; resize: none; outline: none; transition: border-color 0.2s; }
        .chat-textarea:focus { border-color: rgba(0,200,255,0.35); box-shadow: 0 0 0 3px rgba(0,200,255,0.06); }
        .chat-textarea::placeholder { color: rgba(0,200,255,0.25); }

        /* ===== SYNC INDICATOR ===== */
        .sync-dot { width: 8px; height: 8px; border-radius: 50%; display: inline-block; }
        .sync-online { background: #00DDFF; box-shadow: 0 0 6px #00DDFF; }
        .sync-offline { background: #666; }

        /* ===== PRINT ===== */
        @media print {
            body { background: white !important; color: black !important; }
            .sidebar, .header, .notification-panel, .toast-container, .modal-overlay { display: none !important; }
            .app-container { display: block !important; }
            .main-content { display: block !important; }
            .content-area { padding: 10px !important; overflow: visible !important; }
            .act-table-container { max-height: none !important; overflow: visible !important; border-color: #ccc !important; }
            .act-table th { background: #f0f0f0 !important; color: black !important; border-color: #ccc !important; }
            .act-table td { color: black !important; border-color: #ccc !important; }
            .btn-primary, .btn-secondary, .btn-danger, .btn-yandex { display: none !important; }
            .card, .kanban-board, .cards-grid { display: none !important; }
            .no-data { display: none !important; }
        }

        /* ╔══════════════════════════════════════════════════════╗
           ║  v9.2 — UNIFIED GLASSMORPHISM UPGRADE               ║
           ║  Единый glassmorphism-стиль по всему дашборду       ║
           ╚══════════════════════════════════════════════════════╝ */

        /* ── Keyframes ── */
        @keyframes fadeIn { from { opacity:0; transform:translateY(-4px); } to { opacity:1; transform:translateY(0); } }
        @keyframes glowPulse { 0%,100%{box-shadow:0 4px 24px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.05)} 50%{box-shadow:0 8px 32px rgba(0,0,0,.4),0 0 22px rgba(0,200,255,.1),inset 0 1px 0 rgba(0,240,255,.07)} }

        /* ── Cards ── */
        .card {
            background: rgba(5,16,52,0.58) !important;
            backdrop-filter: blur(22px) !important;
            -webkit-backdrop-filter: blur(22px) !important;
            border: 1px solid rgba(0,200,255,0.14) !important;
            border-radius: 16px !important;
            box-shadow: 0 4px 24px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.05) !important;
            transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease !important;
            overflow: hidden;
            position: relative;
        }
        .card::before {
            content: '';
            position: absolute;
            top: -40px; right: -40px;
            width: 130px; height: 130px;
            border-radius: 50%;
            background: radial-gradient(circle, rgba(0,200,255,.07) 0%, transparent 70%);
            pointer-events: none;
        }
        .card:hover {
            background: rgba(0,50,130,.52) !important;
            border-color: rgba(0,220,255,.30) !important;
            transform: translateY(-5px) scale(1.012) !important;
            box-shadow: 0 18px 48px rgba(0,0,0,.50), 0 0 28px rgba(0,200,255,.15), inset 0 1px 0 rgba(0,240,255,.10) !important;
        }

        /* ── Stat cards ── */
        .stat-card {
            background: rgba(5,16,52,0.56) !important;
            backdrop-filter: blur(22px) !important;
            -webkit-backdrop-filter: blur(22px) !important;
            border: 1px solid rgba(0,200,255,0.13) !important;
            border-radius: 16px !important;
            box-shadow: 0 4px 24px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.05) !important;
            transition: all .25s ease !important;
            position: relative;
            overflow: hidden;
        }
        .stat-card::after {
            content: '';
            position: absolute;
            bottom: -22px; right: -22px;
            width: 90px; height: 90px;
            border-radius: 50%;
            background: radial-gradient(circle, rgba(0,200,255,.11) 0%, transparent 70%);
            pointer-events: none;
        }
        .stat-card:hover {
            border-color: rgba(0,220,255,.28) !important;
            box-shadow: 0 10px 32px rgba(0,0,0,.40), 0 0 24px rgba(0,200,255,.13) !important;
            transform: translateY(-3px) !important;
        }
        .stat-value {
            font-size: 28px !important;
            font-weight: 800 !important;
            background: linear-gradient(135deg, rgba(255,255,255,.98) 20%, #00DDFF 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            filter: drop-shadow(0 0 10px rgba(0,200,255,.28));
        }
        .stat-label {
            font-size: 11px !important;
            color: rgba(0,220,255,.58) !important;
            letter-spacing: .8px !important;
            font-weight: 700 !important;
            text-transform: uppercase !important;
        }

        /* ── Kanban columns ── */
        .kanban-column {
            background: rgba(4,12,42,.62) !important;
            backdrop-filter: blur(24px) !important;
            -webkit-backdrop-filter: blur(24px) !important;
            border: 1px solid rgba(0,200,255,.10) !important;
            border-radius: 18px !important;
            box-shadow: 0 4px 24px rgba(0,0,0,.28) !important;
        }