/* ============================================================
   webdings — Admin-Bereich
   ============================================================ */
@font-face{font-family:'Space Grotesk';src:url('../fonts/space-grotesk-v22-latin-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Space Grotesk';src:url('../fonts/space-grotesk-v22-latin-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Inter';src:url('../fonts/inter-v20-latin-regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Inter';src:url('../fonts/inter-v20-latin-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url('../fonts/jetbrains-mono-v24-latin-regular.woff2') format('woff2');font-weight:400;font-display:swap}

:root{
  --green-700:#5E7A14;--green-600:#769619;--green-500:#90B430;--green-400:#A6CA2E;
  --green-100:#EDF4DA;--ink:#161A12;--slate:#5B6470;--line:#E7EAE0;--off:#F7F9F3;
  --grad:linear-gradient(120deg,#90B430,#A6CA2E);
  --fh:'Inter',system-ui,sans-serif;--fb:'Inter',system-ui,sans-serif;--fm:'Inter',system-ui,sans-serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body.admin{font-family:var(--fb);background:var(--off);color:var(--ink);line-height:1.6}
a{color:inherit;text-decoration:none}
h1{font-family:var(--fh);font-weight:600;letter-spacing:-.02em}
img{display:block;max-width:100%}
button{font:inherit;cursor:pointer;border:none;background:none}
small{color:var(--slate);font-weight:400}

/* Topbar */
.adm-top{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.adm-top-in{max-width:1100px;margin:auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.adm-brand{display:flex;align-items:center;gap:10px}
.adm-brand img{height:30px}
.adm-brand span{font-family:var(--fm);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--green-700);border:1px solid var(--green-500);padding:2px 8px;border-radius:100px}
.adm-nav{display:flex;align-items:center;gap:20px;font-size:.92rem}
.adm-nav a{color:var(--slate)}
.adm-nav a:hover{color:var(--ink)}
.adm-logout{color:#9b2c2c!important}
.adm-main{max-width:1100px;margin:auto;padding:36px 24px 80px}

/* Buttons */
.adm-btn{display:inline-flex;align-items:center;gap:8px;background:var(--grad);color:#14210a;font-family:var(--fh);font-weight:600;padding:11px 20px;border-radius:10px;transition:transform .2s,box-shadow .2s;font-size:.92rem}
.adm-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px -12px rgba(144,180,48,.8)}
.adm-btn-sm{padding:7px 14px;font-size:.85rem}
.adm-btn-block{width:100%;justify-content:center;margin-top:8px}
.adm-btn-ghost{background:none;border:1.5px solid var(--line);color:var(--ink)}
.adm-btn-ghost:hover{border-color:var(--green-500);box-shadow:none}

/* Head */
.adm-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;flex-wrap:wrap}
.adm-head h1{font-size:1.8rem}
.adm-muted{color:var(--slate);font-size:.92rem}
.adm-crumbs{font-family:var(--fm);font-size:.78rem;color:var(--slate);margin-bottom:6px}
.adm-crumbs a:hover{color:var(--green-700)}

/* Alerts */
.adm-alert{padding:14px 18px;border-radius:10px;margin-bottom:22px;font-size:.92rem}
.adm-alert-ok{background:var(--green-100);color:var(--green-700)}
.adm-alert-err{background:#fdeaea;color:#9b2c2c}
.adm-alert ul{padding-left:18px}

/* Table */
.adm-table{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.adm-tr{display:grid;grid-template-columns:1fr 160px 150px 230px;gap:16px;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line)}
.adm-tr:last-child{border-bottom:none}
.adm-th{background:var(--off);font-family:var(--fm);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--slate)}
.adm-title a{font-family:var(--fh);font-weight:600;font-size:1.02rem}
.adm-title a:hover{color:var(--green-700)}
.adm-title small{display:block;font-family:var(--fm);font-size:.74rem;color:var(--slate)}
.adm-tag{font-family:var(--fm);font-size:.72rem;background:var(--green-100);color:var(--green-700);padding:3px 10px;border-radius:100px}
.adm-date{font-family:var(--fm);font-size:.82rem;color:var(--slate)}
.adm-actions{display:flex;align-items:center;gap:14px;font-size:.86rem}
.adm-actions a:hover{color:var(--green-700)}
.adm-actions form{display:inline}
.adm-del{color:#9b2c2c;font-size:.86rem}
.adm-del:hover{text-decoration:underline}
.adm-empty{background:#fff;border:1px dashed var(--line);border-radius:14px;padding:40px;text-align:center;color:var(--slate)}
.adm-empty a{color:var(--green-700);text-decoration:underline}

/* Form */
.adm-form label{display:block;font-weight:500;font-size:.9rem;margin:18px 0 7px}
.adm-form input,.adm-form textarea,.adm-form select{width:100%;padding:11px 14px;border:1.5px solid var(--line);border-radius:10px;font:inherit;font-size:.95rem;background:#fff}
.adm-form input:focus,.adm-form textarea:focus,.adm-form select:focus{outline:none;border-color:var(--green-500)}
.adm-mono{font-family:var(--fm);font-size:.9rem;line-height:1.7}
.adm-grid{display:grid;grid-template-columns:1fr 300px;gap:28px;align-items:start}
.adm-side{background:#fff;border:1px solid var(--line);border-radius:14px;padding:6px 20px 22px}
.adm-imgprev{margin-top:10px;border-radius:8px;border:1px solid var(--line);aspect-ratio:16/10;object-fit:cover;width:100%}
.adm-form code{font-family:var(--fm);font-size:.82em;background:var(--off);padding:1px 5px;border-radius:4px}

/* Login */
.adm-login-body{display:grid;place-items:center;min-height:100vh}
.adm-login{background:#fff;border:1px solid var(--line);border-radius:18px;padding:40px;width:min(400px,92vw);box-shadow:0 24px 60px -30px rgba(22,26,18,.4)}
.adm-login-logo{height:38px;margin-bottom:24px}
.adm-login h1{font-size:1.5rem}
.adm-login p{margin-bottom:20px}
.adm-login label{display:block;font-weight:500;font-size:.9rem;margin:14px 0 6px}
.adm-login input{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;font:inherit;background:#fff}
.adm-login input:focus{outline:none;border-color:var(--green-500)}
.adm-login .adm-btn-block{margin-top:22px}

@media(max-width:760px){
  .adm-grid{grid-template-columns:1fr}
  .adm-tr{grid-template-columns:1fr;gap:8px}
  .adm-th{display:none}
  .adm-tr{padding:18px 16px}
  .adm-nav{gap:14px;font-size:.85rem}
  .adm-nav a[href="/"]{display:none}
}
