:root{--blue:#2a5c99;--blue-d:#1c4274;--green:#34b35a;--ink:#1c2b3f;--mut:#6b778a;--line:#e3e8ef;--bg:#f3f6fa;--card:#fff}*{box-sizing:border-box}body{margin:0;font:14px/1.45 Segoe UI,Inter,system-ui,Roboto,sans-serif;color:var(--ink);background:var(--bg)}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}h1{font-size:22px;margin:0 0 14px}h3{margin:0;font-size:15px}.shell{display:grid;grid-template-columns:232px 1fr;grid-template-rows:64px 1fr;min-height:100vh}.top{grid-column:1/3;display:flex;align-items:center;gap:18px;padding:0 20px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.logo{height:46px}.title{display:flex;flex-direction:column;line-height:1.2}.title b{font-size:16px;color:var(--blue-d)}.title span{font-size:12px;color:var(--mut)}.search{margin-left:auto;width:290px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.live{border:1px solid var(--line);background:#fff;border-radius:20px;padding:6px 12px;font-size:12.5px;cursor:pointer;color:var(--mut)}.live i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#aaa;margin-right:4px}.live.on i{background:var(--green);animation:blink 1.6s infinite}.live.on{color:var(--ink)}@keyframes blink{50%{opacity:.3}}.user{display:flex;align-items:center;gap:8px;font-size:13px}.user>span{width:30px;height:30px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:600}.side{background:var(--blue-d);padding:14px 10px;display:flex;flex-direction:column;gap:3px;position:sticky;top:64px;height:calc(100vh - 64px)}.side a{color:#cfdcee;padding:10px 12px;border-radius:8px;display:flex;align-items:center;gap:10px;font-size:14px}.side a em{font-style:normal;width:18px;text-align:center;opacity:.8}.side a:hover{background:#ffffff14;text-decoration:none}.side a.active{background:#fff;color:var(--blue-d);font-weight:600}.badge{margin-left:auto;background:#d9362b;color:#fff;border-radius:10px;padding:0 7px;font-size:11.5px}.demo-note{margin-top:auto;color:#8ea6c6;font-size:11.5px;padding:8px}main{padding:22px 26px 50px;min-width:0}.page{max-width:1380px}.muted{color:var(--mut)}.small{font-size:12.5px}.neg{color:#d9362b}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin-bottom:16px;box-shadow:0 1px 2px #1428460a}.card>header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.grid{display:grid;gap:16px}.g2{grid-template-columns:1fr 1fr}.g3{grid-template-columns:1fr 1fr 1fr}.span2{grid-column:span 2}.col{display:flex;flex-direction:column}.kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:16px}.kpi{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:2px;border-top:3px solid var(--blue)}.kpi span{font-size:12.5px;color:var(--mut)}.kpi b{font-size:30px;line-height:1.15}.kpi small{color:var(--mut);display:flex;align-items:center;gap:6px}.pill{display:inline-flex;align-items:center;gap:6px;padding:2px 9px;border-radius:12px;font-weight:700;font-size:13px}.pill i{width:8px;height:8px;border-radius:50%}.pill.big{font-size:15px;padding:3px 11px}.ltag{padding:2px 9px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.itsbar{display:inline-block;height:6px;border-radius:3px;background:#e6eaf0;overflow:hidden;vertical-align:middle}.itsbar b{display:block;height:100%}.legend{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--mut)}.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:4px}.legend small{opacity:.7}.donutrow{display:flex;align-items:center;gap:18px}.dlist{list-style:none;margin:0;padding:0;flex:1}.dlist li{display:flex;align-items:center;gap:8px;padding:4px 0;border-bottom:1px solid var(--line)}.dlist li span{flex:1}.dlist i{width:10px;height:10px;border-radius:3px}.stack{display:flex;height:26px;border-radius:6px;overflow:hidden;gap:2px}.stack div{color:#fff;font-size:12px;font-weight:700;display:grid;place-items:center;min-width:18px}.stack.s{height:20px}.dept-bars{display:flex;flex-direction:column;gap:14px}.dbar{color:inherit;display:block}.dbar:hover{text-decoration:none}.dbar-h{display:flex;justify-content:space-between;margin-bottom:5px}.dbar-h span{color:var(--mut);display:flex;gap:6px;align-items:center}.tbl{width:100%;border-collapse:collapse}.tbl th{text-align:left;font-size:12px;color:var(--mut);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--line)}.tbl td{padding:9px 10px;border-bottom:1px solid #eef1f5;vertical-align:middle}.tbl.compact td{padding:7px 8px}.tbl .click{cursor:pointer}.tbl .click:hover{background:#f5f8fc}.sub{display:block;color:var(--mut);font-size:11.5px}.empty{text-align:center;color:var(--mut);padding:22px}.more{font-size:13px}.evlist,.chlist,.deflist,.factors{list-style:none;margin:0;padding:0}.evlist li{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid #eef1f5;align-items:flex-start}.evlist li i{width:4px;align-self:stretch;border-radius:2px}.evlist li div{flex:1;display:flex;flex-direction:column}.evlist span,.deflist small,.factors small{color:var(--mut);font-size:12.5px}.evlist small{color:var(--mut);white-space:nowrap}.chlist li{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #eef1f5}.chlist span{flex:1}.chlist small{color:var(--mut)}.dot{width:10px;height:10px;border-radius:50%;display:inline-block;background:#2fa84f}.dot.warn{background:#e7b416}.dot.fail{background:#d9362b}.crumbs{font-size:13px;color:var(--mut);margin-bottom:12px}.crumbs .cur{color:var(--ink);font-weight:600}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:12px}.tile{border:1px solid var(--line);border-radius:10px;padding:12px;color:inherit;display:block}.tile:hover{border-color:var(--blue);text-decoration:none;box-shadow:0 2px 8px #2a5c991f}.tile-h{display:flex;gap:10px;align-items:center;margin-bottom:10px}.tile-h div{flex:1;display:flex;flex-direction:column}.tile-h small{color:var(--mut)}.filters{display:flex;gap:8px;align-items:center}input,select,button{font:inherit}.filters input,.filters select,.chips select,.card select{padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:#fff}button{padding:6px 12px;border:1px solid var(--blue);background:var(--blue);color:#fff;border-radius:8px;cursor:pointer}button:disabled{opacity:.4;cursor:default}button.ghost{background:#fff;color:var(--blue)}.uhead{display:flex;gap:18px;align-items:center;margin-bottom:16px}.uicon{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 12px}.utitle h1{margin:0 0 4px}.utitle p{margin:0}.gaugebox{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.gmeta{flex:1;min-width:150px}.gmeta div{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px solid #eef1f5}.gmeta span{color:var(--mut);font-size:12.5px}.warnbox{background:#fff6e0;border:1px solid #f1d98c;border-radius:8px;padding:8px 10px;font-size:12.5px;margin:10px 0 0}.agg{border:1px solid var(--line);border-radius:8px;margin-bottom:8px;overflow:hidden}.agg-h{display:flex;align-items:center;gap:10px;padding:9px 12px;cursor:pointer;background:#f7f9fc}.agg-h b{flex:1}.agg-h em{font-style:normal;color:var(--mut);width:12px}.node{padding:6px 12px 6px 34px;border-top:1px solid #eef1f5}.node-h{display:flex;gap:10px;align-items:center;margin-bottom:2px}.node-h span{flex:1;font-weight:600;font-size:13px}.dtag{background:#fde8d3;color:#b85a0a;padding:1px 7px;border-radius:9px}.prm{display:flex;gap:10px;padding:3px 6px;border-radius:6px;cursor:pointer;font-size:13px;align-items:center}.prm:hover{background:#f0f4fa}.prm.sel{background:#e5eefa}.prm span{flex:1;color:var(--mut)}.prm small{color:var(--mut);width:46px;text-align:right}.factors li{display:flex;gap:12px;padding:6px 0;border-bottom:1px solid #eef1f5}.factors li>b{width:34px;text-align:right}.factors li div{display:flex;flex-direction:column}.deflist li{display:flex;gap:10px;padding:7px 0;border-bottom:1px solid #eef1f5}.deflist li i{width:4px;border-radius:2px;flex:none}.deflist li div{display:flex;flex-direction:column}.chips{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}.chips button{background:#fff;color:var(--ink);border-color:var(--line)}.chips button.on{background:var(--blue);color:#fff;border-color:var(--blue)}.ev{border-bottom:1px solid #eef1f5}.ev-row{display:flex;gap:12px;align-items:center;padding:11px 4px;cursor:pointer}.ev-row:hover{background:#f7f9fc}.ev-row>i{width:4px;height:34px;border-radius:2px}.ev-main{flex:1;display:flex;flex-direction:column}.ev-main span{color:var(--mut);font-size:13px}.ev-row small{color:var(--mut)}.st{padding:2px 10px;border-radius:12px;font-size:12px;font-weight:600;min-width:80px;text-align:center}.st-new{background:#fbdedb;color:#d9362b}.st-ack{background:#fcf3d3;color:#9a7608}.st-work{background:#dde9f7;color:var(--blue)}.st-closed{background:#e3f4e8;color:#2a8a44}.ev-det{padding:6px 16px 14px;background:#f7f9fc}.ev-act{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.ev-det form{display:flex;gap:8px}.ev-det form input{flex:1;padding:6px 10px;border:1px solid var(--line);border-radius:8px}.cm{margin:4px 0;font-size:13px}.ch-h{display:flex;gap:10px;align-items:center;margin-bottom:10px}.ch-kv{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid #eef1f5}.ch-kv span{color:var(--mut)}.ch-note{margin:10px 0 0;font-size:12.5px}.ch-note.warn{color:#9a7608}.ch-note.fail{color:#d9362b;font-weight:600}.ch.fail{border-color:#f1b6b0}.mapwrap{display:flex;gap:14px}.mapscroll{flex:1;min-width:0}.map{flex:1;min-width:0;border-radius:10px}.mapside{width:190px;display:flex;flex-direction:column;gap:10px}.mapside div{display:flex;justify-content:space-between;align-items:center;font-size:13px}.mapf{margin-bottom:10px}.zl{font-size:14px;font-weight:700;fill:#44526a}.zs{font-size:11px;fill:#6b778a}.mk{cursor:pointer}.mk:hover circle:last-child{r:11}.pulse{animation:pulse 1.8s infinite;transform-origin:center}@keyframes pulse{0%{r:8;opacity:.7}to{r:22;opacity:0}}.formula{margin-bottom:12px;display:flex;flex-direction:column;gap:3px}.formula code{background:#f1f5fa;border-left:3px solid var(--blue);padding:8px 12px;font-size:14px;border-radius:4px}.formula small{color:var(--mut)}.sl{display:grid;grid-template-columns:232px 1fr 40px;gap:10px;align-items:center;padding:6px 0;font-size:13px}.sl b{text-align:right}.scale i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px}.res{margin-top:10px}@media (max-width:1100px){.kpis{grid-template-columns:repeat(2,1fr)}.g2,.g3{grid-template-columns:1fr}.span2{grid-column:auto}.shell{grid-template-columns:64px 1fr}.side a{font-size:0}.side a em{font-size:16px;width:auto}.demo-note,.search{display:none}.mapwrap{flex-direction:column}.mapside{width:auto}}.pagehead{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:6px}.pagehead p{margin:0 0 12px;max-width:720px}.rep{display:flex;gap:14px;align-items:center;margin:0}.rep-b{flex:1;display:flex;flex-direction:column;gap:2px}.rep-a{display:flex;gap:8px}.reports{gap:12px}.reports .card{margin-bottom:0}.user{position:relative;cursor:pointer;-webkit-user-select:none;user-select:none}.user div:not(.umenu){display:flex;flex-direction:column;line-height:1.15}.user small{color:var(--mut);font-size:11.5px}.umenu{position:absolute;right:0;top:44px;width:330px;max-height:70vh;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 28px #1428462e;padding:8px;display:flex!important;flex-direction:column!important;gap:2px;cursor:default}.umenu>small{padding:4px 8px}.umenu button{background:#fff;color:var(--ink);border:0;text-align:left;border-radius:6px;padding:7px 8px;display:flex;flex-direction:column;cursor:pointer}.umenu button:hover,.umenu button.on{background:#eaf1fa}.umenu button span{color:var(--mut);font-size:12px}.tabs{display:flex;gap:6px;margin-bottom:14px;border-bottom:1px solid var(--line)}.tabs button{background:none;color:var(--mut);border:0;border-bottom:3px solid transparent;border-radius:0;padding:8px 14px;font-weight:600}.tabs button.on{color:var(--blue);border-color:var(--blue)}.dchips{display:flex;gap:5px;flex-wrap:wrap;align-items:center}.dchips button{white-space:nowrap;background:#fff;color:var(--mut);border:1px solid var(--line);padding:2px 9px;font-size:12px;border-radius:12px}.dchips button.on{background:var(--blue);border-color:var(--blue);color:#fff}.adduser{display:flex;gap:8px;flex-wrap:wrap;align-items:center;background:#f3f7fc;border:1px dashed #b9cde6;border-radius:10px;padding:12px;margin-bottom:14px}.adduser input,.adduser select{padding:6px 10px;border:1px solid var(--line);border-radius:8px}.tbl tr.off td{opacity:.55}.tbl .acts{white-space:nowrap}.tbl .acts button{margin-left:6px;padding:4px 10px;font-size:12.5px}.you{margin-left:8px;background:#e5eefa;color:var(--blue);border-radius:9px;padding:0 7px;font-size:11px}.src{font-size:12px;padding:2px 8px;border-radius:9px;background:#eef1f5;color:var(--mut)}.src.ad{background:#e3f4e8;color:#2a8a44}.matwrap{overflow:auto}.matrix th{text-align:center;vertical-align:bottom}.matrix th:first-child{text-align:left}.matrix th small{display:block;font-weight:400}.matrix td.chk{text-align:center}.matrix td.chk input{width:18px;height:18px;accent-color:var(--blue)}.matrix .desc td{font-size:11.5px;color:var(--mut);text-align:center;vertical-align:top;max-width:140px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:#1c2b3f;color:#fff;padding:10px 18px;border-radius:10px;box-shadow:0 6px 20px #00000040;z-index:50}.fs{border:0;padding:0;margin:0;min-width:0}.fs:disabled{opacity:.55}.umenu button b{font-weight:600}.umenu button span{width:auto;height:auto;background:none;color:var(--mut);display:block;font-weight:400}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(160deg,#eaf1fa,#f3f6fa 55%,#e6f4ea)}.login-card{width:360px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px 30px 26px;box-shadow:0 10px 40px #1428461f;display:flex;flex-direction:column;gap:12px;text-align:center}.login-card img{height:92px;margin:0 auto 4px}.login-card h1{font-size:19px;margin:0;color:var(--blue-d)}.login-card p{margin:0 0 8px}.login-card label{text-align:left;font-size:12.5px;color:var(--mut);display:flex;flex-direction:column;gap:4px}.login-card input{padding:10px 12px;border:1px solid var(--line);border-radius:8px;font-size:15px;color:var(--ink)}.login-card input:focus{outline:2px solid #9bbbe3;border-color:var(--blue)}.login-card button{padding:11px;font-size:15px;margin-top:6px}.login-err{color:#d9362b;font-size:13px}.umenu .logout{margin-top:6px;border-top:1px solid var(--line);border-radius:0 0 6px 6px;color:#d9362b;font-weight:600}.rolecards{display:none}@media (max-width:760px){html,body{overflow-x:hidden}.shell{display:block;min-height:100vh;padding-bottom:62px}.top{height:56px;padding:0 12px;gap:8px;position:sticky}.logo{height:34px}.title{min-width:0;flex:1}.lv-t{display:none}.live{margin-left:0!important}.grid>*,.card,.col{min-width:0}.card>header>*{max-width:100%}.dbar,.stack{min-width:0;max-width:100%}.title b{font-size:13.5px;line-height:1.15}.title span,.search{display:none}.live{margin-left:auto;padding:4px 9px;font-size:11.5px;white-space:nowrap}.user{gap:0}.user>div:not(.umenu){display:none!important}.user>span{width:32px;height:32px}.umenu{position:fixed;left:10px;right:10px;top:62px;width:auto;max-height:calc(100vh - 140px)}.side{position:fixed;left:0;right:0;bottom:0;top:auto;height:auto;z-index:30;flex-direction:row;gap:0;padding:4px 4px calc(4px + env(safe-area-inset-bottom));overflow-x:auto;box-shadow:0 -2px 12px #14284640;scrollbar-width:none}.side::-webkit-scrollbar{display:none}.side a{flex:0 0 auto;min-width:68px;flex-direction:column;gap:2px;padding:6px;font-size:10.5px!important;text-align:center;line-height:1.15;border-radius:8px;position:relative}.side a em{font-size:17px!important;width:auto}.side a .badge{position:absolute;top:1px;right:10px;margin:0;padding:0 5px;font-size:10px}.demo-note{display:none}main{padding:14px 12px 24px}h1{font-size:19px;margin-bottom:10px}.card{padding:12px;border-radius:10px;margin-bottom:12px}.card>header{margin-bottom:10px}.grid{gap:12px}.kpis{grid-template-columns:1fr 1fr;gap:10px}.kpi{padding:10px 12px}.kpi b{font-size:25px}.kpi span{font-size:12px}.kpi small{font-size:11.5px}.kpi:first-child{grid-column:span 2}.donutrow{flex-direction:column;align-items:stretch}.donutrow svg{align-self:center}.dbar-h{flex-direction:column;gap:2px}.legend{gap:8px;font-size:11px}.tbl{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}.tbl td,.tbl th{padding:8px}.tbl.compact td{white-space:nowrap}.tbl.fleet{display:table;width:100%;white-space:normal}.tbl.fleet th:nth-child(n+3):nth-child(-n+5),.tbl.fleet th:nth-child(n+7),.tbl.fleet td:nth-child(n+3):nth-child(-n+5),.tbl.fleet td:nth-child(n+7){display:none}.tbl.fleet td:nth-child(2){white-space:normal}.tiles{grid-template-columns:1fr}.tile-h b{font-size:13.5px}.filters{flex-wrap:wrap;width:100%}.filters input,.filters select{flex:1 1 120px;min-width:0}.crumbs{font-size:12px;line-height:1.6}.evlist li{flex-wrap:wrap}.evlist small{width:100%;padding-left:14px}.chlist li{flex-wrap:wrap}.uhead{gap:12px;align-items:flex-start}.uicon{padding:8px 6px}.uicon svg{width:64px;height:auto}.utitle p{font-size:12.5px}.gaugebox{justify-content:center}.gmeta{min-width:100%}.agg-h{gap:8px;padding:9px 10px}.agg-h .itsbar{display:none}.node{padding:6px 8px 6px 18px}.prm{flex-wrap:wrap;gap:6px}.prm span{flex:1 1 100%}.prm small{width:auto;margin-left:auto}.factors li>b{width:30px}.chips{gap:6px}.chips button{padding:5px 9px;font-size:12.5px}.chips select{width:100%}.ev-row{flex-wrap:wrap;gap:8px}.ev-row>i{height:auto;align-self:stretch}.ev-main{flex:1 1 60%;min-width:0}.ev-row small{order:3}.st{min-width:0}.ev-det{padding:6px 10px 12px}.ev-act{flex-direction:column}.ev-act select,.ev-act button{width:100%}.ev-det form{flex-direction:column}.mapscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:10px}.mapscroll .map{width:780px;max-width:none;display:block}.mapwrap{flex-direction:column}.mapside{width:auto;flex-direction:row;flex-wrap:wrap;gap:8px 16px}.mapside div{gap:8px}.mapf select{flex:1 1 140px}.sl{grid-template-columns:1fr 46px;gap:4px 10px}.sl>span{grid-column:span 2}.sl select{grid-column:1/-1}.formula code{font-size:12.5px;overflow-x:auto}.pagehead{flex-direction:column;gap:6px}.pagehead button{width:100%}.rep{flex-direction:column;align-items:stretch;gap:10px}.rep-a button{flex:1}.tabs{overflow-x:auto}.tabs button{white-space:nowrap;padding:8px 10px}.adduser{flex-direction:column;align-items:stretch}.tbl .acts{white-space:nowrap}.toast{left:12px;right:12px;transform:none;bottom:76px;text-align:center}.login{padding:16px}.login-card{width:100%;max-width:360px;padding:24px 20px}}@media (max-width:760px){.matwrap{display:none}.rolecards{display:flex;flex-direction:column;gap:12px}.rolecard{border:1px solid var(--line);border-radius:10px;padding:12px}.rc-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.rc-h b{font-size:15px}.rc-h small{color:var(--mut)}.rolecard>p{margin:2px 0 8px}.rc-row{display:flex;gap:12px;align-items:flex-start;padding:9px 0;border-top:1px solid #eef1f5}.rc-row input{width:22px;height:22px;flex:none;margin:1px 0 0;accent-color:var(--blue)}.rc-row span{display:flex;flex-direction:column;min-width:0}.rc-row small{color:var(--mut);font-size:12px}}@media (max-width:380px){.kpis{grid-template-columns:1fr}.kpi:first-child{grid-column:auto}.title b{font-size:12.5px}}.repairbar{display:flex;gap:16px;align-items:center;background:#eaf1fa;border:1px solid #b9cde6;border-left:5px solid var(--blue);border-radius:12px;padding:14px 16px;margin-bottom:16px}.repairbar.over{background:#fdecea;border-color:#f1b6b0;border-left-color:#d9362b}.repairbar.idle{background:#fff;border-color:var(--line);border-left-color:#b8c3d3}.rb-icon{font-size:26px}.rb-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.rb-main>b{font-size:15px}.rb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:8px}.rb-grid>div{display:flex;flex-direction:column;gap:1px}.rb-grid small{color:var(--mut);font-size:12px}.rb-grid b{font-size:15px}.rb-grid em{font-style:normal;font-size:12.5px;color:var(--mut)}.rb-grid em.neg{color:#d9362b;font-weight:600}.rb-prog{height:6px;background:#2a5c9926;border-radius:3px;overflow:hidden;margin-top:10px}.rb-prog i{display:block;height:100%;background:var(--blue)}.over .rb-prog i{background:#d9362b}.rb-act{display:flex;flex-direction:column;gap:8px}.rb-act button{white-space:nowrap}em.shift{font-style:normal;display:inline-block;font-size:12px;font-weight:600;padding:1px 9px;border-radius:10px}em.shift.day{background:#fff3c9;color:#8a6a00}em.shift.night{background:#dde3f5;color:#3a4a8a}.rtag{display:block;margin-top:3px;font-size:11.5px;color:var(--blue);background:#e5eefa;border-radius:9px;padding:1px 8px;width:fit-content}.rtag.over{background:#fdecea;color:#d9362b}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#14203280;display:grid;place-items:center;z-index:60;padding:16px}.modal{background:#fff;border-radius:14px;padding:22px;width:520px;max-width:100%;display:flex;flex-direction:column;gap:12px;box-shadow:0 20px 60px #00000059}.modal.small{width:400px}.modal h3{font-size:17px}.modal label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--mut)}.modal input,.modal select{padding:9px 10px;border:1px solid var(--line);border-radius:8px;font-size:14px;color:var(--ink);background:#fff}.modal .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-act{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.shiftnote{margin:0;font-size:12.5px;color:var(--mut);background:#f3f7fc;border-radius:8px;padding:8px 10px}.kpis{grid-template-columns:repeat(6,1fr)}@media (max-width:1100px){.kpis{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.kpis{grid-template-columns:1fr 1fr}.kpi:first-child{grid-column:auto}.repairbar{flex-direction:column;align-items:stretch;gap:10px;padding:12px}.rb-grid{grid-template-columns:1fr 1fr}.rb-act{flex-direction:row}.rb-act button{flex:1}.modal{padding:16px}.modal .two{grid-template-columns:1fr}}@media (max-width:380px){.kpis{grid-template-columns:1fr}}
