.scope-caption{font-size:12px;color:var(--muted);margin-top:12px}
.panel{width:280px}
.panel header{border-top:0;padding-top:24px}
.project-mark{display:block;width:44px;height:44px;margin-bottom:15px;background:#3e563e;padding:6px;border:1px solid #71816e}
.project-mark img{display:block;width:100%;height:100%;object-fit:contain}
.panel.collapsed .project-mark{width:29px;height:29px;padding:3px;float:left;margin:0 11px 0 0}
.panel.collapsed .eyebrow{padding-top:1px}
.panel.collapsed h1{margin-top:7px;font-size:24px}
.panel.collapsed .scope-caption{margin-top:9px}
.utility-link{display:flex;align-items:center;gap:12px;min-height:48px;color:var(--ink);text-decoration:none}
.utility-link span{margin-left:auto;color:var(--muted)}
.utility-link:hover{text-decoration:underline}
.brand{padding:13px 20px;display:flex;justify-content:flex-end;border-top:1px solid var(--rule)}
.brand a{color:var(--muted);font-size:11px;text-decoration:none}
.brand a:hover{text-decoration:underline}
.quantity-actions{display:flex;justify-content:space-between;padding:16px 0;color:var(--ink)}
.quantity-list dt{font-size:12px}.quantity-list dd{font-size:14px}
.quantity-list .quantity-detail{font-size:11px!important}
.quantity-list .pending{color:var(--muted);font-size:11px}
.quantity-intro,.quantity-units,.quantity-notes{font-size:11px}
.drainage-key{display:flex;flex-wrap:wrap;gap:9px 12px;padding:5px 0 8px;font-size:10px}
.drainage-key span{display:flex;align-items:center;gap:5px}
.drainage-key i{display:inline-block;width:16px;border-top:2px solid #4bb8ff}
.drainage-key .existing-drain-key{border-color:#aab4b8;border-top-style:dashed}
.location-bar{position:absolute;z-index:550;left:calc(50% + 110px);transform:translateX(-50%);bottom:36px;display:flex;gap:2px;padding:4px;background:rgba(247,245,239,.95);border:1px solid var(--rule);border-radius:7px;box-shadow:0 3px 20px #0002}
.location-bar button{background:transparent;border:0;border-radius:4px;min-height:38px;padding:0 14px;color:var(--ink);font-size:12px}
.location-bar button:hover,.location-bar button.active{background:#3e563e;color:var(--paper)}
.tree-center{background:none;border:0;pointer-events:none}.scope-line{pointer-events:none}
.leaflet-popup-content b{font-weight:600}
.status{font-size:11px;color:var(--muted);display:block;margin-top:5px}
.drawing-labels{position:absolute;pointer-events:none}
.civil-key .demo-toggle{min-height:32px}.civil-key{margin-left:36px}
.civil-options .check{font-size:11px;min-height:32px}
.label-hint{bottom:88px}.leaflet-bottom .leaflet-control{margin-bottom:10px}
#sources p{font-size:11px}.leaflet-marker-icon.light-head{border:0;background:none}
.leaflet-container:focus{outline:none}
.tree-symbol{background:none;border:0;filter:drop-shadow(0 1px 2px #153e28)}
.tree-symbol svg{display:block;width:22px;height:22px}
@media(max-width:680px){
 .panel{width:228px;max-height:calc(100dvh - 115px)}
 .panel header{padding-top:16px}
 .panel.collapsed{width:230px}
 .panel.collapsed .scope-caption{margin-top:7px}
 .location-bar{left:50%;bottom:45px;max-width:calc(100vw - 80px)}
 .location-bar button{padding:0 10px;font-size:11px;min-height:40px}
 .brand{padding:12px 16px}.civil-key{margin-left:0}.north{right:16px}
 .leaflet-control-zoom{margin-bottom:105px!important}
 .scope-caption{font-size:11px}.project-mark{margin-bottom:12px}
}
