/* Copyright © 2026 TNSystem. Alle Rechte vorbehalten. */
.health b.warning{background:#fff4ce;color:#8a4b00}
.section-title{font-size:18px;margin:24px 0 10px}.period-kpis{margin-top:0}.product-table-link{color:#005a9e;font-weight:600;text-decoration:none}.product-table-link:hover{text-decoration:underline}
.nav-link.sub-link{margin-left:28px;padding-left:10px;font-size:14px}.nav-link.parent-active{background:#e8e8e8}.client-table table{min-width:1280px;table-layout:fixed}.client-table th,.client-table td{vertical-align:top;white-space:normal;overflow-wrap:anywhere}.client-table th:nth-child(1){width:82px}.client-table th:nth-child(2){width:145px}.client-table th:nth-child(3){width:145px}.client-table th:nth-child(8),.client-table th:nth-child(9){width:155px}.client-table td small{display:block;color:#616161;margin-top:4px}.client-table code{font-size:12px}.status-pill{display:inline-block;border-radius:14px;padding:5px 9px;font-weight:600;font-size:12px}.status-pill.active{background:#e5f4eb;color:#107c10}.status-pill.inactive{background:#fde7e9;color:#8b1010}.pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin:18px 0}.pagination a{text-decoration:none;display:inline-flex;align-items:center}
:root{font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif;color:#1f1f1f;background:#f3f3f3;font-size:15px}*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#f7f9fb,#eaf2f8);min-height:100vh}button,input{font:inherit}.app{max-width:1540px;margin:16px auto;background:#f3f3f3;border:1px solid #d2d2d2;border-radius:12px;box-shadow:0 14px 40px #2034491a;overflow:hidden;min-height:calc(100vh - 48px)}.topbar{height:54px;background:#fbfbfb;border-bottom:1px solid #ddd;display:flex;align-items:center;justify-content:space-between;padding:0 20px}.brand,.top-actions{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:7px;background:#0067c0;color:#fff;font-weight:700}.top-actions form{margin:0}.secure{color:#107c10}.layout{display:grid;grid-template-columns:230px 1fr}.sidebar{background:#f1f1f1;border-right:1px solid #ddd;padding:24px 10px}.nav-title{font-size:13px;color:#616161;margin:12px 12px 6px}.nav-link{position:relative;display:flex;gap:12px;align-items:center;color:#1f1f1f;text-decoration:none;padding:10px 12px;border-radius:6px;margin:2px 0}.nav-link:hover{background:#e8e8e8}.nav-link.active{background:#fff;box-shadow:0 1px 2px #0001}.nav-link.active:before{content:"";position:absolute;left:0;width:3px;height:28px;border-radius:3px;background:#0067c0}.nav-link small{display:block;color:#616161;margin-top:3px}.content{padding:30px 28px 48px;min-width:0}.heading,.panel-title{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.heading h1{font-size:28px;margin:0 0 4px}.heading p{margin:0;color:#616161}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#0067c0!important;font-weight:700}.commands{display:flex;gap:8px}.primary,.secondary,.icon{border-radius:5px;min-height:34px;padding:6px 14px;border:1px solid #c8c8c8;background:#fff;cursor:pointer}.primary{background:#0067c0;border-color:#0067c0;color:#fff;font-weight:600}.primary:hover{background:#005a9e}.secondary:hover,.icon:hover{background:#eee}.primary:focus-visible,.secondary:focus-visible,.icon:focus-visible,input:focus-visible,.nav-link:focus-visible{outline:3px solid #1f1f1f;outline-offset:2px}.icon{padding:4px 10px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0 14px}.kpis article,.panel{background:#fff;border:1px solid #dedede;border-radius:8px;box-shadow:0 1px 2px #0000000b}.kpis article{padding:18px}.kpis span{color:#616161}.kpis strong{display:block;font-size:20px;margin:8px 0}.kpis em{color:#107c10;font-style:normal;font-size:13px}.grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(310px,.9fr);gap:14px}.panel{padding:20px;margin-bottom:14px}.panel h2{margin:0 0 18px;font-size:20px}.panel-title span{font-size:13px;color:#616161}.chart svg{width:100%;height:230px}.chart line{stroke:#e4e4e4}.chart polyline{fill:none;stroke:#0067c0;stroke-width:4;stroke-linejoin:round;stroke-linecap:round}.chart p{text-align:center;color:#616161}.health{list-style:none;margin:0;padding:0}.health li{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e6e6e6;padding:12px 0}.health li:last-child{border:0}.health small{display:block;color:#616161;margin-top:4px}.health b{background:#e5f4eb;color:#107c10;padding:5px 9px;border-radius:14px;font-size:13px}.table-panel{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid #e5e5e5;padding:11px 8px}th{color:#616161;font-size:13px}.alert{padding:12px 14px;border-radius:6px;margin:16px 0}.alert.error{background:#fde7e9;color:#8b1010;border:1px solid #f3b7bd}.alert.info{background:#e7f3ff;color:#064578;border:1px solid #b5d8f5}.login-body{display:grid;place-items:center;padding:22px}.login-shell{width:min(100%,460px)}.login-card{background:#fff;border:1px solid #d8d8d8;border-radius:12px;padding:32px;box-shadow:0 18px 55px #173a5120}.login-card h1{margin:28px 0 20px}.login-card label{display:block;margin:15px 0;color:#404040}.login-card input{display:block;width:100%;margin-top:6px;border:1px solid #999;border-bottom:2px solid #0067c0;border-radius:4px;padding:10px 11px}.login-card .primary{width:100%;margin-top:8px}.setup{background:#f0f6fa;border:1px solid #b9d3e4;border-radius:7px;padding:14px}.setup code{display:block;word-break:break-all;background:#fff;padding:10px;border-radius:4px}.privacy,.copyright{color:#616161;font-size:12px;text-align:center}.copyright{padding:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:980px){.layout{grid-template-columns:190px 1fr}.kpis{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}}@media(max-width:700px){.app{margin:0;border:0;border-radius:0}.layout{display:block}.sidebar{display:flex;overflow:auto;border-right:0;border-bottom:1px solid #ddd;padding:8px}.nav-title{display:none}.nav-link{min-width:max-content}.nav-link small{display:none}.content{padding:20px 14px}.heading{display:block}.commands{margin-top:14px}.kpis{grid-template-columns:1fr}.top-actions>span:not(.secure){display:none}}
