/* K Johnson Store - Fase 2.1 Admin Premium Fix */
.admin-body{
  background:
    radial-gradient(circle at 15% 0%, rgba(32,199,217,.18) 0, transparent 28%),
    radial-gradient(circle at 82% 10%, rgba(124,58,237,.12) 0, transparent 26%),
    #f5fbff !important;
}
.admin-shell{
  max-width:1240px;
  margin:32px auto;
  display:grid;
  grid-template-columns:280px 1fr;
  gap:22px;
  padding:0 18px;
}
.admin-sidebar{
  background:linear-gradient(180deg,#102a43 0%,#0f1f33 100%);
  color:#fff;
  border-radius:30px;
  padding:18px;
  box-shadow:0 24px 55px rgba(15,23,42,.16);
  height:max-content;
  position:sticky;
  top:98px;
  border:1px solid rgba(255,255,255,.10);
}
.admin-sidebar h3{
  margin:8px 10px 18px;
  font-size:19px;
  letter-spacing:-.03em;
}
.admin-sidebar a{
  display:flex;
  align-items:center;
  gap:10px;
  padding:14px 15px;
  border-radius:17px;
  color:#d8e7f8;
  font-weight:850;
  margin-bottom:7px;
  border:1px solid transparent;
}
.admin-sidebar a.active,
.admin-sidebar a:hover{
  background:rgba(255,255,255,.12);
  color:#fff;
  border-color:rgba(255,255,255,.14);
}
.admin-content{min-width:0}
.admin-content .section-head{
  background:rgba(255,255,255,.78);
  border:1px solid rgba(14,116,144,.10);
  border-radius:28px;
  padding:22px;
  box-shadow:0 18px 44px rgba(15,23,42,.055);
}
.admin-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:18px 0;
}
.admin-card{
  background:linear-gradient(135deg,#fff,#f7fcff);
  border:1px solid rgba(14,116,144,.12);
  border-radius:26px;
  padding:22px;
  box-shadow:0 16px 36px rgba(15,23,42,.055);
  position:relative;
  overflow:hidden;
}
.admin-card:before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:4px;
  background:linear-gradient(90deg,#20c7d9,#1f75ff,#7c3aed);
}
.admin-card span{
  color:#60758f;
  font-weight:900;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.admin-card b{
  display:block;
  font-size:30px;
  margin-top:8px;
  color:#102a43;
  letter-spacing:-.04em;
}
.panel{
  background:#fff !important;
  border:1px solid rgba(14,116,144,.12) !important;
  border-radius:28px !important;
  padding:24px !important;
  box-shadow:0 18px 44px rgba(15,23,42,.06) !important;
}
.table{
  width:100%;
  border-collapse:separate !important;
  border-spacing:0 10px !important;
}
.table th{
  background:#effbff;
  color:#0b6680;
  font-size:12px;
  text-transform:uppercase;
  padding:13px 14px;
  font-weight:950;
}
.table td{
  background:#fff;
  padding:15px 14px;
  border-top:1px solid #e4f0f7;
  border-bottom:1px solid #e4f0f7;
  font-weight:700;
  color:#243b53;
}
.table td:first-child{border-left:1px solid #e4f0f7;border-radius:16px 0 0 16px}
.table td:last-child{border-right:1px solid #e4f0f7;border-radius:0 16px 16px 0}
.admin-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.btn.small{padding:9px 12px;border-radius:12px;font-size:13px}
.btn.red{background:linear-gradient(135deg,#fb7185,#ef4444);color:#fff}
.status-pill{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  font-weight:950;
  font-size:12px;
}
.status-pill.pending{background:#fff7dd;color:#a16207}
.status-pill.paid{background:#e8f1ff;color:#1d4ed8}
.status-pill.ok{background:#e8fff3;color:#0f8a4b}
.status-pill.bad{background:#fff0f0;color:#dc2626}
.editor-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.field label{
  display:block;
  font-size:13px;
  color:#60758f;
  font-weight:900;
  margin-bottom:8px;
}
.field input,.field select,.field textarea{
  width:100%;
  border:1px solid #dcecf5;
  border-radius:15px;
  padding:14px;
  font:inherit;
  font-weight:700;
  outline:none;
  background:#fbfdff;
}
.field textarea{min-height:94px;resize:vertical}
.notice{
  padding:14px 16px;
  border-radius:16px;
  margin:16px 0;
  font-weight:900;
}
.notice.ok{background:#e8fff3;color:#0f8a4b;border:1px solid #bff4d5}
.product-mini{display:flex;align-items:center;gap:10px}
.product-mini .product-logo{
  width:46px !important;
  height:46px !important;
  border-radius:14px !important;
  font-size:15px !important;
  margin:0 !important;
  flex:none;
}
@media(max-width:980px){
  .admin-shell{grid-template-columns:1fr;margin:18px auto}
  .admin-sidebar{position:static}
  .admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .editor-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .admin-grid{grid-template-columns:1fr}
  .admin-shell{padding:0 12px}
}