.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(--bg);
}
.admin-header .nav-mark{display:flex;align-items:center;gap:0.6rem;text-decoration:none;color:var(--ink);}

.admin-title{font-size:1.9rem;margin-bottom:0.35rem;}
.admin-sub{color:var(--ink-soft);font-size:0.9rem;margin:0 0 1.25rem;}

.admin-card{
  background:var(--surface);border:1px solid var(--line);border-radius:2px;
  padding:1.75rem;margin-bottom:1.5rem;
}
.admin-card-title{font-size:1.35rem;margin-bottom:0.9rem;}

.admin-form{display:flex;flex-direction:column;gap:0.75rem;}
.admin-form input,.admin-form select{
  font-family:'Jost',sans-serif;font-size:0.92rem;
  padding:0.65rem 0.85rem;border:1px solid var(--line);border-radius:4px;
  background:var(--bg);color:var(--ink);
}
.admin-form input:focus,.admin-form select:focus{outline:none;border-color:var(--gold);}
.admin-form button{align-self:flex-start;}

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

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

.admin-message{font-size:0.85rem;color:var(--gold);min-height:1.2rem;}
.admin-message.error{color:#B0453F;}

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

.admin-list{display:flex;flex-direction:column;gap:0.7rem;}
.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:1px solid var(--line);border-radius:4px;
  cursor:pointer;transition:border-color 0.15s ease;
}
.admin-list-item:hover{border-color:var(--gold);}

.admin-list-thumb{
  width:52px;height:52px;border-radius:4px;object-fit:cover;flex-shrink:0;
  background:linear-gradient(135deg, var(--brand-wine), var(--brand-wine-deep));
  display:flex;align-items:center;justify-content:center;
}
.admin-list-thumb .icon-gem{width:55%;height:55%;fill:none;stroke:var(--brand-gold);stroke-width:1.6;}

.admin-list-info{flex:1;}
.admin-list-name{font-weight:600;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:#B0453F;cursor:pointer;
  font-family:'Jost',sans-serif;font-size:0.82rem;padding:0.4rem 0.6rem;
}
.admin-list-delete:hover{text-decoration:underline;}

.btn-sm{padding:0.5rem 1rem;font-size:0.75rem;}

.photo-thumbs{display:flex;flex-wrap:wrap;gap:0.5rem;margin-bottom:0.5rem;}
.photo-thumb{
  position:relative;width:64px;height:64px;border-radius:4px;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:#B0453F;}

.photo-add-btn{
  display:inline-flex;align-items:center;gap:0.4rem;
  border:1px dashed var(--line);border-radius:4px;
  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(--gold);color:var(--ink);}
