/* ===== Objekte: Login & Verwaltung ===== */
:root{
  --white:#ffffff;
  --cream-dark:#f2efe8;
  --border:#e3e1d5;
  --border-strong:#cfd5d5;
  --success-bg:#eef5f0;
  --error-bg:#fbeae6;
  --error-border:#c0563e;
  --warm-dark:#8a3a28;
  --status-ok:#3f7a56;
  --status-warn:#c9a24b;
  --status-bad:#a13f2e;
}

.login-wrap{max-width:560px; margin:0 auto;}
.login-card{background:var(--white); border:1px solid var(--border); padding:34px 30px;}
.login-card h2{font-size:30px; color:var(--petrol); font-weight:500; margin-bottom:14px;}
.login-card p{font-size:18px; color:var(--muted); font-weight:300; margin-bottom:18px;}
.login-error{background:var(--error-bg); border:1px solid var(--error-border); color:var(--warm-dark); padding:14px 16px; font-size:14px; margin-bottom:18px;}
.login-info{background:var(--cream-dark); border:1px solid var(--border); color:var(--text); padding:14px 16px; font-size:14px; margin-bottom:18px;}
.login-timeout-note{font-size:14px; color:var(--muted); margin:0 0 18px;}
.login-reset-note{font-size:14px; color:var(--muted); margin:18px 0 0; font-weight:300; line-height:1.5;}
.login-reset-note a{color:var(--petrol);}

.admin-session-bar{max-width:700px; margin:0 auto 24px; padding:0; background:none; border:none; display:flex; flex-direction:column; align-items:center; gap:12px; text-align:center;}
.admin-session-note{font-size:var(--fs-14); color:var(--muted); margin:0; font-weight:300; letter-spacing:normal; text-transform:none;}

.admin-reset-link-box{margin-top:24px; padding-top:18px; border-top:1px solid var(--border);}
.reset-link-success{font-size:14px; color:var(--status-ok); margin-top:10px;}
.reset-link-error{font-size:14px; color:var(--status-bad); margin-top:10px;}

.admin-wrap{max-width:1280px; margin:0 auto; display:grid; grid-template-columns:420px 1fr; gap:34px; align-items:start;}
.panel{background:var(--white); border:1px solid var(--border); padding:30px 26px;}
.panel h3{font-size:22px; color:var(--petrol); margin-bottom:14px; font-weight:500;}
.panel p{font-size:18px; color:var(--muted); font-weight:300; margin-bottom:18px;}
.data-wrap{background:var(--white); border:1px solid var(--border); overflow:auto;}
.data-wrap table{width:100%; border-collapse:collapse; min-width:900px;}
.data-wrap th,.data-wrap td{padding:14px 16px; border-bottom:1px solid var(--border); text-align:left; vertical-align:middle;}
.data-wrap th{font-size:var(--fs-12); text-transform:uppercase; letter-spacing:1.5px; color:var(--petrol); background:var(--cream-dark);}
.data-wrap td{font-size:var(--fs-14); color:var(--text);}
.data-wrap tr:hover td{background:rgba(48,96,144,0.03);}
.actions{display:flex; gap:10px; align-items:center;}
.btn-link{display:inline-block; padding:12px 16px; border:1px solid var(--petrol); color:var(--petrol); text-decoration:none; font-size:14px; text-transform:uppercase; letter-spacing:1px; font-weight:500; background:transparent; cursor:pointer;}
.btn-link:hover{background:var(--petrol); color:var(--cream);}
.btn-danger{display:inline-block; padding:12px 16px; border:1px solid var(--status-bad); color:var(--status-bad); text-decoration:none; font-size:14px; text-transform:uppercase; letter-spacing:1px; font-weight:500; background:transparent; cursor:pointer;}
.btn-danger:hover{background:var(--status-bad); color:var(--cream);}
.small-note{font-size:14px; color:var(--muted); font-weight:300; margin-top:10px;}
.section-head.left{text-align:left; margin:0 0 24px; max-width:none;}
.nav-actions{display:flex; align-items:center;}
.logout-form{display:inline; margin:0;}
.inline-form{margin:0;}
.full-width-btn{width:100%;}
.btn-link-block{display:block; width:100%; text-align:center;}
.btn-link-compact{padding:10px 14px;}
.mt-12{margin-top:12px;}
.mt-18{margin-top:18px;}
.mt-22{margin-top:22px;}
.block-label{display:block;}

@media(max-width:1100px){
  .admin-wrap{grid-template-columns:1fr;}
}

@media(max-width:700px){
  .data-wrap table{min-width:760px;}
}