*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
--burn:#C2410C;--burn-pale:#FFF7F0;--dark:#0D1B2A;--dark2:#112236;--dark3:#162D42;
--white:#fff;--g1:#F8F9FB;--g2:#EEF1F5;--g3:#D1D9E0;--g4:#8A9BB0;--g5:#526070;
--red:#E24B4A;--font:'DM Sans',sans-serif;--mono:'DM Mono',monospace;
--r:12px;--rl:18px;--sw:230px;
}
html,body{height:100%;font-family:var(--font);background:var(--g1);color:var(--dark);overflow-x:hidden;}
a{text-decoration:none;cursor:pointer;}

/* AUTH */
.auth-wrap{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--dark);padding:16px;}
.auth-card{background:var(--white);border-radius:20px;padding:28px;width:100%;max-width:380px;}
.auth-logo{display:flex;align-items:center;gap:10px;margin-bottom:22px;justify-content:center;}
.auth-logo img{width:40px;height:40px;border-radius:10px;}
.auth-logo span{font-size:22px;font-weight:700;color:var(--dark);}
.auth-links{display:flex;flex-direction:column;gap:6px;margin-top:14px;text-align:center;}
.auth-links span{font-size:12px;color:var(--burn);cursor:pointer;}
.lbl{font-size:12px;font-weight:500;color:var(--g5);margin-bottom:5px;display:block;margin-top:10px;}
.inp{width:100%;padding:10px 13px;border:1px solid var(--g2);border-radius:var(--r);font-size:14px;font-family:var(--font);outline:none;color:var(--dark);display:block;}
.inp:focus{border-color:var(--burn);}
.err{font-size:12px;color:var(--red);margin-top:6px;min-height:16px;}
.btn-main{width:100%;padding:13px;border-radius:var(--r);background:var(--burn);color:#fff;font-size:14px;font-weight:700;cursor:pointer;border:none;font-family:var(--font);margin-top:8px;display:block;}

/* PIN */
.pin-display{display:flex;justify-content:center;gap:14px;margin:16px 0;}
.pin-dot{width:14px;height:14px;border-radius:50%;background:var(--g2);transition:all 0.15s;}
.pin-dot.filled{background:var(--burn);}
.pin-numpad{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:12px;}
.pin-btn{background:var(--g1);border:1px solid var(--g2);border-radius:var(--r);padding:15px;font-size:20px;font-weight:600;cursor:pointer;font-family:var(--mono);color:var(--dark);}

/* SHELL */
.shell{display:flex;height:100vh;overflow:hidden;}
.overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:150;}
.overlay.open{display:block;}
.sidebar{width:var(--sw);background:var(--dark);display:flex;flex-direction:column;flex-shrink:0;transition:transform 0.3s;z-index:160;}
.sb-logo{display:flex;align-items:center;gap:10px;padding:18px 16px 14px;border-bottom:1px solid rgba(255,255,255,0.06);}
.sb-logo img{width:28px;height:28px;border-radius:8px;}
.sb-logo span{font-size:16px;font-weight:700;color:#fff;}
.sb-merchant{margin:10px 8px;background:var(--dark3);border-radius:var(--r);padding:10px 12px;display:flex;align-items:center;gap:10px;}
.sb-avatar{width:32px;height:32px;border-radius:8px;background:var(--burn);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff;flex-shrink:0;}
.sb-name{font-size:12px;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px;}
.sb-plan{font-size:10px;color:var(--g4);margin-top:1px;}
.sb-nav{flex:1;padding:6px 8px;overflow-y:auto;}
.nav-label{font-size:10px;font-weight:500;color:rgba(255,255,255,0.2);letter-spacing:0.08em;text-transform:uppercase;padding:10px 10px 4px;}
.nav-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--r);cursor:pointer;color:rgba(255,255,255,0.35);font-size:13px;margin-bottom:2px;transition:all 0.15s;border:1px solid transparent;}
.nav-item i{font-size:16px;flex-shrink:0;}
.nav-item:hover{background:rgba(255,255,255,0.06);color:rgba(255,255,255,0.8);}
.nav-item.active{background:rgba(194,65,12,0.18);color:#FDBA74;border-color:rgba(194,65,12,0.2);}
.sb-footer{padding:12px 16px;border-top:1px solid rgba(255,255,255,0.05);display:flex;align-items:center;gap:8px;font-size:11px;color:rgba(255,255,255,0.25);}
.status-dot{width:6px;height:6px;border-radius:50%;background:var(--burn);flex-shrink:0;}
.chip-admin{background:rgba(194,65,12,0.2);color:#FDBA74;font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;border:1px solid rgba(194,65,12,0.3);}

/* MAIN */
.main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;}
.topbar{background:var(--white);border-bottom:1px solid var(--g2);padding:0 16px;height:52px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.tb-left{display:flex;align-items:center;gap:10px;}
.tb-title{font-size:15px;font-weight:600;}
.tb-right{display:flex;align-items:center;gap:8px;}
.hamburger{display:none;background:none;border:none;font-size:22px;cursor:pointer;color:var(--dark);padding:4px;align-items:center;}
.btn-cobrar{background:var(--burn);color:#fff;border:none;padding:8px 14px;border-radius:9px;font-size:13px;font-weight:700;cursor:pointer;font-family:var(--font);display:flex;align-items:center;gap:6px;}
.btn-icon{background:var(--white);border:1px solid var(--g2);border-radius:9px;padding:7px 10px;font-size:14px;cursor:pointer;color:var(--g5);display:flex;align-items:center;}
.content{flex:1;overflow-y:auto;padding:16px;background:var(--g1);}

/* CARDS */
.card{background:var(--white);border:1px solid var(--g2);border-radius:var(--rl);margin-bottom:12px;}
.card-header{padding:13px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--g2);}
.card-title{font-size:13px;font-weight:600;}
.card-link{font-size:12px;color:var(--burn);cursor:pointer;font-weight:500;}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px;}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px;}

