:root{--blue:#0457a7;--blue-dark:#07376a;--blue-soft:#eaf4ff;--yellow:#ffd400;--yellow-soft:#fff8c7;--bg:#f3f7fb;--card:#fff;--text:#10233f;--muted:#6f7f91;--line:#dbe5ef;--shadow:0 8px 24px rgba(13,55,102,.09)}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:var(--bg);font-size:14px}.app-shell{display:flex;min-height:100vh}.sidebar{width:245px;background:linear-gradient(180deg,#082f5a,#061f3d);color:#fff;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;box-shadow:8px 0 30px rgba(5,26,50,.12)}.brand{height:70px;display:flex;align-items:center;gap:12px;padding:0 24px;font-size:21px;font-weight:750;border-bottom:1px solid rgba(255,255,255,.1)}.brand-mark{width:30px;height:30px;border:3px solid var(--yellow);transform:rotate(45deg);display:inline-grid;place-items:center;color:#fff}.sidebar nav{padding:18px 12px;flex:1}.sidebar nav a{display:flex;gap:12px;align-items:center;color:#dce9f6;text-decoration:none;padding:12px 14px;border-radius:9px;margin-bottom:5px}.sidebar nav a:hover,.sidebar nav a.active{background:linear-gradient(90deg,#0e6bd2,#2587ef);color:#fff;box-shadow:0 6px 18px rgba(0,86,173,.28)}.nav-label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#9cb2c8;padding:18px 14px 8px}.sidebar-user{display:flex;gap:10px;align-items:center;margin:12px;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:10px}.sidebar-user small,.user-row small,.task-row small,table small{display:block;color:var(--muted);margin-top:3px}.sidebar-user small{color:#bdd0e3}.logout{color:#fff;text-decoration:none;padding:16px 26px;border-top:1px solid rgba(255,255,255,.1)}.main{margin-left:245px;min-width:0;flex:1}.topbar{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}.global-search{width:min(520px,55vw);display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fafcff;border-radius:24px;padding:0 16px}.global-search input{border:0;background:transparent;height:42px;outline:0;width:100%}.top-actions{display:flex;gap:12px;align-items:center}.icon-btn,.avatar-sm{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue-dark);font-weight:700}.content{padding:24px}.footer{padding:20px 28px;color:var(--muted);text-align:center}.page-head,.customer-hero{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:18px}.page-head h1,.customer-hero h1{margin:3px 0 4px;font-size:27px}.eyebrow,.crumb{font-size:12px;color:var(--blue);font-weight:700}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #c8d6e5;background:#fff;color:var(--text);padding:10px 14px;border-radius:7px;text-decoration:none;cursor:pointer;font-weight:650}.btn.primary{background:linear-gradient(180deg,#0e6fd1,#075aa9);border-color:#075aa9;color:#fff;box-shadow:0 6px 14px rgba(4,87,167,.22)}.btn.yellow{background:var(--yellow-soft);border-color:#ebc900}.btn.small{padding:6px 10px;font-size:12px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat-card,.card{background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.stat-card{padding:18px;border-top:4px solid var(--blue)}.stat-card:nth-child(2){border-top-color:var(--yellow)}.stat-card span{color:var(--muted)}.stat-card strong{font-size:29px;display:block;margin:8px 0}.stat-card small{color:var(--muted)}.card{padding:18px}.card h2{font-size:16px;margin:0 0 16px}.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.card-head a{color:var(--blue);text-decoration:none}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px}.span-2{grid-column:auto}.overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.split-grid{display:grid;grid-template-columns:420px 1fr;gap:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.provider-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.provider-box{border-top:4px solid var(--blue)}.yellow-line{border-top:4px solid var(--yellow)}.market-badge{display:inline-block;background:var(--yellow-soft);padding:8px 12px;border-radius:20px;font-weight:700;margin-bottom:10px}.section-title{font-size:18px;margin:22px 0 12px}.customer-meta,.hero-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.status{display:inline-flex;padding:4px 9px;border-radius:18px;font-size:12px;font-weight:700}.status.active{background:#daf5e6;color:#17824f}.status.prospect{background:var(--yellow-soft);color:#8a7100}.status.inactive{background:#edf0f4;color:#677586}.tabs{display:flex;gap:20px;background:#fff;border:1px solid var(--line);padding:0 16px;margin-bottom:16px}.tabs a{padding:14px 6px;text-decoration:none;color:var(--muted);border-bottom:3px solid transparent}.tabs a.active{color:var(--blue);border-color:var(--blue)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;text-transform:uppercase;color:var(--muted);background:#f7f9fc}td a{color:var(--blue);text-decoration:none}label{display:block;font-weight:650;margin-bottom:12px}input,select,textarea{width:100%;border:1px solid #cbd9e7;border-radius:7px;padding:10px 11px;margin-top:6px;font:inherit;background:#fff}textarea{min-height:100px;resize:vertical}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.two-col .wide{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.info{display:grid;grid-template-columns:42% 58%;gap:10px;margin:0}.info dt{color:var(--muted)}.info dd{margin:0;font-weight:600}.history-row,.task-row,.user-row{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line)}.history-row p{margin:5px 0}.contact-icon{width:34px;height:34px;border-radius:9px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;flex:0 0 34px}.task-row .check{width:18px;height:18px;border:1px solid #9eb1c5;border-radius:4px;margin-top:2px}.task-row div{flex:1}.task-row time{color:var(--muted)}.filterbar{display:flex;gap:10px;margin-bottom:14px}.filterbar input{margin:0}.star-btn{border:0;background:transparent;font-size:22px;color:#e3b900;cursor:pointer}.alert{padding:12px 14px;border-radius:8px;margin-bottom:14px}.alert.success{background:#e7f8ef;color:#166b43}.alert.error{background:#fdeaea;color:#a02d2d}.alert.info{background:var(--blue-soft);color:var(--blue-dark)}.empty{padding:28px;text-align:center;color:var(--muted)}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top right,#dfefff,#f7f9fc 55%)}.login-card{width:min(420px,92vw);background:#fff;border:1px solid var(--line);border-top:6px solid var(--yellow);padding:30px;border-radius:14px;box-shadow:var(--shadow)}.login-card .btn{width:100%;margin-top:8px}.login-brand{height:auto;padding:0;border:0;color:var(--blue-dark);margin-bottom:22px}@media(max-width:1100px){.overview-grid,.provider-grid,.stat-grid{grid-template-columns:repeat(2,1fr)}.form-grid,.split-grid,.dashboard-grid{grid-template-columns:1fr}}@media(max-width:760px){.sidebar{width:74px}.sidebar .brand span:last-child,.sidebar nav a:not(.active){font-size:0}.sidebar nav a span{font-size:16px}.sidebar-user div:last-child,.logout{font-size:0}.main{margin-left:74px}.content{padding:14px}.overview-grid,.provider-grid,.stat-grid{grid-template-columns:1fr}.page-head,.customer-hero{align-items:flex-start;flex-direction:column}.global-search{width:70vw}.two-col{grid-template-columns:1fr}.two-col .wide{grid-column:auto}.tabs{overflow:auto}.form-grid{grid-template-columns:1fr}}


/* CRM-JM Logo und benutzerbezogener Dark Mode */
.brand-logo{width:44px;height:44px;object-fit:contain;filter:drop-shadow(0 3px 7px rgba(0,0,0,.18))}.login-logo-wrap{text-align:center;margin-bottom:24px}.login-logo{width:190px;max-width:80%;height:auto}.login-product{font-size:28px;font-weight:800;color:var(--blue-dark);margin-top:5px}.theme-toggle{border:1px solid var(--line);background:var(--card);color:var(--text);height:38px;padding:0 9px;border-radius:20px;display:flex;align-items:center;gap:6px;cursor:pointer;box-shadow:0 3px 10px rgba(13,55,102,.08)}.toggle-track{width:34px;height:18px;border-radius:20px;background:#cad5e2;padding:2px;display:block;transition:.2s}.toggle-thumb{width:14px;height:14px;border-radius:50%;background:#fff;display:block;box-shadow:0 1px 4px rgba(0,0,0,.25);transition:transform .2s}.theme-toggle[aria-pressed="true"] .toggle-track{background:var(--blue)}.theme-toggle[aria-pressed="true"] .toggle-thumb{transform:translateX(16px)}
body[data-theme="dark"]{--bg:#0d1726;--card:#172235;--text:#edf4ff;--muted:#a8b7ca;--line:#2b3a4f;--blue-soft:#17365d;--yellow-soft:#4c410e;--shadow:0 10px 28px rgba(0,0,0,.25);background:var(--bg);color:var(--text)}body[data-theme="dark"] .topbar{background:#101c2d;border-color:var(--line)}body[data-theme="dark"] .global-search{background:#152235;border-color:var(--line)}body[data-theme="dark"] .global-search input,body[data-theme="dark"] input,body[data-theme="dark"] select,body[data-theme="dark"] textarea{background:#111d2e;color:var(--text);border-color:#34455c}body[data-theme="dark"] input::placeholder,body[data-theme="dark"] textarea::placeholder{color:#8192a8}body[data-theme="dark"] .btn{background:#1b293d;color:var(--text);border-color:#3b4d64}body[data-theme="dark"] .btn.primary{background:linear-gradient(180deg,#1976d2,#0d57a7);color:#fff;border-color:#1769bb}body[data-theme="dark"] .tabs{background:var(--card);border-color:var(--line)}body[data-theme="dark"] th{background:#111d2e}body[data-theme="dark"] .login-card{background:var(--card)}body[data-theme="dark"] .login-product{color:#fff}body[data-theme="dark"] .alert.success{background:#163a2b;color:#8ee2b8}body[data-theme="dark"] .alert.error{background:#482323;color:#ffb1b1}body[data-theme="dark"] .sidebar{background:linear-gradient(180deg,#071a34,#050f21)}body[data-theme="dark"] .theme-toggle{background:#172235}.sun,.moon{font-size:14px;line-height:1}
@media(max-width:760px){.brand-logo{width:38px}.brand{padding:0 14px}.theme-toggle .sun,.theme-toggle .moon{display:none}}
.metric-row{margin:16px 0}.metric-row>div:first-child{display:flex;justify-content:space-between;gap:16px;margin-bottom:7px}.metric-row span{font-weight:800}.metric-track{height:10px;border-radius:999px;background:var(--border);overflow:hidden}.metric-track i{display:block;height:100%;background:var(--primary);border-radius:inherit}.metric-track.yellow i{background:var(--yellow)}

.edit-lock-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;border-left:5px solid var(--yellow)}
.edit-lock-toolbar small{display:block;color:var(--muted);margin-top:4px}.form-locked{position:relative}.form-locked input,.form-locked select,.form-locked textarea{background:#eef2f6;color:#697789;cursor:not-allowed}.form-locked .provider-box,.form-locked .card{opacity:.82}.user-admin-row{border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:10px}.user-admin-row .user-row{border-bottom:0}.user-admin-row .user-row>div:nth-child(2){flex:1}.password-reset{margin:0 0 10px 46px}.password-reset summary{cursor:pointer;color:var(--blue);font-weight:700}.compact-form{margin-top:12px;padding:12px;background:var(--bg);border-radius:8px}.btn:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:760px){.edit-lock-toolbar{align-items:flex-start;flex-direction:column}.password-reset{margin-left:0}}
.document-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:16px 0;border-bottom:1px solid var(--border)}
.document-row:last-child{border-bottom:0}.document-row small{display:block;margin-top:5px}.document-row p{margin:7px 0 0}.document-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.document-actions form{margin:0}
@media(max-width:760px){.document-row{flex-direction:column}.document-actions{width:100%}}


/* CRM-JM 3.1 Branding, Dark Mode, Sicherheit und Benachrichtigungen */
.brand{justify-content:center;padding:14px 16px;min-height:92px}.brand-logo{width:180px;max-width:100%;height:auto;object-fit:contain}.login-logo{width:180px;max-width:80%;height:auto}.login-product{display:none!important}.top-actions,.top-actions *{color:var(--text)}.top-avatar{color:#fff!important;background:var(--blue-dark)!important}.notification-bell{position:relative;text-decoration:none;color:var(--text)!important}.notification-count{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;border-radius:999px;background:var(--yellow);color:#172033!important;font-size:11px;font-weight:900;display:grid;place-items:center;padding:0 4px;border:2px solid var(--card)}
.notification-row{display:flex;gap:14px;align-items:flex-start;padding:15px 8px;border-bottom:1px solid var(--line)}.notification-row.unread{background:var(--blue-soft);border-left:4px solid var(--blue)}.notification-icon{width:36px;height:36px;border-radius:10px;background:var(--yellow-soft);display:grid;place-items:center;flex:0 0 36px}.notification-row>div:nth-child(2){flex:1}.notification-row p{margin:5px 0}.notification-actions{display:flex;gap:7px;align-items:center}.notification-actions form{margin:0}.security-card{margin-top:18px}.table-scroll{overflow:auto}.ua-cell,.detail-cell{max-width:420px;white-space:normal;word-break:break-word}
body[data-theme="dark"] .top-actions,body[data-theme="dark"] .top-actions *,body[data-theme="dark"] .icon-btn,body[data-theme="dark"] .avatar-sm,body[data-theme="dark"] .crumb,body[data-theme="dark"] .eyebrow,body[data-theme="dark"] small,body[data-theme="dark"] .muted{color:#d8e4f3}body[data-theme="dark"] .top-avatar{background:#1559a4!important;color:#fff!important}body[data-theme="dark"] .notification-count{color:#172033!important}body[data-theme="dark"] .notification-row.unread{background:#17365d}body[data-theme="dark"] .form-locked input,body[data-theme="dark"] .form-locked select,body[data-theme="dark"] .form-locked textarea{background:#0f1a2a;color:#91a2b8}body[data-theme="dark"] table,body[data-theme="dark"] td,body[data-theme="dark"] th{color:var(--text)}
@media(max-width:760px){.brand-logo{width:58px}.brand{padding:10px 7px}.notification-actions{flex-direction:column;align-items:stretch}}
