/* =========================================================
   PROMOSBLOG PAINEL — RESPONSIVIDADE MOBILE
   v1.0.0
   Apenas apresentação/layout. Nenhuma regra funcional.
========================================================= */

@media (max-width: 900px) {
    html,
    body {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    body {
        font-size: 15px;
    }

    img,
    video,
    canvas,
    svg {
        max-width: 100%;
    }

    .main,
    body.sidebar-collapsed .main {
        width: 100%;
        min-width: 0;
        margin-left: 0 !important;
    }

    .sidebar {
        width: min(86vw, 310px) !important;
        max-width: 310px;
        height: 100dvh;
        box-shadow: 14px 0 34px rgba(17, 17, 27, .14);
    }

    .sidebar-brand {
        min-height: 68px;
        padding: 12px 14px 12px 16px;
    }

    .sidebar-navigation {
        padding: 10px 10px 18px;
        overscroll-behavior: contain;
    }

    .menu-link {
        min-height: 46px !important;
        padding: 0 12px !important;
        font-size: 14px;
        border-radius: 10px;
    }

    .menu-section-toggle {
        min-height: 38px;
    }

    .sidebar-user {
        min-height: 68px;
    }

    .sidebar-overlay {
        backdrop-filter: blur(1px);
    }

    .topbar {
        min-height: 58px !important;
        padding: 8px 14px !important;
        gap: 10px !important;
        position: sticky;
        top: 0;
        z-index: 700;
    }

    .topbar-left,
    .topbar-right {
        min-width: 0;
        gap: 8px;
    }

    .mobile-menu-button {
        display: inline-flex !important;
        width: 42px !important;
        height: 42px !important;
        flex: 0 0 42px;
        font-size: 19px;
    }

    .breadcrumb {
        min-width: 0;
        max-width: 58vw;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: 12px !important;
    }

    .system-status {
        min-height: 34px;
        padding: 6px 9px !important;
        font-size: 10px !important;
        white-space: nowrap;
    }

    .content {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0;
        margin: 0 !important;
        padding: 18px 14px 30px !important;
    }

    .page-header {
        margin-bottom: 18px !important;
    }

    .page-header h1 {
        margin-bottom: 6px !important;
        font-size: clamp(23px, 7vw, 28px) !important;
        line-height: 1.15 !important;
        letter-spacing: -.35px !important;
        overflow-wrap: anywhere;
    }

    .page-header p {
        max-width: 100% !important;
        font-size: 14px !important;
        line-height: 1.5 !important;
        overflow-wrap: anywhere;
    }

    .card,
    .analytics-card,
    .integration-card,
    .store-card,
    .hunter-offer,
    .queue-control,
    .metric-card,
    .monitor-metric,
    .cacador-stats article,
    .stat-card {
        max-width: 100%;
        min-width: 0;
    }

    .card {
        border-radius: 13px !important;
    }

    .card-header {
        padding: 15px !important;
    }

    .card-header h2 {
        font-size: 19px !important;
        line-height: 1.25 !important;
    }

    .card-header p {
        font-size: 13px !important;
        line-height: 1.5 !important;
    }

    .card-body {
        padding: 15px !important;
    }

    button,
    .btn,
    input,
    select,
    textarea {
        max-width: 100%;
    }

    .btn {
        min-height: 44px !important;
        padding: 0 14px !important;
        font-size: 13px !important;
        line-height: 1.2;
    }

    .form-control,
    input[type="text"],
    input[type="url"],
    input[type="email"],
    input[type="password"],
    input[type="number"],
    input[type="time"],
    select,
    textarea {
        min-height: 44px;
        font-size: 16px !important;
    }

    textarea {
        line-height: 1.5;
    }

    input[type="checkbox"],
    input[type="radio"] {
        width: 20px;
        height: 20px;
        min-height: 0;
        flex: 0 0 auto;
    }

    .table-scroll,
    .monitor-table-wrap,
    .analytics-body[style*="overflow"],
    .history-list,
    .table-wrap {
        max-width: 100%;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;
    }

    table {
        max-width: none;
    }

    .toastq,
    .panel-toast {
        top: 10px !important;
        left: 10px !important;
        right: 10px !important;
        width: auto !important;
        max-width: none !important;
        font-size: 13px !important;
    }

    /* =====================================================
       DASHBOARD
    ===================================================== */

    .dashboard-stats {
        gap: 10px !important;
    }

    .stat-card {
        min-height: 104px !important;
        padding: 15px !important;
    }

    .stat-label {
        font-size: 10px !important;
        margin-bottom: 8px !important;
    }

    .stat-value {
        font-size: 26px !important;
    }

    .stat-description,
    .service-description,
    .quick-action-description {
        font-size: 12px !important;
        line-height: 1.45 !important;
    }

    .quick-action {
        min-width: 0;
        padding: 14px !important;
    }

    .quick-action-title,
    .service-name {
        font-size: 14px !important;
    }

    /* =====================================================
       CRIAR OFERTA
    ===================================================== */

    .offer-layout {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 14px !important;
    }

    .offer-right {
        position: static !important;
        min-width: 0;
    }

    .link-row,
    .channels-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .channel-box,
    .channel-option {
        min-width: 0;
    }

    .image-drop-zone,
    .attached-image,
    .preview-image-shell {
        max-width: 100%;
    }

    .offer-editor,
    .edit-textarea {
        min-height: 220px !important;
        font-size: 16px !important;
    }

    .queue-mode-row,
    .tracking-mode-row {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 10px !important;
    }

    .offer-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 9px !important;
    }

    .offer-actions .btn {
        width: 100% !important;
    }

    .preview-content,
    .preview-text,
    .preview-link,
    .attached-name,
    .attached-info {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    /* =====================================================
       FILA
    ===================================================== */

    .queue-toolbar,
    .channels {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 10px !important;
    }

    .queue-control,
    .channel {
        padding: 14px !important;
    }

    .qtitle,
    .channel strong {
        font-size: 14px !important;
    }

    .qhelp,
    .queue-state,
    .status,
    .sub,
    .qtime {
        font-size: 12px !important;
        line-height: 1.45 !important;
    }

    .interval,
    .daily-time-row {
        align-items: stretch !important;
    }

    .interval input,
    .daily-time-row input[type="time"] {
        width: 100% !important;
        min-width: 0 !important;
    }

    .daily-time-row label {
        width: 100%;
        align-items: stretch !important;
        flex-direction: column;
        font-size: 12px !important;
    }

    .queue-card-header {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 12px !important;
    }

    .queue-card-alternancia {
        width: 100%;
        justify-content: space-between !important;
    }

    .queue-item {
        grid-template-columns: 34px 58px minmax(0, 1fr) !important;
        gap: 9px !important;
        padding: 12px !important;
        align-items: start !important;
    }

    .thumb,
    .thumbph {
        width: 58px !important;
        height: 58px !important;
    }

    .qtext {
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        overflow-wrap: anywhere;
        font-size: 13px !important;
        line-height: 1.45 !important;
    }

    .qtime {
        grid-column: 2 / -1 !important;
        text-align: left !important;
    }

    .queue-actions-row {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        min-width: 0 !important;
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: flex-start !important;
        gap: 8px !important;
    }

    .queue-actions-row .btn {
        min-height: 42px !important;
        font-size: 12px !important;
    }

    .queue-actions-row .recurrence-control {
        width: 100% !important;
        justify-content: flex-start !important;
        font-size: 12px !important;
    }

    .edit-modal {
        padding: 8px !important;
    }

    .edit-card {
        width: 100% !important;
        max-height: calc(100dvh - 16px) !important;
        border-radius: 14px !important;
    }

    .edit-header,
    .edit-body,
    .edit-footer {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    .edit-header h2 {
        font-size: 22px !important;
    }

    .edit-header p {
        font-size: 13px !important;
    }

    .edit-body {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 16px !important;
    }

    .edit-footer {
        position: sticky;
        bottom: 0;
        z-index: 2;
        flex-wrap: wrap;
    }

    .edit-footer .btn {
        flex: 1 1 140px;
    }

    /* =====================================================
       CAÇADOR
    ===================================================== */

    .cacador-header {
        flex-direction: column !important;
        gap: 12px !important;
    }

    .cacador-run-actions {
        width: 100% !important;
        justify-content: flex-start !important;
    }

    .cacador-run-actions .btn {
        flex: 1 1 150px;
    }

    .cacador-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 9px !important;
        margin: 14px 0 !important;
    }

    .cacador-stats article {
        padding: 12px !important;
    }

    .cacador-stats span {
        font-size: 9px !important;
    }

    .cacador-stats strong {
        margin-top: 5px !important;
        font-size: 20px !important;
    }

    .cacador-tabs,
    .regras-tabs,
    .monitor-tabs,
    .periodos {
        flex-wrap: nowrap !important;
        overflow-x: auto;
        max-width: 100%;
        padding-bottom: 4px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
    }

    .cacador-tab,
    .regras-tab,
    .monitor-tab,
    .periodos button {
        flex: 0 0 auto;
        min-height: 42px !important;
        white-space: nowrap;
        font-size: 12px !important;
    }

    .cacador-grid.two,
    .criteria-grid,
    .filter-grid,
    .channel-grid,
    .turnos-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .filter-wide,
    .weight-total {
        grid-column: auto !important;
    }

    .switch-row {
        align-items: flex-start !important;
    }

    .switch-row small,
    .filter-stack small,
    .criteria-grid span,
    .filter-grid span,
    .filter-stack span {
        font-size: 12px !important;
    }

    .store-selector {
        gap: 7px !important;
    }

    .store-chip {
        flex: 1 1 145px;
        min-height: 44px;
    }

    .store-chip span {
        font-size: 13px !important;
    }

    .store-card-head {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .store-card-head strong {
        font-size: 14px !important;
    }

    .store-card-head small,
    .source-status {
        font-size: 11px !important;
        line-height: 1.4 !important;
    }

    .store-card-head .btn,
    .compact-btn {
        width: 100%;
    }

    .source-links-head {
        display: none !important;
    }

    .source-link-row {
        grid-template-columns: 28px minmax(0, 1fr) !important;
        gap: 8px !important;
        padding: 11px 0 !important;
    }

    .source-link-row .form-control {
        height: auto !important;
        min-height: 44px !important;
        font-size: 16px !important;
    }

    .source-link-row .fonte-url,
    .source-link-row .source-compact-status,
    .source-link-row .source-remove-link {
        grid-column: 2 / -1 !important;
    }

    .source-remove-link {
        width: 100% !important;
        min-height: 42px !important;
        font-size: 12px !important;
    }

    .history-table {
        min-width: 760px !important;
    }

    .cacador-table th,
    .cacador-table td {
        font-size: 11px !important;
        padding: 10px 8px !important;
    }

    .hunter-offer {
        grid-template-columns: 72px minmax(0, 1fr) !important;
        gap: 11px !important;
        padding: 12px !important;
    }

    .hunter-image {
        width: 72px !important;
        height: 72px !important;
    }

    .hunter-main h3 {
        font-size: 14px !important;
        line-height: 1.35;
        overflow-wrap: anywhere;
    }

    .hunter-main pre,
    .hunter-meta,
    .error-box {
        font-size: 12px !important;
    }

    .hunter-actions {
        grid-column: 1 / -1 !important;
        min-width: 0 !important;
        display: grid !important;
        grid-template-columns: 1fr 1fr;
    }

    .hunter-actions .btn {
        width: 100%;
    }

    .cacador-modal {
        padding: 8px !important;
    }

    .cacador-modal-card,
    .session-error-card {
        width: 100% !important;
        max-height: calc(100dvh - 16px);
        overflow: auto;
    }

    .modal-head,
    .modal-body,
    .modal-actions {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    .modal-actions {
        flex-wrap: wrap;
    }

    .modal-actions .btn {
        flex: 1 1 130px;
    }

    /* =====================================================
       INTEGRAÇÕES
    ===================================================== */

    .integrations-page {
        max-width: 100% !important;
    }

    .integration-card-head {
        padding: 15px !important;
        align-items: flex-start !important;
        flex-wrap: wrap !important;
    }

    .integration-logo {
        width: 40px !important;
        height: 40px !important;
        flex: 0 0 40px;
    }

    .integration-title {
        min-width: 0;
        flex: 1 1 calc(100% - 60px);
    }

    .integration-title h2 {
        font-size: 18px !important;
    }

    .integration-title p,
    .channels-title p,
    .integration-field small {
        font-size: 12px !important;
        line-height: 1.45;
    }

    .integration-status {
        margin-left: 0 !important;
        font-size: 11px !important;
    }

    .integration-card-body {
        padding: 15px !important;
    }

    .integration-grid.two,
    .integration-grid.three,
    .store-row {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .domains-field {
        grid-column: auto !important;
    }

    .secret-row,
    .store-title {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .integration-actions,
    .store-actions {
        width: 100%;
        justify-content: flex-start !important;
    }

    .integration-actions .btn,
    .store-actions .btn {
        flex: 1 1 140px;
    }

    /* =====================================================
       REGRAS / AUTOMAÇÃO
    ===================================================== */

    .regras-page {
        max-width: 100% !important;
    }

    .regras-header,
    .regras-card-title,
    .regras-footer {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .regras-grid.two,
    .regras-grid.three,
    .regras-grid.four,
    .text-rule,
    .link-head,
    .resolver-rule {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .test-link-row {
        flex-direction: column !important;
    }

    .regras-footer .btn,
    .test-link-row .btn {
        width: 100%;
    }

    .variables-note,
    .save-note,
    .test-result {
        font-size: 12px !important;
        line-height: 1.45 !important;
        overflow-wrap: anywhere;
    }

    /* =====================================================
       MONITOR DE PREÇOS / SEGURANÇA
    ===================================================== */

    .monitor-page {
        max-width: 100% !important;
    }

    .monitor-cards,
    .monitor-cards-four {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 9px !important;
    }

    .monitor-metric {
        padding: 12px !important;
    }

    .monitor-metric-label,
    .monitor-metric-sub {
        font-size: 10px !important;
    }

    .monitor-metric-value {
        font-size: 21px !important;
    }

    .monitor-grid,
    .monitor-form-row,
    .drawer-form-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .monitor-toolbar,
    .monitor-toolbar-main,
    .monitor-actions,
    .monitor-frequency-card,
    .monitor-frequency-controls,
    .monitor-bulk-actions {
        align-items: stretch !important;
        flex-direction: column !important;
        width: 100%;
    }

    .monitor-toolbar .btn,
    .monitor-actions .btn,
    .monitor-frequency-controls .btn,
    .monitor-bulk-actions .btn,
    .monitor-frequency-controls label,
    .monitor-search,
    .monitor-filterbar .form-control {
        width: 100% !important;
        min-width: 0 !important;
    }

    .monitor-note,
    .monitor-warning,
    .monitor-danger,
    .monitor-success {
        font-size: 12px !important;
        line-height: 1.5 !important;
    }

    .monitor-table-wrap {
        width: 100%;
        border-radius: 10px;
    }

    .monitor-table,
    .monitor-admin-table {
        min-width: 720px !important;
    }

    .monitor-table th,
    .monitor-table td,
    .monitor-admin-table th,
    .monitor-admin-table td {
        font-size: 11px !important;
        line-height: 1.4;
    }

    .monitor-title,
    .monitor-switch-label,
    .drawer-section h3 {
        font-size: 13px !important;
    }

    .monitor-muted,
    .monitor-switch-desc,
    .monitor-status,
    .monitor-pill,
    .monitor-code,
    .monitor-sent-count {
        font-size: 10px !important;
    }

    .monitor-kv {
        grid-template-columns: minmax(105px, .8fr) minmax(0, 1.2fr) !important;
        font-size: 12px !important;
    }

    .monitor-drawer {
        width: min(100vw, 560px) !important;
        max-width: 100vw !important;
    }

    .monitor-drawer-head,
    .monitor-drawer-body {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    .drawer-product {
        align-items: flex-start !important;
    }

    .monitor-detail-image {
        width: 82px !important;
        height: 82px !important;
        flex-basis: 82px !important;
    }

    .drawer-store-price-grid,
    .monitor-price-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .drawer-store-link-row {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .drawer-store-link-actions {
        justify-content: flex-start !important;
        flex-wrap: wrap;
    }

    .store-link-preview {
        margin-left: 0 !important;
    }

    /* =====================================================
       ANALYTICS
    ===================================================== */

    .analytics-toolbar {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .analytics-toolbar > .btn {
        width: 100%;
    }

    .analytics-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 9px !important;
    }

    .metric-card {
        padding: 12px !important;
    }

    .metric-label,
    .metric-sub {
        font-size: 10px !important;
    }

    .metric-value {
        font-size: 21px !important;
        overflow-wrap: anywhere;
    }

    .analytics-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 10px !important;
    }

    .analytics-head {
        padding: 13px 14px !important;
    }

    .analytics-head h2 {
        font-size: 18px !important;
    }

    .analytics-head p,
    .notice-filter {
        font-size: 12px !important;
        line-height: 1.45 !important;
    }

    .analytics-body {
        padding: 13px 14px !important;
    }

    .bar-row {
        grid-template-columns: minmax(86px, 120px) minmax(70px, 1fr) 52px !important;
        gap: 7px !important;
    }

    .bar-label,
    .bar-value,
    .empty-a,
    .publication-meta {
        font-size: 11px !important;
    }

    .hours {
        grid-template-columns: repeat(8, minmax(22px, 1fr)) !important;
        gap: 4px !important;
        overflow-x: auto;
    }

    .data-table {
        min-width: 760px;
    }

    .data-table th,
    .data-table td {
        font-size: 11px !important;
    }

    .channel-chips {
        min-width: 220px !important;
    }

    .channel-chip {
        font-size: 10px !important;
    }

    /* =====================================================
       SEGURANÇA E PÁGINAS SIMPLES
    ===================================================== */

    .monitor-switch-row {
        align-items: flex-start !important;
    }

    .monitor-switch-row > div:first-child {
        min-width: 0;
    }
}

@media (max-width: 640px) {
    .topbar {
        padding: 7px 10px !important;
    }

    .content {
        padding: 14px 10px 26px !important;
    }

    .breadcrumb {
        max-width: 52vw;
    }

    .topbar-right .system-status {
        padding: 6px 7px !important;
        font-size: 0 !important;
        gap: 0 !important;
    }

    .topbar-right .system-status-dot {
        width: 8px;
        height: 8px;
    }

    .page-header h1 {
        font-size: 23px !important;
    }

    .page-header p {
        font-size: 13px !important;
    }

    .card-header,
    .card-body {
        padding: 13px !important;
    }

    .dashboard-stats,
    .cacador-stats,
    .analytics-cards,
    .monitor-cards,
    .monitor-cards-four {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .queue-item {
        grid-template-columns: 30px 54px minmax(0, 1fr) !important;
        gap: 8px !important;
    }

    .thumb,
    .thumbph {
        width: 54px !important;
        height: 54px !important;
    }

    .hunter-actions {
        grid-template-columns: 1fr !important;
    }

    .drawer-store-price-grid,
    .monitor-price-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .monitor-kv {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 0 !important;
    }

    .monitor-kv .k {
        border-bottom: 0 !important;
        padding-bottom: 0 !important;
    }

    .history-list > div {
        flex-direction: column;
        gap: 4px !important;
    }

    .hours {
        grid-template-columns: repeat(6, minmax(26px, 1fr)) !important;
    }

    .bar-row {
        grid-template-columns: minmax(78px, 100px) minmax(60px, 1fr) 42px !important;
    }

    .edit-footer,
    .modal-actions,
    .integration-actions,
    .store-actions {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .edit-footer .btn,
    .modal-actions .btn,
    .integration-actions .btn,
    .store-actions .btn {
        width: 100% !important;
    }
}

@media (max-width: 420px) {
    .content {
        padding-left: 9px !important;
        padding-right: 9px !important;
    }

    .dashboard-stats,
    .cacador-stats,
    .analytics-cards,
    .monitor-cards,
    .monitor-cards-four {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .store-chip {
        flex-basis: 100%;
    }

    .queue-item {
        grid-template-columns: 28px 50px minmax(0, 1fr) !important;
        padding: 10px !important;
    }

    .thumb,
    .thumbph {
        width: 50px !important;
        height: 50px !important;
    }

    .breadcrumb {
        max-width: 48vw;
    }
}

/* Login não usa a sidebar, mas deve ficar confortável no celular. */
@media (max-width: 640px) {
    body > main.box {
        width: calc(100% - 20px) !important;
        max-width: 440px !important;
        margin: 10px auto !important;
        padding: 24px 18px !important;
    }

    body > main.box .logo {
        font-size: 24px !important;
    }

    body > main.box .sub,
    body > main.box .aviso,
    body > main.box .erro {
        font-size: 13px !important;
        line-height: 1.45 !important;
    }
}


/* ================================================================
   PROMOSBLOG MOBILE HOTFIX 2026-10-02 - layout responsivo compartilhado
   Sem alterações em JavaScript, API ou regras de publicação.
   ================================================================ */
@media (max-width: 900px) {
  /* Evita que um filho de grid/flex force outros a ocupar 10-40px. */
  .main .content, .main .content > *,
  .main .content .card, .main .content .card-body,
  .main .content .card-header,
  .main .content .queue-list, .main .content .queue-list > *,
  .main .content .offer-layout > *,
  .main .content .cacador-grid > *,
  .main .content .hunter-offer > *,
  .main .content .monitor-cards > * {
    min-width: 0;
    max-width: 100%;
  }
  /* Fila: as seis regiões reais do card são:
     arraste, número, miniatura, texto, horário e ações. */
  .queue-list .queue-item {
    display: grid !important;
    grid-template-columns: 28px 36px 64px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 8px !important;
    width: 100%;
    min-width: 0 !important;
    padding: 12px !important;
  }
  .queue-list .queue-item > .queue-drag-tools {grid-column:1 !important; grid-row:1 !important; min-width:0 !important;}
  .queue-list .queue-item > .pos {grid-column:2 !important;grid-row:1 !important;}
  .queue-list .queue-item > .thumb,
  .queue-list .queue-item > .thumbph {
    grid-column:3 !important; grid-row:1 !important;
    width:64px !important;height:64px !important;
    max-width:100%;object-fit:cover;
  }
  .queue-list .queue-item > div:nth-child(4) {
    grid-column:4 !important;grid-row:1 !important;
    min-width:0 !important;width:100% !important;
    overflow:visible !important;
  }
  .queue-list .queue-item .meta {
    min-width:0 !important; flex-wrap:wrap !important;
    gap:4px !important;
  }
  .queue-list .queue-item .badgeq {max-width:100%;overflow-wrap:normal;word-break:normal;}
  .queue-list .queue-item .qtext {
    min-width:0 !important;width:100% !important;
    white-space:normal !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
    hyphens:none !important;
    line-height:1.45 !important;
  }
  .queue-list .queue-item .sub {
    min-width:0;overflow-wrap:break-word !important;word-break:normal !important;
  }
  .queue-list .queue-item > .qtime {
    grid-column:2 / -1 !important;grid-row:auto !important;
    min-width:0;text-align:left !important;
    overflow-wrap:break-word !important;word-break:normal !important;
  }
  .queue-list .queue-item > .queue-actions-row {
    grid-column:1 / -1 !important;grid-row:auto !important;
    width:100% !important;max-width:100% !important;min-width:0 !important;
    display:flex !important;flex-wrap:wrap !important;
    justify-content:flex-start !important;gap:8px !important;
  }
  .queue-list .queue-item .queue-actions-row .recurrence-control {
    flex: 0 0 100%;width:100% !important;
    justify-content:flex-start !important;
  }
  .queue-list .queue-item .queue-actions-row .btn {
    min-width:0 !important;max-width:100%;
    flex:0 1 auto;white-space:normal !important;
    font-size:12px !important;
  }
  .queue-list .queue-item .queue-actions-row .publicar-agora {flex:1 1 140px;}
  .queue-card-header-main,.queue-order-controls,.multi-oferta-toolbar {min-width:0;max-width:100%;}
  .queue-card-header h2{overflow-wrap:normal;word-break:normal;}
  /* Ações e campos das páginas do caçador e configurações. */
  .hunter-offer{min-width:0;max-width:100%;}
  .hunter-main{min-width:0;max-width:100%;}
  .hunter-main h3,.hunter-main pre,.error-box {
    overflow-wrap:break-word !important;word-break:normal !important;
  }
  .source-link-row,.source-links-head{min-width:0;max-width:100%;}
  .source-link-row .form-control {min-width:0 !important;max-width:100%;}
  .modal-head,.modal-body,.modal-actions,.edit-header,.edit-body,.edit-footer{min-width:0;max-width:100%;}
}
@media (max-width: 600px) {
  /* Celular: o texto precisa ocupar a largura TODA abaixo da foto,
     não uma coluna estreita ao lado do ícone de arrastar. */
  .queue-list .queue-item {
    grid-template-columns:28px 38px 68px minmax(0,1fr) !important;
    gap:8px !important;
    padding:11px !important;
  }
  .queue-list .queue-item > .thumb,
  .queue-list .queue-item > .thumbph {width:68px !important;height:68px !important;}
  .queue-list .queue-item > div:nth-child(4) {
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    width:100% !important;
    overflow:visible !important;
  }
  .queue-list .queue-item > .qtime {grid-column:1 / -1 !important;grid-row:3 !important;}
  .queue-list .queue-item > .queue-actions-row {grid-column:1 / -1 !important;grid-row:4 !important;}
  .queue-list .queue-item .qtext{font-size:14px !important;}
  .queue-list .queue-item .sub{font-size:12px !important;}
  .queue-list .queue-item .queue-actions-row .btn{flex:1 1 auto;min-height:42px !important;}
  .queue-list .queue-item .queue-actions-row .publicar-agora {flex:1 0 100%;}
  .queue-card-header{padding:14px !important;}
  .queue-card-header-main h2{font-size:20px !important;}
  .queue-order-controls{flex-wrap:wrap;row-gap:12px;}
  .multi-oferta-toolbar{flex-wrap:wrap;}
  .batch-tray-summary{gap:8px;}
  .batch-tray-heading{flex-basis:100%;}
  .batch-expand-label{margin-left:0;}
  .hunter-offer {grid-template-columns:64px minmax(0,1fr) !important;gap:10px !important;}
  .hunter-image {width:64px !important;height:64px !important;}
  .hunter-main h3{font-size:13px;}
  .hunter-actions{grid-column:1 / -1 !important;width:100%;flex-wrap:wrap;}
  .hunter-actions .btn{flex:1 1 125px;}
  .edit-card {width:100% !important;max-width:calc(100vw - 16px) !important;}
  .edit-body{display:grid !important;grid-template-columns:minmax(0,1fr) !important;}
  .edit-textarea{width:100% !important;min-width:0 !important;}
  .source-link-row{grid-template-columns:24px minmax(0,1fr) auto !important;}
  .source-link-row .fonte-url{grid-column:2 / -1 !important;}
  .source-compact-status{grid-column:2 / -1 !important;}
}
@media (max-width: 360px) {
  .queue-list .queue-item {grid-template-columns:26px 34px 58px minmax(0,1fr) !important;gap:6px !important;}
  .queue-list .queue-item > .thumb,.queue-list .queue-item > .thumbph{width:58px !important;height:58px !important;}
}
