/* Admin panel — plain and functional, reuses the site's color tokens */

.admin-body{
  background: var(--paper-2);
  min-height:100vh;
}
.admin-wrap{
  max-width: 1100px;
  margin: 0 auto;
  padding: 30px 20px 70px;
}
.admin-topbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  margin-bottom: 20px;
}
.admin-topbar h1{
  font-family: var(--font-display);
  margin:0;
}
.admin-topbar nav{ display:flex; gap:14px; font-family: var(--font-mono); font-size:.8rem; }
.admin-topbar nav a{
  text-decoration:none;
  color: var(--forest);
  border-bottom: 2px solid transparent;
  padding-bottom:2px;
}
.admin-topbar nav a.active{ border-color: var(--ochre); font-weight:700; }

.admin-notice{
  background:#DCE8D2; border:1px solid #8FAE78; color:#33452F;
  padding:10px 14px; border-radius:4px; font-family: var(--font-mono); font-size:.85rem;
}
.admin-error{
  background:#F3D8D2; border:1px solid #C46B4D; color:#7A2E17;
  padding:10px 14px; border-radius:4px; font-family: var(--font-mono); font-size:.85rem;
}

.admin-card{
  background: var(--card);
  border:1px solid var(--thread);
  border-radius:6px;
  padding:22px;
  margin-bottom:26px;
}
.admin-card h2{ font-family: var(--font-display); margin-top:0; }

.admin-form label{
  display:flex;
  flex-direction:column;
  gap:5px;
  font-family: var(--font-mono);
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color: var(--forest-2);
  margin-bottom:14px;
}
.admin-form input{
  font-family: var(--font-body);
  font-size:.95rem;
  text-transform:none;
  letter-spacing:normal;
  padding:9px 10px;
  border:1px solid var(--thread);
  border-radius:3px;
  background:#fff;
}
.grid-2{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:0 20px;
}
@media (max-width:640px){ .grid-2{ grid-template-columns:1fr; } }

.admin-actions{ display:flex; gap:10px; margin-top:6px; }
.btn-primary, .admin-actions button, .btn-secondary{
  font-family: var(--font-mono);
  font-size:.8rem;
  text-transform:uppercase;
  letter-spacing:.05em;
  font-weight:700;
  padding:10px 16px;
  border-radius:4px;
  border:none;
  cursor:pointer;
  text-decoration:none;
  display:inline-block;
}
.btn-primary, .admin-actions button[type="submit"]{
  background: var(--forest); color: var(--paper);
  margin-bottom:20px;
}
.btn-secondary{
  background:transparent; color:var(--forest); border:1px solid var(--thread);
}

.admin-table{
  width:100%;
  border-collapse: collapse;
  background: var(--card);
  font-size:.88rem;
}
.admin-table th, .admin-table td{
  padding:10px 12px;
  border-bottom:1px solid var(--paper-2);
  text-align:left;
}
.admin-table th{
  font-family: var(--font-mono);
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color: var(--rust);
}
.thumb{ width:46px; height:46px; object-fit:cover; border-radius:3px; }
.tags-cell{ font-family: var(--font-mono); font-size:.72rem; color:var(--forest-2); }
.row-actions{ display:flex; gap:10px; align-items:center; white-space:nowrap; }
.row-actions a{ color: var(--forest); font-family: var(--font-mono); font-size:.78rem; }
.row-actions form{ display:inline; }
.link-danger{
  background:none; border:none; color: var(--rust);
  font-family: var(--font-mono); font-size:.78rem;
  text-decoration:underline; cursor:pointer; padding:0;
}

.hint{ font-family: var(--font-mono); font-size:.78rem; color: var(--thread); }
.hint a{ color: var(--rust); }

.admin-table td svg{ width:20px; height:20px; fill: var(--forest); display:block; }

