:root{--bg:#faf9f5;--surface:#ffffff;--surface-2:#f1efe8;--text:#2c2c2a;--text-2:#5f5e5a;--text-3:#888780;--border:#e7e5dd;--border-2:#d3d1c7;--info-bg:#e6f1fb;--info:#185fa5;--danger:#b3261e;--a1:#534ab7;--a2:#7f77dd;--a3:#afa9ec;--a4:#2f8f83;--radius:8px;--radius-lg:12px;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#262624;--surface:#30302e;--surface-2:#3a3a37;--text:#f1efe8;--text-2:#b4b2a9;--text-3:#888780;--border:#444441;--border-2:#5f5e5a;--info-bg:#0c447c;--info:#85b7eb;--danger:#f2b8b5;--a1:#afa9ec;--a2:#7f77dd;--a3:#534ab7;--a4:#5fb3a6}}*{box-sizing:border-box}body,html{padding:0;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:13px;padding:7px 12px;border:.5px solid var(--border-2);background:transparent;color:var(--text);border-radius:var(--radius);cursor:pointer}button:hover{background:var(--surface-2)}button.primary{background:var(--info-bg);color:var(--info);border-color:transparent}button:disabled{opacity:.6;cursor:not-allowed}input,select,textarea{font-family:inherit;font-size:14px;padding:9px 11px;border:.5px solid var(--border-2);background:var(--surface);color:var(--text);border-radius:var(--radius);width:100%}textarea{resize:vertical;line-height:1.5}input:focus,select:focus,textarea:focus{outline:2px solid var(--info);outline-offset:-1px}.card{background:var(--surface);border:.5px solid var(--border);border-radius:var(--radius-lg);padding:1.1rem 1.25rem}.muted{color:var(--text-3)}.login-wrap{max-width:420px;margin:0 auto;padding:12vh 20px 0}.login-head{display:flex;align-items:center;gap:10px;margin-bottom:18px}.login-title{font-size:17px;font-weight:500}.login-sub{font-size:13px;color:var(--text-3)}.field-label{display:block;font-size:13px;color:var(--text-2);margin-bottom:6px}.login-form .field{margin-bottom:14px}.login-error{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.login-error,.login-ok{border-radius:var(--radius);font-size:13px;padding:9px 11px;margin-bottom:14px}.login-ok{background:var(--info-bg);color:var(--info)}.primary-link{display:inline-block;color:var(--info);font-size:14px;margin-top:4px}.note{font-size:12px;color:var(--text-3);margin-top:12px}.app{display:flex;min-height:100vh}.drawer-overlay,.mobile-topbar{display:none}.sidebar{width:220px;flex-shrink:0;background:var(--surface-2);display:flex;flex-direction:column;padding:16px 12px}.brand{display:flex;align-items:center;gap:9px;padding:4px 10px 16px}.brand-name{font-size:15px;font-weight:500}.nav{display:flex;flex-direction:column;gap:3px}.nav-item{display:flex;align-items:center;gap:10px;padding:10px 11px;border-radius:var(--radius);color:var(--text-2);font-size:14px;cursor:pointer}.nav-item:hover{background:var(--surface)}.nav-item.active{background:var(--info-bg);color:var(--info)}.nav-item.disabled{color:var(--text-3);cursor:not-allowed}.nav-item.disabled:hover{background:transparent}.nav-badge{margin-left:auto;font-size:11px;color:var(--text-3);background:var(--surface);border:.5px solid var(--border);border-radius:999px;padding:1px 8px}.sidebar-bottom{margin-top:auto}.user-area{position:relative;margin-top:6px;border-top:.5px solid var(--border)}.user-button{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;padding:11px;cursor:pointer;text-align:left}.user-button:hover{background:var(--surface)}.avatar{width:34px;height:34px;border-radius:50%;background:var(--info-bg);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:500;color:var(--info);flex-shrink:0}.user-meta{line-height:1.3;flex:1 1;min-width:0}.user-name{font-size:14px;font-weight:500}.user-betrieb,.user-name{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-betrieb{font-size:12px;color:var(--text-3)}.user-menu{position:absolute;bottom:calc(100% + 6px);left:6px;right:6px;background:var(--surface);border:.5px solid var(--border-2);border-radius:var(--radius);padding:4px;box-shadow:0 6px 20px rgba(0,0,0,.16)}.menu-item{display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;border:0;background:transparent;border-radius:var(--radius);color:var(--text-2);font-size:14px;cursor:pointer;text-align:left}.menu-item:hover{background:var(--surface-2)}.menu-sep{border-top:.5px solid var(--border);margin:4px 2px}.logout-form{margin:0}.main{flex:1 1;min-width:0;padding:24px 28px 60px;max-width:1040px}.page-title{font-size:18px;font-weight:500;margin:0 0 18px}.welcome{text-align:center;padding:64px 24px}.welcome-title{font-size:20px;font-weight:500;margin:0 0 8px}.home-betrieb{font-size:28px;font-weight:600;margin:4px 0 0}.page-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:18px}.page-head .page-title{margin:0}.seg{display:inline-flex;border:.5px solid var(--border-2);border-radius:var(--radius);overflow:hidden}.seg a{padding:7px 13px;font-size:13px;color:var(--text-2)}.seg a+a{border-left:.5px solid var(--border-2)}.seg a:hover{background:var(--surface-2)}.seg a.active{background:var(--info-bg);color:var(--info)}.list{padding:0;overflow:hidden}.list-head,.list-row{display:grid;grid-template-columns:1fr 130px 110px;grid-gap:12px;gap:12px;padding:12px 16px;align-items:center}.list-head{font-size:13px;color:var(--text-2);border-bottom:.5px solid var(--border)}.list-row{border-top:.5px solid var(--border);color:var(--text)}.list-row:first-of-type{border-top:0}.list-row:hover{background:var(--surface-2)}.list .num,.list-head .num{text-align:right}.list-empty{padding:16px}.table-card{padding:1rem 1.1rem}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}.table-scroll table{min-width:560px}th{text-align:left;font-weight:500;color:var(--text-2);padding:9px 8px;border-bottom:.5px solid var(--border);white-space:nowrap}td{padding:10px 8px;border-top:.5px solid var(--border)}.num{text-align:right;white-space:nowrap}.back-link{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--text-2);margin-bottom:14px}.back-link:hover{color:var(--text)}.detail-title{font-size:20px;font-weight:500;margin:0 0 2px}.detail-sub{font-size:13px;color:var(--text-3);margin:0 0 16px}.summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.kpi{background:var(--surface-2);border-radius:var(--radius);padding:.8rem 1rem}.kpi .l{font-size:13px;color:var(--text-2)}.kpi .v{font-size:20px;font-weight:500}@media (max-width:768px){.app{display:block}.mobile-topbar{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:.5px solid var(--border);position:-webkit-sticky;position:sticky;top:0;background:var(--bg);z-index:30}.icon-button{border:0;background:transparent;color:var(--text);cursor:pointer;padding:4px;display:inline-flex;align-items:center}.sidebar{position:fixed;top:0;left:0;bottom:0;width:240px;transform:translateX(-100%);transition:transform .2s ease;z-index:45}.sidebar.open{transform:translateX(0)}.drawer-overlay.show{display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:40}.main{padding:16px;max-width:100%}}.page-head-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}button.danger{color:var(--danger);border-color:transparent;background:transparent}button.danger:hover{background:color-mix(in srgb,var(--danger) 12%,transparent)}button.danger-solid{background:var(--danger);color:#fff;border-color:transparent}button.danger-solid:hover{filter:brightness(.95);background:var(--danger)}.row-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.row-actions button{padding:5px 9px;font-size:12px}.list-head--actions,.list-row--actions{grid-template-columns:1fr 120px 90px auto}.list-link{color:var(--text);font-weight:500}.list-link:hover{color:var(--info)}.detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.detail-head .detail-sub,.detail-head .detail-title{margin:0}.detail-head .detail-sub{margin-top:2px}.detail-head-tools{display:flex;gap:8px;flex-wrap:wrap}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:flex-start;justify-content:center;padding:8vh 16px 16px;z-index:60;overflow-y:auto}.modal-panel{background:var(--surface);border:.5px solid var(--border-2);border-radius:var(--radius-lg);width:100%;max-width:460px;box-shadow:0 12px 40px rgba(0,0,0,.24)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:.5px solid var(--border)}.modal-title{font-size:16px;font-weight:500;margin:0}.modal-body{padding:16px}.modal-body .field{margin-bottom:14px}.modal-text{font-size:14px;margin:0 0 12px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.icon-button{border:0;background:transparent;color:var(--text-2);cursor:pointer;padding:4px;display:inline-flex;align-items:center}.icon-button:hover{color:var(--text);background:transparent}.settings-card{max-width:520px;margin-bottom:16px}.settings-card-title{font-size:14px;font-weight:500;margin-bottom:12px}.kv{margin:0}.kv-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:8px 0;font-size:14px}.kv-row+.kv-row{border-top:.5px solid var(--border)}.kv-label{color:var(--text-2)}.kv-value{margin:0;text-align:right;word-break:break-word}.kv-section{font-size:12px;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;margin:0 0 6px}.kv+.kv-section{margin-top:16px}.field-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}@media (max-width:480px){.field-grid{grid-template-columns:1fr;gap:0}}.form-row{display:flex;align-items:center;gap:12px;margin-top:12px}.form-hint-ok{font-size:13px;color:var(--info)}.pw-form{margin-top:14px;padding-top:14px;border-top:.5px solid var(--border)}.picker-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.picker-filter input,.picker-filter select{flex:1 1;min-width:120px}.picker-list{max-height:280px;overflow-y:auto;border:.5px solid var(--border);border-radius:var(--radius);margin-bottom:14px}.picker-row{display:flex;align-items:center;gap:10px;padding:9px 11px;border-top:.5px solid var(--border);cursor:pointer;font-size:13px}.picker-row:first-child{border-top:0}.picker-row:hover{background:var(--surface-2)}.picker-row input[type=radio]{width:auto;flex-shrink:0}.picker-main{flex:1 1;min-width:0}.picker-weight{flex-shrink:0;font-weight:500}@media (max-width:768px){.list-head--actions,.list-row--actions{grid-template-columns:1fr 84px 64px}.list-row--actions .row-actions{grid-column:1/-1;justify-content:flex-start;padding-top:8px}.list-head--actions>span:last-child{display:none}}.filter-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.seg button{border:0;border-radius:0;padding:7px 13px;font-size:13px;color:var(--text-2);background:transparent}.seg button+button{border-left:.5px solid var(--border-2)}.seg button:hover{background:var(--surface-2)}.seg button.active{background:var(--info-bg);color:var(--info)}.filter-rasse{display:inline-flex;align-items:center;gap:8px;font-size:13px}.filter-rasse select{width:auto;min-width:150px}.chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:14px;gap:14px;margin-bottom:14px}.chart-title{font-size:14px;font-weight:500;margin-bottom:12px}.chart-empty{height:180px;justify-content:center}.chart-empty,.rassen-bar{display:flex;align-items:center;font-size:13px}.rassen-bar{gap:16px;flex-wrap:wrap;background:var(--surface-2);border-radius:var(--radius);padding:11px 14px;margin-bottom:14px}.rassen-chip{display:inline-flex;align-items:center;gap:6px}.rassen-dot{width:10px;height:10px;border-radius:2px;flex-shrink:0}.text-3{color:var(--text-3)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:18px 0 10px}.section-title{font-size:15px;font-weight:500;margin:0}.section-link{font-size:13px;color:var(--info);white-space:nowrap}.export-bar{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-bottom:10px}@media print{.back-link,.detail-head-tools,.drawer-overlay,.export-bar,.mobile-topbar,.print-hide,.sidebar{display:none!important}.app{display:block!important}.main{padding:0!important;max-width:100%!important}body{background:#fff}.card{border-color:transparent;box-shadow:none}}