:root{--ink: #172b4d;--ink-soft: #44546f;--ink-faint: #626f86;--paper: #f7f8f9;--card: #ffffff;--line: #dcdfe4;--line-soft: #ebecf0;--btn-bg: rgba(9, 30, 66, .06);--btn-bg-hover: rgba(9, 30, 66, .14);--accent: #0f766e;--accent-hover: #115e59;--accent-soft: #e0f5f2;--signal: #e56910;--signal-soft: #fff3eb;--danger: #c9372c;--danger-soft: #ffeceb;--mono: ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, monospace;--st-scheduled: #1d7afc;--st-en_route: #e56910;--st-on_site: #227d9b;--st-pending_review: #8270db;--st-returned: #c9372c}*{box-sizing:border-box;margin:0;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;background:var(--paper);color:var(--ink);font-size:15px;line-height:1.45}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit;color:inherit}.shell{max-width:560px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column}.topstack{position:sticky;top:0;z-index:20}.topbar{background:var(--card);color:var(--ink);border-bottom:1px solid var(--line);padding:12px 16px;padding-top:max(12px,env(safe-area-inset-top));display:flex;align-items:center;gap:10px}.topbar .logo{display:block;height:20px;width:auto}.topbar .spacer{flex:1}.topbar .burger{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex:none;padding:0;background:none;border:1px solid var(--line);border-radius:3px;color:var(--ink);cursor:pointer}.topbar .burger:active{background:var(--btn-bg)}.tabs{display:flex;background:var(--card);border-bottom:1px solid var(--line)}.tabs .tab{flex:1;text-align:center;padding:11px 8px;font-size:14px;font-weight:600;text-decoration:none;color:var(--ink-faint);border-bottom:2px solid transparent}.tabs .tab.on{color:var(--accent);border-bottom-color:var(--accent)}.menu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#172b4d66;display:flex;justify-content:flex-end}.menu-panel{width:min(300px,84vw);background:var(--card);padding:16px;padding-top:max(16px,env(safe-area-inset-top));display:flex;flex-direction:column;gap:14px;overflow-y:auto}.menu-who{font-size:15px}.menu-who .muted{font-size:13px;font-weight:400;margin-top:2px}.menu-block{display:flex;flex-direction:column;gap:8px;align-items:flex-end;padding-bottom:14px;border-bottom:1px solid var(--line-soft)}.menu-block:empty{display:none}.menu-row{display:flex;justify-content:space-between;align-items:baseline;gap:10px;width:100%;font-size:13.5px}.menu-row .mono{font-family:var(--mono);font-size:12.5px}.menu-foot{border-bottom:none;margin-top:auto}.hist-foot{font-size:12.5px;padding:14px 2px 4px}.readonly-strip{border:1px solid var(--line);border-radius:3px;padding:9px 11px;margin-bottom:12px;font-size:13px;color:var(--ink-soft);background:var(--paper)}.syncpill{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;border-radius:3px;padding:6px 10px;border:none;color:var(--ink-soft);background:var(--btn-bg)}.syncpill .dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}.syncpill.offline .dot{background:var(--signal)}.syncpill.pending .dot{background:var(--signal);animation:pulse 1.4s infinite}@keyframes pulse{50%{opacity:.35}}@media (prefers-reduced-motion: reduce){.syncpill.pending .dot{animation:none}}.offline-strip{background:var(--signal-soft);color:var(--signal);border-bottom:1px solid var(--line);font-size:13px;font-weight:600;text-align:center;padding:6px 12px}.failed-strip{background:var(--card);border-bottom:1px solid var(--line);font-size:13px;color:var(--ink);padding:10px 14px;display:flex;flex-direction:column;gap:8px}.failed-strip .reason{color:var(--ink-soft)}.failed-strip .actions{display:flex;gap:8px}.failed-strip .actions button{font-size:13px;font-weight:600;padding:6px 14px;border:none;border-radius:3px;background:var(--btn-bg);color:var(--ink)}.content{flex:1;padding:16px 16px 32px}.day-label{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin:16px 0 8px}.jobcard{display:block;width:100%;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:3px;padding:14px;margin-bottom:8px}.jobcard:active{background:var(--paper)}.jobcard .l1{display:flex;gap:10px;align-items:baseline;font-size:12.5px;color:var(--ink-faint)}.jobcard .jobno{font-family:var(--mono);font-weight:700;color:var(--ink-soft)}.jobcard .time{font-weight:700;color:var(--ink)}.jobcard .title{font-weight:600;font-size:15.5px;margin:4px 0 2px}.jobcard .where{font-size:13.5px;color:var(--ink-soft)}.jobcard.emergency{border-color:#ffd5d2;background:var(--danger-soft)}.jobcard.emergency .l1:before{content:"AVĀRIJA";color:var(--danger);font-weight:800;font-size:10.5px;letter-spacing:.08em}.jobcard .returned-note{margin-top:8px;font-size:13px;color:var(--danger);font-weight:600}.chip{--c: var(--ink-faint);display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;border-radius:3px;padding:3px 8px;color:var(--c);background:color-mix(in srgb,var(--c) 11%,transparent);white-space:nowrap}.back-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}.back-btn{background:none;border:none;font-size:14.5px;font-weight:600;color:var(--accent);padding:6px 4px}.job-head .jobno{font-family:var(--mono);color:var(--ink-soft);font-weight:700;font-size:13px}.job-head h1{font-size:20px;font-weight:600;line-height:1.25;margin:3px 0 6px}.job-head .where{color:var(--ink-soft);font-size:14px}.job-head a{color:var(--accent);font-weight:600}.desc-box{background:var(--card);border:1px solid var(--line);border-radius:3px;padding:12px 14px;font-size:14px;margin:12px 0}.returned-box{background:var(--danger-soft);border:1px solid #ffd5d2;border-radius:3px;padding:12px 14px;font-size:14px;margin:12px 0;color:var(--danger);font-weight:600}.big-action{display:block;width:100%;border:none;border-radius:3px;padding:16px;font-size:16px;font-weight:700;color:#fff;background:var(--accent);margin:14px 0}.big-action:active{background:var(--accent-hover)}.big-action.route{background:var(--st-en_route)}.big-action.complete{background:var(--ink)}.big-action:disabled{opacity:.55}.elapsed{text-align:center;font-family:var(--mono);font-size:13px;color:var(--ink-soft);margin:-6px 0 12px}.section{background:var(--card);border:1px solid var(--line);border-radius:3px;padding:14px;margin-bottom:10px}.section h2{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin-bottom:10px;display:flex;justify-content:space-between;align-items:center}.section h2 .prog{font-family:var(--mono)}.chk{display:flex;align-items:flex-start;gap:12px;padding:11px 0;border-bottom:1px solid var(--line-soft)}.chk:last-child{border-bottom:none}.chk .tick{width:30px;height:30px;flex-shrink:0;border:2px solid var(--line);border-radius:3px;background:var(--card);font-size:16px;font-weight:800;color:#fff;display:flex;align-items:center;justify-content:center}.chk.done .tick{background:var(--accent);border-color:var(--accent)}.chk .body{flex:1}.chk .label{font-weight:600;font-size:14.5px}.chk.done .label{color:var(--ink-faint);text-decoration:line-through}.photo-req{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:var(--signal);margin-top:3px}.photo-req.satisfied{color:var(--accent)}.chk-thumb{width:54px;height:54px;object-fit:cover;border-radius:3px;border:1px solid var(--line)}.mini-btn{border:none;background:var(--btn-bg);border-radius:3px;padding:9px 13px;font-weight:600;font-size:13.5px;color:var(--ink)}.mini-btn:active{background:var(--btn-bg-hover)}.mini-btn.accent{background:var(--accent-soft);color:var(--accent)}.mini-btn.danger{background:var(--danger-soft);color:var(--danger)}.install-note{border:1px solid var(--line);border-radius:3px;padding:12px;font-size:13px;line-height:1.45;text-align:left}.install-note b{display:block;margin-bottom:6px}.install-note p{color:var(--ink-faint);margin-bottom:8px}.install-note-actions{display:flex;gap:8px;justify-content:flex-end}.part-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line-soft)}.part-row:last-child{border-bottom:none}.part-row .nm{flex:1;font-size:14px;font-weight:600}.part-row .qty{font-family:var(--mono);font-weight:700}.part-picker{margin-top:10px}.part-picker input[type=text]{margin-bottom:8px}.pick-row{display:flex;align-items:center;gap:10px;width:100%;background:none;border:none;border-bottom:1px solid var(--line-soft);padding:11px 2px;text-align:left;font-size:14px}.pick-row .sku{font-family:var(--mono);font-size:12px;color:var(--ink-faint)}.pick-row .price{margin-left:auto;font-family:var(--mono)}.stepper{display:flex;align-items:center;gap:2px}.stepper button{width:34px;height:34px;border:none;background:var(--btn-bg);border-radius:3px;font-size:17px;font-weight:700}.stepper .v{width:34px;text-align:center;font-family:var(--mono);font-weight:700}.time-row{display:flex;gap:10px;font-size:14px;padding:7px 0;border-bottom:1px solid var(--line-soft)}.time-row:last-child{border-bottom:none}.time-row .k{width:60px;color:var(--ink-soft)}.time-row .running{color:var(--st-en_route);font-weight:700}.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.photo-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:3px;border:1px solid var(--line)}input[type=text],input[type=number],input[type=password],textarea,select{border:1.5px solid var(--line);border-radius:3px;padding:11px 12px;background:var(--card);width:100%;font-size:16px}input:focus,textarea:focus,select:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.sig-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--paper);display:flex;flex-direction:column;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));overscroll-behavior:none}.sig-head{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin-bottom:10px}.sig-canvas-full{flex:1;width:100%;min-height:0;background:#fff;border:1.5px dashed var(--ink-faint);border-radius:3px;touch-action:none}.sig-actions{display:flex;gap:10px;margin-top:12px}.sig-img{width:100%;height:110px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:3px}.sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#091e428a;z-index:40;display:flex;align-items:flex-end;justify-content:center}.sheet{background:var(--paper);border-radius:8px 8px 0 0;width:min(560px,100vw);max-height:92vh;overflow-y:auto;padding:20px 16px 28px}.sheet h2{font-size:18px;font-weight:600;margin-bottom:4px}.sheet .sub{color:var(--ink-soft);font-size:13.5px;margin-bottom:14px}.gate{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:3px;margin-bottom:8px;font-weight:600;font-size:14px;background:var(--card);border:1px solid var(--line)}.gate.bad{color:var(--danger);background:var(--danger-soft);border-color:#ffd5d2}.gate.good{color:var(--accent)}.muted{color:var(--ink-faint)}.error-note{color:var(--danger);font-size:13.5px;margin-top:8px;font-weight:600}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--paper);padding:20px}.login-card{background:var(--card);border:1px solid var(--line);border-radius:3px;padding:26px;width:360px}.login-card h1{font-size:20px;font-weight:600}.login-card .sub{color:var(--ink-soft);font-size:13.5px;margin:3px 0 18px}.login-card .stack{display:flex;flex-direction:column;gap:12px}.login-card label{font-size:11.5px;font-weight:700;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.07em}.login-card label>*{margin-top:5px}.code-in{font-family:var(--mono);font-size:20px!important;letter-spacing:.35em;text-align:center;text-transform:uppercase}.primary-btn{border:none;border-radius:3px;background:var(--accent);color:#fff;padding:14px;font-weight:700;font-size:15px;width:100%}.primary-btn:active{background:var(--accent-hover)}
