
.admin-desktop-sidebar,.admin-desktop-topbar{display:none;}

@media (min-width: 980px){
  body:has(#s-admin.active){
    background:#f4f7f5;
  }

  #s-admin{
    --admin-sidebar:248px;
    --admin-topbar:78px;
    background:#f4f7f5;
    min-height:100vh;
    overflow:visible;
    padding-left:var(--admin-sidebar);
    padding-top:var(--admin-topbar);
  }

  #s-admin .admin-desktop-sidebar{
    display:flex;
    position:fixed;
    inset:0 auto 0 0;
    width:var(--admin-sidebar);
    z-index:10020;
    background:#10251b;
    color:white;
    flex-direction:column;
    padding:22px 16px 16px;
    overflow-y:auto;
    box-shadow:10px 0 30px rgba(16,37,27,.08);
  }

  .admin-desktop-brand{
    display:flex;align-items:center;gap:11px;
    padding:0 8px 22px;border-bottom:1px solid rgba(255,255,255,.09);
    margin-bottom:18px;
  }
  .admin-desktop-logo{
    width:42px;height:42px;border-radius:13px;background:#27a45f;
    display:flex;align-items:center;justify-content:center;
    font-size:15px;font-weight:950;letter-spacing:-.02em;
    box-shadow:0 8px 22px rgba(39,164,95,.25);
  }
  .admin-desktop-brand strong{display:block;font-size:17px;letter-spacing:-.02em;}
  .admin-desktop-brand span{display:block;font-size:10px;color:#91aa9d;font-weight:700;margin-top:2px;}

  .admin-desktop-nav-group{margin-bottom:16px;}
  .admin-desktop-nav-label{
    font-size:9px;letter-spacing:.14em;color:#668175;font-weight:900;
    padding:0 10px 7px;
  }
  .admin-desktop-nav-item{
    width:100%;height:40px;border:0;background:transparent;color:#b9c9c1;
    border-radius:11px;display:flex;align-items:center;gap:11px;padding:0 11px;
    cursor:pointer;font-size:12px;font-weight:800;text-align:left;margin-bottom:3px;
    transition:.16s ease;
  }
  .admin-desktop-nav-item i{width:18px;text-align:center;font-size:13px;}
  .admin-desktop-nav-item span{flex:1;}
  .admin-desktop-nav-item:hover{background:rgba(255,255,255,.055);color:#fff;}
  .admin-desktop-nav-item.on{
    background:#1d5f3e;color:#fff;
    box-shadow:inset 3px 0 0 #52d38b;
  }
  .admin-desktop-nav-item b{
    min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:#d94141;
    display:none;align-items:center;justify-content:center;color:white;font-size:9px;
  }

  .admin-desktop-sidebar-footer{
    margin-top:auto;padding-top:14px;border-top:1px solid rgba(255,255,255,.09);
  }
  .admin-desktop-status{
    font-size:10px;color:#91aa9d;font-weight:750;display:flex;align-items:center;
    gap:7px;padding:8px 10px 10px;
  }
  .admin-desktop-status span,.admin-desktop-live span{
    width:7px;height:7px;border-radius:50%;background:#37c878;
    box-shadow:0 0 0 4px rgba(55,200,120,.12);
  }
  .admin-desktop-sidebar-footer button{
    width:100%;height:38px;border:0;border-radius:10px;background:rgba(255,255,255,.06);
    color:#c8d4ce;font-size:11px;font-weight:800;cursor:pointer;
  }

  #s-admin .admin-desktop-topbar{
    display:flex;
    position:fixed;
    top:0;left:var(--admin-sidebar);right:0;height:var(--admin-topbar);
    z-index:10010;background:rgba(255,255,255,.96);backdrop-filter:blur(15px);
    border-bottom:1px solid #e7ece9;
    align-items:center;justify-content:space-between;
    padding:0 30px;
  }
  .admin-desktop-breadcrumb{
    font-size:9px;letter-spacing:.13em;color:#92a099;font-weight:900;margin-bottom:3px;
  }
  #admin-desktop-page-title{
    margin:0;font-size:22px;color:#17251e;letter-spacing:-.035em;font-weight:900;
  }
  .admin-desktop-top-actions{display:flex;align-items:center;gap:10px;}
  #admin-ciudad-global-desktop{
    height:34px;padding:0 12px;border:1.5px solid #173e2c;background:#173e2c;
    border-radius:10px;color:#fff;font-size:11px;font-weight:850;cursor:pointer;
    -webkit-appearance:none;appearance:none;
  }
  .admin-desktop-live{
    height:34px;padding:0 12px;border:1px solid #e2eae6;background:#f8fbf9;
    border-radius:10px;display:flex;align-items:center;gap:8px;
    color:#557064;font-size:10px;font-weight:850;
  }
  .admin-desktop-icon-btn{
    width:38px;height:38px;border:1px solid #e2e8e5;background:white;
    border-radius:11px;display:flex;align-items:center;justify-content:center;
    position:relative;color:#42564c;cursor:pointer;font-size:14px;
  }
  .admin-desktop-icon-btn .notif-badge{
    position:absolute;top:-5px;right:-5px;background:#d33;color:white;border-radius:99px;
    min-width:17px;height:17px;padding:0 4px;font-size:8px;font-weight:900;
    align-items:center;justify-content:center;
  }
  .admin-desktop-profile{
    height:44px;border:1px solid #e2e8e5;background:white;border-radius:12px;
    padding:4px 10px 4px 5px;display:flex;align-items:center;gap:8px;cursor:pointer;
  }
  .admin-desktop-avatar{
    width:32px;height:32px;border-radius:9px;background:#e6f5ec;color:#176b3d;
    display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:950;
  }
  .admin-desktop-profile>span:last-child{text-align:left;}
  .admin-desktop-profile strong{display:block;font-size:10.5px;color:#263a30;}
  .admin-desktop-profile small{display:block;font-size:8.5px;color:#87978f;margin-top:1px;}

  /* Reaprovechamos el hero únicamente como franja de KPIs. */
  #s-admin>.admin-hero{
    background:transparent!important;color:inherit!important;padding:18px 30px 4px!important;
    border-radius:0!important;box-shadow:none!important;position:static!important;
    max-width:1580px;margin:0 auto;
  }
  #s-admin>.admin-hero .admin-title-row,
  #s-admin>.admin-hero .admin-mobile-nav,
  #s-admin>.admin-hero .admin-tabs-modern{display:none!important;}
  #s-admin>.admin-hero .admin-kpi-row{
    display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;margin:0!important;
  }
  #s-admin>.admin-hero .admin-kpi{
    background:white!important;color:#1d3026!important;border:1px solid #e5ebe8!important;
    border-radius:15px!important;min-height:88px!important;padding:16px 18px!important;
    display:flex!important;flex-direction:column!important;justify-content:center!important;
    box-shadow:0 5px 18px rgba(27,54,40,.035)!important;text-align:left!important;
  }
  #s-admin>.admin-hero .admin-kpi.alert{
    background:#fff8f7!important;border-color:#f2ddda!important;
  }
  #s-admin>.admin-hero .admin-kpi b{
    color:#193025!important;font-size:25px!important;line-height:1!important;
    font-weight:950!important;margin-bottom:7px!important;
  }
  #s-admin>.admin-hero .admin-kpi span{
    color:#7d8d85!important;font-size:10px!important;font-weight:800!important;
  }

  #s-admin>.admin-panel{
    max-width:1580px!important;margin:0 auto!important;padding:18px 30px 45px!important;
    background:transparent!important;
  }

  #s-admin .admin-alert{
    border-radius:12px!important;padding:11px 14px!important;font-size:10.5px!important;
    box-shadow:none!important;
  }
  #s-admin .admin-sec{
    margin:20px 0 10px!important;padding:0!important;
  }
  #s-admin .admin-sec h3{
    font-size:13px!important;letter-spacing:-.01em!important;color:#25382f!important;
    margin:0!important;font-weight:900!important;
  }
  #s-admin .admin-sec small{font-size:9px!important;color:#8a9991!important;}

  #s-admin .admin-stat-row{
    display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:12px!important;
  }
  #s-admin .admin-stat-box,
  #s-admin .stat-card{
    background:white!important;border:1px solid #e5ebe8!important;border-radius:14px!important;
    box-shadow:0 4px 16px rgba(22,49,35,.035)!important;
  }

  #s-admin .admin-filter-row{
    display:flex!important;align-items:center!important;gap:10px!important;
    background:white;border:1px solid #e5ebe8;border-radius:14px;padding:9px 10px;
    margin-bottom:12px!important;
  }
  #s-admin .admin-search-bar{
    min-height:40px!important;border-radius:10px!important;background:#f7f9f8!important;
    border:1px solid #edf1ef!important;margin-bottom:10px!important;
  }
  #s-admin .admin-filter-row .admin-search-bar{margin-bottom:0!important;}
  #s-admin .finput,#s-admin .fselect{
    border-radius:10px!important;border-color:#e2e9e5!important;
  }

  /* Listas: densidad de escritorio, no tarjetas de teléfono gigantes. */
  #s-admin #admin-pedidos,
  #s-admin #admin-pedidos-pendientes,
  #s-admin #admin-pedidos-cancelaciones{
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;
  }
  #s-admin #admin-pedidos>.pedido-card,
  #s-admin #admin-pedidos-pendientes>.pedido-card,
  #s-admin #admin-pedidos-cancelaciones>.pedido-card{
    margin:0!important;min-width:0;
  }
  #s-admin .pedido-card{
    border-radius:14px!important;border:1px solid #e4ebe7!important;
    box-shadow:0 4px 15px rgba(24,52,37,.035)!important;padding:14px!important;
  }

  #s-admin #admin-rests-activos,
  #s-admin #admin-reps-activos,
  #s-admin #admin-clientes-list{
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;
  }
  #s-admin #admin-rests-activos>.admin-user-card,
  #s-admin #admin-reps-activos>.admin-user-card,
  #s-admin #admin-clientes-list>.admin-user-card,
  #s-admin #admin-rests-activos>.profile-row,
  #s-admin #admin-reps-activos>.profile-row,
  #s-admin #admin-clientes-list>.profile-row{
    margin:0!important;
  }

  #s-admin .profile-row,#s-admin .admin-user-card,#s-admin .admin-section-card,
  #s-admin .pro-card,#s-admin .admin-notif-card{
    background:white!important;border:1px solid #e5ebe8!important;
    box-shadow:0 4px 15px rgba(24,52,37,.035)!important;border-radius:14px!important;
  }

  #s-admin .btn{box-shadow:none!important;}
  #s-admin .btn-sm{border-radius:9px!important;}

  /* Dashboard con mayor ancho y ritmo visual. */
  #s-admin #admin-dashboard-content{
    display:block;min-height:400px;
  }

  /* Modales del admin sí pueden usar tamaño de escritorio. */
  #s-admin ~ [data-modal-root] > div,
  body > [data-modal-root] > div{
    max-width:760px;
    margin-left:auto;margin-right:auto;
  }
}

