:root{color-scheme:light;--ink:#243531;--muted:#6d7973;--line:#dfe5df;--green:#32614e;--pale:#edf3ee}
/* Read-only automatic runner view, sharing the workbench's visual language. */
.auto-overview,.auto-scope{padding:20px;margin-bottom:20px}.auto-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;margin-bottom:20px}.auto-navigator{padding:16px;align-self:start;position:sticky;top:12px}.auto-navigator label{display:block;margin:12px 0}.auto-navigator input,.auto-navigator select{width:100%;min-width:0}.auto-run-path,.auto-source{overflow-wrap:anywhere}.auto-overview select{max-width:100%}.auto-task,.auto-record{display:block;width:100%;text-align:left;margin:6px 0}.auto-task small{display:block;color:var(--muted)}.auto-task[aria-pressed=true],.auto-record[aria-pressed=true]{border-color:var(--green);background:var(--pale)}#auto-detail{padding:24px;min-width:0}#auto-detail h2{margin:12px 0}#auto-detail h3{margin-top:18px}.auto-result{border-left:3px solid #b39459;padding:12px 16px;background:#faf8f1;margin:18px 0}.auto-warning{padding:12px;background:#f6f1e5;border-left:3px solid #b39459}.auto-evidence-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;margin-top:16px}.auto-record-list{max-height:580px;overflow:auto}.auto-original{display:block;max-width:100%;max-height:430px;object-fit:contain;margin:auto}.auto-image-state{font-weight:600}.auto-rules,.auto-actions{margin-top:24px;border-top:1px solid var(--line);padding-top:8px}.auto-actions article{padding:14px 0;border-bottom:1px solid var(--line)}#auto-detail p{overflow-wrap:anywhere}#auto-unreviewed>details{margin:14px 0}.auto-source{font-size:12px}
.auto-overview p{overflow-wrap:anywhere}.auto-overview label{display:block}.auto-overview select{min-width:0;width:min(100%,480px)}
@media(max-width:800px){.auto-layout,.auto-evidence-layout{grid-template-columns:1fr}.auto-navigator{position:static}.auto-record-list{max-height:180px}#auto-tasks{max-height:260px;overflow:auto}#auto-detail{padding:16px}.top nav{flex-wrap:wrap}}
*{box-sizing:border-box}[hidden]{display:none!important}
body{margin:0;background:#f7f8f5;color:var(--ink);font:14px/1.65 system-ui,"Microsoft YaHei",sans-serif}
button,input,select{font:inherit;color:inherit}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}
button,.button{display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line);border-radius:5px;padding:7px 12px;background:white;cursor:pointer}
button:hover,.button:hover{background:var(--pale);text-decoration:none}button:disabled{opacity:.5;cursor:default}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #a6c0b1;outline-offset:3px}
h1,h2,h3,h4,p{margin-top:0}h1{margin-bottom:4px;font-size:28px;font-weight:650;line-height:1.4;letter-spacing:-.5px}
h2{margin-bottom:0;font-size:18px;font-weight:650}h3{margin-bottom:8px;font-size:17px;font-weight:650;line-height:1.6}h4{margin-bottom:6px;font-size:14px}p{margin-bottom:10px}
.top{min-height:60px;padding:0 max(24px,calc((100vw - 1424px)/2));display:flex;align-items:center;gap:46px;border-bottom:1px solid var(--line);background:white}
.brand{color:var(--ink);font-size:15px;font-weight:650;white-space:nowrap}.top nav{display:flex;align-self:stretch;align-items:center;gap:28px}
.top nav a{display:flex;align-items:center;height:100%;color:var(--muted);border-bottom:2px solid transparent}.top nav a.active{color:var(--green);border-bottom-color:var(--green)}
.local{margin-left:auto;color:var(--muted);font-size:12px}main{max-width:1424px;margin:auto;padding:26px 24px}.heading{margin-bottom:24px}
.eyebrow{margin-bottom:3px;font-size:11px;color:var(--muted);letter-spacing:.8px}.intro{margin:0;color:var(--muted);font-size:13px}
.workspace-tabs{display:flex;gap:28px;border-bottom:1px solid #cfd9d1;margin-bottom:22px}.workspace-tabs button{background:none;border:0;border-bottom:2px solid transparent;border-radius:0;padding:10px 2px;margin-bottom:-1px;color:var(--muted)}
.workspace-tabs [aria-pressed=true]{color:var(--green);border-bottom-color:var(--green);font-weight:650}
.diagnosis-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.diagnosis-filters{display:flex;flex-wrap:wrap;gap:7px}
.diagnosis-filters button{font-size:12px;padding:5px 11px;border-color:transparent;background:transparent}.diagnosis-filters [aria-pressed=true]{background:#e5eee7;color:var(--green)}
.diagnosis-search{flex:0 1 280px}input[type=search]{width:100%;padding:8px 11px;border:1px solid var(--line);border-radius:5px;background:white}
#diagnosis-coverage{margin:13px 0 16px}#diagnosis-results{display:grid;gap:14px;min-height:100px}
.diagnosis-card{display:grid;grid-template-columns:210px minmax(0,1fr);gap:25px;padding:24px;border:1px solid var(--line);border-radius:7px;background:white}
.diagnosis-photo img{display:block;width:100%;height:178px;object-fit:contain;background:#f0f2ed;border-radius:4px}
.diagnosis-photo small{display:block;margin-top:7px;color:var(--muted);font-size:11px;overflow-wrap:anywhere}.diagnosis-main{min-width:0}
.diagnosis-main h3{margin:6px 0 3px;font-size:18px}.diagnosis-main p{overflow-wrap:anywhere}
.badge{display:inline-block;padding:2px 7px;border-radius:3px;background:var(--pale);color:var(--green);font-size:11px;line-height:1.7}.badge.pending{background:#eef2f5;color:#516978}
.case-location{margin-bottom:12px;color:var(--muted);font-size:12px}.case-summary{max-width:900px;margin-bottom:8px}
.case-action{padding-left:12px;border-left:2px solid #8dac98;color:#315342;margin-top:10px}
.case-option{padding:12px 14px;background:#f3f6f2;border-radius:4px;margin:12px 0}.case-option p:last-child{margin-bottom:0}.option-condition{color:var(--muted);font-size:12px}
.option-heading,.action-heading{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px}.option-heading{margin-bottom:8px}.option-heading h4{margin:0}
.option-actions{list-style:none;margin:0;padding:0}.option-actions li+li{border-top:1px solid var(--line);margin-top:10px;padding-top:10px}.option-actions li>p{margin:4px 0 0;font-size:13px}.action-heading strong{font-size:13px}.action-subject{font-size:11px;padding:1px 6px;background:transparent;color:var(--green)}.option-condition{margin-top:10px}
.case-controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px}.case-controls button,.case-controls a{font-size:12px}.case-controls button{padding:5px 10px}
.diagnosis-main details{margin-top:12px}.review-archive{border:0;padding:10px 0 0}.review-archive>summary{padding:10px 4px;font-size:13px}
.review-archive .diagnosis-card{margin-top:12px;background:#fcfdfb}.check-row{margin:10px 0}.check-row strong{font-size:12px}.check-row p{margin:3px 0}
.panel{min-width:0;padding:20px;border:1px solid var(--line);border-radius:7px;background:white}.section-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:15px}
.muted,#list-count{color:var(--muted);font-size:12px}.subtle{color:var(--muted);font-size:12px}.empty{margin:0;padding:22px 6px;color:var(--muted)}
.layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px}.navigator{position:sticky;top:16px;align-self:start;padding:17px 12px}
.navigator .section-title,.search{padding:0 5px}.navigator h2{font-size:16px}.search{display:block}.filter-label{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 5px;font-size:12px;color:var(--muted)}
select{max-width:180px;background:white;border:1px solid var(--line);border-radius:4px;padding:5px}.list{max-height:630px;overflow:auto;padding-right:3px}
.list button{display:block;width:100%;text-align:left;padding:12px 10px;border:0;background:transparent;font-size:13px}.list button small{display:block;margin-top:4px;font-size:11px;color:var(--muted)}
.list button.active{background:var(--pale);color:var(--green);box-shadow:inset 2px 0 var(--green)}.body-column{display:grid;gap:18px;align-content:start}
.entity{display:grid;grid-template-columns:minmax(170px,32%) minmax(0,1fr);gap:22px;padding:20px 0;border-top:1px solid var(--line)}
.entity figure{margin:0}.entity img{width:100%;height:205px;object-fit:contain;background:#f3f5f0;border-radius:4px}.entity figcaption{margin-top:7px;color:var(--muted);font-size:11px}
.entity-body{min-width:0}.reading{font-size:16px;font-weight:550}.text-block{margin-bottom:14px}.text-block strong{display:block;margin-bottom:3px;font-size:12px;color:var(--muted)}.text-block p{margin:0}
details{border-top:1px solid var(--line);padding:10px 0}summary{cursor:pointer;color:#526d5d;font-size:12px;overflow-wrap:anywhere}details>p:first-of-type{margin-top:10px}
.evidence-links{display:flex;flex-wrap:wrap;gap:8px 14px;padding:9px 0;font-size:12px}.evidence-links a{overflow-wrap:anywhere}
.question{padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.question:last-child{border:0}.question strong{display:block}.question small{color:var(--muted)}
.review-note{padding:10px 12px;background:#f3f6f0;border-left:2px solid #91aa8f;font-size:13px}.review-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:15px 0}.review-actions small{color:var(--muted);font-size:11px}
.member-table{width:100%;border-collapse:collapse;margin:13px 0;font-size:12px}.member-table th,.member-table td{padding:8px 6px;text-align:left;border-bottom:1px solid var(--line)}
.member-table th{color:var(--muted);font-weight:500}.member-table td:not(:first-child){font-size:17px;font-weight:600}.member-list{margin:10px 0;padding-left:12px;border-left:2px solid #bfcec2}.member-list p{margin:4px 0;font-size:13px}
.photo-full{width:100%;max-height:580px;object-fit:contain;background:#f3f5f0;border-radius:4px}.finding{padding:15px 0;border-top:1px solid var(--line)}
.relation{display:flex;align-items:start;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid var(--line)}.relation:last-child{border:0}.relation p{margin:3px 0;font-size:13px}.relation small{color:var(--muted)}.relation button{white-space:nowrap}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.metric{padding:14px 18px;border:1px solid var(--line);background:white;border-radius:5px}
.metric small,.metric span{display:block;color:var(--muted);font-size:12px}.metric strong{display:block;font-size:27px;font-weight:550}
.processing-links{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:20px;font-size:13px}#processing-workspace .panel{margin-bottom:18px}
.clip{display:flex;align-items:center;gap:22px;padding:12px 0;border-top:1px solid var(--line)}.clip strong{min-width:52px}.clip-body{flex:1;min-width:0}.clip p{margin:0;font-size:12px}.clip small{color:var(--muted);font-size:11px}
.clip .bar{height:4px;overflow:hidden;margin:7px 0;border-radius:2px;background:#e6ece5}.clip .bar i{display:block;height:100%;background:#88a78f}
.map-panel{padding-bottom:10px}.map-tools{display:flex;flex-wrap:wrap;gap:6px}.map-tools button{min-width:32px;padding:5px 9px}
.map-switch{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:10px}.map-switch button{padding:5px 11px;font-size:12px}.map-switch [aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}
#map-status{flex:1;min-width:120px;color:var(--muted);font-size:11px}.map-filters{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:12px 0}.map-filters label{display:flex;align-items:center;gap:7px;font-size:12px}.map-filters select{min-width:130px;max-width:300px}#map-count{color:var(--muted);font-size:12px}
.map-stage{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:18px}.map-wrap{position:relative;min-width:0;overflow:hidden;background:#f0f4eb;border:1px solid #dfe6db;border-radius:4px}
#map{display:block;width:100%;height:540px;cursor:grab;touch-action:none}#map:active{cursor:grabbing}#map text{font:11px system-ui;fill:#536462;paint-order:stroke;stroke:#f7f8f4;stroke-width:3px;stroke-linejoin:round}
#map circle,#map path[data-road]{cursor:pointer}#map circle:focus{outline:none;stroke:#a88047;stroke-width:3}#amap-canvas{position:relative;width:100%;height:540px}
#map-empty{position:absolute;bottom:12px;left:12px;right:12px;padding:9px;background:#fffdf4e8;border:1px solid #e7dfc5;color:#7b6c47;font-size:12px;pointer-events:none}
#map-preview{max-height:540px;min-width:0;overflow:auto;border-left:1px solid var(--line);padding-left:18px}#map-preview img{width:100%;height:185px;object-fit:contain;background:#f1f3ef;border-radius:4px}
#map-preview h3{font-size:15px;margin:10px 0 4px}#map-preview h4{font-size:14px;margin:9px 0}#map-preview small{font-size:11px;color:var(--muted)}#map-preview button{font-size:12px}.map-review{border-top:1px solid var(--line);margin:12px 0;padding-top:12px}.map-review p{font-size:13px}
.legend{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:10px;font-size:11px;color:var(--muted)}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{display:inline-block;width:11px;height:11px}
.legend-area{background:#dce8d6;border:1px solid #9db691}.legend-road{height:3px!important;background:#9daeb2}.legend-point{border-radius:50%;background:#316854}
.map-limits{border:0;margin-top:5px;font-size:11px}.map-limits p{margin:6px 0}
.road-importance-legend{display:flex;align-items:center;flex-wrap:wrap;gap:16px;font-size:12px;padding:9px 12px;margin-bottom:12px;background:#f3f5f3;border-radius:4px}
.road-importance-legend span{display:flex;align-items:center;gap:6px}.road-importance-legend i{width:25px;border-radius:3px}.road-high{border-top:7px solid #3D5A80}.road-medium{border-top:4px solid #D4915D}.road-low{border-top:2px solid #98B4A6}.road-importance-legend small{color:var(--muted)}
.map-road-popup{font-size:13px;padding:7px 10px;min-width:170px}.map-road-popup p{margin:7px 0}.map-road-popup small{color:var(--muted);font-size:11px}
footer{padding-top:20px;color:var(--muted);font-size:12px}footer details{border:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:900px){
.top{padding:0 18px;gap:25px}.local{display:none}main{padding:20px 16px}.map-stage{grid-template-columns:1fr}#map-preview{border-left:0;border-top:1px solid var(--line);padding:16px 0 0;max-height:none}
#map,#amap-canvas{height:360px}.layout{grid-template-columns:220px minmax(0,1fr);gap:14px}.panel{padding:15px}.entity{grid-template-columns:1fr;gap:10px}.entity img{height:230px}.section-title{flex-wrap:wrap}
.diagnosis-card{grid-template-columns:170px minmax(0,1fr);gap:18px;padding:20px}.metrics{gap:10px}
}
@media(max-width:640px){
.top{min-height:56px;padding:0 16px;justify-content:space-between;gap:12px}.brand{font-size:13px}.top nav{font-size:12px;gap:16px}main{padding:20px 14px}h1{font-size:24px}.heading{margin-bottom:16px}
.workspace-tabs{gap:22px;margin-bottom:18px}.workspace-tabs button{font-size:13px}.diagnosis-toolbar{gap:12px}.diagnosis-search{flex-basis:100%}.diagnosis-filters{gap:3px}.diagnosis-filters button{padding:5px 7px}
.diagnosis-card{grid-template-columns:1fr;gap:14px;padding:16px}.diagnosis-photo img{height:200px}.diagnosis-photo small{margin-top:5px}.diagnosis-main h3{font-size:17px}.case-controls{gap:10px}
.layout{display:block}.navigator{position:static;margin-bottom:16px}.navigator .section-title{margin-bottom:9px}.list{max-height:170px}.body-column{gap:16px}.map-tools .button{font-size:12px}
.map-filters select{max-width:220px}#map,#amap-canvas{height:310px}.road-importance-legend{gap:9px;font-size:11px}.relation{gap:10px}.relation button{font-size:12px}.clip{gap:10px}.clip .button{font-size:11px}
.review-actions{align-items:start}.metrics{grid-template-columns:repeat(2,1fr)}.metric{padding:12px}.badge{white-space:normal}
}

/* Shared map workspace: no tile dependency for the vector overlay. */
.road-review-map{min-width:0;border:1px solid var(--line);background:#fff}
.rrm-toolbar{display:flex;gap:5px;flex-wrap:wrap;padding:9px;border-bottom:1px solid var(--line)}
.rrm-toolbar button{font-size:12px;padding:5px 9px;border-radius:3px}
.rrm-toolbar [aria-pressed=true]{background:#365c70;color:white;border-color:#365c70}
.rrm-status{padding:6px 10px;font-size:12px;color:#51616a;background:#f4f6f7;border-bottom:1px solid var(--line)}
.rrm-stage{position:relative;height:500px;overflow:hidden;background:#edf1ed}
.rrm-basemap,.rrm-overlay{position:absolute;inset:0;width:100%;height:100%}
.rrm-overlay{z-index:5;display:block;touch-action:none;cursor:grab}
.rrm-overlay.with-basemap{pointer-events:none}
.rrm-overlay [data-object-id]{pointer-events:none}
.rrm-overlay path{stroke-linejoin:round;stroke-linecap:round}
.rrm-overlay .selected{stroke:#213f59;stroke-width:3;outline:none}
.rrm-overlay [data-layer=area].selected{stroke-width:2;fill-opacity:.07}
.rrm-overlay [data-object-id]:focus-visible{outline:none;stroke:#213f59}
.rrm-overlay [data-layer=road]{stroke-opacity:.4}
.rrm-overlay [data-layer=area]{fill-opacity:.025;stroke-opacity:.5}
.rrm-overlay [data-layer=association]{stroke-opacity:.55}
.rrm-overlay [data-layer=association].related,.rrm-overlay [data-layer=association].selected{stroke-opacity:.95}
.rrm-overlay [data-layer=candidate_road]{stroke-opacity:.8}
.rrm-overlay [data-layer=area].selected{stroke-opacity:1}
.rrm-overlay circle.selected{fill:#bd8b3e;stroke:#fff;stroke-width:2}
.rrm-warning{padding:8px 10px;border-top:1px solid #d4c6a9;color:#705b36;background:#f9f5eb;font-size:12px;overflow-wrap:anywhere}
.rrm-debug{padding:8px 10px;border-top:1px solid var(--line);font-size:12px}
.rrm-debug pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:220px;overflow:auto}
#road-review-map{min-width:0}
#map-preview{max-height:590px}
#map-preview>button{display:block;margin:6px 0;max-width:100%;text-align:left}
.auto-layout{grid-template-columns:240px minmax(0,1fr);gap:16px}
.auto-map-pair{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:16px}
.auto-map-pair>div,.auto-map-pair>aside{min-width:0}
#auto-record-detail{max-height:595px;overflow:auto;border-left:1px solid var(--line);padding-left:14px;font-size:12px}
#auto-record-detail h3{font-size:14px;margin-top:0}
#auto-record-detail .auto-original{max-height:230px}
.auto-record-list{max-height:200px;overflow:auto;margin:10px 0}
.auto-record-list .auto-record{display:inline-flex;width:auto;max-width:100%;font-size:12px;margin:4px 5px 4px 0;overflow-wrap:anywhere}
.auto-actions article.selected{border-left:3px solid #365c70;padding-left:12px;background:#f4f7f8}
.panel,.diagnosis-card{border-radius:4px}
@media(max-width:1100px){.auto-map-pair{grid-template-columns:1fr}#auto-record-detail{max-height:420px;border-left:0;border-top:1px solid var(--line);padding:12px 0 0}}
@media(max-width:800px){.auto-layout{grid-template-columns:1fr}.rrm-stage{height:360px}.map-stage{grid-template-columns:1fr}.rrm-toolbar{gap:4px;padding:6px}.rrm-status{font-size:11px}}
