:root{
  --navy-950:#071a2c;--navy-900:#0b243b;--navy-850:#0e2d49;--navy-800:#123a5a;
  --blue-600:#176f9f;--blue-500:#2388b8;--cyan-400:#49bfd4;--teal-600:#18796e;
  --green-600:#19825f;--red-600:#b54747;--amber-700:#91620d;
  --ink:#10283d;--slate:#5f7283;--muted:#7d8e9d;--line:#dbe5ec;--line-soft:#e9eff3;
  --surface:#fff;--canvas:#f3f7fa;--shadow:0 12px 34px rgba(18,51,76,.07)
}
*{box-sizing:border-box}
html{min-width:320px}
body{margin:0;background:var(--canvas);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.ui-icon{width:19px;height:19px;display:block;flex:0 0 auto}

/* Login und Installation */
.auth-page{min-height:100vh;display:grid;place-items:center;padding:30px;background:radial-gradient(circle at 15% 15%,rgba(73,191,212,.12),transparent 28%),linear-gradient(135deg,#edf4f8,#fff)}
.auth-card{width:min(680px,100%);background:#fff;border:1px solid var(--line);border-radius:16px;padding:36px;box-shadow:0 24px 70px rgba(13,43,66,.12)}
.brand{display:flex;align-items:center;gap:12px;margin-bottom:30px}.brand>span{width:44px;height:44px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(145deg,var(--navy-900),var(--blue-600));color:#fff;font-weight:900;letter-spacing:-.04em}.brand strong,.brand small{display:block}.brand small{margin-top:3px;color:var(--muted);font-size:11px}
.eyebrow{color:var(--blue-600);font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
h1{margin:9px 0 12px;font-size:34px;line-height:1.1;letter-spacing:-.04em}p{color:var(--slate);line-height:1.55}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid.single{grid-template-columns:1fr}.form-grid .full{grid-column:1/-1}
label{display:grid;gap:7px;color:#506579;font-size:11px;font-weight:800}label small{font-weight:500;color:var(--muted);line-height:1.35}
input,select,textarea{width:100%;border:1px solid #cbd9e3;border-radius:8px;background:#fff;padding:11px 12px;color:var(--ink);outline:none;transition:border-color .15s,box-shadow .15s}
input:focus,select:focus,textarea:focus{border-color:var(--blue-500);box-shadow:0 0 0 3px rgba(35,136,184,.11)}textarea{min-height:78px;resize:vertical}
.button{border:1px solid transparent;border-radius:8px;min-height:40px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800;font-size:11px;cursor:pointer;background:#fff;white-space:nowrap;transition:transform .15s,box-shadow .15s,border-color .15s}.button:hover{transform:translateY(-1px)}.button.primary{background:linear-gradient(135deg,var(--navy-800),var(--blue-600));color:#fff;box-shadow:0 7px 18px rgba(23,111,159,.16)}.button.secondary{border-color:#cad8e2;color:var(--ink)}.button.danger{border-color:#e8c9c9;color:var(--red-600)}.button.wide{width:100%}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:20px 0}.checks span{padding:9px 11px;border:1px solid var(--line);border-radius:7px;font-size:11px}.checks .ok{color:var(--green-600);background:#f1f9f5}.checks .bad{color:var(--red-600);background:#fff4f4}
.alert{display:flex;align-items:center;min-height:44px;padding:12px 15px;border-radius:8px;margin:12px 0;font-size:12px;font-weight:700}.alert.error{background:#fff1f1;color:var(--red-600);border:1px solid #efcece}.alert.warning{background:#fff8e8;color:var(--amber-700);border:1px solid #ead9aa}.alert.success{background:#eff9f4;color:var(--green-600);border:1px solid #cce7dc}
.success-mark{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#e9f7f1;color:var(--green-600);font-size:25px}

/* Administrationsoberfläche */
.admin-body{background:var(--canvas)}
.admin-shell{min-height:100vh;display:grid;grid-template-columns:228px minmax(0,1fr)}
.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:20px 14px 16px;color:#fff;background:linear-gradient(180deg,var(--navy-950),var(--navy-900) 62%,#0b2942);box-shadow:8px 0 24px rgba(10,35,57,.07);z-index:4}
.sidebar-brand{display:flex;align-items:center;gap:11px;padding:0 8px 22px;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-brand>span{width:38px;height:38px;display:grid;place-items:center;border-radius:8px;background:linear-gradient(145deg,var(--blue-500),var(--cyan-400));font-size:13px;font-weight:900;box-shadow:0 8px 18px rgba(35,136,184,.2)}.sidebar-brand strong,.sidebar-brand small{display:block}.sidebar-brand strong{font-size:13px;letter-spacing:.025em}.sidebar-brand small{margin-top:3px;color:#92a8b9;font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.sidebar-label{margin:24px 10px 8px;color:#6f899d;font-size:8px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.sidebar-nav{display:grid;gap:5px}.sidebar-nav a{display:flex;align-items:center;gap:10px;min-height:43px;padding:0 11px;border:1px solid transparent;border-radius:8px;color:#afc1cf;font-size:11px;font-weight:800}.sidebar-nav a.active{color:#fff;background:linear-gradient(90deg,rgba(35,136,184,.27),rgba(35,136,184,.12));border-color:rgba(97,185,220,.22);box-shadow:inset 3px 0 var(--cyan-400)}.sidebar-nav b{margin-left:auto;min-width:23px;padding:3px 6px;border-radius:999px;text-align:center;background:rgba(255,255,255,.1);font-size:9px}
.sidebar-system{margin-top:auto;display:flex;align-items:center;gap:10px;padding:13px 10px;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-system>span{width:8px;height:8px;border-radius:50%;background:#5ed6a6;box-shadow:0 0 0 4px rgba(94,214,166,.09)}.sidebar-system strong,.sidebar-system small,.sidebar-account strong,.sidebar-account small{display:block}.sidebar-system strong{font-size:10px}.sidebar-system small{margin-top:3px;color:#7f9aae;font-size:8px}
.sidebar-account{display:flex;align-items:center;gap:9px;padding:15px 8px 10px}.sidebar-account>span{width:31px;height:31px;display:grid;place-items:center;border-radius:7px;background:#e9f2f8;color:var(--navy-800);font-size:9px;font-weight:900}.sidebar-account strong{font-size:10px}.sidebar-account small{margin-top:2px;color:#7f9aae;font-size:8px}
.sidebar-logout button{width:100%;display:flex;align-items:center;gap:9px;padding:9px 10px;border:0;background:transparent;color:#90a8b9;font-size:10px;font-weight:700;cursor:pointer}.sidebar-logout button:hover{color:#fff}.sidebar-logout .ui-icon{width:16px;height:16px}
.workspace{min-width:0}.topbar{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:rgba(255,255,255,.88);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.topbar>div:first-child{display:flex;align-items:center;gap:8px;font-size:10px}.topbar span{color:var(--muted)}.topbar strong{font-size:10px}.topbar-secure{display:flex;align-items:center;gap:7px;color:var(--slate);font-size:9px;font-weight:700}.topbar-secure i{width:7px;height:7px;border-radius:50%;background:#39ad82;box-shadow:0 0 0 3px rgba(57,173,130,.1)}
.content{width:min(1500px,calc(100% - 44px));margin:24px auto 54px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}.page-heading h1{margin:5px 0 5px;font-size:30px}.page-heading p{margin:0;font-size:11px}.page-heading>.button{min-width:126px}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.kpi,.panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 6px 22px rgba(35,67,90,.04)}.kpi{min-height:86px;padding:14px 15px;display:flex;align-items:center;gap:13px;border-top:2px solid #d9e9f2}.kpi-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:8px}.kpi-icon.blue{background:#edf5fb;color:var(--blue-600)}.kpi-icon.teal{background:#ebf7f6;color:var(--teal-600)}.kpi-icon.green{background:#edf8f3;color:var(--green-600)}.kpi-icon.red{background:#fff1f1;color:var(--red-600)}.kpi small{display:block;color:var(--muted);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.kpi strong{display:block;margin-top:4px;font-size:24px;line-height:1}
.panel{padding:0;overflow:hidden}.panel-head{min-height:59px;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:13px 16px;border-bottom:1px solid var(--line-soft)}.panel-head h2{margin:3px 0 0;font-size:15px;letter-spacing:-.02em}.panel-kicker{display:block;color:var(--blue-600);font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.entry-count,.license-hint{color:var(--muted);font-size:10px;font-weight:700}
.license-reveal{display:grid;grid-template-columns:40px minmax(185px,.75fr) minmax(280px,1fr) auto;align-items:center;gap:14px;padding:12px 14px;border:1px solid #badce8;border-left:3px solid var(--blue-500);background:linear-gradient(90deg,#f0f9fc,#f8fcfd);border-radius:9px;margin-bottom:14px;box-shadow:0 6px 18px rgba(35,136,184,.05)}.reveal-icon{width:37px;height:37px;display:grid;place-items:center;border-radius:8px;background:#fff;color:var(--blue-600);border:1px solid #d3e7ef}.reveal-copy span,.reveal-copy strong,.reveal-copy small{display:block}.reveal-copy span{color:var(--blue-600);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.reveal-copy strong{margin-top:3px;font-size:12px}.reveal-copy small{margin-top:2px;color:var(--muted);font-size:9px}.license-reveal code{min-width:0;padding:11px 12px;border:1px dashed #90bdd0;background:#fff;border-radius:7px;font-size:14px;font-weight:900;letter-spacing:.045em;word-break:break-all}.copy-button{border-color:#b9d8e4;color:var(--blue-600);background:#fff}
.license-editor{margin-bottom:14px}.editor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px 14px;padding:16px}.editor-grid .span-2{grid-column:span 2}.editor-actions{display:flex;justify-content:flex-end;align-items:flex-end;gap:8px}.editor-actions .button{min-width:135px}.license-editor textarea{min-height:64px}
.table-wrap{overflow:auto}.license-list table{width:100%;border-collapse:collapse;font-size:11px}th{text-align:left;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.1em;padding:10px 13px;background:#f8fafc;border-bottom:1px solid var(--line)}td{padding:12px 13px;border-bottom:1px solid var(--line-soft);vertical-align:middle}.license-list tbody tr:last-child td{border-bottom:0}.license-list tbody tr:hover{background:#fbfdfe}.customer strong,.customer small,td>small{display:block}.customer strong,.table-strong{font-size:11px}.customer small,td>small{margin-top:4px;color:var(--muted);font-size:9px}.license-code-hint{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.025em}.status{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:8px;font-weight:900}.status.active{background:#eaf7f1;color:var(--green-600)}.status.blocked,.status.expired{background:#fff0f0;color:var(--red-600)}.status.full{background:#eaf4fb;color:var(--blue-600)}
.actions-col{width:285px}.row-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:5px}.row-actions form{display:inline-flex}.icon-button,.action-button{height:29px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d5e0e7;border-radius:7px;background:#fff;color:#506579;font-size:8px;font-weight:800;cursor:pointer}.icon-button{width:29px}.icon-button .ui-icon{width:14px;height:14px}.action-button{padding:0 9px}.action-button.accent{border-color:#bcd8e5;background:#eef7fb;color:var(--blue-600)}.action-button.danger{border-color:#edd2d2;color:var(--red-600)}.icon-button:hover,.action-button:hover{border-color:#91b8ca;color:var(--blue-600)}
.empty-state{min-height:190px;display:grid;place-items:center;align-content:center;gap:8px;color:var(--muted)}.empty-state .ui-icon{width:26px;height:26px;color:#8fb2c3}.empty-state strong{color:var(--ink);font-size:12px}.empty-state span{font-size:10px}

@media(max-width:1120px){.admin-shell{grid-template-columns:196px 1fr}.editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.license-reveal{grid-template-columns:40px 1fr auto}.license-reveal code{grid-column:2/3}.copy-button{grid-column:3;grid-row:1/3}.actions-col{width:240px}}
@media(max-width:820px){.admin-shell{display:block}.sidebar{position:static;width:auto;height:auto;padding:12px 14px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px}.sidebar-brand{padding:0;border:0}.sidebar-label,.sidebar-system,.sidebar-account{display:none}.sidebar-nav{display:block}.sidebar-nav a{min-height:38px}.sidebar-logout button{width:auto}.content{width:calc(100% - 24px);margin-top:18px}.kpis{grid-template-columns:1fr 1fr}.page-heading{align-items:flex-start}.topbar{padding:0 14px}}
@media(max-width:620px){.auth-card{padding:24px}.form-grid,.editor-grid,.field-row{grid-template-columns:1fr}.form-grid .full,.editor-grid .span-2{grid-column:auto}.checks,.kpis{grid-template-columns:1fr}.page-heading{display:grid}.page-heading>.button{width:100%}.page-heading h1{font-size:27px}.license-reveal{grid-template-columns:38px 1fr}.license-reveal code,.copy-button{grid-column:1/-1;grid-row:auto}.editor-actions{justify-content:stretch}.editor-actions .button{flex:1;min-width:0}.sidebar-brand div,.sidebar-nav b,.topbar-secure{display:none}.actions-col{width:210px}}
