/* Mobile First & Responsive Adjustments */

@media (min-width: 901px) and (max-width: 1280px) {
    .ticket-panel-card { grid-template-columns: minmax(185px, 1fr) minmax(145px, .78fr) minmax(125px, .62fr) auto; gap: 10px; }
    .ticket-panel-flags { display: grid; min-width: 125px; }
}

@media (max-width: 760px) {
    .ticket-location-highlight { width: 100%; flex-wrap: wrap; }
    .ticket-location-highlight small { margin-left: auto; }
    .block-quick-metrics { grid-template-columns: 1fr 1fr; }
    .block-quick-metrics article:nth-child(2) { border-right: 0; }
    .block-quick-metrics article:nth-child(-n+2) { border-bottom: 1px solid var(--card-border); }
    .block-quick-responsibles { grid-template-columns: 1fr; }
    .block-room-heading { align-items: stretch; flex-direction: column; }
    .block-room-search { min-width: 0; width: 100%; }
    .ticket-scope-navigator { border-radius: 13px; }
    .ticket-client-tabs { padding: 6px; }
    .ticket-client-tab { min-width: max-content; min-height: 40px; padding-inline: 12px; }
    .ticket-block-navigation { grid-template-columns: 1fr; gap: 9px; padding: 11px; }
    .ticket-block-navigation > div:first-child small { display: none; }
    .ticket-block-tabs { margin-inline: -2px; }
    .ticket-block-tab { min-width: max-content; min-height: 38px; }
    .ticket-panel-flags { min-width: 0; min-height: 0; }
    .ticket-panel-flags.is-empty { display: none; }
    .ticket-actions-row { min-width: 0; }
    .ticket-bulk-workflow { grid-template-columns: 1fr; gap: 11px; padding: 12px; }
    .ticket-bulk-counts { width: 100%; }
    .ticket-bulk-counts span { min-width: 0; flex: 1; padding-inline: 6px; }
    .ticket-bulk-buttons { display: grid; grid-template-columns: 1fr; }
    .ticket-bulk-buttons .action-button { width: 100%; min-width: 0; }
    .ticket-bulk-confirm-summary { grid-template-columns: 1fr; }
    .ticket-bulk-confirm-summary > div { border-right: 0; }
    .ticket-bulk-confirm-summary > div:nth-last-child(-n+2) { border-bottom: 1px solid var(--card-border); }
    .ticket-bulk-confirm-summary > div:last-child { border-bottom: 0; }
    .ticket-bulk-confirmation > footer { display: grid; grid-template-columns: 1fr; }
}

/* Utilities for mobile */
.mobile-toggle {
    display: none;
    background: transparent;
    border: none;
    font-size: 1.5rem;
    color: var(--primary);
    cursor: pointer;
    padding: 0.5rem;
}

