
:root{font-family:Inter,Segoe UI,sans-serif;color:#19302e;background:#f3f5f1;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}button,input,select,textarea{border:1px solid #ccd6d0;border-radius:7px;padding:10px;background:white;color:inherit}button:hover{border-color:#14806c}button.active,.primary{background:#126c59;color:white;border-color:#126c59}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #dfaa43}header{height:76px;background:#fff;border-bottom:1px solid #dbe2dc;display:flex;align-items:center;justify-content:space-between;padding:0 30px}.brand{font-size:23px;font-weight:750;letter-spacing:-1px}.brand span{background:#126c59;color:#fff;border-radius:8px;padding:5px 9px;margin-right:9px}.muted,small{color:#70817b}small{font-size:12px}.shell{display:grid;grid-template-columns:245px 1fr;min-height:calc(100vh - 76px)}aside{background:#eaf0e9;border-right:1px solid #d6e0d6;padding:27px 18px}.eyebrow{text-transform:uppercase;letter-spacing:1.7px;font-size:10px;font-weight:750;color:#6a7f72;margin-bottom:13px}.project{font-weight:700;font-size:16px;margin-bottom:6px}.tree{margin-top:25px}.tree select{width:100%;margin-bottom:12px}.panel-node{padding:12px 4px;font-weight:650}.channel{display:flex;justify-content:space-between;width:100%;margin:5px 0;text-align:left;background:transparent;border-color:transparent}.channel small{color:inherit}.side-note{margin-top:35px;padding:15px;border:1px solid #cfdbcf;border-radius:8px;font-size:12px;line-height:1.6}main{padding:30px 36px;min-width:0}.topline{display:flex;justify-content:space-between;align-items:start;gap:20px}h1{font-size:29px;letter-spacing:-1px;margin:9px 0}h2{font-size:17px;margin:0}p{line-height:1.5}.badge{font-size:11px;border-radius:30px;background:#e0eee3;padding:7px 10px;display:inline-block;color:#267153}.badge.amber{background:#fff0ce;color:#976419}.actions,.tabs,.toolbar{display:flex;gap:8px;flex-wrap:wrap}.tabs{margin:24px 0 22px;border-bottom:1px solid #d6dfd8}.tabs button{background:transparent;border:0;border-radius:0;padding:13px 18px;color:#63766e}.tabs button.active{color:#126c59;border-bottom:3px solid #126c59;font-weight:700}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.stat{padding:17px 20px;background:#fff;border:1px solid #dde4dd;border-radius:9px}.stat strong{display:block;font-size:25px;margin-top:8px}.grid{display:grid;grid-template-columns:minmax(360px,1.65fr) minmax(260px,1fr);gap:20px}.card{background:#fff;border:1px solid #dae2db;border-radius:11px;overflow:hidden;margin-bottom:18px}.card-head{padding:20px 22px;border-bottom:1px solid #e6ebe5;display:flex;justify-content:space-between;align-items:center}.card-body{padding:22px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:600}input,select,textarea{width:100%;font-weight:400}textarea{min-height:85px;resize:vertical}.wide{grid-column:1/-1}.calculated{padding:17px;background:#edf5ee;border:1px solid #d4e5d9;border-radius:8px;line-height:1.6}.calculated strong{font-size:23px}.hint{font-size:11px;color:#74817a;font-weight:400;line-height:1.5}.issue{padding:14px 0;border-bottom:1px solid #e3e8e3;line-height:1.5}.issue:last-child{border:0}.issue button{padding:5px 9px;font-size:11px;margin-top:7px}.photo{display:inline-block;margin:8px 8px 0 0}.photo img{width:90px;height:65px;object-fit:cover;border-radius:5px}.empty{padding:20px;color:#72847a;background:#f5f7f3;border-radius:6px;font-size:12px}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:18px}.mapboard{background:#f9fbf7;border:1px solid #d9e1d8;border-radius:10px;overflow:hidden}.toolbar{padding:12px;background:white;border-bottom:1px solid #e0e7de}.toolbar button{font-size:12px;padding:8px 10px}.mapboard svg{width:100%;height:490px;display:block;touch-action:none}.legend{display:flex;gap:18px;padding:13px;background:#fff;font-size:11px;flex-wrap:wrap}.legend i{display:inline-block;width:18px;height:3px;margin:0 6px 3px 0;background:#1b9474}.legend i.leader{background:#dfaa43}.inspector .card-body{padding:17px}.inspector label{margin-bottom:13px}.notice{font-size:12px;margin:10px 0;color:#89641d;line-height:1.6}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#153f35;color:white;padding:12px 22px;border-radius:8px;z-index:10}.footer-note{font-size:11px;color:#728178;margin-top:12px}a{color:#126c59}dialog{border:0;border-radius:12px;padding:25px;max-width:440px;width:90%}dialog::backdrop{background:#18352c66}dialog label{margin:16px 0}@media(max-width:1050px){main{padding:22px}.shell{grid-template-columns:205px 1fr}.grid,.map-layout{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}}@media(max-width:650px){header{padding:15px;height:auto;gap:12px}.shell{display:block}aside{padding:15px}.tree{margin-top:12px}.side-note{display:none}.channel{display:inline-flex;width:24%}.channel small{display:none}.topline{display:block}.fields{grid-template-columns:1fr}.stats{gap:8px}.brand{font-size:19px}main{padding:16px}.mapboard svg{height:360px}}

.stat-link{text-align:left;transition:background .15s,border-color .15s}.stat-link:hover{background:#edf5ee;border-color:#14806c}.stat-action{display:block;font-size:12px;color:#126c59;margin-top:10px;font-weight:600}.summary-dialog{max-width:680px;max-height:85vh}.summary-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.summary-list{display:grid;gap:10px}.summary-item{display:block;width:100%;padding:17px;text-align:left;background:#f8faf6;overflow-wrap:anywhere}.summary-path{display:block;color:#66796e;font-size:12px;line-height:1.6;margin-top:8px}.destination{outline:3px solid #dfaa43;outline-offset:3px;scroll-margin:24px}

/* Kingsmen Solutions: palette and logo from the branded Reno Sector 2 report. */
:root{font-family:Arial,Segoe UI,sans-serif;color:#20354d;background:#f3f6fa;color-scheme:light}
header{height:98px;background:#fff;border-bottom:5px solid #173b63}
.brand{display:flex;align-items:center;gap:25px;letter-spacing:0}
.brand-logo{width:190px;height:65px;object-fit:contain}
.brand-lockup{font-size:14px;letter-spacing:1.5px;color:#173b63;border-left:1px solid #cdd7e3;padding-left:25px}
.brand-lockup small{display:block;font-size:9px;letter-spacing:1px;color:#55718e;margin-top:7px}
.shell{min-height:calc(100vh - 98px)}aside{background:#e9eff6;border-color:#ced9e5}
.eyebrow,.project,h1,h2{color:#173b63}.muted,small,.hint,.footer-note,.summary-path{color:#5c7086}
button,input,select,textarea{border-color:#c0cfdf;color:#20354d;border-radius:5px}
button:hover{border-color:#1f4e79;background:#edf3fa}button.active,.primary,.channel.active{background:#1f4e79;color:#fff;border-color:#1f4e79}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#35369b;outline-offset:2px}
.side-note{background:#f3f6fa;border-color:#c7d6e7}.side-note strong{color:#173b63}
.tabs{border-color:#c4d3e3}.tabs button{color:#5c7086}.tabs button.active{background:transparent;color:#173b63;border-bottom-color:#35369b}
.stat,.card{border-color:#ccd8e5;border-radius:7px}.stat strong{color:#173b63;font-variant-numeric:tabular-nums}.stat-link{border-top:3px solid #1f4e79}.stat-link:hover{background:#eaf1f9;border-color:#1f4e79}.stat-action{color:#1f4e79}
.card-head{background:#173b63;border-color:#173b63;color:#fff}.card-head h2,.card-head small{color:#fff}
.calculated{background:#edf3fa;border-color:#b9cce1}.calculated strong{color:#173b63}
.empty{background:#f3f6fa;color:#5c7086}.issue{border-color:#d4deea}
.toolbar,.legend{background:#f3f6fa;border-color:#cbd8e7}.mapboard{background:#f8fafc;border-color:#c0cfdf}
.summary-item{background:#f3f6fa}.summary-item:hover{background:#e6eef8}.summary-heading h2{color:#173b63}dialog::backdrop{background:#173b6380}
.toast{background:#173b63;color:#fff}a{color:#244f80}.destination{outline-color:#35369b}
@media(max-width:650px){header{height:auto;flex-wrap:wrap;padding:12px 16px;gap:12px}.brand{gap:12px}.brand-logo{width:140px;height:50px}.brand-lockup{padding-left:12px;font-size:10px;letter-spacing:.5px}.brand-lockup small{font-size:8px;max-width:125px;line-height:1.5}.shell{min-height:0}}

.add-area{width:100%;margin:0 0 20px;text-align:left;color:#1f4e79;background:#f8fafc;font-size:12px;font-weight:600}

.rename-form{margin:20px 0;padding:18px;background:#f3f6fa;border:1px solid #cbd8e7;border-radius:7px}.rename-saved{color:#267153;font-weight:600;margin-bottom:0}

.project-picker select{margin-top:4px;width:100%;font-weight:600}.project-actions{margin:12px 0 16px}.project-actions button{font-size:12px;min-height:40px}.project-setup{max-width:690px;max-height:90vh;overflow:auto}.project-setup input,.project-setup select,.project-setup button{min-height:44px}.setup-actions{justify-content:flex-end;margin-top:22px}.project-setup [hidden]{display:none!important}@media(max-width:650px){.project-setup .fields{grid-template-columns:1fr}.project-setup{padding:20px;width:95%}}

.storage-status{display:inline-flex;flex-direction:column;gap:6px;align-items:flex-start;border:0;background:transparent;padding:5px;text-align:left;min-height:44px}.storage-status small{font-size:11px}.save-error{background:#fce3e0;color:#922d25}.save-notice{margin-top:18px;padding:15px;background:#fce3e0;color:#7b231c;border:1px solid #cf8a82;border-radius:6px}.startup{max-width:600px;margin:12vh auto;padding:25px}.storage-status:hover{background:#edf3fa}[hidden]{display:none!important}

.facility-controls{align-items:center}.facility-controls>span{flex:1;overflow-wrap:anywhere;font-size:12px}.facility-controls label{min-width:95px}.facility-hint{padding:0 12px}.map-viewport{overflow:auto;max-height:620px}.map-surface{min-width:100%}.map-surface svg{height:auto;aspect-ratio:800/480;min-height:0}

.point-footage{position:fixed;margin:0;width:260px;max-width:calc(100vw - 24px);padding:16px;border:1px solid #c0cfdf;box-shadow:0 8px 28px #173b6333}.point-footage::backdrop{background:transparent}.point-footage label{margin:12px 0}.point-footage input{font-size:16px}.point-footage .actions{flex-wrap:nowrap}.point-footage button{font-size:12px}

#map{cursor:crosshair;user-select:none}#map[data-mode="select"],#map[data-mode="navigate"]{cursor:grab}#map.dragging,#map.dragging *{cursor:grabbing!important}

#map.resizing,#map.resizing *{cursor:nwse-resize!important}

.photo-viewer{max-width:1100px;width:94vw;max-height:92vh;overflow:auto}.photo-full{overflow:auto;max-height:65vh;margin-bottom:14px}.photo-full img{display:block;max-width:100%;height:auto;margin:auto}.photo-viewer .summary-heading{position:sticky;top:0;background:white;z-index:1}

.verification-dialog{max-width:1000px;width:94vw;max-height:92vh;overflow:auto}.verification-photos{display:flex;gap:12px;flex-wrap:wrap}.verification-photos label{width:130px}.verification-photos input{width:auto}.verification-photos img{width:120px;height:90px;object-fit:cover}.verification-table{overflow:auto} .verification-table table{width:100%;border-collapse:collapse}.verification-table td,.verification-table th{padding:10px;text-align:left;border-bottom:1px solid #cbd8e7}
