/* =========================================================
   PATAMARKET 2027 - CSS BLINDADO (SCOPE NUCLEAR)
   Variables ultra únicas: ptamkt_x9z_
========================================================= */

/* Variables autocontenidas (No afectan a tu tema) */
.ptamkt_x9z_root {
    --ptamkt_x9z_bg_app: #0a0a1a;
    --ptamkt_x9z_bg_card: #14142a;
    --ptamkt_x9z_bg_input: #0f0f23;
    --ptamkt_x9z_accent: #6e00ff;
    --ptamkt_x9z_accent_2: #00f0ff;
    --ptamkt_x9z_neon: #00ff9d;
    --ptamkt_x9z_txt_main: #ffffff;
    --ptamkt_x9z_txt_muted: #8a8aa0;
    --ptamkt_x9z_border: rgba(255, 255, 255, 0.1);
    --ptamkt_x9z_radius: 20px;
}

/* RESET NUCLEAR: Cero herencia del tema */
.ptamkt_x9z_root,
.ptamkt_x9z_root *,
.ptamkt_x9z_modal_overlay,
.ptamkt_x9z_modal_overlay * {
    all: revert;
    box-sizing: border-box !important;
    font-family: 'Sora', 'Segoe UI', sans-serif !important;
    color: var(--ptamkt_x9z_txt_main) !important;
    line-height: 1.5 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-decoration: none !important;
    list-style: none !important;
}

/* Contenedor Principal del Plugin */
.ptamkt_x9z_root {
    background: var(--ptamkt_x9z_bg_app) !important;
    padding: 40px 20px !important;
    max-width: 1000px !important;
    margin: 0 auto !important;
    border-radius: var(--ptamkt_x9z_radius) !important;
    display: block !important;
    width: 100% !important;
}

/* === TARJETAS Y PANELES === */
.ptamkt_x9z_card,
.ptamkt_x9z_switcher {
    background: var(--ptamkt_x9z_bg_card) !important;
    border: 1px solid var(--ptamkt_x9z_border) !important;
    border-radius: var(--ptamkt_x9z_radius) !important;
    box-shadow: 0 15px 40px rgba(0,0,0,0.4) !important;
    margin-bottom: 25px !important;
    padding: 30px !important;
    display: block !important;
    width: 100% !important;
}

/* === SELECTOR MULTI-EMPRESA === */
.ptamkt_x9z_switcher {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    align-items: center !important;
    padding: 15px 20px !important;
}
.ptamkt_x9z_btn_sm { padding: 8px 16px !important; font-size: 0.9rem !important; }
.ptamkt_x9z_btn_active { background: var(--ptamkt_x9z_accent) !important; color: #fff !important; }

/* === PERFIL EMPRESA (BANNER Y LOGO) === */
.ptamkt_x9z_profile_card {
    overflow: hidden !important;
    padding: 0 !important;
    position: relative !important;
}
.ptamkt_x9z_cover {
    height: 160px !important;
    width: 100% !important;
    background: linear-gradient(135deg, var(--ptamkt_x9z_accent), var(--ptamkt_x9z_neon)) !important;
    display: block !important;
}
.ptamkt_x9z_logo_wrap {
    position: absolute !important;
    top: 110px !important;
    left: 30px !important;
    width: 100px !important;
    height: 100px !important;
    z-index: 10 !important;
}
.ptamkt_x9z_logo {
    width: 100px !important;
    height: 100px !important;
    border-radius: 20px !important;
    object-fit: cover !important;
    border: 4px solid var(--ptamkt_x9z_bg_card) !important;
    background: #fff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 800 !important;
    color: #14142a !important;
}
.ptamkt_x9z_info_block {
    padding: 50px 30px 30px 30px !important;
    display: block !important;
}
.ptamkt_x9z_name {
    font-size: 1.8rem !important;
    margin: 0 0 10px 0 !important;
    font-weight: 700 !important;
    display: block !important;
}
.ptamkt_x9z_meta {
    display: block !important;
    margin-bottom: 20px !important;
    font-size: 1.1rem !important;
    color: var(--ptamkt_x9z_txt_muted) !important;
}
.ptamkt_x9z_meta strong { color: var(--ptamkt_x9z_neon) !important; }

/* === MAPA PERFIL === */
.ptamkt_x9z_map_wrap {
    margin-top: 20px !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    border: 1px solid var(--ptamkt_x9z_border) !important;
    display: block !important;
    width: 100% !important;
    height: 300px !important;
}
.ptamkt_x9z_map_box {
    height: 300px !important;
    width: 100% !important;
    border: none !important;
    z-index: 1 !important;
    display: block !important;
}

/* === PANEL PRODUCTOS === */
.ptamkt_x9z_header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 25px !important;
    border-bottom: 1px solid var(--ptamkt_x9z_border) !important;
    padding-bottom: 15px !important;
    width: 100% !important;
}
.ptamkt_x9z_header h3 {
    margin: 0 !important;
    font-size: 1.5rem !important;
    font-weight: 700 !important;
}

