/* Shared workspace additions: original overview/review tokens are authoritative. */
[hidden]{display:none!important}.sidebar{height:100vh;min-height:0;overflow-y:auto;align-self:start}.sidebar .nav-item{width:100%}.record-number{color:var(--muted);font-size:13px;margin:8px 0;font-variant-numeric:tabular-nums}.route-workspace{display:grid;grid-template-columns:minmax(230px,32%) minmax(0,1fr);gap:20px;margin-top:20px}.route-session-list{max-height:640px;overflow:auto;display:flex;flex-direction:column;gap:8px}.route-session{display:flex;flex-direction:column;gap:7px;text-align:left;width:100%;background:var(--panel);padding:16px;border:1px solid var(--line);border-radius:8px;color:var(--text)}.route-session strong{font-size:14px}.route-session span,.route-session small{color:var(--muted);font-size:13px}.route-session.is-selected{background:var(--green-soft);border-color:var(--green)}.route-map-panel{min-width:0;padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:8px}.route-map-panel h3{margin:0 0 6px;font-size:17px}.route-map-panel .panel-head{padding:0;margin-bottom:12px}.route-coordinate-map{width:100%;height:auto;min-height:240px;background:var(--bg);border-radius:6px}.route-coordinate-map text{font:12px "Microsoft YaHei",sans-serif;fill:var(--muted)}.route-coordinate-map circle{cursor:pointer}.route-coordinate-map circle:focus{outline:2px solid var(--amber)}.route-empty{min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;color:var(--muted);background:var(--bg);padding:24px;border-radius:6px}.route-point-detail{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;margin:16px 0;color:var(--muted)}.point-list{margin-top:12px;font-size:13px}.point-row{display:block;width:100%;margin-top:6px;text-align:left;font-size:12px;background:var(--bg);padding:10px}.point-row.is-selected{background:var(--green-soft)}.route-catalog{margin-top:22px;color:var(--muted)}.route-catalog summary{cursor:pointer}.route-catalog p{margin:8px 0;line-height:1.7}.route-catalog .survey-group{margin-top:12px}.hint{font-size:13px;color:var(--muted);line-height:1.6}button,a,input,select,summary{transition:background-color .15s ease,color .15s ease}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--green);outline-offset:3px}
@media(max-width:1000px){.route-workspace{grid-template-columns:1fr}.route-session-list{max-height:220px}.route-coordinate-map{min-height:180px}}
@media(max-width:860px){body{display:grid;grid-template-columns:140px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:16px 8px;border-right:1px solid var(--line);border-bottom:0}.brand{gap:6px;flex-wrap:wrap;margin-bottom:18px}.brand-mark{width:24px;height:24px}.brand strong{font-size:13px}.brand small{font-size:11px}.sidebar nav{display:flex;flex-direction:column;gap:6px}.sidebar .nav-item,.sidebar .docs-link{padding:10px 8px;font-size:13px;min-height:42px}.sidebar .docs-link{margin-top:8px}main{padding:16px;min-width:0}.topbar h1{font-size:23px}.route-session strong{font-size:13px}.route-map-panel{padding:12px}.stats-grid{grid-template-columns:1fr}.record-meta{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.route-session-list .route-session{flex-shrink:0;min-height:110px;height:auto;line-height:1.5;white-space:normal}.route-map-panel .panel-head button{flex-shrink:0}.point-list .point-row{height:auto;white-space:normal;line-height:1.5}.route-catalog .survey-group{padding:16px;border-radius:8px;background:var(--panel)}

.sidebar { z-index:40; }
#detail[open] { position:fixed; inset:16px 20px 16px 280px; margin:0; width:auto; max-width:none; max-height:none; overflow:auto; background:var(--panel); border:1px solid var(--line); border-radius:8px; box-shadow:0 8px 30px #17211d18; z-index:30; padding:24px; }
@media(max-width:860px){#detail[open]{inset:10px 10px 10px 150px;padding:14px}#detail .fields{grid-template-columns:1fr}#detail h2{overflow-wrap:anywhere;font-size:20px}}
