.admin-body{background:var(--bg-alt);}

.admin-main{
  max-width:720px;margin:0 auto;
  padding:clamp(2rem,6vw,3.5rem) clamp(1.25rem,4vw,3rem) 5rem;
}

.admin-header{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:1.1rem clamp(1.25rem,4vw,3rem);
  border-bottom:1px solid var(--line);
  background:var(--surface);
}
.admin-header .nav-mark{display:flex;align-items:center;gap:0.6rem;color:var(--ink);}
.admin-header .nav-mark span{font-weight:800;color:var(--brand-green-deep);}

.admin-title{font-size:1.7rem;margin-bottom:0.35rem;}
.admin-sub{color:var(--ink-soft);font-size:0.88rem;margin:0 0 1.1rem;}

.admin-card{
  background:var(--surface);border:1px solid var(--line);border-radius:1rem;
  padding:1.5rem;margin-bottom:1.25rem;box-shadow:var(--shadow-sm);
}
.admin-card-title{font-size:1.2rem;margin-bottom:0.75rem;}

.admin-form{display:flex;flex-direction:column;gap:0.7rem;}
.admin-form-inline{flex-direction:row;flex-wrap:wrap;align-items:center;}
.admin-form-inline input{flex:1;min-width:220px;}
.admin-form input,.admin-form select{
  font-family:'Poppins',sans-serif;font-size:0.92rem;
  padding:0.65rem 0.85rem;border:1.5px solid var(--line);border-radius:0.6rem;
  background:var(--bg);color:var(--ink);
}
.admin-form input:focus,.admin-form select:focus{outline:none;border-color:var(--brand-green);}
.admin-form button{align-self:flex-start;}

.checkbox-label{display:flex;align-items:center;gap:0.5rem;font-size:0.9rem;color:var(--ink);cursor:pointer;}
.checkbox-label input{width:auto;padding:0;}
.price-toggle-row{margin-top:0.25rem;}

.admin-hint{font-size:0.8rem;color:var(--ink-soft);margin:-0.15rem 0 0;}

.product-form-actions{display:flex;gap:0.7rem;align-items:center;flex-wrap:wrap;}

.admin-message{font-size:0.85rem;color:var(--brand-green);min-height:1.2rem;}
.admin-message.error{color:var(--danger);}

.admin-panel-header{
  display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;
}

.admin-list-filters{display:flex;flex-wrap:wrap;gap:0.4rem;margin-bottom:1rem;}
.admin-list-filters .filter-btn{padding:0.4rem 0.85rem;font-size:0.8rem;}

.admin-list{display:flex;flex-direction:column;gap:0.6rem;}
.admin-list-empty{color:var(--ink-soft);font-size:0.9rem;}

.admin-list-item{
  display:flex;align-items:center;gap:0.9rem;
  padding:0.6rem;border:1.5px solid var(--line);border-radius:0.7rem;
  cursor:pointer;transition:border-color 0.15s ease;
}
.admin-list-item.inactive{opacity:0.55;}
.admin-list-item:hover{border-color:var(--brand-green-soft);}

.admin-list-thumb{
  width:52px;height:52px;border-radius:0.6rem;object-fit:cover;flex-shrink:0;
  background:var(--bg-alt);
  display:flex;align-items:center;justify-content:center;color:var(--brand-green-soft);
}
.admin-list-thumb svg{width:55%;height:55%;}

.admin-list-info{flex:1;min-width:0;}
.admin-list-name{font-weight:700;font-size:0.95rem;}
.admin-list-meta{color:var(--ink-soft);font-size:0.78rem;margin-top:0.1rem;}

.admin-list-delete{
  background:none;border:none;color:var(--danger);cursor:pointer;
  font-family:'Poppins',sans-serif;font-size:0.82rem;padding:0.4rem 0.6rem;
}
.admin-list-delete:hover{text-decoration:underline;}

.btn-primary{
  background:var(--brand-green-deep);color:#fff;border:none;border-radius:0.7rem;
  padding:0.7rem 1.3rem;font-weight:700;font-size:0.92rem;transition:background .15s ease;
}
.btn-primary:hover{background:var(--brand-green);}
.btn-outline{
  background:none;border:1.5px solid var(--line);border-radius:0.7rem;color:var(--ink);
  padding:0.6rem 1.1rem;font-weight:600;font-size:0.85rem;
}
.btn-outline:hover{border-color:var(--brand-green-soft);}

.link-btn{
  background:none;border:none;color:var(--brand-green);font-size:0.85rem;font-weight:600;
  text-decoration:underline;padding:0.3rem 0;align-self:flex-start;margin-top:-0.3rem;
}
.link-btn:hover{color:var(--brand-green-deep);}
.btn-sm{padding:0.5rem 1rem;font-size:0.78rem;}

.photo-thumbs{display:flex;flex-wrap:wrap;gap:0.5rem;margin-bottom:0.5rem;}
.photo-thumb{
  position:relative;width:64px;height:64px;border-radius:0.6rem;overflow:hidden;
  border:1px solid var(--line);flex:none;
}
.photo-thumb img{width:100%;height:100%;object-fit:cover;}
.photo-thumb-remove{
  position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;
  background:rgba(0,0,0,0.65);color:#fff;border:none;cursor:pointer;
  font-size:11px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0;
}
.photo-thumb-remove:hover{background:var(--danger);}

.photo-add-btn{
  display:inline-flex;align-items:center;gap:0.4rem;
  border:1.5px dashed var(--line);border-radius:0.6rem;
  padding:0.6rem 0.9rem;font-size:0.85rem;color:var(--ink-soft);
  cursor:pointer;transition:border-color 0.15s ease,color 0.15s ease;
}
.photo-add-btn:hover{border-color:var(--brand-green-soft);color:var(--ink);}
