/* Aurentia admin — clean light console. */
:root{--bg:#f3f4f6;--card:#fff;--line:#e5e7eb;--ink:#1f2430;--muted:#6b7280;
  --orange:#e8842a;--orange2:#d9761c;--gold:#b3862f;--side:#20242e}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);
  font-family:"Jost",-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:14px}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

/* shell */
.admin-shell{display:flex;min-height:100vh}
.admin-side{width:232px;flex:none;background:var(--side);color:#c4cad6;
  display:flex;flex-direction:column;padding:1.3rem 1rem}
.admin-brand{display:flex;align-items:center;gap:.6rem;padding:.3rem .5rem 1.4rem;
  font-weight:600;letter-spacing:.12em;font-size:.95rem;color:#eef1f6}
.admin-brand small{display:block;font-weight:300;letter-spacing:.18em;
  font-size:.55rem;color:#8b93a3}
.admin-brand .mark{font-family:"Playfair Display",Georgia,serif;font-weight:900;
  font-size:1.4rem;color:var(--gold)}
.admin-nav{display:flex;flex-direction:column;gap:.2rem}
.admin-nav a{padding:.6rem .8rem;border-radius:8px;color:#c4cad6}
.admin-nav a:hover{background:#2b3040;color:#fff}
.admin-nav a.active{background:var(--orange);color:#fff}
.admin-side-foot{margin-top:auto;padding-top:1.2rem;border-top:1px solid #333a48;
  font-size:.82rem;display:flex;flex-direction:column;gap:.5rem}
.admin-side-foot .who{color:#8b93a3}
.admin-side-foot a{color:#c4cad6}.admin-side-foot a:hover{color:#fff}

.admin-main{flex:1;min-width:0;display:flex;flex-direction:column}
.admin-top{display:flex;align-items:center;justify-content:space-between;
  background:var(--card);border-bottom:1px solid var(--line);padding:1.1rem 1.8rem}
.admin-top h1{margin:0;font-size:1.4rem;font-weight:600}
.admin-body{padding:1.8rem}
.flash{margin:1rem 1.8rem 0;background:#ecfdf5;border:1px solid #a7f3d0;
  color:#065f46;padding:.7rem 1rem;border-radius:8px}

/* buttons / forms */
.btn{background:var(--orange);color:#fff;border:none;padding:.6rem 1.2rem;
  border-radius:8px;cursor:pointer;font-family:inherit;font-size:.9rem;display:inline-block}
.btn:hover{background:var(--orange2)}
.btn.ghost{background:#fff;border:1px solid var(--line);color:var(--ink)}
.btn.danger{background:#ef4444}.btn.danger:hover{background:#dc2626}
input,select,textarea{font-family:inherit;font-size:.92rem;padding:.55rem .7rem;
  border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid #e8842a55;border-color:var(--orange)}
label{font-size:.78rem;color:var(--muted);font-weight:500;margin-bottom:.3rem;display:block}

/* stat cards */
.stat-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:1rem}
.stat{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1.3rem}
.stat .num{font-size:2rem;font-weight:600;font-family:"Playfair Display",Georgia,serif}
.stat .lbl{color:var(--muted);font-size:.85rem;margin-top:.2rem}
.stat.small .num{font-size:1.5rem;color:var(--gold)}
h3.sec{margin:2rem 0 1rem;font-weight:600;font-size:1.05rem}

/* filter bar */
.filterbar{display:flex;gap:.6rem;margin-bottom:1.2rem;flex-wrap:wrap}
.filterbar select,.filterbar input{width:auto}
.filterbar input[type=text]{min-width:240px}
.count{color:var(--muted);margin-bottom:.8rem;font-size:.9rem}

/* table */
.tbl{width:100%;border-collapse:collapse;background:var(--card);
  border:1px solid var(--line);border-radius:12px;overflow:hidden}
.tbl th,.tbl td{text-align:left;padding:.7rem .9rem;border-bottom:1px solid var(--line);
  vertical-align:middle}
.tbl th{background:#fafafa;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;
  color:var(--muted);font-weight:600}
.tbl tr:last-child td{border-bottom:none}
.tbl td.thumb{width:46px}.tbl td.thumb img{width:34px;height:44px;object-fit:contain}
.tbl a{color:var(--ink);font-weight:500}.tbl a:hover{color:var(--orange)}
.tag{background:#fde68a;color:#92400e;font-size:.6rem;padding:.1rem .4rem;border-radius:4px;
  letter-spacing:.05em;vertical-align:middle}
.row-actions{display:flex;gap:.6rem;align-items:center;white-space:nowrap}
.row-actions a{color:var(--muted)}.row-actions a:hover{color:var(--orange)}
.row-actions form{margin:0}
.row-actions button{background:none;border:none;color:#ef4444;cursor:pointer;
  font-family:inherit;font-size:.85rem;padding:0;width:auto}

/* form layout */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem 1.4rem;max-width:820px}
.form-grid .full{grid-column:1/-1}
.field{display:flex;flex-direction:column}
.form-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1.6rem}
.form-actions{display:flex;gap:.8rem;margin-top:1.5rem;align-items:center}
.cur-img{display:flex;align-items:center;gap:.8rem;margin-bottom:.5rem}
.cur-img img{width:44px;height:56px;object-fit:contain;border:1px solid var(--line);border-radius:6px}
.checkline{display:flex;align-items:center;gap:.5rem}
.checkline input{width:auto}

/* pager */
.pager{display:flex;gap:.35rem;margin-top:1.3rem}
.pager a,.pager span{padding:.4rem .7rem;border:1px solid var(--line);border-radius:7px;
  background:#fff;color:var(--ink);font-size:.85rem}
.pager .cur{background:var(--orange);border-color:var(--orange);color:#fff}
.pager .disabled{opacity:.4;pointer-events:none}

/* login */
.admin-login{display:flex;align-items:center;justify-content:center;min-height:100vh;
  background:linear-gradient(135deg,#20242e,#2b3040)}
.login-card{background:#fff;border-radius:16px;padding:2.6rem 2.4rem;width:340px;
  box-shadow:0 20px 50px #0005}
.login-brand{font-weight:700;letter-spacing:.1em;font-size:1.3rem;display:flex;
  align-items:center;gap:.6rem;justify-content:center}
.login-brand .mark{font-family:"Playfair Display",Georgia,serif;font-weight:900;
  font-size:1.7rem;color:var(--gold)}
.login-sub{text-align:center;color:var(--muted);font-size:.82rem;margin:.3rem 0 1.6rem;
  letter-spacing:.1em;text-transform:uppercase}
.login-card label{margin-top:.9rem}
.login-card button{width:100%;margin-top:1.5rem;background:var(--orange);color:#fff;
  border:none;padding:.75rem;border-radius:8px;cursor:pointer;font-size:.95rem;font-family:inherit}
.login-card button:hover{background:var(--orange2)}
.login-error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;padding:.6rem .8rem;
  border-radius:8px;font-size:.85rem;margin-bottom:.5rem}

@media(max-width:760px){
  .admin-side{width:64px;padding:1rem .5rem}
  .admin-brand span:not(.mark),.admin-nav a span,.admin-side-foot .who{display:none}
  .form-grid{grid-template-columns:1fr}
}
