:root { color-scheme: light dark; }
*{box-sizing:border-box}
body.auth{margin:0; font-family: system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Arial,sans-serif; display:grid; min-height:100vh; background: Canvas; color: CanvasText;}
.topbar{display:flex; justify-content:space-between; align-items:center; padding:12px 16px; opacity:.9}
.card{width:min(520px, 92vw); margin:auto; background: Canvas; color: CanvasText; border: 1px solid color-mix(in oklch, CanvasText 12%, transparent); border-radius:12px; padding:24px; box-shadow: 0 6px 28px rgba(0,0,0,.15);}

.brand{
  position: fixed; top: 12px; left: 12px; display:flex; align-items:center; gap:.5rem;
}
.brand a{ display:inline-flex; align-items:center; gap:.5rem; text-decoration:none; color:var(--fg); background: rgba(255,255,255,.05); padding:.35rem .55rem; border-radius: 12px; }
.brand img{ height:60px; width:auto; border-radius:8px; }



/** .login-logo img {
  width: clamp(80px, 30vw, 350px);
  height: auto;
  aspect-ratio: 1 / 1;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.25);
  object-fit: cover;
} **/

.login-logo {
  width: clamp(80px, 30vw, 350px);
  aspect-ratio: 1/1;
  margin: 0 auto 1rem;
  border-radius: 12px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-bottom: 6rem;
}

/* Hellmodus */
@media (prefers-color-scheme: light) {
  .login-logo {
    background-image: url('../images/woc_light.png');
  }
}

/* Dunkelmodus */
@media (prefers-color-scheme: dark) {
  .login-logo {
    background-image: url('../images/woc_dark.png');
  }
}



.lang{
  position: fixed; top: 12px; right: 12px; display:flex; align-items:center; gap:.5rem;
}

.right{
  position: fixed; top: 12px; right: 12px; display:flex; align-items:center; gap:.5rem;
}

h1{font-size:1.25rem; margin-top:0}
label{display:block; margin:.8rem 0}
label span{display:block; font-weight:600; margin-bottom:.25rem}
input{width:100%; padding:.7rem .8rem; border-radius:10px; border:1px solid color-mix(in oklch, CanvasText 50%, transparent); background: Canvas; color: CanvasText}
button{margin-top:.8rem; padding:.7rem 1rem; border:none; border-radius:10px; font-weight:700; cursor:pointer; background: color-mix(in oklch, CanvasText 85%, Canvas 15%); color: Canvas}
.error{color: #b00020; font-weight:600}
.help{margin-top:.6rem}
table{border-collapse:collapse; width:100%}
th,td{border-bottom:1px solid color-mix(in oklch, CanvasText 12%, transparent); padding:.5rem .4rem; text-align:left; font-size:.95rem}
.badge{font-size:.8rem; padding:.1rem .4rem; border-radius:.5rem; border:1px solid currentColor}
.actions a, .actions button{margin-right:.25rem}
form.inline{display:inline}
