:root{--bg:#f2f5f1;--paper:#fff;--ink:#142521;--muted:#6b7c76;--line:#e2e9e3;--deep:#10221e;--deep2:#1c3630;--accent:#c7f12c;--cyan:#6be0d7;--warning:#ffb44b;--danger:#ed716e;--shadow:0 15px 45px rgba(24,49,39,.045)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:14px}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(30px,3vw,43px);letter-spacing:-.04em;line-height:1.13;margin-bottom:11px}h2{font-size:19px;letter-spacing:-.025em;margin:0}p{line-height:1.55}.app{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--deep);color:#eaf4ec;padding:30px 17px 18px;display:flex;flex-direction:column;z-index:4}.brand,.login-mark{display:flex;gap:15px;align-items:center;font-weight:850;letter-spacing:.13em;font-size:17px;margin:3px 11px 45px}.mark{width:29px;height:29px;border:3px solid var(--accent);border-radius:9px;display:block;position:relative;transform:rotate(30deg);flex:none}.mark:after{content:"";position:absolute;inset:5px;border:2px solid var(--cyan);border-radius:3px}.side-caption,.nav-group,.eyebrow,.login-eyebrow{font-size:10px;font-weight:800;letter-spacing:.13em;color:#87a398}.side-caption{padding:0 11px;margin:0 0 18px}.nav-group{padding:22px 11px 10px}.nav-link{appearance:none;border:0;background:transparent;color:#bed0c4;display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:12px 11px;margin:2px 0;border-radius:10px;font-weight:600;min-height:44px}.nav-link:hover{background:#203b33;color:#fff}.nav-link.active{background:var(--accent);color:#192c24;font-weight:800}.nav-icon{font-size:18px;line-height:1;width:21px;text-align:center}.nav-badge{margin-left:auto;background:#f9c371;color:#35250e;border-radius:12px;min-width:20px;text-align:center;font-size:11px;padding:3px 5px}.side-bottom{margin-top:auto;background:#1a332c;border:1px solid #2c4c3d;border-radius:12px;padding:13px;display:flex;gap:11px;align-items:center}.side-bottom strong,.side-bottom small{display:block}.side-bottom strong{font-size:12px}.side-bottom small{font-size:10px;color:#9bb3a7;margin-top:3px}.pulse,.live-dot{height:8px;width:8px;background:var(--accent);display:inline-block;border-radius:50%;box-shadow:0 0 0 5px rgba(199,241,44,.13);flex:none}.workspace{min-width:0}.topbar{height:76px;padding:0 34px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}.breadcrumbs{font-size:11px;color:#70817a;font-weight:800;letter-spacing:.08em}.breadcrumbs span:first-child{padding:0 10px;color:#b4c0b9}.top-actions{display:flex;align-items:center;gap:17px}.clock{color:#5d6d66;font-size:12px;white-space:nowrap}.demo-badge,.demo-small{font-size:10px;font-weight:800;letter-spacing:.07em;color:#557146;background:#e9f6d1;padding:8px 11px;border-radius:99px;white-space:nowrap}.user-button{border:0;background:transparent;display:flex;gap:8px;align-items:center;font-size:12px;color:var(--ink);font-weight:700}.avatar{width:31px;height:31px;border-radius:9px;background:#163c34;color:var(--accent);display:grid;place-items:center}.icon-button{border:1px solid var(--line);border-radius:9px;background:white;padding:7px 10px}.menu-button{display:none}main{padding:33px 34px 55px;max-width:1600px;margin:auto}.view{display:none}.view.active{display:block;animation:appear .22s ease-out}@keyframes appear{from{opacity:.65;transform:translateY(5px)}to{opacity:1;transform:none}}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 28px}.page-head p{color:var(--muted);margin-bottom:0;max-width:720px}.eyebrow{color:#588172;margin-bottom:10px}.head-status,.status-chip{display:flex;align-items:center;gap:10px;white-space:nowrap;border:1px solid #dcead9;border-radius:12px;background:#f9fdf6;padding:13px 15px;color:#29513f}.head-status strong,.head-status small{display:block}.head-status strong{font-size:12px}.head-status small{font-size:11px;color:#6e8274;margin-top:3px}.status-chip{font-size:12px;font-weight:800}.status-chip.simulated{color:#6f7733;background:#f6f8e9}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:28px}.metric-card{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);min-height:137px;padding:20px 21px;overflow:hidden}.metric-card:before{content:"";position:absolute;top:0;left:20px;width:32px;height:3px;background:var(--cyan)}.metric-card.lime:before{background:var(--accent)}.metric-card.orange:before{background:var(--warning)}.metric-card span{display:block;color:#708079;font-size:11px;font-weight:700;letter-spacing:.045em;text-transform:uppercase}.metric-card strong{display:block;font-size:clamp(27px,2.6vw,37px);letter-spacing:-.05em;margin:17px 0 2px;line-height:1}.metric-card small{display:block;color:#8a9992;font-size:11px}.section-line{display:flex;align-items:baseline;justify-content:space-between;margin:32px 0 16px}.section-line span{font-size:12px;color:#82918a}.system-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.system-card{border:1px solid var(--line);background:var(--paper);border-radius:16px;padding:20px;text-align:left;min-height:167px;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}.system-card:hover{transform:translateY(-2px);box-shadow:0 15px 35px rgba(24,49,39,.09)}.system-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.system-symbol{height:33px;width:33px;border-radius:9px;background:#e9f8dc;color:#315d3b;display:grid;place-items:center;font-size:19px}.system-card .system-head small{color:#64856e;font-size:11px}.system-card h3{font-size:16px;margin-bottom:5px}.system-card p{color:var(--muted);font-size:12px;margin-bottom:14px}.system-card .system-value{font-size:22px;font-weight:800;letter-spacing:-.04em}.system-card .system-value em{font-size:11px;font-style:normal;font-weight:600;color:#9aaba2;margin-left:8px}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:15px}.overview-lower{margin-top:28px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:var(--shadow);min-width:0}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:22px}.panel-heading .eyebrow{margin-bottom:5px}.panel-heading>span{font-size:11px;color:#8b9993}.text-button{border:0;background:none;padding:2px;color:#38745b;font-size:12px;font-weight:800}.text-button:hover{text-decoration:underline}.chart{height:200px;position:relative}.chart svg{width:100%;height:100%;display:block}.axis-labels{display:flex;justify-content:space-between;color:#9baaa2;font-size:10px;margin-top:3px}.empty-state{padding:30px;color:#82918a;text-align:center;border:1px dashed #dbe5db;border-radius:10px}.alarm-mini{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.alarm-mini:last-child{border:0}.alarm-dot{width:9px;height:9px;border-radius:50%;background:var(--warning);margin-top:5px;flex:none}.alarm-dot.critical{background:var(--danger)}.alarm-mini strong,.alarm-mini small{display:block}.alarm-mini strong{font-size:13px}.alarm-mini small{font-size:11px;color:#8a9992;margin-top:4px}.control-panel{min-height:310px}.control-group{margin:22px 0}.control-row{display:flex;justify-content:space-between;align-items:center;gap:14px}.control-row strong{font-size:13px}.control-row span,.control-help{font-size:12px;color:#8a9992}.setpoint-value{font-size:43px;font-weight:800;letter-spacing:-.05em;margin:18px 0 8px}.setpoint-value small{font-size:17px;font-weight:600;color:#85968d}.range{width:100%;accent-color:#8fb919}.range-ends{display:flex;justify-content:space-between;font-size:11px;color:#a0ada5}.button{border:0;border-radius:10px;padding:11px 16px;font-weight:800;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:40px}.button-primary{background:var(--accent);color:#1b2f25}.button-primary:hover{background:#b9e42a}.button-secondary{background:#edf2ec;color:#284a3a}.button-secondary:hover{background:#e1eadf}.segmented{display:flex;gap:5px;background:#edf3ec;border-radius:11px;padding:4px}.segmented button{border:0;border-radius:8px;background:transparent;color:#678176;font-size:12px;font-weight:750;padding:9px 16px;flex:1}.segmented button.selected{background:#fff;color:#15372b;box-shadow:0 2px 8px rgba(0,0,0,.05)}.equipment-line,.toggle-row,.zone-row,.power-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 0;border-bottom:1px solid var(--line)}.equipment-line:last-child,.toggle-row:last-child,.zone-row:last-child,.power-row:last-child{border-bottom:0}.equipment-line span,.toggle-row span,.zone-row span{color:#75857c;font-size:12px}.equipment-line strong{font-size:13px}.equip-bar{height:7px;border-radius:7px;background:#e9f0e9;margin:5px 0 14px;overflow:hidden}.equip-bar i{display:block;height:100%;background:var(--cyan);border-radius:7px}.equip-bar.lime i{background:#b2df54}.toggle-row strong,.zone-row strong,.power-row strong{display:block;font-size:13px}.toggle-row small,.zone-row small,.power-row small{display:block;color:#9baaa2;font-size:11px;margin-top:5px}.toggle{width:42px;height:24px;border:0;border-radius:20px;background:#d0dcd2;position:relative;flex:none}.toggle:before{content:"";position:absolute;top:4px;left:4px;width:16px;height:16px;border-radius:50%;background:white;transition:transform .2s}.toggle.on{background:#a2d927}.toggle.on:before{transform:translateX(18px)}.full-chart{margin-top:15px}.notice{background:#eaf3e8;color:#4a705e;border:1px solid #d8e9d5;border-radius:11px;padding:17px 20px;font-size:12px;line-height:1.6;margin-top:15px}.scene-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.scene{background:#f6f8f4;border:1px solid #e4ece2;padding:17px;text-align:left;border-radius:11px;min-height:86px}.scene.selected{background:#eaf8d4;border-color:#b8dd67}.scene strong,.scene small{display:block}.scene strong{font-size:15px;margin-top:10px}.scene small{color:#82918a;font-size:11px;margin-top:3px}.schedule-panel{margin-top:15px}.schedule-panel form{display:flex;align-items:end;gap:15px}.schedule-panel label,.login-dialog label{display:flex;flex-direction:column;gap:7px;color:#566f62;font-size:12px;font-weight:800}.schedule-panel input,.login-dialog input{border:1px solid #dce6da;background:white;border-radius:9px;padding:10px 12px;outline:none;color:#17352a}.schedule-panel input:focus,.login-dialog input:focus{border-color:#9acb4b;box-shadow:0 0 0 3px #d9edb4}.power-meter{height:9px;background:#edf2ec;border-radius:8px;overflow:hidden;margin-top:9px}.power-meter i{display:block;height:100%;background:linear-gradient(90deg,#70d7cb,#b8e92a);border-radius:8px}.water-big{font-size:35px;font-weight:800;letter-spacing:-.04em;margin:13px 0}.water-big small{font-size:13px;color:#82918a}.camera-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:17px}.camera-box{background:#13221f;border-radius:16px;overflow:hidden}.camera-scene{height:clamp(360px,45vw,630px);position:relative;overflow:hidden;background:linear-gradient(145deg,#2b4b4b,#132827 65%)}.camera-scene.lobby{background:linear-gradient(155deg,#637771,#233b39 65%)}.camera-art{position:absolute;inset:0;background:linear-gradient(90deg,transparent 48%,rgba(255,255,255,.11) 48% 49%,transparent 49%),linear-gradient(0deg,transparent 82%,rgba(255,255,255,.08) 82% 83%,transparent 83%);background-size:150px 100%,100% 130px;perspective:600px}.camera-art:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 7%,rgba(1,12,12,.3) 7% 9%,transparent 9% 91%,rgba(1,12,12,.3) 91% 93%,transparent 93%),linear-gradient(0deg,#152b28 0 16%,transparent 16%)}.art-pipe{position:absolute;display:block;background:#7b9994;box-shadow:inset 4px 0 #9db3a9,inset -8px 0 #435c59;z-index:1}.pipe-one{height:76%;width:24px;left:17%;top:-7%}.pipe-two{height:20px;width:74%;left:7%;top:23%;box-shadow:inset 0 4px #aec0b6,inset 0 -7px #48625f}.art-unit{position:absolute;display:block;z-index:2;border:8px solid #92aaa1;background:linear-gradient(130deg,#314f4b,#1d3735);box-shadow:14px 14px 0 rgba(3,19,18,.26),inset 0 0 0 1px #c4d4c7}.unit-one{width:28%;height:33%;left:27%;top:45%}.unit-two{width:25%;height:25%;left:61%;top:50%}.art-grill{position:absolute;left:32%;top:54%;width:15%;height:14%;border-radius:50%;z-index:3;background:repeating-conic-gradient(#8ea7a0 0 9deg,#3d5c55 9deg 20deg);border:8px solid #b0c4b7;animation:fan 13s linear infinite}@keyframes fan{to{transform:rotate(360deg)}}.art-light{position:absolute;width:130px;height:130px;background:radial-gradient(circle,rgba(240,255,228,.28),transparent 68%);top:7%;right:19%;animation:glow 4s ease-in-out infinite alternate}@keyframes glow{to{opacity:.45}}.camera-scene.lobby .unit-one{width:16%;height:51%;left:14%;top:35%;background:#768e82}.camera-scene.lobby .unit-two{width:34%;height:56%;left:54%;top:32%;background:linear-gradient(90deg,#1a3f3d,#719c93 48%,#1a3f3d 51%)}.camera-scene.lobby .art-grill{display:none}.camera-scene.lobby .pipe-one,.camera-scene.lobby .pipe-two{display:none}.camera-shade{position:absolute;inset:0;z-index:4;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.43),transparent 22% 75%,rgba(0,0,0,.58)),repeating-linear-gradient(180deg,rgba(255,255,255,.018) 0 1px,transparent 1px 4px)}.camera-top,.camera-bottom{position:absolute;z-index:5;left:20px;right:20px;color:white;display:flex;gap:9px;align-items:center}.camera-top{top:19px;font-size:11px;letter-spacing:.12em;font-weight:800}.camera-top span:last-child{margin-left:auto;font-size:11px}.rec-dot{width:8px;height:8px;border-radius:50%;background:#ee7568;box-shadow:0 0 0 5px rgba(238,117,104,.12)}.camera-bottom{bottom:20px;justify-content:space-between;align-items:end}.camera-bottom strong{font-size:23px}.camera-bottom span{font-size:11px;color:#c2d6ce}.camera-toolbar{display:flex;justify-content:space-between;gap:10px;padding:14px 19px;color:#a8beb3;font-size:11px}.camera-list{align-self:start}.camera-option{display:block;width:100%;text-align:left;padding:15px;border:1px solid var(--line);background:#fff;border-radius:11px;margin-bottom:10px}.camera-option.selected{background:#edfae4;border-color:#add87b}.camera-option strong,.camera-option small{display:block}.camera-option strong{font-size:13px}.camera-option small{color:#84978a;margin-top:5px}.camera-note{color:#82918a;font-size:12px;line-height:1.55;margin-top:18px}.journal-tools{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:15px}.journal-tools .text-button{margin-left:auto}.journal-columns{grid-template-columns:1fr 1.2fr}.alarm-item,.history-item{border-bottom:1px solid var(--line);padding:16px 0}.alarm-item:first-child,.history-item:first-child{padding-top:0}.alarm-item:last-child,.history-item:last-child{border-bottom:0}.alarm-head{display:flex;align-items:center;gap:9px}.alarm-head strong{font-size:13px}.alarm-head time,.history-item time{margin-left:auto;color:#9baa9f;font-size:10px}.alarm-item p{color:#778a7e;font-size:12px;margin:6px 0 6px 18px}.alarm-item .text-button{margin-left:18px}.acknowledged{opacity:.55}.history-item strong{display:block;font-size:12px}.history-item p{font-size:12px;color:#7e9085;margin:4px 0}.history-item .history-meta{display:flex;gap:10px;color:#9baa9f;font-size:10px}.toast{position:fixed;z-index:15;right:25px;bottom:25px;background:#172c25;color:white;border-left:4px solid var(--accent);border-radius:9px;padding:15px 19px;box-shadow:0 10px 35px rgba(0,0,0,.2);max-width:380px;display:none}.toast.show{display:block}.login-dialog,.confirm-dialog{border:0;border-radius:18px;box-shadow:0 35px 100px rgba(6,29,19,.3);padding:0}.login-dialog::backdrop,.confirm-dialog::backdrop{background:rgba(8,24,19,.75)}.login-dialog{width:min(440px,calc(100vw - 30px));padding:30px 34px 26px;background:#fff}.login-mark{color:#173529;margin:0 0 35px}.login-eyebrow{color:#568369;margin-bottom:14px}.login-dialog h1{font-size:35px}.login-dialog>p{color:#77877d;font-size:13px;margin:12px 0 26px}.login-dialog form{display:grid;gap:16px}.login-dialog input{height:45px;font-size:14px}.login-dialog form button{width:100%;justify-content:space-between;margin-top:4px;height:46px}.form-error{min-height:10px;color:#b34944;font-size:12px}.login-foot{font-size:11px;color:#9cac9f;margin-top:30px;line-height:1.5}.confirm-dialog{width:min(410px,calc(100vw - 30px));padding:28px}.confirm-icon{height:42px;width:42px;background:#e8f5d5;color:#628a27;border-radius:12px;display:grid;place-items:center;font-size:24px;margin-bottom:17px}.confirm-dialog p{color:#667d70;font-size:13px;margin:12px 0 20px}.confirm-actions{display:flex;justify-content:flex-end;gap:9px}.confirm-dialog small{display:block;color:#9aaa9e;margin-top:18px}dialog:not([open]){display:none}
@media(max-width:1180px){.metric-grid{grid-template-columns:repeat(2,1fr)}.system-grid{grid-template-columns:repeat(2,1fr)}.clock{display:none}}@media(max-width:900px){.app{grid-template-columns:1fr}.sidebar{position:fixed;transform:translateX(-100%);transition:transform .2s;width:260px;box-shadow:10px 0 30px rgba(0,0,0,.18)}.sidebar.open{transform:translateX(0)}.menu-button{display:block}.topbar{padding:0 18px;gap:10px}.breadcrumbs{margin-right:auto}.top-actions{gap:8px}main{padding:25px 18px}.camera-layout{grid-template-columns:1fr}}@media(max-width:650px){.demo-badge{display:none}.user-button span:not(.avatar){display:none}.page-head{align-items:flex-start;flex-direction:column}.metric-grid,.system-grid,.two-columns,.journal-columns{grid-template-columns:1fr}.metric-card{min-height:115px}.system-card{min-height:140px}.section-line span{display:none}.panel{padding:18px}.schedule-panel form{display:grid;grid-template-columns:1fr 1fr}.schedule-panel button{grid-column:1/3}.camera-scene{height:390px}.camera-toolbar{flex-direction:column}.journal-tools .text-button{margin:5px 0}.topbar{height:65px}h1{font-size:32px}}
.vent-unit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.vent-unit-card{background:#fff;border:1px solid var(--line);border-radius:14px;text-align:left;padding:17px;min-height:168px;box-shadow:var(--shadow)}.vent-unit-card.selected{border-color:#94c665;background:#f5fbed;box-shadow:0 0 0 2px #dceebf}.vent-unit-top,.vent-unit-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px}.vent-unit-top strong{font-size:12px;letter-spacing:.08em;color:#3e6c54}.vent-unit-card>b{display:block;font-size:15px;margin:16px 0 5px}.vent-unit-card>small{display:block;color:#83948a;font-size:11px}.vent-unit-bottom{margin-top:17px}.vent-unit-bottom strong{font-size:21px}.vent-unit-bottom small{font-size:10px;color:#83948a;text-align:right}.unit-indicator{font-size:10px;border-radius:20px;padding:5px 8px;background:#f5e9df;color:#a15f37;white-space:nowrap}.unit-indicator.running{background:#eaf6d9;color:#4b752e}.light-group{border-top:1px solid var(--line);padding-top:15px;margin-top:15px}.light-group:first-child{border:0;padding-top:0;margin-top:0}.light-group h3{font-size:12px;color:#60806d;margin:0 0 6px;letter-spacing:.04em}.ticket-layout{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:16px;align-items:start}.ticket-layout.contractor{grid-template-columns:1fr}.ticket-form{display:grid;grid-template-columns:1fr 1fr;gap:13px}.ticket-form label,.ticket-comment-form label{display:flex;flex-direction:column;gap:7px;color:#566f62;font-size:12px;font-weight:800}.ticket-form-wide{grid-column:1/-1}.ticket-form input,.ticket-form select,.ticket-form textarea,.ticket-comment-form textarea{width:100%;border:1px solid #dce6da;background:#fff;border-radius:9px;padding:10px 12px;outline:none;color:#17352a;font:inherit}.ticket-form textarea,.ticket-comment-form textarea{resize:vertical}.ticket-form input:focus,.ticket-form select:focus,.ticket-form textarea:focus,.ticket-comment-form textarea:focus{border-color:#9acb4b;box-shadow:0 0 0 3px #d9edb4}.ticket-hint{color:#8a9992;font-size:11px;margin:18px 0 0}.ticket-filters{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:18px}.ticket-filter{border:1px solid #dce6da;background:#fff;color:#688075;border-radius:9px;padding:8px 12px;font-size:11px;font-weight:800}.ticket-filter.selected{background:#eaf8d4;color:#2d5933;border-color:#b8dd67}.ticket-card{border:1px solid var(--line);border-radius:12px;padding:20px;margin-bottom:14px;background:#fff}.ticket-card:last-child{margin-bottom:0}.ticket-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ticket-id{font-size:11px;font-weight:800;color:#789083;margin-right:auto}.ticket-status,.ticket-priority{font-size:10px;font-weight:800;padding:5px 8px;border-radius:18px;background:#edf2ec;color:#61766a}.ticket-status.new{background:#fff0df;color:#9a642b}.ticket-status.in_progress{background:#e5f3ff;color:#426c9a}.ticket-status.resolved{background:#edf8da;color:#527c30}.ticket-priority.high{background:#fce8e4;color:#ab5043}.ticket-card h3{font-size:17px;margin:13px 0 5px}.ticket-meta{font-size:11px;color:#82948a}.ticket-description{white-space:pre-wrap;color:#50685a;font-size:13px;margin:15px 0 18px}.ticket-thread{border-top:1px solid var(--line);padding-top:15px}.ticket-thread>strong{display:block;font-size:12px;margin-bottom:11px}.ticket-thread>small{color:#9aaa9e}.ticket-message{background:#f5f7f3;border-radius:9px;padding:11px;margin:9px 0}.ticket-message.contractor{background:#edf7df}.ticket-message>div{display:flex;gap:12px;align-items:center}.ticket-message b{font-size:11px}.ticket-message time{font-size:10px;color:#95a69a;margin-left:auto}.ticket-message p{font-size:12px;white-space:pre-wrap;margin:8px 0 0}.ticket-comment-form{display:flex;gap:10px;align-items:end;margin-top:15px}.ticket-comment-form label{flex:1}.ticket-comment-form button{white-space:nowrap}.ticket-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.ticket-actions:empty{display:none}@media(max-width:1180px){.vent-unit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.ticket-layout{grid-template-columns:1fr}}@media(max-width:650px){.vent-unit-grid{grid-template-columns:1fr}.vent-unit-card{min-height:auto}.ticket-form{grid-template-columns:1fr}.ticket-comment-form{display:block}.ticket-comment-form button{margin-top:9px}.ticket-card{padding:16px}}
progress.equip-bar,progress.power-meter{display:block;width:100%;appearance:none;border:0;overflow:hidden}
progress.equip-bar::-webkit-progress-bar,progress.power-meter::-webkit-progress-bar{background:#e9f0e9;border-radius:8px}
progress.equip-bar::-webkit-progress-value{background:var(--cyan);border-radius:8px}
progress.equip-bar.lime::-webkit-progress-value{background:#b2df54}
progress.power-meter::-webkit-progress-value{background:linear-gradient(90deg,#70d7cb,#b8e92a);border-radius:8px}
progress.equip-bar::-moz-progress-bar{background:var(--cyan);border-radius:8px}
progress.equip-bar.lime::-moz-progress-bar{background:#b2df54}
progress.power-meter::-moz-progress-bar{background:#a9df56;border-radius:8px}
.site-switch{display:flex;align-items:center;gap:8px;color:#70817a;font-size:10px;font-weight:800;letter-spacing:.08em}.site-switch select{max-width:220px;border:1px solid #dce6da;border-radius:9px;background:#fff;color:#244638;padding:9px 11px;font-size:12px;font-weight:700;letter-spacing:0}.user-button small{font-size:10px;font-weight:700;color:#7b8e83}@media(max-width:900px){.site-switch span{display:none}.site-switch select{max-width:180px}}@media(max-width:650px){.site-switch select{max-width:125px;padding:7px}.user-button small{display:none}}
