:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#edf4fa;background:#08131f}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#08131f,#0d1b28);min-height:100vh}main{max-width:520px;margin:auto;padding:18px 16px 92px}h1,h2,h3{margin:.3em 0}.muted{color:#8fa3b6}.card{background:#122332;border:1px solid #20394d;border-radius:18px;padding:16px;margin:12px 0;box-shadow:0 10px 35px #0003}.row{display:flex;gap:10px;align-items:center}.between{justify-content:space-between}.chip{padding:6px 10px;border-radius:999px;background:#17334a;font-size:12px}.good{background:#184f31}.warn{background:#6a4816}.bad{background:#632a27}.btn{border:0;border-radius:13px;padding:13px 15px;font-weight:700;background:#2c78df;color:white;cursor:pointer}.btn.alt{background:#1a2d3d}.btn.green{background:#4caa43}.btn.red{background:#9b3c35}.btn.small{padding:8px 10px;font-size:12px}.full{width:100%}input,select,textarea{width:100%;background:#0d1d2a;border:1px solid #2a4052;color:#eaf2f8;border-radius:11px;padding:11px}label{display:block;font-size:13px;color:#9fb1c1;margin:10px 0 5px}.task{padding:12px;border-bottom:1px solid #213547}.task:last-child{border-bottom:0}.big{font-size:42px;font-weight:800}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stat{background:#0c1c29;border-radius:12px;padding:10px;text-align:center}.check{display:grid;grid-template-columns:1fr;gap:9px;margin-top:10px}.checkitem{background:#0c1c29;border-radius:13px;padding:12px}.checks{display:flex;gap:6px;margin-top:8px}.checks button{flex:1}.active-ok{outline:2px solid #4caf50}.active-fault{outline:2px solid #ef6c57}.active-skip{outline:2px solid #c5a24a}nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;background:#0a1722dd;backdrop-filter:blur(14px);border-top:1px solid #23384a;padding:8px 6px max(8px,env(safe-area-inset-bottom))}nav button{width:95px;background:none;border:0;color:#90a5b8;font-size:20px}nav span{display:block;font-size:10px;margin-top:3px}.hero{padding:8px 0 4px}.hero small{color:#6ec56a;font-weight:700}.route-line{border-left:2px solid #2f7fe6;margin-left:11px;padding-left:16px}.photo{margin-top:8px}.offline{position:fixed;top:9px;right:9px;background:#743b24;padding:5px 9px;border-radius:10px;font-size:11px;z-index:9}.link{color:#6da8ff;cursor:pointer}.spacer{height:6px}
.admin-body main{max-width:none}.admin-login{max-width:460px;margin:10vh auto;padding:20px}.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.admin-shell aside{padding:24px;background:#091621;border-right:1px solid #20394d}.admin-shell aside button{display:block;width:100%;text-align:left;padding:12px;margin:6px 0;background:#122332;border:0;border-radius:10px;color:#edf4fa}.admin-main{padding:28px;max-width:1400px}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:850px){.admin-shell{grid-template-columns:1fr}.admin-shell aside{display:none}.admin-stats{grid-template-columns:1fr 1fr}.admin-grid{grid-template-columns:1fr}}
.scheme{position:relative;height:420px;background:linear-gradient(90deg,#172536 1px,transparent 1px),linear-gradient(#172536 1px,transparent 1px),#f8fafc;background-size:32px 32px;border-radius:18px;overflow:hidden;border:3px solid #334155;margin-bottom:12px}.scheme:before,.scheme:after{content:"";position:absolute;background:#94a3b8}.scheme:before{left:36%;top:0;width:5px;height:100%}.scheme:after{left:0;top:54%;height:5px;width:100%}.room-label{position:absolute;color:#334155;font-size:12px;font-weight:700;z-index:1}.r1{left:10%;top:10%}.r2{left:42%;top:45%}.r3{right:10%;bottom:10%}.eq-point{position:absolute;transform:translate(-50%,-50%);z-index:3;border:0;border-radius:999px;padding:7px 8px;font-size:9px;font-weight:800;box-shadow:0 2px 8px #0004}.eq-ok{background:#22c55e;color:white}.eq-bad{background:#ef4444;color:white}
.scheme{position:relative;min-height:420px;background-color:#eef2f6;border-radius:16px;overflow:hidden;background-position:center;background-repeat:no-repeat;background-size:contain}.eq-point{position:absolute;transform:translate(-50%,-50%);z-index:3}
.ops-table{width:100%;border-collapse:collapse}.ops-table th,.ops-table td{padding:10px;border-bottom:1px solid #294154;text-align:left}.ops-table th{color:#8fa3b6;font-size:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stock-low{background:#4c261f55}.stock-low td:nth-child(3){color:#ff8a73}@media(max-width:850px){.form-grid{grid-template-columns:1fr}.ops-table{font-size:12px}}

.good-note{color:#74d47c;margin-top:7px}.bad-note{color:#ff9b87;margin-top:7px}.admin-main a.btn{text-decoration:none;display:inline-block}

/* OPS Service 1.9 UX */
body{padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
.hero{position:relative;padding-top:max(14px, env(safe-area-inset-top))}
.back-btn{display:flex;align-items:center;gap:4px;width:max-content;min-height:40px;margin:0 0 12px 0;padding:6px 12px 6px 8px;border:1px solid rgba(160,185,210,.28);border-radius:13px;background:#162839;color:#dbe8f3;font:600 15px/1 system-ui,-apple-system,sans-serif}
.photo-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.photo-action{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 8px;border-radius:12px;border:1px solid rgba(160,185,210,.25);background:#183148;color:#e8f0f7;font-weight:650;text-align:center;cursor:pointer}
.photo-action input{display:none}.photo-action.camera{background:#24435a}
@media(max-width:390px){.photo-actions{grid-template-columns:1fr}}

/* OPS Service 2.0 Admin */
.org-switch{margin:16px 0;padding:12px;border:1px solid #284158;border-radius:14px;background:#0f2030}
.org-switch label{display:block;font-size:12px;color:#91a6b8;margin-bottom:6px}.org-switch select{width:100%}
.stat-link{cursor:pointer;transition:transform .12s ease,border-color .12s ease}.stat-link:hover{transform:translateY(-2px);border-color:#66b64f}
.customer-block{margin-bottom:16px}.customer-object{padding:16px 0;border-top:1px solid #284158}
.customer-object:first-of-type{margin-top:12px}.object-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px;color:#91a6b8;font-size:13px}
.object-meta span{background:#102536;padding:6px 9px;border-radius:10px}.segmented{display:flex;gap:6px;flex-wrap:wrap}
.segmented button{padding:8px 11px;border-radius:10px;border:1px solid #284158;background:#132536;color:#dce7ef;cursor:pointer}
