/* Letsbuild palette: charcoal surfaces, readable neutral text and warm yellow actions. */
:root{color-scheme:dark;--forest:#f2bf24;--green:#f2bf24;--lime:#f2bf24;--text:#ebedf0;--muted:#b2b7c0;--border:#383c45;--line:#383c45;--bg:#191b20;--sidebar:#16181d;--red:#ef9588;--accent:#f2bf24;--surface:#22252b}
body{background:var(--bg);color:var(--text)}
.sidebar,.visual-panel{background:#16181d;color:#e8eaee}.visual-panel:before{background:radial-gradient(ellipse at 20% 10%,#f2bf2410,transparent 65%)}
.brand,.brand-mark,.brand-dot,.brand span,.brand>span:last-child>span{color:var(--accent)}
.workspace-label,.section-label,.mini-eyebrow,.eyebrow,.sidebar-note>span,.visual-copy .eyebrow{color:#d4bd72}
h1,h2,h3,.visual-copy h1,.form-content h2,.analysis-title h2,.summary-strip strong,.result-grid strong,.layer-name,.table-title h2,.panel-heading h2{color:#ebedf0}
p,.heading p,.page-heading p,.analysis-title p,.table-title p,.modal-description,.modal-note,.gcp-note,.gcp-rmse p,.help-steps p,.table-note,.form-content>p:not(.account-switch):not(.recovery-note),.visual-copy p{color:#b8bdc6}
.topbar,.workspace,.summary-strip,.layers-panel,.analysis-panel,.import-card,.control-panel,.metrics article,.drawing-panel,.results-panel,dialog,.form-panel{background:#22252b;border-color:var(--border);color:#ebedf0}
.topbar{background:#1c1e24}.topbar button,.breadcrumb,.breadcrumb span,.breadcrumb svg,.icon-button{color:#c2c7cf}
.workspace-switch,.workspace-name>b,.profile>b,.storage-card,.sidebar-note,.workspace-avatar,.avatar,.avatar.small{background:#272b33;border-color:#3b4049;color:#e3d4a3}
.workspace-switch small,.down,.profile small,.sidebar-note p,.sidebar-note small,.workspace-name small,.storage-card p,.local-status,.visual-footer,.form-footer,.top-note,.secure-label,.session-note,.recovery-note,.field small,.account-switch{color:#b0b7c2}
.storage-card strong,.profile strong,.sidebar-note strong{color:#e5e7eb}.storage-card>svg{color:var(--accent)}
.sidebar-divider,.profile,.layer-footer,.coordinate-check,.session-note,.form-footer,.auth-tabs,.result-grid,.layer-details,.layer-opacity,.layer-item,.gcp-item,.export-measurement{border-color:var(--border)}.sidebar-divider{background:var(--border)}
.navigation button,.navigation .service-link,nav a,.project-item,.help-link{color:#bbc1cc}
.navigation button:hover,.navigation button.active,.navigation .service-link:hover,nav .active,nav a:hover{background:#353026;color:#f4c950}.navigation button.active{box-shadow:inset 3px 0 var(--accent)}
.nav-dot,nav i,.eyebrow>span,.eyebrow i,.preview-label i{background:var(--accent)}.nav-count{background:#353026;color:#efd18b}.project-square{border-color:#e9c24d}
.button.primary,.primary,.drawing-actions .primary,.submit{background:var(--accent);border-color:var(--accent);color:#191b20;box-shadow:0 2px 8px #0002;font-weight:650}
.button.primary:hover,.primary:hover,.drawing-actions .primary:hover,.submit:hover{background:#ffd353;border-color:#ffd353;color:#15171b}.submit svg{color:#191b20}
.button.secondary,.heading .secondary,.drawing-actions button,.logout-button,.draw-button,.upload,.export-option,.add-data{background:#2a2d34;border-color:#4a4e58;color:#e5e8ed}
.button.secondary:hover,.drawing-actions button:hover,.logout-button:hover,.draw-button:hover,.upload:hover,.export-option:hover,.add-data:hover{background:#363941;border-color:#e2b642;color:#f6d06a}
input,select,.form-field select,.form-field input,.settings-grid input,.settings-grid select,#project-name,.input-wrap{background:#1b1e24;border-color:#4b515c;color:#edf0f4}
input::placeholder,.input-wrap input::placeholder{color:#949ca9}.input-wrap input,.small-search input{background:transparent;color:#edf0f4}
.input-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #f2bf2422}.input-wrap>svg,.input-wrap button{color:#aeb5c1}
input[type=checkbox],input[type=range],.layer-top input,.layer-opacity input{accent-color:var(--accent)}
.field label,.form-field label,.settings-grid>label,.unit-label,.checks,.coordinate-check label{color:#c4cad3}
.coordinate-check span,.control-bottom>span,.control-heading>span,.drawing-top>div>span,.metrics span,.metrics small,.results-heading p,.point-sub,.summary-strip small,.summary-strip em,.layer-info,.layer-details,.layer-details strong,.layer-opacity,.layer-footer,.layer-footer small,.workspace-meta,.height-profile>div:first-child,.profile-axis,.measurement-info,.page-footer,footer,#check-state{color:#b0b7c2}
.summary-strip>div,.layers-panel,.analysis-panel,.workspace-top,.analysis-tabs,.layer-details,.result-grid div+div,.results-panel td,.drawing,.drawing-top{border-color:var(--border)}
.summary-icon,.card-icon,.welcome-icon,.modal-icon{background:#3a3324;border-color:#645333;color:#f4c950}
.layer-item,.small-search,.map-measurement,.gcp-rmse,.help-note,.volume-result,.measurement-selected .pill,.pill,.layer-badge{background:#2b2e35;border-color:#434850;color:#d1d6de}
.layer-item.selected{background:#332e23;border-color:#c29c35}.layer-badge,.pill{color:#efd184;background:#3a3222}
.map-measurement span,.map-measurement small,.measurement-selected input,.gcp-item>button:nth-child(2),.gcp-item small,.gcp-item>.gcp-error,.export-measurement,.gcp-rmse>span{color:#c3cad5}
.volume-result{background:linear-gradient(125deg,#373021,#272a30)}.volume-result strong,.gcp-rmse strong{color:#f4c950}.volume-result>span,.volume-result>div>span,.volume-result small,.gcp-rmse strong small{color:#c4c5bd}
.histogram>span{background:#d0a535}.histogram>span:nth-child(3n){background:#f2bf24}
.view-tabs button,.analysis-tabs button,.auth-tabs button{color:#b0b7c2}.view-tabs button.selected,.analysis-tabs button.selected,.auth-tabs button.selected{color:#f5c748;border-color:var(--accent)}
.account-switch button,.help-steps b,.help-steps h3,dialog a{color:#f4c950}
.demo-badge,.badge{background:#3a3222;border-color:#625335;color:#edcf7a}
.map-tag,.map-tools,.map-zoom,.map-bottom,.draw-instruction,.terrain-legend,.preview-label,.preview-footer,.preview-result{background:#22252bef;border-color:#555b65;color:#e1e5eb}
.map-tools button,.map-zoom button,.map-tag>span:last-child,.map-bottom,#map-scale,.draw-instruction button,.preview-label>span,.preview-result>span,.preview-result strong,.preview-result svg{color:#d8dde6}
.map-tools button.selected,.map-tools button:hover,.draw-instruction button{background:#3a3324;color:#f3c84d}.map-tools>span,.map-zoom button+button{border-color:#4d515b}
.map-preview{border-color:#505761;background-image:linear-gradient(115deg,#191b2044,#191b2033),url('/demo-aerial.svg')}.map-preview:after{background:linear-gradient(0deg,#191b2077,transparent 45%)}
.measurement{stroke:#f2bf24;fill:#f2bf2424}.measurement circle{fill:#f2bf24;stroke:#ffde7b}.preview-cross{background:#292c32db;border-color:#f2bf24;color:#ffda66}
.measurement-tooltip{background:#24272ef5!important;color:#e1e5eb!important;border-color:#555b65!important}.measurement-tooltip strong{color:#f4c950}.measurement-tooltip:before{border-top-color:#24272e!important}
.dropzone{background:#292c33;border-color:#a28843}.dropzone:hover,.dropzone.dragover{background:#363021;border-color:var(--accent)}.dropzone svg,.dropzone strong{color:#f4c950}.dropzone span,.import-types,.export-option small{color:#b6bdc8}
.import-progress{background:#373021;color:#e7ce91}.help-note{color:#bdc4cf}.help-steps p,.gcp-item .point-number{color:#bdc4cf}.gcp-item .point-number{border-color:#707780}
#toast{background:#353027;color:#f5e4b2;border-color:#8e7537}#toast.error,.form-error{background:#3f2928;color:#ffc2b7;border-color:#9c5f56}
.drawing{background-color:#1c1f25;background-image:radial-gradient(#414650 .7px,transparent .7px)}
#cad-view text{stroke:#1c1f25;fill:#e5e8ed}.north,.drawing-coordinates{color:#c9cfd9}.drawing-coordinates{background:#252931e8}.zoom-controls button{background:#282c34;color:#ebedf0;border-color:#4a505b}
.legend{color:#c0c6d1}.legend small{color:#bbc2cd}.green{color:#91d09f}.red{color:#ef9588}.status-pill{background:#2c3038;color:#d9dfe7}
th{background:#292d35;color:#bbc2cd;border-color:#414650}td,td:first-child{color:#d2d8e2;border-color:#383d47}td button{background:#373021;color:#f4d27d}tbody tr:hover,tbody tr.selected{background:#353127}
#point-detail{background:#332f25;color:#e6dfcc}#warnings,#import-status{background:#3a3122;border-color:#8b733d;color:#f1d69b}
dialog::backdrop{background:#090a0cc0}.close,dialog .close{color:#d4dae4}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,.upload:focus-within{outline:2px solid #ffd353;outline-offset:4px}
button,input,select{min-height:32px}.submit{min-height:48px}.field label,.settings-grid>label{font-size:12px}.table-note,.coordinate-check{font-size:12px}.form-content>p:not(.account-switch):not(.recovery-note){font-size:13px}.recovery-note,.field small{font-size:11px}
@media(max-width:1050px) and (min-width:621px){.navigation .service-link{font-size:0;justify-content:center;padding:13px}.navigation .service-link svg{width:20px;height:20px}}
@media(max-width:620px){.navigation .service-link{font-size:0;padding:8px;width:auto}.navigation .service-link svg{width:18px;height:18px}}
@media print{body,main,.drawing-panel,.results-panel,.metrics article,.drawing,th,td{background:white!important;color:#222!important;border-color:#ddd!important}.drawing{background-image:none}#cad-view text{stroke:white;fill:#333}.drawing-top h2,.metrics strong,.metrics span,.metrics small,.legend,.legend small,.table-note,.drawing-top>div>span{color:#333}.status-pill{background:#eee;color:#333}}
.navigation button,.navigation .service-link,nav a{font-size:13px}.panel-heading h2{font-size:14px}.layer-name{font-size:11px}.layer-info,.layer-details,.layer-opacity,.section-label,.layer-footer{font-size:10px}.analysis-title p,.measurement-info,.gcp-note,.gcp-rmse p,.form-field label{font-size:11px}.summary-strip small{font-size:11px}.map-measurement span{font-size:11px}.map-measurement small{font-size:10px}.button,.analysis-tabs button,.view-tabs button{font-size:12px}.button{min-height:38px}.drawing-actions button,.drawing-actions label{font-size:11px}.help-steps p{font-size:12px}.form-content .field label{font-size:12px}.empty-state{color:#bec5d0}.layer-top input[type=checkbox]{min-height:16px}.layer-opacity input[type=range]{min-height:16px}@media(max-width:1050px) and (min-width:621px){.navigation button,.navigation .service-link{font-size:0}}@media(max-width:620px){.navigation button,.navigation .service-link{font-size:0}}

.brand .brand-logo{display:block;width:176px;height:38px;object-fit:contain;object-position:left center;flex-shrink:0}@media(max-width:1250px){.app-shell .brand .brand-logo{width:148px}}@media(max-width:1050px) and (min-width:621px){.app-shell .brand{padding:0}.app-shell .brand .brand-logo{width:58px;height:20px}}@media(max-width:620px){.brand .brand-logo,.app-shell .brand .brand-logo{width:125px;height:30px}}
