*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#f6f4ee;color:#1d2433;line-height:1.45}
a{color:#1b2a6b}.wrap{max-width:980px;margin:0 auto;padding:16px}
.top{background:#1b2a6b;color:#fff;display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;padding:10px 16px}
.top a{color:#fff;text-decoration:none;font-size:14px}.brand{font-weight:800;font-size:18px;margin-right:auto}
.top nav{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}.top form{display:inline}
.linkbtn{background:none;border:0;color:#fff;font:inherit;font-size:14px;cursor:pointer;padding:0}
.card{background:#fff;border-radius:14px;padding:18px;box-shadow:0 1px 6px #0001;margin-bottom:16px}
h1{font-size:22px;margin:4px 0 14px}h2{font-size:17px;margin:0 0 10px}
label{display:block;font-size:13px;font-weight:600;margin:10px 0 4px}
input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],input[type=color],select,textarea{width:100%;padding:10px;border:1px solid #cfd3de;border-radius:8px;font:inherit;background:#fff}
input[type=color]{height:42px;padding:3px}textarea{min-height:80px}
.btn{display:inline-block;background:#1b2a6b;color:#fff;border:0;border-radius:8px;padding:10px 16px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none}
.btn.sec{background:#e8eaf3;color:#1b2a6b}.btn.red{background:#b3261e}.btn.sm{padding:6px 10px;font-size:13px}
.flash{padding:12px 14px;border-radius:10px;margin-bottom:14px}.flash.ok{background:#e3f6e8;color:#14532d}.flash.err{background:#fde7e7;color:#7f1d1d}
.imp{background:#ffd23f;padding:8px 16px;font-size:14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.imp form{display:inline}
.grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat{font-size:28px;font-weight:800}.muted{color:#6b7280;font-size:13px}
.tbl{width:100%;border-collapse:collapse;font-size:14px}.tbl th,.tbl td{padding:8px 6px;border-bottom:1px solid #eee;text-align:left;vertical-align:middle}
.tblwrap{overflow-x:auto}.thumb{width:44px;height:44px;object-fit:cover;border-radius:8px;background:#eee}
.badge{padding:2px 8px;border-radius:99px;font-size:12px;background:#eee}.badge.active{background:#e3f6e8}.badge.pending{background:#fff3cd}.badge.blocked{background:#fde7e7}
.row2{display:grid;gap:12px;grid-template-columns:1fr 1fr}@media(max-width:600px){.row2{grid-template-columns:1fr}}
.actions{display:flex;gap:6px;flex-wrap:wrap}.actions form{display:inline}
.auth{max-width:400px;margin:30px auto}.hero{text-align:center;padding:40px 10px}.hero h1{font-size:30px}

/* ===== Responsivo (celular, tablet, PC) ===== */
html{-webkit-text-size-adjust:100%}img{max-width:100%}
.top{position:sticky;top:0;z-index:30;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
.burger{display:none;background:none;border:0;color:#fff;font-size:26px;line-height:1;padding:4px 8px;cursor:pointer}
input,select,textarea{font-size:16px!important}
.btn,.linkbtn{min-height:40px}.btn.sm{min-height:34px}
.wrap{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-bottom:max(16px,env(safe-area-inset-bottom))}
@media(max-width:760px){
 .burger{display:block;margin-left:auto}.brand{margin-right:0}
 .top nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding-top:6px}
 body.nav-open .top nav{display:flex}
 .top nav a,.top nav .linkbtn{display:block;padding:12px 4px;border-top:1px solid #ffffff26;font-size:16px;text-align:left;width:100%}
 .wrap{padding-top:12px}.card{padding:14px;border-radius:12px}h1{font-size:20px}
 .hero h1{font-size:24px}.auth{margin:12px auto}
 .actions{width:100%}.actions .btn,.actions input,.actions select{flex:1 1 auto}
 input[type=search],select{max-width:none!important}
 .rt,.rt tbody{display:block;width:100%}.rt .hd{display:none}
 .rt tr{display:block;border:1px solid #ececec;border-radius:12px;margin-bottom:10px;padding:6px 8px;background:#fff}
 .rt td{display:flex;justify-content:space-between;align-items:center;gap:12px;border:0;padding:6px 2px;text-align:right}
 .rt td::before{content:attr(data-label);font-weight:600;color:#6b7280;font-size:12px;text-align:left;flex:none}
 .rt td[data-label=""]::before{content:none}.rt td[data-label=""]{justify-content:flex-start}
 .rt td.actions,.rt td .actions{justify-content:flex-start;flex-wrap:wrap}
 .rt td .muted{display:inline-block;text-align:right}
}