@media (max-width: 1500px) {
    .report-hierarchy-page { min-width: 0; }
    .report-hierarchy-page > * { max-width: 100%; min-width: 0; }
    .report-hierarchy-tabs { grid-template-columns: repeat(5, minmax(0, 1fr)); }
    .report-primary-filters { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .report-primary-filters .action-button { width: 100%; min-width: 0; }
}

@media (max-width: 1100px) {
    .audit-filter-primary,.audit-filter-advanced,.audit-tabs,.audit-kpi-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 700px) {
    .audit-event-detail > footer { width: 100%; display: grid; grid-template-columns: 1fr; }
    .audit-search-card { grid-template-columns: 28px minmax(0,1fr); }.audit-search-card input { padding-left: 4px; }.audit-search-actions { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; }
    .audit-filter-primary,.audit-filter-advanced { grid-template-columns: 1fr; }.audit-room-filter { grid-column: auto; }.audit-filter-primary .action-button { width: 100%; }
    .audit-tabs { grid-template-columns: repeat(2,minmax(0,1fr)); }.audit-tabs button { justify-content: flex-start; }.audit-tabs small { display: none; }
    .audit-kpi-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }.audit-kpi { grid-template-columns: 30px 1fr; min-height: 102px; padding: 12px; }.audit-kpi > svg { width: 22px; }.audit-kpi strong { font-size: 1.05rem; }
    .audit-chart-grid { grid-template-columns: 1fr; }.audit-bars button { grid-template-columns: minmax(80px,1fr) minmax(60px,1fr) 35px; }
    .audit-event-card { grid-template-columns: 34px minmax(0,1fr) 30px; padding: 10px; }.audit-event-icon { width: 32px; height: 32px; }.audit-event-main > div { display: grid; }.audit-event-main small { white-space: normal; }.audit-priority { width: fit-content; }
    .audit-table-toolbar { align-items: flex-start; }.audit-table-wrap { overflow: visible; }.audit-data-table { min-width: 0; }.audit-data-table thead { display: none; }.audit-data-table,.audit-data-table tbody,.audit-data-table tr,.audit-data-table td { display: block; width: 100%; }.audit-data-table tr { margin: 10px; width: calc(100% - 20px); overflow: hidden; border: 1px solid var(--card-border); border-radius: 12px; background: var(--surface); }.audit-data-table td { display: grid; grid-template-columns: 104px 1fr; gap: 8px; padding: 10px 12px; border: 0; border-bottom: 1px solid var(--card-border); }.audit-data-table td::before { content: attr(data-label); color: var(--text-muted); font-size: .7rem; font-weight: 900; line-height: 1.3; text-transform: uppercase; }.audit-data-table td:last-child { display: flex; justify-content: flex-end; border-bottom: 0; }.audit-data-table td:nth-child(6) { max-width: none; }
    .audit-detail-grid,.audit-detail-values dl,.audit-detail-evidence { grid-template-columns: 1fr; }.audit-event-detail > header { grid-template-columns: 42px 1fr; }.audit-event-detail > header .audit-priority { grid-column: 2; }.audit-detail-evidence img{height:min(56vw,230px)}
}

