/* womestor. · Admin-Bereich · Styles im Corporate-Look (Waldgrün, Inter, kantig) */
@font-face{
  font-family:'Inter';
  src:url('../fonts/InterVariable.woff2') format('woff2');
  font-weight:100 900;font-style:normal;font-display:swap;
}
:root{
  --background:#f4f1eb; --paper:#fffdf8; --black:#111111; --dark:#333333;
  --muted:#77736c; --line:#d8d3c9; --accent:#2d5016; --accent-bright:#6f9c3c;
  --accent-dark:#1e380f; --sand:#efe9dc;
  --font:'Inter',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:var(--font);background:var(--background);color:var(--black);line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:var(--accent)}

/* Topbar */
.topbar{display:flex;justify-content:space-between;align-items:center;background:var(--black);color:#fff;padding:20px 24px}
.topbar .wm{font-weight:800;font-size:19px;letter-spacing:-.01em}
.topbar .sub{color:#b9b4aa;font-size:13px;margin-left:10px;letter-spacing:.02em}
.topbar .logout{color:#e6e2d8;font-size:13px;font-weight:600;text-decoration:none;border:1px solid #3a3a37;padding:7px 14px}
.topbar .logout:hover{background:#fff;color:var(--black)}

.wrap{max-width:960px;margin:0 auto;padding:40px 22px 72px}
h1{font-size:clamp(22px,3.4vw,28px);font-weight:800;letter-spacing:-.02em;margin:0 0 8px}
.lead{color:var(--muted);font-size:15px;max-width:760px;margin:0 0 30px}
code{background:var(--sand);padding:1px 6px;font-size:.88em;color:#5b5546}

/* Cards */
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.card{background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--accent);padding:22px 22px 20px;display:flex;flex-direction:column}
.card-meta{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.badge{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:3px 9px;border:1px solid var(--line)}
.badge.auto{background:#e3ecd7;color:var(--accent-dark)}
.badge.manual{background:var(--sand);color:#5b5546}
.step{font-size:12px;color:var(--muted);font-weight:600}
.card h2{font-size:17px;font-weight:800;letter-spacing:-.01em;margin:0 0 3px}
.card .to{font-size:12.5px;color:var(--accent);font-weight:600;margin:0 0 10px}
.card .desc{font-size:13.5px;color:var(--muted);line-height:1.55;margin:0 0 18px;flex:1}
.actions{display:flex;gap:10px}
.btn{display:inline-block;font-size:13.5px;font-weight:700;text-decoration:none;padding:10px 18px;text-align:center;letter-spacing:.01em}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{background:var(--accent-dark)}
.btn-ghost{background:transparent;color:var(--accent);border:1px solid var(--accent)}
.btn-ghost:hover{background:var(--accent);color:#fff}

/* Note */
.note{margin-top:34px;background:var(--paper);border-left:3px solid var(--accent);padding:18px 22px;font-size:13.5px;color:var(--dark)}
.note p{margin:0 0 10px;line-height:1.6}
.note p:last-child{margin-bottom:0}
.note strong{color:var(--black)}

/* Login */
.login-body{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px}
.login-card{background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--accent);padding:36px 34px;width:100%;max-width:380px}
.login-card .wm{font-size:24px;font-weight:800;letter-spacing:-.02em;color:var(--accent);margin:0}
.login-sub{color:var(--muted);font-size:13px;margin:2px 0 24px;text-transform:uppercase;letter-spacing:.1em}
.login-card label{display:block;font-size:13px;font-weight:600;margin:0 0 7px;color:var(--black)}
.login-card input{width:100%;padding:12px 14px;font-family:var(--font);font-size:15px;background:#fff;border:1px solid var(--line);color:var(--black)}
.login-card input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
.login-card button{margin-top:16px;width:100%;padding:13px;font-family:var(--font);font-size:15px;font-weight:700;background:var(--accent);color:#fff;border:0;cursor:pointer;letter-spacing:.01em}
.login-card button:hover{background:var(--accent-dark)}
.login-error{background:#fbeaea;border-left:3px solid #a12d2d;color:#7a2020;font-size:13.5px;padding:10px 14px;margin:0 0 18px}
.login-back{margin:22px 0 0;text-align:center}
.login-back a{color:var(--muted);font-size:12.5px;text-decoration:none}
.login-back a:hover{color:var(--accent)}

/* Topnav (mehrseitiger Admin) */
.topnav{display:flex;align-items:center;gap:6px}
.topnav a{color:#cfcac0;font-size:13px;font-weight:600;text-decoration:none;padding:7px 12px;border:1px solid transparent}
.topnav a:hover{color:#fff}
.topnav a.is-active{color:#fff;border-color:#3a3a37;background:#1c1c1a}
.topnav .logout{color:#e6e2d8;border:1px solid #3a3a37;margin-left:6px}
.topnav .logout:hover{background:#fff;color:var(--black)}

/* Flash */
.flash{padding:12px 16px;font-size:14px;margin:0 0 24px;border-left:3px solid var(--accent)}
.flash-ok{background:#e6efd9;color:var(--accent-dark)}
.flash-err{background:#fbeaea;border-left-color:#a12d2d;color:#7a2020}

/* Statusgruppen */
.group{margin:0 0 34px}
.group h2{font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--black);border-bottom:2px solid var(--line);padding-bottom:8px;margin:0 0 16px;display:flex;align-items:center;gap:10px}
.count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background:var(--accent);color:#fff;font-size:12px;font-weight:800;border-radius:0}
.empty{color:var(--muted);font-size:14px;font-style:italic;margin:0}

/* Eintrag */
.entry{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--accent);padding:16px 18px;margin:0 0 12px}
.entry-muted{border-left-color:var(--line);opacity:.75}
.entry-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.entry-head strong{margin-right:8px}
.entry-head a{font-weight:600;text-decoration:none}
.when{font-size:12px;color:var(--muted);white-space:nowrap}
.entry-body{margin:10px 0 4px;font-size:13.5px}
.entry-body p{margin:0 0 8px}
.muted{color:var(--muted)}

/* Pills */
.pill{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border:1px solid var(--line);background:var(--sand);color:#5b5546}
.pill-eingeladen,.pill-aktiv{background:#e3ecd7;color:var(--accent-dark);border-color:#c3d3ac}
.pill-vorgemerkt{background:#efe9dc;color:#5b5546}
.pill-gebucht{background:var(--accent);color:#fff;border-color:var(--accent)}
.pill-abgesagt,.pill-abgeschlossen{background:#f0eeea;color:var(--muted)}

/* Aktionen / Mini-Formulare */
.entry-actions{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:12px;align-items:flex-start}
.entry-actions details{border:1px solid var(--line);background:#fff;flex:1 1 240px;min-width:220px}
.entry-actions details[open]{border-color:var(--accent)}
summary.act{cursor:pointer;padding:9px 12px;font-size:13px;font-weight:700;color:var(--accent);list-style:none}
summary.act::-webkit-details-marker{display:none}
summary.act::before{content:"+ "}
details[open] summary.act::before{content:"– "}
summary.act-soft{color:var(--muted)}
.mini{display:flex;flex-direction:column;gap:8px;padding:12px}
.mini.inline{padding:0}
.mini input,.mini textarea{width:100%;padding:9px 11px;font-family:var(--font);font-size:13.5px;background:#fff;border:1px solid var(--line);color:var(--black)}
.mini input:focus,.mini textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
.mini textarea{resize:vertical}
.mini button{padding:10px 14px;font-family:var(--font);font-size:13.5px;font-weight:700;background:var(--accent);color:#fff;border:0;cursor:pointer;letter-spacing:.01em}
.mini button:hover{background:var(--accent-dark)}
.mini button.btn-soft{background:transparent;color:var(--muted);border:1px solid var(--line)}
.mini button.btn-soft:hover{background:var(--sand);color:#5b5546}
.mini.inline{flex-direction:row;flex:0 0 auto}
.entry-actions .mini.inline{border:0}

/* Details in Eintrag (Antworten) */
.entry-body details summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--accent)}

@media(max-width:640px){
  .cards{grid-template-columns:1fr}
  .topbar{flex-wrap:wrap;gap:10px}
  .topnav{flex-wrap:wrap}
  .entry-actions details{flex-basis:100%}
}
