:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;font-synthesis:none;color:#282331;background:#f4f3f7;--brand: #361387;--green: var(--brand);--dark: #270d67;--ink: #282331;--muted: #797280;--line: #e8e5ed;--warm: #f4f3f7;--tint: #f0ebf8;--radius: 10px}*{box-sizing:border-box}body{margin:0;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,.button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 15px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);cursor:pointer;font-size:13px;font-weight:500;line-height:1.45;text-decoration:none;transition:background .14s,border-color .14s,color .14s}.button{flex-direction:row;margin:0}button:hover,.button:hover{background:#f5f3f8;border-color:#d1cbdc}button:disabled{opacity:.45;cursor:not-allowed}button.primary,.button.primary{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 3px 8px #36138718}button.primary:hover,.button.primary:hover{background:var(--dark);border-color:var(--dark)}button.subtle,.button.subtle{background:transparent;border-color:transparent;color:var(--muted)}button.danger{color:#a53c49;background:#fff}button.danger:hover{background:#fcf0f2;border-color:#e9c9cf}:where(button,a,input,textarea,select,summary):focus-visible{outline:2px solid #9171c6;outline-offset:3px}button svg,.button svg{flex:none}svg.lucide{stroke-width:1.65}a{color:var(--brand);text-underline-offset:3px}h1,h2,h3,h4,p{margin-top:0}h1{font-size:30px;font-weight:600;letter-spacing:-1px;line-height:1.4}h2{font-size:18px;font-weight:600;line-height:1.5}h3{font-size:15px;font-weight:600;line-height:1.5}h4{font-size:13px;font-weight:600;line-height:1.5}p{line-height:1.7;margin-bottom:12px}small{font-size:12px;color:var(--muted);font-weight:400}h2 small{margin-left:8px;font-size:13px}hr{border:0;border-top:1px solid var(--line);margin:24px 0}label{display:flex;flex-direction:column;gap:8px;margin:0 0 18px;font-size:13px;font-weight:500}input,textarea,select{width:100%;max-width:100%;min-height:40px;padding:9px 11px;border:1px solid #dcd8e3;border-radius:9px;color:var(--ink);background:#fff;font-size:13px}input::placeholder,textarea::placeholder{color:#928c9c}input:hover,textarea:hover,select:hover{border-color:#bbb1cb}textarea{resize:vertical;line-height:1.7}select{padding-right:26px;text-overflow:ellipsis}input[type=checkbox]{width:16px;height:16px;min-height:16px;flex:none;accent-color:var(--brand)}input[hidden]{display:none}.check{flex-direction:row;align-items:center;gap:10px;min-height:36px;margin-bottom:5px;font-weight:400;line-height:1.5}.check span{min-width:0;overflow-wrap:anywhere}.eyebrow{display:block;margin-bottom:8px;font-size:11px;font-weight:500;letter-spacing:.4px;color:var(--muted)}.hint,.muted{color:var(--muted);font-size:12px;line-height:1.7}.hint{margin:6px 0}.badge{display:inline-flex;align-items:center;flex:none;gap:5px;padding:3px 7px;border-radius:5px;background:#f1eff4;color:#6c617c;font-size:11px;line-height:1.6;font-weight:500;white-space:nowrap}.badge.green,.badge[data-status=completed]{color:#286750;background:#edf5f0}.badge[data-status=published],.badge[data-status=in_progress]{color:var(--brand);background:var(--tint)}.badge[data-status=pending_review],.badge.amber{color:#896321;background:#faf3e5}.inline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.between,.row-between,.work-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.row-between h2,.row-between h3{margin-bottom:5px}.grow{flex:1}.wide{width:100%}.break{overflow-wrap:anywhere}.wrap{flex-wrap:wrap}.alert{display:flex;align-items:flex-start;gap:8px;padding:12px 14px;margin:16px 0;border:1px solid #ece2cf;border-radius:7px;background:#fcfaf5;color:#84652d;font-size:12px;line-height:1.75}.alert.error{color:#a63f4b;background:#fdf5f6;border-color:#efd7dc}.alert.success{color:#286750;background:#f3f8f5;border-color:#d4e6dd}.panel{background:#fff;padding:26px;margin-bottom:20px;border:1px solid var(--line);border-radius:14px;box-shadow:0 3px 14px #27153703}.inset{padding:16px;background:#f7f6f9;border-radius:7px}.details{padding:14px 0;margin:16px 0;border-top:1px solid var(--line)}.panel.details{padding:18px 24px}summary{cursor:pointer;min-height:36px;font-size:13px;font-weight:500;line-height:1.7;padding:7px 0}summary::marker{color:#a49aaf;font-size:10px}summary span{float:right;font-size:11px;color:var(--muted)}details[open]>summary{margin-bottom:12px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}pre{font:12px/1.7 ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere;background:#f7f6f9;padding:14px;border-radius:6px}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;font-variant-numeric:tabular-nums}td,th{padding:12px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.65}th{color:var(--muted);background:#f8f7fa;font-weight:500}.table-scroll{overflow:auto;max-height:450px}.segmented{display:flex;gap:2px;padding:3px;margin:16px 0;border-radius:7px;background:#f1eff4}.segmented button{flex:1;border:0;background:transparent;font-size:12px;min-height:34px;padding:7px;border-radius:5px}.segmented button.active{color:var(--brand);background:#fff;box-shadow:0 1px 3px #24193613}.boot,.empty-text{color:var(--muted);text-align:center;line-height:1.8}.boot{min-height:75dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.empty-text{padding:52px 20px;font-size:13px}.brand{display:inline-flex;align-items:center;gap:14px;min-width:0;padding:0;border:0;background:transparent;text-align:left}.brand:hover{background:transparent}.brand-logo{display:inline-block;flex:none;width:44px;height:44px}.brand-logo img{display:block;width:100%;height:100%;object-fit:contain}.brand-caption{font-size:12px;font-weight:500;letter-spacing:.6px;color:var(--muted)}.topbar{height:64px;display:flex;align-items:center;gap:26px;padding:0 24px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:20}.topbar-project{display:flex;align-items:center;gap:10px;flex:1;min-width:0;font-size:13px}.project-name{min-width:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.topbar-actions{display:flex;align-items:center;gap:5px;flex:none}.topbar-actions>button{min-width:38px;border:0;background:transparent;color:var(--muted);padding:9px;font-size:12px}.topbar-actions>button:hover{background:#f4f2f7}.topbar-actions .pending{color:#976d27}.avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:none;background:var(--tint);color:var(--brand);border:1px solid #e5deef;border-radius:50%;font-size:12px}.account-menu{position:relative;margin-left:7px;border-left:1px solid var(--line);padding-left:14px}.account-menu>summary{display:flex;align-items:center;gap:9px;padding:4px 0;margin:0;min-height:40px;list-style:none}.account-menu>summary::-webkit-details-marker{display:none}.account-menu summary span{float:none;font-size:12px;color:var(--ink)}.account-dropdown{position:absolute;z-index:25;top:49px;right:0;width:176px;padding:6px;background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:0 8px 32px #23143c16}.account-dropdown button{width:100%;justify-content:flex-start;border:0;min-height:40px;font-size:13px}.desktop-shell{display:grid;grid-template-columns:188px minmax(0,1fr);align-items:start}.main-nav{position:sticky;top:64px;height:calc(100dvh - 64px);display:flex;flex-direction:column;gap:6px;padding:24px 12px;border-right:1px solid #211330;background:#211330}.main-nav button{justify-content:flex-start;width:100%;min-height:44px;border:0;border-radius:7px;padding:10px 13px;color:#c5bbd6;background:transparent;font-size:13px;font-weight:400;white-space:nowrap}.main-nav button:first-child{margin-bottom:18px;border-bottom:1px solid #ffffff15;border-radius:0;padding-bottom:18px}.main-nav button:hover{background:#ffffff0b;color:#fff}.main-nav button.active{background:#ffffff12;color:#fff;font-weight:500;box-shadow:inset 2px 0 #bfa6fb}.main-nav .mobile-switch{margin-top:auto;border-top:1px solid #ffffff15;border-radius:0;padding-top:18px}.workspace-main{min-width:0;min-height:calc(100dvh - 64px)}.dashboard,.content-page,.work-panel{width:100%;max-width:1440px;margin:0 auto;padding:38px 36px 48px}.dashboard{max-width:1260px;padding-top:48px}.page-title{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px}.page-title h1{margin:0 0 7px}.page-title p{font-size:13px;color:var(--muted);margin-bottom:0;max-width:660px}.page-title>.inline{flex:none}.project-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 16px;color:var(--muted);font-size:12px}.project-list-toolbar .search{width:270px;margin:0;background:#fff}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:20px}.project-card{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-width:0;min-height:254px;padding:24px;gap:24px;text-align:left;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 3px 12px #27153703;transition:border-color .18s,box-shadow .18s}.project-card:hover{background:#fff;border-color:#bfb0d6;box-shadow:0 8px 24px #2715370b}.project-card:focus-visible{outline:3px solid #bfa6fb;outline-offset:3px}.project-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.project-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;color:var(--brand);background:#f3eff9;border-radius:12px;flex:none}.project-copy{display:flex;flex-direction:column;flex:1;min-width:0;gap:10px}.project-copy strong{font-size:17px;font-weight:600;line-height:1.55;overflow-wrap:anywhere}.project-copy>span{color:var(--muted);font-size:12px;font-weight:400;line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.project-type{color:var(--muted);font-size:11px;font-weight:400}.project-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:16px;border-top:1px solid #f0edf4;color:var(--brand);font-size:12px}.project-grid>.empty-text{grid-column:1 / -1;padding:64px 24px;text-align:center;border:1px dashed var(--line);border-radius:16px}.plan-undo{display:flex;align-items:center;gap:12px;padding:8px 20px;background:#f3eff9;color:var(--brand);font-size:12px}.plan-undo>span{flex:1}.plan-undo button{min-height:32px;border:0;background:transparent;color:var(--brand)}.stats-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);background:#fff;border-radius:12px;margin:0 0 24px}.stats-row>div{padding:19px 22px;border-right:1px solid var(--line)}.stats-row>div:last-child{border-right:0}.stats-row strong{display:block;font-size:32px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.5px}.stats-row span{display:block;margin-top:6px;color:var(--muted);font-size:11px}.task-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.task-steps button{min-height:126px;padding:26px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;font-size:17px;gap:10px}.task-steps span{color:var(--muted);font-size:12px;font-weight:400}.task-context{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 28px;border-bottom:1px solid #e3dcef;color:#634689;background:#f4f0fa;font-size:12px}.task-context button{border:0;background:transparent;font-size:12px}.workspace-toolbar{min-height:64px;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);background:#fff}.workspace-toolbar select{width:auto;min-width:220px;max-width:390px;font-size:12px}.workspace-toolbar .hint{margin:0}.workspace{display:grid;grid-template-columns:216px minmax(240px,1fr) 274px;height:calc(100dvh - 128px);min-height:490px}.workspace-main:has(>.task-context) .workspace{height:calc(100dvh - 174px)}.tree-pane,.detail-pane{background:#fff;overflow-y:auto;overscroll-behavior:contain;min-width:0}.tree-pane{display:flex;flex-direction:column;border-right:1px solid var(--line)}.tree-title{padding:12px 16px 9px;display:flex;align-items:center;justify-content:space-between}.tree-title h3{margin:0;font-size:13px}.tree-title button{padding:8px;min-width:36px;min-height:36px;border:0}.search{display:flex;flex-direction:row;align-items:center;gap:7px;padding-left:10px;margin:0 14px 10px;border:1px solid var(--line);border-radius:6px;color:var(--muted)}.search input{border:0;background:transparent;min-height:36px;padding:8px;font-size:12px}.search:focus-within{border-color:#9278b7}.search input:focus-visible{outline:0}.search svg{flex:none}.tree-pane>.check{margin:0 16px 10px;font-size:12px}.tree-empty{margin:26px 18px;font-size:12px;color:var(--muted);line-height:1.8}.tree-empty h4{margin:14px 0 8px;color:var(--ink)}.unit-tree{margin:0 8px 6px}.unit-row{width:100%;justify-content:flex-start;padding:12px 8px;border:0;background:transparent;min-height:65px;text-align:left;gap:9px}.unit-row.active{background:var(--tint)}.unit-symbol{width:29px;height:32px;flex:none;display:flex;align-items:center;justify-content:center;background:#ece7f4;color:var(--brand);border:1px solid #e1d8ed;border-radius:5px;font-size:10px}.unit-row>span:nth-child(2){flex:1;min-width:0}.unit-row strong{display:block;font-size:12px;line-height:1.6;font-weight:500}.unit-row small{display:block;margin-top:4px;font-size:11px}.point-row{width:100%;min-height:54px;text-align:left;justify-content:flex-start;gap:9px;padding:9px 8px 9px 16px;border:0;background:transparent;border-radius:5px;font-size:12px}.point-row.active{color:var(--brand);background:#f4f1f9}.point-row span:nth-child(2){flex:1}.point-row small{display:block;font-size:10px;margin-top:4px}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;border:1.5px solid #b2a3c4;flex:none}.status-dot.done{border-color:#4c876c;background:#4c876c}.tree-add{display:flex;flex-direction:column;gap:6px;padding:10px 14px}.tree-add button{font-size:12px}.tree-foot{margin-top:auto;padding:18px;color:var(--muted);font-size:11px;line-height:1.8}.tree-foot p{margin:9px 0 0}.map-pane{position:relative;min-width:0;min-height:0;display:flex;flex-direction:column}.plan-map{position:relative;overflow:clip;flex:1;min-height:280px;touch-action:none;user-select:none;background-color:#eeedf1;background-image:radial-gradient(#d8d4de .6px,transparent .6px);background-size:16px 16px;cursor:grab}.plan-map.placing{cursor:crosshair}.plan-map:active{cursor:grabbing}.drawing-plane{position:absolute;background:#fff;box-shadow:0 2px 12px #2a1a4412}.drawing-plane>img{width:100%;height:100%;object-fit:fill;pointer-events:none}.relations{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.relations line{stroke:#67439c;stroke-width:2;stroke-dasharray:6 4;opacity:.85}.map-marker{--marker-ink:#955100;--marker-bg:#fff3d9;--marker-border:#b97a16;position:absolute;display:flex;align-items:center;justify-content:center;transform:translate(-50%,-50%);width:48px;height:48px;min-height:48px;padding:0;background:transparent;border:0;border-radius:50%;z-index:1}.map-marker:hover{background:transparent}.map-marker.source{width:80px;height:58px;border-radius:12px}.map-marker.pending{--marker-ink:#155c9d;--marker-bg:#e7f3ff;--marker-border:#317bb9}.map-marker.complete{--marker-ink:#fff;--marker-bg:#19744f;--marker-border:#115b3d}.map-marker.review{--marker-ink:#994c09;--marker-bg:#fff0d8;--marker-border:#b8621c}.map-marker .marker-body{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none;width:40px;height:40px;border:2px solid var(--marker-border);border-radius:50%;background:var(--marker-bg);color:var(--marker-ink);box-shadow:0 0 0 2px #fff,0 3px 8px #21133745;white-space:nowrap;line-height:1.1}.marker-body b{font-size:12px;font-weight:750}.marker-title{display:flex;align-items:center;gap:5px}.marker-level{font-size:10px;font-weight:500;color:#e4d9ff}.map-marker.source .marker-body{width:72px;height:50px;border-radius:10px;gap:5px;background:var(--brand);color:#fff;border-color:var(--brand)}.map-marker.source .marker-body small{min-width:36px;padding:2px 6px;border-radius:4px;background:#ffffff20}.marker-body small{color:inherit;font-size:10px;font-weight:650;font-variant-numeric:tabular-nums}.map-marker.related{z-index:2}.map-marker.related .marker-body{box-shadow:0 0 0 2px #fff,0 0 0 4px #7850b65c,0 3px 8px #21133735}.map-marker.selected{z-index:3}.map-marker.selected .marker-body{outline:3px solid var(--brand);outline-offset:3px;box-shadow:0 0 0 3px #fff,0 4px 12px #21133760;transform:scale(1.08)}.map-status-mark{position:absolute;left:-1px;top:-1px;display:flex;align-items:center;justify-content:center;width:19px;height:19px;border-radius:50%;background:var(--marker-bg);color:var(--marker-ink);border:1.5px solid var(--marker-border);box-shadow:0 0 0 1px #fff;pointer-events:none}.map-shared-count{position:absolute;top:-2px;right:-3px;min-width:19px;height:19px;padding:0 4px;border-radius:10px;background:#fff;border:1.5px solid var(--brand);color:var(--brand);font-size:10px;line-height:16px;font-weight:700;box-shadow:0 1px 4px #21133720;pointer-events:none}.map-status-legend{position:absolute;top:12px;left:12px;z-index:4;display:flex;align-items:center;gap:14px;padding:8px 11px;border:1px solid #e3dee8;border-radius:8px;background:#fffffff5;box-shadow:0 2px 8px #21133712;font-size:11px;pointer-events:none}.map-status-legend span{display:flex;gap:4px;align-items:center}.map-status-legend .unit-legend{color:var(--brand)}.unit-legend i{width:12px;height:12px;border-radius:3px;background:var(--brand)}.map-status-legend .waiting{color:#955100}.map-status-legend .pending{color:#155c9d}.map-status-legend .complete{color:#19744f}.reference-parent{text-align:left;white-space:normal}.reference-parent[aria-pressed=true]{color:var(--brand);border-color:#b4a0d0;background:var(--tint)}.map-marker.moving-origin{opacity:.3}.map-marker.draft-marker{z-index:4;cursor:move}.map-marker.draft-marker .marker-body{width:36px;height:36px;background:var(--brand);color:#fff;border:2px solid #fff;outline:5px solid #7955aa33}.map-caption{position:absolute;bottom:14px;left:14px;display:flex;align-items:center;gap:7px;background:#fffffff0;color:var(--muted);padding:8px 10px;border-radius:5px;font-size:10px;pointer-events:none}.dot{display:inline-block;width:7px;height:7px;border:1px solid #8466ad;border-radius:50%;margin-left:5px}.source-dot{background:var(--brand);border-radius:2px;margin-left:0}.map-tools{position:absolute;right:14px;bottom:14px;display:flex;flex-direction:column;overflow:hidden;border:1px solid #ded8e6;border-radius:8px;background:#fff;box-shadow:0 3px 12px #25153710}.map-tools button{width:44px;min-height:44px;padding:10px;border:0;border-bottom:1px solid #eeeaf3;border-radius:0}.map-tools button:last-child{border-bottom:0}.map-mode{position:absolute;top:18px;left:50%;transform:translate(-50%);border-radius:6px;padding:10px 16px;background:var(--brand);color:#fff;font-size:12px;white-space:nowrap;pointer-events:none}.map-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#93859f;padding:25px}.map-empty h3{margin:18px 0 8px;color:var(--ink)}.map-empty p{font-size:12px}.placement-bar,.map-placement{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px}.placement-bar{padding:12px 18px;border-top:1px solid #ded5ec;background:#f5f1fa}.map-placement{position:absolute;z-index:5;top:12px;left:12px;right:12px;padding:9px 12px;background:#ffffffef;border:1px solid #e4ddec;border-radius:10px;box-shadow:0 2px 14px #27153712;backdrop-filter:blur(10px)}.map-placement>div{display:flex;gap:6px;flex:none}.map-placement button{padding:8px 12px}.map-crosshair{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:8;pointer-events:none;color:var(--brand);font-size:36px;line-height:1;background:#ffffffdf;border:2px solid var(--brand);border-radius:50%;width:42px;height:42px;text-align:center;box-shadow:0 0 0 5px #36158012}.map-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#f7f7f9dd;color:var(--muted);font-size:13px;pointer-events:none}.map-loading button{pointer-events:auto}.detail-pane{border-left:1px solid var(--line)}.point-card{padding:22px 18px;border-bottom:1px solid var(--line)}.point-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.point-card-title h2{font-size:21px;margin-bottom:8px;font-variant-numeric:tabular-nums}.point-card-title h2 small{display:block;margin:5px 0 0;font-size:12px}.point-card-title .badge{white-space:normal;font-size:10px}.shared{display:flex;align-items:flex-start;gap:6px;margin:10px 0 16px;color:var(--muted);font-size:11px;line-height:1.7}.shared svg{flex:none;margin-top:2px}.reading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 0;padding:16px 12px;background:#f7f5fa;border-radius:7px}.reading strong{font-size:24px;font-weight:550;color:var(--brand);font-variant-numeric:tabular-nums}.reading small{display:block;margin-top:5px;font-size:10px}.reading>span{color:var(--muted);font-size:11px;line-height:1.7}.point-card>.inline{flex-direction:column;align-items:stretch}.point-actions{display:flex;justify-content:flex-start;flex-wrap:wrap;gap:2px;margin-top:8px}.point-actions button{min-height:36px;padding:8px;border:0;background:transparent;color:var(--muted);font-size:11px}.detail-section{padding:22px 18px}.detail-section .wide{margin-bottom:9px}.reference-item{padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.reference-item small{display:block;margin:6px 0;font-size:11px}.reference-item button{font-size:11px;min-height:36px}.detail-empty{padding:32px 22px;font-size:12px;color:var(--muted);line-height:1.8}.detail-empty h3{margin:18px 0 10px;color:var(--ink)}.detail-empty ol{padding-left:18px;line-height:2.6;margin:20px 0}.jobs-bar{padding:8px 24px;border-top:1px solid #eee1c8;background:#fcf8f0;font-size:12px}.jobs-bar summary{min-height:30px}.jobs-bar>div{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:8px 0}.jobs-bar button{font-size:12px}.data-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px}.data-layout>*{min-width:0}.record-row{width:100%;display:flex;justify-content:space-between;align-items:flex-start;gap:8px;padding:14px 10px;border:0;border-bottom:1px solid var(--line);border-radius:4px;background:transparent;text-align:left}.record-row strong{font-size:12px;font-weight:500}.record-row span:not(.badge){display:block;margin-top:5px;color:var(--muted);font-size:11px}.record-row.active{background:var(--tint)}.record-row .badge{font-size:10px}.evidence-photos{display:flex;flex-wrap:wrap;gap:12px}.evidence-photos img{width:180px;height:132px;object-fit:cover;border:1px solid var(--line);border-radius:7px}.candidate{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;margin:12px 0;border:1px solid var(--line);border-radius:7px}.candidate p{font-size:12px;margin:5px 0}.candidate small{font-size:11px}.result-unit h2{font-size:16px}.result-unit>.row-between p{color:var(--muted);font-size:12px}.result-case{display:grid;grid-template-columns:156px minmax(0,1fr);gap:20px;padding:24px 0 12px;border-top:1px solid var(--line)}.result-case img{width:100%;max-width:760px}.result-number{display:flex;flex-direction:column;gap:10px;padding-top:16px}.result-number>span{color:var(--muted);font-size:12px}.result-number strong{color:var(--brand);font-size:31px;font-weight:500;letter-spacing:-.6px}.result-warnings{grid-column:1/-1;color:#896321;font-size:11px}.result-warnings p{margin-bottom:4px}.report-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:24px;align-items:start}.report-layout>*{min-width:0}.report-layout .panel h3{margin-bottom:20px}.report-layout .panel h4{margin-top:24px}.report-preview{position:sticky;top:88px;min-height:650px}.report-preview>.row-between{flex-wrap:wrap;gap:8px}.report-preview select{width:190px;font-size:12px}.report-preview iframe{border:0;width:100%;height:75vh;margin-top:16px;border-radius:5px;background:#eee}.report-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:480px;text-align:center;color:#9a8ea7}.report-placeholder h3{font-size:15px;color:var(--muted);margin-top:22px}.report-placeholder p{color:var(--muted);font-size:12px}.order-row{display:flex;align-items:center;gap:4px;padding:6px 0;border-bottom:1px solid #f1edf5;font-size:12px}.order-row>span{flex:1}.order-row button{min-width:34px;min-height:34px;border:0;padding:7px}.report-photos{display:grid;grid-template-columns:1fr 1fr;gap:14px}.report-photos img{width:100%;max-width:120px;border-radius:5px}.report-photos input:not([type=checkbox]){font-size:12px}.editor-section{border-top:1px solid var(--line);padding:4px 0}.editor-section summary{padding:11px 0}.editor-section label:last-child{margin-bottom:14px}.pdf-pages{max-height:72vh;overflow:auto;overscroll-behavior:contain;margin-top:18px;padding:20px;border:1px solid #e0dce6;border-radius:6px;background:#eeecf2}.pdf-pages figure{margin:0 0 24px}.pdf-pages figure:last-child{margin-bottom:0}.pdf-pages img{display:block;width:100%;height:auto;background:#fff;box-shadow:0 2px 9px #22133015}.pdf-pages figcaption{text-align:center;color:var(--muted);font-size:10px;margin-bottom:10px}.login{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:36px;background:#f0edf3}.login-shell{display:grid;grid-template-columns:.92fr 1fr;width:1040px;max-width:100%;min-height:680px;background:#fff;border:1px solid #e4deeb;border-radius:22px;overflow:hidden;box-shadow:0 24px 70px #2b164d0b,0 2px 6px #2b164d03}.login-brand-panel{display:flex;flex-direction:column;position:relative;overflow:hidden;padding:42px;color:#fff;background:linear-gradient(145deg,#361387 10%,#251049)}.login-brand-heading{display:flex;align-items:center;gap:18px;z-index:1}.login-brand-heading .brand-logo{width:84px;height:84px}.login-brand-heading>span{font-size:19px;font-weight:500;letter-spacing:.5px}.login-brand-heading>span>span{display:block;margin-top:8px;font-size:9px;letter-spacing:1.8px;color:#d1bee9}.login-brand-copy{margin-top:48px;position:relative;z-index:1}.login-overline{display:block;font-size:10px;letter-spacing:1.6px;color:var(--muted);font-weight:500}.login-brand-copy .login-overline{color:#cdbbe9;font-size:12px;letter-spacing:2px}.login-brand-copy h2{font-size:36px;line-height:1.55;font-weight:500;letter-spacing:-.8px;margin:18px 0 16px}.login-brand-copy p{color:#cdbfe2;font-size:12px;letter-spacing:.4px}.login-drawing{position:absolute;width:112%;height:auto;left:-4%;bottom:54px;stroke:#e6d6ff;stroke-width:.65;opacity:.2}.login-drawing .drawing-dimensions{opacity:.5}.login-drawing .drawing-route{stroke:#fff;stroke-width:1.2;stroke-dasharray:4 6}.login-drawing .drawing-point{fill:#fff;stroke:#fff;stroke-width:1.5}.login-brand-footer{margin-top:auto;position:relative;z-index:1;padding-top:260px;font-size:9px;letter-spacing:2px;color:#d0bee7}.login-form{width:100%;min-width:0;align-self:center;padding:58px}.login-heading h1{font-size:30px;letter-spacing:-.8px;font-weight:600;margin:14px 0 10px}.login-heading p{color:var(--muted);font-size:13px}.login-form form{margin-top:34px}.login-form input{min-height:48px;background:#fbfafc;border-color:#e4dfea;padding:13px 14px;font-size:13px}.login-form input:focus{background:#fff;border-color:#a48abf}.login-form input:-webkit-autofill{-webkit-box-shadow:0 0 0 60px #fbfafc inset;-webkit-text-fill-color:var(--ink)}.login-form label{margin-bottom:22px;font-size:12px;gap:10px}.login-form .primary{min-height:48px;margin-top:10px;justify-content:space-between;padding:12px 17px;border-radius:10px}.login-note{color:#8c8497;font-size:10px;border-top:1px solid var(--line);padding-top:20px;margin-top:34px;margin-bottom:0}.setup{margin-top:24px;padding:20px 0;border-top:1px solid var(--line)}.setup code{font-size:11px;overflow-wrap:anywhere}.setup p{font-size:12px}.modal-backdrop{position:fixed;z-index:40;inset:0;display:flex;align-items:center;justify-content:center;padding:28px;background:#21182d40;backdrop-filter:blur(5px)}.sheet{width:560px;max-width:100%;max-height:calc(100dvh - 56px);display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid #e9e4ee;border-radius:12px;box-shadow:0 20px 70px #1e103026}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:19px 24px;border-bottom:1px solid var(--line);flex:none}.sheet-head h2{margin:0;font-size:17px}.sheet-head .eyebrow{margin-bottom:5px}.sheet-head button{min-width:38px;padding:8px;border:0}.sheet-body{padding:24px;overflow:auto;overscroll-behavior:contain}.sheet-body>p{font-size:12px}.sheet-body>form>.primary{margin-top:10px}.sheet-footer{padding:16px 24px;border-top:1px solid var(--line);background:#fff}.sheet-footer p{text-align:center;font-size:11px;color:var(--muted);margin:10px 0 0}.context-strip{display:flex;gap:8px;color:var(--muted);font-size:12px;line-height:1.7;margin-bottom:18px}.context-strip svg{flex:none;margin-top:3px}.capture-button{align-items:center;justify-content:center;text-align:center;gap:10px;padding:28px 20px;border:1px dashed #c4b6d8;border-radius:9px;background:#f8f5fc;color:var(--brand);cursor:pointer}.capture-button input{display:none}.capture-button strong{font-size:16px;font-weight:500}.capture-button span{color:var(--muted);font-size:12px;font-weight:400}.meter-sheet .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.meter-sheet .inline{margin:16px 0}.media-grid{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.media-preview{position:relative;overflow:hidden;max-width:100%;background:#f3f1f6;border-radius:7px}.media-preview img{display:block;width:150px;height:110px;object-fit:cover}.media-preview audio{max-width:270px;height:65px}.media-preview button{position:absolute;top:4px;right:4px;width:36px;min-height:36px;padding:5px;border:0;border-radius:50%;background:#fffffff0}.media-preview>span{position:absolute;bottom:6px;left:6px;padding:3px 6px;border-radius:3px;font-size:10px;color:#fff;background:#2b1943bf}.demo-details{padding:10px 12px;border:1px solid #e9dfc9;border-radius:6px;font-size:12px;color:#8a6a30;background:#fcf9f1}.history-item,.queue-item{padding:18px 0;border-bottom:1px solid var(--line)}.history-item p,.queue-item p{font-size:12px}.history-item .muted{font-size:11px}.history-photo{width:150px;height:110px;object-fit:cover;border-radius:6px}.history-item audio{max-width:100%}.queue-item strong{font-size:13px}.queue-item .alert,.queue-item .details{font-size:12px}.access-qr{display:flex;align-items:center;gap:20px;margin-bottom:20px}.access-qr img{width:140px;height:140px}.access-qr p{font-size:12px}.toast{position:fixed;z-index:60;left:50%;bottom:28px;transform:translate(-50%);display:flex;align-items:center;gap:14px;max-width:min(620px,94vw);padding:10px 12px 10px 18px;border-radius:9px;background:#292134;color:#fff;box-shadow:0 6px 30px #24143722;font-size:12px;line-height:1.7}.toast button{min-height:34px;padding:6px;border:0;color:#fff;background:transparent}.work-heading h2,.work-heading h3{margin:4px 0 8px}.work-heading>div>p{font-size:12px;color:var(--muted)}.work-panel>.work-heading{margin-bottom:26px}.work-panel>.work-heading h2{font-size:26px;letter-spacing:-.5px}.work-dialog{width:min(700px,calc(100vw - 40px));max-height:90dvh;overflow:auto;padding:24px}.work-dialog>.work-heading{padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid var(--line)}.work-dialog>.work-heading button{border:0}.work-dialog>p{color:var(--muted);font-size:12px}.work-form{display:grid;gap:16px}.work-form label{margin-bottom:0}.work-form fieldset{border:1px solid var(--line);border-radius:7px;padding:14px;max-height:240px;overflow:auto}.work-form legend{font-size:12px;padding:0 5px;color:var(--muted)}.work-form .check{padding:6px 0}.work-form textarea{min-height:80px}.work-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.work-row span{min-width:0}.work-row strong{font-size:13px;font-weight:500}.work-row small{display:block;margin-top:5px}.work-row select{max-width:290px}.task-card{display:block;width:100%;text-align:left;padding:22px 24px;margin:14px 0;border:1px solid var(--line);border-radius:9px;background:#fff}.task-card h3{font-size:17px;font-weight:550}.task-card p{color:var(--muted);font-size:12px;margin:10px 0}.task-card progress{display:block;appearance:none;width:100%;height:3px;margin:18px 0 0;border:0;overflow:hidden;border-radius:2px;accent-color:var(--brand);background:#eee9f5}.task-card progress::-webkit-progress-bar{background:#eee9f5}.task-card progress::-webkit-progress-value{background:var(--brand)}.task-card progress::-moz-progress-bar{background:var(--brand)}.phone-mode{max-width:560px;min-height:100dvh;margin:auto;background:#fff;box-shadow:0 0 0 1px #e8e3ed}.phone-mode button,.phone-mode .button{min-height:44px}.task-home{min-height:100dvh;padding:20px 20px calc(28px + env(safe-area-inset-bottom));background:#f4f3f7}.task-home header{padding:2px 0 32px;gap:10px}.task-home header button{border:0;background:transparent;font-size:12px;padding:8px}.task-home header button:nth-child(2){margin-left:auto}.task-home header button:last-child{color:var(--muted)}.task-home h1{font-size:27px;margin-bottom:8px}.task-home>.hint{margin-bottom:24px}.task-home .task-card{margin:12px 0;padding:22px;border-radius:16px;box-shadow:0 4px 18px #27153705}.task-home .task-card h3{margin:18px 0 7px}.task-home .task-card .work-heading{flex-wrap:nowrap}.task-home .task-card .work-heading>span:not(.badge){font-size:12px;color:var(--muted)}.task-home .task-card .work-heading>svg{color:var(--brand)}.task-home details{margin-top:28px}.task-home .empty{margin-top:45px;padding:24px 0;color:var(--muted);font-size:13px;text-align:center}.field-screen{position:relative;display:flex;flex-direction:column;height:100dvh;min-height:420px;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);overflow:hidden;background:#fff}.field-screen button{min-width:44px;min-height:44px;touch-action:manipulation}.field-top{display:flex;align-items:center;gap:12px;height:62px;flex:none;padding:8px 14px;border-bottom:1px solid #f0edf4}.field-top button{border:0;background:transparent;padding:8px}.field-top .field-brand{padding:0}.field-brand .brand-logo{width:44px;height:44px}.field-project{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.field-project strong{font-size:13px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field-project small{font-size:10px}.field-top .field-sync{color:#956c27;font-size:11px;white-space:nowrap}.field-top .has-error{color:#ad3e4b}.field-task-strip{flex:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 16px;color:var(--muted);font-size:12px;background:#fff}.field-task-strip button{border:0;background:transparent;color:var(--brand);font-size:12px;padding:8px 0}.field-menu{position:absolute;z-index:30;top:58px;right:12px;display:flex;flex-direction:column;padding:6px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 8px 30px #25153620}.field-menu button{justify-content:flex-start;border:0;font-size:13px;font-weight:400}.field-context{flex:none;display:flex;align-items:center;gap:8px;padding:0 12px 10px}.field-context select{min-width:0;border:1px solid #e7e2ee;background:#faf9fc;border-radius:7px;font-size:13px;min-height:44px}.field-context button{padding:10px;border:0;color:var(--muted)}.field-stage{position:relative;flex:1;min-height:150px;background:#eeedf2}.field-canvas{position:absolute;inset:0;display:flex}.field-canvas .plan-map{min-height:0}.field-unit-bar{position:absolute;top:12px;left:12px;right:12px;z-index:4;display:flex;align-items:center;gap:8px;pointer-events:none}.field-unit-bar>*{pointer-events:auto;background:#fffffff5;border:1px solid #e5dfed;box-shadow:0 2px 10px #261b3810}.field-unit-bar select{width:auto;min-width:0;max-width:calc(100% - 56px);border-radius:9px;font-size:13px;min-height:44px}.field-unit-bar button{padding:10px;border-radius:9px;color:var(--brand)}.field-canvas .map-tools{right:12px;bottom:12px;border-radius:9px}.field-canvas .map-placement{top:auto;bottom:12px;flex-wrap:wrap;gap:8px}.field-canvas .map-placement>span{width:100%;color:var(--muted)}.field-canvas .map-placement>div{width:100%}.field-canvas .map-placement button{flex:1}.field-canvas .placing .map-tools{bottom:126px}.field-list{position:absolute;inset:68px 0 0;overflow:auto;padding:0 14px 12px;background:#f5f3f8}.field-search{display:flex;align-items:center;gap:12px;margin-bottom:10px}.field-search input{min-width:0}.field-search label{flex-direction:row;align-items:center;margin:0;font-size:12px;flex:none;min-height:44px}.field-list-row{display:flex;justify-content:flex-start;width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:18px 12px;gap:10px;text-align:left}.field-list-row:first-of-type{border-radius:9px 9px 0 0}.field-list-row:last-of-type{border-radius:0 0 9px 9px;border-bottom:0}.field-list-row b{font-size:13px;font-weight:550;color:var(--brand)}.field-list-row span{flex:1;font-size:13px;font-weight:400}.field-list-row small{flex:none;font-size:11px}.field-card{flex:none;max-height:46dvh;overflow:auto;padding:20px 18px 18px;border-top:1px solid #ede9f2;border-radius:20px 20px 0 0;box-shadow:0 -6px 24px #2b183912;z-index:6;background:#fff}.field-card-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px}.field-card-heading>div{min-width:0}.field-card-heading h2{display:flex;align-items:baseline;gap:9px;margin:0 0 4px;font-size:21px;font-weight:550;letter-spacing:-.4px}.field-card-heading h2 span{font-size:13px;font-weight:400;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.field-card-heading small{font-size:11px}.field-card-heading>button{flex:none;padding:10px;border:0;background:#f7f5fa}.field-primary-row{display:flex;gap:10px}.field-primary-row .primary{flex:1;min-height:52px;border-radius:12px;font-size:16px;font-weight:500}.field-primary-row .remeasure{min-height:52px;background:#fff;border-color:var(--line);border-radius:10px;color:var(--muted);font-size:13px}.field-point-menu{display:flex;flex-wrap:wrap;gap:7px;padding-bottom:3px}.field-point-menu button{border:1px solid #eae4f0;background:#f9f7fc;font-size:13px;font-weight:400;padding:10px 12px}.field-point-menu .danger{color:#a93a4a}.field-empty{margin:3px 0;color:var(--muted);text-align:center;font-size:13px}.field-name-form{display:flex;gap:8px}.field-name-form input{min-width:0}.field-name-form button{color:var(--brand)}.field-review{width:100%;background:#fcf7ec;color:#856329;border-color:#eee3cb;font-size:12px;text-align:left;margin-bottom:10px}.field-mode-options{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex:none;padding:14px 18px 18px;border-top:1px solid var(--line);font-size:13px}.field-mode-options strong{flex:none;font-size:13px}.field-mode-options select{width:auto;flex:1;min-width:0;font-size:13px}.field-mode-options input{font-size:14px}.field-mode-options small{display:block;font-size:12px}.field-undo{display:flex;align-items:center;gap:6px;padding:4px 14px;flex:none;background:var(--tint);font-size:12px}.field-undo span{flex:1}.field-undo button{border:0;background:transparent;color:var(--brand);padding:8px}.field-screen[data-readonly=true] .field-unit-bar>button{display:none}.phone-mode .toast{bottom:max(16px,env(safe-area-inset-bottom))}.meter-sheet .capture-button.has-photo{flex-direction:row;justify-content:flex-end;min-height:44px;padding:0;margin:0 0 8px;border:0;background:transparent}.capture-button.has-photo svg{width:18px}.capture-button.has-photo strong{font-size:13px;font-weight:400}.meter-sheet .media-grid:has(>:only-child) .media-preview{width:100%}.meter-sheet .media-grid:has(>:only-child) img{width:100%;height:auto;max-height:38dvh;object-fit:contain;background:#f5f3f8}.meter-sheet .media-preview button{min-width:44px;min-height:44px;color:#544b5f}.meter-sheet .report-extras>summary{display:flex;align-items:center;justify-content:space-between;font-size:13px;padding:13px 0;color:var(--muted)}.meter-sheet .report-extras[open]>summary{color:var(--brand)}.meter-sheet .sheet-footer{padding-bottom:max(16px,env(safe-area-inset-bottom))}.meter-sheet .sheet-footer .primary{min-height:50px;border-radius:9px;font-size:16px}.meter-sheet .sheet-head .eyebrow{font-size:11px;letter-spacing:0}@media(min-width:1600px){.desktop-shell{grid-template-columns:196px minmax(0,1fr)}.workspace{grid-template-columns:248px minmax(280px,1fr) 300px}}@media(max-width:1199px){.desktop-shell{grid-template-columns:148px minmax(0,1fr)}.main-nav{padding:16px 8px}.main-nav button{padding:10px;font-size:12px;gap:9px}.main-nav button svg{width:19px;height:19px}.brand-caption{display:none}.login-brand-panel{padding:32px}.login-brand-copy h2{font-size:32px}.login-form{padding:42px}.workspace{grid-template-columns:200px minmax(240px,1fr) 250px}.dashboard,.content-page,.work-panel{padding:28px 24px 40px}.report-layout{grid-template-columns:310px minmax(0,1fr);gap:18px}.report-layout .panel{padding:20px}.data-layout{grid-template-columns:244px minmax(0,1fr);gap:18px}.topbar{padding:0 20px;gap:20px}}@media(max-width:900px)and (min-width:761px){.workspace{grid-template-columns:192px minmax(230px,1fr)}.detail-pane{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);max-height:300px}.workspace{height:auto;min-height:calc(100dvh - 128px);grid-template-rows:minmax(480px,65dvh) auto}.workspace-toolbar .hint{display:none}.page-title{flex-wrap:wrap}}@media(max-width:760px){button,.button,.segmented button,.order-row button,.toast button,.tree-title button,.account-menu>summary,.check{min-height:44px}input,select,textarea{min-height:44px;font-size:16px}.topbar{height:60px;gap:12px;padding:0 14px}.topbar-project{display:none}.topbar-actions{margin-left:auto;gap:0}.topbar-actions>button{min-width:44px;padding:10px}.topbar-actions>button span,.account-menu summary>span:not(.avatar){display:none}.account-menu{padding-left:10px;margin-left:4px}.desktop-shell{display:block}.main-nav{position:sticky;top:60px;z-index:15;height:54px;flex-direction:row;align-items:stretch;gap:2px;padding:4px 8px;border-right:0;border-bottom:1px solid var(--line);overflow-x:auto}.main-nav button{width:auto;flex:none;min-height:44px;gap:6px;padding:8px 10px;font-size:12px}.main-nav button span{display:inline}.main-nav button:first-child,.main-nav .mobile-switch{margin:0;padding:8px 10px;border:0;border-radius:6px}.main-nav button svg{width:16px;height:16px}.workspace-main{min-height:calc(100dvh - 114px)}.dashboard,.content-page,.work-panel{padding:24px 16px 36px}.page-title{flex-wrap:wrap;align-items:flex-start;gap:16px;margin-bottom:24px}.page-title h1,.work-panel>.work-heading h2{font-size:24px}.page-title p{font-size:13px}.project-list-toolbar{gap:14px}.project-list-toolbar .search{width:60%}.project-grid{gap:16px}.project-card{padding:20px;gap:20px;min-height:236px}.project-copy strong{font-size:16px}.stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-row>div{padding:16px 18px}.stats-row>div:nth-child(2){border-right:0}.stats-row>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.data-layout,.report-layout,.task-steps{grid-template-columns:1fr}.panel{padding:20px}.panel.details{padding:16px 20px}.report-preview{position:static;min-height:430px}.report-preview iframe{height:600px}.pdf-pages{padding:14px}.result-case{grid-template-columns:1fr;gap:16px}.result-number{padding-top:0}.result-unit>.row-between{flex-wrap:wrap}.workspace-toolbar{flex-wrap:wrap;padding:10px 12px;gap:8px}.workspace-toolbar select{min-width:170px;max-width:calc(100vw - 130px);font-size:13px}.workspace-toolbar .hint{display:none}.workspace{grid-template-columns:165px minmax(230px,1fr);grid-template-rows:minmax(460px,65dvh) auto;height:auto;overflow-x:auto}.detail-pane{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);max-height:320px}.workspace-main:has(>.task-context) .workspace{height:auto}.tree-pane .check{font-size:11px}.search input{font-size:13px}.task-context{padding:5px 14px}.task-context span{min-width:0;overflow-wrap:anywhere}.modal-backdrop{padding:0;align-items:flex-end}.sheet,.work-dialog{width:100%;max-width:100%;max-height:93dvh;border-radius:16px 16px 0 0;border-bottom:0}.sheet-head{padding:16px 20px}.sheet-head h2{font-size:17px}.sheet-body{padding:20px 20px max(24px,env(safe-area-inset-bottom))}.sheet-footer{padding:14px 20px max(14px,env(safe-area-inset-bottom))}.work-dialog{padding:22px 20px max(24px,env(safe-area-inset-bottom))}.work-heading{flex-wrap:wrap;gap:10px}.work-dialog>.work-heading{flex-wrap:nowrap}.work-row{flex-wrap:wrap;gap:12px}.work-row select{width:100%;max-width:100%}.task-card{padding:20px}.task-steps button{min-height:108px;padding:22px}.meter-sheet .form-grid{grid-template-columns:1fr 1fr}.meter-sheet .form-grid label:first-child{grid-column:1/-1}.meter-sheet .sheet-body{padding:14px 20px}.meter-sheet input,.meter-sheet textarea,.meter-sheet select{font-size:16px}.access-qr img{width:115px;height:115px}.toast{width:90%;bottom:max(24px,env(safe-area-inset-bottom));font-size:12px}.login{padding:24px 20px;background:#f4f3f7;align-items:flex-start}.login-shell{display:block;width:420px;min-height:0;border-radius:18px;margin:auto}.login-brand-panel{padding:24px}.login-brand-heading{gap:14px}.login-brand-heading .brand-logo{width:56px;height:56px}.login-brand-heading>span{font-size:17px}.login-brand-copy,.login-drawing,.login-brand-footer{display:none}.login-form{padding:32px 26px}.login-form input{font-size:16px}.login-heading h1{font-size:27px}.phone-mode{max-width:none;box-shadow:none}.field-screen input{font-size:16px}.field-context select,.field-unit-bar select,.field-mode-options select{font-size:13px}.map-placement{flex-wrap:wrap}.map-caption{padding:7px;font-size:9px;bottom:10px;left:10px}}@media(pointer:coarse){button,.button,summary,.segmented button,.order-row button,.toast button,.tree-title button,.account-menu>summary,.check{min-height:44px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}.error-notice{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;margin:16px 0;border:1px solid #f0dfe2;border-radius:12px;background:#fff7f8;color:#8f3948;font-size:13px;line-height:1.65;text-align:left}.error-notice>svg{flex:none;margin-top:2px;color:#b35a69}.error-notice>div{min-width:0}.error-notice strong{display:block;font-size:12px;font-weight:600;color:#813544;margin-bottom:3px}.error-notice p{margin:0;color:#93636c;overflow-wrap:anywhere}input[aria-invalid=true]{border-color:#d29ba6;background:#fffafb}input[aria-invalid=true]:focus{border-color:#b35a69;box-shadow:0 0 0 3px #b35a6912}.toast.toast-error{background:#fff;color:#93636c;border:1px solid #eedce0;border-radius:14px;padding:14px 12px 14px 16px;box-shadow:0 8px 36px #31212e1a}.toast-error>svg{flex:none;align-self:flex-start;color:#b35a69;margin-top:3px}.toast-error>span{min-width:0;overflow-wrap:anywhere}.toast-error strong{display:block;color:#813544;font-size:12px;margin-bottom:2px}.toast.toast-error button{color:#967982;flex:none}.field-screen>.error-notice{flex:none;margin:8px 16px}.boot>.error-notice{max-width:min(440px,calc(100vw - 40px));margin:0}.field-card-heading h2{flex-wrap:wrap;row-gap:2px}.field-card-heading h2 span{max-width:100%}.field-card-actions{display:flex;flex:none;gap:2px}.field-card-actions button{display:flex;flex-direction:column;gap:3px;width:44px;padding:5px 2px;border:0;background:transparent;color:#776987;border-radius:8px}.field-card-actions button span{font-size:10px;line-height:1.2}.field-card-actions button:hover{background:#f4f0fa;color:var(--brand)}.field-card-actions button[aria-expanded=true]{background:var(--tint);color:var(--brand)}.field-name-form button{flex:none;padding:10px}.field-canvas .map-tools{z-index:4}.field-canvas .map-tools button{touch-action:manipulation}.field-point-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.field-point-menu button{justify-content:flex-start}.field-point-menu .danger{background:#fff8f9;border-color:#f0dfe2}@media(orientation:landscape)and (min-width:480px)and (max-height:600px){.phone-mode{max-width:none;box-shadow:none}.field-screen{display:grid;grid-template-columns:minmax(0,1fr) 264px;grid-template-rows:48px 44px 48px minmax(0,1fr);min-height:0;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.field-top{grid-column:1/-1;grid-row:1;height:48px;padding:2px 12px}.field-brand .brand-logo{width:36px;height:36px}.field-top .field-brand{min-width:44px}.field-project{flex-direction:row;align-items:center;gap:10px}.field-task-strip{grid-column:1/-1;grid-row:2;padding:0 14px;font-size:11px}.field-task-strip button{min-height:44px;padding:2px 0;font-size:11px}.field-context{grid-column:1;grid-row:3;padding:2px 10px}.field-context select{flex:1}.field-stage{grid-column:1;grid-row:4;min-height:0;min-width:0}.field-card,.field-mode-options{grid-column:2;grid-row:3/5;max-height:none;min-height:0;overflow:auto;padding:16px 14px;border:0;border-left:1px solid var(--line);border-radius:0;box-shadow:-4px 0 18px #2b183909}.field-card-heading{align-items:flex-start;flex-wrap:wrap;gap:10px;margin-bottom:12px}.field-card-heading>div:first-child{flex-basis:100%}.field-card-heading h2{font-size:20px}.field-card-actions{width:100%;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:8px}.field-card-actions button{flex:1;flex-direction:row;gap:5px}.field-card-actions button span{font-size:11px}.field-primary-row{flex-direction:column;gap:8px}.field-primary-row .primary,.field-primary-row .remeasure{min-height:48px;font-size:14px}.field-mode-options{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:12px}.field-mode-options select{flex:none;width:100%;min-height:44px}.field-unit-bar{top:8px;left:10px;right:10px}.field-list{inset:64px 0 0}.field-canvas .map-placement{bottom:8px;left:8px;right:8px;padding:8px;flex-wrap:nowrap}.field-canvas .map-placement>span{width:auto;flex:1;font-size:11px}.field-canvas .map-placement>div{width:auto}.field-canvas .map-placement button{flex:none;padding:8px 10px}.field-canvas .map-tools{flex-direction:row}.field-canvas .map-tools button{border-bottom:0;border-right:1px solid #eeeaf3}.field-canvas .map-tools button:last-child{border-right:0}.field-canvas .placing .map-tools{bottom:80px}.field-screen>.error-notice,.field-undo{grid-column:1/-1}.field-menu{top:46px;max-height:calc(100dvh - 60px);overflow:auto}.phone-mode .modal-backdrop{padding:8px max(12px,env(safe-area-inset-right));align-items:center}.phone-mode .sheet,.phone-mode .work-dialog{max-height:calc(100dvh - 16px);border-radius:14px;width:min(640px,100%)}.phone-mode .sheet-head{padding:10px 16px}.phone-mode .sheet-body{padding:12px 16px}.phone-mode .meter-sheet .media-grid:has(>:only-child) img{max-height:32dvh}.phone-mode .sheet-footer{padding:10px 16px max(10px,env(safe-area-inset-bottom))}}.quick-plan-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:9px 16px;border-bottom:1px solid var(--line);background:#fff;flex:none}.quick-plan-tools button{min-height:36px;padding:7px 11px;font-size:12px}.quick-plan-tools button[aria-pressed=true]{background:var(--tint);border-color:#b4a0d0;color:var(--brand)}.quick-plan-tools kbd{font-family:inherit;font-size:10px;padding:1px 4px;border:1px solid #ded7e8;border-radius:4px;color:var(--muted)}.quick-plan-tools select{width:auto;min-height:36px;padding:7px 10px;font-size:12px}.quick-plan-tools input{width:100px;min-height:36px;padding:7px 10px;font-size:12px}.plan-name-editor{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.plan-name-editor input{width:100%}.plan-calculation-settings{margin:14px 0;font-size:12px;color:var(--muted)}.plan-calculation-settings summary{cursor:pointer;padding:8px 0;color:var(--ink)}.quick-plan-tools .quick-parent{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--brand)}.quick-plan-tools .hint{margin:0 0 0 auto;font-size:11px}.map-feedback{position:absolute;z-index:8;top:80px;left:12px;right:12px}.map-feedback .error-notice{margin:0}@media(min-width:761px){.workspace-main:has(>.quick-plan-tools){display:flex;flex-direction:column;height:calc(100dvh - 64px);min-height:600px}.workspace-main:has(>.quick-plan-tools)>.workspace{flex:1;height:auto;min-height:0}.workspace-main:has(>.quick-plan-tools)>.workspace-toolbar{flex:none}}.queue-summary{margin:16px 0;padding:12px 14px;background:var(--tint);border-radius:10px}.queue-summary p{margin:0 0 10px;line-height:1.7}.queue-attachment{display:flex;justify-content:space-between;gap:12px;font-size:12px}.queue-attachment span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.queue-attachment small{flex:none;color:var(--muted)}.relations .relation-halo{stroke:#fff;stroke-width:7;stroke-dasharray:none;opacity:.95}.relations .relation-link{stroke:var(--brand);stroke-width:3;stroke-dasharray:none;opacity:1;stroke-linecap:round}.map-material-mark{position:absolute;top:calc(100% + 3px);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:3px;padding:2px 5px;border-radius:6px;background:#fff;color:#266b58;border:1px solid #92baa9;box-shadow:0 1px 4px #21133020;font-size:10px;line-height:14px;white-space:nowrap;pointer-events:none}.map-material-mark.pending{color:#93610c;border-color:#d7b36a;background:#fff9ed}.pc-next{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 0 32px;border-bottom:1px solid var(--line);margin-bottom:28px}.pc-next small{color:var(--brand);font-weight:600}.pc-next h2{margin:8px 0;font-size:23px}.pc-next p{color:var(--muted);font-size:13px}.pc-next>div{min-width:0}.pc-next>button{flex-shrink:0}.pc-next small{overflow-wrap:anywhere}.pc-task-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.pc-task-filter button[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:#fff}.pc-coverage{border-top:1px solid var(--line);padding:12px 0}.pc-coverage .work-row{border:0;padding-bottom:6px}.pc-evidence{font-size:12px;color:var(--muted)}.pc-evidence summary{cursor:pointer;padding:8px 0}.pc-evidence section{padding:12px;background:#f7f6fa;margin:8px 0;border-radius:8px}.pc-evidence small{display:block;margin:6px 0}.pc-evidence-media{display:flex;flex-wrap:wrap;gap:10px}.pc-evidence-media img{height:100px;width:120px;object-fit:contain;background:#fff;border-radius:6px}.pc-evidence-media audio{max-width:100%;width:280px}.pc-review-warning{color:#8c5617!important}.pc-reason{padding:16px;background:#faf8f4;border-radius:8px;margin:16px 0}.pc-reason textarea{min-height:80px}.report-photo-label{display:block;margin:6px 0 8px;color:var(--muted);font-size:11px;line-height:1.5;overflow-wrap:anywhere}.project-preset{display:flex;align-items:center;gap:16px;width:100%;text-align:left;padding:14px 16px;border:1px solid #ded9e9;border-radius:12px;background:#faf9fc;color:#302939;white-space:normal}.project-preset[aria-pressed=true]{border-color:#321584;background:#f3effc;box-shadow:0 0 0 1px #321584}.project-preset img{width:62px;height:72px;object-fit:contain;background:#fff;flex-shrink:0}.project-preset>span{display:grid;gap:5px}.project-preset small{font-size:11px;color:#706879}.project-preset strong{font-size:15px;font-weight:600}.project-preset span span{font-size:12px;color:#706879}.m-dialog-return{display:none}.mobile-root{min-height:var(--field-height,100dvh);background:#f7f6f9;color:#292530;font-size:15px;--muted:#756f7d;--line:#e8e5ed;--tint:#f1edf8;--field-surface:#f7f6f9;--field-success:#216749;--field-pending:#235e91;--field-review:#945817}.mobile-root button,.mobile-root .button{min-height:48px;font-size:15px;border-radius:12px;touch-action:manipulation}.mobile-root input,.mobile-root select,.mobile-root textarea{min-height:48px;font-size:16px;border-radius:11px}.mobile-root label{font-size:14px}.mobile-root small{font-size:12px;line-height:1.5}.mobile-root h1{font-size:30px;letter-spacing:-.5px}.mobile-root h2{font-size:19px;margin:0}.mobile-root button.primary{box-shadow:none}.mobile-root .brand-logo{width:48px;height:48px;flex:none}.mobile-root .brand-logo img{width:100%;height:100%;object-fit:contain}.mobile-root .m-wide{width:100%}.mobile-root .m-back{transform:rotate(180deg)}.mobile-root .m-home{padding:var(--field-safe-top,env(safe-area-inset-top)) max(20px,var(--field-safe-right,env(safe-area-inset-right))) max(30px,var(--field-safe-bottom,env(safe-area-inset-bottom))) max(20px,var(--field-safe-left,env(safe-area-inset-left)))}.mobile-root .m-home>header{height:82px;display:flex;align-items:center;gap:12px}.mobile-root .m-home>header>span:nth-child(2){margin-left:auto;color:var(--muted);font-size:13px}.mobile-root .m-home>header button{width:48px;padding:0;background:transparent;border:0}.mobile-root .m-account{position:absolute;top:78px;right:20px;z-index:5;padding:6px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 32px #24202d18;border-radius:14px}.mobile-root .m-account button{display:flex;width:100%;border:0;justify-content:flex-start}.mobile-root .m-home-heading{display:flex;justify-content:space-between;align-items:center;padding:25px 0}.mobile-root .m-home-heading h1{margin:5px 0 0}.mobile-root .m-home-heading>button{border:0;background:transparent;width:48px;padding:0}.mobile-root .m-task{display:block;width:100%;padding:20px;margin-bottom:14px;border:1px solid #e7e3ee;background:#fff;border-radius:18px;text-align:left}.mobile-root .m-task>small{display:block;overflow-wrap:anywhere;margin-bottom:8px}.mobile-root .m-task h2{font-size:18px;margin:0 0 18px;overflow-wrap:anywhere}.mobile-root .m-task>div,.mobile-root .m-task footer{display:flex;justify-content:space-between;align-items:center;gap:12px}.mobile-root .m-task>div{font-size:12px;color:var(--muted)}.mobile-root .m-task progress{appearance:none;display:block;width:100%;height:4px;border:0;border-radius:4px;margin:18px 0 12px;overflow:hidden;background:#eeebf3;accent-color:var(--brand)}.mobile-root .m-task progress::-webkit-progress-bar{background:#eeebf3}.mobile-root .m-task progress::-webkit-progress-value{background:var(--brand);border-radius:4px}.mobile-root .m-task footer{font-size:12px;color:var(--muted)}.mobile-root .m-task footer b{color:var(--brand);font-weight:500}.mobile-root .m-task-history{margin-top:26px}.mobile-root .m-task-history summary{min-height:48px;font-size:14px}.mobile-root .m-empty{padding:35px 10px;text-align:center;color:var(--muted)}.mobile-root .m-login{padding:max(42px,var(--field-safe-top,env(safe-area-inset-top))) 26px max(32px,var(--field-safe-bottom,env(safe-area-inset-bottom)));min-height:var(--field-height,100dvh);background:#fff}.mobile-root .m-login .brand-logo{width:64px;height:64px;margin-bottom:36px}.mobile-root .m-login h1{margin-bottom:8px}.mobile-root .m-login>p{color:var(--muted);font-size:14px;margin-bottom:36px}.mobile-root .m-login form>button{width:100%;margin-top:14px;min-height:54px}.mobile-root .m-screen{position:fixed;inset:0;height:var(--field-height,100dvh);display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);overflow:hidden;background:#fff}.mobile-root .m-top{display:flex;align-items:center;padding:var(--field-safe-top,env(safe-area-inset-top)) max(8px,var(--field-safe-right,env(safe-area-inset-right))) 0 max(8px,var(--field-safe-left,env(safe-area-inset-left)));min-height:64px;gap:4px;border-bottom:1px solid var(--line);background:#fff;z-index:2}.mobile-root .m-top>button{border:0;background:transparent;padding:8px;min-width:48px}.mobile-root .m-top .m-title{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left}.mobile-root .m-title strong{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600}.mobile-root .m-title small{font-size:11px}.mobile-root .m-top .m-sync{color:#317759;font-size:12px}.mobile-root .m-top .m-sync-error{color:#a5394b;font-size:12px}.mobile-root .m-canvas{min-height:0;min-width:0;position:relative}.mobile-root .m-canvas .plan-map{width:100%;height:100%;min-height:0;border-radius:0;border:0;background:#efedf2}.mobile-root .m-canvas .map-status-legend{display:none}.mobile-root .m-canvas .map-tools{right:max(12px,var(--field-safe-right,env(safe-area-inset-right)));bottom:14px;z-index:4;border-radius:14px;background:#fff;box-shadow:0 2px 14px #24153215}.mobile-root .m-canvas .map-tools button{width:48px;height:48px;padding:0;border-radius:0}.mobile-root .m-canvas .map-tools button:first-child{border-radius:14px 14px 0 0}.mobile-root .m-canvas .map-tools button:last-child{border-radius:0 0 14px 14px}.mobile-root .m-canvas .map-placement{inset:auto 10px 10px;padding:10px;border-radius:14px;display:flex;flex-wrap:wrap;gap:8px}.mobile-root .m-canvas .map-placement>span{width:100%;font-size:12px}.mobile-root .m-canvas .map-placement>div{display:flex;width:100%;gap:8px}.mobile-root .m-canvas .map-placement button{flex:1;min-height:48px}.mobile-root .m-canvas .placing .map-tools{bottom:130px}.mobile-root .m-canvas .map-feedback{left:10px;right:10px;bottom:126px;max-width:none}.mobile-root .m-dock{background:#fff;border-top:1px solid #ded8e7;padding:6px max(18px,var(--field-safe-right,env(safe-area-inset-right))) max(16px,var(--field-safe-bottom,env(safe-area-inset-bottom))) max(18px,var(--field-safe-left,env(safe-area-inset-left)));z-index:5;min-width:0;max-height:40dvh;overflow:auto}.mobile-root .m-dock-tools{display:flex;justify-content:space-between;gap:10px}.mobile-root .m-dock-tools button{border:0;padding:0;color:var(--muted);background:transparent;font-size:13px}.mobile-root .m-dock-tools button:last-child{min-width:48px}.mobile-root .m-dock-tools small{color:inherit}.mobile-root .m-point-title{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;margin:2px 0 15px}.mobile-root .m-point-title h2{display:flex;flex-direction:column;font-size:22px;letter-spacing:-.3px;min-width:0}.mobile-root .m-point-title h2 span{margin-top:1px;font-size:12px;line-height:1.4;font-weight:400;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-root .m-status{display:inline-flex;align-items:center;font-size:12px;color:#976615;white-space:nowrap}.mobile-root .m-status.complete{color:#24734e}.mobile-root .m-status.pending{color:#2869ad}.mobile-root .m-status.review{color:#9c4e2b}.mobile-root .m-main-action{display:flex;gap:10px}.mobile-root .m-main-action>button{flex:1;min-width:0;min-height:52px;padding:10px}.mobile-root .m-start-hint{margin:4px 0 14px;font-size:14px;color:var(--muted)}.mobile-root .m-review{width:100%;border:0;padding:5px 0;color:#9c4e2b;background:transparent;justify-content:flex-start;font-size:12px;margin-bottom:6px}.mobile-root .m-dock>h2{padding-top:10px}.mobile-root .m-dock>small{display:block;margin:4px 0 10px}.mobile-root .m-dock>select,.mobile-root .m-dock>input{margin-bottom:8px}.mobile-root .m-scrim{position:fixed;inset:0;z-index:110;background:#19112550;display:flex;align-items:flex-end}.mobile-root .m-sheet{width:100%;max-height:calc(var(--field-height,100dvh) * .88);background:#fff;border-radius:22px 22px 0 0;display:flex;flex-direction:column;overflow:hidden;outline:0;box-shadow:0 -10px 48px #1f142018}.mobile-root .m-sheet>header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px 8px 22px;flex:none;border-bottom:1px solid var(--line)}.mobile-root .m-sheet>header h2{font-size:17px}.mobile-root .m-sheet>header button{padding:0;width:48px;border:0}.mobile-root .m-sheet-body{overflow:auto;overscroll-behavior:contain;padding:18px max(20px,var(--field-safe-right,env(safe-area-inset-right))) max(24px,var(--field-safe-bottom,env(safe-area-inset-bottom))) max(20px,var(--field-safe-left,env(safe-area-inset-left)))}.mobile-root .m-action-list button{display:flex;justify-content:flex-start;width:100%;gap:14px;padding:14px 4px;border:0;border-bottom:1px solid #f0edf4;border-radius:0;background:#fff;min-height:56px}.mobile-root .m-sheet .m-wide+.m-wide{margin-top:8px}.mobile-root .m-search{display:flex;gap:8px;margin:12px 0 18px}.mobile-root .m-search input{min-width:0}.mobile-root .m-search button{flex:none;padding:8px;font-size:12px}.mobile-root .m-search button[aria-pressed=true]{color:var(--brand);border-color:var(--brand);background:var(--tint)}.mobile-root .m-unit-list{margin:12px 0}.mobile-root .m-unit-list>button{display:flex;width:100%;padding:12px 8px;gap:10px;justify-content:flex-start;border:0;border-radius:8px;background:#f5f3f8}.mobile-root .m-unit-list>button span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;font-size:13px}.mobile-root .m-unit-list>.m-point-row{background:#fff;border-bottom:1px solid #eeeaf2;border-radius:0;padding-left:20px;min-height:60px}.mobile-root .m-undo{position:fixed;left:14px;right:14px;bottom:max(16px,var(--field-safe-bottom,env(safe-area-inset-bottom)));z-index:115;background:#292034;color:#fff;border-radius:14px;padding:6px 8px 6px 14px;display:flex;align-items:center;gap:8px;box-shadow:0 8px 32px #21152a30}.mobile-root .m-undo span{flex:1;font-size:13px}.mobile-root .m-undo button{border:0;background:transparent;color:#fff;padding:8px}.mobile-root .m-capture{position:fixed;inset:0;height:var(--field-height,100dvh);z-index:120;display:flex;flex-direction:column;background:#fff}.mobile-root .m-capture>header{display:flex;gap:10px;align-items:center;flex:none;min-height:66px;padding:var(--field-safe-top,env(safe-area-inset-top)) max(16px,var(--field-safe-right,env(safe-area-inset-right))) 0 max(10px,var(--field-safe-left,env(safe-area-inset-left)));border-bottom:1px solid var(--line)}.mobile-root .m-capture>header button{border:0;width:48px;padding:0}.mobile-root .m-capture>header>div{min-width:0;display:flex;flex-direction:column;gap:3px}.mobile-root .m-capture>header small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-root .m-capture-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:18px max(20px,var(--field-safe-right,env(safe-area-inset-right))) 20px max(20px,var(--field-safe-left,env(safe-area-inset-left)))}.mobile-root .m-capture-context{margin-bottom:14px;color:var(--muted);font-size:12px}.mobile-root .m-photo{position:relative;display:flex;min-height:36dvh;height:44dvh;width:100%;align-items:center;justify-content:center;gap:12px;background:#f1eef6;border-radius:18px;overflow:hidden;margin:0 0 18px}.mobile-root .m-photo img{width:100%;height:100%;object-fit:contain}.mobile-root .m-retake{position:absolute;bottom:12px;display:flex;align-items:center;gap:6px;padding:8px 14px;background:#fffefc;border-radius:30px;box-shadow:0 2px 12px #24153220;font-size:13px;min-height:44px}.mobile-root .m-extras{border-top:1px solid var(--line);margin-top:16px}.mobile-root .m-extras summary{min-height:52px;padding:16px 0;font-size:13px;color:var(--muted)}.mobile-root .m-readings{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mobile-root .m-readings>*{min-width:0}.mobile-root .m-attachments{display:flex;gap:8px;flex-wrap:wrap}.mobile-root .m-attachments label{margin:0}.mobile-root .m-material{display:flex;align-items:center;gap:12px;margin-top:14px}.mobile-root .m-material img{width:64px;height:64px;object-fit:contain;background:#f4f2f7;border-radius:8px}.mobile-root .m-material audio{width:calc(100% - 60px)}.mobile-root .m-material button{margin-left:auto;width:48px;padding:0}.mobile-root .m-capture>footer{flex:none;padding:12px max(20px,var(--field-safe-right,env(safe-area-inset-right))) max(14px,var(--field-safe-bottom,env(safe-area-inset-bottom))) max(20px,var(--field-safe-left,env(safe-area-inset-left)));border-top:1px solid var(--line);background:#fff;text-align:center}.mobile-root .m-capture>footer>button{width:100%;min-height:54px}.mobile-root .m-capture>footer>small{display:block;margin-top:8px;font-size:11px}.mobile-root .m-finish h1{font-size:40px;margin:6px 0}.mobile-root .m-finish h1 small{font-size:14px}.mobile-root .m-coverage{padding:18px 0;border-top:1px solid var(--line)}.mobile-root .m-coverage>div{display:flex;flex-direction:column;gap:4px}.mobile-root .m-coverage>div p{margin:4px 0;font-size:13px}.mobile-root .m-coverage>button{margin-top:10px}.mobile-root .m-coverage form{margin-top:14px}.mobile-root .modal-backdrop{padding:0;z-index:125}.mobile-root .sheet,.mobile-root .work-dialog{width:100%;max-width:100%;height:var(--field-height,100dvh);max-height:var(--field-height,100dvh);border:0;border-radius:0}.mobile-root .sheet-head{padding:max(12px,var(--field-safe-top,env(safe-area-inset-top))) max(18px,var(--field-safe-right,env(safe-area-inset-right))) 12px max(18px,var(--field-safe-left,env(safe-area-inset-left)))}.mobile-root .sheet-head button{min-width:48px}.mobile-root .sheet-body{padding:20px max(20px,var(--field-safe-right,env(safe-area-inset-right))) max(24px,var(--field-safe-bottom,env(safe-area-inset-bottom))) max(20px,var(--field-safe-left,env(safe-area-inset-left)))}.mobile-root .sheet-footer{padding:14px 20px max(14px,var(--field-safe-bottom,env(safe-area-inset-bottom)))}.mobile-root .toast{z-index:150;bottom:auto;top:max(72px,var(--field-safe-top,env(safe-area-inset-top)));max-width:calc(100% - 32px)}@container field (min-aspect-ratio:1/1){.mobile-root .m-screen{grid-template-columns:minmax(0,1fr) 254px;grid-template-rows:auto minmax(0,1fr)}.mobile-root .m-top{grid-column:1 / -1;min-height:54px}.mobile-root .m-dock{grid-column:2;grid-row:2;max-height:none;border-top:0;border-left:1px solid var(--line);padding:6px max(16px,var(--field-safe-right,env(safe-area-inset-right))) max(12px,var(--field-safe-bottom,env(safe-area-inset-bottom))) 16px}.mobile-root .m-point-title{flex-direction:column;gap:6px;margin-bottom:12px}.mobile-root .m-main-action{flex-direction:column;gap:8px}.mobile-root .m-main-action button{min-height:48px}.mobile-root .m-canvas .map-tools{flex-direction:row;right:12px;bottom:12px}.mobile-root .m-canvas .map-tools button{border-radius:0;border-right:1px solid var(--line);border-bottom:0}.mobile-root .m-canvas .map-tools button:first-child{border-radius:12px 0 0 12px}.mobile-root .m-canvas .map-tools button:last-child{border-radius:0 12px 12px 0;border-right:0}.mobile-root .m-canvas .placing .map-tools{bottom:118px}.mobile-root .m-sheet{width:min(440px,100%);height:var(--field-height,100dvh);max-height:var(--field-height,100dvh);border-radius:20px 0 0 20px;margin-left:auto}.mobile-root .m-sheet>header{padding-top:max(8px,var(--field-safe-top,env(safe-area-inset-top)))}.mobile-root .m-capture>header{min-height:54px}.mobile-root .m-capture>footer{padding-top:8px;padding-bottom:max(8px,var(--field-safe-bottom,env(safe-area-inset-bottom)))}.mobile-root .m-capture>footer>small{display:none}.mobile-root .m-photo{height:65dvh}}@media(prefers-reduced-motion:reduce){.mobile-root *{scroll-behavior:auto;transition:none}}.mobile-root .m-readonly{color:var(--muted);font-size:12px;margin:0 0 12px}.mobile-root .m-home>header .m-home-pending{width:auto;min-width:48px;color:#976615;font-size:12px}.mobile-root .m-record-link{width:100%;border:0;background:transparent;color:var(--brand);min-height:44px;margin-top:4px;font-size:13px}.mobile-root .m-recorder{margin:14px 0 18px}.mobile-root .m-recorder>small{display:block;margin-top:8px}.mobile-root .m-recording{color:#ad293f;border-color:#e8bec7;background:#fff7f8;font-variant-numeric:tabular-nums}.mobile-root .m-note{border-bottom:1px solid var(--line);padding:18px 0}.mobile-root .m-note-meta{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin-bottom:5px}.mobile-root .m-note-meta b{font-weight:500;color:var(--brand)}.mobile-root .m-note>p{white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0}.mobile-root .m-note-media{display:grid;gap:14px;margin-top:12px}.mobile-root .m-note-media img{max-height:45dvh;max-width:100%;object-fit:contain;border-radius:10px;background:#f4f1f8}.mobile-root .m-note-media audio{width:100%}.mobile-root .m-note-media small{display:block;overflow-wrap:anywhere}.mobile-root .m-dock{padding:4px max(12px,var(--field-safe-right,env(safe-area-inset-right))) max(10px,var(--field-safe-bottom,env(safe-area-inset-bottom))) max(12px,var(--field-safe-left,env(safe-area-inset-left)));max-height:calc(var(--field-height,100dvh) * .3)}.mobile-root .m-compact-heading{display:flex;align-items:center;gap:4px}.mobile-root .m-point-picker{flex:1;min-width:0;text-align:left;justify-content:flex-start;padding:4px 2px;border:0;background:transparent;gap:8px}.mobile-root .m-point-picker>span{min-width:0;display:flex;flex-direction:column;gap:2px}.mobile-root .m-point-picker strong{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-root .m-point-picker small{font-size:11px;white-space:normal}.mobile-root .m-more{width:44px;padding:0;border:0;background:transparent}.mobile-root .m-main-action{gap:6px}.mobile-root .m-main-action>button{min-height:44px;font-size:13px;padding:6px 8px;gap:5px}.mobile-root .m-main-action>.m-next{flex:0 0 44px}.mobile-root .m-dock .m-review{min-height:44px;margin:0}.mobile-root .m-dock>h2{font-size:16px;padding-top:4px}.mobile-root .m-dock>small{margin:2px 0 6px}.mobile-root .m-dock .m-readings{margin:4px 0;gap:8px}.mobile-root .m-hold-record{flex:1;touch-action:none;user-select:none;-webkit-touch-callout:none;border-color:#bdb0d5;color:var(--brand);background:#f6f3fb;min-height:56px}.mobile-root .m-hold-record.m-recording{color:#ad293f;background:#fff0f3}.mobile-root .m-recorder .m-attachments{flex-wrap:nowrap}.mobile-root .m-recorder .m-attachments>label{font-size:12px}.mobile-root .m-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}.mobile-root .m-photo-tile{position:relative;min-width:0}.mobile-root .m-photo-open{position:relative;width:100%;aspect-ratio:1;padding:0;overflow:hidden;background:#f2eff6;border:1px solid var(--line)}.mobile-root .m-photo-open img{width:100%;height:100%;object-fit:cover}.mobile-root .m-photo-open small{position:absolute;left:6px;bottom:6px;color:#fff;background:#211330b0;border-radius:5px;padding:1px 5px;font-size:10px}.mobile-root .m-media-remove{position:absolute;top:0;right:0;width:44px;min-height:44px;padding:10px;border:0;background:transparent;color:#fff}.mobile-root .m-media-remove svg{background:#211330b0;border-radius:50%;width:24px;height:24px;padding:4px}.mobile-root .m-audio-item{border:1px solid var(--line);border-radius:14px;padding:10px 12px;margin:12px 0;background:#faf9fc}.mobile-root .m-audio-item>div{display:flex;align-items:center;gap:8px;min-height:32px}.mobile-root .m-audio-item strong{font-size:13px}.mobile-root .m-audio-item small{color:var(--muted)}.mobile-root .m-audio-item button{margin-left:auto;min-height:44px;width:44px;padding:0;border:0;background:transparent}.mobile-root .m-audio-item audio{width:100%;display:block;margin-top:4px}.mobile-root .m-photo-viewer{position:fixed;inset:0;z-index:160;height:var(--field-height,100dvh);background:#15111d;color:#fff;display:flex;flex-direction:column}.mobile-root .m-photo-viewer header,.mobile-root .m-photo-viewer footer{display:flex;align-items:center;justify-content:space-between;padding:8px max(16px,var(--field-safe-right,env(safe-area-inset-right))) max(8px,var(--field-safe-bottom,env(safe-area-inset-bottom))) max(16px,var(--field-safe-left,env(safe-area-inset-left)))}.mobile-root .m-photo-viewer header{padding-top:max(8px,var(--field-safe-top,env(safe-area-inset-top)))}.mobile-root .m-photo-viewer button{background:transparent;color:#fff;border:0;width:48px}.mobile-root .m-photo-viewer>.m-photo-stage{flex:1;min-height:0;min-width:0;width:100%;padding:0;border-radius:0;overflow:hidden;touch-action:none;cursor:zoom-in}.mobile-root .m-photo-stage[aria-pressed=true]{cursor:grab}.mobile-root .m-photo-stage[aria-pressed=true]:active{cursor:grabbing}.mobile-root .m-photo-stage img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}.mobile-root .m-record-value{display:flex;align-items:baseline;gap:10px;color:var(--muted)}.mobile-root .m-record-value strong{font-size:24px;color:var(--brand)}@container field (min-aspect-ratio:1/1){.mobile-root .m-screen{grid-template-columns:minmax(0,1fr) 208px}.mobile-root .m-dock{max-height:none}.mobile-root .m-main-action{flex-direction:column}.mobile-root .m-main-action>button{flex:none;width:100%;white-space:nowrap}.mobile-root .m-photo-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}.mobile-root .m-materials-only{border-top:0;margin-top:0}.mobile-root .m-materials-only>summary{display:none}.mobile-root .m-optional-note>summary{font-size:13px;color:var(--muted);min-height:44px;padding:12px 0}.mobile-root.field-viewport{position:fixed;inset:0;width:100dvw;height:100dvh;min-height:0;container:field / size;overflow:hidden;--field-height:100dvh}.mobile-root.field-viewport[data-field-rotation="90"],.mobile-root.field-viewport[data-field-rotation="-90"]{inset:50% auto auto 50%;width:100dvh;height:100dvw;--field-height:100dvw;transform:translate(-50%,-50%) rotate(90deg)}.mobile-root.field-viewport[data-field-rotation="-90"]{transform:translate(-50%,-50%) rotate(-90deg)}.mobile-root.field-viewport[data-field-rotation="180"]{transform:rotate(180deg)}.mobile-root.field-viewport[data-field-rotation="90"]{--field-safe-top:env(safe-area-inset-right);--field-safe-right:env(safe-area-inset-bottom);--field-safe-bottom:env(safe-area-inset-left);--field-safe-left:env(safe-area-inset-top)}.mobile-root.field-viewport[data-field-rotation="-90"]{--field-safe-top:env(safe-area-inset-left);--field-safe-right:env(safe-area-inset-top);--field-safe-bottom:env(safe-area-inset-right);--field-safe-left:env(safe-area-inset-bottom)}.mobile-root.field-viewport[data-field-rotation="180"]{--field-safe-top:env(safe-area-inset-bottom);--field-safe-right:env(safe-area-inset-left);--field-safe-bottom:env(safe-area-inset-top);--field-safe-left:env(safe-area-inset-right)}.mobile-root .m-action-list button[aria-pressed=true]{color:var(--brand);background:var(--tint)}@media(orientation:landscape){.mobile-root .m-login{padding-top:24px}}.mobile-root{background:var(--field-surface)}.mobile-root .m-home>header{height:72px}.mobile-root .m-home-heading{padding:24px 0}.mobile-root .m-home-heading h1{font-size:28px;margin:0 0 4px}.mobile-root .m-task{padding:18px;border-radius:12px;margin-bottom:12px;box-shadow:none}.mobile-root .m-task>small{margin-bottom:8px}.mobile-root .m-task .m-task-name{align-items:center}.mobile-root .m-task h2{font-size:17px;font-weight:600;margin:0}.mobile-root .m-task-name svg{flex:none;color:var(--brand)}.mobile-root .m-task .m-task-meta{margin-top:14px;flex-wrap:wrap;gap:6px}.mobile-root .m-task-meta b{color:var(--brand);font-size:12px;font-weight:500}.mobile-root .m-top{min-height:56px;gap:10px;padding-left:max(12px,var(--field-safe-left,env(safe-area-inset-left)));padding-right:max(10px,var(--field-safe-right,env(safe-area-inset-right)));border-bottom:1px solid #e8e4ed;background:#fdfcfe}.mobile-root .m-top .m-title{min-width:0;min-height:44px;padding:4px 0;flex-direction:row;justify-content:flex-start;align-items:center;gap:6px;border-radius:8px}.mobile-root .m-title>span{min-width:0}.mobile-root .m-title strong{width:auto;font-size:13px;line-height:20px;font-weight:600;letter-spacing:.1px}.mobile-root .m-title small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#81788d;font-size:10px;line-height:16px;font-weight:400}.mobile-root .m-title svg{flex:none;color:#93899e}.mobile-root .m-node-filter{display:flex;flex:none;align-items:center;padding:2px;gap:2px;border-radius:12px;background:#f0edf5}.mobile-root .m-node-filter button{min-width:48px;min-height:44px;padding:0 10px;border:0;border-radius:10px;background:transparent;color:#81768f;font-size:12px;font-weight:500;white-space:nowrap}.mobile-root .m-node-filter button[aria-pressed=true]{color:var(--brand);background:#fff;box-shadow:0 1px 4px #33205012,inset 0 0 0 1px #e6e0ee}.mobile-root .m-top-status{display:flex;flex:none;align-items:center;gap:4px}.mobile-root .m-top-status button{min-width:44px;min-height:44px;padding:4px;border:0;background:transparent}.mobile-root .m-task-progress{gap:3px;font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.mobile-root .m-task-progress b{font-weight:600}.mobile-root .m-task-progress span{color:#8b8198}.mobile-root .m-task-progress svg{color:#8b8198}.mobile-root .m-top .m-sync{color:#946010;font-size:11px}.mobile-root .m-top .m-sync-error{font-size:11px}.mobile-root .m-top button:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.mobile-root .m-dock{padding:0 max(10px,var(--field-safe-right,env(safe-area-inset-right))) max(4px,var(--field-safe-bottom,env(safe-area-inset-bottom))) max(10px,var(--field-safe-left,env(safe-area-inset-left)));max-height:calc(var(--field-height,100dvh) * .38);border-top:1px solid #e5e1e9}.mobile-root .m-compact-heading{min-height:44px;gap:0}.mobile-root .m-point-picker{display:flex;flex-direction:row;align-items:center;gap:8px;min-height:44px;overflow:hidden}.mobile-root .m-point-picker strong{font-size:15px;font-weight:600}.mobile-root .m-point-picker .m-status{flex:none;font-size:11px}.mobile-root .m-status{color:#647387}.mobile-root .m-status.pending{color:#97620c}.mobile-root .m-more{min-height:44px;flex:0 0 44px}.mobile-root .m-field-actions{display:flex;align-items:center;gap:8px}.mobile-root .m-field-actions>button{min-width:44px;height:44px;min-height:44px;padding:8px;border:0;background:transparent;border-radius:10px;flex:none;color:var(--ink)}.mobile-root .m-field-actions>.primary{flex:1;background:var(--brand);color:#fff;font-size:15px}.mobile-root .m-field-actions>.m-next{border-left:1px solid var(--line);border-radius:0}.mobile-root .m-dock .m-review{margin:0;font-size:12px}.mobile-root .m-canvas .map-tools{right:max(10px,var(--field-safe-right,env(safe-area-inset-right)));bottom:12px;border-radius:10px}.mobile-root .m-canvas .map-tools button{width:44px;height:44px;min-height:44px;touch-action:none;user-select:none;-webkit-touch-callout:none}.mobile-root .map-marker.measurement{--marker-ink:#293140;--marker-bg:#fff;--marker-border:#677e99}.mobile-root .map-marker.measurement.pending{--marker-border:#a9741c}.mobile-root .map-marker.measurement.complete{--marker-border:#22825a}.mobile-root .map-marker.measurement.review{--marker-border:#a96125}.mobile-root .map-marker.pending .map-status-mark{color:#fff;background:#a9741c;border-color:#a9741c}.mobile-root .map-marker.complete .map-status-mark{color:#fff;background:#22825a;border-color:#22825a}.mobile-root .relations .relation-link{stroke-width:3.5}.mobile-root .map-overview{position:absolute;right:10px;top:10px;z-index:6;width:146px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:0 6px 6px;box-shadow:0 2px 10px #21143320}.mobile-root .map-overview header{display:flex;align-items:center;justify-content:space-between;font-size:11px;padding-left:4px}.mobile-root .map-overview header button{border:0;padding:0;min-height:44px;width:44px}.mobile-root .map-overview-image{display:block;position:relative;width:100%;padding:0;border:0;border-radius:0;background:#fff;overflow:hidden}.mobile-root .map-overview-image img{width:100%;height:auto;display:block}.mobile-root .map-overview-image>span{position:absolute;border:2px solid var(--brand);background:#36138712;pointer-events:none}.mobile-root .map-choices{position:absolute;left:12px;right:64px;bottom:12px;max-height:65%;overflow:auto;z-index:7;background:#fff;border:1px solid var(--line);border-radius:12px;padding:4px 12px 8px;box-shadow:0 3px 18px #21143320}.mobile-root .map-choices header{display:flex;align-items:center;justify-content:space-between;font-size:13px}.mobile-root .map-choices header button{min-height:44px;width:44px;padding:0;border:0}.mobile-root .map-choices>button{width:100%;min-height:44px;border:0;border-top:1px solid var(--line);border-radius:0;gap:8px;text-align:left;justify-content:flex-start;background:#fff}.mobile-root .map-choices>button span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-root .m-capture>header{min-height:48px;padding-left:max(6px,var(--field-safe-left,env(safe-area-inset-left)))}.mobile-root .m-capture>header>button{min-height:44px;width:44px}.mobile-root .m-capture>header>strong{font-size:16px;font-weight:600}.mobile-root .m-capture-identity{display:flex;align-items:center;gap:10px;padding:10px max(16px,var(--field-safe-right,env(safe-area-inset-right))) 10px max(16px,var(--field-safe-left,env(safe-area-inset-left)));background:#f4f1f9;color:#423157;flex:none;font-size:13px}.mobile-root .m-capture-identity>span{flex:1;overflow-wrap:anywhere}.mobile-root .m-capture-identity svg{flex:none}.mobile-root .m-version-hint{padding:6px 16px;margin:0;font-size:12px;color:var(--muted);background:#faf9fc}.mobile-root .m-photo-capture .m-capture-body{padding:0;display:flex;flex-direction:column}.mobile-root .m-photo-capture .m-photo{flex:1;height:auto;min-height:150px;border-radius:0;margin:0;background:#f5f4f7}.mobile-root .m-photo-capture .m-photo img{position:absolute;inset:0;object-fit:contain}.mobile-root .m-photo-empty{border:0;background:transparent;display:flex;flex-direction:column;gap:12px;color:var(--brand)}.mobile-root .m-photo-capture .m-capture-body>.error-notice{margin:10px;flex:none}.mobile-root .m-capture>footer{padding:8px max(16px,var(--field-safe-right,env(safe-area-inset-right))) max(10px,var(--field-safe-bottom,env(safe-area-inset-bottom))) max(16px,var(--field-safe-left,env(safe-area-inset-left)))}.mobile-root .m-photo-capture>footer>small{margin:0 0 6px;font-size:12px}.mobile-root .m-upload-actions{display:flex;gap:12px;align-items:center}.mobile-root .m-upload-actions>.primary{flex:1;min-height:48px}.mobile-root .m-upload-actions>.m-retake-button{width:76px;border:0;background:transparent}.mobile-root .m-record-inputs{display:flex;flex-direction:column}.mobile-root .m-record-inputs.audio-first .m-recorder{order:-1;margin-top:0}.mobile-root .m-site-input .m-attachments>label{flex:1}.mobile-root .m-discard{position:absolute;inset:0;z-index:5;display:flex;align-items:flex-end;background:#21183350}.mobile-root .m-discard>div{width:100%;padding:24px 20px max(20px,var(--field-safe-bottom,env(safe-area-inset-bottom)));background:#fff;border-radius:16px 16px 0 0}.mobile-root .m-discard h2{font-size:18px}.mobile-root .m-discard p{color:var(--muted);font-size:14px}.mobile-root .m-discard button+button{border:0;margin-top:8px}.mobile-root .m-note{padding:16px 0}.mobile-root .m-note:first-child{padding-top:0}.mobile-root .m-note-meta strong{font-size:14px}.mobile-root .m-note-meta b{font-weight:500;color:#587364}.mobile-root .m-finish-title h2{font-size:18px}.mobile-root .m-finish-title p{color:var(--muted);margin:4px 0 20px;font-size:13px}.mobile-root .m-finish-stats{display:grid;grid-template-columns:repeat(3,1fr);padding:8px 0 22px;border-bottom:1px solid var(--line);text-align:center}.mobile-root .m-finish-stats>div{display:flex;flex-direction:column;border-right:1px solid var(--line)}.mobile-root .m-finish-stats>div:last-child{border:0}.mobile-root .m-finish-stats strong{font-size:26px;font-weight:550}.mobile-root .m-finish-stats span{font-size:11px;color:var(--muted)}.mobile-root .m-finish-stats .waiting strong{color:#986319}.mobile-root .m-section-label{font-size:13px;font-weight:500;color:var(--muted);margin:24px 0 8px}.mobile-root .m-upload-warning{display:flex;width:100%;text-align:left;justify-content:flex-start;gap:12px;padding:12px;border:1px solid #e6d7bb;background:#fcf8f0;border-radius:10px;color:#825819;margin:18px 0}.mobile-root .m-upload-warning>span{flex:1}.mobile-root .m-upload-warning small{display:block;font-size:11px}.mobile-root .m-coverage{padding:14px 0}.mobile-root .m-coverage .m-coverage-heading{flex-direction:row;align-items:center;justify-content:space-between;gap:8px}.mobile-root .m-coverage-heading>div{display:flex;flex-direction:column;gap:4px}.mobile-root .m-coverage-heading strong{font-size:14px}.mobile-root .m-coverage-heading button{width:44px;min-height:44px;padding:0;border:0}.mobile-root .m-coverage p{font-size:13px;margin:8px 0;color:var(--muted)}.mobile-root .m-coverage>.m-text-action{border:0;color:var(--brand);background:transparent;padding:0;min-height:44px;font-size:13px;margin:0}.mobile-root .m-finish-details{border-top:1px solid var(--line)}.mobile-root .m-finish-details summary{display:flex;justify-content:space-between;min-height:52px;align-items:center;font-size:14px;cursor:pointer}.mobile-root .m-finish-details summary span{color:var(--muted);font-size:12px}.mobile-root .m-finish-details>p{font-size:13px;color:var(--muted)}.mobile-root .m-all-done{display:flex;align-items:center;gap:10px;color:#287853;margin:24px 0;font-size:14px}.mobile-root .m-sheet{border-radius:16px 16px 0 0}.mobile-root .m-sheet-body{padding:14px max(18px,var(--field-safe-right,env(safe-area-inset-right))) max(20px,var(--field-safe-bottom,env(safe-area-inset-bottom))) max(18px,var(--field-safe-left,env(safe-area-inset-left)))}@container field (min-aspect-ratio:1/1){.mobile-root .m-screen{grid-template-columns:minmax(0,1fr) 188px}.mobile-root .m-dock{padding:12px max(12px,var(--field-safe-right,env(safe-area-inset-right))) max(12px,var(--field-safe-bottom,env(safe-area-inset-bottom))) 12px;max-height:none}.mobile-root .m-compact-heading{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:start;gap:0;padding:0;margin:0 0 16px}.mobile-root .m-point-picker{flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;min-height:52px;padding:0}.mobile-root .m-point-picker strong{white-space:normal;line-height:1.4}.mobile-root .m-more{position:static;width:44px;min-width:44px;height:44px;align-self:start;padding:0}.mobile-root .m-field-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:stretch}.mobile-root .m-field-actions>.primary{grid-column:1 / -1;grid-row:1;width:100%;min-height:48px;border-radius:12px}.mobile-root .m-field-actions>.m-next{grid-column:1 / -1;border:0;border-top:1px solid #ece8f0;border-radius:0;padding-top:10px;margin-top:2px;justify-content:center;flex-direction:row-reverse;color:#766b84;gap:8px;font-size:12px}.mobile-root .m-field-actions>.m-next span{display:inline}.mobile-root .m-canvas .map-tools{flex-direction:row}.mobile-root .m-photo-capture{display:grid;grid-template-columns:minmax(0,1fr) 208px;grid-template-rows:48px auto 1fr auto}.mobile-root .m-photo-capture>header{grid-column:1 / -1}.mobile-root .m-photo-capture>.m-capture-body{grid-column:1;grid-row:2 / 5}.mobile-root .m-photo-capture>.m-capture-identity{grid-column:2;align-items:flex-start;padding:16px}.mobile-root .m-photo-capture>.m-version-hint{grid-column:2;grid-row:3}.mobile-root .m-photo-capture>footer{grid-column:2;grid-row:4;border:0}.mobile-root .m-photo-capture>footer>small{display:block}.mobile-root .m-photo-capture .m-upload-actions{flex-direction:column-reverse;gap:2px}.mobile-root .m-photo-capture .m-upload-actions>.primary{flex:none;width:100%}.mobile-root .m-finish .m-capture-body{padding-top:12px}}.mobile-root .m-point-tools{position:absolute;left:max(12px,var(--field-safe-left,env(safe-area-inset-left)));bottom:12px;z-index:4;display:flex;flex-direction:column;gap:2px;padding:4px;border:1px solid #e3deeb;border-radius:16px;background:#fffffff5;box-shadow:0 3px 16px #24153212}.mobile-root .m-point-tools button{position:relative;display:flex;justify-content:center;align-items:center;width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:11px;background:transparent;color:#645b70;box-shadow:none}.mobile-root .m-point-tools button svg{flex:none;stroke-width:1.8}.mobile-root .m-point-tools button sup{position:absolute;right:3px;bottom:2px;top:auto;width:13px;height:13px;border-radius:4px;display:grid;place-items:center;font-size:9px;line-height:1;background:#fff;color:inherit;font-weight:650}.mobile-root .m-point-tools .m-add-unit{color:var(--brand);background:#f1ebfa}.mobile-root .m-point-tools .m-add-point{color:#4c596c}.mobile-root .m-point-tools button[aria-pressed=true] sup{background:#5a36a2}.mobile-root .m-point-tools button:disabled{opacity:.32;background:transparent}.mobile-root .m-point-tools .m-point-remove{color:#a75e6b}.mobile-root .m-canvas .map-tools{right:max(12px,var(--field-safe-right,env(safe-area-inset-right)));bottom:12px;display:flex;flex-direction:column;gap:2px;padding:4px;border:1px solid #e3deeb;border-radius:16px;background:#fffffff5;box-shadow:0 3px 16px #24153212}.mobile-root .m-canvas .map-tools button,.mobile-root .m-canvas .map-tools button:first-child,.mobile-root .m-canvas .map-tools button:last-child{width:44px;height:44px;min-height:44px;border:0;border-radius:11px;padding:0;color:#645b70;background:transparent}.mobile-root .m-canvas .map-tools button svg{stroke-width:1.8}.mobile-root .m-canvas:has(.placing) .m-point-tools,.mobile-root .m-canvas .placing .map-tools{bottom:130px}.mobile-root .m-point-tools button:focus-visible,.mobile-root .m-canvas .map-tools button:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.mobile-root .m-field-actions>.m-labelled-action{display:flex;flex-direction:column;gap:1px;padding:2px 6px;min-width:48px}.mobile-root .m-labelled-action span{font-size:10px;line-height:14px;font-variant-numeric:tabular-nums}.mobile-root .m-field-actions>.m-recording{color:#b32443;background:#fff0f3}.mobile-root .m-toggle-record{flex:1;border-color:#cbbde5;color:var(--brand);background:#f6f3fb;min-height:44px}.mobile-root .m-toggle-record.m-recording{color:#b32443;border-color:#ecb7c4;background:#fff0f3}.mobile-root .m-quick-backdrop{position:fixed;inset:0;z-index:120;background:#22143138}.mobile-root .m-quick-capture{inset:auto 0 0;height:56%;max-height:600px;min-height:min(400px,85%);border-radius:22px 22px 0 0;box-shadow:0 -8px 32px #22143116}.mobile-root .m-quick-capture>header{padding-top:4px;border:0}.mobile-root .m-media-count{margin-left:auto;color:var(--muted);font-size:12px}.mobile-root .m-quick-capture .m-capture-identity{padding-top:7px;padding-bottom:7px;font-size:12px}.mobile-root .m-quick-capture .m-capture-body{padding-top:12px}.mobile-root .m-capture-shortcuts{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mobile-root .m-capture-shortcuts>button,.mobile-root .m-capture-shortcuts>label{min-height:44px;font-size:13px;gap:6px;flex:1;padding:8px;white-space:nowrap}.mobile-root .m-capture-shortcuts:empty{display:none}.mobile-root .m-quick-capture .m-recorder{margin:0}.mobile-root .m-quick-capture .m-recorder small{font-size:11px;line-height:1.5}.mobile-root .m-quick-capture .m-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mobile-root .m-quick-capture .m-photo-grid:has(>:only-child){grid-template-columns:minmax(0,1fr)}.mobile-root .m-quick-capture .m-photo-grid:has(>:only-child) .m-photo-open{aspect-ratio:auto;height:160px}.mobile-root .m-quick-capture .m-photo-grid:has(>:only-child) .m-photo-open img{object-fit:contain}.mobile-root .m-photo-capture .m-capture-body{display:block;padding:12px 16px}.mobile-root .m-meter-preview{position:relative;height:clamp(180px,35cqh,380px);margin:0 0 12px;background:#f2eff6;border-radius:12px}.mobile-root .m-meter-preview .m-photo-grid{grid-template-columns:minmax(0,1fr);height:100%;margin:0}.mobile-root .m-meter-preview .m-photo-tile{height:100%;min-height:0}.mobile-root .m-meter-preview .m-photo-open{height:100%;aspect-ratio:auto}.mobile-root .m-meter-preview .m-photo-open img{object-fit:contain}.mobile-root .m-meter-preview .m-photo-empty{width:100%;height:100%}.mobile-root .m-photo-capture .m-recorder{margin-top:12px}.mobile-root .m-note-add{display:flex;gap:12px}.mobile-root .m-note-add>button{flex:1}.mobile-root .m-camera{position:fixed;inset:0;z-index:180;background:#131017;color:#fff;display:flex;flex-direction:column;height:var(--field-height,100dvh)}.mobile-root .m-camera header{display:flex;justify-content:space-between;align-items:center;padding:max(6px,var(--field-safe-top,env(safe-area-inset-top))) 12px 6px}.mobile-root .m-camera header button,.mobile-root .m-camera header>span{width:44px}.mobile-root .m-camera button{background:transparent;color:#fff;border:0;min-height:44px}.mobile-root .m-camera-stage{position:relative;min-height:0;flex:1;display:flex;align-items:center;justify-content:center}.mobile-root .m-camera-stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.mobile-root .m-camera-stage>p{position:relative;max-width:300px;padding:20px;background:#131017b0;line-height:1.7;text-align:center}.mobile-root .m-meter-guide{position:relative;width:68%;max-width:380px;height:auto;aspect-ratio:4/3;max-height:40%;border:2px solid #ffffffe0;border-radius:18px;pointer-events:none}.mobile-root .m-meter-guide span{position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%);font-size:12px;white-space:nowrap;text-shadow:0 1px 4px #000}.mobile-root .m-camera footer{display:flex;justify-content:space-around;align-items:center;padding:20px max(12px,var(--field-safe-right,env(safe-area-inset-right))) max(20px,var(--field-safe-bottom,env(safe-area-inset-bottom))) max(12px,var(--field-safe-left,env(safe-area-inset-left)))}.mobile-root .m-camera footer>span{font-size:11px;color:#c4bccc;text-align:center;min-width:72px}.mobile-root .m-camera .m-shutter{width:68px;height:68px;border:4px solid #fff;border-radius:50%;background:#ffffffe8;color:#2d173f}@container field (min-aspect-ratio:1/1){.mobile-root .m-quick-capture{left:auto;width:min(420px,60%);height:100%;max-height:none;min-height:0;border-radius:18px 0 0 18px}.mobile-root .m-quick-capture .m-photo-grid:has(>:only-child) .m-photo-open{height:120px}.mobile-root .m-meter-preview{height:180px}.mobile-root .m-camera{display:grid;grid-template-columns:minmax(0,1fr) 110px;grid-template-rows:48px minmax(0,1fr)}.mobile-root .m-camera header{grid-column:1 / -1}.mobile-root .m-camera-stage{grid-column:1;grid-row:2}.mobile-root .m-camera footer{grid-column:2;grid-row:2;flex-direction:column;padding:8px}.mobile-root .m-meter-guide{max-height:65%;height:auto;width:40%}}.mobile-root .m-meter-caption{position:absolute;left:8px;top:8px;z-index:1;padding:4px 8px;border-radius:6px;background:#251830aa;color:#fff;font-size:11px;pointer-events:none}.mobile-root .m-task-back{flex:0 0 44px;width:44px;height:44px;padding:0;border:0;background:transparent;color:#766b84}.mobile-root .m-sheet>header{min-height:44px;padding:10px 20px}.mobile-root .m-sheet-return,.mobile-root .m-dialog-return{display:flex;flex:none;padding:8px max(12px,var(--field-safe-right,env(safe-area-inset-right))) max(12px,var(--field-safe-bottom,env(safe-area-inset-bottom))) max(12px,var(--field-safe-left,env(safe-area-inset-left)));border-top:1px solid #eeeaf2;background:#fff}.mobile-root .m-sheet-return button,.mobile-root .m-dialog-return button{width:100%;min-height:48px;border:0;color:#665b74;background:#f5f2f8;gap:8px;font-size:14px}.mobile-root .sheet-head>button,.mobile-root .work-heading>button{display:none}.mobile-root .sheet>.sheet-body,.mobile-root .work-dialog>form{min-height:0;overflow:auto;flex:1}.mobile-root .m-capture>header{padding-left:max(16px,var(--field-safe-left,env(safe-area-inset-left)))}.mobile-root .m-upload-actions{gap:8px}.mobile-root .m-upload-actions>.m-return{min-width:72px;min-height:48px;padding:8px;gap:6px;border:0;background:#f5f2f8;color:#665b74;font-size:14px}.mobile-root .m-note-add{gap:8px}.mobile-root .m-note-add>button{width:auto;min-width:0;min-height:48px;gap:6px;font-size:14px;padding:8px}.mobile-root .m-note-add>.m-return{border:0;background:#f5f2f8;color:#665b74}.mobile-root .m-photo-viewer header{justify-content:center;min-height:40px;color:#c9c1d2;font-size:12px}.mobile-root .m-photo-viewer footer{flex:none;justify-content:center;gap:8px;padding-top:12px;padding-bottom:max(16px,var(--field-safe-bottom,env(safe-area-inset-bottom)))}.mobile-root .m-photo-viewer footer>button{flex:none;min-height:48px;padding:8px;background:#ffffff12;border-radius:12px}.mobile-root .m-photo-viewer .m-gallery-close{flex:1;max-width:240px;width:auto;gap:8px;font-size:14px;background:#ffffff24}.mobile-root .m-camera header{justify-content:center;min-height:48px}.mobile-root .m-camera .m-camera-close{display:flex;gap:6px;min-width:80px;min-height:48px;border-radius:12px;background:#ffffff14;font-size:14px}@container field (min-aspect-ratio:1/1){.mobile-root .m-photo-viewer footer{justify-content:flex-end}.mobile-root .m-compact-heading{grid-template-columns:44px minmax(0,1fr) 44px}.mobile-root .m-photo-capture .m-upload-actions{flex-direction:row;flex-wrap:wrap;gap:8px}.mobile-root .m-photo-capture .m-upload-actions>.primary{order:-1;flex-basis:100%}.mobile-root .m-photo-capture .m-upload-actions>.m-return,.mobile-root .m-photo-capture .m-upload-actions>.m-retake-button{flex:1;width:auto}}.mobile-root .m-point-menu{height:auto;border-radius:20px 20px 0 0}.mobile-root .m-point-menu>header{padding:6px 12px 6px 20px;border-bottom:1px solid #f0edf4}.mobile-root .m-point-menu>header h2{font-size:15px;font-weight:600;letter-spacing:.1px}.mobile-root .m-point-menu>header button{width:44px;height:44px;min-height:44px;color:#81788d;background:transparent}.mobile-root .m-point-menu>header button svg{width:20px;height:20px}.mobile-root .m-point-menu .m-sheet-body{padding:8px max(12px,var(--field-safe-right,env(safe-area-inset-right))) max(12px,var(--field-safe-bottom,env(safe-area-inset-bottom))) max(12px,var(--field-safe-left,env(safe-area-inset-left)))}.mobile-root .m-point-menu-list>button,.mobile-root .m-point-materials>summary{display:grid;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:12px;width:100%;min-height:44px;padding:10px 8px;border:0;border-radius:10px;background:transparent;text-align:left;color:#38313f;font-size:14px;font-weight:400;cursor:pointer}.mobile-root .m-point-menu-list>button>svg,.mobile-root .m-point-materials svg{width:20px;height:20px;stroke-width:1.7;color:#857b91}.mobile-root .m-point-menu-list>button>svg:last-child,.mobile-root .m-point-materials>summary>svg:last-child{width:16px;height:16px;color:#b4adbe}.mobile-root .m-point-menu-list>button:active,.mobile-root .m-point-materials>summary:active{background:#f3eff9}.mobile-root .m-point-menu-list>button:focus-visible,.mobile-root .m-point-materials>summary:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.mobile-root .m-point-materials{margin-top:6px;padding-top:6px;border-top:1px solid #eeeaf2}.mobile-root .m-point-materials>summary{list-style:none;font-size:13px;color:#776c85}.mobile-root .m-point-materials>summary::-webkit-details-marker{display:none}.mobile-root .m-point-materials[open]>summary>svg:last-child{transform:rotate(180deg)}.mobile-root .m-point-materials>div,.mobile-root .m-remove-confirm>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mobile-root .m-point-materials>div{padding:4px 8px 8px}.mobile-root .m-point-materials>div button{min-height:44px;font-size:13px;gap:8px;background:#f8f6fa;border:1px solid #ede8f2}.mobile-root .m-remove-confirm{padding:0 8px 8px}.mobile-root .m-remove-confirm p{margin:8px 0 20px;font-size:14px;line-height:1.7;color:#746b7f}.mobile-root .m-remove-confirm button{font-size:14px}@container field (min-aspect-ratio:1/1){.mobile-root .m-point-menu{width:288px;max-width:calc(100% - 24px);height:auto;max-height:calc(var(--field-height,100dvh) - 24px);align-self:center;margin:12px max(12px,var(--field-safe-right,env(safe-area-inset-right))) 12px auto;border-radius:18px}}.mobile-root .m-field-actions>.m-labelled-action{border:1px solid #ece8f0;background:#faf8fc;color:#5e536d;border-radius:12px}.mobile-root .m-field-actions>.m-recording{color:#b32443;background:#fff0f3;border-color:#f3d2db}.mobile-root .m-field-actions>button svg{flex:none}.mobile-root .m-next>span{display:none}@container field (min-aspect-ratio:1/1){.mobile-root .m-field-actions>.m-labelled-action{width:100%;height:56px;min-height:56px;gap:4px;padding:6px}.mobile-root .m-field-actions>.m-labelled-action span{font-size:11px}.mobile-root .m-field-actions>.m-next span{display:inline}.mobile-root .m-point-picker strong{font-size:14px;overflow-wrap:anywhere}.mobile-root .m-dock>h2{padding:0;font-size:17px}.mobile-root .m-dock>small{font-size:11px;margin:8px 0 12px}.mobile-root .m-dock>select,.mobile-root .m-dock>input{width:100%;font-size:13px;padding:8px}.mobile-root .m-dock .m-readings{grid-template-columns:minmax(0,1fr)}}.mobile-root button,.mobile-root .button{font-weight:500;-webkit-tap-highlight-color:transparent}.mobile-root button.primary{background:var(--brand);border:1px solid #2e1073;color:#fff;box-shadow:inset 0 1px #ffffff12}.mobile-root button.primary:active{background:#280d69}.mobile-root :where(button,.button,summary):focus-visible{outline:2px solid #7350b2;outline-offset:2px}.mobile-root label{gap:8px;color:#635c6d;font-size:13px;font-weight:500}.mobile-root input:not([type=checkbox]),.mobile-root select,.mobile-root textarea{padding:12px;border:1px solid #dfdbe6;background:#faf9fc;border-radius:12px;color:var(--ink);box-shadow:none}.mobile-root :is(input,textarea)::placeholder{color:#817a89;font-weight:400}.mobile-root :is(input,textarea,select):focus{background:#fff;border-color:#866bb3;outline:2px solid #866bb31a;outline-offset:1px}.mobile-root input[aria-invalid=true]{border-color:#ba6370}.mobile-root .error-notice{border:1px solid #eed4d8;background:#fff5f5;border-radius:12px;box-shadow:none;padding:12px}.mobile-root .error-notice strong{font-size:13px}.mobile-root .error-notice p{font-size:12px;line-height:1.65}.mobile-root .badge{border-radius:6px;font-weight:500}.mobile-root .m-empty{color:var(--muted);font-size:14px;line-height:1.8}.mobile-root .m-status{padding:3px 7px;border-radius:6px;background:#f1f0f4;color:#6d6577;font-size:11px;font-weight:500}.mobile-root .m-status.complete,.mobile-root .m-note-meta b.complete{color:var(--field-success);background:#edf6f0}.mobile-root .m-status.pending,.mobile-root .m-note-meta b.pending{color:var(--field-pending);background:#ecf3fa}.mobile-root .m-status.review,.mobile-root .m-note-meta b.review{color:var(--field-review);background:#fcf2e5}.mobile-root .m-home{max-width:800px;margin:0 auto;padding-left:max(20px,var(--field-safe-left,env(safe-area-inset-left)));padding-right:max(20px,var(--field-safe-right,env(safe-area-inset-right)))}.mobile-root .m-home>header{height:88px;gap:12px;border-bottom:1px solid var(--line)}.mobile-root .m-home-brand{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px}.mobile-root .m-home-brand strong{font-size:14px;font-weight:600;letter-spacing:.3px}.mobile-root .m-home-brand small{font-size:12px}.mobile-root .m-home>header>button{border-radius:50%;color:#776d87}.mobile-root .m-home-heading{padding:28px 0 22px;align-items:center}.mobile-root .m-home-heading h1{display:flex;align-items:center;gap:10px;margin-bottom:6px;font-size:27px;font-weight:600;letter-spacing:-.7px}.mobile-root .m-home-heading h1>span{font-size:12px;letter-spacing:0;font-weight:500;padding:3px 7px;background:#ece7f4;border-radius:6px;color:var(--brand)}.mobile-root .m-home-heading small{font-size:12px}.mobile-root .m-home-heading>button{width:44px;min-height:44px;border:1px solid #e6e1ec;background:#fff;border-radius:12px;color:#766b85}.mobile-root .m-task-grid{display:grid;gap:12px}.mobile-root .m-task{min-width:0;margin:0;padding:18px;border:1px solid #e4e0e9;border-radius:16px;background:#fff;box-shadow:0 2px 5px #241c3010}.mobile-root .m-task:active{background:#faf8fe;border-color:#b1a1c9}.mobile-root .m-task-context{margin-bottom:12px;gap:10px}.mobile-root .m-task-context>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#746b80;font-size:11px}.mobile-root .m-task .m-task-name{gap:16px}.mobile-root .m-task h2{font-size:16px;line-height:1.5;font-weight:600;letter-spacing:-.2px}.mobile-root .m-task-name svg{color:#9a8fab}.mobile-root .m-task .m-task-meta{margin-top:20px;gap:10px}.mobile-root .m-task-meta>span{display:flex;gap:5px;align-items:center;font-size:11px}.mobile-root .m-task-meta>b{font-size:12px;font-weight:600}.mobile-root .m-task progress{height:3px;margin:12px 0 0;background:#eeebf3}.mobile-root .m-task-history{margin-top:24px}.mobile-root .m-task-history>summary{display:flex;align-items:center;color:#736a7e;font-size:13px;gap:8px;list-style:none}.mobile-root .m-task-history>summary:after{content:"+";margin-left:auto;font-size:20px;font-weight:400}.mobile-root .m-task-history[open]>summary:after{content:"−"}.mobile-root .m-task-history>summary::-webkit-details-marker{display:none}.mobile-root .m-task-history .m-task{margin-top:12px}.mobile-root .m-account{border:1px solid var(--line);padding:6px;border-radius:14px;box-shadow:0 8px 30px #28203114}.mobile-root .m-account button{font-size:14px;padding:10px 16px}.mobile-root .m-login{max-width:460px;margin:auto;background:var(--field-surface)}.mobile-root .m-login .brand-logo{margin:0 0 40px}.mobile-root .m-login h1{font-size:28px;font-weight:600;letter-spacing:-.6px}.mobile-root .m-login>p{line-height:1.7;margin-bottom:30px;font-size:13px}.mobile-root .m-login input{background:#fff}.mobile-root .m-top{background:#fefdff;border-color:#e5e1eb}.mobile-root .m-title small{font-size:11px;color:#766c82}.mobile-root .m-node-filter{background:#f0edf5;border-radius:12px}.mobile-root .m-node-filter button{color:#70647e}.mobile-root .m-canvas .plan-map{background:#f0eff3}.mobile-root .m-point-tools,.mobile-root .m-canvas .map-tools{border-color:#e1dce8;box-shadow:0 3px 14px #25203114;background:#fffffff7;border-radius:15px}.mobile-root .m-point-tools button,.mobile-root .m-canvas .map-tools button{color:#64586f;border-radius:10px}.mobile-root .m-point-tools .m-add-unit{background:#eee8f7;color:var(--brand)}.mobile-root .m-point-tools .m-point-remove{color:#a64d61}.mobile-root .m-point-tools button[aria-pressed=true]{color:#fff;background:var(--brand)}.mobile-root .m-dock{border-color:#e6e1ed;box-shadow:0 -3px 14px #241c3006}.mobile-root .m-point-picker strong{font-size:14px;letter-spacing:.1px}.mobile-root .m-field-actions>.m-labelled-action{background:#f7f5fa;border:1px solid #e8e3ef;color:#635671;border-radius:12px}.mobile-root .m-field-actions>.m-recording{background:#fff0f3;border-color:#edbfcb;color:#a42345}.mobile-root .m-field-actions>.primary{border-radius:12px;font-size:15px}.mobile-root .m-task-back,.mobile-root .m-more{color:#857a92}.mobile-root .map-marker{--marker-ink:#4f4959;--marker-bg:#fff;--marker-border:#8e859b}.mobile-root .map-marker.complete{--marker-ink:#fff;--marker-bg:#267252;--marker-border:#1a5c40}.mobile-root .map-marker.pending{--marker-ink:#235e91;--marker-bg:#edf4fb;--marker-border:#4d84b3}.mobile-root .map-marker.review{--marker-ink:#945817;--marker-bg:#fff5e7;--marker-border:#b47c3c}.mobile-root .map-marker.partial{--marker-ink:var(--brand);--marker-bg:#f0eafa;--marker-border:#7d60aa}.mobile-root .map-marker .marker-body{border-width:1.5px;box-shadow:0 0 0 2px #fff,0 2px 6px #241d332b}.mobile-root .marker-body b{font-size:12px;font-weight:650;letter-spacing:.15px}.mobile-root .map-marker.source .marker-body{width:68px;height:44px;border-radius:10px;gap:4px;background:var(--brand);border-color:#2a0e6b}.mobile-root .marker-level{font-size:9px;color:#e2d5f7}.mobile-root .map-marker.source .marker-body small{padding:0;min-width:0;background:transparent;font-size:10px;font-weight:500;color:#ede5fb}.mobile-root .map-marker.waiting .map-status-mark{display:none}.mobile-root .map-marker.pending .marker-body{border-style:dashed}.mobile-root .map-marker.source .marker-body{border-style:solid}.mobile-root .map-marker.related .marker-body{box-shadow:0 0 0 2px #fff,0 0 0 3px #a890cb,0 2px 6px #241d3324}.mobile-root .map-marker.selected .marker-body{transform:none;outline:2px solid var(--brand);outline-offset:4px;box-shadow:0 0 0 3px #fff,0 3px 10px #241d3333}.mobile-root .map-status-mark{width:17px;height:17px;top:0;left:0;border:1px solid var(--marker-border);box-shadow:0 0 0 1.5px #fff}.mobile-root .map-marker.complete .map-status-mark{background:#287351;color:#fff}.mobile-root .map-marker.review .map-status-mark{background:#ab6a24;color:#fff}.mobile-root .map-material-mark{top:calc(100% + 2px);border:1px solid #d7d1e1;border-radius:5px;color:#6f617f;padding:1px 4px;background:#fff;box-shadow:0 1px 3px #241d3312;font-size:9px}.mobile-root .map-material-mark.pending{color:var(--field-pending);border-color:#aac2dc;background:#f0f6fd}.mobile-root .map-shared-count{min-width:17px;height:17px;line-height:15px;border-width:1px;font-size:9px;top:0;right:-2px}.mobile-root .relations .relation-halo{stroke-width:6}.mobile-root .relations .relation-link{stroke-width:2.5;opacity:.95}.mobile-root .m-scrim,.mobile-root .m-quick-backdrop{background:#1f172b38}.mobile-root .m-sheet{box-shadow:0 -8px 32px #21172e14}.mobile-root .m-sheet>header{padding:16px 20px 12px;border-color:#eeebf3}.mobile-root .m-sheet>header h2{font-size:16px;font-weight:600;letter-spacing:-.2px}.mobile-root .m-sheet-body{padding-top:16px}.mobile-root .m-sheet-return,.mobile-root .m-dialog-return{border-color:#ece8f1;padding-top:8px}.mobile-root .m-sheet-return button,.mobile-root .m-dialog-return button{background:#f5f2f8;color:#685975;font-size:14px;border-radius:12px}.mobile-root .m-task-intro h3{font-size:17px;line-height:1.5;margin-bottom:6px}.mobile-root .m-task-intro p{font-size:12px;color:var(--muted);line-height:1.6;margin-bottom:22px}.mobile-root .m-action-list button{min-height:52px;font-size:14px;padding:12px 6px;gap:12px;border-color:#eeeaf3;color:#40364c}.mobile-root .m-action-list button>svg:first-child{color:#877595}.mobile-root .m-action-list button>svg:last-child:not(:first-child){margin-left:auto;color:#9a8ca9}.mobile-root .m-search{margin:12px 0 20px}.mobile-root .m-search button{border-color:#e3ddeb;background:#faf8fc;color:#71617f;border-radius:12px}.mobile-root .m-unit-list{margin:12px 0 18px;border:1px solid #e5e0ec;border-radius:14px;overflow:hidden}.mobile-root .m-unit-list>button{min-height:64px;padding:12px;gap:10px;border-radius:0;background:#f5f2fa}.mobile-root .m-unit-list>button>b{padding:5px 6px;border-radius:6px;background:var(--brand);color:#fff;font-size:11px;font-weight:600;flex:none;min-width:42px;text-align:center}.mobile-root .m-unit-list>button>span{white-space:normal;line-height:1.5;color:#39303f;font-weight:500}.mobile-root .m-unit-list>button>span>small{display:block;font-size:11px;font-weight:400;color:#7a6d88;margin-top:3px}.mobile-root .m-unit-list>button>svg{color:#9786aa;flex:none}.mobile-root .m-unit-list>.m-point-row{background:#fff;padding:12px;border-top:1px solid #eeeaf3;border-bottom:0;min-height:60px}.mobile-root .m-unit-list>.m-point-row>b{color:#6c617b;background:#f2eff6}.mobile-root .m-unit-list>.m-point-row>.m-status{flex:none;white-space:normal;max-width:84px;text-align:center}.mobile-root .m-unit-list>button[aria-pressed=true]{box-shadow:inset 3px 0 var(--brand);background:#f5f1fb}.mobile-root .m-point-menu>header{padding:12px 20px}.mobile-root .m-point-menu-list>button,.mobile-root .m-point-materials>summary{min-height:48px}.mobile-root .m-point-menu-list>button:active{background:var(--tint)}.mobile-root .sheet-head h2,.mobile-root .work-heading h2{font-size:17px}.mobile-root .sheet-body:has(>form){display:flex;flex-direction:column}.mobile-root .sheet-body>form{display:flex;flex:1;flex-direction:column;gap:0}.mobile-root .sheet-body>form>.primary:last-child{margin-top:auto;flex:none}.mobile-root .sheet-body>form>label{flex:none}.mobile-root .sheet-footer{border-top:1px solid var(--line)}.mobile-root .queue-summary{background:#f4f0f9;border:1px solid #e9e1f1;border-radius:14px;font-size:13px}.mobile-root .queue-item{padding:18px 0}.mobile-root .m-capture>header{min-height:56px;border-color:#ece8f1;padding-right:20px}.mobile-root .m-capture>header strong{font-size:16px;font-weight:600}.mobile-root .m-capture>header small{font-size:11px}.mobile-root .m-capture-identity{background:#f8f6fb;border-bottom:1px solid #eee8f5;color:#504259;gap:10px}.mobile-root .m-capture-identity>b{padding:5px 8px;border-radius:7px;font-size:13px;font-weight:650;background:#eae3f5;color:var(--brand);flex:none}.mobile-root .m-capture-identity>span{min-width:0;font-size:12px;font-weight:500}.mobile-root .m-capture-identity small{display:block;font-weight:400;color:#7d6e8d;font-size:11px;margin-top:2px}.mobile-root .m-capture-identity>svg{color:#a18eaf}.mobile-root .m-meter-preview{border:1px solid #e6e0ed;border-radius:16px;background:#f8f6fb;overflow:hidden}.mobile-root .m-photo-empty{gap:16px;color:#715590;font-size:14px}.mobile-root .m-photo-empty svg{stroke-width:1.3}.mobile-root .m-meter-caption{background:#ffffffde;color:#756183;border:1px solid #eae3f0;border-radius:5px;font-size:10px}.mobile-root .m-capture-shortcuts>button,.mobile-root .m-capture-shortcuts>label{border:1px solid #e5dfec;background:#f9f7fc;color:#675276;border-radius:12px}.mobile-root .m-capture-shortcuts>button[aria-expanded=true]{border-color:#baa8d2;background:#f0eaf8;color:var(--brand)}.mobile-root .m-capture-shortcuts>label:has(input:disabled),.mobile-root .m-attachments>label:has(input:disabled){opacity:.45;cursor:not-allowed}.mobile-root .m-capture>footer{border-color:#ece8f1;box-shadow:0 -3px 16px #241c3005}.mobile-root .m-upload-actions>.m-return,.mobile-root .m-note-add>.m-return{background:#f3f0f7;color:#756383}.mobile-root .m-upload-actions>.m-retake-button{font-size:13px;color:#746280}.mobile-root .m-photo-grid{gap:8px}.mobile-root .m-photo-tile{border-radius:12px;border:1px solid #e7e0ef;background:#f7f5fa}.mobile-root .m-photo-open{border-radius:11px}.mobile-root .m-photo-open>small{background:#251b35b3;font-size:10px;border-radius:5px}.mobile-root .m-photo-grid:has(>:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-root .m-records .m-photo-grid:has(>:only-child){grid-template-columns:minmax(0,1fr)}.mobile-root .m-records .m-photo-grid:has(>:only-child) .m-photo-open{height:180px;aspect-ratio:auto}.mobile-root .m-records .m-photo-grid:has(>:only-child) img{object-fit:contain}.mobile-root .m-audio-item{margin:12px 0;border-color:#e5deee;background:#f9f7fc;border-radius:12px;padding:10px 12px}.mobile-root .m-audio-item small{font-size:11px}.mobile-root .m-toggle-record{min-height:48px;border-radius:12px;font-size:14px}.mobile-root .m-records .m-capture-body{background:var(--field-surface);padding:16px}.mobile-root .m-note,.mobile-root .m-note:first-child{border:1px solid #e6e0ed;background:#fff;border-radius:14px;padding:16px;margin-bottom:12px}.mobile-root .m-note-meta{align-items:center;margin-bottom:8px}.mobile-root .m-note-meta b{padding:3px 7px;border-radius:5px;font-size:10px;white-space:nowrap}.mobile-root .m-note>small{font-size:11px;line-height:1.7;display:block}.mobile-root .m-note>p{font-size:13px;line-height:1.7}.mobile-root .m-note-add>button{border-radius:12px;border-color:#e5deed}.mobile-root .m-finish-title h2{font-size:19px;font-weight:600;letter-spacing:-.3px}.mobile-root .m-finish-stats{padding:20px 0;border:1px solid #e9e2f1;border-radius:14px;background:#faf8fc}.mobile-root .m-finish-stats strong{font-size:25px;letter-spacing:-.5px}.mobile-root .m-coverage-heading>div{min-width:0}.mobile-root .m-coverage-heading strong{line-height:1.5;font-size:14px;font-weight:500}.mobile-root .m-coverage-heading small{font-size:11px}.mobile-root .m-coverage-heading>svg{color:var(--field-success)}.mobile-root .m-coverage-heading>button{color:#8b799d;background:#f7f3fa;border-radius:10px}.mobile-root .m-coverage form{padding:14px;background:#f8f6fb;border:1px solid #e8e1f0;border-radius:12px}@container field (min-width:620px){.mobile-root .m-task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@container field (min-aspect-ratio:1/1){.mobile-root .m-dock{box-shadow:-3px 0 14px #241c3006}.mobile-root .m-photo-capture{grid-template-rows:56px auto 1fr auto}.mobile-root .m-photo-capture>.m-capture-identity{flex-wrap:wrap;padding:14px;gap:8px}.mobile-root .m-photo-capture .m-capture-identity>span{flex-basis:100%;order:1}.mobile-root .m-photo-capture .m-capture-identity>svg{margin-left:auto}.mobile-root .m-point-menu{border-radius:18px}.mobile-root .m-records .m-capture-body{padding:16px max(20px,var(--field-safe-right,env(safe-area-inset-right))) 16px max(20px,var(--field-safe-left,env(safe-area-inset-left)))}}.m-return-requirements{margin:12px 0;padding:12px 14px;border-left:3px solid #a46a15;border-radius:8px;background:#fff8e9;text-align:left;color:#694916}.m-return-requirements strong{font-size:13px}.m-return-requirements p{margin:6px 0!important;font-size:14px!important;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;max-height:22dvh;overflow:auto;color:#473923!important}.m-return-requirements small{display:block;font-size:11px;line-height:1.5;color:#78623c}.lab-task-copy .lab-return-link{display:block;margin:-6px 0;padding:0;border:0;background:none;color:#8b5811;font-size:11px;line-height:1.4;text-align:left;min-height:44px;min-width:44px}.mobile-root dialog.m-app-exit-scrim[open]{position:fixed;inset:0;margin:0;width:100%;height:100%;max-width:none;max-height:none;border:0;background:transparent;display:flex;align-items:flex-end;justify-content:flex-end;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.m-app-exit-scrim::backdrop{background:#20162d50;backdrop-filter:blur(3px)}.mobile-root .m-app-exit{width:min(350px,100%);max-height:100%;overflow:auto;background:#fcfbfe;border:1px solid #e2dbe9;border-radius:22px;padding:22px;color:#44374f;box-shadow:0 12px 48px #28133c24}.mobile-root .m-app-exit header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.mobile-root .m-app-exit h2{margin:0;font-size:19px;font-weight:600}.mobile-root .m-app-exit p{font-size:13px;line-height:1.8;margin:8px 0;color:#72667c}.mobile-root .m-app-exit small{display:block;font-size:11px;line-height:1.7;color:#83788c}.mobile-root .m-app-exit strong{font-size:13px;font-weight:600}.mobile-root .m-exit-guide{background:#f0ebf7;border:1px solid #e5dcec;border-radius:14px;padding:14px;margin:16px 0}.mobile-root .m-exit-materials{padding-bottom:12px;border-bottom:1px solid #e7e1ee}.mobile-root .m-exit-materials button{min-height:44px;font-size:12px;background:transparent;border:0;color:var(--brand);padding:0}.mobile-root .m-app-exit footer{display:flex;gap:8px;margin-top:18px;position:sticky;bottom:0;background:#fcfbfe;padding-top:6px}.mobile-root .m-app-exit footer button{flex:1;min-height:48px;border-radius:12px;font-size:13px}.lab-game[data-lab-hand=left] .mobile-root dialog.m-app-exit-scrim[open]{justify-content:flex-start}@media(orientation:landscape)and (max-height:600px){.mobile-root .m-app-exit{padding:14px 18px;border-radius:18px}.mobile-root .m-app-exit header{margin-bottom:8px}.mobile-root .m-app-exit h2{font-size:17px}.mobile-root .m-exit-guide{margin:10px 0;padding:10px 12px}.mobile-root .m-app-exit footer{margin-top:10px}}