/* login form */
.admin-login{
  max-width:340px;
  margin: 90px auto;
  background: var(--card);
  border:1px solid var(--thread);
  border-radius:6px;
  padding:28px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.admin-login h1{ font-family: var(--font-display); margin:0; }
.admin-login label{
  display:flex; flex-direction:column; gap:6px;
  font-family: var(--font-mono); font-size:.75rem; text-transform:uppercase;
}
.admin-login input{ padding:10px; border:1px solid var(--thread); border-radius:3px; }
.admin-login button{
  background: var(--forest); color:var(--paper); border:none;
  padding:11px; border-radius:4px; font-family: var(--font-mono);
  font-weight:700; text-transform:uppercase; cursor:pointer;
}

/* image manager grid */
.image-grid{
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(190px,1fr));
  gap:18px;
  margin-top:20px;
}
.image-card{
  background: var(--card);
  border:1px solid var(--thread);
  border-radius:6px;
  padding:12px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.image-card img{ width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:4px; }
.image-card-name{ font-size:.82rem; font-weight:600; display:flex; flex-direction:column; }
.image-card-name span{ font-size:.75rem; font-weight:400; color:var(--thread); }
.image-card input[type="file"]{ font-size:.75rem; }
.image-card button{
  background: var(--ochre); color: var(--forest-2); border:none;
  padding:8px; border-radius:3px; font-family: var(--font-mono);
  font-weight:700; text-transform:uppercase; font-size:.72rem; cursor:pointer;
}

.admin-form textarea{font-family:var(--font-body);font-size:.95rem;padding:9px 10px;border:1px solid var(--thread);border-radius:3px;background:#fff;resize:vertical}.image-grid-six{grid-template-columns:repeat(3,minmax(160px,1fr))}.slot-label{font-family:var(--font-mono);font-size:.68rem;font-weight:700;color:var(--rust)}.admin-subcard{background:var(--paper);border:1px solid var(--paper-2);padding:16px;margin:12px 0}.admin-subcard h3{font-family:var(--font-display);margin-top:0}.image-manager .admin-card h2 small{font-family:var(--font-mono);font-size:.65rem;color:var(--thread)}
@media(max-width:800px){.image-grid-six{grid-template-columns:repeat(2,minmax(140px,1fr))}}@media(max-width:500px){.image-grid-six{grid-template-columns:1fr}}
/* V2.3 admin navigation and dashboard improvements */
.admin-topbar{
  align-items:flex-start;
  padding-bottom:6px;
}
.admin-topbar > h1{ flex:0 0 auto; }
.admin-nav{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px 18px;
  flex:1 1 650px;
  align-items:flex-start;
}
.admin-nav-group{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  padding:7px 9px;
  background:var(--card);
  border:1px solid var(--thread);
  border-radius:6px;
}
.admin-nav-label{
  width:100%;
  font-family:var(--font-mono);
  font-size:.60rem;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--rust);
  margin-bottom:1px;
}
.admin-nav-group a{
  border:1px solid transparent !important;
  border-bottom:0 !important;
  padding:5px 7px !important;
  border-radius:3px;
  white-space:nowrap;
}
.admin-nav-group a:hover,
.admin-nav-group a.active{
  background:var(--paper-2);
  border-color:var(--thread) !important;
}
.admin-nav-end{
  background:transparent;
  border-color:transparent;
}
.dashboard-intro{margin-top:-8px;color:var(--forest-2);max-width:780px;}
.dashboard-sections{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:22px;
}
.dashboard-section{
  border:1px solid var(--paper-2);
  border-radius:6px;
  padding:16px;
  background:var(--paper);
}
.dashboard-section h3{
  margin:0 0 12px;
  font-family:var(--font-display);
  font-size:1.2rem;
}
.dashboard-links{display:grid;gap:9px;}
.dashboard-links a{
  display:block;
  padding:11px 12px;
  text-decoration:none;
  color:var(--forest);
  border:1px solid var(--thread);
  border-radius:4px;
  background:var(--card);
}
.dashboard-links a:hover{border-color:var(--ochre);transform:translateY(-1px);}
.dashboard-links strong{display:block;font-family:var(--font-body);font-size:.94rem;}
.dashboard-links span{display:block;margin-top:3px;font-family:var(--font-mono);font-size:.65rem;color:var(--thread);}
@media(max-width:900px){
  .admin-topbar{display:block;}
  .admin-topbar h1{margin-bottom:14px;}
  .admin-nav{justify-content:flex-start;}
  .dashboard-sections{grid-template-columns:1fr 1fr;}
}
@media(max-width:620px){
  .admin-wrap{padding:20px 12px 50px;}
  .admin-nav{display:grid;grid-template-columns:1fr;gap:8px;}
  .admin-nav-group{justify-content:flex-start;}
  .dashboard-sections{grid-template-columns:1fr;}
}
.support-ticket-list{display:grid;gap:14px}.support-ticket{border:1px solid var(--thread);border-radius:12px;padding:16px;background:var(--card)}.ticket-head{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-family:var(--font-mono);font-size:.72rem;color:var(--rust)}.ticket-head span{padding:3px 7px;border-radius:999px;background:var(--paper);border:1px solid var(--thread)}.ticket-head time{margin-left:auto}.support-ticket h3{margin:.55rem 0 .35rem}.ticket-meta{font-size:.8rem;color:#666}.inline-form{display:flex;gap:8px;align-items:center;margin-top:10px}.inline-form select{padding:7px 9px;border:1px solid var(--thread);border-radius:8px;background:var(--card)}.table-scroll{overflow:auto}

.admin-nav-hidden{display:none!important}.admin-topbar{align-items:flex-start}.admin-topbar .admin-nav{flex:1}.admin-nav{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.admin-nav-group{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.admin-nav-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;opacity:.6;margin-inline-end:2px}.admin-nav a{padding:6px 8px;border:1px solid transparent;border-radius:8px}.admin-nav a:hover{border-color:var(--thread);background:var(--paper)}
@media(max-width:900px){.admin-topbar{align-items:stretch}.admin-topbar .admin-nav{justify-content:flex-start}.admin-nav-group{width:100%}}

.dashboard-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0 0 24px}.stat-card{background:var(--card);border:1px solid var(--thread);padding:16px;border-radius:8px;display:flex;align-items:center;gap:12px;min-height:70px}.stat-number{font-size:1.8rem;font-weight:800;line-height:1;min-width:48px}.stat-label{font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--forest-2)}.dashboard-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-links a{display:block;border:1px solid var(--thread);padding:13px 14px;border-radius:6px;text-decoration:none;color:inherit}.dashboard-links strong{display:block;margin-bottom:4px}.dashboard-links span{font-size:.85rem;opacity:.78}.checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.checkline{display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important;text-transform:none!important;letter-spacing:normal!important}.checkline input{width:auto!important}.admin-nav{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-nav-group{display:flex;gap:7px;align-items:center;flex-wrap:wrap;padding:6px 8px;border:1px solid var(--thread);border-radius:6px}.admin-nav-label{font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;opacity:.65}.order-tracking{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:20px 0}.tracking-step{padding:10px;border:1px solid var(--thread);border-radius:6px;text-align:center;opacity:.55}.tracking-step.done{opacity:1;border-color:var(--forest)}.tracking-step span{display:block;font-weight:800;font-size:1.2rem}.tracking-step strong{font-size:.75rem}.admin-table input,.admin-table select{max-width:100%;box-sizing:border-box;padding:7px;border:1px solid var(--thread);border-radius:3px}@media(max-width:850px){.dashboard-stats{grid-template-columns:repeat(2,1fr)}.dashboard-links,.checkbox-grid{grid-template-columns:1fr}.order-tracking{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.dashboard-stats{grid-template-columns:1fr}.order-tracking{grid-template-columns:1fr}}
