.contract-head,.contract-row{display:grid;grid-template-columns:1.2fr 1.2fr .8fr .7fr .6fr;gap:12px;padding:13px 18px;align-items:center}
.contract-start-panel{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px;border-left:6px solid var(--blue);background:linear-gradient(135deg,#ffffff,#eef8fd)}
.contract-start-panel h3{margin:3px 0 5px}.contract-start-panel p{margin:0;color:var(--muted);max-width:760px}.contract-start-panel button{white-space:nowrap}
@media(max-width:760px){.contract-start-panel{display:grid}.contract-start-panel button{width:100%}}
.dashboard-task-panel{margin-bottom:17px}.panel-title-row{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.panel-title-row h2{margin:0}.panel-title-row p{margin:3px 0 0;color:var(--muted)}.cockpit-config{margin:17px 0}.cockpit-actions{display:flex;gap:8px;flex-wrap:wrap}.cockpit-catalog{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:15px}.cockpit-choice{display:flex;align-items:flex-start;gap:9px;margin:0;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f8fbfd}.cockpit-choice input{width:auto;margin-top:2px}.cockpit-choice b,.cockpit-choice small{display:block}.cockpit-choice small{color:var(--muted);margin-top:3px}.cockpit-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:15px}.cockpit-widget{min-height:160px}.cockpit-widget .panel-title-row h2{font-size:18px}.cockpit-stats{grid-template-columns:repeat(3,1fr);margin:0}.cockpit-stats .stat{box-shadow:none}.cockpit-milestones{grid-template-columns:1fr}.cockpit-summary{border:1px solid var(--line);border-radius:10px;padding:12px;background:#f8fbfd;margin-top:10px}.cockpit-summary strong,.cockpit-summary span{display:block}.cockpit-summary strong{font-size:26px}.cockpit-summary span{color:var(--muted);margin-top:3px}.dashboard-task-list{display:grid;gap:8px;margin-top:14px}.dashboard-task{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff}.dashboard-task.today{border-color:#76c6eb;background:#f0faff}.dashboard-task.overdue{border-color:#efcf81;background:#fff8e8}.dashboard-task b,.dashboard-task small{display:block}.dashboard-task small{color:var(--muted);margin-top:3px}.dashboard-task>div{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}@media(max-width:900px){.cockpit-grid{grid-template-columns:1fr}.cockpit-stats{grid-template-columns:1fr}}
.contract-head{background:#f4f7f9;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}
.contract-row{border-top:1px solid var(--line)}
.contract-row b,.contract-row small{display:block}
.contract-row small{color:var(--muted);margin-top:3px}
.pill{display:inline-flex;width:max-content;border-radius:16px;padding:5px 8px;background:#e8f7f1;color:var(--green);font-size:10px;font-weight:800}
.pill.warn{background:#fff3dc;color:#9b650d}
.planning-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:15px;align-items:start}
.planning-side{display:grid;gap:15px}
.planning-layout h3{margin-top:0}
.planning-layout p{color:var(--muted);margin:3px 0}
.planning-hint{font-size:12px;margin:-4px 0 12px!important}
.plan-list,.tour-list{display:grid;gap:9px}
.plan-item{width:100%;border:1px solid var(--line);border-radius:11px;padding:13px;background:#fff;text-align:left;color:inherit;cursor:pointer;transition:.15s}
.plan-item:hover{border-color:#9bd6ee;background:#f3fbff;transform:translateY(-1px)}
.plan-item.selected{border-color:var(--blue);background:#edf8fd;box-shadow:0 0 0 3px #dff3fc}
.plan-item.temporary-plan{border-left:5px solid #d49400}
.plan-item b,.plan-item span,.plan-item small{display:block}
.plan-item span{color:#465968;margin-top:4px}
.plan-item small{color:var(--muted);margin-top:4px}
.plan-item em{display:block;margin-top:9px;color:var(--blue);font-size:11px;font-style:normal;font-weight:850}
.plan-more{width:100%;border:1px dashed #bcd3df;border-radius:12px;background:#f4f9fc;color:var(--blue);font-weight:900;padding:11px 12px;cursor:pointer;text-align:center}
.plan-more:hover{background:#e8f6fc;border-color:#91cce5}
.plan-detail-panel{min-height:260px}.plan-detail h3{margin:5px 0 2px}.plan-detail p{color:var(--muted);margin:0}.plan-detail-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.plan-detail-head .eyebrow{margin-top:0}.routine-explainer{margin:12px 0 0;padding:11px 12px;border:1px solid #b8e4cf;border-radius:10px;background:#ecf9f2;color:#25684e;font-size:12px;font-weight:750}.routine-explainer.temporary{border-color:#f1c76a;background:#fff9ea;color:#8b650d}.plan-detail-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:14px 0}.plan-detail-facts article{border:1px solid var(--line);border-radius:9px;background:#f8fbfd;padding:10px;min-width:0}.plan-detail-facts span,.plan-detail-facts b{display:block;overflow-wrap:anywhere}.plan-detail-facts span{font-size:10px;color:var(--muted);font-weight:850;text-transform:uppercase}.plan-detail-facts b{margin-top:3px}.plan-detail h4{margin:14px 0 8px}.plan-next-dates{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.plan-next-dates span{border:1px solid var(--line);border-radius:8px;padding:8px 9px;background:#fff;font-size:12px;color:#526171}.plan-next-dates span.exists{background:#e8f7f1;border-color:#b8e4cf;color:var(--green);font-weight:800}.plan-detail-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.plan-detail-note{font-size:12px;margin-top:9px!important}
.plan-subtitle-row{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:12px}
.plan-subtitle-row h4{margin:0}
.plan-subtitle-row small{color:var(--muted);font-weight:800}
.tour-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.status{background:#e8f7f1;color:var(--green);border-radius:15px;padding:6px 9px;font-size:10px;font-weight:800}
.tour-stop{display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:center}
.tour-stop>strong{width:28px;height:28px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center}
.tour-stop b,.tour-stop span{display:block}
.tour-stop span{font-size:11px;color:var(--muted);margin-top:3px}
.tour-stop small{color:var(--green);font-weight:750}
.tour-drive{margin-left:13px;border-left:2px dashed #cbd8df;padding:10px 0 10px 25px;color:var(--muted);font-size:11px}
.tour-list-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:8px;align-items:stretch;margin-bottom:4px}
.tour-list-overview article{border:1px solid var(--line);border-radius:12px;background:#f8fbfd;padding:10px 11px}
.tour-list-overview span,.record-compactbar span{display:block;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.tour-list-overview b{display:block;margin-top:3px;color:#1f374b}
.tour-list-overview button{min-height:100%}
.tour-more,.record-show-more{width:100%;border:1px dashed #bcd3df;border-radius:12px;background:#f4f9fc;color:var(--blue);font-weight:900;padding:11px 12px;cursor:pointer;text-align:center}
.tour-more:hover,.record-show-more:hover{background:#e8f6fc;border-color:#91cce5}
@media(max-width:760px){
  .tour-list-overview{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .tour-list-overview button{
    grid-column:1/-1;
    min-height:44px;
  }
}

/* Kompakt-/Aufklappmuster für Dokumente und Finanzen */
.document-folder-more{
  border-top:1px solid var(--line);
  margin-top:4px;
}
.document-folder-more>summary,
.finance-show-more{
  cursor:pointer;
  list-style:none;
  border:1px dashed #bcd3df;
  border-radius:12px;
  background:#f4f9fc;
  color:var(--blue);
  font-weight:900;
  padding:10px 12px;
  margin-top:10px;
}
.document-folder-more>summary::-webkit-details-marker{
  display:none;
}
.document-folder-more>summary:hover,
.finance-show-more:hover{
  background:#e8f6fc;
  border-color:#91cce5;
}
.finance-show-more{
  display:block;
  width:100%;
  box-sizing:border-box;
  text-align:center;
}
.finance-show-more.invoice-more{
  grid-column:1/-1;
  border-radius:0;
  margin-top:0;
}
.check{display:flex;align-items:center;gap:8px;margin-top:28px}
.check input{width:auto}
.check.is-locked{background:#f2f8fc;border:1px solid #d4e9f4;border-radius:10px;padding:10px 12px;color:#35576b}
.check.is-locked input:disabled{opacity:1;accent-color:var(--blue)}
.modal-card h2{margin-top:6px}
.client-open{width:100%;border:0;background:#fff;text-align:left;color:inherit;cursor:pointer}
.client-open:hover{background:#f3f9fc}
.toolbar-actions{display:flex;align-items:flex-end;gap:9px}
.compact-label{margin:0;gap:4px}
.compact-label input{padding:9px 11px}
.plan-item .text-action{margin-top:9px}
.calendar-panel{margin-top:15px}.calendar-title{display:flex;justify-content:space-between;align-items:center;gap:12px}.calendar-title h3{margin:0}.calendar-title p{margin:4px 0;color:var(--muted)}.calendar-title>div:last-child{display:flex;gap:7px}.calendar-filterbar{display:flex;gap:10px;align-items:end;flex-wrap:wrap;border:1px solid var(--line);border-radius:14px;background:#f8fbfd;padding:10px 12px;margin-top:13px}.calendar-filterbar label{margin:0;min-width:190px}.calendar-filterbar select{padding:9px 11px}.week-calendar{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:8px;overflow-x:auto;margin-top:14px}.calendar-day{min-height:180px;background:#f7fafc;border:1px solid var(--line);border-radius:9px;padding:9px;transition:.15s}.calendar-day.collapsed{min-height:0;background:#fbfdfe}.calendar-day.today{border-color:#76c6eb}.calendar-day.drop-target{background:#e8f6fc;border-color:var(--blue);box-shadow:inset 0 0 0 2px #bce6f8}.calendar-day-head{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;font-size:11px;color:var(--muted);margin-bottom:8px}.calendar-day-head em{font-style:normal;background:#edf5f9;border-radius:999px;padding:4px 7px;color:#536b7a;font-weight:850}.calendar-day-toggle{border:0;background:transparent;text-align:left;padding:0;color:inherit;cursor:pointer}.calendar-day-toggle b,.calendar-day-toggle span{display:block}.calendar-day-toggle:hover b{color:var(--blue)}.calendar-event{display:block;width:100%;border:0;border-left:4px solid var(--blue);border-radius:6px;background:#fff;padding:8px;margin:6px 0;text-align:left;cursor:pointer;box-shadow:0 2px 8px #1f374b12;user-select:none}.calendar-event.movable{cursor:grab}.calendar-event.locked{border-left-color:#aeb8c2;background:#f2f5f7;color:#6b7785}.calendar-event.done{opacity:.58;background:#eef1f3;border-left-color:#87929c;box-shadow:none}.calendar-event.done b{color:#596672}.calendar-event.done span{color:#7e8993}.calendar-event.done small{color:#9aa4ad}.calendar-event[draggable=true]{cursor:grab}.calendar-event.dragging{opacity:.45;cursor:grabbing}.calendar-event b,.calendar-event span,.calendar-event small{display:block}.calendar-event span{font-size:11px;margin-top:2px}.calendar-event small{font-size:10px;color:var(--muted);margin-top:3px}.calendar-more{width:100%;border:1px dashed #bcd3df;border-radius:8px;background:#f4f9fc;color:var(--blue);font-weight:850;padding:8px;margin-top:7px;cursor:pointer}.calendar-empty{color:#9aa6af;font-size:11px}
.calendar-personal-label{border:1px solid #bfe4d0;border-left:5px solid var(--green);border-radius:12px;background:#f4fbf6;padding:10px 12px;min-width:260px}.calendar-personal-label span,.calendar-personal-label small{display:block;color:var(--muted)}.calendar-personal-label span{font-size:10px;font-weight:900;text-transform:uppercase}.calendar-personal-label b{display:block;margin:2px 0;color:#1f374b}
.employee-cockpit{display:grid;grid-template-columns:1.35fr repeat(4,1fr);gap:12px;margin:0 0 15px}.employee-kpi{border:1px solid var(--line);border-left:5px solid #8ab4c8;border-radius:13px;background:#fff;padding:14px;box-shadow:0 8px 26px #1f374b0a}.employee-kpi-main{border-left-color:var(--blue);background:linear-gradient(180deg,#fff,#f4fbfe)}.employee-kpi.ready{border-left-color:var(--green);background:#f7fdf9}.employee-kpi.warn{border-left-color:#d49400;background:#fffaf0}.employee-kpi span,.employee-kpi small{display:block;color:var(--muted)}.employee-kpi span{font-size:10px;text-transform:uppercase;font-weight:850}.employee-kpi b{display:block;font-size:24px;margin:4px 0;color:#1f374b}.employee-card-rich{text-align:left!important;display:grid;gap:12px;border-left:5px solid #8ab4c8}.employee-card-rich.ready{border-left-color:var(--green)}.employee-card-rich.open{border-left-color:var(--blue)}.employee-card-rich.warn{border-left-color:#d49400}.employee-card-head{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}.employee-card-head .avatar{margin:0!important}.employee-card-head h3{margin:0 0 3px!important}.employee-card-head p{margin:0;color:var(--muted);font-size:12px}.employee-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.employee-facts span{border:1px solid var(--line);border-radius:10px;background:#f8fbfd;padding:10px;min-width:0}.employee-facts small,.employee-facts b{display:block}.employee-facts small{font-size:10px;text-transform:uppercase;font-weight:850;color:var(--muted)}.employee-facts b{margin-top:3px;overflow-wrap:anywhere}.employee-datev-box{border:1px solid #cfe9d5;border-radius:10px;background:#f7fdf9;padding:10px;color:#245a3b;font-size:12px}.employee-datev-box.warn{border-color:#f1cf8c;background:#fff9ed;color:#8b650d}.employee-datev-box ul{margin:0;padding-left:17px}.employee-datev-box span{display:block}.employee-absence-note{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:10px}.employee-card-actions{display:flex;gap:8px;flex-wrap:wrap}.employee-card-actions button{padding:9px 11px}.absence-panel{margin-top:15px}.absence-panel h3{margin-top:0}.absence-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.absence-row:first-child{border-top:0}.absence-row b,.absence-row small{display:block}.absence-row small{color:var(--muted);margin-top:3px}
.employee-record-card{width:min(1280px,calc(100vw - 44px));max-height:92vh;overflow:auto}.employee-record-content{display:grid;gap:14px}.employee-record-master{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.employee-record-master article{border:1px solid var(--line);border-radius:10px;background:#f8fbfd;padding:11px;min-width:0}.employee-record-master span,.employee-record-master b{display:block;overflow-wrap:anywhere}.employee-record-master span{font-size:10px;color:var(--muted);font-weight:850;text-transform:uppercase}.employee-record-master b{margin-top:3px}.employee-record-tabs{display:flex;gap:7px;flex-wrap:wrap;border:1px solid var(--line);border-radius:14px;background:#f8fbfd;padding:8px}.employee-record-tabs button{border:0;border-radius:10px;background:transparent;color:#526171;font-weight:800;padding:9px 11px;cursor:pointer}.employee-record-tabs button:hover,.employee-record-tabs button.active{background:#e8f6fc;color:var(--blue)}.employee-record-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.employee-record-overview article{border:1px solid var(--line);border-left:5px solid #8ab4c8;border-radius:11px;background:#fff;padding:12px}.employee-record-overview article.ready{border-left-color:var(--green);background:#f7fdf9}.employee-record-overview article.warn{border-left-color:#d49400;background:#fffaf0}.employee-record-overview span,.employee-record-overview small{display:block;color:var(--muted)}.employee-record-overview span{font-size:10px;text-transform:uppercase;font-weight:850}.employee-record-overview b{display:block;font-size:20px;margin:4px 0;color:#1f374b}.employee-record-row{display:grid;grid-template-columns:1.45fr 1fr .55fr .6fr;gap:10px;align-items:center;border-top:1px solid var(--line);padding:11px 0}.employee-record-row:first-of-type{border-top:0}.employee-record-row.muted{opacity:.7}.employee-record-row b,.employee-record-row small{display:block}.employee-record-row small{color:var(--muted);margin-top:3px}.employee-record-workhead{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0}.employee-record-workhead span,.employee-record-workhead strong{border:1px solid var(--line);border-radius:999px;padding:8px 10px;background:#f8fbfd}.employee-record-checks{display:grid;gap:8px;margin:10px 0 14px}.employee-record-master-form,.employee-datev-quick-form,.employee-record-absence-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f8fbfd}.employee-record-master-form label,.employee-datev-quick-form label,.employee-record-absence-form label{margin-top:0}.employee-datev-quick-form .check{border:1px solid #dbe7ee;border-radius:10px;background:#fff;padding:11px;align-items:center}.employee-datev-quick-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;grid-column:1/-1}.employee-panel-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:6px}.employee-panel-head h3{margin:0}.employee-panel-head span{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;border-radius:999px;background:#edf5f9;color:#536b7a;font-weight:900}.employee-record-more{border-top:1px solid var(--line);margin-top:4px}.employee-record-more>summary{cursor:pointer;list-style:none;border:1px dashed #bcd3df;border-radius:12px;background:#f4f9fc;color:var(--blue);font-weight:900;padding:10px 12px;margin-top:10px}.employee-record-more>summary::-webkit-details-marker{display:none}.employee-record-more>summary:hover{background:#e8f6fc}.employee-record-more[open]>summary{margin-bottom:2px}.worktime-more{grid-column:1/-1;width:100%;border:1px dashed #bcd3df;border-radius:0;background:#f4f9fc;color:var(--blue);font-weight:900;padding:12px;cursor:pointer}.worktime-more:hover{background:#e8f6fc}@media(max-width:1000px){.employee-record-master,.employee-record-overview,.employee-record-master-form,.employee-datev-quick-form,.employee-record-absence-form{grid-template-columns:repeat(2,1fr)}.employee-record-row{grid-template-columns:1fr 1fr}.employee-record-row .pill{justify-self:start}}@media(max-width:650px){.employee-record-card{width:100%;max-height:90vh}.employee-record-master,.employee-record-overview,.employee-record-master-form,.employee-datev-quick-form,.employee-record-absence-form{grid-template-columns:1fr}.employee-record-row{grid-template-columns:1fr}.employee-record-tabs button{width:100%;text-align:left}.employee-record-workhead{display:grid}.employee-datev-quick-actions{display:grid}.employee-datev-quick-actions button{width:100%}}
.employee-login-row{grid-template-columns:1.4fr auto auto!important}.employee-login-row button{justify-self:end}.employee-login-empty{border:1px dashed #c7d6df;border-radius:12px;background:#f8fbfd;padding:14px}.employee-login-empty p{margin-top:0;color:var(--muted)}@media(max-width:760px){.employee-login-row{grid-template-columns:1fr!important}.employee-login-row button{justify-self:start;width:100%}}
@media(max-width:900px){.planning-layout{grid-template-columns:1fr}}
@media(max-width:800px){
  .contract-head,.contract-row{grid-template-columns:1.2fr 1fr .8fr}
  .contract-head span:nth-child(4),.contract-head span:nth-child(5),.contract-row span:nth-child(4),.contract-row span:nth-child(5){display:none}
  .tour-title{display:block}.tour-title .status{margin-top:8px}
  .planning-toolbar{align-items:flex-start;gap:12px}.toolbar-actions{flex-wrap:wrap;justify-content:flex-end}
}

.cockpit-widget{
  cursor:grab;
  transition:transform .15s ease,box-shadow .15s ease,outline-color .15s ease;
}
.compact-cockpit-config{
  padding:10px 13px!important;
  margin:12px 0 15px!important;
  border-radius:16px!important;
  background:#f8fbfd!important;
  box-shadow:none!important;
  border:1px solid var(--line)!important;
}
.compact-cockpit-config .panel-title-row{
  align-items:center!important;
}
.compact-cockpit-config h2{
  font-size:15px!important;
  margin:0!important;
}
.compact-cockpit-config p{
  font-size:11px!important;
  margin:2px 0 0!important;
}
.compact-cockpit-config .cockpit-actions button{
  padding:8px 10px;
  font-size:12px;
}
.compact-cockpit-config .cockpit-catalog{
  margin-top:10px;
}
.cockpit-widget:active{cursor:grabbing}
.cockpit-widget.dragging{
  opacity:.55;
  transform:scale(.985);
}
.cockpit-widget.drop-before{
  outline:3px solid var(--blue);
  outline-offset:4px;
}
.cockpit-widget.drop-after{
  outline:3px solid var(--green);
  outline-offset:4px;
}
.dashboard-task.dashboard-billing-group{
  width:100%;
  text-align:left;
  cursor:pointer;
  font:inherit;
  color:inherit;
}
.dashboard-task.dashboard-billing-group:hover{
  border-color:var(--blue);
  box-shadow:0 10px 24px rgba(0,124,191,.12);
  transform:translateY(-1px);
}
.view-context-menu button[hidden]{display:none}
.billing-run-group.focus-flash{
  animation:billingFocusFlash 1.8s ease;
}
@keyframes billingFocusFlash{
  0%,100%{box-shadow:0 0 0 rgba(0,124,191,0)}
  20%{box-shadow:0 0 0 5px rgba(0,124,191,.18)}
  55%{box-shadow:0 0 0 10px rgba(0,124,191,.09)}
}
.mobile-day-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.mobile-day-head h2{margin:5px 0}.mobile-day-head p{margin:0;color:var(--muted)}.gps-badge{background:#e8f7f1;color:var(--green);padding:8px 11px;border-radius:18px;font-size:11px;font-weight:750}.mobile-contract-tools{max-width:850px;margin:-4px 0 14px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;display:flex;justify-content:space-between;align-items:center;gap:12px}.mobile-contract-tools>div{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.mobile-contract-tools span{color:var(--muted);font-size:12px;font-weight:700}.contract-assistant-card{width:min(850px,96vw)}.form-hint{margin:7px 0 14px;color:var(--muted);font-size:12px}.contract-assistant-result{margin-top:14px;padding:12px 14px;border:1px solid #b8e4cf;border-radius:10px;background:#ecf9f2}.contract-assistant-result b,.contract-assistant-result span{display:block}.contract-assistant-result span{margin-top:3px;color:var(--muted);font-size:12px}.mobile-jobs{display:grid;gap:12px;max-width:850px}.mobile-job{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:14px}.mobile-job.active-job{border-color:#70c2e8;box-shadow:0 0 0 3px #dff3fc}.job-sequence{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-weight:800}.job-time{color:var(--blue);font-size:11px;font-weight:800}.job-main h3{margin:3px 0}.job-main p,.job-main small{display:block;color:var(--muted);margin:2px 0}.job-actions{display:grid;gap:7px;text-align:right}.job-actions a{color:var(--blue);font-size:11px;text-decoration:none;font-weight:700}.signature-box{border:2px dashed #bfd0db;border-radius:9px;padding:18px;margin-top:16px;background:#f8fafb}.signature-box span,.signature-box b{display:block}.signature-box span{color:var(--muted);font-size:11px}.signature-box b{margin-top:4px}.record-head,.record-row{display:grid;grid-template-columns:1.2fr .7fr 1.3fr .6fr .7fr;gap:12px;padding:13px 18px;align-items:center}.record-head{background:#f4f7f9;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}.record-row{border-top:1px solid var(--line)}.record-row b,.record-row small{display:block}.record-row small{color:var(--muted);margin-top:3px}textarea{border:1px solid #cad6df;border-radius:8px;padding:12px;font:inherit;resize:vertical}@media(max-width:700px){.mobile-day-head{display:block}.mobile-contract-tools{display:grid}.mobile-contract-tools>div{justify-content:stretch}.mobile-contract-tools button,.mobile-contract-tools a{width:100%;text-align:center}.gps-badge{display:inline-block;margin-top:10px}.mobile-job{grid-template-columns:36px 1fr}.job-actions{grid-column:2;text-align:left}.record-head,.record-row{grid-template-columns:1.2fr .8fr 1fr}.record-head span:nth-child(4),.record-head span:nth-child(5),.record-row span:nth-child(4),.record-row span:nth-child(5){display:none}}
.generated-document-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin-top:10px}.generated-document-links a{display:block;padding:10px 12px;border-radius:9px;background:#fff;border:1px solid #b8e4cf;color:var(--blue);font-weight:800;text-decoration:none}.job-actions .contract-template-link{justify-self:end;padding:0;border:0;background:transparent;color:var(--blue);font-size:11px;font-weight:700;text-align:right;cursor:pointer}
.contract-automation-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;margin-top:10px}.contract-automation-summary small{display:block;border:1px solid #d6e8f0;border-radius:9px;background:#f7fbfd;color:#425464;padding:9px 10px;font-weight:800}
.contract-draft-notice{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;margin:10px 0 14px;padding:12px;border:1px solid #ffd88f;border-radius:12px;background:#fff9ec}.contract-draft-notice b,.contract-draft-notice span{display:block}.contract-draft-notice span{margin-top:3px;color:#7a5a17;font-size:12px}.contract-model-note{border:1px solid #cde3ee;border-left:5px solid var(--blue);border-radius:11px;background:#f4fbfe;color:#38586a;padding:11px 12px;font-size:12px;font-weight:800}.contract-result-checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin-top:12px}.contract-result-checklist span{display:block;border:1px solid #d6e8f0;border-radius:11px;background:#fff;padding:10px 11px;color:#425464;font-size:12px;font-weight:850}.contract-result-checklist span.done{border-color:#b8e4cf;background:#f5fbf8;color:#245a3b}.contract-result-checklist span.warn{border-color:#efd49d;background:#fff9ea;color:#7a5a17}.contract-next-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f8fbfd}.contract-next-actions button{min-height:42px}.contract-assistant-card label.field-invalid input,.contract-assistant-card label.field-invalid select,.contract-assistant-card label.field-invalid textarea{border-color:#d93444;background:#fff8f8;box-shadow:0 0 0 3px rgba(217,52,68,.08)}.contract-assistant-card .field-error{display:block;margin:3px 0 0;color:#b4232e;font-size:11px;font-weight:850}.contract-assistant-card .required-star{color:#d93444;font-weight:900}.contract-assistant-card .form-hint+.field-error{margin-top:-8px}@media(max-width:760px){.contract-draft-notice{grid-template-columns:1fr}.contract-draft-notice button,.contract-next-actions button{width:100%}.contract-next-actions{display:grid}}
.document-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.document-toolbar input,.document-toolbar select{min-width:220px}.document-summary{margin-bottom:14px}.document-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.document-summary-grid article{border:1px solid var(--line);border-radius:14px;background:#fff;padding:12px}.document-summary-grid span{display:block;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase}.document-summary-grid b{display:block;margin-top:4px;font-size:24px;color:#1f374b}.document-summary-grid small{display:block;color:var(--muted);margin-top:2px}.document-grid>.document-folder-grid{grid-column:1/-1}.document-folder-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:12px;width:100%}.document-folder{border:1px solid var(--line);border-left:5px solid #8fb4c9;border-radius:16px;background:#fff;padding:13px;min-width:0}.document-folder.document-contracts{border-left-color:#0ea5e9}.document-folder.document-assignment{border-left-color:#f59e0b}.document-folder.document-proofs{border-left-color:#22c55e}.document-folder.document-invoices{border-left-color:#8b5cf6}.document-folder.document-prescriptions{border-left-color:#ef4444}.document-folder.document-insurer{border-left-color:#06b6d4}.document-folder.document-other{border-left-color:#94a3b8}.document-folder-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:4px}.document-folder-head h4{margin:3px 0 2px}.document-folder-head p{margin:0;color:var(--muted);font-size:12px}.document-folder-icon{display:grid;place-items:center;min-width:34px;height:34px;border-radius:10px;background:#f1f7fb;color:#1f374b;font-weight:900}.document-folder-row{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid var(--line);padding:10px 0;cursor:pointer}.document-folder-row:first-of-type{border-top:0}.document-folder-row:hover{background:#f8fbfd}.document-folder-row b,.document-folder-row small{display:block;overflow-wrap:anywhere}.document-folder-row small{color:var(--muted);margin-top:3px}@media(max-width:720px){.document-toolbar{display:grid}.document-toolbar input,.document-toolbar select{min-width:0;width:100%}.document-folder-grid{grid-template-columns:1fr}.document-folder-row{display:grid}}
.pending-substitution-card,.calendar-event.pending-substitution{border-color:#f1c76a;background:#fff9ea}.pending-substitution-card .job-sequence{background:#d49400}.calendar-event.pending-substitution small{color:#996b00;font-weight:800}
.sub-row-conflict{background:#fff9ea}.sub-conflict-banner{display:inline-block;margin-top:7px;padding:7px 9px;border-radius:9px;background:#fff0d5;color:#8a5a00;font-size:12px;font-weight:800}.sub-offer-controls{display:grid;gap:6px;justify-items:end}.sub-offer-controls>div{display:flex;gap:6px}.sub-offer-controls input{padding:7px 8px;font-size:12px}.conflict-note{color:#9b650d;font-weight:800;max-width:230px;text-align:right}
nav button{position:relative}.nav-badge{position:absolute;right:10px;top:7px;min-width:19px;height:19px;border-radius:999px;background:#d93444;color:#fff;font-size:10px;font-style:normal;font-weight:900;display:grid;place-items:center;padding:0 5px;box-shadow:0 0 0 2px #fff}
.client-record-card{width:min(1320px,calc(100vw - 44px));max-height:92vh;overflow-y:auto;overflow-x:hidden}.client-record-content{display:grid;gap:14px;min-width:0}.record-master{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-width:0}.record-master article{border:1px solid var(--line);border-radius:10px;background:#f8fbfd;padding:12px;min-width:0}.record-master span,.record-master b{display:block;min-width:0;overflow-wrap:anywhere}.record-master span{font-size:10px;color:var(--muted);font-weight:850;text-transform:uppercase}.record-master b{margin-top:4px;font-size:13px}.record-sections{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;min-width:0}.record-sections .panel{box-shadow:none;min-width:0;overflow-wrap:anywhere}.record-mini-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid var(--line);padding:10px 0;min-width:0}.record-mini-row:first-of-type{border-top:0}.record-mini-row>span{min-width:0}.record-mini-row b,.record-mini-row small{display:block;overflow-wrap:anywhere}.record-mini-row small{color:var(--muted);margin-top:3px}.client-record-button{display:block;margin-top:4px}@media(max-width:1100px){.record-master{grid-template-columns:repeat(2,minmax(0,1fr))}.record-sections{grid-template-columns:1fr}.client-record-card{width:min(980px,calc(100vw - 28px))}}@media(max-width:800px){.record-master,.record-sections{grid-template-columns:1fr}.client-record-card{max-height:88vh;width:100%}}
.client-record-toolbar{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin:8px 0 14px;padding:9px;border:1px solid var(--line);border-radius:14px;background:#f8fbfd}.client-record-toolbar button{padding:8px 10px;font-size:12px}.focus-flash{animation:recordFocusFlash 1.6s ease}@keyframes recordFocusFlash{0%,100%{box-shadow:0 0 0 rgba(0,124,191,0)}20%{box-shadow:0 0 0 5px rgba(0,124,191,.16)}55%{box-shadow:0 0 0 10px rgba(0,124,191,.08)}}@media(max-width:800px){.client-record-toolbar{display:grid;grid-template-columns:1fr 1fr}.client-record-toolbar button{width:100%}}
.record-contract-sections{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)}
.record-contract-list{display:grid;gap:12px}
.record-contract-card{border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,#f7fcff,#fff);padding:16px;box-shadow:0 12px 28px rgba(15,35,55,.08)}
.record-contract-main{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap}
.record-contract-main h3{margin:0;font-size:19px}.record-contract-main p{margin:6px 0 0;color:var(--muted)}
.record-contract-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.record-contract-facts span{border:1px solid var(--line);border-radius:13px;background:#fff;padding:10px;min-width:0}
.record-contract-facts b,.record-contract-facts small{display:block;overflow-wrap:anywhere}.record-contract-facts b{font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em}.record-contract-facts small{margin-top:4px;color:#1d2b39}
.record-contract-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
@media(max-width:900px){.record-contract-sections,.record-contract-facts{grid-template-columns:1fr}}
.clickable-record-row{cursor:pointer;border-radius:8px;padding-left:8px;padding-right:8px}.clickable-record-row:hover{background:#f2f8fc}.clickable-record-row:active{background:#e8f6fc}
.record-muted{color:var(--muted);font-size:12px;margin-top:-6px}.record-timeline{display:grid;gap:0;margin-top:8px}.timeline-item{display:grid;grid-template-columns:18px 1fr;gap:10px;position:relative;padding:0 0 14px}.timeline-item:before{content:"";position:absolute;left:7px;top:18px;bottom:0;width:2px;background:#dce7ee}.timeline-item:last-child:before{display:none}.timeline-dot{width:14px;height:14px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px #e7f5fb;margin-top:4px}.timeline-item span{display:inline-flex;width:max-content;border-radius:14px;background:#edf5f9;color:#517084;font-size:10px;font-weight:850;padding:4px 7px;text-transform:uppercase}.timeline-item b,.timeline-item small{display:block}.timeline-item b{margin-top:4px}.timeline-item small{color:var(--muted);margin-top:2px}.timeline-item p{margin:5px 0 0;color:#3f5262;font-size:12px}.timeline-service_record .timeline-dot,.timeline-invoice_paid .timeline-dot{background:var(--green);box-shadow:0 0 0 4px #e8f7f1}.timeline-substitution .timeline-dot,.timeline-substitution_approved .timeline-dot{background:#d49400;box-shadow:0 0 0 4px #fff4d8}.timeline-invoice .timeline-dot{background:#6f6ad7;box-shadow:0 0 0 4px #eeeeff}
.timeline-assignment .timeline-dot{background:#007cbf;box-shadow:0 0 0 4px #dff3fc}.assignment-panel{border-color:#b9dceb;background:linear-gradient(180deg,#ffffff,#f6fbfe)}.assignment-status-line{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:4px 0 12px}.assignment-status-line small{color:var(--muted)}.assignment-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.assignment-facts span{border:1px solid var(--line);border-radius:9px;background:#fff;padding:10px;color:#425464;font-size:12px}.assignment-facts b{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;margin-bottom:3px}.assignment-docs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.assignment-docs small{color:var(--muted)}.assignment-panel textarea{width:100%;box-sizing:border-box}.assignment-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}@media(max-width:800px){.assignment-facts{grid-template-columns:1fr}.assignment-actions button{width:100%}}
.assignment-primary-box{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:10px 0 12px;padding:13px 14px;border-radius:14px;border:1px solid #cfe4ee;background:#f4fbfe}.assignment-primary-box.warn{border-color:#ffdba4;background:#fff8ea}.assignment-primary-box.ready{border-color:#bce8cd;background:#f5fbf8}.assignment-primary-box.done{border-color:#dbe5ec;background:#f6f8fa}.assignment-primary-box b,.assignment-primary-box small{display:block}.assignment-primary-box small{margin-top:3px;color:var(--muted);font-size:12px}.assignment-primary-box button{white-space:nowrap}@media(max-width:800px){.assignment-primary-box{display:grid}.assignment-primary-box button{width:100%}}
.assignment-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.assignment-step{display:flex;gap:9px;align-items:flex-start;border:1px solid var(--line);border-radius:11px;background:#fff;padding:10px}.assignment-step>span{display:grid;place-items:center;min-width:22px;height:22px;border-radius:999px;font-weight:800;font-size:12px}.assignment-step.done>span{background:#dff8ea;color:#147c3d}.assignment-step.warn>span{background:#fff2d8;color:#a46100}.assignment-step b{display:block;font-size:12px;color:#203040}.assignment-step small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.assignment-step.warn{border-color:#ffdba4;background:#fffaf2}.assignment-step.done{border-color:#bce8cd;background:#fbfffd}@media(max-width:900px){.assignment-checklist{grid-template-columns:1fr}}
.assignment-step{width:100%;font:inherit;text-align:left;color:inherit}.assignment-step-action{cursor:pointer}.assignment-step-action:hover{border-color:#f2b94f;background:#fff3d7;transform:translateY(-1px);box-shadow:0 8px 18px rgba(164,97,0,.12)}.assignment-step-action:active{transform:translateY(0)}
.record-warning-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;cursor:pointer}.record-warning-row small{color:#007cbf;font-weight:850;white-space:nowrap}.record-warning-row:hover{background:#fff0cf;border-color:#f2b94f;box-shadow:0 8px 18px rgba(164,97,0,.1)}
.record-action-panel{border-color:#cfe4ee;background:linear-gradient(180deg,#fff,#f6fbfe)}
.record-action-item{width:100%;display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;margin-top:8px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff;text-align:left;cursor:pointer;color:#203040}
.record-action-item>span{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:#e8f6fc;color:#007cbf;font-weight:950}
.record-action-item b,.record-action-item small{display:block}.record-action-item small{margin-top:3px;color:var(--muted);font-weight:750}
.record-action-item.warn{border-color:#ffdba4;background:#fffaf2}.record-action-item.warn>span{background:#fff0d5;color:#9b650d}
.record-action-item:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(31,55,75,.1);border-color:#8ccbe8}
.record-action-empty{margin-top:8px;padding:12px;border-radius:12px;background:#f5fbf8;border:1px solid #bce8cd;color:#245a3b;font-weight:850}
.assignment-sign-box{margin:12px 0;padding:13px;border:1px solid #b9dceb;border-radius:14px;background:#f7fcff}.assignment-sign-box h4{margin:0 0 5px;color:#1f374b}.assignment-sign-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:8px;margin:8px 0}.assignment-sign-grid label{font-size:12px;font-weight:850;color:#425464}.assignment-sign-grid input{width:100%;box-sizing:border-box;margin-top:4px}.assignment-sign-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}@media(max-width:800px){.assignment-sign-grid{grid-template-columns:1fr}.assignment-sign-actions button{width:100%}.assignment-sign-actions .pill{width:100%;justify-content:center}}
.record-work-panel{align-content:start}.record-form{display:grid;gap:8px;margin:8px 0 12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f8fbfd}.record-task-form{grid-template-columns:1.3fr .8fr .7fr .8fr auto;align-items:center}.record-form textarea{width:100%;box-sizing:border-box}.record-check{display:flex;align-items:center;gap:8px;margin:2px 0;color:#425464;font-size:12px;font-weight:750}.record-check input{width:auto}.note-task-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.record-note{border-top:1px solid var(--line);padding:10px 0}.record-note:first-of-type{border-top:0}.record-note>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.record-note small{color:var(--muted);font-size:11px}.record-note p{white-space:pre-wrap;margin:7px 0 0;color:#2f4050}.record-task.task-done{opacity:.62}.record-task.task-done b{text-decoration:line-through}@media(max-width:980px){.record-task-form,.note-task-options{grid-template-columns:1fr}.record-task-form button{width:100%}}
.worktime-panel{margin-top:16px}.worktime-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.worktime-summary article{border:1px solid var(--line);border-left:5px solid #4caf4f;border-radius:10px;padding:12px;background:#fbfdfb}.worktime-summary article.approved{border-left-color:#18845b;background:#f0faf2}.worktime-summary article.needs-datev{border-left-color:#d49400;background:#fffaf0}.worktime-summary span,.worktime-summary small{display:block;color:var(--muted)}.worktime-summary b{display:block;font-size:22px;margin:3px 0;color:#1f374b}.worktime-warning{color:#8b650d!important;font-weight:800;margin-top:5px}.worktime-approval-line{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px}.worktime-approval-line button{padding:8px 10px}.worktime-actions{display:flex!important;align-items:center;gap:7px;flex-wrap:wrap}.worktime-table{border:1px solid var(--line);border-radius:10px;overflow:hidden}.worktime-head,.worktime-row{display:grid;grid-template-columns:1.2fr .8fr .6fr .8fr .8fr .8fr .8fr;gap:10px;align-items:center;padding:11px 13px}.worktime-head{background:#f4f7f9;color:var(--muted);font-size:10px;font-weight:850;text-transform:uppercase}.worktime-row{border-top:1px solid var(--line);font-size:13px}.worktime-row.approved{background:#f8fdf9}.mobile-work-card{max-width:850px;margin-bottom:14px;border-left:5px solid #4caf4f;background:linear-gradient(180deg,#fff,#f8fcf9);display:grid;gap:13px}.mobile-work-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:11px}.mobile-work-head h3{margin:4px 0}.mobile-work-head p{margin:0;color:var(--muted)}.mobile-work-status{border:1px solid #cfe9d5;background:#f0faf2;border-radius:12px;padding:12px 14px}.mobile-work-status strong,.mobile-work-status span{display:block}.mobile-work-status span{color:var(--muted);font-size:12px;margin-top:3px}.mobile-work-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.mobile-work-facts span{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff}.mobile-work-facts b,.mobile-work-facts small{display:block}.mobile-work-facts b{font-size:20px;margin-top:3px}.mobile-work-facts small{color:var(--muted);font-size:11px;text-transform:uppercase;font-weight:850}.mobile-work-actions{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:9px;border-top:1px solid var(--line);padding-top:12px}.mobile-work-actions button{min-height:46px}.mobile-work-actions .main-work-action{font-size:15px}.mobile-work-actions button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:1100px){.employee-cockpit{grid-template-columns:repeat(2,1fr)}.employee-kpi-main{grid-column:span 2}.employee-facts{grid-template-columns:1fr}}@media(max-width:900px){.worktime-summary,.mobile-work-facts{grid-template-columns:1fr 1fr}.worktime-head,.worktime-row{grid-template-columns:1fr 1fr}.worktime-head span:nth-child(n+4),.worktime-row span:nth-child(n+4){display:none}.mobile-work-actions{grid-template-columns:1fr 1fr}}@media(max-width:560px){.employee-cockpit,.employee-kpi-main{grid-template-columns:1fr;grid-column:auto}.employee-card-head{grid-template-columns:auto 1fr}.employee-card-head .pill{grid-column:1/-1}.employee-card-actions button{width:100%}.mobile-work-head{display:grid}.mobile-work-facts,.mobile-work-actions,.worktime-summary{grid-template-columns:1fr}.mobile-work-actions button{width:100%}.worktime-approval-line{display:grid}}
.mobile-top-actions{display:none}.mobile-proof-hint{max-width:850px;margin:0 0 12px;padding:12px 14px;border:1px solid #b9d9c0;border-radius:12px;background:#f4fbf6;color:#315940}.mobile-proof-hint b,.mobile-proof-hint span{display:block}.mobile-proof-hint span{font-size:12px;margin-top:3px}.mobile-date-actions{display:flex;align-items:center;gap:8px}.mobile-date-actions input{padding:8px}.confirmation-check{display:flex;grid-template-columns:auto 1fr;align-items:flex-start;gap:9px;background:#f5f8fa;border-radius:8px;padding:12px}.confirmation-check input{width:auto;margin-top:2px}
.mobile-quick-jumps{display:none}
.mobile-shared-jumps{display:none}
.iphone-access-card{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:30;
  width:min(430px,calc(100vw - 36px));
  border:1px solid #b8dceb;
  border-left:6px solid #007cbf;
  border-radius:18px;
  background:#ffffffee;
  box-shadow:0 18px 45px #1f374b26;
  backdrop-filter:blur(12px);
  padding:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.iphone-access-close{
  position:absolute;
  top:7px;
  right:7px;
  width:28px;
  height:28px;
  min-height:0!important;
  border:0!important;
  border-radius:50%!important;
  padding:0!important;
  background:#eef3f6!important;
  color:#526171!important;
  font-size:18px!important;
  line-height:1!important;
  font-weight:900!important;
}
.iphone-access-card[hidden]{
  display:none;
}
.iphone-access-card span,.iphone-access-card b,.iphone-access-card small{
  display:block;
}
.iphone-access-card span{
  color:#007cbf;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.iphone-access-card b{
  margin-top:4px;
  color:#1f374b;
  font-size:14px;
  word-break:break-all;
}
.iphone-access-card small{
  margin-top:3px;
  color:var(--muted);
  font-size:11px;
}
.iphone-access-card>div:last-child{
  display:grid;
  gap:7px;
  min-width:92px;
}
.iphone-access-card a,.iphone-access-card button{
  border:1px solid #d5e3eb;
  border-radius:12px;
  min-height:38px;
  padding:8px 11px;
  background:#fff;
  color:#007cbf;
  text-decoration:none;
  font-weight:900;
  text-align:center;
}
.iphone-access-card a:first-child{
  background:#007cbf;
  color:#fff;
  border-color:#007cbf;
}
.iphone-access-card a.disabled{
  pointer-events:none;
  opacity:.45;
}
.view-context-menu{
  position:fixed;
  z-index:90;
  width:220px;
  display:grid;
  gap:6px;
  padding:8px;
  border:1px solid #d5e3eb;
  border-radius:14px;
  background:#fff;
  box-shadow:0 16px 42px #17212b2b;
}
.view-context-menu[hidden]{
  display:none;
}
.view-context-menu button{
  border:0;
  border-radius:10px;
  background:#f4f8fb;
  color:#1f374b;
  min-height:42px;
  padding:10px 12px;
  text-align:left;
  font-weight:850;
  cursor:pointer;
}
.view-context-menu button:hover{
  background:#e8f6fc;
  color:#007cbf;
}
.employee-work-rule{margin-top:10px;border-top:1px solid var(--line);padding-top:9px;display:grid;gap:6px}.employee-work-rule span{font-size:11px;color:var(--muted);line-height:1.4}.employee-work-rule button{justify-self:center}.mobile-work-rule-note{border:1px dashed #b9d9c0;background:#f8fdf9;border-radius:10px;padding:9px 11px;color:#42634b;font-size:12px;font-weight:750}
.mobile-live-timer{border:1px solid var(--line);border-radius:16px;padding:16px;background:#f6f9fb;display:grid;gap:4px}.mobile-live-timer small,.mobile-live-timer strong,.mobile-live-timer span{display:block}.mobile-live-timer small{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.mobile-live-timer strong{font-size:42px;line-height:1;font-variant-numeric:tabular-nums;color:#1f374b}.mobile-live-timer span{color:var(--muted);font-size:12px}.mobile-live-timer.running{border-color:#9dddb1;background:linear-gradient(135deg,#e8f7f1,#ffffff);box-shadow:0 10px 30px #18845b14}.mobile-live-timer.running strong{color:#147c3d}.mobile-live-timer.break-mode,.mobile-live-timer.warn{border-color:#f1c76a;background:linear-gradient(135deg,#fff4d8,#ffffff)}.mobile-live-timer.break-mode strong,.mobile-live-timer.warn strong{color:#9b650d}
.service-sheet-actions{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:12px}.sheet-download{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px 12px;color:var(--blue);text-decoration:none;font-weight:700}.signature-capture{margin-top:14px}.signature-capture>div{display:flex;justify-content:space-between;align-items:center}.signature-capture canvas{display:block;width:100%;height:150px;border:2px solid #aebdc7;border-radius:8px;background:#fff;touch-action:none;margin-top:7px}.signature-capture small{display:block;color:var(--muted);margin-top:5px}
.exception-notice{background:#fff4dc;border:1px solid #efd49d;border-radius:8px;padding:12px;color:#7d5714}.exception-notice b,.exception-notice span{display:block}.exception-notice span{font-size:11px;margin-top:4px}.exception-action{color:#9b650d!important}
@media(max-width:760px){.contract-assistant-card .contract-signature canvas{pointer-events:none;opacity:.72}.contract-assistant-card .contract-signature .signature-open-fullscreen{min-height:66px;background:#007cbf;color:#fff;font-size:17px;box-shadow:0 12px 24px #007cbf2b}.contract-assistant-card .contract-signature small{font-weight:850;color:#466273}}
.danger{border-color:#efc3c8!important;background:#fff6f7!important;color:#b7343b!important}.danger:hover{background:#ffecef!important;border-color:#df9aa2!important}.timeline-plan .timeline-dot{background:#d49400;box-shadow:0 0 0 4px #fff4d8}
.complete-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:12px 0}.complete-steps span{border:1px solid var(--line);border-radius:999px;padding:7px 8px;background:#f8fbfd;color:#486071;font-size:11px;font-weight:850;text-align:center}.complete-step{border:1px solid var(--line);border-radius:13px;background:#f8fbfd;padding:13px;margin-top:10px}.complete-step>b{display:block;margin-bottom:8px}.complete-step label{margin-top:0}.complete-signature{border:1px solid var(--line);border-radius:13px;background:#f8fbfd;padding:13px}.complete-signature canvas{height:220px}
.mobile-version-badge{display:none}.mobile-focus{display:grid;gap:11px;max-width:850px;margin-bottom:12px}.mobile-next-card,.mobile-after-card,.mobile-traffic-card article{border:1px solid var(--line);border-radius:16px;background:#fff;padding:16px;box-shadow:0 8px 28px #1f374b0c}.mobile-next-card>span,.mobile-after-card>span,.mobile-traffic-card span{display:block;color:var(--blue);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.mobile-next-card h3{font-size:28px;margin:5px 0 4px}.mobile-next-card p,.mobile-next-card small,.mobile-after-card small,.mobile-traffic-card small{display:block;color:var(--muted);margin-top:3px}.mobile-next-card.running{border-color:#90d8ae;background:linear-gradient(135deg,#eefaf2,#fff)}.mobile-next-card.done{border-color:#b8e4cf;background:#f4fbf6}.mobile-next-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:13px}.mobile-next-actions a,.mobile-next-actions button,.mobile-next-actions .pill{min-height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;font-weight:900}.mobile-next-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.mobile-after-card b,.mobile-traffic-card b{display:block;margin-top:4px}.mobile-traffic-card{max-width:850px;margin-bottom:12px}.mobile-traffic-card article.warn{border-color:#f1c76a;background:#fff9ea}.mobile-traffic-card a{display:inline-flex;margin-top:10px;color:var(--blue);font-weight:850;text-decoration:none}.mobile-all-jobs{max-width:850px;margin-top:12px}.mobile-all-jobs>summary{cursor:pointer;border:1px solid var(--line);border-radius:16px;background:#fff;padding:14px 16px;color:var(--blue);font-weight:900;list-style:none}.mobile-all-jobs>summary::-webkit-details-marker{display:none}.mobile-all-jobs>summary:after{content:"⌄";float:right}.mobile-all-jobs[open]>summary:after{content:"⌃"}.mobile-all-jobs[open] .mobile-jobs{margin-top:12px}

/* iPhone-/Diensthandy-Optimierung für "Meine Einsätze" */
#mobile-view{max-width:900px;overflow-x:hidden}
#mobile-view *{box-sizing:border-box;min-width:0}
@media(max-width:760px){
  main:has(#mobile-view.active){overflow-x:hidden}
  #mobile-view.view{padding:12px;max-width:100vw}
  .mobile-day-head{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:12px}
  .mobile-day-head .eyebrow{margin-top:0}
  .mobile-day-head h2{font-size:21px;line-height:1.15;margin:3px 0}
  .mobile-day-head p{font-size:12px;line-height:1.35}
  .mobile-date-actions{display:grid;grid-template-columns:1fr;gap:8px;align-items:stretch}
  .mobile-date-actions input{width:100%;min-height:44px}
  .gps-badge{display:block;width:100%;margin:0;text-align:center;border-radius:12px}
  .mobile-work-card,.mobile-contract-tools,.mobile-jobs{width:100%;max-width:none}
  .mobile-work-card{padding:14px;border-radius:15px;gap:10px}
  .mobile-work-head{display:grid;gap:8px;padding-bottom:10px}
  .mobile-work-head h3{font-size:18px;line-height:1.2}
  .mobile-work-head p{font-size:12px;line-height:1.35}
  .mobile-work-head .pill{width:100%;justify-content:center}
  .mobile-work-status{padding:10px 11px;border-radius:11px}
  .mobile-work-status span{font-size:11px}
  .mobile-live-timer{padding:14px;border-radius:14px}
  .mobile-live-timer strong{font-size:38px}
  .mobile-work-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .mobile-work-facts span{padding:10px}
  .mobile-work-facts b{font-size:18px}
  .mobile-work-facts small{font-size:10px}
  .mobile-work-rule-note{font-size:11px;line-height:1.35}
  .mobile-work-actions{grid-template-columns:1fr;gap:8px;padding-top:10px}
  .mobile-work-actions button{width:100%;min-height:52px;border-radius:12px;font-size:15px}
  .mobile-contract-tools{display:grid;gap:10px;padding:12px;border-radius:13px;margin:0 0 12px}
  .mobile-contract-tools>div{display:grid;grid-template-columns:1fr;gap:8px;justify-content:stretch}
  .mobile-contract-tools button,.mobile-contract-tools a{width:100%;min-height:46px;display:flex;align-items:center;justify-content:center;text-align:center}
  .mobile-jobs{gap:10px}
  .mobile-job{grid-template-columns:38px minmax(0,1fr);align-items:start;gap:10px;padding:14px;border-radius:15px}
  .job-sequence{width:34px;height:34px;font-size:14px}
  .job-main{overflow-wrap:anywhere}
  .job-time{font-size:11px}
  .job-main h3{font-size:17px;line-height:1.15;margin:3px 0}
  .job-main p,.job-main small{font-size:12px;line-height:1.35}
  .job-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px;text-align:left;margin-top:2px}
  .job-actions button,.job-actions a,.job-actions .pill{width:100%;min-height:46px;border-radius:12px;padding:10px 12px;display:flex;align-items:center;justify-content:center;text-align:center;white-space:normal;font-size:12px}
  .job-actions a{border:1px solid var(--line);background:#fff}
  .job-actions .start-job,.job-actions .finish-job{grid-column:1/-1;font-size:15px}
  .job-actions .paper-proof{border:1px solid #efd49d;background:#fff9ea}
  .job-actions .contract-template-link{justify-self:stretch;padding:10px 12px;border:1px solid var(--line);background:#fff;text-align:center}
  .empty-mobile{padding:16px;border-radius:15px}
  .service-sheet-actions{display:grid;grid-template-columns:1fr;gap:8px}
  .service-sheet-actions button,.service-sheet-actions a{width:100%;justify-content:center}
  .signature-capture>div{display:grid;gap:6px;align-items:start}
  .signature-capture canvas{height:210px}
}
@media(max-width:390px){
  .mobile-work-facts,.job-actions{grid-template-columns:1fr}
}

/* Vereinfachter Kachelmodus für Diensthandys */
@media(max-width:760px){
  #app[data-active-view="mobile"] header{display:none}
  #app[data-active-view="mobile"] main{background:#f4f8fb}
  #app[data-active-view="mobile"] #mobile-view.view{padding:14px 12px 22px}
  #app[data-active-view="mobile"] .mobile-day-head{position:sticky;top:0;z-index:5;margin:-14px -12px 12px;padding:12px;background:rgba(244,248,251,.96);backdrop-filter:blur(12px);border-bottom:1px solid #dce7ee}
  #app[data-active-view="mobile"] .mobile-top-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  #app[data-active-view="mobile"] .mobile-top-actions button{min-height:44px;border-radius:14px;background:#fff;font-weight:850;color:#1f374b}
  #app[data-active-view="mobile"] .mobile-day-head p,.gps-badge{display:none}
  #app[data-active-view="mobile"] .mobile-day-head h2{font-size:22px}
  #app[data-active-view="mobile"] .mobile-version-badge{display:block;margin:0 0 10px;padding:8px 10px;border-radius:999px;background:#e8f6fc;color:var(--blue);font-size:11px;font-weight:900;text-align:center}
  #app[data-active-view="mobile"] .mobile-date-actions input{border-radius:14px;background:#fff;font-weight:800;color:#1f374b}
  #app[data-active-view="mobile"] .mobile-quick-jumps{display:none}
  #app[data-active-view="mobile"] .mobile-quick-jumps button{min-height:44px;border:1px solid #d5e3eb;border-radius:15px;background:#fff;color:#466273;font-weight:900}
  #app[data-active-view="mobile"] .mobile-quick-jumps button.active{border-color:#007cbf;background:#e8f6fc;color:#007cbf;box-shadow:inset 0 -3px 0 #007cbf}
  #app[data-active-view="mobile"] .mobile-shared-jumps{display:none}
  #app[data-active-view="records"] .mobile-shared-jumps,
  #app[data-active-view="messages"] .mobile-shared-jumps{display:none}
  #app[data-active-view="records"] .mobile-shared-jumps button,
  #app[data-active-view="messages"] .mobile-shared-jumps button{
    min-height:50px;
    border:1px solid #d5e3eb;
    border-radius:16px;
    background:#fff;
    color:#466273;
    font-weight:950;
    font-size:15px;
  }
  #app[data-active-view="records"] .mobile-shared-jumps button.active,
  #app[data-active-view="messages"] .mobile-shared-jumps button.active{
    border-color:#007cbf;
    background:#e8f6fc;
    color:#007cbf;
    box-shadow:inset 0 -3px 0 #007cbf;
  }
  #app[data-active-view="records"] main,
  #app[data-active-view="messages"] main{
    background:#f4f8fb;
  }
  #app[data-active-view="mobile"] .mobile-work-card{border:0;border-radius:22px;padding:16px;box-shadow:0 12px 32px #1f374b12;background:#fff}
  #app[data-active-view="mobile"] .mobile-focus,#app[data-active-view="mobile"] .mobile-traffic-card,#app[data-active-view="mobile"] .mobile-all-jobs{max-width:none;width:100%}
  #app[data-active-view="mobile"] .mobile-next-card{border:0;border-radius:26px;padding:20px;box-shadow:0 14px 36px #1f374b16}
  #app[data-active-view="mobile"] .mobile-next-card h3{font-size:31px;line-height:1.05}
  #app[data-active-view="mobile"] .mobile-next-card p{font-size:15px}
  #app[data-active-view="mobile"] .mobile-next-card small{font-size:14px}
  #app[data-active-view="mobile"] .mobile-next-actions{grid-template-columns:1fr;gap:10px}
  #app[data-active-view="mobile"] .mobile-next-actions a,#app[data-active-view="mobile"] .mobile-next-actions button,#app[data-active-view="mobile"] .mobile-next-actions .pill{width:100%;max-width:100%;min-height:62px;border-radius:18px;font-size:17px;display:flex;align-items:center;justify-content:center;text-align:center;white-space:normal;overflow:hidden;overflow-wrap:anywhere;line-height:1.15;box-sizing:border-box}
  #app[data-active-view="mobile"] .mobile-after-card,#app[data-active-view="mobile"] .mobile-traffic-card article{border:0;border-radius:20px;padding:15px 16px;box-shadow:0 8px 24px #1f374b0e}
  #app[data-active-view="mobile"] .mobile-proof-hint{display:none}
  #app[data-active-view="mobile"] .mobile-proof-hint{margin:0 0 14px;border:0;border-radius:18px;padding:14px 16px;box-shadow:0 8px 24px #18845b10;background:#eefaf2}
  #app[data-active-view="mobile"] .mobile-proof-hint span{font-size:13px;line-height:1.35}
  #app[data-active-view="mobile"] .mobile-work-head{border:0;padding:0}
  #app[data-active-view="mobile"] .mobile-work-head p,.mobile-work-rule-note,#app[data-active-view="mobile"] .record-muted{display:none}
  #app[data-active-view="mobile"] .mobile-live-timer{border-radius:22px;padding:18px}
  #app[data-active-view="mobile"] .mobile-live-timer strong{font-size:46px}
  #app[data-active-view="mobile"] .mobile-work-facts{display:none}
  #app[data-active-view="mobile"] .mobile-work-actions{border:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
  #app[data-active-view="mobile"] .mobile-work-actions .main-work-action{grid-column:1/-1;min-height:64px;font-size:18px;border-radius:18px}
  #app[data-active-view="mobile"] .mobile-work-actions button{min-height:56px;border-radius:17px;font-size:15px}
  #app[data-active-view="mobile"] .mobile-contract-tools{order:5;margin-top:12px;border-style:dashed;background:transparent;box-shadow:none}
  #app[data-active-view="mobile"] .mobile-contract-tools span{font-size:11px}
  #app[data-active-view="mobile"] .mobile-jobs{gap:14px}
  #app[data-active-view="mobile"] .mobile-job{grid-template-columns:44px minmax(0,1fr);padding:18px;border:0;border-radius:24px;box-shadow:0 12px 32px #1f374b14;background:#fff}
  #app[data-active-view="mobile"] .mobile-job.active-job{box-shadow:0 0 0 3px #bfe9fa,0 14px 34px #007cbf18}
  #app[data-active-view="mobile"] .job-sequence{width:40px;height:40px;font-size:17px}
  #app[data-active-view="mobile"] .job-time{font-size:13px}
  #app[data-active-view="mobile"] .job-main h3{font-size:24px;margin:6px 0 4px}
  #app[data-active-view="mobile"] .job-main p{font-size:15px;color:#425464}
  #app[data-active-view="mobile"] .job-main small{font-size:13px}
  #app[data-active-view="mobile"] .job-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr;gap:9px;margin-top:6px}
  #app[data-active-view="mobile"] .mobile-primary-action,#app[data-active-view="mobile"] .mobile-main-pill{width:100%;max-width:100%;min-height:64px;border-radius:18px;font-size:18px;font-weight:900;display:flex;align-items:center;justify-content:center;text-align:center;white-space:normal;overflow:hidden;overflow-wrap:anywhere;line-height:1.15;padding:12px 14px}
  #app[data-active-view="mobile"] .mobile-primary-action{box-sizing:border-box}
  #app[data-active-view="mobile"] .job-more{border:1px solid var(--line);border-radius:16px;background:#f8fbfd;overflow:hidden}
  #app[data-active-view="mobile"] .job-more summary{min-height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--blue);font-weight:850;list-style:none}
  #app[data-active-view="mobile"] .job-more summary::-webkit-details-marker{display:none}
  #app[data-active-view="mobile"] .job-more summary:after{content:"⌄";margin-left:8px}
  #app[data-active-view="mobile"] .job-more[open] summary:after{content:"⌃"}
  #app[data-active-view="mobile"] .job-more>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 10px 10px}
  #app[data-active-view="mobile"] .job-more button,#app[data-active-view="mobile"] .job-more a{min-height:48px;border-radius:14px}
  .iphone-access-card{display:none}
}
@media(max-width:390px){
  #app[data-active-view="mobile"] .job-more>div,#app[data-active-view="mobile"] .mobile-work-actions{grid-template-columns:1fr}
}
@media(max-width:760px){
  .mobile-complete-card{border-radius:22px;padding:18px}
  .mobile-complete-card .eyebrow{margin-top:8px}
  .mobile-complete-card h2{font-size:24px;line-height:1.15;margin:6px 34px 12px 0}
  .complete-steps{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 14px}
  .complete-steps span{padding:9px 8px}
  .complete-step{padding:14px;border-radius:17px;margin-top:11px;background:#fff;box-shadow:0 6px 18px #1f374b0a}
  .complete-step>b{font-size:16px}
  .mobile-complete-card label{font-size:13px}
  .mobile-complete-card input,.mobile-complete-card textarea{min-height:52px;border-radius:14px;font-size:16px}
  .mobile-complete-card textarea{min-height:112px}
  .complete-signature{border-radius:17px;background:#fff;box-shadow:0 6px 18px #1f374b0a}
  .complete-signature>div{display:grid;grid-template-columns:1fr;gap:8px}
  .complete-signature canvas{height:260px;border-radius:15px;border-width:2px}
  .confirmation-check{border-radius:16px;font-size:13px;line-height:1.35}
  .confirmation-check input{min-height:auto}
  .mobile-complete-card .signature-box{border-radius:16px}
  .mobile-complete-card .actions{display:grid;grid-template-columns:1fr;gap:9px}
  .mobile-complete-card .actions button{width:100%;max-width:100%;min-height:56px;border-radius:16px;font-size:16px;white-space:normal;overflow-wrap:anywhere;line-height:1.15}
}
@media(max-width:360px){
  #app[data-active-view="mobile"] .mobile-primary-action,#app[data-active-view="mobile"] .mobile-main-pill{font-size:16px;padding-left:10px;padding-right:10px}
  .mobile-complete-card .actions button{font-size:15px}
}

.record-more-list{
  margin-top:10px;
  border:1px dashed var(--line);
  border-radius:12px;
  background:#f8fbfd;
  overflow:hidden;
}
.record-more-list summary{
  padding:12px 14px;
  cursor:pointer;
  color:var(--blue);
  font-weight:850;
  list-style:none;
}
.record-more-list summary::-webkit-details-marker{display:none}
.record-more-list summary:after{content:"⌄";margin-left:8px}
.record-more-list[open] summary:after{content:"⌃"}
.record-more-list .record-mini-row{
  margin:0 10px 8px;
  background:#fff;
}
.record-budget-row{
  align-items:flex-start;
  background:#f8fbfd;
  border:1px solid var(--line);
  border-radius:12px;
  margin-bottom:8px;
  padding:12px;
}
.record-budget-row strong{
  display:inline-block;
  margin-bottom:4px;
}
.record-budget-row small{
  line-height:1.35;
}
.record-contact-list{
  display:grid;
  gap:10px;
}
.record-contact-card{
  border:1px solid var(--line);
  border-radius:13px;
  background:#fff;
  padding:12px;
}
.record-contact-card h4{
  margin:0 0 3px;
}
.record-contact-card p{
  margin:0 0 6px;
}
.record-contact-card small{
  color:var(--muted);
}
.contact-flags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:8px;
}
.record-contact-form{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.record-contact-form textarea,
.record-contact-form button{
  grid-column:1/-1;
}

.record-warning-banner{
  grid-column:1/-1;
  width:100%;
  border:1px solid #f0b7bd;
  border-radius:12px;
  background:#fff1f2;
  color:#9c1f2b;
  padding:12px 14px;
  font-weight:900;
}
.record-row.needs-signature{
  cursor:pointer;
  background:#fffaf1;
}
.record-row.record-open.is-fixed{
  cursor:pointer;
}
.record-row.record-open.is-fixed:hover{
  background:#f2f8fc;
  box-shadow:inset 4px 0 0 #007cbf;
}
.record-row.needs-signature:hover{
  background:#fff2d7;
  box-shadow:inset 4px 0 0 #f26a2d;
}
.record-row.needs-signature.overdue{
  background:#fff0f2;
}
.record-row.needs-signature.today{
  background:#fff8e6;
}
.record-row .record-signature-action{
  display:block;
  margin-top:6px;
  text-align:left;
}
.record-month-summary{
  display:grid;
  gap:14px;
  margin-bottom:14px;
}
.record-month-kpis{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.record-month-kpis article{
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  padding:14px 16px;
  box-shadow:0 8px 24px #1f374b0a;
}
.record-month-kpis article.ok{
  border-color:#b8e4cf;
  background:#f3fbf6;
}
.record-month-kpis article.warn{
  border-color:#efd49d;
  background:#fff9ea;
}
.record-month-kpis span,
.record-client-check-head span:first-child{
  display:block;
  color:var(--muted);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.record-month-kpis b{
  display:block;
  margin-top:4px;
  font-size:28px;
  color:#1f374b;
}
.record-month-kpis small{
  display:block;
  margin-top:2px;
  color:var(--muted);
}
.record-compactbar{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  border:1px solid var(--line);
  border-radius:16px;
  background:#f8fbfd;
  padding:12px 14px;
}
.record-compactbar b{
  display:block;
  color:#1f374b;
}
.record-compactbar span{
  margin-top:3px;
  text-transform:none;
  letter-spacing:0;
  font-size:12px;
  font-weight:750;
}
.record-client-checks{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(290px,1fr));
  gap:12px;
}
.record-client-check{
  border:1px solid var(--line);
  border-left:5px solid #8fb4c9;
  border-radius:18px;
  background:#fff;
  padding:15px;
  box-shadow:0 10px 30px #1f374b0d;
}
.record-client-check.ready{
  border-left-color:#19a45b;
}
.record-client-check.billed{
  border-left-color:#5b7c8f;
  background:#f6f9fb;
}
.record-client-check.blocked{
  border-left-color:#f26a2d;
  background:#fff9ea;
}
.record-client-check.missing{
  border-left-color:#f26a2d;
  background:#fffaf1;
}
.record-client-check.future,
.record-client-check.planned,
.record-client-check.check{
  border-left-color:var(--blue);
}
.record-client-check-head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:flex-start;
}
.record-client-check h3{
  margin:4px 0 2px;
}
.record-client-check p,
.record-client-check small{
  color:var(--muted);
}
.record-missing-list,
.record-future-list{
  display:grid;
  gap:7px;
  margin-top:12px;
}
.record-missing-day{
  border:1px solid #f0c39a;
  border-radius:12px;
  background:#fff;
  color:#8a3f12;
  padding:10px 12px;
  font-weight:850;
  text-align:left;
  cursor:pointer;
}
.record-missing-day:hover{
  background:#fff0df;
}
.record-ready-note{
  margin:12px 0 0;
  padding:10px 12px;
  border-radius:12px;
  background:#eefaf2;
  color:#177344;
  font-weight:800;
}
.record-client-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:13px;
}
.record-client-actions button,
.record-client-actions a{
  min-height:40px;
}
@media(max-width:760px){
  .record-month-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .record-client-checks{
    grid-template-columns:1fr;
  }
  .record-client-check-head{
    display:grid;
  }
  .record-client-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .record-client-actions button,
  .record-client-actions a{
    width:100%;
    justify-content:center;
  }
  .record-compactbar{
    display:grid;
  }
  .record-compactbar button{
    width:100%;
  }
}

/* iPhone-Fix: geschlossenes Hauptmenü darf keine Textreste links einblenden */
@media(max-width:800px){
  .app>aside:not(.open){
    transform:translateX(-130vw)!important;
    visibility:hidden!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }
  .app>aside.open{
    transform:none!important;
    visibility:visible!important;
    overflow-y:auto!important;
    pointer-events:auto!important;
  }
}

/* Kundenregister: sortierbare Arbeitsübersicht */
.client-register-panel{
  overflow-x:auto;
}
.client-table-head,
.client-register-row{
  display:grid!important;
  grid-template-columns:1.35fr .55fr 1.25fr .55fr .85fr .9fr .75fr!important;
  gap:10px!important;
  min-width:1080px;
}
.client-table-head button{
  border:0;
  background:transparent;
  color:var(--muted);
  cursor:pointer;
  font-size:10px;
  font-weight:900;
  text-align:left;
  text-transform:uppercase;
  padding:0;
}
.client-table-head button:hover,
.client-table-head button.active{
  color:var(--blue);
}
.client-register-row span{
  min-width:0;
  overflow-wrap:anywhere;
}
.client-register-row a{
  color:var(--blue);
  font-weight:850;
  text-decoration:none;
}
.client-register-row.archived-client{
  background:#f3f5f6!important;
  color:#71808a;
  opacity:.78;
}
.client-register-row.archived-client b,
.client-register-row.archived-client a{
  color:#657481;
}
.client-register-row.archived-client .pill{
  filter:grayscale(1);
}
.client-register-row .client-record-button{
  display:block;
  margin-top:4px;
}
.client-status-filter-label{
  min-width:150px;
}
@media(max-width:900px){
  .client-table-head,
  .client-register-row{
    grid-template-columns:1.4fr .55fr 1fr .8fr!important;
    min-width:760px;
  }
  .client-table-head button:nth-child(4),
  .client-table-head button:nth-child(7),
  .client-register-row span:nth-child(4),
  .client-register-row span:nth-child(7){
    display:none;
  }
}
.record-mini-row.record-is-fixed{
  border-left:4px solid #19a45b;
}
.record-mini-row.record-needs-signature{
  border-left:4px solid #f26a2d;
  background:#fffaf1;
}
.signature-open-fullscreen{
  width:100%;
  min-height:52px;
  margin:10px 0 8px;
  border:0;
  border-radius:14px;
  background:#e8f4fb;
  color:var(--blue);
  font-weight:850;
  cursor:pointer;
}
.signature-open-fullscreen:hover{
  background:#d7eef9;
  transform:translateY(-1px);
}
.signature-fullscreen{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  gap:12px;
  height:100dvh;
  max-height:100dvh;
  padding:calc(env(safe-area-inset-top,0px) + 14px) calc(env(safe-area-inset-right,0px) + 14px) calc(env(safe-area-inset-bottom,0px) + 14px) calc(env(safe-area-inset-left,0px) + 14px);
  background:#f7fafc;
  overflow:hidden;
}
.signature-fullscreen[hidden]{
  display:none;
}
.signature-mode-open{
  overflow:hidden;
}
.signature-fullscreen-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding-right:180px;
}
.signature-fullscreen-head span,
.signature-fullscreen-head b{
  display:block;
}
.signature-fullscreen-head span{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
}
.signature-fullscreen-head b{
  font-size:18px;
}
.signature-fullscreen-clear{
  border:0;
  border-radius:999px;
  padding:11px 14px;
  background:#eef3f6;
  color:#40576a;
  font-weight:850;
}
.signature-fullscreen canvas{
  width:100%;
  height:100%;
  min-height:0;
  border:3px dashed #8ca5b5;
  border-radius:22px;
  background:#fff;
  box-shadow:0 18px 50px #16384f18;
  touch-action:none;
}
.signature-fullscreen-actions{
  position:fixed;
  top:calc(env(safe-area-inset-top,0px) + 10px);
  right:calc(env(safe-area-inset-right,0px) + 10px);
  z-index:10000;
  display:flex;
  justify-content:flex-end;
  gap:12px;
}
.signature-fullscreen-actions button{
  width:72px;
  height:72px;
  border:0;
  border-radius:50%;
  color:#fff;
  font-size:34px;
  font-weight:900;
  box-shadow:0 12px 24px #17212b22;
}
.signature-fullscreen-cancel{
  background:#d93f3f;
}
.signature-fullscreen-confirm{
  background:#19a45b;
}
@media(max-width:760px){
  .signature-fullscreen{
    padding:calc(env(safe-area-inset-top,0px) + 10px) calc(env(safe-area-inset-right,0px) + 10px) calc(env(safe-area-inset-bottom,0px) + 10px) calc(env(safe-area-inset-left,0px) + 10px);
    gap:8px;
  }
  .signature-fullscreen-head{
    min-height:62px;
    padding-right:140px;
  }
  .signature-fullscreen-head b{
    font-size:15px;
  }
  .signature-fullscreen-head span{
    font-size:10px;
  }
  .signature-fullscreen-clear{
    padding:10px 12px;
  }
  .signature-fullscreen-actions{
    justify-content:flex-end;
    gap:9px;
  }
  .signature-fullscreen-actions button{
    width:58px;
    height:58px;
    font-size:28px;
  }
}

.mobile-next-status{
  margin-top:12px;
  padding:10px 12px;
  border-radius:13px;
  background:#eef6fb;
  color:#1f5878;
  font-weight:850;
}
.mobile-next-status.running{
  background:#e8f8ef;
  color:#177344;
}
.mobile-assistant-hero{
  display:grid;
  grid-template-columns:1fr auto;
  gap:16px;
  align-items:end;
  border:1px solid #cfe2ec;
  border-radius:24px;
  background:linear-gradient(135deg,#ffffff,#eef7fc);
  padding:20px;
  box-shadow:0 14px 36px #1f374b12;
}
.mobile-assistant-hero.active{
  border-color:#a9dfbd;
  background:linear-gradient(135deg,#ffffff,#edf9f2);
}
.mobile-assistant-hero.pause{
  border-color:#f1cf7e;
  background:linear-gradient(135deg,#ffffff,#fff5d9);
}
.mobile-assistant-hero span,
.mobile-assistant-hero small,
.mobile-assistant-hero b{
  display:block;
}
.mobile-assistant-hero span,
.mobile-assistant-hero small{
  color:var(--muted);
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.mobile-assistant-hero h2{
  margin:7px 0 5px;
  color:#1f374b;
  font-size:34px;
  line-height:1.05;
}
.mobile-assistant-hero p{
  margin:0;
  color:#466273;
  font-weight:750;
}
.mobile-hero-live-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:16px;
}
.mobile-hero-live-chip{
  width:100%;
  border:1px solid #b7e0ca;
  border-radius:22px;
  background:#ffffffd9;
  box-shadow:0 12px 28px #1f374b14;
  color:#193247;
  cursor:pointer;
  padding:14px 16px;
  position:relative;
  text-align:left;
  touch-action:manipulation;
}
.mobile-hero-live-chip.mobile-tour-inline-timer{
  background:linear-gradient(135deg,#e7f8ee,#ffffff);
}
.mobile-hero-live-chip.mobile-tour-inline-timer.pause{
  border-color:#f0c27b;
  background:linear-gradient(135deg,#fff0d8,#ffffff);
}
.mobile-hero-live-chip.mobile-customer-live-timer{
  border-color:#9bd4f3;
  background:linear-gradient(135deg,#e8f4ff,#ffffff);
}
.mobile-hero-live-chip span,
.mobile-hero-live-chip strong,
.mobile-hero-live-chip small{
  display:block;
}
.mobile-hero-live-chip span{
  color:#647385;
  font-size:10px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mobile-hero-live-chip strong{
  margin-top:5px;
  color:#193247;
  font-size:34px;
  font-weight:950;
  line-height:1;
  font-variant-numeric:tabular-nums;
}
.mobile-hero-live-chip small{
  margin-top:6px;
  color:#466273;
  font-size:12px;
  font-weight:850;
  letter-spacing:0;
  text-transform:none;
}
.mobile-assistant-hero aside{
  min-width:145px;
  border-radius:20px;
  background:#fff;
  padding:14px;
  box-shadow:inset 0 0 0 1px #dce7ee;
}
.mobile-assistant-hero aside b{
  margin-top:5px;
  color:#007cbf;
  font-size:22px;
  line-height:1.05;
}
.mobile-live-strip{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.mobile-live-strip article{
  border:1px solid #cfe2ec;
  border-radius:20px;
  background:#fff;
  padding:14px 16px;
  box-shadow:0 10px 26px #1f374b10;
}
.mobile-live-action-card{
  cursor:pointer;
  position:relative;
  touch-action:manipulation;
  transition:transform .12s ease,box-shadow .12s ease,filter .12s ease;
  -webkit-tap-highlight-color:transparent;
}
.mobile-live-action-card::after{
  content:"›";
  position:absolute;
  top:14px;
  right:16px;
  color:#007cbf;
  font-size:26px;
  font-weight:950;
  line-height:1;
  opacity:.62;
}
.mobile-live-action-card:active{
  filter:brightness(.98);
  transform:scale(.985);
}
.mobile-live-strip article.mobile-tour-inline-timer{
  border-color:#b8e4cf;
  background:#ecf9f2;
}
.mobile-live-strip article.mobile-tour-inline-timer.pause{
  border-color:#f2d18b;
  background:#fff6dd;
}
.mobile-live-strip article.mobile-customer-live-timer{
  border-color:#9bd4f3;
  background:#eaf7ff;
}
.mobile-live-strip span,
.mobile-live-strip strong,
.mobile-live-strip small{
  display:block;
}
.mobile-live-strip span{
  color:#647385;
  font-size:10px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mobile-live-strip strong{
  margin-top:4px;
  color:#193247;
  font-size:28px;
  font-weight:950;
  line-height:1;
  font-variant-numeric:tabular-nums;
}
.mobile-live-strip small{
  margin-top:5px;
  overflow:hidden;
  color:#647385;
  font-size:12px;
  font-weight:800;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.mobile-flow-card{
  border:0;
  border-radius:28px;
  background:#fff;
  padding:22px;
  box-shadow:0 16px 42px #1f374b18;
}
.mobile-flow-card>span,
.mobile-flow-next small{
  display:block;
  color:var(--blue);
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.mobile-flow-card h3{
  margin:7px 0 5px;
  color:#1f374b;
  font-size:31px;
  line-height:1.05;
}
.mobile-flow-card p{
  margin:0 0 16px;
  color:#466273;
  font-size:15px;
  font-weight:750;
}
.mobile-flow-main{
  width:100%;
  min-height:76px;
  border-radius:22px;
  font-size:22px;
  font-weight:950;
}
.mobile-start-tour-action,
.mobile-job-time-action{
  width:100%;
  min-height:118px;
  border:0;
  border-radius:28px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:7px;
  padding:20px 22px;
  background:linear-gradient(135deg,#007cbf,#0795d6);
  color:#fff;
  box-shadow:0 18px 42px #007cbf33;
  cursor:pointer;
  text-align:left;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.mobile-start-tour-action span,
.mobile-job-time-action span{
  font-size:12px;
  font-weight:950;
  letter-spacing:.08em;
  opacity:.9;
  text-transform:uppercase;
}
.mobile-start-tour-action strong,
.mobile-job-time-action strong{
  font-size:34px;
  font-weight:950;
  line-height:1;
  font-variant-numeric:tabular-nums;
}
.mobile-start-tour-action small,
.mobile-job-time-action small{
  color:rgba(255,255,255,.9);
  font-size:16px;
  font-weight:850;
}
.mobile-job-time-action.planned{
  background:linear-gradient(135deg,#16324a,#007cbf);
}
.mobile-job-time-action.running{
  background:linear-gradient(135deg,#0f7a45,#19a766);
  box-shadow:0 18px 42px #0f7a4530;
}
.mobile-job-time-action.pause{
  background:linear-gradient(135deg,#d98117,#f4ad31);
  box-shadow:0 18px 42px #d9811730;
}
.mobile-start-tour-action:active,
.mobile-job-time-action:active{
  transform:scale(.985);
  filter:brightness(.98);
}
.mobile-flow-next{
  margin-top:15px;
  border-radius:18px;
  background:#f4f8fb;
  padding:14px;
}
.mobile-flow-next b,
.mobile-flow-next span{
  display:block;
}
.mobile-flow-next b{
  margin-top:5px;
  color:#1f374b;
  font-size:18px;
}
.mobile-flow-next span{
  margin-top:4px;
  color:var(--muted);
  font-size:13px;
}
.mobile-day-summary{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.mobile-day-summary article{
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  padding:14px;
  box-shadow:0 8px 24px #1f374b0d;
}
.mobile-day-summary article.done{
  border-color:#b8e4cf;
  background:#f4fbf6;
}
.mobile-day-summary span,.mobile-day-summary b,.mobile-day-summary small{
  display:block;
}
.mobile-day-summary span{
  color:var(--muted);
  font-size:10px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.mobile-day-summary b{
  color:#1f374b;
  font-size:22px;
  margin-top:4px;
}
.mobile-day-summary small{
  color:var(--muted);
  margin-top:3px;
}
.mobile-next-hint{
  margin-top:10px;
  border:1px solid #cfe2ec;
  border-radius:14px;
  background:#f3f9fc;
  color:#466273;
  font-size:13px;
  font-weight:800;
  line-height:1.35;
  padding:10px 12px;
}
.mobile-next-actions .mobile-primary-action,
.mobile-next-actions .mobile-main-pill{
  grid-column:1/-1;
}
.mobile-work-details{
  margin-top:10px;
  border:1px solid var(--line);
  border-radius:15px;
  background:#f8fbfd;
  overflow:hidden;
}
.mobile-work-details summary{
  cursor:pointer;
  padding:13px 14px;
  color:var(--blue);
  font-weight:900;
  list-style:none;
}
.mobile-work-details summary::-webkit-details-marker{
  display:none;
}
.mobile-work-details summary:after{
  content:"⌄";
  float:right;
}
.mobile-work-details[open] summary:after{
  content:"⌃";
}
.mobile-work-details>div{
  margin:10px;
}
@media(max-width:760px){
  #app[data-active-view="mobile"] .mobile-focus{
    margin-top:2px;
  }
  #app[data-active-view="mobile"] .mobile-day-summary{
    grid-template-columns:1fr 1fr;
  }
  #app[data-active-view="mobile"] .mobile-day-summary article{
    border:0;
    border-radius:18px;
    padding:13px;
  }
  #app[data-active-view="mobile"] .mobile-day-summary b{
    font-size:20px;
  }
  #app[data-active-view="mobile"] .mobile-work-card{
    margin-top:12px;
  }
  #app[data-active-view="mobile"] .mobile-next-status{
    font-size:14px;
  }
  #app[data-active-view="mobile"] .mobile-next-hint{
    font-size:14px;
  }
  #app[data-active-view="mobile"] .mobile-assistant-hero{
    grid-template-columns:1fr;
    border:0;
    border-radius:28px;
    padding:22px;
    box-shadow:0 16px 40px #1f374b18;
  }
  #app[data-active-view="mobile"] .mobile-assistant-hero h2{
    font-size:34px;
  }
  #app[data-active-view="mobile"] .mobile-assistant-hero aside{
    min-width:0;
    display:grid;
    grid-template-columns:auto 1fr;
    gap:8px;
    align-items:center;
  }
  #app[data-active-view="mobile"] .mobile-assistant-hero aside b{
    margin:0;
    text-align:right;
  }
  #app[data-active-view="mobile"] .mobile-flow-card{
    border-radius:28px;
    padding:22px;
  }
  #app[data-active-view="mobile"] .mobile-next-actions{
    grid-template-columns:1fr 1fr;
  }
  #app[data-active-view="mobile"] .mobile-next-actions .mobile-primary-action,
  #app[data-active-view="mobile"] .mobile-next-actions .mobile-main-pill{
    grid-column:1/-1;
  }
  #app[data-active-view="mobile"] .mobile-work-details[open] .mobile-work-facts{
    display:grid;
  }
  #app[data-active-view="mobile"] .mobile-work-details[open] .mobile-work-rule-note{
    display:block;
  }
}
@media(max-width:420px){
  #app[data-active-view="mobile"] .mobile-day-summary{
    grid-template-columns:1fr;
  }
  #app[data-active-view="mobile"] .mobile-assistant-hero h2{
    font-size:30px;
  }
  #app[data-active-view="mobile"] .mobile-assistant-hero aside{
    grid-template-columns:1fr;
  }
  #app[data-active-view="mobile"] .mobile-assistant-hero aside b{
    text-align:left;
  }
}
.mobile-bottom-nav{
  display:none;
}
.mobile-record-focus{
  display:none;
}
.mobile-record-hero,
.mobile-record-card{
  border:0;
  border-radius:28px;
  background:#fff;
  box-shadow:0 16px 42px #1f374b18;
  padding:22px;
}
.mobile-record-hero span,
.mobile-record-card span{
  display:block;
  color:var(--blue);
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.mobile-record-hero h2,
.mobile-record-card h3{
  margin:8px 0 6px;
  color:#1f374b;
  line-height:1.05;
}
.mobile-record-hero h2{
  font-size:38px;
}
.mobile-record-card h3{
  font-size:28px;
}
.mobile-record-hero p,
.mobile-record-card p,
.mobile-record-card small{
  display:block;
  margin:0;
  color:#466273;
  font-weight:750;
  line-height:1.35;
}
.mobile-record-card small{
  margin-top:5px;
  color:var(--muted);
  font-size:13px;
}
.mobile-record-hero.warn{
  background:linear-gradient(135deg,#fff,#fff5dc);
}
.mobile-record-hero.done{
  background:linear-gradient(135deg,#fff,#eefaf2);
}
.mobile-record-main,
.mobile-record-card button{
  width:100%;
  min-height:70px;
  margin-top:16px;
  border-radius:22px;
  font-size:19px;
  font-weight:950;
}
.mobile-record-stack{
  display:grid;
  gap:12px;
  margin-top:12px;
}
.mobile-message-focus{
  display:none;
}
.mobile-message-hero,
.mobile-sub-card{
  border:0;
  border-radius:28px;
  background:#fff;
  box-shadow:0 16px 42px #1f374b18;
  padding:22px;
}
.mobile-message-hero.warn,
.mobile-sub-card.conflict{
  background:linear-gradient(135deg,#fff,#fff5dc);
}
.mobile-message-hero.done{
  background:linear-gradient(135deg,#fff,#eefaf2);
}
.mobile-message-hero span,
.mobile-sub-card span,
.mobile-latest-message small{
  display:block;
  color:var(--blue);
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.mobile-message-hero h2,
.mobile-sub-card h3{
  margin:8px 0 6px;
  color:#1f374b;
  line-height:1.05;
}
.mobile-message-hero h2{
  font-size:42px;
}
.mobile-sub-card h3{
  font-size:34px;
}
.mobile-message-hero p,
.mobile-sub-card p,
.mobile-sub-card small,
.mobile-latest-message span{
  display:block;
  margin:0;
  color:#466273;
  font-weight:750;
  line-height:1.35;
}
.mobile-sub-card small{
  margin-top:5px;
  color:var(--muted);
}
.mobile-sub-stack{
  display:grid;
  gap:12px;
  margin-top:12px;
}
.mobile-sub-actions{
  display:grid;
  gap:9px;
  margin-top:16px;
}
.mobile-sub-actions>div{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.mobile-sub-main{
  width:100%;
  min-height:74px;
  border-radius:22px;
  font-size:20px;
  font-weight:950;
  margin-top:16px;
}
.mobile-sub-actions .mobile-sub-main{
  margin-top:0;
}
.mobile-latest-message{
  margin-top:16px;
  border-radius:18px;
  background:#fff;
  padding:14px;
  box-shadow:inset 0 0 0 1px #dce7ee;
}
.mobile-latest-message b,
.mobile-latest-message span{
  display:block;
}
.mobile-latest-message b{
  margin-top:5px;
  color:#1f374b;
}
#app>aside nav{
  flex:1;
  overflow:auto;
  padding-bottom:12px;
}
#app>aside .user-card{
  flex:0 0 auto;
  margin-top:0;
  background:#fff;
  position:sticky;
  bottom:0;
  z-index:2;
}
.session-chip{
  display:none;
}
.session-chip button{
  border:0;
  width:34px;
  height:34px;
  border-radius:999px;
  background:#eef6fb;
  color:#007cbf;
  font-weight:950;
  cursor:pointer;
}
.session-chip-avatar{
  width:38px;
  height:38px;
  border-radius:999px;
  background:linear-gradient(135deg,#007cbf,#064f85);
  color:#fff;
  display:grid;
  place-items:center;
  font-weight:950;
  letter-spacing:.04em;
  flex:0 0 auto;
}
.session-chip-text{
  min-width:0;
  display:grid;
  line-height:1.12;
}
.session-chip-text small{
  color:#6c7a89;
  font-size:10px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.session-chip-text strong{
  max-width:190px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#172331;
  font-size:14px;
}
.session-chip-text em{
  max-width:190px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#5f7282;
  font-size:11px;
  font-style:normal;
  font-weight:750;
}
.global-live-status{
  position:fixed;
  left:50%;
  top:10px;
  z-index:120;
  width:min(780px,calc(100vw - 24px));
  transform:translateX(-50%);
  pointer-events:none;
}
.global-live-status[hidden]{
  display:none!important;
}
.global-live-status-inner{
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px;
  border:1px solid #cde8d9;
  border-radius:26px;
  background:rgba(255,255,255,.96);
  box-shadow:0 18px 46px #173b6628;
  backdrop-filter:blur(16px);
  pointer-events:auto;
}
.global-live-dot{
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#e8f8ef;
  color:#129b55;
  font-size:13px;
  line-height:1;
  animation:globalLivePulse 1.35s ease-in-out infinite;
}
@keyframes globalLivePulse{
  0%,100%{box-shadow:0 0 0 0 rgba(18,155,85,.32)}
  50%{box-shadow:0 0 0 8px rgba(18,155,85,0)}
}
.global-live-status article{
  min-width:150px;
  flex:1;
  display:grid;
  gap:1px;
  padding:9px 12px;
  border-radius:18px;
  background:#f4fbf7;
  color:#193247;
}
.global-live-status article.tour{
  background:#eaf8ef;
}
.global-live-status article.pause{
  background:#fff2df;
}
.global-live-status article.customer{
  background:#eaf6ff;
}
.global-live-status article span{
  font-size:11px;
  font-weight:950;
  letter-spacing:.08em;
  color:#647385;
  text-transform:uppercase;
}
.global-live-status article strong{
  font-size:22px;
  font-weight:950;
  line-height:1.05;
  font-variant-numeric:tabular-nums;
}
.global-live-status article small{
  min-width:0;
  overflow:hidden;
  color:#647385;
  font-size:12px;
  font-weight:800;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.global-live-open,
.global-live-home,
.global-live-stop{
  flex:0 0 auto;
  min-height:44px;
  padding:0 16px;
  border:0;
  border-radius:18px;
  background:#007cbf;
  color:#fff;
  font-weight:950;
  box-shadow:0 10px 22px rgba(0,124,191,.22);
}
.global-live-home{
  background:#e5f4fb;
  color:#007cbf;
  box-shadow:none;
}
.global-live-stop{
  background:#fff0ed;
  color:#b42318;
  border:1px solid #ffd0c7;
  box-shadow:none;
}
.global-live-open:hover,
.global-live-home:hover,
.global-live-stop:hover{
  filter:brightness(1.05);
  transform:translateY(-1px);
}
@media(max-width:720px){
  .global-live-status{
    width:min(720px,calc(100vw - 16px));
  }
  .global-live-status-inner{
    flex-wrap:wrap;
    border-radius:22px;
  }
  .global-live-status article{
    flex:1 1 210px;
    min-width:0;
  }
  .global-live-open,
  .global-live-home,
  .global-live-stop{
    flex:1 1 120px;
  }
}
body.employee-app-mode{
  background:#f4f8fb;
  overflow-x:hidden;
}
body.employee-app-mode .global-live-status{
  top:calc(env(safe-area-inset-top,0px) + 8px);
  width:min(540px,calc(100vw - 18px));
}
body.employee-app-mode .global-live-status-inner{
  gap:6px;
  padding:7px;
  border-radius:24px;
}
body.employee-app-mode .global-live-dot{
  width:20px;
  height:20px;
  font-size:10px;
}
body.employee-app-mode .global-live-status article{
  min-width:0;
  padding:8px 9px;
  border-radius:17px;
}
body.employee-app-mode .global-live-status article span{
  font-size:9px;
  letter-spacing:.06em;
}
body.employee-app-mode .global-live-status article strong{
  font-size:18px;
}
body.employee-app-mode .global-live-status article small{
  max-width:118px;
  font-size:10px;
}
body.employee-app-mode .global-live-open,
body.employee-app-mode .global-live-home{
  min-height:38px;
  padding:0 11px;
  border-radius:15px;
  font-size:12px;
}
body.employee-app-mode .session-chip{
  display:none!important;
}
body.employee-app-mode #app{
  display:block;
  min-height:100svh;
  background:#f4f8fb;
}
body.employee-app-mode #app>aside,
body.employee-app-mode #app>main>header,
body.employee-app-mode .mobile-bottom-nav,
body.employee-app-mode .mobile-shared-jumps,
body.employee-app-mode .mobile-quick-jumps,
body.employee-app-mode .client-return-bar,
body.employee-app-mode .iphone-access-card,
body.employee-app-mode .mobile-return-floating,
body.employee-app-mode .mobile-version-badge,
body.employee-app-mode .mobile-contract-tools,
body.employee-app-mode .mobile-all-jobs,
body.employee-app-mode #mobile-view #mobile-work-card,
body.employee-app-mode #mobile-view .mobile-proof-hint{
  display:none!important;
}
body.employee-app-mode #app main{
  width:100%;
  max-width:560px;
  min-height:100svh;
  margin:0 auto;
  padding:0 10px calc(env(safe-area-inset-bottom,0px) + 14px);
  background:#f4f8fb;
  overflow-x:hidden;
}
body.employee-app-mode.has-global-live-status #app main{
  padding-top:78px;
}
body.employee-app-mode .view{
  max-width:none;
  margin:0;
  padding:12px 0 20px;
}
body.employee-app-mode #mobile-home-view.view{
  padding-top:12px;
}
body.employee-app-mode .mobile-home-shell{
  min-height:calc(100svh - 24px);
  display:grid;
  grid-template-rows:auto auto 1fr;
  gap:14px;
}
body.employee-app-mode .mobile-home-hero{
  border-radius:30px;
  padding:24px;
  background:linear-gradient(135deg,#007cbf,#063a70);
  color:#fff;
  box-shadow:0 18px 42px #12334d2a;
}
body.employee-app-mode .mobile-home-live{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
body.employee-app-mode .mobile-home-live[hidden]{
  display:none;
}
body.employee-app-mode .mobile-home-live-card{
  min-height:128px;
  border:0;
  border-radius:28px;
  padding:18px;
  text-align:left;
  background:#fff;
  color:#1f374b;
  box-shadow:0 14px 34px #1f374b16;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  cursor:pointer;
}
body.employee-app-mode .mobile-home-live-card span{
  font-size:11px;
  font-weight:950;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#007cbf;
}
body.employee-app-mode .mobile-home-live-card strong{
  font-size:38px;
  line-height:1;
  font-weight:950;
}
body.employee-app-mode .mobile-home-live-card small{
  font-size:14px;
  font-weight:850;
  color:#607789;
  line-height:1.25;
}
body.employee-app-mode .mobile-home-live-card.running{
  background:linear-gradient(135deg,#e6f9ef,#ffffff);
  border:2px solid #b7ebcd;
}
body.employee-app-mode .mobile-home-live-card.tour.running strong{
  color:#0d7c43;
}
body.employee-app-mode .mobile-home-live-card.customer{
  background:linear-gradient(135deg,#eef8ff,#ffffff);
  border:2px solid #c9e8f8;
}
body.employee-app-mode .mobile-home-live-card.customer strong{
  color:#007cbf;
}
body.employee-app-mode .mobile-home-live-card.customer.quiet{
  opacity:.72;
}
body.employee-app-mode .mobile-home-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  align-content:start;
}
body.employee-app-mode .mobile-home-tile{
  min-height:148px;
  border:2px solid transparent;
  border-radius:26px;
  padding:18px;
  text-align:left;
  background:linear-gradient(135deg,#0a7fbd,#064f85);
  color:#fff;
  box-shadow:0 14px 34px #1f374b14;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  cursor:pointer;
}
body.employee-app-mode .mobile-home-tile.primary-tile{
  background:linear-gradient(135deg,#0a7fbd,#064f85);
  color:#fff;
}
body.employee-app-mode .mobile-home-tile.muted-tile{
  background:linear-gradient(135deg,#0a7fbd,#064f85);
  color:#fff;
}
body.employee-app-mode .mobile-home-tile.is-running{
  border-color:#b7ebcd;
  outline:3px solid #b7ebcd;
  background:#fff;
  color:#007cbf;
}
body.employee-app-mode .mobile-home-tile[data-mobile-home-section="tour"].is-running{
  color:#0d7c43;
}
body.employee-app-mode .mobile-home-tile.is-disabled{
  background:linear-gradient(135deg,#7aaecb,#47718e);
  color:#fff;
  opacity:.78;
  cursor:default;
}
body.employee-app-mode .mobile-home-tile.is-disabled:active{
  transform:none;
}
body.employee-app-mode .mobile-home-tile b em{
  display:inline-flex;
  margin-left:8px;
  vertical-align:middle;
  border-radius:999px;
  background:#ffffff24;
  color:inherit;
  font-size:11px;
  font-style:normal;
  font-weight:950;
  padding:4px 8px;
}
body.employee-app-mode .mobile-home-tile.is-running b em{
  background:#e8f6fc;
}
body.employee-app-mode .mobile-home-tile[data-mobile-home-section="tour"].is-running b em{
  background:#dff8eb;
  color:#0d7c43;
}
body.employee-app-mode .mobile-day-head{
  position:sticky;
  top:0;
  z-index:8;
  margin:0 -10px 12px;
  border-radius:0 0 28px 28px;
  padding:18px 14px 14px;
  background:rgba(244,248,251,.96);
  backdrop-filter:blur(12px);
  border-bottom:1px solid #dce7ee;
}
body.employee-app-mode .mobile-day-head h2{
  font-size:25px;
}
body.employee-app-mode .mobile-day-head p,
body.employee-app-mode .gps-badge,
body.employee-app-mode .mobile-work-rule-note,
body.employee-app-mode #mobile-open-menu{
  display:none!important;
}
body.employee-app-mode .mobile-date-actions input{
  border-radius:14px;
  background:#fff;
  font-weight:850;
  color:#1f374b;
}
body.employee-app-mode .mobile-top-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
body.employee-app-mode .mobile-return-home{
  min-height:46px;
  border:0;
  border-radius:999px;
  background:#e5f4fb;
  color:#007cbf;
  font-weight:950;
  padding:0 16px;
}
body.employee-app-mode .mobile-focus{
  display:grid;
  gap:12px;
}
body.employee-app-mode .mobile-assistant-hero{
  border-radius:28px;
  padding:24px 18px;
  grid-template-columns:1fr;
  gap:14px;
}
body.employee-app-mode .mobile-assistant-hero h2{
  font-size:42px;
  line-height:1.03;
}
body.employee-app-mode .mobile-assistant-hero p{
  font-size:18px;
  line-height:1.25;
}
body.employee-app-mode .mobile-hero-live-row{
  grid-template-columns:1fr;
  gap:12px;
}
body.employee-app-mode .mobile-hero-live-chip{
  border-radius:26px;
  padding:18px;
}
body.employee-app-mode .mobile-hero-live-chip strong{
  font-size:46px;
}
body.employee-app-mode .mobile-hero-live-chip small{
  font-size:15px;
}
body.employee-app-mode .mobile-assistant-hero aside{
  border-radius:20px;
  padding:14px;
  background:#ffffffb8;
}
body.employee-app-mode .mobile-live-strip{
  display:grid;
  position:sticky;
  top:8px;
  z-index:12;
  margin-top:-2px;
}
body.employee-app-mode .mobile-live-strip article{
  border:0;
  border-radius:24px;
  padding:18px;
  box-shadow:0 16px 38px #1f374b22;
}
body.employee-app-mode .mobile-live-strip strong{
  font-size:42px;
}
body.employee-app-mode .mobile-live-strip small{
  font-size:15px;
}
body.employee-app-mode .mobile-day-summary{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
body.employee-app-mode .mobile-day-summary article{
  border:0;
  border-radius:22px;
  padding:16px;
  box-shadow:0 10px 28px #1f374b10;
}
body.employee-app-mode .mobile-flow-card,
body.employee-app-mode .mobile-next-card,
body.employee-app-mode .mobile-after-card,
body.employee-app-mode .mobile-tour-preview,
body.employee-app-mode .mobile-traffic-card article{
  border:0;
  border-radius:28px;
  box-shadow:0 14px 36px #1f374b12;
}
body.employee-app-mode .mobile-flow-card,
body.employee-app-mode .mobile-next-card{
  padding:22px 18px;
}
body.employee-app-mode .mobile-next-card h3,
body.employee-app-mode .mobile-flow-card h3{
  font-size:44px;
  line-height:1.02;
  margin:8px 0;
}
body.employee-app-mode .mobile-next-card p,
body.employee-app-mode .mobile-flow-card p{
  font-size:21px;
  line-height:1.25;
}
body.employee-app-mode .mobile-next-card small,
body.employee-app-mode .mobile-flow-card span{
  font-size:16px;
}
body.employee-app-mode .mobile-job-primary-actions{
  display:grid;
  gap:12px;
  grid-template-columns:1fr;
}
body.employee-app-mode .mobile-job-primary-actions .primary,
body.employee-app-mode .mobile-job-primary-actions a,
body.employee-app-mode .mobile-flow-main{
  min-height:72px;
  border-radius:24px;
  font-size:23px;
  font-weight:950;
}
body.employee-app-mode .mobile-job-time-action{
  margin-top:18px;
  min-height:132px;
  border-radius:30px;
}
body.employee-app-mode .mobile-job-time-action strong,
body.employee-app-mode .mobile-start-tour-action strong{
  font-size:38px;
}
body.employee-app-mode .mobile-start-tour-action{
  min-height:138px;
  border-radius:30px;
  margin-top:18px;
}
body.employee-app-mode .mobile-job-info{
  margin-top:14px;
}
body.employee-app-mode .mobile-job-info summary{
  min-height:54px;
  border-radius:18px;
  padding:0 14px;
  display:flex;
  align-items:center;
  background:#f0f7fb;
  font-weight:950;
  color:#315268;
}
body.employee-app-mode .mobile-after-card{
  padding:16px 18px;
}
body.employee-app-mode .mobile-after-card b{
  font-size:20px;
}
body.employee-app-mode .mobile-tour-preview{
  padding:16px;
  background:#fff;
}
body.employee-app-mode .mobile-tour-preview-head{
  margin-bottom:10px;
}
body.employee-app-mode .mobile-tour-row{
  border-radius:18px;
  padding:12px;
}
body.employee-app-mode .mobile-tour-row b{
  font-size:18px;
}
body.employee-app-mode .mobile-tour-hidden-note{
  margin:10px 0 0;
  border-radius:16px;
  padding:12px;
  background:#eef7f1;
  color:#23713a;
  font-weight:850;
  text-align:center;
}
body.employee-app-mode .employee-app-return{
  position:sticky;
  top:calc(env(safe-area-inset-top,0px) + 8px);
  z-index:44;
  width:100%;
  min-height:60px;
  margin:0 0 14px;
  border:0;
  border-radius:22px;
  background:linear-gradient(135deg,#0a7fbd,#086496);
  color:#fff;
  font-weight:950;
  box-shadow:0 16px 34px #007cbf30;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:0 18px;
  text-align:left;
}
body.employee-app-mode .employee-app-return span{
  display:flex;
  align-items:center;
  gap:9px;
  font-size:19px;
  line-height:1;
}
body.employee-app-mode .employee-app-return span b{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:14px;
  background:#ffffff22;
  font-size:20px;
}
body.employee-app-mode .employee-app-return small{
  display:block;
  color:#e7f6ff;
  font-size:13px;
  font-weight:850;
}
body.employee-app-mode #mobile-view .mobile-day-head .mobile-top-actions{
  display:none!important;
}
body.employee-app-mode #mobile-view .mobile-day-head{
  padding-top:0;
}
body.employee-app-mode #mobile-work-view .mobile-work-page-head .mobile-return-home{
  display:none!important;
}
body.employee-app-mode #mobile-work-view .mobile-work-page{
  gap:10px;
}
body.employee-app-mode #clients-view .toolbar,
body.employee-app-mode #records-view .toolbar{
  display:grid;
  gap:10px;
}
body.employee-app-mode #clients-view .toolbar h2,
body.employee-app-mode #records-view .toolbar h2{
  font-size:28px;
  margin:0;
}
body.employee-app-mode #clients-view .search{
  min-width:0;
  width:100%;
}
body.employee-app-mode #clients-view .toolbar{
  position:sticky;
  top:64px;
  z-index:14;
  background:#f4f8fb;
  padding:8px 0 10px;
}
body.employee-app-mode #clients-view .search input{
  min-height:58px;
  border-radius:22px;
  font-size:18px;
  font-weight:850;
  padding-left:48px;
  box-shadow:0 12px 28px #1f374b12;
}
body.employee-app-mode #clients-view .client-status-filter-label,
body.employee-app-mode #clients-view #new-client{
  display:none!important;
}
body.employee-app-mode #mobile-client-scope{
  margin:0 0 12px;
}
body.employee-app-mode #messages-view .messenger-layout,
body.employee-app-mode #clients-view .table-panel,
body.employee-app-mode #records-view .panel{
  border:0;
  border-radius:24px;
  box-shadow:0 12px 32px #1f374b12;
  overflow:hidden;
}
@media(max-width:760px){
  #app[data-active-view="mobile-home"] header{display:none}
  #app[data-active-view="mobile-home"] main{background:#f4f8fb}
  #app[data-active-view="mobile-home"] #mobile-home-view.view{padding:14px 12px calc(env(safe-area-inset-bottom,0px) + 18px)}
  #app[data-active-view="mobile-work"] header{display:none}
  #app[data-active-view="mobile-work"] main{background:#f4f8fb}
  #app[data-active-view="mobile-work"] #mobile-work-view.view{padding:14px 12px calc(env(safe-area-inset-bottom,0px) + 18px)}
  .mobile-home-shell{min-height:calc(100svh - 28px);display:grid;grid-template-rows:auto auto 1fr;gap:14px}
  .mobile-home-hero{border-radius:30px;background:linear-gradient(135deg,#007cbf,#063a70);color:#fff;padding:24px;box-shadow:0 18px 42px #12334d2a}
  .mobile-home-hero span{display:block;font-size:11px;font-weight:950;letter-spacing:.06em;text-transform:uppercase;opacity:.85}
  .mobile-home-hero h2{margin:8px 0 4px;font-size:38px;line-height:1.02}
  .mobile-home-hero p{margin:0;font-size:18px;font-weight:750;opacity:.9}
  .mobile-home-live{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .mobile-home-live[hidden]{display:none}
  .mobile-home-live-card{min-height:128px;border:0;border-radius:28px;padding:18px;text-align:left;background:#fff;color:#1f374b;box-shadow:0 14px 34px #1f374b16;display:flex;flex-direction:column;justify-content:center;gap:5px;cursor:pointer}
  .mobile-home-live-card span{font-size:11px;font-weight:950;letter-spacing:.06em;text-transform:uppercase;color:#007cbf}
  .mobile-home-live-card strong{font-size:38px;line-height:1;font-weight:950}
  .mobile-home-live-card small{font-size:14px;font-weight:850;color:#607789;line-height:1.25}
  .mobile-home-live-card.running{background:linear-gradient(135deg,#e6f9ef,#ffffff);border:2px solid #b7ebcd}
  .mobile-home-live-card.tour.running strong{color:#0d7c43}
  .mobile-home-live-card.customer{background:linear-gradient(135deg,#eef8ff,#ffffff);border:2px solid #c9e8f8}
  .mobile-home-live-card.customer strong{color:#007cbf}
  .mobile-home-live-card.customer.quiet{opacity:.72}
  .mobile-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:start}
  .mobile-home-tile{min-height:142px;border:2px solid transparent;border-radius:26px;padding:18px;text-align:left;background:linear-gradient(135deg,#0a7fbd,#064f85);color:#fff;box-shadow:0 14px 34px #1f374b14;display:flex;flex-direction:column;justify-content:center;gap:8px;cursor:pointer}
  .mobile-home-tile.primary-tile{background:linear-gradient(135deg,#0a7fbd,#064f85);color:#fff}
  .mobile-home-tile.muted-tile{background:linear-gradient(135deg,#0a7fbd,#064f85);color:#fff}
  .mobile-home-tile.is-running{border-color:#b7ebcd;outline:3px solid #b7ebcd;background:#fff;color:#007cbf}
  .mobile-home-tile[data-mobile-home-section="tour"].is-running{color:#0d7c43}
  .mobile-home-tile.is-disabled{background:linear-gradient(135deg,#7aaecb,#47718e);color:#fff;opacity:.78;cursor:default}
  .mobile-home-tile span:empty{display:none}
  .mobile-home-tile b{display:block;font-size:21px;line-height:1.08}
  .mobile-home-tile b em{display:inline-flex;margin-left:8px;vertical-align:middle;border-radius:999px;background:#ffffff24;color:inherit;font-size:11px;font-style:normal;font-weight:950;padding:4px 8px}
  .mobile-home-tile.is-running b em{background:#e8f6fc}
  .mobile-home-tile[data-mobile-home-section="tour"].is-running b em{background:#dff8eb;color:#0d7c43}
  .mobile-home-tile small{display:block;margin-top:5px;color:inherit;opacity:.72;font-weight:800;line-height:1.25}
  .mobile-work-page{min-height:calc(100svh - 28px);display:grid;grid-template-rows:auto 1fr;gap:14px}
  .mobile-work-page-head{position:relative;border-radius:30px;background:linear-gradient(135deg,#173b66,#081f3b);color:#fff;padding:72px 18px 18px;box-shadow:0 18px 42px #12334d26}
  .mobile-work-page-head button{position:absolute;top:14px;right:14px;min-height:44px;border:0;border-radius:999px;background:#ffffff24;color:#fff;font-weight:950;padding:0 14px;margin:0}
  .mobile-work-page-head span{display:block;font-size:11px;font-weight:950;letter-spacing:.06em;text-transform:uppercase;opacity:.85}
  .mobile-work-page-head h2{margin:7px 0 4px;font-size:38px;line-height:1.02}
  .mobile-work-page-head p{margin:0;font-size:17px;font-weight:750;opacity:.86}
  #app[data-active-view="mobile-work"] .mobile-work-card-page{max-width:none;width:100%;min-height:auto;border:0;border-radius:28px;padding:18px;box-shadow:0 16px 38px #1f374b18}
  #app[data-active-view="mobile-work"] .mobile-work-card-page .mobile-work-actions{grid-template-columns:1fr;gap:12px}
  #app[data-active-view="mobile-work"] .mobile-work-card-page .mobile-work-actions button{min-height:72px;border-radius:24px;font-size:20px}
  .mobile-return-floating{display:none}
  .mobile-bottom-nav{
    display:none!important;
  }
  .mobile-bottom-nav button{
    border:0;
    border-radius:18px;
    min-height:54px;
    display:grid;
    place-items:center;
    gap:2px;
    background:transparent;
    color:#516778;
    font:inherit;
    font-size:10px;
    font-weight:900;
    cursor:pointer;
  }
  .mobile-bottom-nav button b{
    display:block;
    font-size:11px;
    line-height:1.1;
  }
  .mobile-bottom-nav button span{
    display:block;
    width:auto;
    height:auto;
    border-radius:0;
    background:transparent;
    color:inherit;
    font-size:20px;
    line-height:1;
  }
  .mobile-bottom-nav button.active{
    background:#e8f6fc;
    color:var(--blue);
  }
  .mobile-bottom-nav button.active span{
    background:transparent;
  }
  .mobile-bottom-nav button[hidden]{
    display:none;
  }
  #app main{
    padding-bottom:calc(env(safe-area-inset-bottom,0px) + 16px);
  }
  #app[data-active-view="clients"] .mobile-return-floating,
  #app[data-active-view="planning"] .mobile-return-floating,
  #app[data-active-view="records"] .mobile-return-floating,
  #app[data-active-view="messages"] .mobile-return-floating{
    position:fixed;
    top:calc(env(safe-area-inset-top,0px) + 10px);
    right:12px;
    z-index:80;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    border:0;
    border-radius:999px;
    padding:0 14px;
    background:#17212be8;
    color:#fff;
    font-weight:950;
    box-shadow:0 12px 28px #17212b30;
  }
  body.signature-mode-open .mobile-bottom-nav{
    display:none;
  }
}

/* iPhone-Chat: Vertretungen zuerst, Messenger nur als Nebenfunktion */
@media(max-width:760px){
  #app[data-active-view="messages"] #messages-view.view{
    padding:0 10px calc(env(safe-area-inset-bottom,0px) + 96px);
  }
  #app[data-active-view="messages"] .mobile-message-focus{
    display:grid;
    gap:12px;
  }
  #app[data-active-view="messages"] .messenger-layout{
    display:none;
  }
  #app[data-active-view="messages"] .mobile-message-hero{
    min-height:220px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
  }
  #app[data-active-view="messages"] .mobile-sub-card{
    min-height:230px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
  }
}
@media(max-width:420px){
  #app[data-active-view="messages"] .mobile-message-hero h2{
    font-size:38px;
  }
  #app[data-active-view="messages"] .mobile-sub-card h3{
    font-size:30px;
  }
}

/* Diensthandy-Modus: ein klarer Arbeitsschritt pro Bildschirm */
@media(max-width:760px){
  #app[data-active-view="mobile"] #mobile-view.view{
    padding:10px 10px calc(env(safe-area-inset-bottom,0px) + 96px);
  }
  #app[data-active-view="mobile"] .mobile-day-head{
    margin:-10px -10px 10px;
    padding:10px;
  }
  #app[data-active-view="mobile"] .mobile-top-actions,
  #app[data-active-view="mobile"] .mobile-date-actions{
    display:none;
  }
  #app[data-active-view="mobile"] .mobile-day-head h2{
    font-size:18px;
    margin:2px 0;
  }
  #app[data-active-view="mobile"] .mobile-quick-jumps button{
    min-height:50px;
    border-radius:17px;
    font-size:15px;
  }
  #app[data-active-view="mobile"] .mobile-version-badge,
  #app[data-active-view="mobile"] .mobile-contract-tools,
  #app[data-active-view="mobile"] .mobile-proof-hint{
    display:none;
  }
  #app[data-active-view="mobile"] .mobile-focus{
    gap:10px;
  }
  #app[data-active-view="mobile"] .mobile-assistant-hero{
    border-radius:30px;
    padding:22px;
  }
  #app[data-active-view="mobile"] .mobile-assistant-hero h2{
    font-size:38px;
  }
  #app[data-active-view="mobile"] .mobile-assistant-hero p{
    font-size:16px;
    line-height:1.35;
  }
  #app[data-active-view="mobile"] .mobile-day-summary{
    grid-template-columns:1fr 1fr;
  }
  #app[data-active-view="mobile"] .mobile-day-summary article{
    padding:12px;
  }
  #app[data-active-view="mobile"] .mobile-day-summary b{
    font-size:18px;
  }
  #app[data-active-view="mobile"] .mobile-flow-card,
  #app[data-active-view="mobile"] .mobile-next-card{
    min-height:calc(100svh - 360px);
    border-radius:32px;
    padding:26px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    box-shadow:0 20px 52px #1f374b22;
  }
  #app[data-active-view="mobile"] .mobile-flow-card h3,
  #app[data-active-view="mobile"] .mobile-next-card h3{
    font-size:42px;
    line-height:1.02;
    margin:10px 0;
  }
  #app[data-active-view="mobile"] .mobile-flow-card p,
  #app[data-active-view="mobile"] .mobile-next-card p{
    font-size:18px;
    line-height:1.35;
  }
  #app[data-active-view="mobile"] .mobile-next-card small{
    font-size:16px;
    line-height:1.35;
  }
  #app[data-active-view="mobile"] .mobile-flow-main,
  #app[data-active-view="mobile"] .mobile-next-actions .mobile-primary-action{
    min-height:86px;
    border-radius:26px;
    font-size:23px;
  }
  #app[data-active-view="mobile"] .mobile-next-actions{
    grid-template-columns:1fr;
    gap:12px;
  }
  #app[data-active-view="mobile"] .mobile-next-actions a,
  #app[data-active-view="mobile"] .mobile-next-actions button,
  #app[data-active-view="mobile"] .mobile-next-actions .pill{
    min-height:68px;
    border-radius:22px;
    font-size:18px;
  }
  #app[data-active-view="mobile"] .mobile-traffic-card,
  #app[data-active-view="mobile"] .mobile-work-card,
  #app[data-active-view="mobile"] .mobile-all-jobs{
    opacity:.72;
  }
  #app[data-active-view="mobile"] .mobile-work-card{
    padding:12px;
    border-radius:20px;
    box-shadow:0 8px 22px #1f374b0e;
  }
  #app[data-active-view="mobile"] .mobile-work-head h3{
    font-size:16px;
  }
  #app[data-active-view="mobile"] .mobile-live-timer{
    padding:12px;
    border-radius:18px;
  }
  #app[data-active-view="mobile"] .mobile-live-timer strong{
    font-size:32px;
  }
  #app[data-active-view="mobile"] .mobile-work-actions button{
    min-height:48px;
  }
  #app[data-active-view="mobile"] .mobile-after-card{
    display:none;
  }
}
@media(max-width:420px){
  #app[data-active-view="mobile"] .mobile-assistant-hero h2,
  #app[data-active-view="mobile"] .mobile-flow-card h3,
  #app[data-active-view="mobile"] .mobile-next-card h3{
    font-size:35px;
  }
  #app[data-active-view="mobile"] .mobile-day-summary{
    grid-template-columns:1fr;
  }
}

/* iPhone-Nachweise: Unterschriften als klare Arbeitskarten */
@media(max-width:760px){
  #app[data-active-view="records"] #records-view.view{
    padding:0 10px calc(env(safe-area-inset-bottom,0px) + 96px);
  }
  #app[data-active-view="records"] .toolbar,
  #app[data-active-view="records"] .record-month-summary,
  #app[data-active-view="records"] .service-sheet-actions,
  #app[data-active-view="records"] .table-panel{
    display:none;
  }
  #app[data-active-view="records"] .mobile-record-focus{
    display:grid;
    gap:12px;
  }
  #app[data-active-view="records"] .mobile-record-hero{
    min-height:220px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
  }
  #app[data-active-view="records"] .mobile-record-hero h2{
    font-size:46px;
  }
  #app[data-active-view="records"] .mobile-record-card{
    min-height:210px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
  }
  #app[data-active-view="records"] .mobile-record-card h3{
    font-size:34px;
  }
  #app[data-active-view="records"] .mobile-record-card p{
    font-size:16px;
  }
  #app[data-active-view="records"] .mobile-shared-jumps{
    display:none!important;
  }
  #app[data-active-view="records"] #records-view.view{
    padding-top:10px;
  }
  body.complete-mode-open .mobile-bottom-nav,
  body.complete-mode-open .mobile-shared-jumps{
    display:none!important;
  }
  body.complete-mode-open #app main{
    padding-bottom:0;
  }
  body.complete-mode-open #complete-modal .signature-capture canvas{
    pointer-events:none;
    opacity:.72;
  }
  body.complete-mode-open #complete-modal .signature-open-fullscreen{
    min-height:66px;
    background:#007cbf;
    color:#fff;
    font-size:17px;
    box-shadow:0 12px 24px #007cbf2b;
  }
  body.complete-mode-open #complete-modal .signature-capture small{
    font-weight:850;
    color:#466273;
  }
}
@media(max-width:420px){
  #app[data-active-view="records"] .mobile-record-hero h2{
    font-size:40px;
  }
  #app[data-active-view="records"] .mobile-record-card h3{
    font-size:30px;
  }
}

/* iPhone-Breitenfix: keine Mini-Überbreite, kein seitliches Zoomen */
@media(max-width:760px){
  html,
  body,
  #app,
  #app main{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
  }
  #app[data-active-view="mobile"] #mobile-view.view,
  #app[data-active-view="records"] #records-view.view,
  #app[data-active-view="messages"] #messages-view.view{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
    margin:0;
    padding-left:10px;
    padding-right:10px;
  }
  #app[data-active-view="mobile"] .mobile-day-head,
  #app[data-active-view="records"] .mobile-shared-jumps,
  #app[data-active-view="messages"] .mobile-shared-jumps{
    margin-left:0!important;
    margin-right:0!important;
    width:100%;
    max-width:100%;
  }
  #app[data-active-view="mobile"] .mobile-focus,
  #app[data-active-view="mobile"] .mobile-assistant-hero,
  #app[data-active-view="mobile"] .mobile-day-summary,
  #app[data-active-view="mobile"] .mobile-flow-card,
  #app[data-active-view="mobile"] .mobile-next-card,
  #app[data-active-view="mobile"] .mobile-traffic-card,
  #app[data-active-view="mobile"] .mobile-work-card,
  #app[data-active-view="mobile"] .mobile-all-jobs,
  #app[data-active-view="records"] .mobile-record-focus,
  #app[data-active-view="records"] .mobile-record-hero,
  #app[data-active-view="records"] .mobile-record-card,
  #app[data-active-view="messages"] .messenger-layout,
  #app[data-active-view="messages"] .panel{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow-x:hidden;
  }
  #app[data-active-view="mobile"] .mobile-next-actions,
  #app[data-active-view="mobile"] .mobile-work-actions,
  #app[data-active-view="records"] .mobile-record-stack,
  #app[data-active-view="records"] .mobile-record-card{
    min-width:0;
  }
  #app[data-active-view="mobile"] a,
  #app[data-active-view="mobile"] button,
  #app[data-active-view="records"] a,
  #app[data-active-view="records"] button,
  #app[data-active-view="messages"] a,
  #app[data-active-view="messages"] button{
    max-width:100%;
    overflow-wrap:anywhere;
  }
}
#employees-view .employee-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-top:12px}
#employees-view .employee-card-compact{min-height:255px;padding:14px!important;gap:10px;border-radius:16px;box-shadow:0 8px 22px #1f374b0c;cursor:default}
#employees-view .employee-card-compact:hover{transform:translateY(-1px);box-shadow:0 14px 30px #1f374b14}
#employees-view .employee-card-compact .employee-card-head{grid-template-columns:auto 1fr;gap:10px}
#employees-view .employee-card-compact .employee-card-head .avatar{width:42px;height:42px;font-size:13px}
#employees-view .employee-card-compact .employee-card-head .pill{grid-column:1/-1;justify-self:start}
#employees-view .employee-card-compact .employee-card-head h3{font-size:17px;margin:0!important}
#employees-view .employee-card-compact .employee-card-head p{font-size:11px;line-height:1.25}
#employees-view .employee-card-compact .employee-facts{grid-template-columns:repeat(3,1fr);gap:6px}
#employees-view .employee-card-compact .employee-facts span{padding:8px 7px}
#employees-view .employee-card-compact .employee-facts small{font-size:9px}
#employees-view .employee-card-compact .employee-facts b{font-size:13px;line-height:1.15}
#employees-view .employee-compact-notes{display:grid;gap:5px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 0;color:var(--muted);font-size:11px;line-height:1.25}
#employees-view .employee-compact-notes span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#employees-view .employee-compact-notes .warn{color:#8b650d;font-weight:850}
#employees-view .employee-card-compact .employee-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:auto}
#employees-view .employee-card-compact .employee-card-actions .employee-record-open{grid-column:1/-1}

.employee-record-formlook .panel{min-height:220px}.employee-field-grid{display:grid;grid-template-columns:minmax(120px,.55fr) 1fr;gap:8px 12px;margin:10px 0 14px}.employee-field-grid span{color:var(--muted);font-weight:850}.employee-field-grid b{font-weight:850;overflow-wrap:anywhere}.employee-target-table{display:grid;gap:6px;margin-top:12px}.employee-target-row,.employee-calendar-row{display:grid;grid-template-columns:.45fr 1fr .7fr;gap:10px;align-items:center;border-top:1px solid var(--line);padding:10px 0}.employee-target-row:first-child,.employee-calendar-row:first-child{border-top:0}.employee-target-row span,.employee-calendar-row span,.employee-calendar-row small{color:var(--muted)}.employee-calendar-panel .panel-title-row{margin-bottom:8px}.employee-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}.employee-summary-grid article{border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:12px;background:#fbfdff;padding:12px;min-height:120px}.employee-summary-grid h4{margin:0 0 8px;color:#1f374b}.employee-summary-grid p{margin:0;color:#526171;line-height:1.45}.employee-record-tab-content .panel>p.muted{color:var(--muted)}@media(max-width:950px){.employee-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.employee-target-row,.employee-calendar-row{grid-template-columns:1fr}}@media(max-width:650px){.employee-field-grid,.employee-summary-grid{grid-template-columns:1fr}.employee-record-formlook .panel{min-height:0}}
#employees-view .employee-card-compact .employee-card-actions button{padding:8px 9px;font-size:12px}
#employees-view .worktime-details-toggle{border-radius:12px;background:#f4f9fc}
@media(max-width:720px){#employees-view .employee-grid{grid-template-columns:1fr}#employees-view .employee-card-compact{min-height:auto}}

/* Mobile Mitarbeiter-App: große Kacheln und kompakte Tourvorschau */
.mobile-action-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.mobile-action-tile{position:relative;min-height:118px;border:0;border-radius:24px;padding:16px;color:#fff;text-align:left;overflow:hidden;box-shadow:0 16px 34px #12334d22;cursor:pointer;display:flex;flex-direction:column;justify-content:center;gap:7px}
.mobile-action-tile:hover{transform:translateY(-1px);box-shadow:0 20px 42px #12334d2d}
.mobile-action-tile span,.mobile-action-tile b,.mobile-action-tile small{position:relative;z-index:1;display:block}
.mobile-action-tile span:empty{display:none}
.mobile-action-tile b{font-size:20px;line-height:1.05}
.mobile-action-tile small{color:#e8f4fb;font-weight:750}
.mobile-action-tile em{position:absolute;top:12px;right:12px;min-width:28px;height:28px;border-radius:999px;display:grid;place-items:center;padding:0 8px;background:#ff3b30;color:#fff;font-style:normal;font-weight:950;box-shadow:0 8px 20px #0002}
.mobile-action-tile.tour{background:linear-gradient(135deg,#0a7fbd,#064f85)}
.mobile-action-tile.records{background:linear-gradient(135deg,#0067a6,#063a70)}
.mobile-action-tile.chat{background:linear-gradient(135deg,#0b9db0,#08737d)}
.mobile-action-tile.work{background:linear-gradient(135deg,#173b66,#081f3b)}
.mobile-tour-preview{border:1px solid #dce8ef;border-radius:26px;background:#fff;padding:14px;box-shadow:0 16px 40px #1f374b14}
.mobile-tour-preview-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:2px 2px 12px}
.mobile-tour-preview-head span{display:block;color:var(--muted);font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.mobile-tour-preview-head b{display:block;margin-top:3px;color:#1f374b;font-size:22px}
.mobile-tour-preview-head button{min-height:42px;border-radius:14px}
.mobile-tour-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;border-top:1px solid #eef3f6;padding:13px 2px}
.mobile-tour-row:first-of-type{border-top:0}
.mobile-tour-row.current{margin:4px -4px;border-radius:18px;border-top:0;background:#eaf8f0;padding:13px 8px}
.mobile-tour-row.done{opacity:.62}
.mobile-tour-marker{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#edf5f9;color:#007cbf;font-weight:950}
.mobile-tour-row.current .mobile-tour-marker{background:#19a45b;color:#fff}
.mobile-tour-row.done .mobile-tour-marker{background:#eef2f4;color:#74818d}
.mobile-tour-row b,.mobile-tour-row small,.mobile-tour-row span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mobile-tour-row b{color:#1f374b;font-size:17px}
.mobile-tour-row small,.mobile-tour-row span{margin-top:3px;color:#687684;font-weight:700}
.mobile-tour-row i{color:#007cbf;font-style:normal;font-size:12px;font-weight:900;text-transform:uppercase}
.mobile-tour-row.done i{color:#74818d}
.mobile-tour-more{width:100%;min-height:52px;border:0;border-radius:18px;margin-top:8px;background:#dff3ea;color:#0c6b42;font-weight:950;cursor:pointer}
.mobile-job-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.mobile-job-detail-head span{display:block;color:var(--blue);font-size:11px;font-weight:950;letter-spacing:.05em;text-transform:uppercase}
.mobile-job-detail-head b{display:block;color:#52687a;font-size:14px;white-space:nowrap}
.mobile-job-status-panel{margin-top:16px;border-radius:22px;padding:16px;background:#eef7fc;color:#1f5878}
.mobile-job-status-panel.running{background:#e5f7ed;color:#126b3f}
.mobile-job-status-panel strong,.mobile-job-status-panel span{display:block}
.mobile-job-status-panel strong{font-size:18px}
.mobile-job-status-panel span{margin-top:5px;font-weight:750;line-height:1.35}
.mobile-job-workflow{display:grid;gap:14px;margin-top:18px}
.mobile-job-step{border:1px solid #dfeaf1;border-radius:24px;background:#fff;padding:14px;box-shadow:0 10px 28px #1f374b0b}
.mobile-job-step.is-active{border-color:#aeecc9;background:linear-gradient(135deg,#f1fff7,#fff)}
.mobile-job-step-label{display:block;margin-bottom:10px;color:#687684;font-size:12px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.mobile-job-nav-card,.mobile-job-proof-action{width:100%;min-height:86px;border-radius:22px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;padding:18px 20px;text-align:left;text-decoration:none;font-weight:900}
.mobile-job-nav-card{border:0;background:linear-gradient(135deg,#007cbf,#064f85);color:#fff;box-shadow:0 14px 34px #007cbf24;cursor:pointer}
.mobile-job-nav-card span{font-size:12px;font-weight:950;letter-spacing:.08em;text-transform:uppercase;opacity:.88}
.mobile-job-nav-card strong{font-size:24px;line-height:1.05}
.mobile-job-nav-card small{color:rgba(255,255,255,.88);font-size:14px;font-weight:800;line-height:1.25}
.mobile-job-nav-card.is-disabled{background:#eef4f8;color:#6f8190;box-shadow:none;cursor:not-allowed}
.mobile-job-nav-card.is-disabled small{color:#7a8995}
.mobile-job-proof-action{min-height:92px;align-items:center;text-align:center;font-size:22px}
.mobile-job-proof-hint{border-radius:20px;background:#f4f9fc;padding:16px 18px;color:#466273}
.mobile-job-proof-hint strong,.mobile-job-proof-hint span{display:block}
.mobile-job-proof-hint strong{color:#1f374b;font-size:18px}
.mobile-job-proof-hint span{margin-top:5px;font-weight:750;line-height:1.35}
.mobile-job-primary-actions.one-col{grid-template-columns:1fr}
.mobile-job-primary-actions{display:grid;grid-template-columns:1.35fr .9fr;gap:12px;margin-top:18px}
.mobile-job-primary-actions a,.mobile-job-primary-actions button{min-height:76px;border-radius:24px;display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;font-size:18px;font-weight:950}
.mobile-job-primary-actions a{border:1px solid #dbe8ef;background:#fff;color:var(--blue)}
.mobile-job-info{margin-top:14px;border:1px solid #e1ebf1;border-radius:20px;background:#fff;overflow:hidden}
.mobile-job-info summary{cursor:pointer;list-style:none;padding:14px 16px;color:#1f5878;font-weight:950}
.mobile-job-info summary::-webkit-details-marker{display:none}
.mobile-job-info summary:after{content:"⌄";float:right}
.mobile-job-info[open] summary:after{content:"⌃"}
.mobile-job-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 14px 14px}
.mobile-job-info-grid span{border-radius:14px;background:#f4f9fc;padding:11px;min-width:0}
.mobile-job-info-grid small,.mobile-job-info-grid b{display:block}
.mobile-job-info-grid small{color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.mobile-job-info-grid b{margin-top:4px;color:#1f374b;font-size:13px;line-height:1.25;overflow-wrap:anywhere}
.mobile-next-actions.compact{padding:0 14px 14px;grid-template-columns:repeat(3,1fr)}
.mobile-next-actions.compact a,.mobile-next-actions.compact button{min-height:50px;border-radius:15px;font-size:14px}
@media(max-width:760px){
  #app[data-active-view="mobile"] .mobile-action-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  #app[data-active-view="mobile"] .mobile-action-tile{min-height:112px;border-radius:22px;padding:14px}
  #app[data-active-view="mobile"] .mobile-action-tile b{font-size:19px}
  #app[data-active-view="mobile"] .mobile-tour-preview{border-radius:28px;padding:14px}
  #app[data-active-view="mobile"] .mobile-tour-preview-head button{display:none}
  #app[data-active-view="mobile"] .mobile-all-jobs>summary{min-height:58px;display:flex;align-items:center;justify-content:space-between;border-radius:20px;background:#eef8ff}
  #app[data-active-view="mobile"] .mobile-all-jobs>summary:after{float:none;margin-left:12px}
  #app[data-active-view="mobile"] .mobile-job-detail{gap:14px}
  #app[data-active-view="mobile"] .mobile-job-primary-actions{grid-template-columns:1fr}
  #app[data-active-view="mobile"] .mobile-job-primary-actions a,
  #app[data-active-view="mobile"] .mobile-job-primary-actions button{min-height:84px;border-radius:26px;font-size:22px}
  #app[data-active-view="mobile"] .mobile-job-status-panel{padding:17px;border-radius:24px}
  #app[data-active-view="mobile"] .mobile-job-info-grid{grid-template-columns:1fr}
  #app[data-active-view="mobile"] .mobile-next-actions.compact{grid-template-columns:1fr}
}
@media(max-width:380px){#app[data-active-view="mobile"] .mobile-action-tiles{grid-template-columns:1fr}}

/* Diensthandy: Kunden nur tagesbezogen oder per Suche */
.mobile-client-scope{display:none}
@media(max-width:760px){
  #app[data-active-view="clients"] #clients-view.view{padding:12px 10px calc(env(safe-area-inset-bottom,0px) + 96px)}
  #app[data-active-view="clients"] .toolbar{position:sticky;top:0;z-index:8;margin:-12px -10px 12px;padding:12px 10px;background:rgba(244,248,251,.96);backdrop-filter:blur(12px);border-bottom:1px solid #dce7ee}
  #app[data-active-view="clients"] .toolbar .search{width:100%}
  #app[data-active-view="clients"] .toolbar .search input{min-height:48px;border-radius:16px;font-size:16px}
  #app[data-active-view="clients"] .toolbar #new-client{display:none}
  #app[data-active-view="clients"] .mobile-client-scope:not([hidden]){display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #cfe2ec;border-radius:24px;background:linear-gradient(135deg,#fff,#eef7fc);padding:16px;margin-bottom:12px;box-shadow:0 12px 28px #1f374b10}
  #app[data-active-view="clients"] .mobile-client-scope h3{margin:4px 0;color:#1f374b;font-size:24px}
  #app[data-active-view="clients"] .mobile-client-scope p{margin:0;color:#52687a;font-weight:750}
  #app[data-active-view="clients"] .mobile-client-scope small{color:#007cbf;font-weight:900;text-align:right}
  #app[data-active-view="clients"] .client-register-panel{border:0;background:transparent;box-shadow:none;padding:0}
  #app[data-active-view="clients"] .client-table-head{display:none}
  #app[data-active-view="clients"] #client-table{display:grid;gap:10px}
  #app[data-active-view="clients"] .client-register-row{display:grid;grid-template-columns:1fr;gap:8px;border:1px solid #dce8ef;border-radius:22px;background:#fff;padding:15px;box-shadow:0 10px 24px #1f374b10}
  #app[data-active-view="clients"] .client-register-row span{display:block;min-width:0}
  #app[data-active-view="clients"] .client-register-row span:first-child b{font-size:20px;color:#1f374b}
  #app[data-active-view="clients"] .client-register-row small{display:block;margin-top:4px;color:#687684;font-weight:700}
  #app[data-active-view="clients"] .client-register-row span:nth-child(n+2){font-size:14px;color:#52687a}
  #app[data-active-view="clients"] .client-record-button{width:100%;min-height:48px;margin-top:8px;border-radius:16px;background:#eef8ff;text-align:center}
  #app[data-active-view="clients"] .client-empty-mobile{min-height:145px;align-content:center;text-align:center}
}

/* iPhone-Kundenakte: zuerst Kontakt, dann Verwaltung */
.mobile-client-record-card{display:none}
@media(max-width:760px){
  #client-record-modal .client-record-card{width:100%;height:100svh;max-height:100svh;border-radius:0;padding:16px 12px calc(env(safe-area-inset-bottom,0px) + 18px);overflow:auto}
  #client-record-modal .client-record-card>.eyebrow,
  #client-record-modal .client-record-toolbar{display:none}
  #client-record-modal #client-record-title{font-size:24px;padding-right:44px}
  #client-record-modal .mobile-client-record-card{display:grid;gap:13px;border:1px solid #cfe2ec;border-radius:28px;background:linear-gradient(135deg,#fff,#eef7fc);padding:18px;margin-bottom:14px;box-shadow:0 16px 34px #1f374b18}
  #client-record-modal .mobile-client-record-card>span{color:var(--blue);font-size:11px;font-weight:950;letter-spacing:.05em;text-transform:uppercase}
  #client-record-modal .mobile-client-record-card h3{margin:0;color:#1f374b;font-size:34px;line-height:1.02}
  #client-record-modal .mobile-client-record-card p{margin:0;color:#52687a;font-weight:750;line-height:1.35}
  #client-record-modal .mobile-client-record-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  #client-record-modal .mobile-client-record-actions a,
  #client-record-modal .mobile-client-record-actions span{min-height:66px;border-radius:22px;display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;font-weight:950}
  #client-record-modal .mobile-client-record-actions a:first-child{background:#007cbf;color:#fff;box-shadow:0 12px 26px #007cbf2e}
  #client-record-modal .mobile-client-record-actions a:nth-child(2){background:#fff;color:#007cbf;border:1px solid #d7e6ee}
  #client-record-modal .mobile-client-record-actions span{background:#f1f5f7;color:#70808b}
  #client-record-modal .mobile-client-record-facts{display:grid;grid-template-columns:1fr 1fr;gap:9px}
  #client-record-modal .mobile-client-record-facts article{border:1px solid #dbe8ef;border-radius:17px;background:#fff;padding:11px;min-width:0}
  #client-record-modal .mobile-client-record-facts small,
  #client-record-modal .mobile-client-record-facts b{display:block}
  #client-record-modal .mobile-client-record-facts small{color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
  #client-record-modal .mobile-client-record-facts b{margin-top:4px;color:#1f374b;font-size:14px;line-height:1.25;overflow-wrap:anywhere}
  #client-record-modal .mobile-client-record-notes{border:1px solid #dbe8ef;border-radius:17px;background:#fff;overflow:hidden}
  #client-record-modal .mobile-client-record-notes summary{cursor:pointer;list-style:none;padding:13px 14px;color:#1f5878;font-weight:950}
  #client-record-modal .mobile-client-record-notes summary::-webkit-details-marker{display:none}
  #client-record-modal .mobile-client-record-notes p{padding:0 14px 14px}
  #client-record-modal .record-master{display:none}
  #client-record-modal .record-tabs{overflow-x:auto;flex-wrap:nowrap;padding:7px;margin-bottom:10px}
  #client-record-modal .record-tab{white-space:nowrap;min-height:42px}
  #client-record-modal .record-tab-panels .panel{border-radius:22px}
  #client-record-modal .actions{display:none}
}

/* Dashboard: echte Kalenderansicht im Cockpit */
.cockpit-calendar{
  grid-column:1/-1;
}
.dashboard-calendar{
  display:grid;
  gap:12px;
}
.dashboard-calendar-head{
  display:grid;
  grid-template-columns:auto 1fr auto auto;
  gap:10px;
  align-items:center;
}
.dashboard-calendar-head h3{
  margin:2px 0 3px;
  text-transform:capitalize;
}
.dashboard-calendar-head p{
  margin:0;
  color:var(--muted);
}
.dashboard-calendar-tools{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}
.dashboard-calendar-modes{
  display:flex;
  gap:6px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#f7fbfd;
  padding:4px;
}
.dashboard-calendar-modes button{
  border:0;
  border-radius:999px;
  background:transparent;
  color:#536879;
  font-weight:950;
  padding:8px 14px;
  cursor:pointer;
}
.dashboard-calendar-modes button.active{
  background:var(--blue);
  color:#fff;
  box-shadow:0 8px 18px #007cbf25;
}
.dashboard-calendar-filter{
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  padding:9px 13px;
  color:#1f374b;
  font-weight:850;
}
.dashboard-calendar-legend{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  color:var(--muted);
  font-size:11px;
  font-weight:850;
}
.dashboard-calendar-legend span{
  display:inline-flex;
  align-items:center;
  gap:5px;
}
.dashboard-calendar-legend i{
  width:16px;
  height:6px;
  border-radius:999px;
  background:var(--blue);
}
.dashboard-calendar-nav{
  font-size:24px;
  line-height:1;
  padding:9px 13px;
}
.dashboard-calendar-weekdays,
.dashboard-calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:7px;
}
.dashboard-calendar-weekdays span{
  font-size:10px;
  color:var(--muted);
  font-weight:900;
  text-transform:uppercase;
  text-align:center;
}
.dashboard-calendar-day{
  min-height:86px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  text-align:left;
  padding:10px;
  cursor:pointer;
  display:grid;
  grid-template-rows:auto 1fr auto;
  gap:4px;
  color:#1f374b;
  transition:.15s;
}
.dashboard-calendar-day:hover{
  border-color:#9bd6ee;
  background:#f3fbff;
  transform:translateY(-1px);
}
.dashboard-calendar-day.outside{
  opacity:.42;
  background:#f7fafc;
}
.dashboard-calendar-day.today{
  border-color:#76c6eb;
  box-shadow:inset 0 0 0 2px #d8f1fc;
}
.dashboard-calendar-day.selected{
  border-color:var(--blue);
  background:#edf8fd;
  box-shadow:0 0 0 3px #dff3fc;
}
.dashboard-calendar-day b{
  font-size:18px;
}
.dashboard-calendar-day span{
  font-size:10px;
  color:var(--muted);
  font-weight:850;
}
.dashboard-calendar-day em{
  display:flex;
  gap:3px;
  min-height:7px;
  font-style:normal;
}
.dashboard-calendar-day i{
  display:block;
  width:18px;
  height:5px;
  border-radius:999px;
  background:var(--blue);
}
.dashboard-calendar-day i.done{
  background:#9aa4ad;
}
.dashboard-calendar-day i.cancelled{
  background:#d49400;
}
.dashboard-calendar-day i.running,
.dashboard-calendar-legend i.running{
  background:#22a06b;
}
.dashboard-calendar-day i.substitution,
.dashboard-calendar-legend i.substitution{
  background:#9b5de5;
}
.dashboard-calendar-legend i.done{
  background:#9aa4ad;
}
.dashboard-calendar-legend i.cancelled{
  background:#d49400;
}
.dashboard-calendar.week-mode .dashboard-calendar-day{
  min-height:112px;
}
.dashboard-calendar-detail{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  border:1px solid var(--line);
  border-radius:14px;
  background:#f8fbfd;
  padding:11px 12px;
}
.dashboard-calendar-detail h4{
  margin:2px 0 0;
}
.dashboard-calendar-list{
  display:grid;
  gap:8px;
}
.dashboard-calendar-event{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
  border:1px solid var(--line);
  border-left:5px solid var(--blue);
  border-radius:12px;
  background:#fff;
  padding:11px 12px;
  text-align:left;
  cursor:pointer;
  color:inherit;
}
.dashboard-calendar-event:hover{
  background:#f3fbff;
  border-color:#b9dceb;
}
.dashboard-calendar-event.done{
  border-left-color:#9aa4ad;
  background:#f5f7f8;
  opacity:.75;
}
.dashboard-calendar-event.cancelled{
  border-left-color:#d49400;
  background:#fff8e5;
}
.dashboard-calendar-event.running{
  border-left-color:#22a06b;
  background:#eefbf5;
}
.dashboard-calendar-event.substitution{
  border-left-color:#9b5de5;
  background:#f6f0ff;
}
.dashboard-calendar-event b,
.dashboard-calendar-event small{
  display:block;
}
.dashboard-calendar-event small{
  color:var(--muted);
  margin-top:3px;
}
.dashboard-calendar-event em{
  font-style:normal;
  font-size:10px;
  font-weight:900;
  color:var(--blue);
  background:#edf8fd;
  border-radius:999px;
  padding:5px 8px;
}
.dashboard-calendar-list p{
  margin:0;
  color:var(--muted);
  border:1px dashed #c7d6df;
  border-radius:12px;
  background:#f8fbfd;
  padding:13px;
}
.dashboard-calendar-more{
  width:100%;
  border:1px dashed #bcd3df;
  border-radius:12px;
  background:#f4f9fc;
  color:var(--blue);
  font-weight:900;
  padding:11px 12px;
  cursor:pointer;
  text-align:center;
}
.dashboard-calendar-more:hover{
  background:#e8f6fc;
  border-color:#91cce5;
}
.dashboard-appointment-preview-card{
  max-width:720px;
}
.dashboard-appointment-preview-card h2{
  margin:4px 0 12px;
  color:#1f374b;
}
.dashboard-appointment-preview-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.dashboard-appointment-preview-grid article{
  border:1px solid var(--line);
  border-radius:15px;
  background:#f8fbfd;
  padding:12px;
}
.dashboard-appointment-preview-grid span,
.dashboard-appointment-preview-grid b{
  display:block;
}
.dashboard-appointment-preview-grid span{
  color:var(--muted);
  font-size:10px;
  text-transform:uppercase;
  font-weight:900;
  letter-spacing:.04em;
}
.dashboard-appointment-preview-grid b{
  margin-top:4px;
  color:#1f374b;
  overflow-wrap:anywhere;
}
.dashboard-appointment-preview-address{
  margin:12px 0 0;
  border:1px solid #d8e8ef;
  border-radius:14px;
  background:#edf8fd;
  color:#1f5878;
  font-weight:850;
  padding:12px;
}
@media(max-width:900px){
  .dashboard-calendar-head{
    grid-template-columns:auto 1fr auto;
  }
  .dashboard-calendar-today{
    grid-column:1/-1;
  }
  .dashboard-calendar-weekdays,
  .dashboard-calendar-grid{
    gap:5px;
  }
  .dashboard-calendar-day{
    min-height:68px;
    padding:8px;
  }
  .dashboard-calendar-day span{
    display:none;
  }
  .dashboard-calendar-event{
    grid-template-columns:1fr;
  }
}
@media(max-width:620px){
  .dashboard-calendar-weekdays,
  .dashboard-calendar-grid{
    grid-template-columns:repeat(7,minmax(38px,1fr));
  }
  .dashboard-calendar-day{
    min-height:54px;
    border-radius:10px;
  }
  .dashboard-calendar-day b{
    font-size:14px;
  }
  .dashboard-calendar-day em{
    display:none;
  }
  .dashboard-calendar-detail{
    display:grid;
  }
  .dashboard-calendar-tools{
    display:grid;
  }
  .dashboard-calendar-modes,
  .dashboard-calendar-filter{
    width:100%;
  }
  .dashboard-calendar-modes button{
    flex:1;
  }
  .dashboard-appointment-preview-grid{
    grid-template-columns:1fr;
  }
}

.client-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.client-data-card{
  min-width:0;
  overflow:hidden;
}
.client-data-card h3{
  margin-bottom:10px;
}
.client-data-list{
  display:grid;
  gap:8px;
}
.client-data-list div{
  border:1px solid var(--line);
  border-radius:12px;
  background:#f8fbfd;
  padding:10px 12px;
  min-width:0;
}
.client-data-list span,
.client-data-list b,
.client-data-list small{
  display:block;
  min-width:0;
  overflow-wrap:anywhere;
}
.client-data-list span{
  color:var(--muted);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.client-data-list b{
  margin-top:4px;
  color:#1f374b;
}
.record-receiver-grid{
  align-items:start;
}
.record-wishes-panel{
  border-left:5px solid #9b59d6;
}
.record-wish-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}
.record-wish-card{
  border:1px solid #d9e7ee;
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#f8fbfd);
  padding:12px;
  min-width:0;
}
.record-wish-card span,
.record-wish-card b,
.record-wish-card small{
  display:block;
  min-width:0;
  overflow-wrap:anywhere;
}
.record-wish-card span{
  color:var(--muted);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.record-wish-card b{
  margin-top:4px;
  color:#1f374b;
}
.record-wish-card small{
  margin-top:4px;
  color:var(--muted);
}
.record-note-list.compact{
  display:grid;
  gap:8px;
  margin-top:12px;
}
.record-note-list.compact article{
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  padding:10px 12px;
}
.record-note-list.compact b,
.record-note-list.compact small,
.record-note-list.compact p{
  display:block;
  overflow-wrap:anywhere;
}
.record-note-list.compact small{
  color:var(--muted);
  margin-top:2px;
}
.record-note-list.compact p{
  margin:6px 0 0;
}
.record-absence-card{
  border-left:5px solid #f39c12;
}
.record-empty-state{
  border:1px dashed #bdd3df;
  border-radius:14px;
  background:#f8fbfd;
  color:#617281;
  font-weight:800;
  padding:14px;
  margin-top:10px;
}
@media(max-width:1100px){
  .client-summary-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .client-summary-grid,
  .record-wish-grid{
    grid-template-columns:1fr;
  }
}
.client-return-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 14px;
  padding:11px 14px;
  border:1px solid #b9dceb;
  border-left:5px solid var(--blue);
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#f4fbfe);
  box-shadow:0 10px 28px #1f374b0c;
}
.client-return-bar[hidden]{
  display:none!important;
}
.client-return-bar span{
  color:#1f374b;
  font-weight:850;
  overflow-wrap:anywhere;
}
.client-return-main{
  border:0;
  border-radius:999px;
  background:var(--blue);
  color:#fff;
  cursor:pointer;
  font-weight:900;
  padding:10px 14px;
}
.client-return-close{
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  color:#617281;
  cursor:pointer;
  font-weight:900;
  width:36px;
  height:36px;
}
.client-return-main:hover,
.client-return-close:hover{
  filter:brightness(.97);
  transform:translateY(-1px);
}
@media(max-width:760px){
  .client-return-bar{
    display:grid;
    grid-template-columns:1fr auto;
  }
  .client-return-bar span{
    grid-column:1/-1;
    grid-row:2;
  }
  .client-return-main{
    width:100%;
  }
}

button.mobile-live-timer{
  width:100%;
  text-align:left;
  cursor:pointer;
  border:1px solid var(--line);
  font-family:inherit;
  appearance:none;
  -webkit-appearance:none;
}
.mobile-work-live-action{
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.mobile-work-live-action:active{
  transform:scale(.985);
  filter:brightness(.98);
}
.mobile-work-actions-simple{
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
}
#app[data-active-view="mobile-work"] .mobile-work-card-page .mobile-live-timer{
  min-height:190px;
  border-radius:30px;
  padding:26px;
  box-shadow:0 18px 38px rgba(31,55,75,.14);
}
#app[data-active-view="mobile-work"] .mobile-work-card-page .mobile-live-timer strong{
  font-size:clamp(54px,15vw,86px);
  line-height:1;
}
#app[data-active-view="mobile-work"] .mobile-work-card-page .mobile-live-timer span{
  font-size:18px;
}
#app[data-active-view="mobile-work"] .mobile-work-card-page .mobile-work-actions-simple{
  grid-template-columns:1fr;
}
#app[data-active-view="mobile-work"] .mobile-work-card-page .mobile-work-actions-simple button{
  min-height:62px;
  border-radius:22px;
  font-size:18px;
}

.cockpit-widget[data-widget="team_map"]{
  grid-column:span 2;
}
.team-live-shell{
  display:grid;
  gap:14px;
}
.team-live-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.team-live-summary article{
  border:1px solid rgba(202,216,226,.82);
  border-radius:18px;
  background:#fff;
  padding:12px 14px;
  box-shadow:0 10px 24px rgba(31,55,75,.07);
}
.team-live-summary span,
.team-live-summary small{
  display:block;
  color:#657587;
  font-weight:900;
}
.team-live-summary span{
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:11px;
}
.team-live-summary b{
  display:block;
  margin-top:4px;
  color:#172535;
  font-size:28px;
  line-height:1;
}
.team-live-summary small{
  margin-top:4px;
  font-size:12px;
}
.team-live-summary article.warn{
  border-color:rgba(255,160,66,.45);
  background:#fff8ec;
}
.team-live-summary article.warn b{
  color:#c45a24;
}
.team-live-widget{
  display:grid;
  grid-template-columns:minmax(280px,1fr) minmax(300px,1.1fr);
  gap:16px;
  align-items:stretch;
}
.team-live-map{
  position:relative;
  min-height:260px;
  border-radius:28px;
  overflow:hidden;
  border:1px solid rgba(0,132,195,.22);
  background:
    radial-gradient(circle at 24% 32%,rgba(0,132,195,.20),transparent 0 9%,transparent 10%),
    radial-gradient(circle at 54% 62%,rgba(74,177,82,.20),transparent 0 11%,transparent 12%),
    radial-gradient(circle at 72% 38%,rgba(255,194,70,.22),transparent 0 8%,transparent 9%),
    linear-gradient(135deg,#eef9ff,#f7fff5 48%,#fff8ec);
  box-shadow:inset 0 0 0 999px rgba(255,255,255,.20);
}
.team-live-map::before,
.team-live-map::after{
  content:"";
  position:absolute;
  inset:auto -15% 35% -10%;
  height:4px;
  background:rgba(34,71,93,.10);
  transform:rotate(-12deg);
}
.team-live-map::after{
  inset:42% -10% auto -15%;
  transform:rotate(22deg);
}
.team-live-map-label{
  position:absolute;
  left:18px;
  bottom:16px;
  z-index:2;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.84);
  color:#526577;
  font-weight:900;
  font-size:12px;
  box-shadow:0 10px 24px rgba(31,55,75,.12);
}
.team-live-pin{
  position:absolute;
  z-index:3;
  left:var(--x);
  top:var(--y);
  width:56px;
  height:56px;
  border:0;
  border-radius:50%;
  transform:translate(-50%,-50%);
  cursor:pointer;
  background:rgba(255,255,255,.70);
  box-shadow:0 18px 34px rgba(31,55,75,.20);
}
.team-live-pin span,
.team-live-dot{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:50%;
  color:#fff;
  font-weight:1000;
  letter-spacing:.03em;
  background:var(--blue);
}
.team-live-pin span{
  margin:auto;
}
.team-live-pin.customer span,
.team-live-dot.customer{
  background:#0078bd;
}
.team-live-pin.tour span,
.team-live-dot.tour{
  background:#21a35b;
}
.team-live-pin.break span,
.team-live-dot.break{
  background:#f2a51a;
}
.team-live-pin:hover{
  transform:translate(-50%,-50%) scale(1.05);
}
.team-live-list{
  display:grid;
  gap:10px;
  max-height:310px;
  overflow:auto;
  padding-right:4px;
}
.team-live-row{
  display:grid;
  grid-template-columns:auto 1fr auto auto;
  gap:12px;
  align-items:center;
  width:100%;
  text-align:left;
  border:1px solid rgba(202,216,226,.9);
  border-radius:20px;
  background:#fff;
  padding:12px;
  cursor:pointer;
  font-family:inherit;
  box-shadow:0 12px 28px rgba(31,55,75,.08);
}
.team-live-row:hover{
  transform:translateY(-1px);
  border-color:rgba(0,132,195,.28);
}
.team-live-row.attention{
  border-color:rgba(255,160,66,.60);
  background:#fff8ec;
}
.team-live-row b{
  display:block;
  color:#172535;
  font-size:16px;
}
.team-live-row small{
  display:block;
  margin-top:4px;
  color:#627386;
  line-height:1.35;
}
.team-live-time{
  color:#172535;
  font-size:20px;
  font-weight:1000;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
.team-live-row-meta{
  display:flex;
  justify-content:flex-end;
}
.team-live-status-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:72px;
  padding:7px 10px;
  border-radius:999px;
  font-style:normal;
  font-size:11px;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#006aa3;
  background:#e6f5ff;
}
.team-live-status-pill.customer{
  color:#006aa3;
  background:#e6f5ff;
}
.team-live-status-pill.tour{
  color:#147a3a;
  background:#e8f8ee;
}
.team-live-status-pill.break{
  color:#9a5f00;
  background:#fff3d5;
}
.team-live-privacy,
.team-live-empty span{
  color:#637487;
  font-weight:800;
  line-height:1.4;
}
.team-live-privacy{
  grid-column:1/-1;
  margin:0;
  font-size:12px;
}
.team-live-empty{
  display:grid;
  gap:8px;
  padding:22px;
  border:1px dashed rgba(0,132,195,.30);
  border-radius:24px;
  background:#f7fbff;
}
.team-live-empty b{
  color:#172535;
  font-size:18px;
}
@media(max-width:920px){
  .cockpit-widget[data-widget="team_map"]{
    grid-column:span 1;
  }
  .team-live-widget{
    grid-template-columns:1fr;
  }
  .team-live-summary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .team-live-row{
    grid-template-columns:auto 1fr;
  }
  .team-live-row-meta,
  .team-live-time{
    grid-column:2;
    justify-content:flex-start;
  }
}
