:root{--bg:#050b0f;--bg2:#071019;--panel:#0b141b;--panel2:#0e1921;--line:#1e2d37;--line2:#2c3e49;--text:#eef3f5;--muted:#82939e;--gold:#d9aa3b;--gold2:#f0c45c;--green:#63d596;--red:#ed7b75;--blue:#6ca7d2;--sidebar:236px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.eyebrow{margin:0 0 5px;color:#8798a3;font-size:9px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.fiction-footer{position:fixed;left:0;right:0;bottom:7px;text-align:center;color:#43515a;font-size:8px;pointer-events:none;z-index:10}.seal{width:76px;height:76px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(145deg,#f0c45c,#b47d1c);color:#071019;font-weight:950;letter-spacing:.08em;box-shadow:0 14px 50px rgba(0,0,0,.35)}.seal.tiny{width:42px;height:42px;border-radius:12px;font-size:12px}.login-page{background:#050b0f}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(390px,520px) 1fr}.login-card{padding:70px 66px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(180deg,#091219,#050b0f);border-right:1px solid #17252e}.login-brand{display:flex;align-items:center;gap:18px;margin-bottom:70px}.login-brand>div:last-child{display:grid;gap:4px}.login-brand span,.login-brand small{color:#738590;font-size:9px;letter-spacing:.12em}.login-brand strong{font-size:16px}.login-title h1,.view-head h1{margin:4px 0 9px;font-size:30px;letter-spacing:-.03em}.login-title p:last-child,.view-head p:last-child{color:#7f919c;font-size:11px;line-height:1.6}.login-form{display:grid;gap:15px;margin-top:26px}.login-form label{display:grid;gap:7px;color:#899aa5;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.login-form>label>input,.setup-card input{height:45px;border:1px solid #293a45;border-radius:10px;background:#071016;color:#fff;padding:0 12px;outline:none}.field{height:46px;display:flex;align-items:center;border:1px solid #293a45;border-radius:10px;background:#071016;overflow:hidden}.field span{width:42px;text-align:center;color:#728590}.field input{flex:1;height:100%;border:0;background:transparent;color:#fff;outline:0}.btn{min-height:38px;border:1px solid #33444e;border-radius:9px;padding:0 14px;background:#101a21;color:#fff;font-size:10px;font-weight:800}.btn.primary{border-color:#9a7428;background:linear-gradient(180deg,#e5b747,#bd8827);color:#091018}.btn.wide{width:100%;min-height:45px}.login-visual{position:relative;overflow:hidden;background:radial-gradient(circle at 50% 45%,#153043 0,#081219 43%,#03070a 78%)}.visual-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,transparent,#000 25%,#000 75%,transparent)}.visual-content{position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:10px}.shield-outline{width:190px;height:220px;margin:auto;display:grid;place-items:center;font-size:54px;color:#c39735;border:2px solid #806420;clip-path:polygon(50% 0,100% 18%,91% 75%,50% 100%,9% 75%,0 18%)}.visual-content p{margin:10px 0 0;color:#82949f;font-size:11px;letter-spacing:.18em;text-transform:uppercase}.visual-content strong{color:#d6ab47;font-size:16px}.notice{margin:18px 0;padding:12px 14px;border:1px solid #2a414e;border-radius:9px;font-size:10px}.notice.error{border-color:#613c39;background:#1a0e0d;color:#ef948e}.notice.success{border-color:#2c5941;background:#0b1b13;color:#74d9a1}.setup-card{width:min(480px,calc(100% - 32px));margin:8vh auto;padding:34px;border:1px solid #23343f;border-radius:16px;background:#0a131a}.setup-card .seal{margin-bottom:24px}.setup-card h1{margin:4px 0 10px}.app-shell{min-height:100vh}.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar);padding:18px 14px;background:#071016;border-right:1px solid #1b2a34;z-index:30;display:flex;flex-direction:column}.side-brand{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:0 4px 18px}.side-brand strong{display:block;font-size:14px}.side-brand small{display:block;margin-top:2px;color:#6d808c;font-size:8px;text-transform:uppercase;letter-spacing:.12em}.side-close,.side-open{display:none;border:0;background:transparent;color:#fff;font-size:20px}.station-card{padding:13px;border:1px solid #23333e;border-radius:10px;background:#0b151c;display:grid;gap:4px;margin-bottom:18px}.station-card span{font-size:8px;color:#bd9437;letter-spacing:.15em}.station-card strong{font-size:11px}.station-card small{color:#71838e;font-size:8px}.sidebar nav{display:grid;gap:5px}.sidebar nav button{height:40px;display:flex;align-items:center;gap:11px;border:1px solid transparent;border-radius:9px;background:transparent;color:#8596a1;padding:0 12px;text-align:left;font-size:10px}.sidebar nav button span{width:20px;text-align:center;color:#647985}.sidebar nav button:hover,.sidebar nav button.active{border-color:#34434c;background:#111c23;color:#fff}.sidebar nav button.active span{color:#dfb247}.logout{margin-top:auto;padding:12px;color:#758792;font-size:10px;border-top:1px solid #1a2932}.main{margin-left:var(--sidebar);min-height:100vh}.topbar{height:70px;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid #1c2b34;background:rgba(5,11,15,.92);backdrop-filter:blur(12px)}.topbar>div:first-of-type{display:grid}.topbar strong{font-size:14px}.user-chip{display:flex;align-items:center;gap:10px}.avatar{width:35px;height:35px;display:grid;place-items:center;border:1px solid #4b4130;border-radius:9px;background:#1a160d;color:#e4b64d;font-size:10px;font-weight:900}.avatar.sm{width:31px;height:31px}.user-chip div:last-child{display:grid;gap:2px}.user-chip small{color:#71838e;font-size:8px}.content{padding:27px 28px 70px}.view{display:none}.view.active{display:block}.view-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px}.view-head h1{font-size:27px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.metric{padding:17px;border:1px solid #20313c;border-radius:12px;background:linear-gradient(160deg,#0d1820,#091117);display:grid;gap:4px}.metric span{color:#697d89;font-size:8px;text-transform:uppercase;letter-spacing:.1em}.metric strong{font-size:29px;color:#f1c458}.metric small{color:#92a2ac;font-size:9px}.dash-grid{display:grid;grid-template-columns:.85fr 1.35fr;gap:16px}.panel{border:1px solid #20313c;border-radius:12px;background:#0a1319;overflow:hidden}.panel-head,.section-head{display:flex;align-items:center;justify-content:space-between;padding:15px 17px;border-bottom:1px solid #1a2831}.panel-head h2,.section-head h3{margin:2px 0 0;font-size:13px}.status-list{padding:6px 16px 14px}.system-row{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #17242c;font-size:10px}.system-row span{color:#778994}.status{display:inline-flex;align-items:center;justify-content:center;min-height:25px;border:1px solid #31434d;border-radius:99px;padding:0 8px;color:#91a2ad;font-size:8px;font-weight:850;letter-spacing:.06em}.status.good{border-color:#28583f;background:#0a1b13;color:#6bd99b}.status.off{border-color:#513537;background:#190d0e;color:#d7807a}.activity-list{display:grid}.activity-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:13px 16px;border-bottom:1px solid #17242c}.activity-row>div{display:grid;gap:3px}.activity-row strong{font-size:10px}.activity-row span,.activity-row small,.activity-row time{color:#7e909b;font-size:8px}.activity-row time{white-space:nowrap}.filterbar{display:grid;grid-template-columns:minmax(260px,1fr) 180px 180px;gap:9px;margin-bottom:12px}.filterbar input,.filterbar select,.inline-form input,.inline-form select,.note-form textarea{border:1px solid #283a45;border-radius:9px;background:#071016;color:#fff;outline:0}.filterbar input,.filterbar select{height:40px;padding:0 11px;font-size:10px}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:860px}.data-table th{text-align:left;padding:12px 14px;background:#0d171e;color:#6f828e;font-size:8px;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid #1e2e38}.data-table td{padding:12px 14px;border-bottom:1px solid #17252e;color:#cdd6db;font-size:10px}.data-table tr:hover td{background:#0c161d}.person-cell{display:flex;align-items:center;gap:10px}.person-cell>div:last-child{display:grid;gap:3px}.person-cell strong{font-size:10px}.person-cell small{color:#6d808b;font-size:8px}.dept{display:inline-flex;min-height:25px;align-items:center;border:1px solid #34464f;border-radius:6px;padding:0 8px;font-size:8px;font-weight:900}.dept.police{color:#81b7dc;border-color:#30536a;background:#0d1920}.dept.sahp{color:#e6bd5d;border-color:#624c21;background:#1b160a}.points{display:inline-flex;min-width:38px;min-height:25px;align-items:center;justify-content:center;border:1px solid #34464f;border-radius:7px;font-weight:900}.points.positive{border-color:#735b25;color:#edc360;background:#1b160a}.points.negative{border-color:#613a3b;color:#ed8c86;background:#1c0e0f}.points.big{padding:0 10px}.mini{height:30px;border:1px solid #30414c;border-radius:7px;background:#101a21;color:#cbd5da;padding:0 9px;font-size:8px;font-weight:800}.modal{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.72);display:grid;place-items:center;padding:20px;backdrop-filter:blur(5px)}.modal-card{position:relative;width:min(1080px,100%);max-height:92vh;overflow:auto;border:1px solid #30414c;border-radius:15px;background:#081117;box-shadow:0 25px 80px rgba(0,0,0,.6)}.modal-close{position:absolute;right:14px;top:12px;width:32px;height:32px;border:1px solid #33454f;border-radius:8px;background:#0e181f;color:#fff;font-size:18px;z-index:3}.detail-hero{padding:28px 28px 20px;background:linear-gradient(135deg,#0d1c25,#081117);border-bottom:1px solid #20313b}.detail-hero h2{margin:4px 0 12px;font-size:25px}.hero-tags{display:flex;gap:7px;flex-wrap:wrap}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#1d2b34;border-bottom:1px solid #1d2b34}.detail-field{min-height:76px;padding:14px;background:#091319;display:grid;align-content:center;gap:5px}.detail-field span{color:#6e818c;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.detail-field strong{font-size:10px;overflow-wrap:anywhere}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#1b2a33}.detail-columns>section,.history-section{background:#081117}.inline-form{display:grid;grid-template-columns:130px 72px minmax(150px,1fr) auto;gap:7px;padding:12px 14px;border-bottom:1px solid #192932}.inline-form input,.inline-form select{height:36px;padding:0 9px;font-size:9px}.timeline,.notes-list,.history-list{display:grid}.timeline-row{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:start;padding:12px 15px;border-bottom:1px solid #17252d}.point-badge{width:39px;height:30px;display:grid;place-items:center;border:1px solid;border-radius:7px;font-size:9px;font-weight:900}.point-badge.plus{color:#edc45f;border-color:#614c20;background:#191407}.point-badge.minus{color:#ea8c87;border-color:#5c3738;background:#1a0c0d}.timeline-row>div:last-child{display:grid;gap:4px}.timeline-row strong{font-size:9px}.timeline-row small{color:#738691;font-size:8px}.note-form{display:grid;gap:8px;padding:12px 14px;border-bottom:1px solid #192932}.note-form textarea{padding:10px;resize:vertical;min-height:75px}.note-form .btn{justify-self:end}.note-card{display:grid;grid-template-columns:1fr auto;gap:12px;padding:13px 15px;border-bottom:1px solid #17252d}.note-card p{margin:0 0 5px;white-space:pre-wrap;font-size:9px;line-height:1.55}.note-card small{color:#72858f;font-size:8px}.icon-danger{width:27px;height:27px;border:1px solid #593536;border-radius:7px;background:#1a0c0d;color:#db7c77}.history-section{border-top:1px solid #1c2c35}.history-row{display:flex;align-items:center;gap:13px;padding:12px 16px;border-bottom:1px solid #17252d}.history-row>div{display:grid;gap:3px}.history-row strong{font-size:9px}.history-row small{color:#748792;font-size:8px}.empty-state{padding:28px;color:#6f818d;text-align:center;font-size:10px}.empty-state.small{padding:16px}.toast{position:fixed;right:20px;bottom:22px;z-index:120;max-width:360px;padding:12px 15px;border:1px solid #2b5841;border-radius:9px;background:#0b1b13;color:#7bddaa;font-size:10px;box-shadow:0 12px 40px rgba(0,0,0,.45)}.toast.error{border-color:#613a3a;background:#1b0d0e;color:#ee8d88}.modal-open{overflow:hidden}@media(max-width:1050px){.metrics{grid-template-columns:repeat(2,1fr)}.dash-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:repeat(2,1fr)}.detail-columns{grid-template-columns:1fr}.filterbar{grid-template-columns:1fr 160px 160px}}@media(max-width:760px){:root{--sidebar:250px}.login-shell{grid-template-columns:1fr}.login-visual{display:none}.login-card{padding:44px 26px;border:0}.login-brand{margin-bottom:44px}.sidebar{transform:translateX(-100%);transition:.2s}.sidebar-open .sidebar{transform:none}.side-close,.side-open{display:block}.main{margin-left:0}.topbar{padding:0 15px}.user-chip div:last-child{display:none}.content{padding:20px 14px 65px}.metrics{grid-template-columns:1fr 1fr}.filterbar{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr 1fr}.inline-form{grid-template-columns:1fr 80px}.inline-form input:nth-of-type(2){grid-column:1/-1}.inline-form .btn{grid-column:1/-1}.modal{padding:8px}.modal-card{max-height:96vh}.detail-hero{padding:22px 18px}.view-head h1{font-size:24px}}@media(max-width:430px){.metrics{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.login-brand{align-items:flex-start}.login-brand .seal{width:62px;height:62px}.activity-row{display:grid}.inline-form{grid-template-columns:1fr}.inline-form *{grid-column:auto!important}}
/* IAD v3 · Behördenlogs + Benutzerverwaltung */
.source-state{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 14px}.source-pill{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;padding:11px 13px;border:1px solid #2a3a44;border-radius:10px;background:#0a141b}.source-pill span{font-size:9px;font-weight:900;letter-spacing:.12em}.source-pill strong{font-size:9px}.source-pill small{justify-self:end;color:#728590;font-size:8px;text-align:right}.source-pill.ok{border-color:#24513a}.source-pill.ok strong{color:var(--green)}.source-pill.warn{border-color:#59462c}.source-pill.warn strong{color:var(--gold2)}.dashboard-source-state{display:grid;gap:7px;padding:10px 0 0}.dashboard-source-state .source-pill{grid-template-columns:auto auto 1fr;padding:8px 10px}.category-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 0 12px}.category-card{min-height:62px;padding:11px 12px;border:1px solid #263741;border-radius:10px;background:#0a151c;color:#fff;text-align:left;display:flex;flex-direction:column;justify-content:space-between}.category-card span{color:#8496a1;font-size:8px}.category-card strong{font-size:18px;color:#e7bb51}.category-card:hover{border-color:#8b6b2d;background:#111b21}.logs-filter{grid-template-columns:minmax(220px,1.5fr) 150px 210px minmax(180px,1fr)}.log-table td{vertical-align:top}.nowrap{white-space:nowrap}.table-sub{display:block;margin-top:4px;color:#71838e;font-size:8px}.log-category{display:inline-block;padding:5px 7px;border:1px solid #31424d;border-radius:7px;background:#0d1820;color:#c7d1d6;font-size:8px;white-space:nowrap}.log-details{max-width:360px;line-height:1.5;color:#a4b0b7}.external-mini{cursor:pointer}.external-mini:hover{background:#0f1b22}.clickable{cursor:pointer}.clickable:hover{background:#0d1920}.detail-hero.compact{padding:20px 22px}.detail-hero.compact h2{font-size:20px;margin-bottom:5px}.log-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#1d2b34;border-bottom:1px solid #1d2b34}.log-summary>div{padding:13px;background:#091319;display:grid;gap:4px}.log-summary span,.payload-row span{color:#6e818c;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.log-summary strong{font-size:10px}.log-summary small{color:#748792;font-size:8px}.log-message{margin:15px;padding:14px;border:1px solid #273944;border-radius:9px;background:#0a151c;white-space:pre-wrap;font-size:10px;line-height:1.65}.payload-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #1a2a33}.payload-row{padding:11px 15px;border-right:1px solid #17262f;border-bottom:1px solid #17262f;display:grid;gap:5px;min-width:0}.payload-row strong{font-size:9px;overflow-wrap:anywhere;white-space:pre-wrap}.role-badge{display:inline-block;padding:4px 7px;border:1px solid #4a3d23;border-radius:7px;background:#171308;color:#e1b44d;font-size:8px;text-transform:uppercase}.user-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px 22px}.user-form label{display:grid;gap:6px;color:#7e919c;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.user-form input,.user-form select{height:40px;border:1px solid #293a45;border-radius:8px;background:#071016;color:#fff;padding:0 10px;outline:none}.user-form label:nth-last-child(2){grid-column:1/-1}.user-form .btn{grid-column:1/-1;justify-self:end}.user-form label small{font-size:7px;color:#5f727e}.panel-head h2,.section-head h3{margin:3px 0;font-size:14px}
@media(max-width:1050px){.category-cards{grid-template-columns:repeat(2,1fr)}.logs-filter{grid-template-columns:1fr 1fr}.source-state{grid-template-columns:1fr}}
@media(max-width:760px){.category-cards,.logs-filter,.log-summary,.payload-grid,.user-form{grid-template-columns:1fr}.user-form label:nth-last-child(2),.user-form .btn{grid-column:auto}.source-pill{grid-template-columns:auto auto}.source-pill small{grid-column:1/-1;justify-self:start;text-align:left}.log-details{max-width:220px}}

/* IAD v4 · RP-Personaldaten */
.permit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:14px 16px}
.permit-card{min-height:64px;display:flex;align-items:center;gap:11px;padding:12px 13px;border:1px solid #284139;border-radius:10px;background:#0a1713}
.permit-card>span{width:30px;height:30px;display:grid;place-items:center;border:1px solid #32624b;border-radius:8px;color:#74d9a1;background:#0b1c14;font-weight:900}
.permit-card>div{display:grid;gap:3px}.permit-card strong{font-size:10px}.permit-card small{font-size:8px;color:#758b80}
@media(max-width:760px){.permit-grid{grid-template-columns:1fr}}
