:root{--navy:#172536;--navy2:#21364d;--blue:#2563eb;--blue-soft:#eaf1ff;--teal:#0f766e;--orange:#d97706;--red:#c2413b;--green:#16835c;--ink:#1d2939;--muted:#667085;--line:#e4e7ec;--bg:#f4f6f8;--card:#fff;--shadow:0 8px 26px rgba(16,24,40,.07);--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(37,99,235,.2);outline-offset:1px}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:var(--navy);color:#fff;padding:22px 14px;display:flex;flex-direction:column;z-index:30}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 28px}.brand-mark{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:#fff;color:var(--navy);font-weight:900;letter-spacing:-1px;box-shadow:inset -4px -4px 0 #6ea8ff}.brand strong,.brand span{display:block}.brand strong{font-size:17px}.brand span{font-size:11px;color:#a9b7c8}.nav{display:grid;gap:5px}.nav-item{width:100%;border:0;background:transparent;color:#b9c5d2;text-align:left;border-radius:9px;padding:10px 12px;display:flex;align-items:center;gap:11px;font-weight:650}.nav-item>span{font-size:18px;width:20px;text-align:center}.nav-item b{margin-left:auto;background:#31465d;color:#dce6f1;border-radius:99px;padding:1px 7px;font-size:11px}.nav-item:hover,.nav-item.active{background:var(--navy2);color:#fff}.nav-item.active{box-shadow:inset 3px 0 0 #64a0ff}.sidebar-bottom{margin-top:auto}.portfolio-card{margin:10px 5px 12px;padding:12px;border:1px solid #30465e;border-radius:10px;background:#1c2e42}.portfolio-card span,.portfolio-card strong,.portfolio-card small{display:block}.portfolio-card span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#8fa2b7}.portfolio-card strong{font-size:12px;margin:4px 0}.portfolio-card small{color:#a9b7c8;font-size:11px}.user-card{border-top:1px solid #30445a;margin-top:12px;padding:18px 7px 0;display:flex;align-items:center;gap:10px}.avatar{width:34px;height:34px;border-radius:50%;background:#315d8f;color:#fff;display:grid;place-items:center;font-weight:800;font-size:12px}.user-card strong,.user-card span{display:block}.user-card strong{font-size:12px}.user-card span{color:#9baabc;font-size:10px}.main{margin-left:248px;min-height:100vh;padding:0 30px 50px}.topbar{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.breadcrumbs{font-size:11px;color:var(--muted);margin-bottom:3px}.breadcrumbs span{padding:0 6px}.topbar h1{font-size:20px;margin:0;letter-spacing:-.02em}.top-actions{display:flex;gap:9px;align-items:center}.global-search,.filter-search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:0 11px;color:#98a2b3}.global-search input,.filter-search input{border:0;outline:0;background:transparent;height:38px;min-width:250px}.primary-btn,.secondary-btn,.text-btn,.icon-btn{border-radius:8px;font-weight:700}.primary-btn{border:1px solid var(--blue);background:var(--blue);color:#fff;padding:9px 13px;box-shadow:0 2px 4px rgba(37,99,235,.2)}.primary-btn:hover{background:#1d4ed8}.secondary-btn{border:1px solid #d0d5dd;background:#fff;color:#344054;padding:8px 12px}.secondary-btn:hover{background:#f8fafc}.text-btn{border:0;background:transparent;color:var(--blue);padding:5px}.icon-btn{border:1px solid var(--line);background:#fff;color:#475467;width:36px;height:36px;font-size:20px}.menu-btn{display:none}.view{display:none;padding-top:27px}.view.active{display:block}.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.section-intro p{margin:0 0 3px;color:var(--muted);font-size:12px}.section-intro h2{font-size:25px;letter-spacing:-.03em;margin:0}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:15px}.metric-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:17px 18px;box-shadow:0 2px 8px rgba(16,24,40,.03)}.metric-top{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px}.metric-icon{width:29px;height:29px;border-radius:8px;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue);font-weight:900}.metric-value{font-size:28px;line-height:1;margin:13px 0 7px;font-weight:800;letter-spacing:-.04em}.metric-note{font-size:11px;color:var(--muted)}.metric-note strong{color:var(--red)}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:19px;box-shadow:0 2px 8px rgba(16,24,40,.03)}.span-2{grid-column:span 2}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:800}.card h3{font-size:16px;margin:2px 0 0}.workflow{display:flex;align-items:flex-start;overflow-x:auto;padding:3px 0 8px}.workflow-step{min-width:92px;position:relative;text-align:center}.workflow-step:not(:last-child):after{content:"";position:absolute;top:15px;left:62%;width:76%;height:2px;background:#e5e7eb}.workflow-dot{position:relative;z-index:1;margin:auto;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#edf1f5;color:#64748b;font-size:11px;font-weight:800;border:3px solid #fff;box-shadow:0 0 0 1px #d6dce3}.workflow-step.active .workflow-dot{background:var(--blue);color:white;box-shadow:0 0 0 1px var(--blue)}.workflow-label{display:block;font-size:10px;color:var(--muted);line-height:1.2;margin-top:8px}.workflow-count{font-size:11px;font-weight:800;margin-top:3px}.bar-group{display:grid;gap:12px}.bar-label{display:flex;justify-content:space-between;font-size:11px;margin-bottom:4px}.bar-track{height:7px;border-radius:99px;background:#eef1f4;overflow:hidden}.bar-fill{height:100%;border-radius:inherit}.task-list{display:grid}.task{display:grid;grid-template-columns:9px 1fr auto;gap:11px;align-items:start;padding:10px 0;border-bottom:1px solid #edf0f3}.task:last-child{border-bottom:0}.task-dot{width:8px;height:8px;border-radius:50%;margin-top:5px}.task strong,.task span{display:block}.task strong{font-size:12px}.task span{font-size:10px;color:var(--muted);margin-top:2px}.task-time{text-align:right;font-size:10px;font-weight:750;color:var(--red)}.live-dot{font-size:10px;color:var(--green);background:#eaf8f1;border-radius:99px;padding:4px 8px}.cost-hero{background:#f7f9fc;border-radius:11px;padding:14px}.cost-hero span,.cost-hero strong{display:block}.cost-hero span{font-size:10px;color:var(--muted)}.cost-hero strong{font-size:24px;margin:3px 0}.cost-lines{margin-top:12px;display:grid;gap:9px}.cost-line{display:flex;justify-content:space-between;font-size:11px}.filter-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;display:grid;grid-template-columns:minmax(280px,1fr) 160px 150px 180px auto;gap:9px;margin-bottom:13px}.filter-card select,.field input,.field select,.field textarea,.detail-control{border:1px solid #d0d5dd;border-radius:8px;background:#fff;color:var(--ink);padding:9px 10px;outline:none}.filter-card select:focus,.field input:focus,.field select:focus,.field textarea:focus,.detail-control:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.1)}.table-card{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden}.table-meta{padding:13px 16px;border-bottom:1px solid var(--line);display:flex;gap:10px;align-items:center}.table-meta span{color:var(--muted);font-size:11px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:1080px}th{background:#f8fafc;color:#667085;text-transform:uppercase;letter-spacing:.06em;font-size:9px;text-align:left;padding:10px 13px;border-bottom:1px solid var(--line)}td{padding:12px 13px;border-bottom:1px solid #edf0f3;vertical-align:middle;font-size:11px}tbody tr{cursor:pointer}tbody tr:hover{background:#f9fbff}tbody tr:last-child td{border-bottom:0}.defect-name{max-width:245px}.defect-name strong,.defect-name span{display:block}.defect-name strong{font-size:12px}.defect-name span{color:var(--muted);font-size:9px;margin-top:2px}.place strong,.place span{display:block}.place span{color:var(--muted);font-size:9px}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:99px;padding:4px 8px;font-size:9px;font-weight:800;white-space:nowrap}.badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.priority-Kritisch{background:#feeceb;color:#b42318}.priority-Hoch{background:#fff1e5;color:#b54708}.priority-Normal{background:#eaf2ff;color:#175cd3}.priority-Niedrig{background:#eef2f6;color:#475467}.status-badge{background:#f2f4f7;color:#475467}.status-Neu{background:#eaf2ff;color:#175cd3}.status-Prüfung{background:#fff6df;color:#a15c00}.status-In-Bearbeitung{background:#e9f8f3;color:#087b56}.status-Erledigt,.status-Abnahme{background:#ecfdf3;color:#067647}.status-Geschlossen,.status-Dokumentation{background:#eef2f6;color:#475467}.overdue{color:var(--red);font-weight:800}.row-arrow{font-size:17px;color:#98a2b3}.empty-row{text-align:center;color:var(--muted);padding:40px}.object-summary{display:flex;gap:7px}.summary-pill{border:1px solid var(--line);background:#fff;padding:7px 10px;border-radius:8px;font-size:10px}.summary-pill strong{font-size:13px;margin-right:4px}.object-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.object-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.object-top{height:7px;background:linear-gradient(90deg,var(--navy2),#4b77a8)}.object-content{padding:18px}.object-head{display:flex;justify-content:space-between;gap:15px}.object-head h3{margin:3px 0;font-size:17px}.object-head p{margin:0;color:var(--muted);font-size:10px}.type-chip{font-size:9px;background:#eef4ff;color:#285ca8;border-radius:99px;padding:5px 8px;height:max-content}.object-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.object-stat{background:#f7f9fb;border-radius:8px;padding:9px}.object-stat span,.object-stat strong{display:block}.object-stat span{font-size:9px;color:var(--muted)}.object-stat strong{font-size:16px}.building-list{border-top:1px solid var(--line);padding-top:10px}.building-row{display:flex;align-items:center;gap:8px;padding:7px 2px;font-size:10px}.building-row span:first-child{background:#eef2f6;border-radius:6px;padding:4px 6px}.building-row b{margin-left:auto;color:var(--muted)}.drawer-backdrop{position:fixed;inset:0;background:rgba(16,24,40,.38);opacity:0;visibility:hidden;transition:.2s;z-index:39}.drawer-backdrop.open{opacity:1;visibility:visible}.drawer{position:fixed;z-index:40;right:0;top:0;bottom:0;width:min(680px,100vw);background:#f7f9fb;box-shadow:-20px 0 60px rgba(16,24,40,.18);transform:translateX(105%);transition:.25s;overflow:hidden}.drawer.open{transform:none}.drawer-head{height:92px;padding:19px 22px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.drawer-head h2{margin:3px 0 0;font-size:20px;line-height:1.25}.drawer-body{height:calc(100% - 92px);overflow-y:auto;padding:16px 20px 50px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.detail-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px}.detail-card.wide{grid-column:1/-1}.detail-card h3{font-size:13px;margin:0 0 12px}.detail-description{color:#475467;font-size:12px;white-space:pre-wrap}.detail-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mini-field span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.04em}.mini-field strong{display:block;font-size:11px;margin-top:2px}.edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.edit-grid label{font-size:9px;color:var(--muted)}.edit-grid label span{display:block;margin-bottom:3px}.edit-grid .detail-control{width:100%;font-size:10px;padding:7px}.progress-rail{display:flex;overflow-x:auto;padding:8px 0 4px}.progress-node{min-width:76px;text-align:center;position:relative}.progress-node:not(:last-child):after{content:"";position:absolute;top:10px;left:57%;width:86%;height:2px;background:#e4e7ec}.progress-node.done:not(:last-child):after{background:var(--blue)}.progress-circle{position:relative;z-index:1;width:21px;height:21px;border-radius:50%;margin:auto;background:#eef1f4;border:2px solid #fff;box-shadow:0 0 0 1px #d0d5dd}.progress-node.done .progress-circle{background:var(--blue);box-shadow:0 0 0 1px var(--blue)}.progress-node.current .progress-circle{background:#fff;box-shadow:0 0 0 3px #9fc0ff;border:5px solid var(--blue)}.progress-node span{display:block;font-size:8px;color:var(--muted);line-height:1.15;margin-top:6px}.timeline{position:relative;margin-left:4px}.timeline:before{content:"";position:absolute;left:5px;top:5px;bottom:8px;width:1px;background:#dce1e7}.timeline-item{position:relative;padding:0 0 15px 23px}.timeline-dot{position:absolute;left:0;top:4px;width:11px;height:11px;border-radius:50%;background:#fff;border:3px solid #8aaee2}.timeline-item strong,.timeline-item span{display:block}.timeline-item strong{font-size:10px}.timeline-item span{font-size:9px;color:var(--muted)}.note-form{display:flex;gap:7px;margin-top:10px}.note-form textarea{flex:1;min-height:58px;resize:vertical}.attachment-zone{border:1px dashed #b8c2ce;border-radius:10px;padding:17px;text-align:center;background:#fbfcfd}.attachment-zone input{display:none}.attachment-zone label{color:var(--blue);font-weight:700;cursor:pointer}.attachment-zone small{display:block;color:var(--muted);margin-top:4px}.attachment-list{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.attachment{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.attachment img{width:100%;height:85px;object-fit:cover;display:block}.attachment div{padding:6px;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dialog-open{overflow:hidden}dialog{padding:0;border:0;border-radius:15px;width:min(760px,calc(100vw - 24px));box-shadow:0 25px 80px rgba(16,24,40,.28)}dialog::backdrop{background:rgba(16,24,40,.55);backdrop-filter:blur(2px)}.modal-head{padding:20px 22px 15px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.modal-head h2{margin:3px 0;font-size:22px}.modal-head p{margin:0;color:var(--muted);font-size:11px}.modal-body{padding:18px 22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:grid;gap:5px}.field.wide{grid-column:1/-1}.field>span{font-size:10px;font-weight:750;color:#475467}.field textarea{min-height:82px;resize:vertical}.modal-actions{padding:14px 22px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.toast{position:fixed;right:22px;bottom:22px;background:#172536;color:#fff;padding:11px 14px;border-radius:9px;box-shadow:var(--shadow);z-index:70;transform:translateY(20px);opacity:0;pointer-events:none;transition:.2s;font-size:11px}.toast.show{transform:none;opacity:1}
@media(max-width:1150px){.metric-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr 1fr}.span-2{grid-column:span 2}.filter-card{grid-template-columns:1fr 1fr 1fr}.filter-search{grid-column:1/-1}.object-grid{grid-template-columns:1fr}.global-search{display:none}}
@media(max-width:760px){.sidebar{transform:translateX(-105%);transition:.2s}.sidebar.open{transform:none}.main{margin-left:0;padding:0 14px 35px}.menu-btn{display:block}.topbar{gap:10px}.topbar>div:nth-child(2){flex:1}.topbar h1{font-size:15px}.breadcrumbs{display:none}.top-actions .primary-btn{font-size:0;padding:9px}.top-actions .primary-btn:after{content:"＋";font-size:18px}.section-intro{align-items:flex-start}.metric-grid{gap:8px}.metric-card{padding:13px}.metric-value{font-size:22px}.dashboard-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.filter-card{grid-template-columns:1fr}.filter-search{grid-column:auto}.filter-search input{min-width:0;width:100%}.object-summary{display:none}.detail-grid,.detail-fields,.edit-grid,.form-grid{grid-template-columns:1fr}.field.wide,.detail-card.wide{grid-column:auto}.drawer{width:100%}.attachment-list{grid-template-columns:1fr 1fr}}
@media(max-width:430px){.metric-grid{grid-template-columns:1fr 1fr}.metric-card{min-width:0}.metric-top{font-size:9px}.metric-note{font-size:9px}.section-intro h2{font-size:21px}.section-intro>.secondary-btn{display:none}}
@media print{.sidebar,.topbar,.filter-card,.section-intro button{display:none!important}.main{margin:0;padding:0}.view{display:none}.view.active{display:block}.card,.table-card,.metric-card{box-shadow:none;break-inside:avoid}body{background:#fff}.table-scroll{overflow:visible}table{min-width:0;font-size:8px}th,td{padding:6px}}
.workflow-step{min-width:74px}

/* Management Dashboard & Reporting */
.export-actions{display:flex;gap:8px;flex-wrap:wrap}.management-filters{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:14px}.period-pills{display:flex;gap:5px;overflow-x:auto;padding-bottom:10px}.period-pills button,.template-grid button{border:1px solid var(--line);background:#fff;border-radius:7px;padding:7px 9px;color:#475467;font-size:10px;white-space:nowrap}.period-pills button.active,.template-grid button.active{background:var(--navy2);border-color:var(--navy2);color:#fff}.custom-period{display:none;gap:10px;padding:3px 0 12px}.custom-period.show{display:flex}.custom-period label,.date-pair label{font-size:9px;color:var(--muted)}.custom-period input,.date-pair input{display:block;border:1px solid #d0d5dd;border-radius:7px;padding:7px;margin-top:3px}.dashboard-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:8px}.dashboard-filter-grid select,.dashboard-filter-grid summary,.report-builder select{height:36px;border:1px solid #d0d5dd;border-radius:8px;background:#fff;padding:8px 9px;color:#344054;font-size:10px}.multi-filter{position:relative}.multi-filter summary{list-style:none;cursor:pointer}.multi-filter summary:after{content:"⌄";float:right}.multi-filter>div{display:none;position:absolute;z-index:20;top:40px;left:0;width:280px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:9px;box-shadow:var(--shadow)}.multi-filter[open]>div{display:grid;gap:6px}.multi-filter label{font-size:10px;padding:4px}.management-kpis{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:14px}.management-kpi{border:1px solid var(--line);background:#fff;border-radius:11px;padding:12px;text-align:left;min-width:0}.management-kpi:hover{border-color:#9bbcf1;box-shadow:0 4px 12px rgba(37,99,235,.08)}.management-kpi span,.management-kpi strong,.management-kpi small{display:block}.management-kpi span{font-size:9px;color:var(--muted);min-height:27px}.management-kpi strong{font-size:20px;line-height:1.1;margin:4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.management-kpi small{font-size:8px;color:#98a2b3}.management-kpi.warn{border-top:3px solid var(--red)}.management-kpi.warn strong{color:var(--red)}.attention-panel{background:linear-gradient(135deg,#fff,#fff8f5);border:1px solid #f0d7cf;border-radius:14px;padding:18px;margin-bottom:14px}.attention-panel h3{font-size:17px;margin:2px 0}.attention-count{font-size:9px;background:#fbeae7;color:#b42318;border-radius:99px;padding:5px 8px}.attention-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.attention-card{background:#fff;border:1px solid var(--line);border-left:4px solid #98a2b3;border-radius:9px;padding:11px;text-align:left}.attention-card.red{border-left-color:var(--red)}.attention-card.orange{border-left-color:var(--orange)}.attention-card.blue{border-left-color:var(--blue)}.attention-card span,.attention-card strong,.attention-card small,.attention-card b{display:block}.attention-card span{font-size:8px;text-transform:uppercase;letter-spacing:.05em;color:var(--red);font-weight:800}.attention-card strong{font-size:11px;margin:4px 0}.attention-card small{font-size:8px;color:var(--muted)}.attention-card b{font-size:8px;color:var(--blue);margin-top:7px}.management-chart-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px;margin-bottom:14px}.trend-legend{display:flex;gap:10px;font-size:9px;color:var(--muted)}.trend-legend i{display:inline-block;width:7px;height:7px;border-radius:2px;margin-right:3px}.trend-legend .new,.trend-day i.new{background:var(--blue)}.trend-legend .done,.trend-day i.done{background:var(--green)}.trend-chart{height:110px;display:flex;align-items:flex-end;gap:4px;padding-top:10px}.trend-day{flex:1;min-width:8px;text-align:center}.trend-day>div{height:84px;display:flex;gap:2px;align-items:flex-end;justify-content:center}.trend-day i{width:40%;max-width:8px;min-height:2px;border-radius:2px 2px 0 0}.trend-day span{font-size:7px;color:#98a2b3}.management-bars{display:grid;gap:9px}.management-bars>div>div{display:flex;justify-content:space-between;font-size:9px}.management-bars i{display:block;height:6px;background:#eef1f4;border-radius:99px;overflow:hidden;margin-top:3px}.management-bars b{display:block;height:100%;background:linear-gradient(90deg,var(--blue),#6ea8ff);border-radius:inherit}.management-lower-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:14px}.activity-feed{max-height:430px;overflow:auto}.activity-row{width:100%;border:0;border-bottom:1px solid #edf0f3;background:transparent;display:grid;grid-template-columns:92px 85px 1fr 10px;gap:8px;padding:9px 2px;text-align:left;align-items:start}.activity-row:hover{background:#f8fafc}.activity-row time{font-size:8px;color:var(--muted)}.activity-type{font-size:8px;font-weight:750;color:var(--blue)}.activity-row strong,.activity-row small{display:block}.activity-row strong{font-size:9px}.activity-row small{font-size:8px;color:var(--muted);margin-top:2px}.compact-table-wrap{overflow:auto}.compact-table{min-width:650px}.compact-table th,.compact-table td{padding:8px;font-size:9px}.object-link{border:0;background:transparent;color:var(--blue);font-weight:750;text-align:left}.dashboard-detail{margin-top:14px}.detail-list-row{width:100%;display:grid;grid-template-columns:1fr 1fr 15px;gap:10px;border:0;border-bottom:1px solid #edf0f3;background:#fff;padding:9px;text-align:left}.detail-list-row span{color:var(--muted);font-size:9px}.object-dashboard{margin-top:14px;background:#172536;color:#fff;border-radius:15px;padding:20px}.object-dashboard-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.object-dashboard-head h2{margin:4px 0;font-size:22px}.object-dashboard-head p{margin:0;color:#a9b7c8;font-size:10px}.object-dashboard-head>div:last-child{text-align:right}.object-dashboard-head>div:last-child strong,.object-dashboard-head>div:last-child span{display:block}.object-dashboard-head>div:last-child strong{font-size:23px}.object-dashboard-head>div:last-child span{font-size:9px;color:#a9b7c8}.object-dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:16px}.object-dashboard-grid article{background:#21364d;border:1px solid #30465e;border-radius:9px;padding:11px}.object-dashboard-grid span,.object-dashboard-grid strong,.object-dashboard-grid small{display:block}.object-dashboard-grid span{color:#9db0c4;font-size:8px;text-transform:uppercase}.object-dashboard-grid strong{font-size:12px;margin:4px 0}.object-dashboard-grid small{color:#b6c2cf;font-size:8px}.empty-state{color:var(--muted);text-align:center;padding:25px;font-size:10px}.report-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}.report-builder{position:sticky;top:12px;padding:15px;max-height:calc(100vh - 110px);overflow:auto}.report-block{padding:0 0 14px;margin-bottom:14px;border-bottom:1px solid var(--line)}.report-row-head{display:flex;justify-content:space-between;align-items:center}.template-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:7px}.date-pair{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:7px}.date-pair input{width:100%}.report-filter-grid{display:grid;gap:6px;margin-top:7px}.section-checks{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:7px}.section-checks label{font-size:9px;color:#475467}.report-builder>.primary-btn{width:100%}.report-paper{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:34px;min-height:800px}.report-header{display:flex;justify-content:space-between;gap:25px;border-bottom:3px solid var(--navy2);padding-bottom:18px}.report-header span,.report-header b,.report-header small{display:block}.report-header>div:first-child>span{font-size:8px;letter-spacing:.12em;color:var(--blue);font-weight:800}.report-header h1{font-size:25px;margin:5px 0}.report-header p{margin:0;color:var(--muted)}.report-header>div:last-child{text-align:right;font-size:10px}.report-header small{color:var(--muted);margin-top:4px}.report-section{margin-top:25px;break-inside:auto}.report-section h2{font-size:15px;margin:0 0 10px;border-bottom:1px solid var(--line);padding-bottom:6px}.management-summary{font-size:11px;line-height:1.7;background:#f5f8fc;border-left:4px solid var(--blue);padding:12px}.report-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.report-kpis div{background:#f7f9fb;border-radius:7px;padding:9px}.report-kpis span,.report-kpis strong{display:block}.report-kpis span{font-size:8px;color:var(--muted)}.report-kpis strong{font-size:17px}.report-table-wrap{overflow:auto}.report-table-wrap table{min-width:600px}.report-table-wrap th,.report-table-wrap td{font-size:8px;padding:6px}.report-table-wrap th{background:var(--navy2);color:#fff}.report-table-wrap tr:nth-child(even) td{background:#f8fafc}
@media(max-width:1300px){.management-kpis{grid-template-columns:repeat(4,1fr)}.attention-grid{grid-template-columns:repeat(2,1fr)}.management-chart-grid{grid-template-columns:1fr 1fr}.management-chart-grid .card:first-child{grid-column:span 2}.dashboard-filter-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.management-lower-grid,.report-layout{grid-template-columns:1fr}.report-builder{position:static;max-height:none}.management-chart-grid{grid-template-columns:1fr}.management-chart-grid .card:first-child{grid-column:auto}.object-dashboard-grid{grid-template-columns:1fr 1fr}.dashboard-filter-grid{grid-template-columns:1fr 1fr}.report-paper{padding:20px}.dashboard-intro{display:block}.dashboard-intro .export-actions{margin-top:10px}}
@media(max-width:600px){.management-kpis{grid-template-columns:1fr 1fr}.attention-grid{grid-template-columns:1fr}.dashboard-filter-grid{grid-template-columns:1fr}.object-dashboard-grid{grid-template-columns:1fr}.report-header{display:block}.report-header>div:last-child{text-align:left;margin-top:12px}.report-kpis{grid-template-columns:1fr 1fr}.export-actions .secondary-btn{font-size:9px}.activity-row{grid-template-columns:72px 1fr}.activity-row div{grid-column:1/-1}.report-paper{padding:14px}}
@page{size:A4;margin:13mm 11mm}
@media print{body.print-report{background:#fff}.print-report .sidebar,.print-report .topbar,.print-report .section-intro,.print-report .report-builder,.print-report .toast{display:none!important}.print-report .main{margin:0;padding:0}.print-report .view{display:none!important}.print-report #reportsView{display:block!important;padding:0}.print-report .report-layout{display:block}.print-report .report-paper{border:0;box-shadow:none;padding:0;min-height:0}.print-report .report-header{break-after:avoid}.print-report .report-section{break-inside:auto}.print-report .report-table-wrap{overflow:visible}.print-report .report-table-wrap table{min-width:0;width:100%;page-break-inside:auto}.print-report tr{page-break-inside:avoid}.print-report .report-section h2{break-after:avoid}.print-report .report-paper:after{content:"AI Bau · Nordstern Hausverwaltung · Seite " counter(page);position:fixed;bottom:-8mm;left:0;right:0;text-align:center;font-size:7px;color:#98a2b3}}

/* Dashboard typography: improve readability without changing the layout or data. */
#dashboardView .period-pills button,
#dashboardView .dashboard-filter-grid select,
#dashboardView .dashboard-filter-grid summary,
#dashboardView .multi-filter label{font-size:11px}
#dashboardView .management-kpi span{font-size:11px;line-height:1.35;min-height:30px;overflow-wrap:anywhere}
#dashboardView .management-kpi strong{font-size:22px}
#dashboardView .management-kpi small{font-size:10px;line-height:1.4}
#dashboardView .attention-count{font-size:10px}
#dashboardView .attention-card span{font-size:10px;line-height:1.35}
#dashboardView .attention-card strong{font-size:12px;line-height:1.4;overflow-wrap:anywhere}
#dashboardView .attention-card small,
#dashboardView .attention-card b{font-size:10px;line-height:1.4}
#dashboardView .trend-legend,
#dashboardView .management-bars>div>div{font-size:10px}
#dashboardView .trend-day span{font-size:9px}
#dashboardView .management-lower-grid .eyebrow{font-size:11px}
#dashboardView .management-lower-grid .card h3{font-size:17px;line-height:1.35;overflow-wrap:anywhere}
#dashboardView .activity-row time,
#dashboardView .activity-type{font-size:10px;line-height:1.4}
#dashboardView .activity-row strong{font-size:11px;line-height:1.45;overflow-wrap:anywhere}
#dashboardView .activity-row small{font-size:10px;line-height:1.45;overflow-wrap:anywhere}
#dashboardView .compact-table th,
#dashboardView .compact-table td{font-size:10px;line-height:1.4}
#dashboardView .detail-list-row span{font-size:10px;line-height:1.4}
#dashboardView .object-dashboard-grid span,
#dashboardView .object-dashboard-grid small,
#dashboardView .object-dashboard-head>div:last-child span{font-size:10px;line-height:1.4}

@media(max-width:760px){
  #dashboardView .management-lower-grid>*{min-width:0}
  #dashboardView .management-kpi span{min-height:0}
  #dashboardView .management-kpi strong{font-size:20px}
  #dashboardView .activity-row{row-gap:5px}
}
