/* app.css — Standalone-Shell (Login + Start). Ruhiges Dark-UI, eine Akzentfarbe Indigo (wie der Workspace). */
*{ box-sizing:border-box; }
html,body{ margin:0; height:100%; }
body{ background:#0a0b0f; color:#e8eaf0; font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; -webkit-font-smoothing:antialiased; }

/* ---- Login / Registrieren ---- */
.kw-login{ position:fixed; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px; padding:24px;
  background:radial-gradient(1200px 600px at 50% -10%, rgba(99,102,241,.14), transparent 60%), #0a0b0f; }
.kw-login-box{ width:min(380px,100%); background:#13161c; border:1px solid rgba(255,255,255,.08); border-radius:20px; padding:30px 28px; box-shadow:0 50px 120px -40px rgba(0,0,0,.8); text-align:center; }
.kw-logo{ font-size:42px; line-height:1; }
.kw-login-t{ font-size:23px; font-weight:800; letter-spacing:-.3px; color:#f1f3f7; margin-top:10px; }
.kw-login-s{ font-size:13.5px; color:#828a96; margin-top:5px; margin-bottom:22px; }
.kw-login-box input{ width:100%; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.1); color:#eaf0f7; border-radius:12px; padding:13px 15px; font:inherit; font-size:15px; margin-bottom:11px; }
.kw-login-box input:focus{ outline:none; border-color:rgba(99,102,241,.55); background:rgba(255,255,255,.06); }
.kw-login-box input::placeholder{ color:#6b7280; }
.kw-go{ width:100%; border:0; cursor:pointer; border-radius:12px; padding:13px; font:inherit; font-size:15px; font-weight:700; color:#fff; background:#6366f1; box-shadow:0 12px 28px -14px rgba(99,102,241,.7); transition:background .14s,transform .1s; margin-top:3px; }
.kw-go:hover{ background:#5b5ef0; transform:translateY(-1px); }
.kw-switch{ font-size:13px; color:#828a96; margin-top:15px; }
.kw-switch a{ color:#a5b4fc; text-decoration:none; font-weight:600; }
.kw-switch a:hover{ text-decoration:underline; }
.kw-fehler{ display:none; margin-top:14px; font-size:13px; color:#f3938f; background:rgba(239,95,91,.1); border:1px solid rgba(239,95,91,.3); border-radius:10px; padding:9px 12px; }
.kw-login-foot{ font-size:12px; color:#5b6370; }

/* ---- App nach Login ---- */
.kw-app{ min-height:100%; display:flex; flex-direction:column; }
.kw-top{ display:flex; align-items:center; justify-content:space-between; padding:14px 24px; border-bottom:1px solid rgba(255,255,255,.06); }
.kw-brand{ display:flex; align-items:center; gap:9px; font-size:15px; font-weight:700; color:#eef0f5; }
.kw-brand-d{ width:9px; height:9px; border-radius:50%; background:#6366f1; box-shadow:0 0 10px rgba(99,102,241,.7); }
.kw-top-r{ display:flex; align-items:center; gap:14px; }
.kw-user{ font-size:13px; color:#9aa1ad; }
.kw-logout{ border:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.03); color:#cdd2dd; border-radius:10px; padding:8px 14px; font:inherit; font-size:13px; cursor:pointer; transition:.14s; }
.kw-logout:hover{ background:rgba(255,255,255,.07); }
.kw-admin-btn{ border:1px solid rgba(99,102,241,.45); background:rgba(99,102,241,.14); color:#c2c6ff; border-radius:10px; padding:8px 14px; font:inherit; font-size:13px; font-weight:600; cursor:pointer; transition:.14s; }
.kw-admin-btn:hover{ background:rgba(99,102,241,.26); color:#fff; }
.kw-home{ flex:1; display:flex; align-items:center; justify-content:center; padding:30px; }
.kw-hero{ max-width:560px; text-align:center; }
.kw-hero-ic{ font-size:64px; filter:drop-shadow(0 14px 30px rgba(99,102,241,.4)); }
.kw-hero-t{ font-size:34px; font-weight:800; letter-spacing:-.5px; color:#f4f6fa; margin:14px 0 0; }
.kw-hero-s{ font-size:16px; line-height:1.65; color:#9aa1ad; margin:14px 0 26px; }
#ws-btn{ border:0; cursor:pointer; border-radius:14px; padding:15px 28px; font:inherit; font-size:16px; font-weight:700; color:#fff; background:#6366f1; box-shadow:0 16px 36px -16px rgba(99,102,241,.75); transition:background .14s,transform .1s; }
#ws-btn:hover{ background:#5b5ef0; transform:translateY(-1px); }
