:root{--dash-orange: #ffae00;--dash-orange-dim: rgba(255, 174, 0, .15);--dash-red: #ff0000;--dash-green: #1eb300;--dash-green-dark: #558000;--dash-blue: #0055ff;--dash-purple: #8f00b3;--dash-grey: #7e7e7e;--dash-white: #ffffff;--dash-row: 23px;--dash-font: "Tektur", sans-serif}.dash{height:100%;display:grid;grid-template-columns:142px minmax(0,1fr);background:#000;color:#fff;font-family:var(--dash-font);text-transform:uppercase;overflow:hidden}.dash.dash--collapsed{grid-template-columns:44px minmax(0,1fr)}.dash-menu{display:flex;flex-direction:column;border-right:2px solid var(--dash-orange);min-height:0}.dash-menu__brand{height:54px;display:flex;align-items:center;padding:0 15px;border-bottom:2px solid var(--dash-orange);font-weight:700;font-size:22px;letter-spacing:2.2px;color:var(--dash-orange);overflow:hidden;white-space:nowrap}.dash-menu__brand:after{content:"";width:6px;height:6px;border-radius:3px;background:var(--dash-orange);margin:-14px 0 0 3px}.dash-menu__items{flex:1;display:flex;flex-direction:column;padding-top:20px;min-height:0}.dash-menu__item{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;height:30px;padding:0 15px;border:0;background:transparent;color:#fff;font:inherit;font-weight:600;font-size:13px;letter-spacing:1.3px;text-transform:inherit;text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden}.dash-menu__item:hover{background:var(--dash-orange-dim)}.dash-menu__item--active{background:var(--dash-orange);color:#000}.dash-menu__item--active:hover{background:var(--dash-orange)}.dash-menu__footer{border-top:2px solid var(--dash-orange)}.dash-menu__footer .dash-menu__item{height:48px;border-bottom:2px solid var(--dash-orange)}.dash-menu__footer .dash-menu__item:last-child{border-bottom:0}.dash-menu__glyph{display:none;font-style:normal;font-weight:700}.dash--collapsed .dash-menu__item span,.dash--collapsed .dash-menu__brand{display:none}.dash--collapsed .dash-menu__glyph{display:inline}.dash--collapsed .dash-menu__item{justify-content:center;padding:0}.dash--collapsed .dash-menu__item .dash-badge{position:absolute;top:2px;right:2px;transform:scale(.8)}.dash-badge{min-width:16px;height:16px;padding:0 4px;border-radius:6px;background:var(--dash-red);color:#000;font-weight:600;font-size:11px;letter-spacing:1.1px;line-height:16px;text-align:center;flex:none}.dash-badge--button{border:0;font-family:inherit;cursor:pointer}.dash-badge--muted{background:var(--dash-grey)}.dash-main{min-width:0;min-height:0;overflow:auto}.dash-grid{height:100%;min-height:600px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,.8fr);grid-template-rows:minmax(0,44fr) minmax(0,56fr);gap:5px;padding:5px;box-sizing:border-box}@media(max-width:1100px){.dash-grid{height:auto;grid-template-columns:minmax(0,1fr);grid-template-rows:none;grid-auto-rows:380px}}.dash-panel{position:relative;min-width:0;min-height:0;display:flex;flex-direction:column;border:2px solid var(--dash-orange);background:#000;overflow:hidden}.dash-panel:fullscreen{border:0}.dash-panel__head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:28px;padding:0 15px;border-bottom:2px solid var(--dash-orange);font-weight:600;font-size:11px;letter-spacing:1.1px;color:var(--dash-orange);white-space:nowrap;overflow:hidden}.dash-panel__head-title{overflow:hidden;text-overflow:ellipsis;color:var(--dash-orange)}.dash-panel__head-title .dash-panel__coords{color:var(--dash-blue);margin-left:6px}.dash-panel__head-right{display:flex;align-items:center;gap:8px;flex:none}.dash-panel__head-label{color:var(--dash-grey);font-weight:500;font-size:9px;letter-spacing:.9px}.dash-panel__body{flex:1;min-height:0;overflow:auto}.dash-panel__empty{padding:15px;color:var(--dash-grey);font-size:11px;letter-spacing:1.1px}.dash-panel__error{padding:6px 15px;color:var(--dash-red);font-size:11px;letter-spacing:1.1px}.dash-create{display:flex;align-items:center;gap:6px;padding:4px 15px;border-bottom:1px solid var(--dash-orange)}.dash-create__input{flex:1;min-width:0;height:22px;padding:0 8px;border:1px solid var(--dash-grey);border-radius:2px;background:#000;color:#fff;font:inherit;font-size:11px;letter-spacing:1.1px;text-transform:inherit}.dash-create__input:focus{outline:none;border-color:var(--dash-orange)}.dash-create .dash-tool:disabled{opacity:.4;cursor:default}.dash-table{width:100%;border-collapse:collapse;table-layout:fixed}.dash-table th{height:26px;padding:0 6px;color:var(--dash-grey);font-weight:500;font-size:9px;letter-spacing:.9px;text-align:left;white-space:nowrap;position:sticky;top:0;background:#000;z-index:1}.dash-table th:first-child,.dash-table td:first-child{padding-left:15px}.dash-table th:last-child,.dash-table td:last-child{padding-right:15px}.dash-table thead tr{box-shadow:inset 0 -1px 0 var(--dash-orange)}.dash-table td{height:var(--dash-row);padding:0 6px;font-weight:400;font-size:11px;letter-spacing:1.1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.dash-table tr.dash-row{cursor:pointer}.dash-table tr.dash-row:hover{background:var(--dash-orange-dim)}.dash-table tr.dash-row--selected,.dash-table tr.dash-row--selected:hover{background:var(--dash-orange);color:#000}.dash-table tr.dash-row--selected td{font-weight:600}.dash-table tr.dash-row--selected .dash-color,.dash-table tr.dash-row--selected .dash-panel__coords{color:#000!important}.dash-table tr.dash-row--dim td{color:var(--dash-grey)}.dash-table tr.dash-row--group td{color:var(--dash-orange);font-weight:600}.dash-table td.dash-cell--indent{padding-left:30px}.dash-table td.dash-cell--num,.dash-table th.dash-cell--num{text-align:center}.dash-table td.dash-cell--wrap{white-space:normal;line-height:12px;padding-top:4px;padding-bottom:4px}.dash-color--orange{color:var(--dash-orange)}.dash-color--green{color:var(--dash-green)}.dash-color--red{color:var(--dash-red)}.dash-color--white{color:var(--dash-white)}.dash-color--blue{color:var(--dash-blue)}.dash-color--purple{color:var(--dash-purple)}.dash-color--grey{color:var(--dash-grey)}.dash-tag{display:inline-block;margin-left:6px;padding:0 4px;border-radius:3px;background:#fff;color:#000;font-size:9px;letter-spacing:.9px;line-height:12px;vertical-align:middle}.dash-tag--red{background:var(--dash-red)}.dash-dots{display:inline-flex;gap:8px;align-items:center}.dash-dot{width:11px;height:11px;border-radius:50%;opacity:.22}.dash-dot--lit{opacity:1}.dash-dot--red{background:var(--dash-red)}.dash-dot--orange{background:var(--dash-orange)}.dash-dot--green{background:var(--dash-green)}.dash-dot--white,.dash-dot--black{background:var(--dash-white)}.dash-select{height:20px;padding:0 22px 0 8px;border:0;border-radius:2px;background:var(--dash-green-dark);color:#fff;font:inherit;font-weight:600;font-size:10px;letter-spacing:1px;text-transform:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#fff 50%),linear-gradient(135deg,#fff 50%,transparent 50%);background-position:calc(100% - 12px) 8px,calc(100% - 8px) 8px;background-size:4px 4px,4px 4px;background-repeat:no-repeat}.dash-select--in_progress{background-color:#a06d00}.dash-select--attention{background-color:#8a0000}.dash-select--approved{background-color:var(--dash-green-dark)}.dash-select--done{background-color:#333}.dash-status{display:inline-flex;align-items:center;gap:6px}.dash-status__badge{height:20px;padding:0 8px;border:1px solid currentColor;border-radius:2px;font-weight:600;font-size:10px;letter-spacing:1px;line-height:18px}.dash-status__move{height:20px;padding:0 8px;border:1px solid var(--dash-grey);border-radius:2px;background:transparent;color:#fff;font:inherit;font-size:10px;letter-spacing:1px;text-transform:inherit;cursor:pointer}.dash-status__move:hover{border-color:var(--dash-orange);color:var(--dash-orange)}.dash-status__move:disabled{opacity:.4;cursor:default}.dash-tools{position:absolute;display:flex;flex-direction:column;gap:4px;z-index:2}.dash-tools--tl{top:8px;left:8px}.dash-tools--tr{top:8px;right:8px}.dash-tools--bl{bottom:8px;left:8px}.dash-tools--br{bottom:8px;right:8px}.dash-tools--row{flex-direction:row}.dash-tool{width:22px;height:22px;border:0;border-radius:2px;background:var(--dash-orange);color:#000;font:inherit;font-weight:700;font-size:14px;line-height:22px;text-align:center;cursor:pointer;padding:0}.dash-tool:hover{background:#ffc540}.dash-tool--text{width:auto;padding:0 10px;font-size:10px;letter-spacing:1px}.dash-tool--ghost{background:#000000b3;color:var(--dash-orange);border:1px solid var(--dash-orange)}.dash-viewer{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.dash-viewer:active{cursor:grabbing}.dash-viewer__content{position:absolute;left:50%;top:50%;transform-origin:0 0;will-change:transform}.dash-viewer__frame{position:relative;display:block;transform:translate(-50%,-50%)}.dash-viewer__frame img{display:block;max-width:none;pointer-events:none}.dash-region{position:absolute;border:2px solid var(--dash-orange);box-sizing:border-box;pointer-events:none}.dash-region--selected{border-width:3px;box-shadow:0 0 0 2px #000,0 0 0 4px var(--dash-orange)}.dash-region--plastic{border-color:var(--dash-blue)}.dash-region--metal{border-color:var(--dash-orange)}.dash-region--parking{border-color:var(--dash-red)}.dash-region--existing{border-color:var(--dash-green)}.dash-region--deinstalled{border-color:var(--dash-purple)}.dash-region__label{position:absolute;left:-2px;top:-14px;padding:0 3px;background:#000;color:#fff;font-size:9px;letter-spacing:.9px;line-height:12px;white-space:nowrap}.dash-pin{position:absolute;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;border:2px solid #000;color:#000;font-weight:700;font-size:11px;line-height:18px;text-align:center;cursor:pointer;pointer-events:auto;box-sizing:border-box}.dash-pin--selected{width:30px;height:30px;margin:-15px 0 0 -15px;line-height:26px;font-size:13px;box-shadow:0 0 0 3px var(--dash-orange)}.dash-pin--orange{background:var(--dash-orange)}.dash-pin--blue{background:var(--dash-blue);color:#fff}.dash-pin--purple{background:var(--dash-purple);color:#fff}.dash-pin--white{background:#fff}.dash-pin--mixed{background:linear-gradient(135deg,var(--dash-blue) 50%,var(--dash-orange) 50%);color:#fff}.dash-map{position:absolute;top:0;right:0;bottom:0;left:0}.dash-map__list{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;padding:10px 15px;display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start}.dash-map__list .dash-pin{position:static;margin:0}.dash-map__notice{position:absolute;left:15px;right:15px;bottom:12px;color:var(--dash-grey);font-size:10px;letter-spacing:1px}.dash-drawer{position:fixed;top:0;right:0;bottom:0;width:min(520px,100vw);background:#000;border-left:2px solid var(--dash-orange);z-index:20;display:flex;flex-direction:column;text-transform:none}.dash-drawer__scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:19}.dash-team{height:100%;display:flex;flex-direction:column;padding:5px;gap:5px;box-sizing:border-box}.dash-tabs{display:flex;gap:5px}.dash-tab{height:28px;padding:0 18px;border:2px solid var(--dash-orange);background:#000;color:var(--dash-orange);font:inherit;font-weight:600;font-size:11px;letter-spacing:1.1px;text-transform:inherit;cursor:pointer}.dash-tab--active{background:var(--dash-orange);color:#000}.dash-team__columns{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:5px}.dash-form{display:flex;flex-direction:column;gap:10px;min-height:0;height:100%}.dash-form>.dash-panel__head+*{margin-top:4px}.dash-form__field{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:10px;padding:0 15px;color:var(--dash-grey);font-size:9px;letter-spacing:.9px}.dash-form__row{display:flex;flex-wrap:wrap;gap:6px;padding:0 15px}.dash-form__stats{display:grid;grid-template-columns:max-content 1fr;gap:4px 12px;margin:0;padding:0 15px;font-size:10px;letter-spacing:1px}.dash-form__stats dt{color:var(--dash-grey)}.dash-form__stats dd{margin:0}.dash-tool--danger{background:var(--dash-red);color:#fff}.dash-tool--danger:hover{background:#ff4040}.dash-acts{height:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:5px;padding:5px;box-sizing:border-box}.dash-acts__chat{text-transform:none}.dash-acts__chat .dash-panel__empty p{margin:0 0 10px}
