/* v115 — workspace and mobile navigation */
:root{--bg:#f1f6fb;--text:#142c49;--muted:#5d7188;--line:#dce6f0;--primary:#0963dc;--primary2:#064cae;--soft:#eef5ff}
body{font-size:16px;line-height:1.45}button,input,select,textarea{font-size:1rem}.btn{min-height:44px;font-weight:650;border-radius:11px}.btn.small{min-height:40px;font-size:.875rem}.card{box-shadow:0 3px 14px rgba(18,51,86,.035)}label{font-size:.875rem}.muted{line-height:1.5}.chip{font-size:.8125rem}.close{min-width:44px;min-height:44px}.tab:focus-visible,.btn:focus-visible,button:focus-visible{outline:3px solid #6caaff;outline-offset:3px}
.topbar-inner{min-height:116px}.header-emblem{height:108px;bottom:0}.shell{max-width:1600px;padding:24px 28px 60px 246px;min-height:calc(100vh - 116px)}
.tabs{position:fixed;top:140px;bottom:24px;left:16px;width:202px;display:flex;flex-direction:column;flex-wrap:nowrap;background:transparent;padding:0;margin:0;gap:4px;overflow:auto;z-index:10}.tab{display:flex;align-items:center;gap:10px;text-align:left;white-space:normal;min-height:46px;padding:10px 12px;font-size:.9rem;font-weight:600}.tab.active{background:#dcecff;box-shadow:none;color:#0755b9}.nav-icon{display:inline-flex;flex:0 0 22px}.nav-icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.workspace-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.workspace-heading h1{font-size:clamp(25px,3vw,34px);letter-spacing:-.035em;margin:0}.workspace-heading .muted{margin-top:3px}.workspace-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.connection-status{font-size:.8125rem;color:#526b84}.connection-status.offline{color:#8b5708}
.toolbar{position:relative;grid-template-columns:minmax(180px,1fr) 180px auto;margin:0 0 10px;padding:0;background:transparent;border:0;box-shadow:none}.toolbar #adminBrigadeModeBtn{max-width:none;min-width:0}.toolbar input{background:#fff}.filters-row{background:#fff;grid-template-columns:repeat(3,minmax(120px,1fr));border-radius:12px}.filter-controls{display:flex;gap:8px;align-items:center;margin:0 0 10px}.filter-controls .btn{font-size:.875rem}.filter-counter{font-size:.875rem;color:var(--muted)}
body:not(.customer-mode) #searchHint,body:not(.customer-mode) #loadStatus,body:not(.customer-mode) .shell>.emergency-launch,body:not(.customer-mode) .shell>.stats,body:not(.customer-mode) #nextTask{display:none!important}
body[data-page="today"] .toolbar,body[data-page="today"] .filters-row,body[data-page="today"] .filter-controls,body[data-page="today"] #planningWindow{display:none!important}
body[data-page="more"] .toolbar,body[data-page="more"] .filters-row,body[data-page="more"] .filter-controls,body[data-page="more"] #planningWindow{display:none!important}
body:not([data-page="calendar"]):not([data-page="installations"]):not([data-page="history"]) .filters-row,body:not([data-page="calendar"]):not([data-page="installations"]):not([data-page="history"]) .filter-controls{display:none!important}
body:not([data-page="calendar"]):not([data-page="installations"]) #planningWindow{display:none!important}
.search-results{position:absolute;top:50px;left:0;width:min(620px,100%);max-height:420px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 45px #102e4b22;z-index:35;padding:6px}.search-result{width:100%;text-align:left;background:#fff;border:0;padding:12px;border-radius:9px;display:block;color:var(--text)}.search-result:hover{background:var(--soft)}.search-result small{display:block;color:var(--muted);margin-top:3px}
.today-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}.metric-button{border:1px solid var(--line);background:#fff;padding:18px;text-align:left;border-radius:16px;display:flex;flex-direction:column;gap:10px;color:var(--text)}.metric-button span{font-size:.9rem;color:var(--muted)}.metric-button b{font-size:30px;line-height:1}.metric-button:hover{border-color:#9fc3ed}.today-columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:20px;align-items:start}.workspace-section{padding:20px}.section-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:16px}.section-heading h2{font-size:20px;margin:0}.section-heading .btn{font-size:.875rem}.workspace-aside{display:grid;gap:16px}.attention-row{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.attention-row:last-child{border:0}.attention-row b{display:block;font-size:.9rem}.attention-row small{color:var(--muted)}.empty-state{padding:26px 16px;text-align:center;border:1px dashed #c4d7e9;border-radius:12px;background:#f9fcff;color:var(--muted)}.empty-state b{display:block;color:var(--text);margin-bottom:4px}
.agenda-date{margin:22px 0 10px;font-size:1rem}.agenda-shift{display:flex;gap:8px;align-items:center;background:#edf4fc;padding:8px 12px;border-radius:9px;font-size:.875rem;font-weight:650;margin:12px 0 8px}.agenda-row{padding:14px 0;border-bottom:1px solid #e7edf4;display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:12px;align-items:center}.agenda-row:last-child{border-bottom:0}.agenda-time{font-weight:700;font-size:.875rem;color:#123c70}.agenda-content b{display:block;font-size:.95rem}.agenda-content small{display:block;color:var(--muted);font-size:.8125rem;margin-top:4px}.agenda-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.agenda-actions .btn{font-size:.8125rem}.agenda-type{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#52749b}.agenda-type.mchs{color:#7753a4}.agenda-summary{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:8px 0}.agenda-show-more{margin-top:14px;width:100%}
.calendar-view-switch{display:flex;gap:4px;background:#e8eff7;padding:4px;border-radius:12px}.calendar-view-switch button{border:0;border-radius:9px;padding:8px 15px;background:transparent;color:var(--muted);min-height:40px}.calendar-view-switch button.active{background:#fff;color:#0755b9;box-shadow:0 2px 5px #17334d0a}.calendar-display-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:12px 0}.calendar-legend-toggle{border:0;background:transparent;color:#345f8f;font-size:.875rem;padding:8px}.calendar-agenda{padding:4px 20px 20px}.calendar-agenda .agenda-date{border-bottom:1px solid var(--line);padding-bottom:10px}.calendar-month-nav{gap:12px}.calendar-month-title{font-size:1.25rem}.calendar-toolbar{margin-top:14px}#calendarTab>.notice{display:none}#calendarExportRow .muted{display:none}#calendarExportRow{box-shadow:none;background:#f7faff}
#stationModalBg .modal{width:min(960px,100%)}.day-plan-actions{gap:8px}.installation-simple{padding:18px}.installation-card-page{gap:14px}.card-subtabs{display:flex;gap:6px;overflow-x:auto;margin:14px 0;padding-bottom:5px}.card-subtabs button{background:#edf3fa;border:0;color:#45627e;border-radius:10px;padding:10px 14px;white-space:nowrap;min-height:44px}.card-subtabs button.active{background:#0963dc;color:#fff}.installation-quick-modal{width:min(1000px,100%)!important}
.service-footer{position:sticky;bottom:-18px;background:#fff;border-top:1px solid var(--line);margin:16px -18px -18px;padding:14px 18px;display:flex;gap:10px;justify-content:space-between;z-index:2}.service-footer .btn{flex:1}.draft-status{font-size:.875rem;padding:10px 0;color:#355f83;min-height:40px}.draft-status.error{color:#ad3232}.draft-restore-notice{background:#eef5ff;border:1px solid #c8ddf8;border-radius:12px;padding:12px;margin:12px 0;font-size:.875rem}.draft-restore-notice .btn{margin-top:8px}.service-steps{display:flex;gap:6px;margin:14px 0}.service-steps button{flex:1;min-height:44px;border:1px solid var(--line);border-radius:10px;background:#f4f8fc;font-size:.875rem;color:var(--muted)}.service-steps button.active{background:#e4efff;color:#0755b9;border-color:#a8cafa}.service-wizard-nav{display:flex;justify-content:space-between;gap:10px;margin-top:14px}.service-act-shortcut{display:flex;gap:8px;flex-wrap:wrap}.service-summary{padding:14px;background:#f5f9fe;border:1px solid var(--line);border-radius:12px}.service-summary p{margin:6px 0}.service-summary b{color:#153e6d}.service-review-warning{padding:10px;background:#fff6e9;border-radius:10px;margin:10px 0;font-size:.875rem}
.workspace-toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#153b60;color:#fff;border-radius:12px;padding:12px 18px;box-shadow:0 10px 35px #122f4b33;z-index:300;max-width:90vw;font-size:.9rem}.mobile-nav{display:none}.more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.more-item{background:#fff;border:1px solid var(--line);border-radius:14px;text-align:left;padding:20px;display:flex;gap:14px;align-items:center;color:var(--text);min-height:78px}.mobile-more-only{display:none}
.customer-mode .workspace-bar,.customer-mode .mobile-nav,.customer-mode .filter-controls,.customer-mode #todayTab,.customer-mode #moreTab{display:none!important}.customer-mode .shell{padding:18px 24px}.customer-mode .tabs{display:none!important}
body:has(.modal-bg:not(.hidden)){overflow:hidden}
@media(min-width:1500px){.tabs{left:max(16px,calc((100vw - 1580px)/2))}}
@media(max-width:1100px){.shell{padding-left:210px;padding-right:18px}.tabs{width:180px;left:10px}.today-columns{grid-template-columns:1fr}.workspace-aside{grid-template-columns:1fr 1fr}.toolbar{grid-template-columns:1fr 170px}.toolbar #adminBrigadeModeBtn{grid-column:1/-1}.agenda-row{grid-template-columns:90px minmax(0,1fr) auto}}
@media(max-width:800px){
 .topbar-inner{min-height:96px}.header-emblem{height:91px;max-width:56vw}.shell{padding:18px 14px calc(92px + env(safe-area-inset-bottom))}.tabs{display:none}.workspace-bar{margin-bottom:16px}.workspace-heading h1{font-size:26px}.workspace-controls{width:100%;justify-content:space-between}.toolbar{grid-template-columns:minmax(0,1fr) auto}.toolbar #searchInput{grid-column:1/-1}.toolbar #monthInput{grid-column:auto}.toolbar #adminBrigadeModeBtn{grid-column:auto;font-size:.875rem;width:auto}.filters-row{grid-template-columns:1fr 1fr}.today-metrics{gap:8px;margin-bottom:16px}.metric-button{padding:12px 10px;gap:8px}.metric-button b{font-size:25px}.metric-button span{font-size:.8125rem;line-height:1.35}.workspace-section{padding:15px}.today-columns{gap:16px}.workspace-aside{grid-template-columns:1fr}.agenda-row{grid-template-columns:1fr;gap:8px;padding:15px 0}.agenda-time{font-size:.875rem}.agenda-actions{justify-content:flex-start}.agenda-actions .btn{flex:1}.agenda-content b{font-size:1rem}.agenda-content small{font-size:.875rem}.calendar-agenda{padding:4px 14px 16px}.calendar-month-title{font-size:1.1rem}.calendar-display-bar{gap:8px}.calendar-view-switch{flex:1}.calendar-view-switch button{flex:1}.calendar-head div{font-size:.75rem}.cal-event,.cal-event b{font-size:.75rem}.calendar-grid{gap:4px}.calendar-day{min-width:0;overflow:hidden}.cal-event{overflow:hidden;text-overflow:ellipsis}.more-grid{grid-template-columns:1fr}.mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(4,1fr);bottom:0;left:0;right:0;min-height:70px;background:rgba(255,255,255,.98);border-top:1px solid var(--line);padding:7px 8px calc(7px + env(safe-area-inset-bottom));z-index:40;box-shadow:0 -3px 18px #15345206}.mobile-nav button{border:0;background:transparent;color:#617a95;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:.75rem;padding:4px;min-height:52px}.mobile-nav button.active{color:#0963dc;background:#edf5ff;border-radius:10px}.workspace-toast{bottom:95px}.modal{padding:16px;max-height:94dvh}.service-footer{bottom:-16px;margin:16px -16px -16px;padding:12px 16px max(12px,env(safe-area-inset-bottom))}.service-steps button{padding:8px 4px}.installation-card-section{padding:13px}.modal-head h2{font-size:1.25rem}.modal-head{position:sticky;top:-16px;background:white;padding-top:12px;padding-bottom:10px;z-index:3}.passport-grid{grid-template-columns:1fr 1fr}.passport-item{overflow-wrap:anywhere}.topbar .userbox{padding:6px}.userbox .btn{font-size:.8125rem}.workspace-heading .muted{font-size:.9rem}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.export-choice{display:flex;align-items:center;gap:8px;margin:8px 0;font-weight:500;font-size:.875rem}.export-choice select{max-width:300px;font-size:.875rem}.modal [aria-hidden="true"]{pointer-events:none}
.toolbar #adminBrigadeModeBtn{display:none!important}
.master-user-row{grid-template-columns:minmax(160px,1.2fr) minmax(170px,1.2fr) minmax(120px,.9fr) minmax(100px,.8fr) minmax(85px,.6fr) auto;overflow-wrap:anywhere}
@media(max-width:1000px){.master-user-row{grid-template-columns:1fr 1fr;gap:10px}}
@media(max-width:600px){.master-user-row{grid-template-columns:1fr}.master-user-row [data-delete-user]{width:100%}}