.ptamkt_x9z_list {
    display: flex !important;
    flex-direction: column !important;
    gap: 15px !important;
    width: 100% !important;
}
.ptamkt_x9z_row {
    display: flex !important;
    align-items: center !important;
    padding: 15px !important;
    border-radius: 16px !important;
    background: var(--ptamkt_x9z_bg_input) !important;
    border: 1px solid rgba(255,255,255,0.05) !important;
    width: 100% !important;
}
.ptamkt_x9z_row:hover { border-color: var(--ptamkt_x9z_accent) !important; }
.ptamkt_x9z_thumb {
    width: 60px !important;
    height: 60px !important;
    border-radius: 12px !important;
    background: #2a2a45 !important;
    overflow: hidden !important;
    margin-right: 15px !important;
    flex-shrink: 0 !important;
}
.ptamkt_x9z_thumb img { width: 100% !important; height: 100% !important; object-fit: cover !important; }
.ptamkt_x9z_prod_info { flex: 1 !important; display: block !important; }
.ptamkt_x9z_prod_info h4 { margin: 0 0 5px 0 !important; font-size: 1.1rem !important; }
.ptamkt_x9z_price {
    color: var(--ptamkt_x9z_neon) !important;
    font-weight: 700 !important;
    font-size: 1.1rem !important;
    display: block !important;
}
.ptamkt_x9z_actions { display: flex !important; gap: 10px !important; }
.ptamkt_x9z_btn_icon {
    width: 40px !important;
    height: 40px !important;
    border-radius: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255,255,255,0.05) !important;
    cursor: pointer !important;
    border: none !important;
    font-size: 1.2rem !important;
}
.ptamkt_x9z_btn_icon:hover { background: var(--ptamkt_x9z_accent) !important; }
.ptamkt_x9z_btn_del:hover { background: #ff0055 !important; }

.ptamkt_x9z_empty {
    text-align: center !important;
    padding: 40px !important;
    color: var(--ptamkt_x9z_txt_muted) !important;
    border: 2px dashed var(--ptamkt_x9z_border) !important;
    border-radius: 16px !important;
    display: block !important;
    width: 100% !important;
}

/* === BOTONES === */
.ptamkt_x9z_btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 14px 28px !important;
    border-radius: 12px !important;
    border: none !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    font-size: 1rem !important;
}
.ptamkt_x9z_btn_primary { background: var(--ptamkt_x9z_accent) !important; color: #fff !important; }
.ptamkt_x9z_btn_primary:hover { background: #8a2bff !important; }
.ptamkt_x9z_btn_neon { background: rgba(0, 255, 157, 0.1) !important; color: var(--ptamkt_x9z_neon) !important; border: 1px solid var(--ptamkt_x9z_neon) !important; padding: 10px 20px !important; }
.ptamkt_x9z_btn_neon:hover { background: var(--ptamkt_x9z_neon) !important; color: #000 !important; }
.ptamkt_x9z_btn_block { width: 100% !important; }

/* === MODAL === */
.ptamkt_x9z_modal_overlay {
    display: none !important;
    position: fixed !important;
    top: 0 !important; left: 0 !important;
    width: 100vw !important; height: 100vh !important;
    background: rgba(0,0,0,0.8) !important;
    backdrop-filter: blur(10px) !important;
    z-index: 99999 !important;
}
.ptamkt_x9z_modal_overlay.ptamkt_x9z_active { display: flex !important; align-items: center !important; justify-content: center !important; }
.ptamkt_x9z_modal_content {
    background: var(--ptamkt_x9z_bg_card) !important;
    border: 1px solid var(--ptamkt_x9z_border) !important;
    width: 90% !important;
    max-width: 600px !important;
    max-height: 90vh !important;
    overflow-y: auto !important;
    border-radius: 24px !important;
    padding: 0 !important;
    box-shadow: 0 20px 60px rgba(0,0,0,0.5) !important;
}
.ptamkt_x9z_modal_header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 25px 30px !important;
    border-bottom: 1px solid var(--ptamkt_x9z_border) !important;
}
.ptamkt_x9z_modal_header h3 { margin: 0 !important; font-size: 1.5rem !important; }
.ptamkt_x9z_close { font-size: 2rem !important; cursor: pointer !important; color: var(--ptamkt_x9z_txt_muted) !important; background: none !important; border: none !important; }
.ptamkt_x9z_modal_body { padding: 30px !important; display: block !important; width: 100% !important; }

/* === FORMULARIOS === */
.ptamkt_x9z_input_group { margin-bottom: 20px !important; display: block !important; width: 100% !important; }
.ptamkt_x9z_input_group label { display: block !important; font-size: 0.9rem !important; color: var(--ptamkt_x9z_txt_muted) !important; margin-bottom: 8px !important; font-weight: 600 !important; }
.ptamkt_x9z_input_group input, .ptamkt_x9z_input_group textarea, .ptamkt_x9z_select {
    width: 100% !important; padding: 16px !important; border-radius: 12px !important;
    border: 1px solid var(--ptamkt_x9z_border) !important; background: var(--ptamkt_x9z_bg_input) !important;
    font-size: 1rem !important; color: #fff !important; display: block !important;
}
.ptamkt_x9z_input_group input:focus, .ptamkt_x9z_input_group textarea:focus, .ptamkt_x9z_select:focus {
    outline: none !important; border-color: var(--ptamkt_x9z_accent) !important;
}
.ptamkt_x9z_grid_2 { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 20px !important; }

.ptamkt_x9z_check_group { display: flex !important; align-items: center !important; gap: 10px !important; margin: 15px 0 !important; }
.ptamkt_x9z_check_group input { width: 20px !important; height: 20px !important; accent-color: var(--ptamkt_x9z_accent) !important; cursor: pointer !important; }
.ptamkt_x9z_check_group label { margin: 0 !important; color: var(--ptamkt_x9z_txt_muted) !important; font-size: 0.9rem !important; cursor: pointer !important; }

/* === RESPONSIVE === */
@media (max-width: 768px) {
    .ptamkt_x9z_grid_2 { grid-template-columns: 1fr !important; }
    .ptamkt_x9z_logo_wrap { top: 120px !important; left: 20px !important; }
    .ptamkt_x9z_header { flex-direction: column !important; gap: 15px !important; align-items: flex-start !important; }
}