@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
:root{--bg:#0b0d12;--sidebar:#0f1219;--surface:#141821;--surface2:#1a1f2b;--line:#252b38;--text:#f4f6fa;--muted:#929bad;--accent:#ff8b3d;--accent2:#ffb16f;--good:#51d6a3;--danger:#ff6b6b;--radius:20px}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;font:14px/1.55 Inter,system-ui,sans-serif;color:var(--text);background:radial-gradient(circle at 70% -10%,#1d2432 0,transparent 34%),var(--bg)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.app-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:24px 18px;border-right:1px solid var(--line);background:rgba(15,18,25,.94);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 26px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,var(--accent),var(--accent2));color:#17120e;font-weight:800;box-shadow:0 12px 28px rgba(255,139,61,.22)}.brand strong,.brand small{display:block}.brand strong{font-size:15px}.brand small{color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.sidebar nav{display:flex;flex-direction:column;gap:5px}.nav-link{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:12px;color:#b8c0cf;transition:.15s}.nav-link:hover{color:#fff;background:var(--surface2)}.nav-label{margin:22px 13px 7px;color:#626c7d;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.sidebar-user{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;margin-top:auto;padding:14px 8px 0;border-top:1px solid var(--line)}.sidebar-user strong,.sidebar-user small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user small{color:var(--muted);font-size:11px}.sidebar-user button{border:0;background:none;color:var(--muted);cursor:pointer}.avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#252c39;font-weight:700}.main{min-width:0}.topbar{display:flex;justify-content:space-between;padding:17px 34px;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}.status-dot{display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--good);box-shadow:0 0 12px var(--good)}.content-wrap{max-width:1450px;margin:auto;padding:46px 42px 70px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:32px}.kicker{display:block;margin-bottom:8px;color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:8px;font-size:clamp(30px,4vw,48px);line-height:1.05;letter-spacing:-.045em}h2{letter-spacing:-.025em}.page-head p,.panel p,.module-card p{color:var(--muted)}.date-card{min-width:150px;padding:15px 18px;border:1px solid var(--line);border-radius:15px;background:rgba(20,24,33,.72)}.date-card small,.date-card strong{display:block}.date-card small{color:var(--muted)}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}.module-card{position:relative;display:flex;min-height:220px;padding:24px;flex-direction:column;justify-content:space-between;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,rgba(25,30,41,.98),rgba(16,19,27,.95));overflow:hidden;transition:.18s}.module-card:hover{transform:translateY(-3px);border-color:#3a4355;box-shadow:0 22px 50px rgba(0,0,0,.26)}.module-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:#222937;font-size:20px}.module-status{color:var(--good);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.module-card h2{margin:7px 0 5px}.module-card p{margin:0}.module-arrow{position:absolute;right:22px;top:22px;color:#697386}.dashboard-row{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}.panel{padding:25px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(20,24,33,.86)}.panel-head{display:flex;justify-content:space-between;align-items:center}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.metric-grid div{padding:18px;border-radius:14px;background:var(--surface2)}.metric-grid strong,.metric-grid span{display:block}.metric-grid strong{font-size:28px}.metric-grid span{color:var(--muted);font-size:12px}.panel-note{margin:15px 0 0!important;font-size:12px}.check-list{list-style:none;padding:0;margin:18px 0 0}.check-list li{padding:9px 0;border-bottom:1px solid var(--line)}.check-list li:before{content:'✓';margin-right:10px;color:var(--good)}.guest-shell{min-height:100vh}.login-layout{display:grid;grid-template-columns:1.1fr .9fr;min-height:100vh}.login-intro{display:flex;padding:55px 7vw;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 20% 20%,rgba(255,139,61,.14),transparent 28%),linear-gradient(145deg,#111620,#090b10)}.brand-login{padding-left:0}.login-intro h1{max-width:760px;font-size:clamp(42px,6vw,80px)}.login-intro p{max-width:620px;color:var(--muted);font-size:17px}.login-intro>small{color:#596273}.login-panel{display:grid;place-items:center;padding:30px;background:#0d1016}.login-card{width:min(420px,100%);padding:34px;border:1px solid var(--line);border-radius:24px;background:rgba(20,24,33,.92);box-shadow:0 30px 70px rgba(0,0,0,.3)}.login-card h2{font-size:30px;margin-bottom:8px}.login-card>p{color:var(--muted);margin-bottom:28px}label{display:block;margin:15px 0 0;color:#cbd1dc;font-weight:600}input,select{width:100%;margin-top:7px;padding:12px 13px;border:1px solid #303747;border-radius:11px;outline:none;color:var(--text);background:#10141c}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(255,139,61,.12)}label small{display:block;margin-top:5px;color:var(--muted);font-weight:400}.button{display:inline-flex;align-items:center;justify-content:center;padding:11px 15px;border:1px solid transparent;border-radius:11px;font-weight:700;cursor:pointer}.button-primary{color:#1a120c;background:linear-gradient(135deg,var(--accent),var(--accent2))}.button-wide{width:100%;margin-top:24px}.button-ghost{border-color:var(--line);color:#c6cbd5;background:transparent}.button:disabled{opacity:.35;cursor:not-allowed}.alert{margin-bottom:20px;padding:13px 15px;border:1px solid #4b4533;border-radius:12px;background:#28251b}.alert-error{border-color:#573030;background:#2a181b;color:#ffc1c1}.form-stack{margin-top:20px}.users-layout{grid-template-columns:380px 1fr}.user-list{display:flex;flex-direction:column}.user-row{display:grid;grid-template-columns:auto minmax(150px,1fr) auto auto auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.user-data strong,.user-data span{display:block}.user-data span{color:var(--muted);font-size:12px}.role-pill,.state{padding:5px 9px;border-radius:999px;background:#252b38;font-size:11px}.state.active{color:var(--good)}.state.inactive{color:var(--danger)}.empty-state,.error-page{padding:50px;border:1px dashed var(--line);border-radius:var(--radius);text-align:center}.error-page{margin:10vh auto;max-width:700px}
@media(max-width:1050px){.module-grid{grid-template-columns:repeat(2,1fr)}.users-layout{grid-template-columns:1fr}.user-row{grid-template-columns:auto 1fr auto}.user-row .role-pill,.user-row .state{display:none}}@media(max-width:760px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:14px}.sidebar nav{display:grid;grid-template-columns:repeat(3,1fr)}.nav-label,.sidebar-user{display:none}.brand{padding-bottom:12px}.topbar{padding:12px 18px}.content-wrap{padding:30px 18px}.module-grid,.dashboard-row{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.login-layout{grid-template-columns:1fr}.login-intro{display:none}.login-panel{min-height:100vh}.user-row{grid-template-columns:auto 1fr}.user-row form{grid-column:2}.module-card{min-height:190px}}

.user-access-card{position:relative;padding:18px 0;border-bottom:1px solid var(--line)}.user-access-head{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}.access-form{display:grid;grid-template-columns:180px 1fr auto;gap:14px;align-items:end;margin:16px 0 8px;padding:14px;border-radius:14px;background:var(--surface2)}.access-form label{margin:0}.access-form fieldset{display:flex;flex-wrap:wrap;gap:9px;margin:0;padding:0;border:0}.access-form legend{margin-bottom:7px;color:var(--muted);font-size:11px}.module-check{display:inline-flex!important;align-items:center;gap:8px;margin:0!important;padding:8px 11px;border:1px solid var(--line);border-radius:10px;background:#171c26}.module-check input{width:auto;margin:0}.toggle-form{position:absolute;right:0;top:64px}.login-metrics{margin-bottom:16px}.stats-list>div{display:flex;justify-content:space-between;gap:24px;padding:13px 0;border-bottom:1px solid var(--line)}.stats-list strong,.stats-list small{display:block}.stats-list small{color:var(--muted)}.table-scroll{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.table th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.button-primary{background:linear-gradient(135deg,var(--accent),var(--accent2))}
@media(max-width:900px){.access-form{grid-template-columns:1fr}.toggle-form{position:static}.user-access-card{padding-bottom:24px}}

/* MZ Digital 0.1.1 */
.brand img{width:42px;height:42px;object-fit:contain;border-radius:12px;box-shadow:0 8px 25px rgba(255,139,61,.18)}
.brand-login img{width:56px;height:56px}.login-logo{display:flex;justify-content:center;margin-bottom:18px}.login-logo img{width:84px;height:84px;object-fit:contain}.security-note{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:18px;color:var(--muted);font-size:11px}.icon{display:block}.nav-link .icon{flex:0 0 auto}.module-card-top{display:flex;align-items:flex-start;justify-content:space-between}.module-icon{width:62px;height:62px;border-radius:18px;color:var(--accent);background:linear-gradient(145deg,rgba(255,139,61,.16),rgba(255,139,61,.05));border:1px solid rgba(255,139,61,.22)}.module-status{padding:6px 9px;border-radius:999px;background:rgba(72,209,133,.1)}.module-card:before{content:'';position:absolute;inset:auto -40px -70px auto;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(255,139,61,.1),transparent 68%)}.security-panel{background:linear-gradient(145deg,rgba(20,24,33,.94),rgba(11,18,18,.94))}.security-badge{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(72,209,133,.25);border-radius:999px;color:var(--good);font-size:11px;font-weight:700}.sidebar-user button{display:grid;place-items:center;width:34px;height:34px;border-radius:10px}.sidebar-user button:hover{color:#fff;background:var(--surface2)}

/* MZ Digital 0.2.2 – Benutzerdetails und Modulakzente */
.module-card{border-top:2px solid color-mix(in srgb,var(--module-accent,#ff8b3d) 78%,transparent)}
.module-card:hover{border-color:color-mix(in srgb,var(--module-accent,#ff8b3d) 62%,#3a4355);box-shadow:0 22px 55px color-mix(in srgb,var(--module-accent,#ff8b3d) 13%,transparent)}
.module-card:before{background:radial-gradient(circle,color-mix(in srgb,var(--module-accent,#ff8b3d) 18%,transparent),transparent 68%)}
.module-icon{color:var(--module-accent,#ff8b3d);background:linear-gradient(145deg,color-mix(in srgb,var(--module-accent,#ff8b3d) 17%,transparent),color-mix(in srgb,var(--module-accent,#ff8b3d) 5%,transparent));border-color:color-mix(in srgb,var(--module-accent,#ff8b3d) 28%,transparent)}
.module-nav-link .icon{color:var(--module-accent,#ff8b3d)}
.users-overview-layout{align-items:start}.compact-user-list{display:flex;flex-direction:column;margin-top:12px}.compact-user-row{display:grid;grid-template-columns:auto minmax(160px,1fr) auto auto auto;gap:14px;align-items:center;padding:14px 8px;border-bottom:1px solid var(--line);border-radius:12px;transition:.15s}.compact-user-row:hover{background:var(--surface2)}.compact-user-data strong,.compact-user-data small{display:block}.compact-user-data small{color:var(--muted)}.user-row-arrow{color:var(--muted)}
.user-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:16px}.user-detail-grid .danger-panel{grid-column:1/-1}.account-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.account-meta span{padding:13px;border-radius:12px;background:var(--surface2);color:var(--muted);font-size:11px}.account-meta strong{display:block;margin-top:3px;color:var(--text);font-size:13px}.workspace-access-list{display:flex;flex-direction:column;gap:12px}.workspace-access-card{padding:14px;border:1px solid var(--line);border-left:3px solid var(--module-accent,#ff8b3d);border-radius:14px;background:var(--surface2)}.workspace-toggle{display:grid!important;grid-template-columns:auto auto 1fr;gap:11px;align-items:center;margin:0!important}.workspace-toggle input,.permission-list input{width:auto;margin:0}.workspace-toggle strong,.workspace-toggle small,.permission-list strong,.permission-list small{display:block}.workspace-toggle small,.permission-list small{color:var(--muted);font-weight:400}.workspace-access-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;color:var(--module-accent,#ff8b3d);background:color-mix(in srgb,var(--module-accent,#ff8b3d) 12%,transparent)}.permission-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:13px 0 0 58px}.permission-list label{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:start;margin:0;padding:9px;border:1px solid var(--line);border-radius:10px;background:#141923}.button-danger{color:#fff;border-color:#73373b;background:#5b2429}.danger-panel{border-color:#4c292d;background:linear-gradient(145deg,rgba(48,24,28,.72),rgba(20,24,33,.9))}.danger-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
@media(max-width:1050px){.user-detail-grid{grid-template-columns:1fr}.user-detail-grid .danger-panel{grid-column:auto}.compact-user-row{grid-template-columns:auto 1fr auto}.compact-user-row .role-pill,.compact-user-row .state{display:none}}
@media(max-width:700px){.permission-list{grid-template-columns:1fr;margin-left:0}.account-meta{grid-template-columns:1fr}.compact-user-row{padding-inline:0}}

/* v0.2.3 – kompakter Schutzstatus und benutzerorientiertes Dashboard */
.topbar-status{display:flex;align-items:center;gap:14px}.topbar-status>span{display:inline-flex;align-items:center}.topbar-security{gap:6px;padding:4px 8px;border:1px solid rgba(81,214,163,.22);border-radius:999px;color:var(--good);font-size:10px;font-weight:700;letter-spacing:.02em;background:rgba(81,214,163,.06)}.topbar-security .icon{width:14px;height:14px}.admin-dashboard-overview{margin-top:24px}@media(max-width:760px){.topbar-status{gap:8px}.topbar-security{padding:3px 6px;font-size:9px}.topbar-security .icon{display:none}}