@media (max-width: 1180px) {
    .report-hierarchy-tabs { grid-template-columns: repeat(5, minmax(0, 1fr)); top: 68px; }
    .report-primary-filters { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .report-primary-filters .action-button { width: 100%; }
    .report-advanced-filters { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
    .report-hierarchy-page { gap: 12px; }
    .report-hierarchy-tabs { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .report-hierarchy-tabs button,
    .report-hierarchy-tabs a { min-height: 46px; }
    .report-quick-search-panel { grid-template-columns: 32px minmax(0, 1fr); padding: 11px; }
    .report-quick-search-panel > div { grid-template-columns: 1fr; gap: 4px; }
    .report-quick-search-panel > span { display: none; }
    .report-quick-search-panel input { padding: 6px 0; border: 0; }
    .report-quick-search-panel #reportQuickResults { left: 8px; right: 8px; max-height: 55vh; }
    .report-primary-filters { grid-template-columns: 1fr 1fr; padding: 12px; }
    .report-primary-filters label:nth-of-type(3),
    .report-primary-filters label:nth-of-type(4) { grid-column: 1 / -1; }
    .report-primary-filters .action-button { min-width: 0; padding-inline: 8px; font-size: .7rem; }
    .report-primary-filters #applyReportFilters { grid-column: 1 / -1; }
    .report-filter-summary { align-items: flex-start; }
    .report-advanced-filters { padding: 12px; }
    .report-advanced-grid { grid-template-columns: 1fr; }
    .report-room-suggestions { position: fixed; z-index: 160; top: auto; right: 10px; bottom: 10px; left: 10px; max-height: 58vh; border-radius: 16px; }
    .report-block-summary-grid,.report-client-list { grid-template-columns: 1fr; }
    .report-client-groups { padding: 12px; }
    .report-block-summary > header { grid-template-columns: 38px minmax(0,1fr); }
    .report-block-summary > header button { grid-column: 1 / -1; justify-content: center; }
    .report-block-metrics { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .report-block-metrics span:nth-child(3) { border-right: 0; }
    .report-block-metrics span:nth-child(n+4) { border-top: 1px solid var(--card-border); }
    .report-block-responsibles { grid-template-columns: 1fr; }
    .report-room-map-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .report-client-card { grid-template-columns: 38px minmax(0,1fr) auto; }
    .report-client-card > button { grid-column: 1 / -1; }
    .report-room-detail-modal > nav { grid-template-columns: 1fr; }
    .report-room-ticket-list article { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
    .audit-filter-primary { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .audit-client-scope { grid-template-columns: 1fr; }
    .audit-client-scope-options { justify-content: flex-start; }
}

@media (max-width: 700px) {
    .audit-filter-primary { grid-template-columns: 1fr; }
    .audit-client-scope-options { display: grid; grid-template-columns: 1fr; }
    .audit-client-scope-options button { width: 100%; }
}

@media (max-width: 430px) {
    .report-primary-filters { grid-template-columns: 1fr 1fr; gap: 8px; }
    .report-primary-filters label { grid-column: 1 / -1; }
    .report-primary-filters #reportFiltersToggle,
    .report-primary-filters #clearReportFilters { grid-column: auto; }
    .report-room-scopes { display: grid; grid-template-columns: 1fr 1fr; }
    .report-room-scopes button { width: 100%; }
    .report-block-progress { grid-template-columns: 1fr; }
    .report-room-map-grid { grid-template-columns: 1fr 1fr; }
    .report-client-card { grid-template-columns: 38px minmax(0,1fr); }
    .report-client-card > b { grid-column: 2; }
}

@media (max-width: 991px) {
    /* Layout */
    .dashboard-main {
        max-width: 100%;
        width: 100%;
        min-width: 0;
    }

    .dashboard-layout,
    .dashboard-header,
    .dashboard-content,
    .ticket-document-form {
        min-width: 0;
        max-width: 100%;
    }
    
    .sidebar {
        position: fixed;
        left: -260px;
        z-index: 1000;
        transition: left 0.3s ease;
    }
    
    .sidebar.open {
        left: 0;
    }

    #sidebarOverlay {
        position: fixed;
        inset: 0;
        background: rgba(15, 23, 42, 0.5);
        z-index: 999;
        display: none;
        opacity: 0;
        transition: opacity 0.3s ease;
    }

    #sidebarOverlay.open {
        display: block;
        opacity: 1;
    }

    .mobile-toggle {
        display: block;
    }

    /* Public layout */
    .nav-links {
        display: none;
    }
}

@media (max-width: 768px) {
    .client-structure-modal{width:100vw;max-height:100dvh;border-radius:0}.client-structure-summary{grid-template-columns:1fr}.client-structure-summary article{border-right:0;border-bottom:1px solid var(--card-border)}.client-structure-summary article:last-child{border-bottom:0}.client-structure-section>header,.client-structure-footer{align-items:stretch;flex-direction:column}.client-structure-section>header .btn,.client-structure-footer .btn{width:100%;justify-content:center}.work-group-card{grid-template-columns:38px minmax(0,1fr) auto}.work-group-card>.status-badge{grid-column:2}.work-group-actions{grid-column:3;grid-row:1/3}.work-group-editor .form-grid,.work-group-blocks>div{grid-template-columns:1fr}.work-group-editor>footer{position:sticky;bottom:0;padding:10px;background:var(--surface)}
    .header-screen {
        flex: 1 1 auto;
        min-width: 0;
        overflow: hidden;
    }

    .header-title {
        min-width: 0;
    }

    .header-title h2 {
        overflow-wrap: normal;
        word-break: normal;
    }

    .navbar-actions {
        flex: 0 0 auto;
        min-width: 0;
        gap: 4px;
    }

    .header-user.user-pill {
        justify-content: center;
        width: 42px;
        min-width: 42px;
        padding-inline: 0;
    }

    .header-back-action {
        justify-content: center;
        width: 38px;
        min-width: 38px;
        padding-inline: 0;
        overflow: hidden;
        font-size: 0;
    }

    .dashboard-header .header-back-action {
        flex: 0 0 38px;
        width: 38px;
        max-width: 38px;
        padding: 0;
        font-size: 0 !important;
        white-space: nowrap;
    }

    .dashboard-header .header-back-action svg {
        width: 18px;
        height: 18px;
        margin: 0;
    }

    .dashboard-hero-band { align-items:stretch; flex-direction:column; padding:18px; }
    .dashboard-hero-band .btn { width:100%; }
    .auth-layout { min-height:100dvh; padding:10px; align-items:flex-start; overflow-y:auto; }
    .login-card { padding:18px !important; margin:10px auto; }
    .quick-user-grid { grid-template-columns:1fr; max-height:min(38dvh,310px); overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; }
    .quick-user { min-height:58px; }
    .sidebar-header { min-height:130px; }
    .filter-toggle { display:inline-flex; width:100%; margin-bottom:8px; }
    .filter-panel.mobile-collapsed .table-toolbar { display:none; }
    /* Typography & Spacing */
    .h1 { font-size: 2rem; }
    .h2 { font-size: 1.75rem; }
    .h3 { font-size: 1.25rem; }
    
    .dashboard-content {
        padding: 1rem;
    }
    
    .dashboard-header {
        padding: 1rem;
        min-height: 60px;
    }

    .header-user .user-info {
        display: none; /* Ocultar texto de rol y nombre, solo dejar avatar */
    }

    /* Cards */
    .stats-grid {
        grid-template-columns: 1fr;
    }
    
    .glass-card {
        padding: 1rem !important; /* Forces smaller padding on cards */
    }

    /* Flex structures breaking */
    .flex-between {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    .flex-between.mb-3, .flex-between.mb-4 {
        margin-bottom: 1rem;
    }

    .flex-between .btn {
        width: 100%; /* Botones de acción anchos en móviles */
        justify-content: center;
    }

    /* Filters on Tickets */
    select.form-control, input.form-control {
        max-width: 100% !important;
    }

    /* Tables */
    .card-table-wrapper {
        display: none;
    }

    .mobile-scroll-table {
        display: block !important;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .mobile-scroll-table .data-table {
        min-width: 640px;
    }

    .ticket-form-table-wrapper {
        display: block !important;
        overflow: visible !important;
        margin: 0;
        padding: 0;
    }

    .garment-category-desktop { display: none; }
    .garment-category-section { padding: 0 !important; overflow: hidden; }
    .garment-category-toggle { display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 12px; padding: 15px 16px; border: 0; background: #f1f7fb; color: #07385a; text-align: left; cursor: pointer; }
    .garment-category-toggle > span:first-child { display: grid; gap: 3px; }
    .garment-category-toggle strong { font-size: 0.88rem; }
    .garment-category-toggle small { color: #647b8d; font-size: 0.72rem; font-weight: 600; }
    .garment-category-meta { display: flex; align-items: center; gap: 7px; }
    .garment-category-meta b { display: grid; place-items: center; min-width: 25px; height: 25px; padding: 0 6px; border-radius: 999px; background: #dcebf5; color: #07385a; font-size: 0.72rem; }
    .garment-category-meta i { font-size: 20px; transition: transform .2s ease; }
    .garment-category-section.is-collapsed .garment-category-meta i { transform: rotate(180deg); }
    .garment-category-section.is-collapsed .garment-section-body { display: none !important; }
    .ticket-form-table-wrapper .ticket-category-table,
    .ticket-form-table-wrapper .ticket-category-table tbody { display: block; width: 100%; min-width: 0; }
    .ticket-form-table-wrapper .ticket-category-table thead { display: none; }
    .ticket-form-table-wrapper .ticket-prenda-row { display: grid; grid-template-columns: minmax(0,1fr) 126px; gap: 10px 12px; padding: 14px; border-top: 1px solid #d7e3eb; background: #fff; }
    .ticket-form-table-wrapper .ticket-prenda-row td { display: block; min-width: 0; padding: 0; border: 0 !important; background: transparent !important; }
    .ticket-form-table-wrapper .ticket-prenda-row td:first-child { align-self: center; min-width: 0; padding: 0; }
    .ticket-form-table-wrapper .ticket-prenda-row td:nth-child(2) {
        width: 100%;
        min-width: 0;
        max-width: 126px;
        padding: 0;
        justify-self: end;
    }
    .ticket-form-table-wrapper .ticket-prenda-row td:nth-child(n+3) { position: relative; min-height: 0 !important; max-height: 92px; padding-top: 18px; opacity: 1; overflow: hidden; transform: translateY(0); visibility: visible; transition: max-height .3s ease, padding .3s ease, opacity .22s ease, transform .3s ease, visibility 0s linear 0s; }
    .ticket-form-table-wrapper .ticket-prenda-row td:nth-child(3) { grid-column: 1; max-height: 150px; }
    .ticket-form-table-wrapper .ticket-prenda-row td:nth-child(4) { grid-column: 2; }
    .ticket-form-table-wrapper .ticket-prenda-row td:nth-child(5) { grid-column: 1 / -1; }
    .ticket-form-table-wrapper .ticket-prenda-row td:nth-child(n+3)::before { position: absolute; top: 0; left: 1px; color: #526f85; font-size: 0.65rem; font-weight: 900; text-transform: uppercase; }
    .ticket-form-table-wrapper .ticket-prenda-row td:nth-child(3)::before { content: 'Marca'; }
    .ticket-form-table-wrapper .ticket-prenda-row td:nth-child(4)::before { content: 'Talla'; }
    .ticket-form-table-wrapper .ticket-prenda-row td:nth-child(5)::before { content: 'Color'; }
    .ticket-form-table-wrapper .ticket-prenda-row.row-empty { row-gap: 0; }
    .ticket-form-table-wrapper .ticket-prenda-row.row-empty td:nth-child(n+3) { min-height: 0 !important; max-height: 0; padding-top: 0; padding-bottom: 0; opacity: 0; pointer-events: none; transform: translateY(-7px); visibility: hidden; transition: max-height .3s ease, padding .3s ease, opacity .2s ease, transform .3s ease, visibility 0s linear .3s; }
    .ticket-form-table-wrapper .ticket-prenda-row.row-pending { background: #fff9f3; }
    .ticket-form-table-wrapper .ticket-prenda-row.row-complete { background: #f4fff6; }
    .ticket-form-table-wrapper .ticket-prenda-row .form-control { width: 100%; min-width: 0; }
    .ticket-form-table-wrapper .garment-brand-field { gap: 7px; }
    .ticket-form-table-wrapper .input-marca-select,
    .ticket-form-table-wrapper .garment-brand-custom { min-height: 44px; font-size: 16px; }
    .ticket-form-table-wrapper .quantity-stepper {
        width: 100%;
        min-width: 0;
        grid-template-columns: 32px minmax(42px, 1fr) 32px;
        gap: 4px;
    }
    .ticket-form-table-wrapper .quantity-button { width: 32px; height: 42px; }

    @media (max-width: 360px) {
        .ticket-form-table-wrapper .ticket-prenda-row {
            grid-template-columns: minmax(0, 1fr) 116px;
            gap: 10px 8px;
            padding-right: 10px;
            padding-left: 10px;
        }
        .ticket-form-table-wrapper .ticket-prenda-row td:nth-child(2) {
            max-width: 116px;
        }
        .ticket-form-table-wrapper .quantity-stepper {
            grid-template-columns: 30px minmax(40px, 1fr) 30px;
            gap: 3px;
        }
        .ticket-form-table-wrapper .quantity-button { width: 30px; }
    }
    .garment-selection-summary { position: sticky; top: 66px; z-index: 10; margin: -4px 0 14px; padding: 10px 12px; box-shadow: 0 7px 18px rgba(7,56,90,.1); }
    .garment-selection-summary small { display: block; overflow: hidden; max-width: 190px; text-overflow: ellipsis; white-space: nowrap; }
    .garment-summary-status { padding: 5px 8px; font-size: .66rem; }

    .tickets-mobile-list {
        display: grid;
    }

    .estado-cell {
        min-width: 132px;
    }

    .status-soft {
        max-width: 112px;
        padding: 0.45rem 0.7rem;
        font-size: 0.8rem;
    }
    
    .data-table th, .data-table td {
        padding: 0.75rem 1rem;
        font-size: 0.9rem;
    }

    /* Dynamic form (Tickets) */
    #tablePrendas {
        min-width: 600px; /* Asegurar que la tabla interna de prendas sea scrollable */
    }

    .table-toolbar {
        grid-template-columns: 1fr;
        gap: 0.75rem;
        padding: 1rem;
    }

    .table-toolbar .form-control {
        width: 100%;
        max-width: 100% !important;
    }

    .table-helper-text {
        padding: 0.75rem 1rem 0;
    }
}

@media (max-width: 430px) {
    .report-room-map-grid { grid-template-columns: 1fr; }
    .report-room-map-chip { min-height: 0; }
}
@media (max-width: 768px) {
  .room-scroll-toolbar{grid-template-columns:1fr auto}.room-scroll-toolbar>div:first-child{grid-column:1/-1}.room-scroll-counter{white-space:normal}.room-scroll-content{max-height:62vh}.room-explorer-head{display:none}.room-explorer-row{grid-template-columns:1fr auto}.room-explorer-row em,.room-explorer-row small{grid-column:1/-1}.audit-room-block-grid{grid-template-columns:1fr}.audit-room-selected>header,.audit-room-scroll-toolbar{align-items:stretch;flex-direction:column}.audit-room-scroll-list{max-height:58vh}.audit-room-scroll-list button{grid-template-columns:1fr auto}.audit-room-scroll-list button small{grid-column:1/-1}.period-chart-row{flex-basis:86vw}
  .storage-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.storage-generate-form{grid-template-columns:repeat(2,minmax(0,1fr))}.storage-generate-form button{grid-column:1/-1}.storage-policy-card{grid-template-columns:1fr}.storage-detail-kpis{grid-template-columns:repeat(2,1fr)}.storage-detail-kpis span:nth-child(2){border-right:0}.storage-detail-kpis span:nth-child(-n+2){border-bottom:1px solid var(--card-border)}
}
@media (max-width: 640px){
  .storage-alert{grid-template-columns:34px 1fr;padding:12px}.storage-alert>span{width:34px;height:34px}.storage-kpi-grid{grid-template-columns:1fr}.storage-generate-form{grid-template-columns:1fr;padding:14px}.storage-generate-form button{grid-column:auto}.storage-flow{justify-content:flex-start;overflow-x:auto}.storage-flow span{flex:0 0 auto}.storage-month-table-wrap{overflow:visible}.storage-month-table{min-width:0}.storage-month-table thead{display:none}.storage-month-table,.storage-month-table tbody,.storage-month-table tr,.storage-month-table td{display:block;width:100%}.storage-month-table tr{margin:10px;width:calc(100% - 20px);overflow:hidden;border:1px solid var(--card-border);border-radius:12px}.storage-month-table td{display:grid;grid-template-columns:102px 1fr;gap:8px;padding:10px 12px;border-bottom:1px solid var(--card-border)}.storage-month-table td::before{content:attr(data-label);color:var(--text-muted);font-size:.7rem;font-weight:900;line-height:1.3;text-transform:uppercase}.storage-month-table td:last-child{border-bottom:0}.storage-actions{justify-content:flex-end}.storage-modal-overlay{padding:0}.storage-modal{width:100%;height:100%;max-height:none;border-radius:0;padding:16px}.storage-modal-title{display:grid}.storage-item-list{max-height:50vh}.storage-danger-confirm footer,.storage-modal-actions{width:100%;display:grid;grid-template-columns:1fr}.storage-danger-confirm footer button,.storage-modal-actions button{width:100%}
  .archived-evidence-banner{grid-template-columns:34px 1fr}.archived-evidence-banner .action-button{grid-column:1/-1;width:100%}
}

@media (max-width: 768px) {
  .global-loading { height: 5px; }
  .toast-container { top: max(10px, env(safe-area-inset-top)); right: auto; bottom: auto; left: 50%; width: calc(100vw - 24px); max-height: 52dvh; transform: translateX(-50%); }
  .toast { min-height: 72px; padding: 14px 48px 14px 14px; }
  .route-loading-shell { padding: 15px 12px; }
  .ui-skeleton-grid { grid-template-columns: 1fr; }
  .ui-skeleton-grid article:nth-child(n+4) { display: none; }
  .ui-skeleton-table > span { grid-template-columns: 1.4fr 1fr; }
  .ui-skeleton-table > span i:nth-child(n+3) { display: none; }
  .ui-confirm-overlay { padding: 0; align-items: end; }
  .app-modal.ui-confirm-modal { width: 100%; max-height: 92vh; overflow: auto; border-radius: 18px 18px 0 0; padding: 20px 16px calc(18px + env(safe-area-inset-bottom)); }
  .app-modal.ui-confirm-modal footer { display: grid; grid-template-columns: 1fr 1fr; }
  .app-modal.ui-confirm-modal footer button { width: 100%; }
  .ui-progress-step-list { grid-template-columns: 1fr; }
}
@media (max-width: 768px) {
  .additional-garment-inline-fields {
    grid-template-columns: 1fr 1fr;
  }
  .additional-garment-inline-fields .quantity-field { grid-column: 1 / -1; }
  .evidence-multi-preview { grid-template-columns: 1fr; }
  .evidence-edit-card { grid-template-columns: 92px 1fr; }
  .evidence-edit-card > img { width: 92px; }
  #workflowForm .evidence-edit-card { grid-template-columns: minmax(0, 1fr); }
  #workflowForm .evidence-edit-card > img { width: 100%; height: 180px; }
  .app-modal.incident-wide-modal { width: 100%; }
  .incident-modal-grid { grid-template-columns: 1fr; }
  .incident-modal-grid .span-2 { grid-column: auto; }
  .incident-evidence-selector > div { grid-template-columns: 1fr; max-height: 44vh; }
  .incident-editor-modal > footer { position: sticky; bottom: 0; background: #fff; padding-top: 10px; }
  .ticket-detail-page.has-mobile-workflow-action { padding-bottom: calc(82px + env(safe-area-inset-bottom)); }
  .ticket-mobile-workflow-action #workflowSubmit {
    position: fixed;
    right: 12px;
    bottom: calc(12px + env(safe-area-inset-bottom));
    left: 12px;
    z-index: 850;
    width: auto;
    min-height: 52px;
    border: 1px solid rgba(255,255,255,.72);
    border-radius: 14px;
    box-shadow: 0 14px 32px rgba(84,46,0,.3);
  }
  .ticket-detail-page.has-floating-actions {
    padding-bottom: calc(94px + env(safe-area-inset-bottom));
  }
  .ticket-detail-page.has-floating-actions #workflowSubmit {
    display: none;
  }
  .ticket-detail-page.has-floating-actions #closeTicketButton {
    display: none;
  }
}

@media (max-width: 760px) {
  .report-hierarchy-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding-bottom: 0;
  }

  .report-hierarchy-tabs button,
  .report-hierarchy-tabs a {
    justify-content: center;
    width: 100%;
    min-height: 40px;
    padding: 8px 11px;
  }

  .report-client-scope {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 12px;
  }

  .report-client-scope-options {
    justify-content: flex-start;
  }

  .garment-distribution-summary {
    grid-template-columns: 1fr;
  }

  .garment-distribution-summary > span {
    border-right: 0;
    border-bottom: 1px solid var(--card-border);
  }

  .garment-distribution-summary > span:last-child {
    border-bottom: 0;
  }

  .pareto-guide {
    display: grid;
  }

  .pareto-guide,
  .pareto-row {
    grid-template-columns: minmax(118px, 1fr) minmax(92px, 1.15fr) 48px 70px;
    gap: 7px;
  }

  .pareto-row strong {
    white-space: normal;
  }

  .room-color-guide > div {
    grid-template-columns: 1fr 1fr;
  }

  .report-room-detail-modal > .room-detail-hero {
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .room-detail-hero .action-button {
    grid-column: 1 / -1;
    width: 100%;
  }

  .room-detail-overview {
    grid-template-columns: 1fr 1fr;
  }

  .report-room-detail-modal > nav {
    display: flex;
    grid-template-columns: none;
  }

  .report-room-detail-modal > nav button {
    min-width: max-content;
  }

  .report-room-ticket-list .room-detail-ticket {
    grid-template-columns: 1fr;
  }

  .room-detail-ticket > header {
    grid-column: auto;
  }
}

@media (max-width: 430px) {
  .pareto-chart {
    max-height: 64vh;
  }

  .pareto-guide {
    display: none;
  }

  .pareto-row {
    grid-template-columns: minmax(105px, 1fr) minmax(78px, 1fr) 42px 62px;
  }

  .room-color-guide > div,
  .room-detail-overview {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 1100px) {
    .daily-filters {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .daily-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .daily-filters,
    .daily-kpi-grid,
    .daily-analytics-grid,
    .daily-detail-summary,
    .daily-missing-focus,
    .daily-missing-focus .daily-detail-summary,
    .daily-history-kpis {
        grid-template-columns: 1fr;
    }

    .daily-hero .page-hero-actions,
    .daily-hero .page-hero-actions button,
    .daily-filters .btn {
        width: 100%;
    }

    .daily-section .panel-header {
        align-items: stretch;
    }

    .daily-section .panel-header > button {
        width: 100%;
    }

    .daily-pagination {
        align-items: stretch;
        flex-direction: column;
    }

    .daily-pagination > div {
        justify-content: space-between;
    }

    .daily-block-snapshot > header {
        align-items: stretch;
        flex-direction: column;
    }

    .daily-block-snapshot > div {
        grid-template-columns: 1fr;
    }
}
