
fieldset[hidden]{display:none!important}
.project-description{white-space:pre-wrap;min-width:220px;max-width:500px;overflow-wrap:anywhere}
/* Keep desktop navigation visible while the page content scrolls. */
@media(min-width:651px){
 .side{position:sticky;top:0;align-self:flex-start;height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}
 .side .brand,.side .sidefoot{flex-shrink:0}
 .side .navs{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}
 .side .navs::-webkit-scrollbar{display:none}
 .side{caret-color:transparent;user-select:none;cursor:default}
 .side .sidefoot{margin:18px 12px 0}
}
.planning-job{display:block;width:100%;text-align:left;border-top:0;border-right:0;border-bottom:0;color:inherit;font-family:inherit}.planning-job:hover{background:#fff4f4}
.calendar-week{grid-template-columns:repeat(7,minmax(190px,1fr))}.calendar-week .job .secondary{margin:4px 3px 0 0;padding:7px 9px}.calendar-week .job .notice{font-size:11px}.calendar-week .workflow-label{white-space:normal}fieldset.field{border:1px solid var(--line);border-radius:8px;padding:12px}fieldset.field label{display:flex;align-items:center;gap:8px;font-weight:400}
:root{--red:#b71c1c;--dark:#821414;--bg:#f5f6f8;--line:#e6e8ec;--text:#222b36}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--text);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}.layout{display:flex;min-height:100vh}.side{width:235px;background:var(--red);color:white;padding:26px 15px;flex-shrink:0}.brand{font-size:25px;font-weight:850;letter-spacing:1px;padding:0 12px 30px}.brand small{display:block;font-size:10px;letter-spacing:2.5px;font-weight:500;opacity:.8}.nav{display:block;width:100%;border:0;background:transparent;color:#ffe5e5;text-align:left;padding:13px 15px;border-radius:9px;margin:3px 0}.nav.active,.nav:hover{background:#ffffff24;color:#fff}.sidefoot{font-size:11px;opacity:.75;margin:45px 12px}.main{flex:1;min-width:0}.top{height:75px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px}.top strong{font-size:21px}.badge{background:#fce8e8;color:#981616;padding:8px 12px;border-radius:20px;font-size:12px}.content{padding:30px 34px;max-width:1500px;margin:auto}.heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:24px}.heading h1{margin:0;font-size:26px}.muted{color:#7a8492;font-size:13px}.primary{background:var(--red);color:#fff;border:0;padding:11px 16px;border-radius:8px;font-weight:650}.primary:hover{background:var(--dark)}.secondary{background:white;border:1px solid #d7dce2;border-radius:8px;padding:10px 13px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 2px 8px #18233106}.card{padding:22px}.card .number{font-size:33px;font-weight:800;margin:12px 0 3px}.panel{padding:22px;margin-bottom:20px}.panel h2{margin:0 0 18px;font-size:17px}.grid2{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:12px;color:#7b8593;background:#fafbfc;font-weight:650}th,td{padding:13px 12px;border-bottom:1px solid #edf0f2;white-space:nowrap}td{font-size:13px}.status{border-radius:15px;padding:5px 9px;font-size:11px;font-weight:650;display:inline-block}.offen{background:#fff1d8;color:#9b6200}.geplant{background:#e8efff;color:#3256a0}.arbeit{background:#fff0e8;color:#b65c12}.fertig{background:#e4f7ec;color:#227444}.filters{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}input,select,textarea{padding:10px 12px;border:1px solid #dce0e5;border-radius:8px;background:#fff;max-width:100%}.filters input{min-width:230px}.hidden{display:none!important}.week{display:grid;grid-template-columns:repeat(5,minmax(155px,1fr));gap:12px;overflow:auto}.day{border:1px solid var(--line);border-radius:9px;min-height:270px;padding:12px;background:#fbfcfd}.day b{font-size:13px}.job{margin-top:12px;background:#fff;border-left:4px solid var(--red);border-radius:7px;padding:11px;box-shadow:0 1px 4px #00000010;font-size:12px;cursor:pointer}.job strong{display:block;margin-bottom:5px}.job small{color:#76808c}.empty{color:#9da5ae;font-size:12px;margin-top:20px}.modal{position:fixed;inset:0;background:#17202a88;display:flex;align-items:center;justify-content:center;padding:15px;z-index:10}.dialog{background:#fff;border-radius:13px;padding:26px;width:min(540px,100%);max-height:90vh;overflow:auto}.dialog h2{margin:0 0 17px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:650}.field.wide{grid-column:1/-1}.field textarea{min-height:75px}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.notice{font-size:12px;color:#697483;background:#f7f8fa;border-radius:8px;padding:11px;margin-top:12px}.mobilecard{max-width:420px;border:8px solid #25303a;border-radius:30px;background:#fff;padding:22px;margin:auto}.mobilejob{border:1px solid var(--line);border-radius:10px;padding:15px;margin:12px 0}.kicker{font-size:12px;color:#7d8590;text-transform:uppercase;letter-spacing:1px}.statline{display:flex;justify-content:space-between;gap:10px;margin:9px 0;font-size:13px}@media(max-width:1050px){.cards{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}.side{width:190px}}@media(max-width:650px){.layout{display:block}.side{width:auto;padding:12px}.brand{padding:3px 8px 12px;font-size:21px}.navs{display:flex;overflow:auto}.nav{white-space:nowrap;width:auto;font-size:12px;padding:9px}.sidefoot{display:none}.top{height:55px;padding:0 15px}.top strong{font-size:16px}.content{padding:18px 12px}.cards{gap:9px}.card{padding:13px}.card .number{font-size:25px}.heading h1{font-size:21px}.formgrid{grid-template-columns:1fr}.field.wide{grid-column:auto}}
.actions{flex-wrap:wrap}.review-note{white-space:pre-wrap;overflow-wrap:anywhere}.review-details{display:grid;grid-template-columns:1fr 1fr;gap:12px}.review-details p{margin:0}.workflow-label{display:inline-block;padding:5px 9px;border-radius:15px;font-size:12px;background:#fff1d8;color:#865200;margin:4px 0}.workflow-label.approved{background:#e4f7ec;color:#227444}.workflow-label.returned{background:#fce8e8;color:#981616}.review-counts{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.review-counts span{background:white;border:1px solid var(--line);padding:12px;border-radius:8px}@media(max-width:650px){.review-details{grid-template-columns:1fr}} .photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-item{border:1px solid var(--line);border-radius:9px;padding:10px;min-width:0}.photo-item img{width:100%;height:145px;object-fit:contain;background:#f5f6f8;border-radius:6px}.photo-item input{width:100%;margin:8px 0}.photo-item details[open] img{height:auto;max-height:70vh}.photo-item p{overflow-wrap:anywhere}.photo-item .secondary{font-size:12px}@media(max-width:420px){.photo-grid{grid-template-columns:1fr}} 
.auth{max-width:460px;margin:7vh auto;padding:26px}.auth h1{color:var(--red)}.auth form{display:grid;gap:14px}.global-message{padding:14px 20px;background:#fff1d8;color:#664500;white-space:pre-wrap}.dialog{width:min(680px,100%)}.photo-grid{margin-top:12px}.sidefoot{opacity:1}.top{height:auto;min-height:75px;gap:10px;flex-wrap:wrap}.top .actions{margin:0}.notice{white-space:pre-wrap}.workflow-label.draft{background:#eef0f3;color:#48505c}button:disabled{opacity:.55;cursor:wait}.content .heading{align-items:flex-start}.notice.success{color:#227444;background:#e4f7ec}

.object-detail-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.object-detail-tabs button{min-height:42px}.tablewrap details p.review-note{max-width:520px;white-space:pre-wrap}

.employee-skill-table input[type=checkbox]{width:20px;height:20px;accent-color:#b91c1c}.employee-skill-table td{vertical-align:middle}
.dialog-sticky-header{position:sticky;top:-26px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;margin:-26px -26px 18px;padding:18px 26px;border-bottom:1px solid var(--line)}.dialog-sticky-header h2{margin:0;min-width:0}.dialog-close{flex-shrink:0;font-size:26px;line-height:1;width:44px;height:44px;padding:0}.dialog-close:focus-visible{outline:3px solid var(--red);outline-offset:2px}
#globalObjectSearch{width:100%;margin-top:8px}.global-object-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;max-height:360px;overflow:auto}.global-object-result{text-align:left;white-space:normal}.global-object-result span{display:block;color:var(--red);margin-top:8px;font-weight:650}.global-object-result:focus-visible{outline:3px solid var(--red);outline-offset:2px}
.dialog.dialog-wide{width:min(1180px,96vw);max-height:94vh}.dialog-wide .employee-skill-table th,.dialog-wide .employee-skill-table td{white-space:normal;padding:7px 10px;vertical-align:middle}.dialog-wide .employee-skill-table th:first-child,.dialog-wide .employee-skill-table td:first-child{width:43%}.dialog-wide .employee-skill-table th:not(:first-child),.dialog-wide .employee-skill-table td:not(:first-child){text-align:center}.dialog-wide .employee-skill-table th:last-child,.dialog-wide .employee-skill-table td:last-child{display:none}.dialog-wide .employee-skill-table input[type=checkbox]{width:22px;height:22px;margin:0;cursor:pointer}.dialog-wide .actions{position:sticky;bottom:-26px;z-index:2;background:#fff;margin:16px -26px -26px;padding:14px 26px;border-top:1px solid var(--line)}

.dialog.dialog-wide{width:min(1320px,97vw)}.dialog-wide .employee-skill-table th:first-child,.dialog-wide .employee-skill-table td:first-child{width:40%}.dialog-wide .employee-skill-table th:nth-child(n+2):nth-child(-n+5),.dialog-wide .employee-skill-table td:nth-child(n+2):nth-child(-n+5){width:15%}.dialog-wide .employee-skill-table th{font-size:13px}

.service-directory-row{border:1px solid #dce0e5;border-radius:10px;padding:16px;margin:14px 0}.service-directory-check{display:flex;align-items:center;gap:12px;font-weight:700;font-size:16px;margin-bottom:14px}.service-directory-check input,.object-report-task>input{width:24px;height:24px;min-width:24px;margin:0;accent-color:#b71c1c}.service-directory-row[hidden]{display:none}.service-directory-row input:not([type=checkbox]),.service-directory-row textarea,.service-directory-row select{width:100%}.object-report-task{display:flex;gap:13px;align-items:flex-start;padding:15px 12px;border:1px solid #dce0e5;border-radius:9px;margin:10px 0;font-weight:400;font-size:15px;cursor:pointer}.object-report-task small{color:#687586}.object-report-task details{margin-top:8px}.object-report-task>span{min-width:0;overflow-wrap:anywhere}.object-report-task:has(input:checked){background:#eaf6ee;border-color:#8cbea0}.object-report-checklist{padding:14px;border:1px solid #dce0e5;border-radius:10px}.service-directory-row .formgrid{grid-template-columns:1fr 1fr}@media(max-width:650px){.service-directory-row .formgrid{grid-template-columns:1fr}}
/* Tablet object inspection based on the uploaded form. */
[data-inspection-editor]{min-width:0;overflow-wrap:anywhere}[data-inspection-editor] section[hidden]{display:none}.inspection-nav{display:flex;flex-wrap:wrap;gap:8px;position:sticky;top:0;background:#fff;padding:12px 0;z-index:2;border-bottom:1px solid #dce1e8}.inspection-nav button{min-height:48px;white-space:normal}.inspection-nav span{flex-basis:100%;font-size:14px}.inspection-position{border:1px solid #dce1e8;border-radius:12px;padding:18px;margin:16px 0;background:#fff}.inspection-position h3{font-size:17px;line-height:1.5;margin-top:0}.inspection-number{color:#b71c1c;font-weight:800;margin-right:8px}.inspection-position-grid{display:grid;grid-template-columns:minmax(210px,1fr) minmax(300px,1.6fr);gap:20px}.inspection-options{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 14px}.inspection-choice{display:flex;align-items:center;gap:10px;min-height:48px;padding:8px 12px;border:1px solid #dce1e8;border-radius:8px;cursor:pointer;font-size:15px;box-sizing:border-box}.inspection-choice:has(input:checked){border-color:#b71c1c;background:#fff0f0}.inspection-choice input{width:24px;height:24px;min-width:24px;margin:0;accent-color:#b71c1c}.inspection-position details{margin-bottom:14px}.inspection-position summary{min-height:44px;padding-top:10px;cursor:pointer}.inspection-position textarea,[data-inspection-editor] textarea,[data-inspection-editor] input[type=text]{font-size:16px;box-sizing:border-box;max-width:100%}.inspection-exceptions .formgrid{grid-template-columns:100px minmax(0,1fr);margin:14px 0}.inspection-paging{justify-content:space-between}.inspection-paging span{align-self:center}[data-inspection-form]>.actions,[data-object-form=new]>.actions{position:sticky;bottom:0;background:white;padding:14px 0;border-top:1px solid #dce1e8;z-index:3}[data-inspection-error]{color:#b71c1c}
@media(max-width:850px){.inspection-position-grid{grid-template-columns:minmax(0,1fr)}.inspection-position{padding:14px}.inspection-choice{min-height:48px}.inspection-exceptions .formgrid{grid-template-columns:minmax(0,1fr)}.inspection-nav{position:static}.inspection-paging{flex-wrap:wrap}}
.office-reminders{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 24px;border-bottom:1px solid #dce1e8;background:#fff}.office-reminders.pending{background:#fff2d8;border-bottom-color:#e7c977}.office-reminders span{font-size:14px}.office-reminders button{min-height:44px}.office-reminders [data-office-reminder-new]{font-weight:700;color:#9f1919}@media(max-width:700px){.office-reminders{padding:12px 16px}.office-reminders span{flex-basis:100%}}

/* Readable original tour templates, also on tablets. */
.source-tour-stops{padding-left:28px}.source-tour-stop{padding:16px 8px;border-bottom:1px solid #e3e7ed}.source-tour-text{white-space:pre-wrap;overflow-wrap:anywhere}.source-tour-stop button{margin:4px 4px 4px 0;min-height:44px;white-space:normal;text-align:left}

.source-tour-mark-yellow,.source-tour-mark-red{display:inline-block;padding:5px 10px;border-radius:6px;font-weight:700;margin:4px 6px 4px 0}.source-tour-mark-yellow{background:#ffff00;color:#242424;border:1px solid #827000}.source-tour-mark-red{background:#fff;color:#b71c1c;border:1px solid #b71c1c}.source-tour-original-red{font-weight:700}.source-tour-color-legend{line-height:2}

/* Firm-independent team rows in the dated weekly plan. */
.planning-team-heading{border-bottom:2px solid var(--red);padding-bottom:12px;margin-bottom:14px}.planning-team-heading h2{font-size:20px;margin:0 0 6px}.planning-team-heading p{margin:0 0 6px}.planning-team-heading span{color:#697483;font-size:13px}.planning-team-scroll{overflow-x:auto}.planning-team-week .week.calendar-week{grid-template-columns:repeat(7,minmax(155px,1fr));overflow:visible}.planning-team-week .day{min-height:200px}.planning-team-week .day details{font-size:12px}.planning-team-week .job{overflow-wrap:anywhere}

.planning-team-links{display:flex;flex-wrap:wrap;gap:10px}.planning-team-links a{text-decoration:none;color:var(--text);display:flex;flex-direction:column;gap:5px;min-width:170px}.planning-team-links span{font-size:12px;color:#697483}.planning-team-week{scroll-margin-top:20px}

.planning-team-week .planning-job-normal{border-left-color:#b7bec7}.planning-team-week .planning-job-attention{border-left-color:#b71c1c}

.workflow-label.planning-held{background:#edf0f3;color:#52606d}

.object-tariff-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.object-tariff-overview article{border:1px solid var(--line);border-radius:8px;padding:14px}.object-tariff-editor input,.object-tariff-editor select{min-height:44px}.object-tariff-editor .heading{margin-bottom:14px}.object-tariff-editor textarea{min-height:85px}

.access-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.access-menu-grid label{display:flex;align-items:center;gap:8px;min-height:40px}@media(max-width:600px){.access-menu-grid{grid-template-columns:1fr}}
.personnel-cost-card .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.personnel-cost-card{overflow-wrap:anywhere}[data-personnel-cost-form] input,[data-personnel-cost-form] select{min-height:44px}[data-personnel-cost-form] fieldset{min-width:0;border:1px solid #dce1e8;border-radius:10px;margin:16px 0;padding:15px}[data-personnel-cost-form] fieldset[hidden],[data-personnel-cost-form] [hidden]{display:none!important}.personnel-cost-confirm{display:flex;gap:12px;align-items:flex-start;margin:18px 0}.personnel-cost-confirm input{width:24px;min-width:24px;min-height:24px}[data-cost-error]{color:#b71c1c}[data-personnel-cost-form]~details pre,#modal pre{white-space:pre-wrap;overflow-wrap:anywhere}body:has([data-personnel-cost-form]) .actions{flex-wrap:wrap}@media(max-width:650px){.personnel-cost-card .cards{grid-template-columns:1fr}.heading:has([data-cost-new]){align-items:flex-start;flex-direction:column}.heading:has([data-cost-new]) .actions{flex-wrap:wrap;justify-content:flex-start}}
.language-choice{display:flex;align-items:center;gap:8px}.language-choice select{max-width:180px}.work-language-panel{border-inline-start:4px solid #41768b;background:#f2f7fb;padding:14px;margin:14px 0}.translation-result{white-space:pre-wrap;overflow-wrap:anywhere}html[dir="rtl"] .side,html[dir="rtl"] .main,html[dir="rtl"] .dialog{text-align:right}html[dir="rtl"] .top .actions{flex-wrap:wrap}html[dir="rtl"] input[type="time"],html[dir="rtl"] input[type="date"],html[dir="rtl"] input[type="number"],html[dir="rtl"] input[type="email"],html[dir="rtl"] input[type="password"]{direction:ltr;text-align:left}@media(max-width:700px){.language-choice{width:100%;justify-content:space-between}.language-choice select{min-height:44px}.work-language-panel{padding:10px}}
