:root{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;color:#263631;background:#f4f6f5;font-synthesis:none;font-weight:400;--green:#244f45;--mint:#edf3ef;--muted:#7c8580;--line:#e5e9e7;--amber:#ce8b44;--header:68px}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;height:100%;overflow:hidden}button,input,textarea{font:inherit}button{cursor:pointer;color:inherit;touch-action:manipulation}button:disabled{opacity:.55;cursor:wait}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #709486;outline-offset:3px}button{border:0;background:transparent}svg{flex-shrink:0;stroke-width:1.7}button,input,textarea{-webkit-tap-highlight-color:transparent}button{transition:background .18s,color .18s,box-shadow .18s}button:hover{color:var(--green)}h1,h2,h3,p{margin:0}.app{height:100dvh;min-height:420px;display:flex;flex-direction:column}.app-header{height:var(--header);flex:0 0 var(--header);display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:30}.brand{display:flex;align-items:center;gap:12px;padding:0;text-align:left;min-width:228px}.brand img{width:38px;height:40px}.brand strong{display:block;font-size:19px;font-weight:600;letter-spacing:1px}.brand small{display:block;color:var(--muted);font-size:12px;letter-spacing:1px;margin-top:2px}.main-nav{height:100%;display:flex;gap:32px;position:absolute;left:50%;transform:translate(-50%)}.main-nav button{position:relative;padding:0 12px;font-size:15px;color:#808580;letter-spacing:1px}.main-nav button.active{font-weight:600;color:var(--green)}.main-nav button.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--green)}.header-actions{display:flex;gap:24px;align-items:center}.version-button{display:flex;gap:10px;align-items:center;font-size:13px;padding:10px 0}.button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:42px;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:500;letter-spacing:.3px;line-height:1.4}.button.primary{color:#fff;background:var(--green);border:1px solid var(--green)}.button.primary:hover{background:#326355;box-shadow:0 3px 12px #244f451a}.button.secondary{color:var(--green);background:#fff;border:1px solid #8ca49c}.button.secondary:hover{background:#f2f7f4}.export-button{min-height:38px;gap:14px;font-size:12px}.icon-button{padding:7px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;color:#758078}.icon-button:hover{background:#edf3ef;color:var(--green)}.text-button{font-size:11px;display:inline-flex;align-items:center;gap:5px;padding:3px 0;color:var(--green);line-height:1.4}.text-button:hover{text-decoration:underline}.workspace{min-height:0;flex:1;display:flex;position:relative}.sidebar{width:280px;flex:0 0 280px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0;z-index:15}.sidebar-top{padding:25px 22px 23px;display:flex;justify-content:space-between}.sidebar h1{font-size:18px;font-weight:600;margin-bottom:7px}.sidebar-top p{font-size:12px;line-height:1.7;color:var(--muted)}.search-box{display:flex;align-items:center;gap:8px;margin:0 22px 16px;padding:9px 10px;border:1px solid #dee4df;border-radius:8px;color:#8a928c}.search-box input{background:transparent;border:0;outline:none;min-width:0;width:100%;font-size:12px;color:#36433e}.search-box input::placeholder{color:#939c96}.search-box button{padding:0;height:18px}.filters{display:flex;gap:7px;padding:0 22px 15px}.filters button{font-size:11px;white-space:nowrap;border:1px solid var(--line);border-radius:11px;padding:7px 10px;color:#8a918b}.filters button.active{background:var(--green);border-color:var(--green);color:#fff}.point-list{padding:0 14px;overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:#dbe2dc transparent}.point-row{width:100%;text-align:left;display:flex;align-items:center;gap:12px;min-height:83px;padding:17px 11px;position:relative;border-radius:10px}.point-row:after{content:"";position:absolute;bottom:0;height:1px;left:12px;right:12px;background:var(--line)}.point-row.selected{background:var(--mint)}.point-row.selected:after,.point-row:has(+.selected):after{display:none}.point-row:hover{background:#f5f7f5}.point-row.selected:hover{background:var(--mint)}.row-number{width:32px;height:32px;border:1px solid #e8ece8;border-radius:50%;display:grid;place-items:center;flex:0 0 32px;color:var(--amber);background:#fff;font-size:14px;font-variant-numeric:tabular-nums;font-weight:400}.row-copy{display:block;min-width:0}.row-copy strong{font-size:13px;line-height:1.5;font-weight:500;display:block;color:#2e3934}.row-copy small{font-size:10px;display:flex;align-items:center;gap:5px;color:#8a928c;margin-top:6px}.row-copy small i,.confidence-line i{width:5px;height:5px;border-radius:50%;background:var(--amber)}.row-copy small.recorded{color:var(--green)}.row-copy small.recorded i{background:var(--green)}.row-chevron{margin-left:auto;color:var(--green);opacity:0}.selected .row-chevron{opacity:1}.sidebar-footer{padding:20px 23px;display:flex;flex-direction:column;gap:8px;font-size:11px;color:#909991;border-top:1px solid #f3f5f3}.sidebar-footer span,.sidebar-footer small{display:flex;align-items:center;gap:7px}.sidebar-footer small{font-size:10px;color:#9ba39d}.empty-state{padding:34px 10px;text-align:center;display:flex;align-items:center;flex-direction:column;gap:12px;color:#97a097}.empty-state strong{font-size:13px;color:#59645c}.empty-state p{font-size:12px;line-height:1.6}.viewer-area{position:relative;flex:1;min-width:0;overflow:hidden}.scene-viewport{position:absolute;top:0;right:0;bottom:0;left:0;background:#e7e9e5}.three-host{position:absolute;top:0;right:0;bottom:0;left:0}.three-host canvas{display:block;width:100%;height:100%;touch-action:none;outline:0}.scene-intro{position:absolute;top:25px;left:25px;z-index:2;pointer-events:none}.scene-intro h2{font-size:18px;font-weight:500;color:#36443d;letter-spacing:.3px;text-shadow:0 1px 6px #ffffffe0}.scene-intro p{margin-top:8px;color:#6b796f;font-size:11px;text-shadow:0 1px 3px white}.scene-tools{position:absolute;bottom:46px;left:calc((100% - 344px)/2);transform:translate(-50%);display:flex;gap:16px;align-items:center;z-index:8;white-space:nowrap}.app:not(.has-inspector) .scene-tools,.browse-mode .scene-tools{left:50%}.view-toolbar{display:flex;align-items:center;gap:4px;padding:8px 10px;background:#fffffff2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 6px 25px #263a3a12,0 0 0 1px #ffffffa6;border-radius:12px}.view-toolbar button{padding:8px 10px;display:flex;gap:6px;align-items:center;font-size:12px;border-radius:7px;color:#626d66;min-height:36px}.view-toolbar button.active{background:#f0f5f1;color:var(--green);box-shadow:inset 0 0 0 1px #729588}.view-toolbar button:hover{background:#eef3ef}.view-toolbar i{height:24px;width:1px;background:#e4e8e3;margin:0 4px}.compass{display:flex;flex-direction:column;align-items:center;justify-content:center;width:50px;height:53px;background:#fffffff0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 6px 25px #263a3a10;border-radius:50%;gap:1px}.compass span{font-size:10px;font-style:italic;color:var(--green)}.compass svg{width:22px;height:25px}.fullscreen-button{position:absolute;bottom:20px;right:20px;background:#ffffffd9;z-index:5}.has-inspector .fullscreen-button{right:364px}.scene-footnote{position:absolute;bottom:12px;left:22px;display:flex;gap:16px;font-size:9px;letter-spacing:.2px;color:#758174;text-shadow:0 1px 3px #fff;pointer-events:none;max-width:calc(100% - 60px)}.map-markers{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:4}.map-pin{position:absolute;top:0;left:0;pointer-events:auto;padding:0;transform-origin:0 0;width:1px;height:1px;z-index:1}.map-pin:hover,.map-pin.selected{z-index:3}.pin-body{position:absolute;width:35px;height:44px;left:-17.5px;bottom:0;filter:drop-shadow(0 3px 3px #69451b32);transform-origin:bottom;transition:transform .18s}.pin-body svg{width:100%;height:100%;fill:#d89b50;stroke:#fff;stroke-width:1.8}.pin-body b{position:absolute;top:9px;left:0;right:0;text-align:center;font-size:14px;color:#fff;line-height:1;font-weight:500}.map-pin.selected .pin-body,.map-pin:hover .pin-body{transform:scale(1.14)}.map-pin.selected:before{content:"";position:absolute;left:-21px;top:-12px;width:40px;height:22px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 5px #d99a506b;animation:pulse-ring 2.6s ease-in-out infinite}.pin-label{position:absolute;bottom:18px;left:25px;color:#354138;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:7px 10px;border-radius:6px;box-shadow:0 2px 8px #37412b18;font-size:11px;white-space:nowrap;opacity:0;transition:opacity .18s;pointer-events:none;text-align:left}.pin-label small{display:block;font-size:9px;margin-top:2px;color:#a7773d}.map-pin.selected .pin-label,.map-pin:hover .pin-label{opacity:1}.uncertain-pin .pin-body svg{stroke-dasharray:4 2}.guide-panel{position:absolute;top:18px;right:18px;bottom:30px;width:320px;background:#fffffff8;border:1px solid #fff;box-shadow:0 5px 25px #23352c14;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:14px;display:flex;flex-direction:column;z-index:12;overflow:hidden}.guide-scroll{overflow-y:auto;scrollbar-width:thin;scrollbar-color:#dce3dd transparent;min-height:0;padding:14px 18px 0;overscroll-behavior:contain}.guide-eyeline{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.guide-eyeline>span{display:flex;gap:11px;align-items:center;font-size:12px;color:#8b948d}.guide-eyeline b{font-size:17px;color:var(--amber);font-weight:400}.guide-eyeline i{font-style:normal;color:#b1b6b0}.guide-panel h2{font-size:21px;letter-spacing:.5px;font-weight:600;line-height:1.5}.guide-subtitle{font-size:11px;margin:8px 0 15px;color:#8a938c;line-height:1.7}.evidence-image{padding:0;display:block;width:100%;height:158px;border-radius:9px;overflow:hidden;position:relative;background:#eef1ed}.evidence-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.evidence-image:hover img{transform:scale(1.035)}.evidence-image>span{position:absolute;bottom:8px;right:8px;padding:4px 7px;border-radius:4px;background:#243a35a6;color:#fff;display:flex;gap:7px;align-items:center;font-size:9px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.confidence-line{display:flex;justify-content:space-between;align-items:center;margin:10px 0 17px}.confidence-line>span{display:flex;gap:5px;align-items:center;font-size:10px;color:#839188}.confidence-line>span.uncertain{color:#b47d40}.confidence-line i{background:#8b9f85;width:4px;height:4px}.confidence-line .uncertain i{background:var(--amber)}.confidence-line button{font-size:10px;color:#8a978d}.evidence-reason{padding:11px;background:#f6f8f5;border-left:2px solid #d5b483;border-radius:0 6px 6px 0;margin-bottom:16px}.evidence-reason p{font-size:11px;line-height:1.8;color:#6d796f}.evidence-reason small{display:block;font-size:9px;line-height:1.6;color:#95a091;margin-top:7px}.how-title{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:500;margin-bottom:13px}.how-title>span{display:flex;align-items:center;gap:5px;font-size:10px;color:#a0a79f;font-weight:400}.shot-steps{list-style:none;padding:0;margin:0 0 14px;display:flex;flex-direction:column;gap:14px}.shot-steps li{display:flex;gap:9px}.step-number{height:18px;width:18px;flex:0 0 18px;display:grid;place-items:center;border:1px solid #dee5df;border-radius:50%;font-size:10px;color:#526254;margin-top:1px}.step-number.done{background:var(--green);border-color:var(--green);color:#fff}.shot-steps strong{font-size:11px;font-weight:500;line-height:1.6;display:block}.shot-steps p{font-size:10px;line-height:1.75;color:#8e998e;margin-top:4px}.shot-steps small{font-size:9px;color:#9d977f;display:block;margin-top:3px}.guide-diagram{border:1px solid #e5e9e5;border-radius:10px;background:#fff;padding:2px 0 8px;margin:0 0 13px;text-align:center}.guide-diagram svg{width:100%;display:block;max-height:118px}.guide-diagram small{color:#a3aaa1;font-size:8px}.standing-hint{display:flex;align-items:flex-start;gap:7px;color:#788c79;margin:0 0 9px}.standing-hint>svg{margin-top:2px}.standing-hint strong{font-size:10px;font-weight:500;line-height:1.6;display:block}.standing-hint p{font-size:10px;color:#96a093;line-height:1.7;margin-top:3px}.standing-hint button{font-size:10px;margin-top:5px}.caution{font-size:9px;color:#ab9374;line-height:1.8;padding:9px 0 13px}.guide-actions{display:flex;flex-direction:column;gap:9px;padding:14px 18px 16px;border-top:1px solid #eef1ed;background:#fff;flex-shrink:0}.guide-actions .button{min-height:41px}.progress-count{margin-left:auto;font-size:10px;color:#869b8d}.model-loading,.model-error{position:absolute;top:46%;left:calc((100% - 344px)/2);transform:translate(-50%,-50%);z-index:7;background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid white;box-shadow:0 5px 30px #22362e0b;border-radius:13px;padding:22px 30px;display:flex;flex-direction:column;align-items:center;gap:12px;min-width:220px;text-align:center;color:var(--green)}.app:not(.has-inspector) .model-loading,.app:not(.has-inspector) .model-error{left:50%}.model-loading strong{font-size:13px;font-weight:500}.model-loading span,.model-error small{font-size:10px;color:#839080}.model-error{max-width:350px}.model-error h3{font-size:16px}.model-error p{font-size:12px;color:#7b897e;line-height:1.7;word-break:break-word}.spin{animation:spin 1s linear infinite}.browse-guide-button{position:absolute;top:24px;right:25px;z-index:10;box-shadow:0 4px 20px #16302716}.version-popover{position:absolute;z-index:40;right:25px;top:62px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 40px #1830261f;width:330px;padding:23px}.version-popover>svg{color:#8c9c87;margin-bottom:10px}.version-popover h3{font-size:16px;margin-bottom:8px}.version-popover p{font-size:12px;line-height:1.8;color:#879181;margin-top:8px}.popover-close{position:absolute;top:10px;right:10px}.modal{color:#2e3d34;width:min(560px,calc(100vw - 28px));max-height:calc(100dvh - 40px);border:1px solid #e3e9e3;border-radius:16px;padding:26px;box-shadow:0 25px 100px #122a3450;overflow:auto;scrollbar-width:thin}.modal::backdrop{background:#182d2d65;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal.wide{width:min(1020px,calc(100vw - 28px))}.modal-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:17px}.modal-heading small{color:var(--amber);font-size:11px}.modal-heading h2{font-size:22px;margin:6px 0}.modal-heading p{font-size:12px;color:var(--muted)}.local-notice{background:#f0f5f0;color:#7b8c79;font-size:11px;line-height:1.8;padding:11px 13px;border-radius:8px}.capture-checklist{display:flex;flex-direction:column;gap:13px;margin:22px 0}.capture-checklist label{display:flex;gap:9px;align-items:center;font-size:13px;cursor:pointer}.capture-checklist input{position:absolute;opacity:0;width:18px;height:18px}.capture-checklist input:focus-visible+.check-visual{outline:2px solid #789381;outline-offset:3px}.check-visual{border:1px solid #c7d2c6;border-radius:4px;height:18px;width:18px;display:grid;place-items:center;color:#fff}.capture-checklist input:checked+.check-visual{background:var(--green);border-color:var(--green)}.field-heading{display:flex;justify-content:space-between;margin:20px 0 12px;align-items:center}.field-heading strong{font-size:13px;font-weight:500}.field-heading small{font-size:10px;color:#97a08f}.upload-zone{border:1px dashed #c6d2c5;border-radius:9px;padding:18px;display:flex;flex-direction:column;align-items:center;gap:7px;color:#8ba085;background:#fcfdfb;position:relative;cursor:pointer}.upload-zone input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;height:100%}.upload-zone strong{font-size:12px;color:#658360;font-weight:500}.upload-zone small{font-size:10px;display:flex;gap:5px;align-items:center;color:#a0ad99}.upload-zone:hover{background:#f4f8f1}.notes-label{display:block;font-size:13px;margin-top:20px}.notes-label textarea{display:block;resize:vertical;width:100%;border:1px solid #dfe5dc;border-radius:8px;padding:11px;margin-top:9px;font-size:12px;line-height:1.8;background:#fff;color:#465441}.notes-label textarea::placeholder{color:#acb3a6}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:10px}.photo-tile{border:1px solid #e5eae0;border-radius:8px;overflow:hidden;min-width:0}.photo-tile>img{width:100%;height:90px;object-fit:cover;display:block}.photo-tile>span{padding:6px;display:block;font-size:9px;color:#96a18f;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-tile>div{display:flex;justify-content:flex-end;padding:0 3px 3px}.photo-tile .icon-button{padding:4px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:23px}.form-error{color:#a34431;background:#fff5f1;font-size:12px;padding:10px;border-radius:6px;line-height:1.7;margin-top:12px}.photo-modal-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.photo-modal-heading h2{font-size:17px;font-weight:500}.full-evidence{width:100%;max-height:70vh;object-fit:contain;display:block;border-radius:8px}.full-evidence-caption{font-size:12px;color:#7f8c77;line-height:1.7;margin:14px 0 6px}.modal.wide>small{font-size:10px;color:#a1aa97}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;color:#fff;background:#244f45ed;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 20px #18312530;padding:13px 16px;border-radius:10px;font-size:12px;z-index:100;max-width:calc(100vw - 28px);line-height:1.6}.toast button{color:#dbe6da;display:flex;padding:0}.mobile-only{display:none!important}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-ring{0%,to{box-shadow:0 0 0 4px #d99a5044}50%{box-shadow:0 0 0 8px #d99a5022}}@media(min-height:950px){.evidence-image{height:185px}.shot-steps{gap:17px}.shot-steps p{font-size:11px}.guide-scroll{padding-top:16px}.guide-diagram svg{max-height:132px}.guide-actions{padding-top:17px;padding-bottom:19px}.sidebar-top{padding-top:27px}.point-row{min-height:88px}}@media(max-width:1250px)and (min-width:1100px){.sidebar{width:248px;flex-basis:248px}.sidebar-top{padding-left:18px;padding-right:18px}.search-box{margin-left:18px;margin-right:18px}.filters{padding-left:18px;padding-right:18px;gap:5px}.filters button{padding:7px 8px}.point-row{gap:9px;padding-left:6px;padding-right:6px}.row-copy strong{font-size:12px}.scene-intro h2{font-size:16px}.scene-tools{gap:8px}.view-toolbar{gap:0;padding:7px}.view-toolbar button{padding:7px}.compass{width:44px;height:48px}.scene-footnote span:nth-child(2){display:none}}@media(max-width:1099px){.app-header{padding:0 18px}.brand{min-width:180px}.main-nav{gap:16px}.header-actions{gap:12px}.export-button{padding:9px 11px}.sidebar{width:250px;flex-basis:250px}.guide-panel{width:305px;top:110px;bottom:97px;right:16px;max-height:calc(100% - 207px)}.guide-scroll{padding:12px 15px 0}.guide-actions{padding:11px 15px;gap:7px}.guide-panel h2{font-size:19px}.evidence-image{height:132px}.shot-steps p{display:none}.shot-steps{gap:11px}.guide-diagram,.standing-hint{display:none}.caution{font-size:9px}.scene-tools,.has-inspector .scene-tools{left:50%}.scene-intro h2{font-size:16px}.scene-intro{left:20px}.scene-footnote span:nth-child(2){display:none}.has-inspector .fullscreen-button{right:20px}.model-loading,.model-error{left:50%}.version-button{font-size:11px}.row-copy strong{font-size:12px}.filters{gap:5px}.filters button{padding:7px 8px}}@media(max-width:760px){:root{--header:62px}.mobile-only{display:flex!important}.desktop-only{display:none!important}.app-header{padding:0 14px;flex-wrap:wrap}.brand{min-width:0;gap:7px}.brand img{width:29px;height:31px}.brand strong{font-size:14px;letter-spacing:.5px}.brand small{font-size:9px;letter-spacing:1px}.main-nav{position:static;transform:none;gap:12px;margin-left:auto;margin-right:12px}.main-nav button{font-size:12px;padding:0 2px;letter-spacing:0}.header-actions{gap:0}.version-button{display:none}.export-button{padding:8px;min-height:32px;border-radius:6px}.export-button span{display:none}.export-button svg{height:16px;width:16px}.workspace{display:block}.viewer-area{height:100%;width:100%;overflow:hidden}.sidebar{position:absolute;top:0;bottom:0;left:0;width:min(310px,88vw);transform:translate(-102%);z-index:51;transition:transform .22s;box-shadow:8px 0 30px #1c302318}.sidebar.mobile-open{transform:translate(0)}.sidebar-top{padding:22px 20px}.sidebar h1{font-size:19px}.sidebar-top p{font-size:12px}.row-copy strong{font-size:13px}.point-row{min-height:78px}.mobile-backdrop{position:fixed;inset:var(--header) 0 0;background:#18332b45;z-index:50}.scene-intro{top:18px;left:17px;right:14px}.scene-intro h2{font-size:15px;letter-spacing:0}.scene-intro p{font-size:10px;margin-top:5px}.scene-tools,.has-inspector .scene-tools{left:50%;bottom:66px;gap:9px}.view-toolbar{padding:5px 6px;gap:0;border-radius:10px}.view-toolbar button{font-size:10px;padding:7px 8px;gap:4px;min-height:33px}.view-toolbar button svg{width:16px;height:16px}.view-toolbar i{margin:0 2px;height:20px}.compass{width:39px;height:44px;gap:0}.compass span{font-size:8px}.compass svg{width:18px;height:22px}.scene-footnote{left:15px;bottom:10px;font-size:8px}.scene-footnote span:nth-child(2){display:none}.mobile-point-list{position:absolute;left:16px;top:77px;border:1px solid white;background:#fffffff0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:8px;padding:9px 11px;align-items:center;gap:7px;color:var(--green);font-size:11px;box-shadow:0 3px 10px #18312c0d;z-index:10}.mobile-point-list span{background:#edf3e9;padding:1px 5px;border-radius:4px;font-size:10px}.map-pin .pin-body{width:29px;height:37px;left:-14.5px}.pin-body b{font-size:11px;top:8px}.pin-label{font-size:9px;padding:6px 8px;left:19px;bottom:16px}.map-pin.selected .pin-label{max-width:150px}.guide-panel{position:absolute;top:auto;bottom:0;left:0;right:0;width:auto;height:min(53%,480px);max-height:none;border-radius:18px 18px 0 0;border-bottom:0;box-shadow:0 -6px 30px #253b3220}.guide-panel:before{content:"";position:absolute;width:34px;height:4px;background:#dfe7de;border-radius:4px;top:7px;left:50%;transform:translate(-50%);z-index:3}.guide-scroll{padding:14px 18px 0}.guide-eyeline{margin-bottom:4px}.guide-eyeline>span{font-size:11px}.guide-eyeline b{font-size:13px}.guide-panel h2{font-size:19px;line-height:1.4}.guide-subtitle{font-size:10px;margin:4px 0 10px}.evidence-image{height:130px;float:right;width:124px;margin:0 0 10px 13px}.confidence-line{margin:7px 0 13px;display:block;min-height:28px}.confidence-line>span{font-size:9px}.confidence-line .text-button{margin-top:5px;font-size:9px}.how-title{font-size:12px;margin-bottom:9px}.how-title>span{display:none}.shot-steps{gap:9px;margin-bottom:14px}.shot-steps li{gap:7px}.shot-steps strong{font-size:10px;line-height:1.6}.shot-steps p{display:block;font-size:10px;line-height:1.65}.shot-steps small{font-size:9px}.guide-diagram{display:block;clear:both}.guide-diagram svg{height:106px}.standing-hint{display:flex}.caution{font-size:9px}.guide-actions{flex-direction:row;padding:10px 16px max(12px,env(safe-area-inset-bottom));gap:10px}.guide-actions .button{flex:1;font-size:11px;padding:9px 7px;min-height:39px;gap:5px}.guide-actions .button svg{width:16px;height:16px}.progress-count{font-size:9px;margin-left:0}.has-inspector .scene-tools{bottom:calc(53% + 12px);left:auto;right:10px;transform:none}.has-inspector .view-toolbar button span{display:none}.has-inspector .view-toolbar button{padding:5px 6px;min-height:28px}.has-inspector .view-toolbar{padding:3px 5px}.has-inspector .compass{width:33px;height:34px}.has-inspector .compass svg{width:15px;height:17px}.has-inspector .scene-footnote{display:none}.has-inspector .model-loading{top:27%;left:50%}.model-loading{top:42%;min-width:210px;padding:18px}.model-error{top:30%;left:50%;width:calc(100% - 32px);max-width:340px;padding:18px}.model-loading strong{font-size:12px}.model-loading span{font-size:10px}.browse-guide-button{top:auto;bottom:125px;left:50%;right:auto;transform:translate(-50%);font-size:12px;white-space:nowrap}.version-popover{width:calc(100vw - 28px);right:14px}.toast{bottom:16px;width:max-content;font-size:11px;max-width:calc(100vw - 24px);padding:11px 12px}.modal{padding:20px;max-height:calc(100dvh - 22px);border-radius:14px}.modal-heading h2{font-size:20px}.modal-heading p{font-size:11px}.local-notice{font-size:10px}.capture-checklist label{font-size:12px}.modal-actions{gap:9px}.modal-actions .button{font-size:12px}.photo-tile>img{height:70px}.notes-label textarea{font-size:13px}.photo-modal-heading h2{font-size:14px}.modal.wide{padding:17px}.full-evidence-caption{font-size:11px}.empty-state{font-size:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(max-width:760px){.sidebar:not(.mobile-open){visibility:hidden}}.inspection-label{display:inline-block;background:#ffffffe6;padding:5px 9px;border-radius:5px;color:#244f45;font-size:11px;margin-bottom:8px}@media(min-width:761px)and (max-width:1099px){.shot-steps p,.guide-diagram{display:block}.standing-hint{display:flex}}.export-preview{width:100%;height:45vh;resize:vertical;border:1px solid #dbe2dc;border-radius:8px;padding:14px;font-size:12px;line-height:1.8;color:#36443d;background:#fafcf9}.account-button{font-size:12px;white-space:nowrap;padding:8px;border:1px solid #dbe5dd;border-radius:7px}.cloud-user{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.cloud-user select{padding:8px;border:1px solid #cedbcf;border-radius:6px;background:#fff;color:var(--green)}.history-entry{border-bottom:1px solid var(--line);padding:18px 0;font-size:13px;line-height:1.8}.history-entry p{white-space:pre-wrap;overflow-wrap:anywhere}.modal>h3{margin:22px 0 10px;font-size:15px}.modal>.button,.modal>p{margin-bottom:12px}.modal a.button{text-decoration:none}.history-entry img{border-radius:6px;max-height:160px;object-fit:cover}@media(max-width:760px){.header-actions{gap:5px}.account-button{font-size:10px;padding:7px 5px}.main-nav{gap:6px;margin-right:6px}.brand strong{font-size:12px}.brand small{font-size:8px}.app-header{padding:0 9px}.brand img{width:24px}.main-nav button{font-size:11px}}
