        @media screen and (max-width: 768px) {
            /* GLOBAL RESET BORDERS & SHADOWS */
            .psico-admin-shell *, .psico-portal-shell * { box-sizing: border-box !important; }
            .psico-admin-shell, .psico-portal-shell { padding: 0 !important; margin: 0 !important; background: transparent !important; box-shadow: none !important; border: none !important; }
            
            /* TABS NAVIGATION (BOTTOM BAR) */
            .psico-tabs-nav { 
                  position: fixed !important; 
                  bottom: 0 !important; 
                  left: 0 !important; 
                  right: 0 !important; 
                  background: rgba(255, 255, 255, 0.9) !important;
                  backdrop-filter: blur(15px) !important;
                  -webkit-backdrop-filter: blur(15px) !important;
                  flex-wrap: nowrap !important; 
                  overflow-x: auto !important; 
                  padding: 12px 10px 25px 10px !important; /* Extra padding for iPhone home bar */
                  margin: 0 !important; 
                  z-index: 99999 !important; 
                  box-shadow: 0 -1px 0 rgba(0,0,0,0.05) !important; 
                  justify-content: space-around !important; 
                  border-bottom: none !important; 
                  border-top: none !important;
            }
            .psico-portal-shell .psico-tabs-nav .psico-tab-btn {
                flex: 1 !important; 
                flex-direction: column !important; 
                align-items: center !important;
                justify-content: center !important;
                font-size: 10px !important; 
                padding: 4px 2px !important; 
                white-space: normal !important; 
                text-align: center !important; 
                line-height: 1.2 !important; 
                border-bottom: none !important; 
                border-radius: 12px !important;
                margin: 0 !important;
                color: #94a3b8 !important;
                background: transparent !important;
            }
            .psico-portal-shell .psico-tabs-nav .psico-tab-btn svg {
                margin-bottom: 4px !important;
                display: block !important;
            }
            .psico-portal-shell .psico-tabs-nav .psico-tab-btn.active { 
                color: var(--pb-primary, #2563eb) !important; 
                font-weight: 600 !important;
            }
            
            /* TOP HEADER (Title & Actions) */
            .psico-portal-top { margin-bottom: 15px !important; }
            .psico-portal-top-title h1 { font-size: 24px !important; font-weight: 700 !important; color: #0f172a !important; margin-bottom: 4px !important; }
            .psico-portal-top-title p { font-size: 14px !important; color: #64748b !important; }
            .psico-portal-top-actions .psico-btn { width: 44px !important; height: 44px !important; border-radius: 50% !important; background: #fff !important; box-shadow: 0 2px 8px rgba(0,0,0,0.05) !important; color: var(--pb-primary, #2563eb) !important; border: none !important; display: flex !important; justify-content: center !important; align-items: center !important; }
            .psico-portal-top-actions .action-text { display: none !important; }

            /* KPIs (Dashboard) */
            .psico-portal-kpi-wrap { gap: 8px !important; margin-bottom: 15px !important; flex-wrap: nowrap !important; overflow-x: auto !important; padding-bottom: 5px !important; }
            .psico-portal-kpi-wrap::-webkit-scrollbar { display: none !important; }
            .psico-portal-kpi { 
                flex: 0 0 auto !important; 
                width: 120px !important; 
                padding: 10px !important;
                background: #fff !important;
                border-radius: 12px !important;
                border: 1px solid #f1f5f9 !important;
                box-shadow: 0 2px 4px rgba(0,0,0,0.02) !important;
            }
            .psico-portal-kpi span { font-size: 13px !important; color: #64748b !important; font-weight: 500 !important; }
            .psico-portal-kpi strong { font-size: 24px !important; color: #0f172a !important; margin-top: 8px !important; font-weight: 700 !important; }

            /* PATIENTS DIRECTORY (Table to Cards) */
            #portal-tab-patients h3 { font-size: 20px !important; font-weight: 700 !important; color: #0f172a !important; }
            #portal-tab-patients .psico-table, 
            #portal-tab-patients .psico-table tbody { display: flex !important; flex-direction: column !important; gap: 8px !important; background: transparent !important; border: none !important; padding: 0 !important; }
            #portal-tab-patients .psico-table thead { display: none !important; }
            #portal-tab-patients .psico-table tr {
                display: flex !important;
                flex-direction: column !important;
                background: #fff !important;
                border-radius: 12px !important;
                padding: 12px !important;
                border: 1px solid #f1f5f9 !important;
                box-shadow: 0 2px 4px rgba(0,0,0,0.02) !important;
                margin-bottom: 0 !important;
            }
            #portal-tab-patients .psico-table td {
                display: flex !important;
                padding: 2px 0 !important;
                border: none !important;
                color: #64748b !important;
                font-size: 14px !important;
            }
            #portal-tab-patients .psico-table td:nth-child(1) { /* Name */
                font-size: 18px !important;
                font-weight: 700 !important;
                color: #0f172a !important;
                margin-bottom: 6px !important;
            }
            #portal-tab-patients .psico-table td:nth-child(2)::before { content: "RUT: "; margin-right: 4px; font-weight: 500; }
            #portal-tab-patients .psico-table td:nth-child(3)::before { content: "Email: "; margin-right: 4px; font-weight: 500; }
            #portal-tab-patients .psico-table td:nth-child(4)::before { content: "Tel: "; margin-right: 4px; font-weight: 500; }
            #portal-tab-patients .psico-table td:nth-child(5) { /* Actions */
                margin-top: 12px !important;
                padding-top: 12px !important;
                border-top: 1px solid #f1f5f9 !important;
                justify-content: flex-start !important; /* Align buttons nicely */
                flex-direction: row !important;
                flex-wrap: wrap !important;
            }
            #portal-tab-patients .psico-table td:nth-child(5) button.psico-action-patient-profile {
                flex: 1 1 100% !important; /* Take full row */
                padding: 8px !important;
                border-radius: 8px !important;
                font-size: 14px !important;
                font-weight: 600 !important;
                background: rgba(37, 99, 235, 0.1) !important;
                color: var(--pb-primary, #2563eb) !important;
                border: none !important;
                margin-bottom: 4px !important;
            }
            #portal-tab-patients .psico-table td:nth-child(5) .psico-crm-btn {
                width: 44px !important; /* Larger touch target for mobile */
                height: 44px !important;
            }

            /* SEARCH & FILTERS */
            .portal-filters { gap: 10px !important; margin-bottom: 20px !important; flex-wrap: nowrap !important; overflow-x: auto !important; padding-bottom: 5px !important; scrollbar-width: none !important; }
            .portal-filters::-webkit-scrollbar { display: none !important; }
            .flt-patient-portal, .mng-filter-text, .mng-filter-prof, .mng-filter-loc, .psico-admin-filters input, .psico-admin-filters select {
                background: #f1f5f9 !important;
                border: none !important;
                border-radius: 16px !important;
                padding: 14px 16px !important;
                font-size: 15px !important;
                color: #0f172a !important;
                width: 100% !important;
                box-shadow: none !important;
                flex: 0 0 auto !important; /* Allow scrolling for selects */
            }
            .mng-filter-prof, .mng-filter-loc { min-width: 160px !important; }
            
            /* BOOKING CARDS (Agenda & Reservas) */
            .psico-booking-card {
                background: #fff !important;
                border-radius: 12px !important;
                padding: 12px !important;
                border: 1px solid #f1f5f9 !important;
                box-shadow: 0 2px 4px rgba(0,0,0,0.02) !important;
                margin-bottom: 10px !important;
                display: flex !important;
                flex-direction: column !important;
            }
            .psico-booking-card-header { border-bottom: 1px solid #f1f5f9 !important; padding-bottom: 12px !important; margin-bottom: 12px !important; border-top: none !important; }
            .psico-booking-card-time { font-size: 18px !important; font-weight: 700 !important; color: #0f172a !important; }
            .psico-booking-card-status { border-radius: 20px !important; font-size: 12px !important; padding: 4px 10px !important; font-weight: 600 !important; }
            .psico-booking-card-content p { font-size: 14px !important; margin-bottom: 6px !important; }
            
            /* MODALS TO BOTTOM SHEETS */
            .psico-modal { align-items: flex-end !important; padding: 0 !important; background: rgba(0,0,0,0.5) !important; justify-content: center !important; }
            .psico-modal-dialog, .psico-modal-content {
                width: 100% !important;
                max-width: 100% !important;
                margin: 0 !important;
                border-radius: 24px 24px 0 0 !important;
                padding: 0 !important;
                animation: slideUp 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
                max-height: 90vh !important;
                overflow-y: hidden !important; /* Hide scroll on main dialog, scroll body */
                background: #f8fafc !important;
                border: none !important;
                display: flex !important;
                flex-direction: column !important;
            }
            .psico-modal-dialog::before, .psico-modal-content::before {
                content: '';
                display: block;
                width: 40px;
                height: 5px;
                background: #cbd5e1;
                border-radius: 10px;
                margin: 12px auto 8px auto;
                flex-shrink: 0;
            }
            @keyframes slideUp {
                from { transform: translateY(100%); }
                to { transform: translateY(0); }
            }
            
            /* APP NATIVE PATIENT PROFILE MODAL */
            #modal-patient-profile .psico-card-head { background: transparent !important; color: #0f172a !important; border-bottom: none !important; justify-content: center !important; position: relative !important; padding: 10px 20px 5px !important; }
            #modal-patient-profile .psico-card-head h3 { font-size: 18px !important; text-align: center !important; font-weight: 700 !important; margin: 0 !important; }
            #modal-patient-profile .psico-btn-close { color: #64748b !important; position: absolute !important; right: 20px !important; top: 10px !important; font-size: 24px !important; background: #e2e8f0 !important; width: 30px !important; height: 30px !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; line-height: 1 !important; padding: 0 !important; }
            
            #modal-patient-profile .psico-modal-body { padding: 0 !important; display: flex !important; flex-direction: column !important; background: transparent !important; height: 100% !important; overflow: hidden !important; }
            
            /* Pill-shaped segment control for tabs */
            #modal-patient-profile .psico-tabs-nav { flex-direction: row !important; background: transparent !important; padding: 10px 15px !important; gap: 8px !important; border-bottom: none !important; overflow-x: auto !important; scrollbar-width: none !important; }
            #modal-patient-profile .psico-tabs-nav::-webkit-scrollbar { display: none !important; }
            #modal-patient-profile .psico-tab-btn { background: #e2e8f0 !important; border: none !important; border-radius: 20px !important; padding: 8px 16px !important; font-size: 13px !important; font-weight: 600 !important; color: #64748b !important; white-space: nowrap !important; flex: 0 0 auto !important; }
            #modal-patient-profile .psico-tab-btn.active { background: var(--pb-primary, #2563eb) !important; color: #fff !important; }
            
            /* Content area scrollable */
            #modal-patient-profile .psico-modal-body > div:last-child { padding: 15px !important; background: #f8fafc !important; overflow-y: auto !important; height: 100% !important; padding-bottom: 120px !important; }
            
            /* Fix squished inputs */
            #patient-tab-info > form > div { grid-template-columns: 1fr !important; gap: 12px !important; margin-bottom: 12px !important; }
            #patient-tab-info .psico-form-group { margin-bottom: 0 !important; }
            #patient-tab-info label { font-size: 12px !important; color: #64748b !important; padding-left: 5px !important; margin-bottom: 4px !important; }
            #patient-tab-info input { background: #fff !important; border: none !important; border-radius: 12px !important; padding: 14px 16px !important; font-size: 15px !important; box-shadow: 0 2px 8px rgba(0,0,0,0.02) !important; }

}

