:root{
  --bg:#090f14;--panel:#111a22;--panel2:#16232d;--line:#24404e;--text:#e9fbff;--muted:#8fb1bc;
  --accent:#31e0c3;--accent2:#7c5cff;--warn:#ffb020;--danger:#ff4d6d;--ok:#7dff8a;
  --shadow:0 18px 60px rgba(0,0,0,.35);--radius:18px;
}
*{box-sizing:border-box} body{margin:0;background:radial-gradient(circle at top left,#173640 0,#090f14 35%,#05080b 100%);color:var(--text);font-family:Segoe UI,Roboto,Arial,sans-serif;min-height:100vh}
a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}
.topbar{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;background:rgba(7,12,16,.82);border-bottom:1px solid var(--line);backdrop-filter:blur(10px);position:sticky;top:0;z-index:10}.topbar nav{display:flex;gap:18px;align-items:center}.pill{display:inline-flex;margin-left:10px;padding:4px 10px;border-radius:999px;background:#273540;color:var(--muted);font-size:12px}.pill.ok{background:rgba(49,224,195,.15);color:var(--accent)}
.layout{display:grid;grid-template-columns:235px 1fr;min-height:calc(100vh - 64px)}.sidebar{padding:20px;border-right:1px solid var(--line);background:rgba(6,11,15,.48)}.tab{width:100%;display:block;background:transparent;color:var(--muted);border:1px solid transparent;border-radius:13px;text-align:left;padding:13px 14px;margin-bottom:8px;cursor:pointer;font-size:15px}.tab:hover,.tab.active{background:linear-gradient(135deg,rgba(49,224,195,.13),rgba(124,92,255,.10));border-color:rgba(49,224,195,.35);color:var(--text)}
.content{padding:22px;overflow:hidden}.panel{display:none}.panel.active{display:block}.panel-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.panel h2,.panel h3{margin:0 0 8px}.muted{color:var(--muted)}.hint{color:var(--muted);font-size:13px;line-height:1.45}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr)}.card{background:linear-gradient(180deg,rgba(22,35,45,.96),rgba(13,21,28,.96));border:1px solid rgba(70,120,140,.34);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}
.clockbox{background:var(--panel2);border:1px solid var(--line);border-radius:16px;padding:12px 16px;text-align:right;min-width:170px}.clockbox span{display:block;color:var(--muted);font-size:12px}.clockbox strong{display:block;font-size:28px;letter-spacing:1px;margin:3px 0 8px}.quick-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.quick-actions button,.inline-form button,.stack button,.clockbox button,button.primary{border:0;border-radius:12px;padding:10px 13px;background:#20313b;color:var(--text);cursor:pointer}.quick-actions button:hover,.inline-form button:hover,.stack button:hover,.clockbox button:hover{filter:brightness(1.18)}button.primary{background:linear-gradient(135deg,var(--accent),#21a6ff);color:#001014;font-weight:700}
input,textarea,select{width:100%;background:#0b1218;border:1px solid #264250;border-radius:12px;color:var(--text);padding:11px 12px;font:inherit}textarea{min-height:96px;resize:vertical}.stack{display:flex;flex-direction:column;gap:12px}.inline-form{display:grid;grid-template-columns:1fr auto auto;gap:10px;margin-top:14px}.check{display:flex;gap:8px;align-items:center;color:var(--muted)}.check input{width:auto}.error{background:rgba(255,77,109,.14);border:1px solid rgba(255,77,109,.5);padding:10px;border-radius:12px;margin:12px 0}
.sections{display:flex;flex-direction:column;gap:9px}.section-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;background:#0d161d;border:1px solid #223946;border-radius:15px;padding:12px}.section-item.done{opacity:.58}.section-title{font-weight:700}.section-desc{font-size:13px;color:var(--muted);margin-top:4px}.section-meta{font-size:12px;color:var(--muted);text-align:right}.section-item input{width:auto;transform:scale(1.3)}
.feed{display:flex;flex-direction:column;gap:10px;max-height:420px;overflow:auto;padding-right:4px}.feed.tall{max-height:640px}.feed-item{background:#0d161d;border-left:4px solid var(--accent);border-radius:12px;padding:11px 12px}.feed-item.urgent{border-left-color:var(--danger)}.feed-item.important{border-left-color:var(--warn)}.feed-item small{display:block;color:var(--muted);margin-bottom:4px}.list{display:flex;flex-direction:column;gap:8px}.list-item{background:#0d161d;border:1px solid #223946;border-radius:12px;padding:10px 12px}.guest-list,.camera-grid{display:grid;gap:12px}.guest-card{background:#0d161d;border:1px solid #264250;border-radius:15px;padding:14px}.guest-card h4{margin:0 0 8px}.guest-meta{color:var(--muted);font-size:13px;line-height:1.45}.linkbox{background:#091016;border:1px dashed #31586a;border-radius:12px;padding:10px;margin-top:8px;word-break:break-all;font-size:12px}.copyrow{display:flex;gap:8px;align-items:center}.copyrow input{font-size:12px}.copyrow button{white-space:nowrap}
.toast-host{position:fixed;right:20px;top:80px;z-index:50;display:flex;flex-direction:column;gap:10px}.toast{min-width:310px;max-width:460px;background:rgba(16,26,34,.98);border:1px solid rgba(49,224,195,.5);border-left:6px solid var(--accent);border-radius:16px;padding:14px;box-shadow:var(--shadow);animation:slideIn .18s ease}.toast.urgent{border-left-color:var(--danger)}.toast.important{border-left-color:var(--warn)}@keyframes slideIn{from{transform:translateX(30px);opacity:0}to{transform:translateX(0);opacity:1}}
.login-body{display:grid;place-items:center}.login-card{width:min(430px,92vw);background:linear-gradient(180deg,rgba(22,35,45,.98),rgba(10,18,24,.98));border:1px solid var(--line);border-radius:26px;padding:30px;box-shadow:var(--shadow)}.brand-mark{width:62px;height:62px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#031014;font-weight:900;margin-bottom:16px}.login-card h1{margin:0 0 8px;line-height:1.08}
@media(max-width:980px){.layout{grid-template-columns:1fr}.sidebar{display:flex;overflow:auto;border-right:0;border-bottom:1px solid var(--line)}.tab{min-width:160px}.grid.two{grid-template-columns:1fr}.panel-header{flex-direction:column;gap:12px}.inline-form{grid-template-columns:1fr}.topbar{height:auto;padding:14px;gap:10px;align-items:flex-start;flex-direction:column}.content{padding:14px}}

.row-actions{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.55rem;align-items:center}
.row-actions button,.mini{font-size:.78rem;padding:.35rem .55rem;border-radius:.45rem}
button.danger{border-color:#9a3545;background:rgba(154,53,69,.18);color:#ffd0d7}
.loginbox{margin-top:.6rem;padding:.6rem;border:1px dashed rgba(90,220,210,.35);border-radius:.7rem;background:rgba(80,220,210,.06);font-size:.9rem}
.loginbox code{user-select:all;color:#b9fff9}
.compact{margin:.2rem 0 .75rem 0;gap:.5rem;align-items:center;flex-wrap:wrap}
.inline-form select{min-width:130px}
.card.wide{grid-column:1 / -1}
.role-permissions{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}
.role-card{background:#0d161d;border:1px solid #223946;border-radius:15px;padding:14px}
.role-card h4{margin:0 0 10px}.perm-grid{display:grid;gap:6px;margin-bottom:12px}.perm-grid .check{font-size:13px;align-items:flex-start}

.active-row{border-color:rgba(49,224,195,.65);box-shadow:0 0 0 1px rgba(49,224,195,.18) inset}

.password-wrap{display:flex;align-items:center;gap:6px;width:100%;background:#0b1218;border:1px solid #264250;border-radius:12px;padding:0 6px 0 0}
.password-wrap input{border:0;background:transparent;outline:none;flex:1}.password-wrap:focus-within{border-color:rgba(49,224,195,.65)}
.eye-btn{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:7px 8px;border-radius:8px;white-space:nowrap}.eye-btn:hover{background:#16232d;color:var(--text);text-decoration:none}
.password-line{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}.password-line button{border:0;border-radius:12px;padding:10px 13px;background:#20313b;color:var(--text);cursor:pointer}
.file-list{margin-top:14px}.file-item{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.file-meta{font-size:12px;color:var(--muted);margin-top:3px}.file-actions{display:flex;gap:6px;align-items:center}.file-actions a,.file-actions button{font-size:12px;border-radius:8px;padding:7px 9px;background:#20313b;color:var(--text);border:0;cursor:pointer}.file-actions a:hover{text-decoration:none;filter:brightness(1.15)}
.secret-box{display:inline-flex;align-items:center;gap:6px;background:#091016;border:1px solid #31586a;border-radius:10px;padding:4px 7px;margin-top:4px}.secret-value{font-family:Consolas,monospace;letter-spacing:.5px;color:#b9fff9;user-select:all}
[data-host-only][style*="display: none"]{display:none!important}
@media(max-width:980px){.password-line{grid-template-columns:1fr}.file-item{grid-template-columns:1fr}.file-actions{flex-wrap:wrap}}

.onboarding-shell{max-width:1120px;margin:0 auto;padding:28px}.onboarding-doc{padding:28px}.doc-title{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:18px}.doc-title h1{margin:.2rem 0 .4rem}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-size:12px;margin:0}.small-mark{width:54px;height:54px;font-size:15px}.doc-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:18px 0}.doc-meta div{background:#0d161d;border:1px solid #223946;border-radius:14px;padding:12px}.doc-meta span{display:block;color:var(--muted);font-size:12px}.doc-meta strong{display:block;margin-top:3px}.doc-section{border-top:1px solid rgba(70,120,140,.34);padding-top:18px;margin-top:18px;line-height:1.6}.doc-section h2{color:var(--text);margin-bottom:8px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}.doc-section ul{margin-top:8px;color:var(--muted)}.onboarding-form label{display:block}.consent-box{background:rgba(49,224,195,.06);border:1px solid rgba(49,224,195,.24);border-radius:18px;padding:18px}.strong-check{font-weight:700;color:var(--text);background:#0d161d;border:1px solid #31586a;border-radius:14px;padding:12px}.end-actions{justify-content:flex-end}.button-link{display:inline-flex;align-items:center;border-radius:12px;padding:10px 13px;background:#20313b;color:var(--text)}.button-link:hover{text-decoration:none;filter:brightness(1.15)}
@media(max-width:760px){.two-cols{grid-template-columns:1fr}.doc-title{flex-direction:column}.onboarding-shell{padding:14px}.onboarding-doc{padding:18px}}
.okbox{border-color:rgba(125,255,138,.38);background:rgba(125,255,138,.07)}.warnbox{border-color:rgba(255,176,32,.45);background:rgba(255,176,32,.08)}

/* 0.9: globale Timer-/Dashboard-/Account-Erweiterungen */
.toast-host.top-right{right:20px;left:auto;top:80px;bottom:auto;align-items:flex-end}.toast-host.top-left{left:20px;right:auto;top:80px;bottom:auto;align-items:flex-start}.toast-host.bottom-right{right:20px;left:auto;bottom:20px;top:auto;align-items:flex-end}.toast-host.bottom-left{left:20px;right:auto;bottom:20px;top:auto;align-items:flex-start}.toast-host.top-center{left:50%;right:auto;top:80px;bottom:auto;transform:translateX(-50%);align-items:center}.toast-host.bottom-center{left:50%;right:auto;bottom:20px;top:auto;transform:translateX(-50%);align-items:center}
.big-clock{font-size:42px;font-weight:800;letter-spacing:1.5px;color:var(--accent);margin:10px 0}.compact-sections{max-height:420px;overflow:auto}.dashboard-camera .guest-card{font-size:13px}.checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;background:#0d161d;border:1px solid #223946;border-radius:14px;padding:12px;margin-top:6px}.app-footer{display:flex;gap:16px;justify-content:center;align-items:center;padding:18px;color:var(--muted);font-size:13px;border-top:1px solid rgba(70,120,140,.22);background:rgba(7,12,16,.62)}.clockbox{display:grid;gap:6px;grid-template-columns:1fr auto auto;align-items:center;text-align:left}.clockbox span{grid-column:1 / -1}.clockbox strong{grid-column:1 / -1}.clockbox button{padding:8px 11px}
@media(max-width:760px){.toast{min-width:min(320px,92vw)}.toast-host.top-center,.toast-host.bottom-center{width:calc(100vw - 24px)}.clockbox{width:100%}}
