.mobile-workbench{--m-ink:#173b34;--m-lime:#d4ed91;--m-muted:#687b70;--m-line:#dfe6db;--m-paper:#fff;min-height:100dvh;background:#f3f5ef;color:#253b31;font-size:16px;line-height:1.55;padding-top:env(safe-area-inset-top)}
.mobile-workbench *{box-sizing:border-box}.mobile-workbench button,.mobile-workbench input,.mobile-workbench select,.mobile-workbench textarea{font-size:16px;font-family:inherit}.mobile-workbench button,.mobile-workbench a,.mobile-workbench input,.mobile-workbench select{min-height:46px}.mobile-workbench button:focus-visible,.mobile-workbench a:focus-visible{outline:3px solid #99b566;outline-offset:2px}.mobile-workbench h1,.mobile-workbench h2,.mobile-workbench p{overflow-wrap:anywhere}.mobile-workbench button{white-space:normal;text-align:left}.mobile-workbench a{text-decoration:none}.mobile-workbench input,.mobile-workbench select,.mobile-workbench textarea{width:100%;padding:12px;border:1px solid #cdd8c8;background:#fff;color:#233b2e;border-radius:9px;max-width:100%;outline:0}.mobile-workbench textarea{resize:vertical;min-height:90px;line-height:1.6}.mobile-workbench input:focus,.mobile-workbench select:focus,.mobile-workbench textarea:focus{border-color:#699749;box-shadow:0 0 0 3px #d4ed9166}.mobile-workbench input::placeholder,.mobile-workbench textarea::placeholder{color:#819078}.mobile-workbench select{padding-right:28px}.mobile-workbench [hidden]{display:none!important}
.m-header{background:#142d2b;color:#f1f5ec;padding:19px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px}.m-brand{display:flex;gap:10px;align-items:center;min-width:0}.m-brand img{width:37px;height:37px;flex-shrink:0}.m-brand strong{font-size:21px;font-weight:650;letter-spacing:2px;display:flex;align-items:center;gap:10px}
.m-brand strong.wide{font-size:15px;letter-spacing:.3px;gap:6px}.m-brand strong span{font-size:12px;font-weight:400;letter-spacing:0;color:#cad7c9}.m-brand small{display:block;max-width:220px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:#adbfaf;font-size:11px;margin-top:4px}.m-connection{font-size:10px;line-height:1.4;flex-shrink:0;background:#2b453c;color:#d1dec9;border:1px solid #4a6650;border-radius:20px;padding:6px 8px;max-width:104px}.m-connection.connected{background:#d4ed91;color:#244031;border-color:#d4ed91}.m-content{max-width:680px;margin:auto;padding:25px 17px calc(105px + env(safe-area-inset-bottom));min-width:0}.m-page-heading{margin-bottom:23px}.m-page-heading h1{font-size:27px;line-height:1.35;font-weight:650;margin:6px 0 9px;letter-spacing:-.6px}.m-page-heading p{font-size:13px;color:#667a69;margin:0;line-height:1.7}.m-eyebrow{font-size:10px;letter-spacing:1px;color:#728d65;display:block}.m-metrics{display:grid;grid-template-columns:1fr 1.15fr 1fr;background:#e6eddc;border:1px solid #dce5cf;border-radius:13px;margin-bottom:23px;overflow:hidden}.m-metrics>div{padding:17px 10px;text-align:center;border-right:1px solid #d1ddc2}.m-metrics>div:last-child{border:0}.m-metrics b{font-size:25px;font-weight:600;letter-spacing:-1px;display:block;color:#264a33;line-height:1.2}.m-metrics span{font-size:10px;color:#617651;display:block;margin-top:7px}.m-task-card{width:100%;display:block;background:#fff;border:1px solid var(--m-line);border-radius:14px;padding:19px;margin:0 0 15px;box-shadow:0 3px 13px #19382903}.m-task-card:hover{background:#fff;border-color:#a7bd8d}.m-task-top{display:flex;align-items:center;justify-content:space-between;color:#70816c;font-size:12px}.m-chip{display:inline-block;padding:4px 9px;background:#eaf1e0;color:#3c633f;border-radius:6px;font-size:12px}.m-task-card h2{font-size:18px;font-weight:600;margin:15px 0 5px;line-height:1.5}.m-task-card p{font-size:12px;color:#7a8872;margin:0}.m-task-bottom{display:flex;gap:12px;align-items:center;font-size:12px;color:#647b57;margin-top:21px}.m-task-bottom>.icon{margin-left:auto}.m-progress{height:5px;background:#edf1e6;border-radius:8px;margin-top:12px;overflow:hidden}.m-progress i{display:block;height:100%;background:#a2c66a;border-radius:8px}.m-help{font-size:12px;line-height:1.8;color:#697c62;margin:13px 0;overflow-wrap:anywhere}.m-empty{text-align:center;background:#fff;border:1px dashed #cbd8bf;border-radius:13px;padding:35px 19px;margin:15px 0}.m-empty>span{display:grid;place-items:center;width:49px;height:49px;border-radius:13px;background:#ecf3e0;color:#789755;margin:0 auto 18px}.m-empty h2{font-size:19px;margin:0 0 10px}.m-empty p{font-size:14px;color:#6d7c65;line-height:1.9;margin-bottom:22px}.m-empty .m-button{margin:5px}.m-button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:11px 14px;font-size:15px!important;border:1px solid #cfdbc4;border-radius:9px;background:white;color:#37533c;font-weight:550;line-height:1.5;cursor:pointer;text-decoration:none}.m-button.primary{background:#193e32;color:#fff;border-color:#193e32}.m-button.primary:hover{background:#2b503f;border-color:#2b503f}.m-button:disabled{opacity:.55;cursor:wait}.m-back{margin:-8px 0 16px}.m-back .m-button{font-size:13px!important;min-height:42px;padding:8px 12px;background:transparent}.m-detail{background:#eaf0e1;border:1px solid #d5e1c8;border-radius:10px;padding:14px 16px;margin-bottom:18px}.m-detail summary{font-size:14px;color:#4c6943;cursor:pointer;min-height:28px;line-height:1.8}.m-detail p{font-size:13px;white-space:pre-wrap;line-height:1.9;color:#617655;margin-bottom:0}.m-detail .m-button{margin:8px 5px 0 0;font-size:12px!important}.m-search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #d3dfc9;padding:0 12px;border-radius:10px}.m-search>span{color:#718a5e;display:flex}.m-search input{border:0!important;box-shadow:none!important;background:none!important;padding:13px 0!important}.m-count{font-size:12px;color:#75886b;margin:15px 0}.m-device-card{background:#fff;border:1px solid var(--m-line);border-radius:13px;padding:19px;margin-bottom:16px}.m-device-card h2{font-size:22px;font-weight:650;margin:4px 0 4px;letter-spacing:.3px}.m-device-card p{font-size:14px;margin:0 0 6px;color:#4d6546}.m-device-card small{font-size:12px;color:#7f8e75;display:block;margin-bottom:15px}.m-point-button{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f6f8f1;border:1px solid #e3e9da;border-radius:9px;padding:13px 11px;width:100%;margin-top:9px;line-height:1.6;font-size:14px!important;font-weight:450}.m-point-button>span:first-child{flex:1}.m-point-status{display:flex;align-items:center;gap:4px;font-size:11px;color:#8a794b;flex-shrink:0;white-space:nowrap}.m-point-status.ok{color:#428255}.m-point-status.diff{color:#ac5e43}.m-point-status .icon{width:13px;height:13px}
.m-form-section{background:white;border:1px solid var(--m-line);border-radius:13px;padding:20px 17px;margin-bottom:17px;min-width:0}.m-form-section h2{font-size:17px;font-weight:600;color:#314d36;margin:0 0 20px}.m-form-section>label,.m-np-field>label{font-size:14px;font-weight:500;color:#4c6543;display:block;margin:17px 0 8px}.m-form-section>label:first-of-type{margin-top:0}.m-np-field{border-top:1px solid #edf0e6;margin-top:17px;padding-top:3px}.m-np-field>label span{color:#aa694a}.m-field-secondary{display:flex;gap:7px;margin-top:7px;flex-wrap:wrap}.m-field-secondary select{font-size:13px!important;min-height:43px;padding:10px 24px 10px 8px;flex:1;min-width:100px}.m-field-secondary input{font-size:13px!important;min-height:43px;padding:10px 8px;flex:1;min-width:100px}.m-photo-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.m-photo-buttons>.m-button{margin:0!important;min-height:58px;cursor:pointer;font-size:15px!important}.m-camera{background:#eaf2db;color:#3b6437;border-color:#c6d8ae}.m-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:16px}.m-photo{border:1px solid #dfe7d5;border-radius:10px;overflow:hidden;min-width:0;background:#f8faf4}.m-photo-view{display:block;padding:0;border:0!important;border-radius:0!important;background:none!important;width:100%}.m-photo-view img{height:115px;width:100%;object-fit:cover;background:#e5eadf;display:block}.m-photo-view>.icon{display:block;width:32px;height:32px;margin:25px auto}.m-photo-view>span{display:block;padding:9px;font-size:11px;overflow-wrap:anywhere;line-height:1.6}.m-photo-view small{display:block;color:#879776;font-size:10px}.m-photo-remove{border:0;border-top:1px solid #dfe7d5;border-radius:0;width:100%;font-size:11px!important;min-height:42px!important;background:#f1f5e8;padding:8px;color:#886c4b}.m-drawing-ref{padding:12px;background:#f0f5e6;border-radius:8px;display:flex;align-items:center;gap:12px;justify-content:space-between;font-size:12px;color:#5c794a;margin-bottom:18px;overflow-wrap:anywhere}.m-drawing-ref .m-button{font-size:12px!important;flex-shrink:0;padding:9px}.m-warning{background:#fff5df;border:1px solid #ead7aa;color:#88692f;border-radius:9px;padding:13px 14px;font-size:13px;line-height:1.8;white-space:pre-wrap}.m-capture-error:empty{display:none}.m-capture-error{background:#fff0e8;border:1px solid #e5bfaa;border-radius:9px;padding:14px;font-size:13px;color:#9f573d;margin-bottom:12px}.m-save-footer{position:sticky;bottom:calc(71px + env(safe-area-inset-bottom));background:#fbfdf6f7;backdrop-filter:blur(8px);border:1px solid #d3dfc5;box-shadow:0 -5px 20px #203d1710;border-radius:12px;padding:12px;margin-top:20px;z-index:18}.m-save-footer>span{display:block;font-size:11px;color:#6b8558;margin-bottom:9px;overflow-wrap:anywhere}.m-save-footer>div{display:grid;grid-template-columns:1fr 1.4fr;gap:10px}.m-save-footer small{display:block;font-size:10px;line-height:1.6;color:#7b8a6d;margin-top:8px}.m-bottom-nav{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);padding:7px 6px calc(6px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #dce5d3;z-index:40;box-shadow:0 -4px 22px #163b1408}.m-bottom-nav>button{border:0!important;border-radius:9px;background:none;display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:53px;padding:5px 3px;color:#819173;font-size:11px!important;font-weight:450}.m-bottom-nav>button>.icon{width:21px;height:21px}.m-bottom-nav>button.active{background:#ebf2df;color:#345635;font-weight:650}.m-bottom-nav>button:hover{background:#f1f5e9}
.m-sync-card{background:#e7eedb;border:1px solid #d6e2c4;border-radius:14px;padding:25px 19px;text-align:center;margin-bottom:18px}.m-sync-symbol{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 13px;border-radius:50%;background:#d1e5b0;color:#4b703a}.m-sync-card h2{font-size:21px;font-weight:600;line-height:1.5;margin:0 0 9px}.m-sync-card p{font-size:13px;color:#647d51;line-height:1.9}.m-sync-card .m-button{margin:5px}.m-sync-number b{display:block;font-size:43px;font-weight:550;line-height:1;letter-spacing:-1px;margin-top:24px;color:#325936}.m-sync-number span{display:block;font-size:12px;color:#6d845b;margin:8px 0 22px}.m-project{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;border-top:1px solid #e7eddf;border-radius:0;padding:15px 0;background:none;gap:14px}.m-project:first-of-type{border-top:0}.m-project b{font-size:15px;display:block;line-height:1.6;font-weight:500}.m-project small{font-size:11px;display:block;color:#839674;margin-top:4px}.m-project>.icon{color:#779a55;flex-shrink:0}.m-action-grid{display:grid;gap:10px}.m-profile-card{display:flex;align-items:center;gap:15px;margin-bottom:23px;padding:21px;background:#e8efde;border:1px solid #d8e3ca;border-radius:13px}.m-profile-avatar{width:52px;height:52px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;background:#d4e6b8;color:#426139;font-size:24px}.m-profile-card h2{font-size:18px;font-weight:550;margin:0 0 5px;overflow-wrap:anywhere}.m-profile-card p{font-size:12px;margin:0;color:#7b8c6b;overflow-wrap:anywhere}.m-definition{display:grid;grid-template-columns:76px minmax(0,1fr);gap:13px 12px;font-size:13px;line-height:1.8}.m-definition dt{color:#829673}.m-definition dd{margin:0;color:#435e3e;overflow-wrap:anywhere}.m-checklist{padding-left:21px;color:#607954;font-size:13px;line-height:2.1;margin-top:-4px}.m-checklist li{padding-left:3px;margin-bottom:8px}
body:has(.mobile-workbench) #toasts{bottom:calc(85px + env(safe-area-inset-bottom));z-index:220}body:has(.mobile-workbench) .modal-backdrop{padding:8px}body:has(.mobile-workbench) .modal{max-height:calc(100dvh - 16px)}body:has(.mobile-workbench) .modal-content{padding:16px}body:has(.mobile-workbench) .modal input,body:has(.mobile-workbench) .modal select,body:has(.mobile-workbench) .modal textarea{font-size:16px;min-height:44px}body:has(.mobile-workbench) .modal button{min-height:44px;font-size:14px}
@media(min-width:721px){.m-header{padding-left:max(22px,calc((100vw - 680px)/2));padding-right:max(22px,calc((100vw - 680px)/2))}.m-bottom-nav{left:50%;transform:translateX(-50%);max-width:680px;border:1px solid #dce5d3;border-radius:12px 12px 0 0}.m-content{padding-left:24px;padding-right:24px}}
@media(max-width:359px){.m-content{padding-left:12px;padding-right:12px}.m-header{padding:16px 12px}.m-brand strong span{display:none}.m-brand small{max-width:175px}.m-form-section{padding:17px 13px}.m-field-secondary select,.m-field-secondary input{min-width:90px}.m-photo-buttons{grid-template-columns:1fr}.m-task-bottom{gap:8px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.mobile-workbench *{transition:none!important;scroll-behavior:auto!important}}
@media print{.m-header,.m-bottom-nav,.m-save-footer,.m-photo-buttons{display:none!important}.m-content{padding:0;max-width:none}.mobile-workbench{background:#fff}.m-form-section,.m-device-card{break-inside:avoid}}