/* METRICS */
.metric{background:var(--white);border:1px solid var(--g2);border-radius:var(--rl);padding:14px 16px;}
.metric.dark{background:var(--dark);border-color:var(--dark);}
.metric-icon{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:10px;font-size:14px;}
.metric-label{font-size:11px;color:var(--g4);margin-bottom:2px;}
.metric.dark .metric-label{color:rgba(255,255,255,0.4);}
.metric-value{font-size:20px;font-weight:700;font-family:var(--mono);}
.metric.dark .metric-value{color:#fff;}
.metric-sub{font-size:11px;margin-top:3px;color:var(--burn);}

/* BALANCE CARD */
.balance-card{background:var(--dark);border-radius:var(--rl);padding:18px;position:relative;overflow:hidden;}
.balance-card::before{content:'';position:absolute;top:-40px;right:-40px;width:120px;height:120px;border-radius:50%;background:rgba(194,65,12,0.12);}
.balance-label{font-size:11px;color:rgba(255,255,255,0.4);margin-bottom:5px;position:relative;z-index:1;}
.balance-value{font-size:26px;font-weight:700;font-family:var(--mono);margin-bottom:14px;color:#fff;position:relative;z-index:1;}
.balance-actions{display:flex;gap:8px;position:relative;z-index:1;}
.bal-btn{flex:1;padding:9px;border-radius:9px;font-size:12px;font-weight:600;cursor:pointer;border:none;font-family:var(--font);display:flex;align-items:center;justify-content:center;gap:6px;}
.bal-btn.primary{background:var(--burn);color:#fff;}
.bal-btn.secondary{background:rgba(255,255,255,0.08);color:rgba(255,255,255,0.5);}

/* ROWS */
.txn-row{display:flex;align-items:center;gap:10px;padding:11px 16px;border-bottom:1px solid var(--g2);cursor:pointer;}
.txn-row:last-child{border-bottom:none;}
.txn-row:hover{background:var(--g1);}
.txn-icon{width:32px;height:32px;border-radius:9px;background:var(--burn-pale);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--burn);font-size:14px;}
.txn-amount{font-size:13px;font-weight:700;font-family:var(--mono);color:var(--burn);}
.merchant-row{display:flex;align-items:center;gap:10px;padding:11px 16px;border-bottom:1px solid var(--g2);cursor:pointer;}
.merchant-row:last-child{border-bottom:none;}
.merchant-row:hover{background:var(--g1);}
.m-avatar{width:34px;height:34px;border-radius:10px;background:var(--burn);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff;flex-shrink:0;}

/* BADGES */
.badge{font-size:10px;padding:2px 8px;border-radius:20px;font-weight:500;}
.b-normal{background:var(--g1);color:var(--g5);border:1px solid var(--g2);}
.b-founding{background:#FEF3C7;color:#92400E;border:1px solid #FDE68A;}
.b-ff{background:#EDE9FE;color:#5B21B6;border:1px solid #DDD6FE;}
.b-equipo{background:#DBEAFE;color:#1E40AF;border:1px solid #BFDBFE;}
.b-active{background:#D1FAE5;color:#065F46;border:1px solid #A7F3D0;}
.b-suspended{background:#FEE2E2;color:#991B1B;border:1px solid #FECACA;}
.b-burn{background:var(--burn-pale);color:var(--burn);border:1px solid rgba(194,65,12,0.2);}

/* ACTION BUTTONS */
.act-btn{font-size:11px;padding:5px 10px;border-radius:8px;border:none;cursor:pointer;font-family:var(--font);font-weight:600;display:inline-flex;align-items:center;gap:4px;margin:2px;}
.act-ff{background:#EDE9FE;color:#5B21B6;}
.act-founding{background:#FEF3C7;color:#92400E;}
.act-normal{background:var(--g1);color:var(--g5);border:1px solid var(--g2);}
.act-equipo{background:#DBEAFE;color:#1E40AF;}
.act-suspend{background:#FEE2E2;color:#991B1B;}
.act-activate{background:#D1FAE5;color:#065F46;}
.act-burn{background:var(--burn);color:#fff;}

/* FORMS */
.form-group{margin-bottom:12px;}
.form-label{font-size:12px;font-weight:600;color:var(--g5);display:block;margin-bottom:5px;}
.form-input{width:100%;padding:10px 12px;border:1px solid var(--g2);border-radius:var(--r);font-size:13px;font-family:var(--font);outline:none;color:var(--dark);background:var(--white);}
.form-input:focus{border-color:var(--burn);}
select.form-input{cursor:pointer;}
.search-wrap{position:relative;margin-bottom:12px;}
.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--g4);font-size:14px;}
.search-inp{width:100%;padding:9px 12px 9px 34px;border:1px solid var(--g2);border-radius:var(--r);font-size:13px;font-family:var(--font);outline:none;background:var(--white);}
.search-inp:focus{border-color:var(--burn);}
.filter-tabs{display:flex;gap:3px;background:var(--g2);border-radius:10px;padding:3px;margin-bottom:12px;flex-wrap:wrap;}
.filter-tab{padding:5px 12px;border-radius:7px;font-size:12px;font-weight:500;cursor:pointer;color:var(--g4);}
.filter-tab.active{background:var(--white);color:var(--dark);}

/* DELIVERY */
.delivery-wrap{display:flex;flex-direction:column;min-height:100vh;background:var(--dark);}
.delivery-header{padding:14px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,0.06);}
.delivery-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;}
.btn-salir{background:rgba(255,255,255,0.08);border:none;color:rgba(255,255,255,0.5);padding:7px 12px;border-radius:8px;font-size:12px;cursor:pointer;font-family:var(--font);}
.btn-cobrar-big{width:100%;max-width:280px;padding:17px;border-radius:16px;background:var(--burn);color:#fff;font-size:17px;font-weight:700;cursor:pointer;border:none;font-family:var(--font);}

/* MODALS */
.modal-overlay{position:fixed;inset:0;background:rgba(13,27,42,0.7);backdrop-filter:blur(4px);z-index:200;display:none;align-items:center;justify-content:center;padding:16px;}
.modal-overlay.open{display:flex;}
.modal{background:var(--white);border-radius:20px;padding:22px;width:100%;max-width:340px;}
.modal-title{font-size:16px;font-weight:700;margin-bottom:16px;}
.amount-display{background:var(--g1);border-radius:var(--r);padding:14px;text-align:center;margin-bottom:12px;border:2px solid var(--g2);}
.amount-value{font-size:36px;font-weight:700;color:var(--burn);font-family:var(--mono);}
.numpad{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:12px;}
.np-btn{background:var(--g1);border:1px solid var(--g2);border-radius:var(--r);padding:14px;font-size:18px;font-weight:500;cursor:pointer;font-family:var(--mono);}
.modal-actions{display:flex;gap:10px;}
.btn-cancel{flex:1;padding:12px;border-radius:var(--r);background:var(--g1);color:var(--g5);border:1px solid var(--g2);font-size:14px;font-weight:600;cursor:pointer;font-family:var(--font);}
.modal-nfc{background:var(--dark);border-radius:20px;padding:26px;width:100%;max-width:340px;text-align:center;}
.nfc-rings{position:relative;width:110px;height:110px;margin:0 auto 18px;}
.nfc-ring{position:absolute;border-radius:50%;border:1.5px solid rgba(194,65,12,0.3);animation:nfcp 2.4s ease infinite;}
.nfc-ring:nth-child(1){inset:0}.nfc-ring:nth-child(2){inset:15px;animation-delay:0.5s}.nfc-ring:nth-child(3){inset:30px;animation-delay:1s}
.nfc-center{position:absolute;inset:42px;background:var(--burn);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;}
@keyframes nfcp{0%,100%{opacity:0.2;transform:scale(1)}50%{opacity:0.8;transform:scale(1.04)}}
@keyframes spin{to{transform:rotate(360deg)}}
.btn-cancel-dark{width:100%;padding:12px;border-radius:var(--r);background:rgba(255,255,255,0.06);color:rgba(255,255,255,0.4);font-size:14px;cursor:pointer;border:none;font-family:var(--font);margin-top:8px;}
.modal-success{background:var(--white);border-radius:20px;padding:26px;width:100%;max-width:340px;text-align:center;}
.success-icon{width:60px;height:60px;border-radius:50%;background:var(--burn-pale);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-size:30px;color:var(--burn);}
.receipt{background:var(--g1);border-radius:var(--r);padding:11px 13px;margin-bottom:14px;}
.receipt-row{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid var(--g2);font-size:12px;}
.receipt-row:last-child{border-bottom:none;}
.receipt-row span:first-child{color:var(--g4);}
.receipt-row span:last-child{font-weight:500;font-family:var(--mono);}

/* EARNINGS */
.earn-big{background:var(--dark);border-radius:var(--rl);padding:18px;margin-bottom:12px;}
.earn-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.earn-item{background:rgba(255,255,255,0.06);border-radius:var(--r);padding:11px;}
.earn-label{font-size:10px;color:rgba(255,255,255,0.4);margin-bottom:3px;}
.earn-val{font-size:16px;font-weight:700;color:#fff;font-family:var(--mono);}
.earn-val.gold{color:#FDBA74;}

/* DETAIL */
.detail-back{display:flex;align-items:center;gap:6px;color:rgba(255,255,255,0.5);font-size:13px;cursor:pointer;margin-bottom:12px;}
.detail-back:hover{color:rgba(255,255,255,0.8);}

/* TOAST */
.toast{position:fixed;bottom:20px;right:20px;background:var(--dark);color:#fff;padding:11px 15px;border-radius:var(--r);font-size:13px;font-weight:500;transform:translateY(80px);opacity:0;transition:all 0.3s;z-index:999;border:1px solid rgba(194,65,12,0.2);max-width:280px;}
.toast.show{transform:translateY(0);opacity:1;}

/* RESPONSIVE */
@media(max-width:768px){
  .sidebar{position:fixed;left:0;top:0;bottom:0;transform:translateX(-100%);}
  .sidebar.open{transform:translateX(0);}
  .overlay.open{display:block;}
  .hamburger{display:flex;}
  .main{width:100%;}
  .grid4{grid-template-columns:1fr 1fr;}
  .grid2{grid-template-columns:1fr;}
  .grid3{grid-template-columns:1fr;}
  .earn-grid{grid-template-columns:1fr 1fr;}
  .content{padding:12px;}
  .topbar{padding:0 12px;}
  .toast{bottom:10px;right:10px;left:10px;max-width:none;}
}