@media (min-width: 1380px){
  #s-admin #admin-pedidos,
  #s-admin #admin-pedidos-pendientes,
  #s-admin #admin-pedidos-cancelaciones{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  #s-admin #admin-rests-activos,
  #s-admin #admin-reps-activos,
  #s-admin #admin-clientes-list{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}




.admin-config-pro{scroll-behavior:smooth;}
.config-pro-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;}
.config-pro-kicker{font-size:9px;font-weight:950;letter-spacing:.13em;color:#7e9187;margin-bottom:5px;}
.config-pro-head h2{font-size:23px;line-height:1.1;margin:0;color:#17271f;font-weight:950;letter-spacing:-.035em;}
.config-pro-head p{margin:6px 0 0;font-size:11px;color:#74847c;font-weight:650;}
.config-pro-head-status{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:850;color:#587166;background:white;border:1px solid #e3ebe7;border-radius:11px;padding:9px 12px;}
.config-pro-head-status span{width:7px;height:7px;border-radius:50%;background:#35bd70;box-shadow:0 0 0 4px rgba(53,189,112,.12);}
.config-pro-nav{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;background:white;border:1px solid #e5ebe8;border-radius:14px;padding:6px;margin-bottom:18px;position:relative;top:auto;z-index:1;}
.config-pro-nav::-webkit-scrollbar{display:none;}
.config-pro-nav button{border:0;background:transparent;color:#6a7c73;border-radius:9px;padding:9px 12px;font-size:10px;font-weight:850;white-space:nowrap;cursor:pointer;display:flex;align-items:center;gap:7px;}
.config-pro-nav button.on{background:#173c2a;color:white;}
.config-pro-section{scroll-margin-top:140px;margin-bottom:22px;}
.config-pro-section-head{display:flex;align-items:center;gap:11px;margin-bottom:10px;}
.config-pro-icon{width:38px;height:38px;border-radius:11px;background:#e8f5ee;color:#197047;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;}
.config-pro-icon.favor{background:#fff3db;color:#9a6508;}
.config-pro-icon.rider{background:#eaf0ff;color:#425fc6;}
.config-pro-icon.pay{background:#f0eaff;color:#7150ba;}
.config-pro-icon.growth{background:#e8f8f3;color:#138266;}
.config-pro-icon.system{background:#edf1f3;color:#4f626c;}
.config-pro-section-head h3{font-size:14px;margin:0;color:#23362d;font-weight:950;}
.config-pro-section-head p{font-size:10px;color:#87958e;margin:2px 0 0;font-weight:650;}
.config-pro-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;}
.config-pro-card,.config-pro-service-card{background:white;border:1px solid #e3ebe7;border-radius:15px;padding:15px;box-shadow:0 4px 16px rgba(26,53,39,.035);}
.config-pro-card.span-2{grid-column:1/-1;}
.config-pro-card-title{font-size:12px;font-weight:950;color:#283b31;margin-bottom:4px;}
.config-pro-card-desc{font-size:9.5px;color:#86948d;font-weight:650;line-height:1.5;margin-bottom:12px;}
.config-pro-input-row{display:flex;gap:8px;align-items:stretch;}
.config-pro-input-row>button,.config-pro-save-wide{border:0;background:#1c7146;color:white;border-radius:10px;padding:0 14px;min-height:39px;font-size:10px;font-weight:900;cursor:pointer;}
.config-pro-input-row>button.secondary{background:#eef5f1;color:#1d6945;border:1px solid #d8e7df;}
.config-pro-save-wide{width:100%;margin-top:12px;}
.config-pro-money-input{display:flex;align-items:center;min-height:39px;border:1px solid #dde6e1;border-radius:10px;background:#f9fbfa;overflow:hidden;flex:1;}
.config-pro-money-input.large{min-height:47px;background:white;}
.config-pro-money-input span{font-size:10px;font-weight:900;color:#718178;padding:0 9px;white-space:nowrap;}
.config-pro-money-input input{width:100%;min-width:0;border:0;background:transparent;outline:0;padding:9px 9px;font-family:inherit;color:#203229;font-weight:900;font-size:12px;}
.config-pro-money-input.large input{font-size:16px;}
.config-pro-field{width:100%;min-height:39px;border:1px solid #dde6e1;border-radius:10px;background:#f9fbfa;padding:9px 10px;outline:0;font-family:inherit;font-size:10.5px;font-weight:750;color:#24372d;box-sizing:border-box;}
.config-pro-service-card{margin-bottom:11px;border-left:4px solid #d69a2d;}
.config-pro-service-card.moto{border-left-color:#238457;}
.config-pro-service-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px;}
.config-pro-service-top>i{font-size:24px;color:#b17b1e;opacity:.7;}
.config-pro-service-card.moto .config-pro-service-top>i{color:#22784e;}
.config-pro-service-badge{display:inline-flex;padding:4px 7px;border-radius:99px;background:#fff4dc;color:#94620a;font-size:8px;font-weight:950;letter-spacing:.08em;margin-bottom:6px;}
.config-pro-service-card.moto .config-pro-service-badge{background:#e8f6ee;color:#207247;}
.config-pro-service-top h4{font-size:14px;margin:0;color:#25382f;font-weight:950;}
.config-pro-service-top p{font-size:9.5px;color:#87958e;margin:3px 0 0;font-weight:650;}
.config-pro-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.config-pro-service-grid label>span,.config-pro-three label>span,.config-pro-two label>span{display:block;font-size:9.5px;font-weight:900;color:#40544a;margin-bottom:4px;}
.config-pro-service-grid label>small{display:block;font-size:8.5px;color:#95a19b;line-height:1.35;min-height:23px;margin-bottom:6px;}
.config-pro-margin-preview{display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:center;background:#f7faf8;border:1px dashed #d8e4de;border-radius:11px;padding:10px 12px;margin-top:10px;}
.config-pro-margin-preview span{font-size:9px;font-weight:850;color:#667a70;}
.config-pro-margin-preview strong{font-size:13px;font-weight:950;color:#236f4b;}
.config-pro-margin-preview strong.loss{color:#b64c44;}
.config-pro-margin-preview small{grid-column:1/-1;font-size:8.5px;color:#95a19b;}
.config-pro-three{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;}
.config-pro-two{display:grid;grid-template-columns:1fr 1fr;gap:9px;}
.config-pro-two.compact{margin-top:10px;}
.config-pro-status{position:sticky;bottom:12px;min-height:0;text-align:center;font-size:10px;font-weight:850;color:#237349;margin-top:10px;pointer-events:none;}
@media(max-width:979px){
  .config-pro-head{display:block;}
  .config-pro-head-status{display:none;}
  .config-pro-nav{top:auto;}
  .config-pro-grid,.config-pro-service-grid,.config-pro-three,.config-pro-two{grid-template-columns:1fr;}
  .config-pro-card.span-2{grid-column:auto;}
  .config-pro-input-row{flex-wrap:wrap;}
  .config-pro-input-row>*{flex:1 1 150px;}
}



