.auth-pending .app-shell{visibility:hidden}
.auth-screen{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 15%,#2d2a12 0,#111 42%,#080808 100%);color:#fff}
.auth-screen.hidden{display:none}
.auth-card{width:min(420px,100%);padding:34px 28px;border:1px solid rgba(255,255,255,.12);border-radius:28px;background:rgba(18,18,18,.9);box-shadow:0 30px 80px rgba(0,0,0,.5);text-align:center}
.auth-logo{width:76px;height:76px;margin:0 auto 20px;display:grid;place-items:center;border-radius:22px;background:#F5C400;color:#111;font-size:25px;font-weight:900;box-shadow:0 12px 35px rgba(245,196,0,.24)}
.auth-card h1{margin:0;font-size:28px;font-weight:900;letter-spacing:-.03em}.auth-card .auth-kicker{margin:7px 0 24px;color:#a3a3a3;font-size:13px}.auth-card .auth-copy{margin:0 0 20px;color:#d4d4d4;font-size:14px;line-height:1.5}
.auth-form{display:grid;gap:12px;text-align:left}.auth-field{display:grid;gap:6px;color:#d4d4d4;font-size:12px;font-weight:800}.auth-input{width:100%;min-height:48px;padding:11px 13px;border:1px solid rgba(255,255,255,.16);border-radius:13px;background:#090909;color:#fff;font:inherit;outline:0}.auth-input:focus{border-color:#F5C400;box-shadow:0 0 0 3px rgba(245,196,0,.14)}
.auth-submit{width:100%;min-height:52px;border:0;border-radius:14px;background:#F5C400;color:#111;font-weight:900;box-shadow:0 10px 30px rgba(245,196,0,.16)}.auth-submit:disabled{opacity:.55}
.auth-status{min-height:22px;margin:16px 0 0;color:#d4d4d4;font-size:13px}.auth-status.error{color:#fca5a5}
.auth-security{display:flex;justify-content:center;gap:8px;margin-top:14px;color:#8f8f8f;font-size:11px}.auth-security span{padding:5px 8px;border:1px solid rgba(255,255,255,.1);border-radius:999px}
.offline-banner{position:fixed;left:50%;top:10px;z-index:1200;transform:translateX(-50%);padding:9px 14px;border-radius:999px;background:#991b1b;color:#fff;font-size:12px;font-weight:800;display:none}.offline .offline-banner{display:block}

@media(max-width:800px){
  body.native-app{padding-bottom:env(safe-area-inset-bottom);background:#f3f4f6}
  body.native-app .sidebar{top:auto!important;bottom:0;width:100%!important;height:calc(74px + env(safe-area-inset-bottom));z-index:45;overflow:visible;background:#0b0b0b;border-top:1px solid #282828}
  body.native-app .sidebar-head,body.native-app .sidebar-user{display:none!important}
  body.native-app .sidebar-nav{height:100%;display:flex!important;gap:5px;padding:7px 8px calc(7px + env(safe-area-inset-bottom));overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain}
  body.native-app .sidebar-nav::-webkit-scrollbar{display:none}
  body.native-app .nav-item{flex:0 0 78px!important;min-height:54px;display:flex!important;justify-content:center!important;padding:7px 4px!important;border-radius:13px;text-align:center;font-size:10px;line-height:1.15;color:#d4d4d4}
  body.native-app .nav-item span{display:block!important;white-space:normal}
  body.native-app .nav-item.active{background:#F5C400;color:#111}
  body.native-app .main-content,body.native-app.sidebar-collapsed .main-content{margin-left:0!important;width:100%!important;max-width:100%!important;padding:18px 12px 100px!important;overflow-x:hidden}
  body.native-app .main-content>div:first-child{position:sticky;top:0;z-index:18;margin:-18px -12px 16px!important;padding:calc(12px + env(safe-area-inset-top)) 12px 12px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid #e5e7eb}
  body.native-app.dark .main-content>div:first-child{background:rgba(15,17,21,.94);border-color:#303642}
  body.native-app .main-content>div:first-child h2{font-size:17px}body.native-app .main-content>div:first-child p{display:none}
  body.native-app .header-actions{display:flex;gap:8px}body.native-app .btn-secondary{padding:9px 11px;font-size:11px}
  body.native-app .kpi-card{padding:13px;border-radius:16px}body.native-app .kpi-card b{font-size:19px}
  body.native-app #panel-view>.grid:first-child{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.native-app #productos-resumen,body.native-app #vf-productos-resumen{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.native-app #panel-view .table-container{border:0!important;overflow:visible}
  body.native-app #panel-view table{width:100%;min-width:0}body.native-app #panel-view thead{display:none}
  body.native-app #panel-view tbody{display:grid;gap:10px}
  body.native-app #panel-view tbody tr{display:grid;grid-template-columns:1fr auto;gap:5px 10px;padding:13px;border:1px solid #e5e7eb;border-radius:16px;background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.04)}
  body.native-app.dark #panel-view tbody tr{background:#181b22;border-color:#303642}
  body.native-app #panel-view tbody td{display:none;border:0;padding:0;white-space:normal}
  body.native-app #panel-view tbody td:nth-child(3),body.native-app #panel-view tbody td:nth-child(10),body.native-app #panel-view tbody td:nth-child(12),body.native-app #panel-view tbody td:nth-child(14){display:block}
  body.native-app #panel-view tbody td:nth-child(3){font-size:14px;font-weight:900}body.native-app #panel-view tbody td:nth-child(10){font-weight:900;text-align:right}
  body.native-app #panel-view tbody td:nth-child(12){grid-column:1/2}body.native-app #panel-view tbody td:nth-child(14){grid-column:2/3;grid-row:2/4;text-align:right}
  body.native-app .orders-board{grid-template-columns:repeat(12,86vw)!important;gap:12px;scroll-snap-type:x proximity}.native-app .orders-column{scroll-snap-align:center;min-height:55vh}
  body.native-app .drawer-card,body.native-app .notifications-drawer,body.native-app .chat-drawer-card{width:100%!important;max-width:none!important;padding-bottom:calc(90px + env(safe-area-inset-bottom))!important}
  body.native-app .vf-layout,body.native-app .gastos-layout{grid-template-columns:1fr!important}
  body.native-app .table-container{border-radius:14px}body.native-app table th,body.native-app table td{padding:10px 9px}
  body.native-app .admin-excel-wrap{height:58vh!important}
}

/* Compact mobile app shell */
.nav-icon,.nav-more-trigger,.native-more-head,.native-menu-actions,.native-more-backdrop{display:none}
.native-more-menu,.native-more-sheet{display:contents}
.auth-screen{padding:16px;background:radial-gradient(circle at 50% 10%,#2a2710 0,#111 38%,#070707 100%)}
.auth-card{width:min(360px,100%);padding:24px 20px;border-radius:24px}
.auth-logo{width:62px;height:62px;margin-bottom:14px;border-radius:18px;font-size:22px}
.auth-card h1{font-size:24px}.auth-card .auth-kicker{margin:5px 0 16px;font-size:12px}
.auth-card .auth-copy{margin-bottom:16px;font-size:13px;line-height:1.4}
.auth-form{gap:10px}.auth-submit{min-height:48px;border-radius:12px;font-size:14px}
.auth-status{min-height:18px;margin-top:12px;font-size:12px}
.auth-security{gap:6px;margin-top:10px;font-size:10px}.auth-security span{padding:4px 7px}
.panel-date-filter{display:grid;gap:4px;color:#64748b;font-size:11px;font-weight:700}.panel-date-filter .input{width:100%}

@media(max-width:800px){
  html{overflow-x:clip!important}
  body.native-app{overflow-x:clip!important;overflow-y:visible!important;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:13px;background:#f2f4f7}
  body.native-app.dark{background:#0f1115}
  body.native-app.native-menu-open{overflow:hidden}
  body.native-app .app-shell{min-height:100dvh}

  body.native-app .sidebar{height:calc(66px + env(safe-area-inset-bottom))!important;background:#090909;border-top-color:#252525;box-shadow:0 -8px 24px rgba(0,0,0,.16)}
  body.native-app .sidebar-nav{height:100%;display:flex!important;align-items:stretch;gap:3px;padding:6px 7px calc(6px + env(safe-area-inset-bottom));overflow:visible}
  body.native-app .sidebar-nav>.nav-item{position:relative;flex:1 1 0!important;min-width:0;min-height:50px;display:flex!important;flex-direction:column;align-items:center;justify-content:center!important;gap:3px;padding:5px 2px!important;border-radius:11px;color:#aeb3bd;font-size:9.5px;line-height:1.05}
  body.native-app .sidebar-nav>.nav-item.active{background:rgba(245,196,0,.16);color:#F5C400}
  body.native-app .sidebar-nav>.nav-item.active:before{content:"";position:absolute;top:-6px;left:28%;right:28%;height:3px;border-radius:0 0 4px 4px;background:#F5C400}
  body.native-app .nav-icon{display:block;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
  body.native-app .nav-icon circle{fill:currentColor;stroke:none}
  body.native-app .nav-item span{display:block!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}
  body.native-app .nav-more-trigger{display:flex!important}

  body.native-app .native-more-menu{display:none;position:fixed;inset:0 0 calc(66px + env(safe-area-inset-bottom));z-index:70}
  body.native-app .native-more-menu.open{display:block}
  body.native-app .native-more-backdrop{display:block;position:absolute;inset:0;width:100%;border:0;background:rgba(0,0,0,.52);backdrop-filter:blur(2px)}
  body.native-app .native-more-sheet{position:absolute;left:9px;right:9px;bottom:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:12px;border:1px solid #303030;border-radius:18px;background:#111;color:#fff;box-shadow:0 24px 60px rgba(0,0,0,.4)}
  body.native-app .native-more-head{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:1px 2px 6px}
  body.native-app .native-more-head>div{display:grid;gap:1px}.native-app .native-more-head small{color:#F5C400;font-size:9px;font-weight:900;letter-spacing:.1em}.native-app .native-more-head b{font-size:15px}
  body.native-app .native-more-head>button{width:42px;height:42px;border-radius:999px;background:#242424;color:#fff;font-size:20px}
  body.native-app .native-more-sheet>.nav-item{min-height:48px;display:grid!important;grid-template-columns:22px 1fr;align-items:center;gap:8px;padding:9px 10px!important;border:1px solid #2d2d2d;border-radius:11px;background:#1a1a1a;color:#e5e7eb;text-align:left;font-size:11px}
  body.native-app .native-more-sheet>.nav-item.active{border-color:#F5C400;background:#2b260d;color:#F5C400}
  body.native-app .native-more-sheet>.nav-item .nav-icon{width:18px;height:18px}
  body.native-app .native-more-sheet>.nav-item span{font-size:11px;white-space:nowrap}
  body.native-app .native-menu-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:7px;padding-top:3px}
  body.native-app .native-menu-actions button{min-height:42px;border:1px solid #353535;border-radius:10px;background:#202020;color:#fff;font-size:11px;font-weight:800}
  body.native-app .native-menu-actions button.danger{color:#fca5a5}

  body.native-app .main-content,body.native-app.sidebar-collapsed .main-content{margin-left:0!important;width:100%!important;max-width:100%!important;padding:10px 9px calc(82px + env(safe-area-inset-bottom))!important;overflow-x:clip}
  body.native-app .main-content>div:first-child{min-height:54px;margin:-10px -9px 10px!important;padding:8px 10px!important;display:flex;flex-wrap:nowrap;align-items:center;background:rgba(255,255,255,.96);border-bottom:1px solid #e5e7eb;box-shadow:0 3px 12px rgba(15,23,42,.04)}
  body.native-app.dark .main-content>div:first-child{background:rgba(15,17,21,.96)}
  body.native-app .main-content>div:first-child>div:first-child{min-width:0;flex:1}
  body.native-app .main-content>div:first-child h2{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px!important;line-height:1.1;letter-spacing:-.02em}
  body.native-app .main-content>div:first-child p{display:none}
  body.native-app .header-actions{width:auto!important;flex:0 0 auto;display:flex;flex-wrap:nowrap!important;gap:6px}
  body.native-app .notifications-bell,body.native-app #theme-btn{width:42px!important;height:42px!important;min-width:42px;min-height:42px;padding:0!important;border-radius:11px!important}
  body.native-app #theme-btn{position:relative;font-size:0}
  body.native-app #theme-btn:before{content:"";display:block;width:17px;height:17px;margin:auto;border:2px solid currentColor;border-radius:50%;box-shadow:inset -5px -2px 0 -1px currentColor}

  body.native-app section>.panel:first-child{margin-bottom:9px!important;padding:10px 11px!important}
  body.native-app section>.panel:first-child p.muted{display:none}
  body.native-app section>.panel:first-child h3{font-size:16px!important;line-height:1.15}
  body.native-app .panel,body.native-app .kpi-card,body.native-app .product-card{border:1px solid #e6e8ec;background:#fff;box-shadow:0 3px 12px rgba(15,23,42,.035)}
  body.native-app.dark .panel,body.native-app.dark .kpi-card,body.native-app.dark .product-card{border-color:#2c313a;background:#181b22}
  body.native-app.dark input[type="date"],body.native-app.dark input[type="month"],body.native-app.dark input[type="time"]{color-scheme:dark}
  body.native-app .panel{padding:12px!important;border-radius:13px!important}
  body.native-app .mb-7,body.native-app .mb-5{margin-bottom:10px!important}
  body.native-app .mb-4{margin-bottom:8px!important}
  body.native-app .mt-4{margin-top:9px!important}
  body.native-app .gap-4,body.native-app .gap-3{gap:8px!important}

  body.native-app button,body.native-app [role="button"]{min-height:42px}
  body.native-app .input{min-height:42px;width:100%;min-width:0;padding:8px 10px;border-radius:9px;font-size:12px;line-height:1.2}
  body.native-app textarea.input{min-height:76px}
  body.native-app .btn-primary,body.native-app .btn-secondary,body.native-app .btn-danger{min-height:42px;padding:8px 11px;border-radius:9px;font-size:11px;line-height:1.15}
  body.native-app .btn-mini{min-height:42px;padding:7px 10px;font-size:11px}
  body.native-app .gasto-field,body.native-app .vf-field,body.native-app .campanas-fields label{gap:4px;font-size:10.5px;line-height:1.2}

  body.native-app .kpi-card{min-width:0;min-height:66px;padding:9px 10px!important;border-radius:12px!important;display:flex;flex-direction:column;justify-content:center}
  body.native-app .kpi-card p{font-size:10.5px;line-height:1.15}
  body.native-app .kpi-card b{display:block;margin-top:3px;font-size:17px!important;line-height:1.05;letter-spacing:-.03em;white-space:nowrap;font-variant-numeric:tabular-nums}
  body.native-app #panel-view>.grid:first-child{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
  body.native-app #inventario-view>.grid,body.native-app #insumos-view>.grid:nth-child(2){grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
  body.native-app #insumos-view>.grid:nth-child(3){grid-template-columns:1fr!important;gap:9px!important}
  body.native-app #insumos-view>.grid:nth-child(3)>*{min-width:0;max-width:100%}
  body.native-app #gastos-view>.grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  body.native-app #productos-resumen,body.native-app #vf-productos-resumen{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
  body.native-app .product-card{min-width:0;min-height:62px;padding:9px!important;border-radius:11px!important}
  body.native-app .product-card span{font-size:10.5px}.native-app .product-card b{font-size:17px;margin-top:2px}

  body.native-app #panel-view>.panel .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  body.native-app #buscar,body.native-app #filter-status{grid-column:1/-1}
  body.native-app .panel-date-filter{min-width:0;display:grid;gap:3px;color:#64748b;font-size:9.5px;font-weight:800}
  body.native-app #panel-view .table-container{border:0!important;overflow:visible}
  body.native-app #panel-view table{width:100%;min-width:0}
  body.native-app #panel-view thead{display:none}
  body.native-app #panel-view tbody{display:grid;gap:7px}
  body.native-app #panel-view tbody tr{display:grid;grid-template-columns:1fr auto;gap:4px 8px;padding:10px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;box-shadow:0 3px 10px rgba(15,23,42,.035)}
  body.native-app.dark #panel-view tbody tr{background:#181b22;border-color:#303642}
  body.native-app #panel-view tbody td{display:none;border:0;padding:0;white-space:normal;font-size:11px}
  body.native-app #panel-view tbody td:nth-child(3),body.native-app #panel-view tbody td:nth-child(10),body.native-app #panel-view tbody td:nth-child(12),body.native-app #panel-view tbody td:nth-child(14){display:block}
  body.native-app #panel-view tbody td:nth-child(3){font-size:12px;font-weight:900}
  body.native-app #panel-view tbody td:nth-child(10){font-size:12px;font-weight:900;text-align:right}
  body.native-app #panel-view tbody td:nth-child(12){grid-column:1/2}
  body.native-app #panel-view tbody td:nth-child(14){grid-column:2/3;grid-row:2/4;text-align:right}
  body.native-app #panel-view .status-badge{min-height:42px;padding:5px 9px;font-size:10px}

  body.native-app .venta-ia-head,body.native-app .inventario-head,body.native-app .gastos-head,body.native-app .cont-head{display:flex!important;align-items:center;justify-content:space-between;gap:8px}
  body.native-app .venta-ia-head>span,body.native-app .inventario-head>span,body.native-app .gastos-head>span,body.native-app .cont-head>span{flex:0 0 auto;padding:4px 7px;font-size:9px}
  body.native-app .kanban-toolbar-pro{gap:8px;padding:9px;margin-bottom:9px;border-radius:12px}
  body.native-app .toolbar-main-row{display:grid!important;grid-template-columns:1fr 1fr;gap:7px;width:100%}
  body.native-app .toolbar-search{grid-column:1/-1;min-width:0}
  body.native-app .toolbar-field{min-width:0;gap:3px}.native-app .toolbar-field>b{font-size:9.5px}
  body.native-app .quick-filters,body.native-app .date-filters{display:flex;flex-wrap:nowrap;gap:5px;max-width:100%;overflow-x:auto;scrollbar-width:none}
  body.native-app .quick-filter,body.native-app .date-filter{flex:0 0 auto;min-height:42px;padding:6px 8px;font-size:9.5px}
  body.native-app #orders-board.orders-board{grid-template-columns:none!important;grid-auto-flow:column!important;grid-auto-columns:min(72vw,280px)!important;gap:8px!important;padding-bottom:7px;scroll-snap-type:x proximity}
  body.native-app .orders-column{min-height:280px!important;max-height:none!important;padding:9px!important;border-radius:13px!important;scroll-snap-align:start}
  body.native-app .orders-column-head{margin-bottom:7px;padding-bottom:6px}.native-app .orders-column-head h4{font-size:10px}
  body.native-app .orders-list{gap:7px}.native-app .order-card{padding:9px;border-radius:11px}

  body.native-app .vf-layout,body.native-app .gastos-layout{grid-template-columns:1fr!important;gap:9px!important}
  body.native-app .vf-layout>*,body.native-app .gastos-layout>*,body.native-app .campanas-workspace>*{min-width:0;max-width:100%}
  body.native-app .vf-form,body.native-app .gasto-form{width:100%;min-width:0;max-width:100%;padding:12px!important;border-radius:13px}
  body.native-app .vf-form-head{margin-bottom:9px}.native-app .vf-form-head h4,.native-app .gasto-form h4,.native-app .gasto-list h4{font-size:15px;margin-bottom:8px}
  body.native-app .vf-products{width:100%;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  body.native-app .vf-products .vf-product{gap:4px;font-size:10.5px}
  body.native-app .qty-control{min-width:0;grid-template-columns:42px minmax(0,1fr) 42px;border-radius:8px}.native-app .qty-control button{height:42px;font-size:16px}.native-app .qty-control span{font-size:14px}
  body.native-app .vf-form>.grid,body.native-app .gasto-form .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  body.native-app .vf-totals{gap:7px;margin-top:9px}.native-app .vf-totals div{padding:9px;border-radius:10px}.native-app .vf-totals span{font-size:10px}.native-app .vf-totals b{font-size:18px}
  body.native-app .vf-kpis{width:100%;min-width:0;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px}
  body.native-app .mode-switch{padding:3px;border-radius:9px}.native-app .mode-switch button{min-height:42px;padding:6px 9px;font-size:11px}

  body.native-app .caja-panel{padding:11px!important}.native-app .caja-top{grid-template-columns:1fr!important;gap:8px}.native-app .caja-top b{font-size:24px}.native-app .caja-top small{font-size:10px}
  body.native-app .caja-form{grid-template-columns:1fr 1fr!important;gap:7px}.native-app .caja-form button{grid-column:1/-1}
  body.native-app .gasto-list{padding:11px!important}.native-app .gasto-list-head{gap:8px}
  body.native-app .gasto-list-head>div{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}

  body.native-app .cont-filtros{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  body.native-app .cont-filtros .gasto-field,body.native-app .cont-filtros .btn-primary,body.native-app .cont-filtros .btn-secondary{width:100%}
  body.native-app .cont-hero{grid-template-columns:1fr!important;gap:8px}
  body.native-app .cont-profit-card{min-height:118px;padding:15px;border-radius:14px}.native-app .cont-profit-card span{font-size:10px}.native-app .cont-profit-card b{margin:7px 0;font-size:28px}.native-app .cont-profit-card small{font-size:10px}
  body.native-app .cont-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px}
  body.native-app .cont-box h4,body.native-app .cont-section-head h4{font-size:14px;margin-bottom:8px}.native-app .cont-list{gap:7px}.native-app .cont-list-item{padding-bottom:6px}.native-app .cont-list-item span{font-size:11px}.native-app .cont-list-item b{font-size:11px}

  body.native-app .campanas-hero{gap:8px}.native-app .campanas-eyebrow{font-size:8px}.native-app .campanas-total{padding:6px 8px}.native-app .campanas-total span{font-size:7px}.native-app .campanas-total b{font-size:19px}
  body.native-app .campanas-workspace,body.native-app .campanas-sidebar-stack,body.native-app .campanas-main{gap:9px}
  body.native-app .campanas-sidebar-stack{grid-template-columns:1fr!important}
  body.native-app .campanas-config-grid{grid-template-columns:1fr!important;gap:9px}.native-app .campanas-image-preview{min-height:150px}
  body.native-app .campanas-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px}.native-app .campanas-fields label.full,.native-app .campanas-fields .full{grid-column:1/-1!important}
  body.native-app .campanas-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%}.native-app .campanas-actions button{min-width:0;width:100%}
  body.native-app .campanas-progress-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px}
  body.native-app .campanas-filters{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px}.native-app .campanas-date-filter .input{min-width:0}
  body.native-app .campanas-test-row{grid-template-columns:1fr!important;gap:7px}.native-app .campanas-worker-row{padding:8px;font-size:10px}
  body.native-app .campanas-file-zone{margin:8px 0;padding:10px}

  body.native-app .table-container{max-width:100%;overflow:auto;border-radius:11px}
  body.native-app table{font-size:10.5px}.native-app table th,.native-app table td{padding:7px 7px;line-height:1.2}
  body.native-app .inventario-table{min-width:760px}
  body.native-app .inventario-table th:first-child,body.native-app .inventario-table td:first-child,body.native-app .gastos-table th:first-child,body.native-app .gastos-table td:first-child,body.native-app .cont-table th:first-child,body.native-app .cont-table td:first-child{position:sticky;left:0;z-index:2;background:#fff}
  body.native-app .inventario-table th:first-child,body.native-app .gastos-table th:first-child,body.native-app .cont-table th:first-child{background:#f7f7f7}
  body.native-app.dark .inventario-table td:first-child,body.native-app.dark .gastos-table td:first-child,body.native-app.dark .cont-table td:first-child{background:#0f1115}
  body.native-app.dark .inventario-table th:first-child,body.native-app.dark .gastos-table th:first-child,body.native-app.dark .cont-table th:first-child{background:#181b22}
  body.native-app table.native-detail-table{width:100%;min-width:0!important}
  body.native-app table.native-detail-table thead{display:none}
  body.native-app table.native-detail-table tbody{display:grid;gap:7px;padding:7px}
  body.native-app table.native-detail-table tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:9px;border:1px solid #e5e7eb;border-radius:11px;background:#fff}
  body.native-app.dark table.native-detail-table tbody tr{border-color:#303642;background:#181b22}
  body.native-app table.native-detail-table tbody td{display:none;min-width:0;padding:5px 6px;border:0;white-space:normal;overflow-wrap:anywhere}
  body.native-app table.native-detail-table tbody td.native-primary,body.native-app table.native-detail-table tbody tr.native-expanded td:not(.native-row-toggle-cell){display:grid;gap:2px}
  body.native-app table.native-detail-table tbody td:before{content:attr(data-label);color:#64748b;font-size:8.5px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
  body.native-app table.native-detail-table tbody td.native-row-toggle-cell{display:block;grid-column:1/-1;padding:0}
  body.native-app table.native-detail-table .native-row-toggle{width:100%;min-height:42px;border:1px solid #d7dbe2;border-radius:9px;background:#f8fafc;color:#111;font-size:10px;font-weight:900}
  body.native-app.dark table.native-detail-table .native-row-toggle{border-color:#3a414d;background:#111318;color:#f8fafc}

  body.native-app #tablas-view>.grid{display:grid!important;grid-template-columns:1fr!important;gap:9px}
  body.native-app #tablas-view .admin-table-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-height:180px!important;gap:6px!important}
  body.native-app .admin-table-btn{min-height:42px;padding:7px 8px}.native-app .admin-table-btn b{font-size:10px}.native-app .admin-table-btn span{font-size:9px}
  body.native-app .admin-toolbar{gap:6px;padding:7px}.native-app .admin-excel-wrap{height:54vh!important;min-height:300px!important}
  body.native-app .admin-excel-table{font-size:10px}.native-app .admin-excel-table td{height:30px;min-width:120px;padding:5px 6px}

  body.native-app .drawer-card,body.native-app .notifications-drawer,body.native-app .chat-drawer-card,body.native-app .chat-panel{width:100%!important;max-width:none!important;padding:14px 12px calc(78px + env(safe-area-inset-bottom))!important}
  body.native-app .detail-grid{grid-template-columns:92px 1fr;gap:7px;font-size:11px}
  body.native-app .notifications-head{padding:14px 12px 10px}.native-app .notifications-head h3{font-size:18px}.native-app .notifications-toolbar,.native-app .notification-filters{padding-left:12px;padding-right:12px}
  body.native-app .notification-card{padding:10px}.native-app .chat-panel{gap:8px}.native-app .chat-messages{gap:7px;padding:8px}.native-app .chat-msg{padding:7px 9px}.native-app .chat-msg p{font-size:12px}
}

@media(max-width:350px){
  body.native-app #panel-view>.grid:first-child,body.native-app #inventario-view>.grid,body.native-app #insumos-view>.grid:nth-child(2){grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.native-app #productos-resumen,body.native-app #vf-productos-resumen{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.native-app .campanas-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-height:700px){
  .auth-card{padding:18px}.auth-logo{width:54px;height:54px;margin-bottom:10px}.auth-card h1{font-size:21px}.auth-card .auth-kicker{margin-bottom:10px}.auth-card .auth-copy{margin-bottom:12px}.auth-security{margin-top:7px}
}

/* Conversation first: order details open only on demand. */
.chat-window:not(.details-open){grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important}
.chat-details-panel.hidden{display:none!important}
.chat-details-head{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px;padding:0 0 10px;background:#fff;border-bottom:1px solid #eef2f7}
.chat-details-panel .chat-details-head h4{position:static!important;margin:0!important;padding:0!important;background:transparent!important}
.chat-details-head button{min-height:42px;white-space:nowrap}
body.dark .chat-details-head{background:#181b22;border-color:#303642}

@media(max-width:980px){
  .chat-window.details-open{position:relative;grid-template-columns:1fr!important;grid-template-rows:minmax(0,1fr)!important}
  .chat-window.details-open .chat-details-panel{position:absolute!important;inset:0;z-index:10;width:100%;height:100%!important;min-height:0!important;border-radius:inherit;overflow-y:auto!important}
}

@media(max-width:800px){
  body.native-app .chat-panel{gap:7px!important;padding:10px 10px calc(10px + env(safe-area-inset-bottom))!important}
  body.native-app .chat-panel-head{gap:7px!important}
  body.native-app .chat-panel-head h3{font-size:18px!important}
  body.native-app .chat-panel-head .muted{font-size:11px;line-height:1.25}
  body.native-app .chat-head-actions{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto;gap:6px!important;width:100%}
  body.native-app .chat-head-actions button{min-width:0!important;min-height:42px;padding:8px 10px!important;font-size:11px!important}
  body.native-app .chat-messages{min-height:0!important;padding:8px!important}
  body.native-app .chat-msg{max-width:94%!important}
  body.native-app .chat-msg p{font-size:12.5px!important;line-height:1.4!important}
  body.native-app .chat-compose{gap:6px!important;padding-top:6px!important}
  body.native-app .chat-compose textarea{min-height:50px!important;max-height:68px!important}
  body.native-app .chat-attach-row{display:grid!important;grid-template-columns:1fr 1fr 1fr;gap:6px!important}
  body.native-app .chat-attach-row .btn-secondary,body.native-app .chat-attach-row .btn-primary{min-width:0!important;min-height:42px;padding:8px 6px!important;font-size:11px!important}
  body.native-app .chat-window.details-open .chat-details-panel{padding:12px 12px calc(12px + env(safe-area-inset-bottom))!important}
}
