
:root{--bg:#07111b;--panel:#102436;--panel2:#0b1b28;--line:#284153;--text:#f4f8fb;--muted:#9db0bf;--green:#53db89;--green2:#20ad65;--orange:#ffb75d;--blue:#6bbcff;--red:#ff716b}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 50% -20%,#18354e,#07111b 48%);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--text);min-height:100vh}.hidden{display:none!important}.auth-gate{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-card{width:min(420px,100%);background:#0c1c29;border:1px solid #294358;border-radius:24px;padding:26px;box-shadow:0 30px 100px #0008}.brand{font-weight:950;letter-spacing:.11em}.brand span{font-size:.58rem;color:var(--green);border:1px solid #347a57;border-radius:99px;padding:3px 6px}.auth-card h1{font-size:2rem;margin-bottom:6px}.auth-card p,.auth-card small{color:var(--muted)}input,textarea{width:100%;padding:14px;background:#071825;border:1px solid var(--line);border-radius:12px;color:var(--text);font-size:1rem;margin:6px 0}.auth-card button,.cta{width:100%;padding:15px;border:0;border-radius:13px;background:linear-gradient(135deg,var(--green),var(--green2));font-weight:900;color:#062015;cursor:pointer;margin-top:8px}.secondary{background:#112a39!important;color:var(--text)!important;border:1px solid var(--line)!important}.link{background:transparent!important;color:var(--muted)!important}.app{max-width:900px;margin:auto;min-height:100vh;background:#07111be8}header{position:sticky;top:0;z-index:20;background:#07111bf2;backdrop-filter:blur(12px);border-bottom:1px solid #ffffff0f;padding:16px 18px;display:flex;justify-content:space-between;align-items:center}header small{color:var(--muted)}.navbtn,.back{border:0;background:transparent;color:var(--muted);cursor:pointer}.view{display:none;padding:22px}.view.active{display:block}.hero{padding:25px 0}.eyebrow{color:var(--green);font-size:.68rem;font-weight:950;letter-spacing:.14em}h1{font-size:2rem;line-height:1.08;margin:6px 0 10px}p{color:var(--muted)}.tiles{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tiles button{display:flex;gap:13px;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:18px;color:var(--text);cursor:pointer}.tiles b{font-size:1.6rem}.tiles span{display:flex;flex-direction:column}.tiles small{color:var(--muted);margin-top:4px}.choice{display:grid;grid-template-columns:1fr auto 1.6fr;gap:12px;align-items:center}.choice>button,.choice div button{padding:14px;border-radius:12px;border:1px solid #347a57;background:#143727;color:var(--text);font-weight:850;cursor:pointer}.choice span{color:var(--muted)}.map{height:360px;border-radius:18px;border:1px solid var(--line);margin:16px 0;overflow:hidden}.map.big{height:480px}.location-summary{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:14px}.location-summary small,.location-summary em{display:block;color:var(--muted);font-size:.72rem;margin-top:3px}.depth-box{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:20px}.depth-box strong{font-size:4rem}.depth-box input{padding:0;accent-color:var(--green)}.depth-box.small strong{font-size:2rem}.presets{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 18px}.presets button{padding:9px 12px;border-radius:10px;background:#102738;color:var(--text);border:1px solid var(--line);cursor:pointer}.loader{width:48px;height:48px;border:5px solid #21394a;border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite;margin:25vh auto 20px}@keyframes spin{to{transform:rotate(360deg)}}#loading{text-align:center}.resulttop{display:flex;justify-content:space-between;gap:15px}.confidence{min-width:110px;text-align:center;background:#123426;border:1px solid #317451;border-radius:15px;padding:12px}.confidence small,.condition small,.twocol small,.transition small,.rockindex small{display:block;color:var(--muted);font-size:.62rem;letter-spacing:.08em}.confidence strong{display:block;color:var(--green);font-size:1.5rem}.confidence em{color:var(--muted);font-size:.67rem}.condition,.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:17px;margin-top:13px}.condition strong{display:block;font-size:1.5rem}.condition em{color:var(--orange);font-style:normal;font-size:.72rem}.soilgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.soilgrid div,.metrics div{background:var(--panel2);border-radius:12px;padding:12px;text-align:center}.soilgrid span,.metrics span{display:block;color:var(--muted);font-size:.65rem}.soilgrid strong,.metrics strong{font-size:1.25rem}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:10px}.twocol strong{display:block;font-size:1.25rem}.twocol em{color:var(--muted);font-size:.65rem}.transition,.rockindex{margin-top:12px;background:var(--panel2);border-radius:13px;padding:12px}.transition strong{display:block}.rockindex strong{font-size:2.8rem}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}.notice{color:#718696;font-size:.68rem;padding:12px 2px}.actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.form label{display:block;color:var(--muted);font-size:.76rem;margin-bottom:12px}.form .check{display:flex;align-items:center;gap:8px}.form .check input{width:auto}.form input[type=range]{padding:0;accent-color:var(--green)}.fullinput{margin:10px 0}.projectbar{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:.72rem}.projectbar button{background:#102738;border:1px solid var(--line);color:var(--text);border-radius:9px;padding:8px 10px}.savedcard{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px;margin:9px 0}.savedcard small{display:block;color:var(--muted);margin-top:4px}.tablewrap{overflow:auto}.tablewrap table{width:100%;border-collapse:collapse;font-size:.78rem}.tablewrap th,.tablewrap td{border-bottom:1px solid var(--line);padding:10px;text-align:left;white-space:nowrap}.tablewrap th{color:var(--muted)}#toast{position:fixed;left:50%;bottom:20px;transform:translate(-50%,20px);background:#0c2a1c;border:1px solid #347956;border-radius:12px;padding:10px 14px;opacity:0;transition:.2s;z-index:50}#toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:650px){.tiles{grid-template-columns:1fr}.choice{grid-template-columns:1fr}.choice>span{text-align:center}.soilgrid,.metrics{grid-template-columns:1fr 1fr}.map.big{height:380px}.resulttop{align-items:end}h1{font-size:1.65rem}}


/* v1.3 Contractor Dashboard */
#map { position:relative; }
.contractor-summary{
  display:grid;
  grid-template-columns:1.7fr .7fr .7fr;
  gap:10px;
  margin:12px 0;
}
.summary-main,.summary-stat,.profile-card,.compact-card,.detail-drawer{
  background:#102536;
  border:1px solid #29465a;
  border-radius:14px;
}
.summary-main{padding:14px;}
.working-material{font-size:1.55rem;font-weight:950;line-height:1.05;margin-top:3px;}
.summary-sub{margin-top:8px;color:#9db0bf;font-size:.75rem;display:flex;gap:7px;align-items:center;flex-wrap:wrap;}
.source-badge{display:inline-block;background:#0b1b28;border:1px solid #345064;border-radius:999px;padding:3px 7px;color:#9db0bf;font-size:.62rem;text-transform:uppercase;}
.summary-stat{padding:12px;text-align:center;display:flex;flex-direction:column;justify-content:center;}
.summary-stat small{color:#9db0bf;font-size:.62rem;font-weight:900;}
.summary-stat strong{font-size:1.05rem;margin-top:4px;}
.summary-stat span{color:#718696;font-size:.67rem;margin-top:3px;}

.profile-card{padding:14px;margin:10px 0;}
.card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;}
.card-heading h3{margin:3px 0 0;}
.card-heading>small{color:#718696;}
.profile-stack{display:flex;flex-direction:column;gap:7px;margin-top:11px;}
.profile-row{
  display:grid;
  grid-template-columns:84px 1fr 76px;
  gap:10px;
  align-items:center;
  background:#0b1b28;
  padding:10px;
  border-radius:10px;
  border-left:4px solid #5aa6d6;
}
.profile-row.zone-transition{border-left-color:#d4a72c;}
.profile-row.zone-bedrock{border-left-color:#53db89;}
.profile-depth{color:#53db89;font-weight:950;}
.profile-copy strong{display:block;}
.profile-copy small{display:block;color:#9db0bf;margin-top:3px;}
.profile-confidence{text-align:right;}
.profile-confidence strong{display:block;}
.profile-confidence small{display:block;color:#718696;font-size:.6rem;}

.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0;}
.compact-card{padding:13px;}
.candidate-line{display:grid;grid-template-columns:95px 1fr 38px;gap:7px;align-items:center;margin-top:9px;font-size:.75rem;}
.candidate-bar{height:7px;border-radius:99px;background:#071825;overflow:hidden;}
.candidate-bar i{display:block;height:100%;background:#53db89;border-radius:99px;}
.candidate-line strong{text-align:right;color:#53db89;}
.property-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px;}
.property-grid div{background:#0b1b28;border-radius:9px;padding:8px;}
.property-grid small{display:block;color:#9db0bf;font-size:.62rem;}
.property-grid strong{display:block;margin-top:3px;}
.estimate-note{display:block;color:#718696;margin-top:8px;line-height:1.35;}

.detail-drawer{padding:0;margin:10px 0;overflow:hidden;}
.detail-drawer summary{cursor:pointer;padding:12px 14px;font-weight:900;color:#dbe8ef;}
.detail-drawer[open] summary{border-bottom:1px solid #29465a;}
#dashboardEvidence{padding:12px 14px;}
.tech-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;}
.tech-grid div{background:#0b1b28;border-radius:9px;padding:8px;}
.tech-grid strong,.tech-grid span{display:block;}
.tech-grid strong{font-size:.62rem;color:#53db89;text-transform:uppercase;}
.tech-grid span{font-size:.74rem;margin-top:3px;}
.technical-lines{margin-top:9px;color:#9db0bf;font-size:.72rem;}
.legacy-detail{display:none !important;}
.muted{color:#9db0bf;}

@media (max-width:700px){
  .contractor-summary{grid-template-columns:1fr 1fr;}
  .summary-main{grid-column:1/-1;}
  .dashboard-grid{grid-template-columns:1fr;}
  .tech-grid{grid-template-columns:1fr 1fr;}
  .profile-row{grid-template-columns:72px 1fr 62px;}
}


/* v1.4 Jobsite Intelligence Report */
.report-hero{
  margin:12px 0;
  background:#0b1b28;
  border:1px solid #29465a;
  border-radius:14px;
  padding:14px;
}
.report-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.report-title-row h2{margin:3px 0 4px;font-size:1.15rem;line-height:1.15;}
.report-meta{display:flex;gap:8px;flex-wrap:wrap;color:#9db0bf;font-size:.67rem;}
.report-meta span{background:#071825;border:1px solid #29465a;border-radius:999px;padding:4px 7px;}
.report-print-btn,.formation-link-btn{
  border:1px solid #3f7b5a;background:#123b2a;color:#dff8e8;border-radius:9px;
  padding:8px 10px;font-weight:900;cursor:pointer;white-space:nowrap;
}
.aerial-report-card{position:relative;margin-top:12px;border-radius:11px;overflow:hidden;border:1px solid #345064;background:#071825;}
.aerial-report-card img{display:block;width:100%;height:230px;object-fit:cover;}
.aerial-pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-100%);width:28px;height:28px;border-radius:50% 50% 50% 0;background:#53db89;transform-origin:center;rotate:-45deg;box-shadow:0 2px 7px rgba(0,0,0,.5);border:2px solid white;}
.aerial-pin span{display:block;width:8px;height:8px;border-radius:50%;background:white;margin:8px;}
.aerial-caption{position:absolute;left:8px;right:8px;bottom:8px;background:rgba(5,18,28,.86);backdrop-filter:blur(3px);border-radius:8px;padding:7px 9px;display:flex;justify-content:space-between;gap:8px;font-size:.67rem;}
.aerial-caption span{color:#b5c5cf;}
.formation-report-card{background:#102536;border:1px solid #29465a;border-radius:14px;padding:14px;margin:10px 0;}
.formation-report-card h3{margin:3px 0 0;}
.formation-report-card p{color:#c4d2da;font-size:.76rem;line-height:1.5;margin:10px 0;}
.formation-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:9px 0;}
.formation-facts div{background:#0b1b28;border-radius:9px;padding:9px;}
.formation-facts small{display:block;color:#53db89;font-size:.6rem;font-weight:900;}
.formation-facts strong{display:block;margin-top:4px;font-size:.75rem;}
.formation-link-btn{margin-top:2px;background:#0b1b28;}
.report-disclaimer{color:#718696;font-size:.62rem;line-height:1.45;padding:8px 3px 12px;}

@media(max-width:700px){
  .report-title-row{display:block;}
  .report-print-btn{width:100%;margin-top:10px;}
  .aerial-report-card img{height:190px;}
  .aerial-caption{display:block;}
  .aerial-caption span{display:block;margin-top:2px;}
  .formation-facts{grid-template-columns:1fr;}
}

/* Print / PDF report */
@media print{
  @page{size:letter portrait;margin:.38in;}
  body{background:white!important;color:#111!important;}
  header,nav,#home,#location,#depth,.actions,.report-print-btn,
  #newCheck,#reportActual,#toast,.detail-drawer,.legacy-detail{display:none!important;}
  #app,.wrap,#results{max-width:none!important;width:100%!important;margin:0!important;padding:0!important;}
  #results{display:block!important;}
  #contractorDashboard{display:block!important;}
  .report-hero,.contractor-summary,.profile-card,.compact-card,.formation-report-card{
    background:white!important;color:#111!important;border:1px solid #aaa!important;
    box-shadow:none!important;break-inside:avoid;
  }
  .report-hero{padding:10px!important;}
  .aerial-report-card img{height:220px!important;}
  .aerial-caption{background:rgba(255,255,255,.88)!important;color:#111!important;}
  .aerial-caption span,.summary-sub,.summary-stat span,.profile-copy small,
  .profile-confidence small,.estimate-note,.formation-report-card p,.report-meta,
  .report-disclaimer{color:#444!important;}
  .profile-row,.property-grid div,.formation-facts div,.candidate-bar{
    background:#f4f6f7!important;color:#111!important;
  }
  .eyebrow,.profile-depth,.candidate-line strong,.formation-facts small{color:#126b3c!important;}
  .source-badge{background:#f3f3f3!important;color:#333!important;border-color:#bbb!important;}
  .dashboard-grid{grid-template-columns:1fr 1fr!important;}
  .report-disclaimer{display:block!important;border-top:1px solid #bbb;margin-top:8px;}
}


/* v1.4.1 contractor cleanup */
.contractor-hidden{display:none!important;}

/* v1.5 Ground Layers + Subsurface Intelligence */
.ground-layers-shell{margin:10px 0}.gc-tabs{display:flex;gap:6px;margin-bottom:8px}.gc-tab{flex:1;background:#0b1b28;border:1px solid #29465a;color:#a9bbc7;border-radius:9px;padding:9px 8px;font-weight:900;cursor:pointer}.gc-tab.active{background:#123b2a;border-color:#3f7b5a;color:#e6fff0}.layers-panel{display:grid;gap:9px}.subsurface-intel,.formation-library{background:#102536;border:1px solid #29465a;border-radius:14px;padding:13px}.subsurface-intel h3,.formation-library h3{margin:3px 0 10px}.subsurface-row{display:grid;grid-template-columns:70px 1fr 58px;gap:9px;align-items:start;background:#0b1b28;border:1px solid #203c50;border-radius:9px;padding:9px;margin:6px 0}.subsurface-depth{font-weight:1000;color:#53db89}.subsurface-row strong{display:block;font-size:.78rem}.subsurface-row span{display:block;color:#aebfc9;font-size:.67rem;line-height:1.35;margin-top:2px}.subsurface-confidence{text-align:right;color:#90a7b5;font-size:.61rem;text-transform:uppercase;font-weight:900}.intel-note{color:#7f95a4;font-size:.62rem;line-height:1.4;margin:8px 1px 0}.formation-explainer{background:#0b1b28;border:1px solid #203c50;border-radius:10px;padding:10px;margin-top:7px}.formation-explainer-head{display:flex;justify-content:space-between;gap:8px;align-items:center}.formation-explainer-head h4{margin:0;font-size:.83rem}.formation-explainer-head span{font-size:.58rem;color:#53db89;text-transform:uppercase;font-weight:900}.formation-explainer p{color:#c5d2da;font-size:.7rem;line-height:1.4;margin:7px 0}.formation-explainer div:not(.formation-explainer-head){font-size:.67rem;line-height:1.4;margin-top:6px;color:#c5d2da}.formation-explainer small{display:block;color:#53db89;font-size:.56rem;font-weight:900;margin-bottom:2px}@media(max-width:560px){.subsurface-row{grid-template-columns:58px 1fr}.subsurface-confidence{grid-column:2;text-align:left}}@media print{.gc-tabs{display:none!important}.subsurface-intel,.formation-library,.formation-explainer,.subsurface-row{background:white!important;color:#111!important;border-color:#aaa!important}.subsurface-row span,.formation-explainer p,.formation-explainer div:not(.formation-explainer-head),.intel-note{color:#444!important}}


/* v1.5.1 collapsible Ground Layers & Formations */
.layers-drawer{
  margin:10px 0;
}
.layers-drawer summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.layers-drawer summary::after{
  content:"Expand";
  color:#53db89;
  font-size:.62rem;
  text-transform:uppercase;
  font-weight:900;
}
.layers-drawer[open] summary::after{
  content:"Minimize";
}
.layers-drawer #layersTab{
  padding:0 12px 12px;
}
@media print{
  .layers-drawer{display:block!important;}
  .layers-drawer summary{display:none!important;}
  .layers-drawer #layersTab{display:block!important;padding:0!important;}
}


/* v1.5.2 cleanup */
#formationDefinition{display:none!important;}


/* v1.6 Ground Behavior Intelligence */
.behavior-card{background:#102536;border:1px solid #29465a;border-radius:14px;padding:13px;margin:10px 0;}
.behavior-card h3{margin:3px 0 0;}
.behavior-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;}
.behavior-item{background:#0b1b28;border:1px solid #203c50;border-radius:10px;padding:10px;border-left:4px solid #78909c;}
.behavior-title{display:flex;justify-content:space-between;gap:8px;align-items:center;}
.behavior-title span{font-size:.72rem;font-weight:900;}
.behavior-title strong{font-size:.64rem;letter-spacing:.04em;}
.behavior-meter{height:6px;background:#07131d;border-radius:99px;overflow:hidden;margin-top:7px;}
.behavior-meter i{display:block;height:100%;border-radius:99px;background:#8da0aa;}
.behavior-meta{display:flex;justify-content:space-between;gap:6px;color:#78909a;font-size:.56rem;margin-top:5px;text-transform:uppercase;}
.behavior-item p{font-size:.65rem;line-height:1.4;color:#b8c8d1;margin:7px 0 0;}
.behavior-item details{margin-top:7px;}
.behavior-item summary{cursor:pointer;color:#8ea5b3;font-size:.6rem;font-weight:800;}
.behavior-item ul{padding-left:16px;margin:6px 0 0;color:#9db0bf;font-size:.59rem;line-height:1.4;}
.behavior-low{border-left-color:#53db89}.behavior-low .behavior-title strong{color:#53db89}.behavior-low .behavior-meter i{background:#53db89}
.behavior-lowmod{border-left-color:#91d96b}.behavior-lowmod .behavior-title strong{color:#91d96b}.behavior-lowmod .behavior-meter i{background:#91d96b}
.behavior-moderate{border-left-color:#e0b64d}.behavior-moderate .behavior-title strong{color:#e0b64d}.behavior-moderate .behavior-meter i{background:#e0b64d}
.behavior-modhigh{border-left-color:#e98d45}.behavior-modhigh .behavior-title strong{color:#e98d45}.behavior-modhigh .behavior-meter i{background:#e98d45}
.behavior-high{border-left-color:#ef6461}.behavior-high .behavior-title strong{color:#ef6461}.behavior-high .behavior-meter i{background:#ef6461}
.behavior-boundary{margin-top:9px;background:#0b1b28;border-radius:9px;padding:9px;color:#9db0bf;font-size:.62rem;line-height:1.4;}
.behavior-boundary strong{color:#53db89;}
.layers-drawer summary::after{content:"EXPAND"!important;}
.layers-drawer[open] summary::after{content:"MINIMIZE"!important;}

@media(max-width:600px){.behavior-grid{grid-template-columns:1fr;}}
@media print{
  .behavior-card,.behavior-item,.behavior-boundary{background:white!important;color:#111!important;border-color:#aaa!important;}
  .behavior-item p,.behavior-meta,.behavior-boundary,.behavior-item ul{color:#444!important;}
  .behavior-item details{display:block!important;}
  .behavior-item details summary{display:none!important;}
}


/* v1.7 Evidence Confidence Engine */
.confidence-engine{background:#102536;border:1px solid #29465a;border-radius:12px;margin:10px 0;overflow:hidden}
.confidence-engine>summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:11px 13px;font-weight:900}
.confidence-engine>summary strong{color:#53db89;font-size:.7rem}
.confidence-body{padding:0 13px 13px}
.confidence-row{display:grid;grid-template-columns:130px 1fr 38px;gap:8px;align-items:center;margin:7px 0;font-size:.65rem}
.confidence-row>div{height:6px;background:#07131d;border-radius:99px;overflow:hidden}
.confidence-row i{display:block;height:100%;background:#53db89;border-radius:99px}
.confidence-row strong{text-align:right}
.confidence-stats{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.confidence-stats span{background:#0b1b28;border:1px solid #203c50;border-radius:8px;padding:6px 8px;font-size:.59rem;color:#9db0bf}
.confidence-stats b{color:#fff}
.confidence-evidence{border-top:1px solid #203c50;margin-top:8px;padding-top:8px}
.confidence-evidence h4{margin:0 0 6px;font-size:.66rem}
.evidence-line{display:grid;grid-template-columns:120px 1fr 48px;gap:7px;padding:5px 0;border-bottom:1px solid #173044;font-size:.57rem}
.evidence-line span{color:#9db0bf}.evidence-line em{text-align:right;color:#53db89;font-style:normal}
.confidence-note{font-size:.57rem;color:#78909a;margin:9px 0 0;line-height:1.4}
@media(max-width:600px){.confidence-row{grid-template-columns:105px 1fr 35px}.evidence-line{grid-template-columns:95px 1fr}}


/* v1.7.1 confidence badge */
#confidenceLabel{
  font-size:.52rem;
  line-height:1.1;
  letter-spacing:.04em;
}


/* v1.7.2 targeted confidence badge */
#confLabel,#confidenceLabel{
  font-size:.49rem!important;
  line-height:1.05!important;
  letter-spacing:.035em!important;
}


/* v1.8 Subsurface Evidence Engine */
.subsurface-evidence-card{background:#102536;border:1px solid #29465a;border-radius:12px;margin:10px 0;overflow:hidden}
.subsurface-evidence-card>summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:11px 13px;font-weight:900}
.subsurface-evidence-card>summary strong{font-size:.62rem;color:#53db89}
.subsurface-evidence-body{padding:0 13px 13px}
.evidence-section{background:#0b1b28;border:1px solid #203c50;border-radius:9px;padding:9px;margin:7px 0}
.horizon-row{display:grid;grid-template-columns:62px 1fr 60px;gap:7px;align-items:center;padding:6px 0;border-bottom:1px solid #173044;font-size:.61rem}
.horizon-row span{color:#b8c8d1}.horizon-row em{font-style:normal;text-align:right;color:#53db89}
.evidence-section small{display:block;color:#78909a;font-size:.56rem;line-height:1.35;margin-top:6px}
.map-consistency{display:flex;justify-content:space-between;gap:8px;margin-top:5px;font-size:.62rem}.map-consistency span{color:#9db0bf;text-align:right}
.mini-meter{height:6px;background:#07131d;border-radius:99px;overflow:hidden;margin-top:7px}.mini-meter i{display:block;height:100%;background:#53db89;border-radius:99px}
.structure-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:7px 0}
.structure-grid>div{background:#0b1b28;border:1px solid #203c50;border-radius:9px;padding:9px}.structure-grid span{display:block;color:#78909a;font-size:.53rem}.structure-grid strong{display:block;margin-top:4px;font-size:.67rem}
.source-priority{margin:7px 0 0;padding-left:18px;color:#b8c8d1;font-size:.59rem;line-height:1.55}
@media(max-width:600px){.structure-grid{grid-template-columns:1fr}.horizon-row{grid-template-columns:55px 1fr 52px}}


/* v1.8.1 Confidence Calibration */
.calibration-card{background:#102536;border:1px solid #29465a;border-radius:12px;padding:12px;margin:10px 0}
.calibration-card h3{margin:3px 0 0}
.calibration-primary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.calibration-primary>div{background:#0b1b28;border:1px solid #203c50;border-radius:10px;padding:10px}
.calibration-primary small{display:block;color:#78909a;font-size:.55rem;font-weight:900}
.calibration-primary strong{display:block;font-size:1.3rem;margin-top:3px}
.calibration-primary span{display:block;color:#53db89;font-size:.6rem;font-weight:900;margin-top:2px}
.calibration-rows{margin-top:8px}
.calibration-rows>div{display:grid;grid-template-columns:110px 1fr 38px;gap:7px;align-items:center;margin:6px 0;font-size:.61rem}
.calibration-rows>div>div{height:6px;background:#07131d;border-radius:99px;overflow:hidden}
.calibration-rows i{display:block;height:100%;background:#53db89;border-radius:99px}
.calibration-rows strong{text-align:right}
.calibration-note{margin:8px 0 0;background:#0b1b28;border-left:3px solid #e0b64d;border-radius:8px;padding:8px;color:#aebfc9;font-size:.59rem;line-height:1.4}
@media(max-width:560px){.calibration-primary{grid-template-columns:1fr 1fr}.calibration-rows>div{grid-template-columns:95px 1fr 35px}}


/* v1.9 Observed / Recovered Evidence */
.observed-evidence-card{background:#102536;border:1px solid #29465a;border-radius:12px;margin:10px 0;overflow:hidden}
.observed-evidence-card>summary{cursor:pointer;display:flex;justify-content:space-between;gap:8px;align-items:center;padding:11px 13px;font-weight:900}
.observed-evidence-card>summary strong{font-size:.58rem;color:#53db89;text-align:right}
.observed-evidence-body{padding:0 13px 13px}
.recovery-warning{background:#231e0d;border:1px solid #6b5722;border-left:4px solid #e0b64d;border-radius:9px;padding:9px;margin:5px 0 9px}
.recovery-warning strong{display:block;color:#f1cf71;font-size:.68rem}
.recovery-warning span{display:block;color:#c8b98d;font-size:.59rem;line-height:1.4;margin-top:4px}
.observed-list{margin-top:7px}
.observed-row{display:grid;grid-template-columns:1fr 90px;gap:8px;background:#0b1b28;border:1px solid #203c50;border-radius:9px;padding:8px;margin:5px 0}
.observed-row strong{display:block;font-size:.67rem}
.observed-row span{display:block;color:#8ea2af;font-size:.56rem;margin-top:3px}
.observed-row>div:last-child{text-align:right}
@media(max-width:520px){.observed-row{grid-template-columns:1fr 72px}}


/* v1.9.1 Evidence Authority Rules */
.authority-card{border-radius:12px;padding:12px;margin:10px 0;border:1px solid #29465a;background:#102536}
.authority-unresolved{border-left:4px solid #e0b64d}
.authority-resolved{border-left:4px solid #53db89}
.authority-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.authority-head h3{margin:3px 0 0}
.authority-card p{margin:8px 0;color:#b8c8d1;font-size:.64rem;line-height:1.45}
.authority-candidate{display:flex;justify-content:space-between;gap:8px;background:#0b1b28;border:1px solid #203c50;border-radius:9px;padding:8px}
.authority-candidate small{color:#78909a;font-size:.54rem}.authority-candidate strong{font-size:.67rem}
.authority-foot{display:flex;justify-content:space-between;gap:8px;color:#78909a;font-size:.55rem;margin-top:8px}
.working-candidate{font-size:.62rem;color:#e0b64d;margin-top:4px}
.working-candidate strong{color:#f2d47e}


/* v1.10 Ground Classification Engine */
.ground-class-card{background:#102536;border:1px solid #29465a;border-radius:14px;padding:13px;margin:10px 0}
.ground-class-main{display:grid;grid-template-columns:1fr 88px;gap:12px;align-items:start}
.ground-class-main small{display:block;color:#78909a;font-size:.55rem;font-weight:900;margin-top:6px}
.ground-class-main h2{margin:2px 0 4px;font-size:1.35rem}
.ground-class-main p{margin:0;color:#b8c8d1;font-size:.64rem;line-height:1.45}
.ground-class-confidence{background:#0b1b28;border:1px solid #203c50;border-radius:10px;padding:10px;text-align:center}
.ground-class-confidence strong{display:block;font-size:1.45rem;color:#53db89}
.ground-class-confidence span{display:block;font-size:.57rem;color:#9db0bf;margin-top:2px;font-weight:900}
.classification-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.classification-grid>div{background:#0b1b28;border:1px solid #203c50;border-radius:10px;padding:10px}
.classification-grid small{display:block;color:#78909a;font-size:.53rem;font-weight:900}
.classification-grid strong{display:block;font-size:.8rem;margin-top:4px}
.classification-grid span{display:block;color:#9db0bf;font-size:.57rem;margin-top:3px;line-height:1.35}
.classification-source{display:flex;justify-content:space-between;gap:8px;color:#78909a;font-size:.54rem;margin-top:8px}
@media(max-width:520px){
  .ground-class-main{grid-template-columns:1fr 78px}
  .classification-grid{grid-template-columns:1fr 1fr}
}


/* v1.10.1 Depth Evidence Gate */
.depth-gate-note{margin-top:9px;background:#231e0d;border:1px solid #6b5722;border-left:4px solid #e0b64d;border-radius:9px;padding:8px}
.depth-gate-note strong{display:block;color:#f1cf71;font-size:.62rem}
.depth-gate-note span{display:block;color:#c8b98d;font-size:.57rem;line-height:1.4;margin-top:3px}
.depth-evidence-card{background:#102536;border:1px solid #29465a;border-radius:12px;margin:10px 0;overflow:hidden}
.depth-evidence-card>summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:11px 13px;font-weight:900}
.depth-evidence-card>summary strong{font-size:.57rem;color:#53db89;text-align:right}
.depth-evidence-body{padding:0 13px 13px}
.depth-evidence-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.depth-evidence-grid>div{background:#0b1b28;border:1px solid #203c50;border-radius:8px;padding:8px}
.depth-evidence-grid small{display:block;color:#78909a;font-size:.48rem}
.depth-evidence-grid strong{display:block;margin-top:3px;font-size:.68rem}
.depth-evidence-body p{font-size:.6rem;color:#b8c8d1;line-height:1.4;margin:8px 0 4px}
.depth-evidence-body>small{color:#78909a;font-size:.54rem}
@media(max-width:600px){.depth-evidence-grid{grid-template-columns:1fr 1fr}}


/* v1.10.2 Final Authority Resolver */
.ground-class-card .classification-source span:first-child{font-weight:800}


/* v1.11 Validation Lab */
.validation-intro{color:#9db0bf;max-width:760px;line-height:1.5}
.validation-summary,.validation-panel{background:#102536;border:1px solid #29465a;border-radius:14px;padding:13px;margin:12px 0}
.validation-progress{background:#0b1b28;border:1px solid #203c50;border-radius:10px;padding:10px}
.validation-progress>div:first-child{display:flex;justify-content:space-between;align-items:center}
.validation-progress strong{font-size:1rem}
.validation-progressbar{height:8px;background:#07131d;border-radius:99px;overflow:hidden;margin:8px 0 5px}
.validation-progressbar i{display:block;height:100%;background:#53db89;border-radius:99px}
.validation-progress small{color:#d6bd75;font-size:.58rem}
.validation-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:8px}
.validation-metric{background:#0b1b28;border:1px solid #203c50;border-radius:9px;padding:9px}
.validation-metric small{display:block;color:#78909a;font-size:.51rem;font-weight:900}
.validation-metric strong{display:block;font-size:1.05rem;margin-top:4px;color:#53db89}
.validation-metric span{display:block;color:#8ea2af;font-size:.54rem;margin-top:3px}
.validation-calibration{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:9px}
.calibration-band{background:#0b1b28;border:1px solid #203c50;border-radius:9px;padding:9px}
.calibration-band>strong{display:block;font-size:.7rem}
.calibration-band>span{display:block;color:#78909a;font-size:.52rem;margin:2px 0 7px}
.calibration-band>div{display:flex;justify-content:space-between;gap:5px;font-size:.57rem;margin-top:4px}
.calibration-band small{color:#8ea2af}.calibration-band b{color:#fff}
.validation-actions{display:flex;justify-content:flex-end;margin:10px 0}
.validation-table{min-width:1050px}
.validation-correct{color:#53db89;font-weight:1000;text-align:center}
.validation-wrong{color:#ef6461;font-weight:1000;text-align:center}
.validation-empty{background:#102536;border:1px solid #29465a;border-radius:12px;padding:18px;text-align:center}
.validation-empty p{color:#9db0bf}
@media(max-width:850px){
 .validation-metrics{grid-template-columns:1fr 1fr}
 .validation-calibration{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
 .validation-metrics,.validation-calibration{grid-template-columns:1fr}
}

.validation-split{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.validation-rank{margin-top:7px}
.validation-rank>div{display:grid;grid-template-columns:1fr 52px 45px;gap:7px;align-items:center;background:#0b1b28;border:1px solid #203c50;border-radius:8px;padding:7px;margin:5px 0;font-size:.58rem}
.validation-rank>div span{color:#b8c8d1}.validation-rank>div strong{text-align:right;color:#53db89}.validation-rank>div small{text-align:right;color:#78909a}
@media(max-width:650px){.validation-split{grid-template-columns:1fr}}


/* v1.12 Controlled Contractor Beta */
.contractor-onboard,.contractor-status{background:#102536;border:1px solid #29465a;border-radius:14px;padding:14px;max-width:720px}
.contractor-onboard label{display:block;margin:9px 0;color:#9db0bf;font-size:.64rem}
.contractor-onboard input[type=text],.contractor-onboard input:not([type]){width:100%;box-sizing:border-box;margin-top:4px}
.nda-check{background:#0b1b28;border:1px solid #203c50;border-radius:9px;padding:10px;line-height:1.45}
.status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}
.status-grid>div{background:#0b1b28;border:1px solid #203c50;border-radius:9px;padding:9px}
.status-grid small{display:block;color:#78909a;font-size:.5rem}.status-grid strong{display:block;margin-top:4px;font-size:.68rem}
.pending-badge{min-width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#7b251f;color:#fff;font-weight:900}
.pending-review-list{margin-top:9px}
.pending-review{display:grid;grid-template-columns:1.1fr 1.2fr 1.2fr auto;gap:8px;align-items:center;background:#0b1b28;border:1px solid #203c50;border-radius:10px;padding:9px;margin:6px 0}
.pending-review strong{display:block;font-size:.62rem}.pending-review span{display:block;color:#849aa8;font-size:.54rem;margin-top:3px}
.review-actions{display:flex;gap:4px;flex-wrap:wrap}.review-actions button{font-size:.53rem;padding:5px 7px}
.contractor-usage>summary{cursor:pointer;display:flex;justify-content:space-between;font-weight:900}
.contractor-usage table{min-width:780px}
@media(max-width:780px){
 .status-grid{grid-template-columns:1fr 1fr}
 .pending-review{grid-template-columns:1fr 1fr}
 .review-actions{grid-column:1/-1}
}

/* v1.12.1 explicit account signup */
#signupForm,#loginForm{display:flex;flex-direction:column;gap:8px}
#signupForm.hidden,#loginForm.hidden{display:none}
#signupForm .nda-check{font-size:.61rem;text-align:left}

/* v1.12.2 NDA + onboarding */
.nda-open{margin-top:4px}.nda-summary{background:#0c2a1c;border:1px solid #2d6f4d;border-radius:9px;padding:8px;text-align:left}
.nda-summary strong,.nda-summary span{display:block}.nda-summary span{font-size:.58rem;color:#a8cdb7;margin-top:2px}
.nda-modal{position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:9999;display:flex;align-items:center;justify-content:center;padding:14px}
.nda-modal.hidden{display:none}.nda-dialog{width:min(760px,100%);max-height:92vh;background:#0d1e2b;border:1px solid #315268;border-radius:14px;display:flex;flex-direction:column;overflow:hidden}
.nda-dialog-head{display:flex;justify-content:space-between;gap:10px;padding:14px;border-bottom:1px solid #233f52}.nda-dialog-head h2{margin:3px 0}.nda-dialog-head small{color:#7f98a7}
.nda-document{padding:14px;overflow:auto;max-height:48vh;color:#b8c8d1;font-size:.68rem;line-height:1.55}.nda-document h3{color:#fff;margin:12px 0 4px}
.nda-legal-note{background:#241f0e;border-left:4px solid #e0b64d;border-radius:8px;padding:9px;color:#dbc98e}
.nda-acks{padding:12px 14px;border-top:1px solid #233f52;display:grid;gap:7px}.nda-acks label{font-size:.62rem;color:#b8c8d1;line-height:1.4}
.nda-acks input[type=text]{width:100%;box-sizing:border-box;margin-top:4px}.contractor-audit{display:flex;gap:14px;flex-wrap:wrap;margin-top:9px;color:#7f98a7;font-size:.56rem}
.mini-actions{display:flex;gap:4px}.mini-actions button{font-size:.52rem;padding:4px 6px}

/* v1.12.3 onboarding status */
.signup-nda-status{border-radius:9px;padding:8px;text-align:left;margin-top:2px}
.signup-nda-status strong,.signup-nda-status span{display:block}
.signup-nda-status strong{font-size:.62rem}
.signup-nda-status span{font-size:.56rem;margin-top:2px}
.signup-nda-status.needed{background:#2a210d;border:1px solid #6d5a24;color:#f1cf71}
.signup-nda-status.needed span{color:#d4c28b}
.signup-nda-status.complete{background:#0c2a1c;border:1px solid #2d6f4d;color:#53db89}
.signup-nda-status.complete span{color:#a8cdb7}

/* v1.12.4 Contractor Account Management */
.contractor-management{margin-top:10px}
.contractor-list{display:grid;gap:8px;margin-top:10px}
.contractor-account-row{display:grid;grid-template-columns:1.25fr 1.2fr 1fr auto;gap:10px;align-items:center;background:#0b1b28;border:1px solid #203c50;border-radius:10px;padding:10px}
.contractor-identity strong{display:block;font-size:.7rem}
.contractor-identity span{display:block;color:#b9c8d2;font-size:.59rem;margin-top:2px}
.contractor-identity small{display:block;color:#78909a;font-size:.52rem;margin-top:2px}
.contractor-status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}
.contractor-status-grid>div{background:#0a1722;border:1px solid #1a3446;border-radius:7px;padding:6px}
.contractor-status-grid small{display:block;color:#78909a;font-size:.45rem}
.contractor-status-grid strong{display:block;font-size:.58rem;margin-top:2px}
.contractor-status-grid .good{color:#53db89}
.contractor-status-grid .warn{color:#e0b64d}
.contractor-validation-mini{display:flex;flex-direction:column;gap:3px;color:#849aa8;font-size:.54rem}
.contractor-account-actions{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.contractor-account-actions button{font-size:.53rem;padding:5px 7px}
.contractor-account-actions .approve-btn{background:#1b7c4e;border-color:#2da86c}
.contractor-account-actions .reject-btn{background:#6f2421;border-color:#a84842}
.admin-accounts{margin-top:10px;background:#0b1b28;border:1px solid #203c50;border-radius:9px;padding:8px}
.admin-accounts>summary{cursor:pointer;display:flex;justify-content:space-between;font-weight:900;font-size:.62rem}
.admin-account-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:8px;border-top:1px solid #203c50;margin-top:6px}
.admin-account-row strong{display:block;font-size:.62rem}.admin-account-row span{display:block;color:#78909a;font-size:.52rem;margin-top:2px}
.admin-account-row small{display:block;color:#78909a;font-size:.45rem}
@media(max-width:900px){
  .contractor-account-row{grid-template-columns:1fr 1fr}
  .contractor-account-actions{grid-column:1/-1;justify-content:flex-start}
}
@media(max-width:620px){
  .contractor-account-row{grid-template-columns:1fr}
  .contractor-status-grid{grid-template-columns:1fr 1fr}
}

/* v1.12.4.3 authentication status */
.auth-status{display:block;margin:12px 0 0;padding:9px 10px;border-radius:9px;font-size:.62rem;line-height:1.35;text-align:left;border:1px solid #294358;background:#0b1b28;color:#9db0bf}
.auth-status.checking{border-color:#435b6d;color:#a9bbc7}
.auth-status.ready{background:#0c2a1c;border-color:#2d6f4d;color:#72e3a3}
.auth-status.error{background:#2a1513;border-color:#7b3731;color:#f0a39c}

/* v1.12.5 Unified Validation Lab */
.pending-management{margin-top:10px}
.validation-review-row .contractor-status-grid strong{white-space:normal;line-height:1.15}
.validation-review-row .contractor-identity small{max-width:220px}
.validation-review-row .contractor-account-actions{min-width:150px}
.validation-review-row .contractor-validation-mini{min-width:120px}
.pending-management .pending-badge{background:#7b251f;color:#fff}

/* v1.12.5.1 restored validation calibration */
.calibration-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}
.calibration-bucket{background:#0b1b28;border:1px solid #203c50;border-radius:9px;padding:9px}
.calibration-bucket>strong,.calibration-bucket>small{display:block}.calibration-bucket>small{color:#78909a;margin:2px 0 7px}
.calibration-bucket>div{display:flex;justify-content:space-between;gap:8px;font-size:.55rem;margin-top:3px}
.calibration-split{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.calibration-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;border-top:1px solid #203c50;padding:6px 0;font-size:.56rem}
.calibration-row small{color:#78909a}
@media(max-width:700px){.calibration-grid{grid-template-columns:1fr 1fr}.calibration-split{grid-template-columns:1fr}}

/* v1.12.6 validation details + nearby field intelligence */
.validation-details{grid-column:1/-1;background:#091721;border:1px solid #1f3d50;border-radius:8px;padding:7px 9px;margin-top:4px}
.validation-details>summary{cursor:pointer;color:#74dca0;font-weight:900;font-size:.58rem}
.validation-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:9px}
.validation-detail-grid>div,.validation-note-block,.validation-review-block{background:#0b1b28;border:1px solid #203c50;border-radius:8px;padding:8px}
.validation-detail-grid small,.validation-note-block small,.validation-review-block small{display:block;color:#78909a;font-size:.48rem}
.validation-detail-grid strong,.validation-review-block strong{display:block;font-size:.62rem;margin-top:2px}
.validation-detail-grid span,.validation-review-block span{display:block;color:#91a6b3;font-size:.52rem;margin-top:2px}
.validation-note-block,.validation-review-block{margin-top:7px}.validation-note-block p,.validation-review-block p{margin:4px 0 0;white-space:pre-wrap;font-size:.6rem;line-height:1.45;color:#c0ced6}
.reviewed-validation-history{margin-top:10px}.reviewed-list{display:grid;gap:8px;margin-top:10px}
.reviewed-validation-row{background:#0b1b28;border:1px solid #203c50;border-radius:10px;padding:9px}
.reviewed-summary{display:grid;grid-template-columns:1.5fr .7fr 1fr 1fr;gap:8px;align-items:center}
.reviewed-summary span{display:block;color:#78909a;font-size:.5rem;margin-top:2px}.reviewed-summary small{display:block;color:#78909a;font-size:.45rem}
.review-status.approved{color:#53db89}.review-status.rejected{color:#e67c73}.review-status.needs_clarification{color:#e0b64d}
.nearby-field-panel{border-color:#2d6f4d}.nearby-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.nearby-heading h3{margin:4px 0 0}.nearby-radius{font-size:.52rem;color:#78909a;display:flex;gap:5px;align-items:center}
.nearby-radius select{background:#071825;color:#dce9f1;border:1px solid #294358;border-radius:7px;padding:5px}
.nearby-validation-list{display:grid;gap:7px;margin-top:10px}.nearby-validation{background:#0b1b28;border:1px solid #244559;border-radius:9px;padding:8px}
.nearby-validation>summary{cursor:pointer;display:flex;justify-content:space-between;gap:10px;align-items:center}
.nearby-validation summary strong,.nearby-validation summary small{display:block}.nearby-validation summary small{color:#78909a;font-size:.52rem;margin-top:2px}.nearby-validation summary b{color:#53db89;font-size:.55rem}
.nearby-validation-body{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.nearby-validation-body>div{background:#091721;border-radius:7px;padding:7px}
.nearby-validation-body small{display:block;color:#78909a;font-size:.46rem}.nearby-validation-body strong{display:block;font-size:.6rem;margin-top:2px}
.nearby-validation-body .nearby-note{grid-column:1/-1}.nearby-note p{white-space:pre-wrap;margin:4px 0 0;font-size:.6rem;line-height:1.45}
.nearby-disclaimer{color:#78909a;font-size:.55rem;line-height:1.45;margin:9px 0 0}.nearby-loading{color:#91a6b3}
.validation-empty.compact{padding:9px;margin-top:8px}
@media(max-width:720px){
  .validation-detail-grid{grid-template-columns:1fr}
  .reviewed-summary{grid-template-columns:1fr 1fr}
  .nearby-heading{flex-direction:column}
}

/* v1.12.6.1 validation record audit */
.validation-record-audit{margin-top:10px}
.validation-record-audit>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px}
.validation-record-audit>summary span strong{display:block;margin-top:3px}
.validation-record-audit>summary>b{font-size:.52rem;color:#74dca0}
.validation-record-list{display:grid;gap:7px;margin-top:10px}
.validation-record-row{display:grid;grid-template-columns:1.5fr .7fr 1fr 1fr;gap:8px;align-items:center;background:#0b1b28;border:1px solid #203c50;border-radius:9px;padding:8px}
.validation-record-row span{display:block;color:#78909a;font-size:.5rem;margin-top:2px}
.validation-record-row small{display:block;color:#78909a;font-size:.45rem}
.validation-record-row .validation-details{grid-column:1/-1}
@media(max-width:720px){.validation-record-row{grid-template-columns:1fr 1fr}}

/* v1.12.7 predictive QuickPredict address search */
.address-search-wrap{position:relative;width:100%}
.address-search-wrap>input{width:100%}
.address-suggestions{position:absolute;z-index:50;left:0;right:0;top:calc(100% - 42px);transform:translateY(-100%);background:#071824;border:1px solid #2c5268;border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.35);padding:5px;max-height:270px;overflow:auto}
.address-suggestions.hidden{display:none}
.address-suggestion{width:100%;display:flex;align-items:center;gap:9px;text-align:left;background:transparent;border:0;border-bottom:1px solid #173344;border-radius:7px;padding:10px;color:#eaf3f7;cursor:pointer}
.address-suggestion:last-child{border-bottom:0}
.address-suggestion:hover,.address-suggestion.active{background:#123044}
.address-suggestion .address-pin{color:#53db89;font-size:1rem}
.address-suggestion span:nth-child(2){min-width:0}
.address-suggestion strong{display:block;font-size:.72rem;white-space:normal}
.address-suggestion small{display:block;color:#83a0b0;font-size:.55rem;margin-top:2px}
@media(max-width:700px){
  .address-suggestions{position:absolute;top:100%;transform:none}
  .address-suggestion{padding:12px 9px;min-height:52px}
}

/* v1.12.7.2 compact autocomplete dropdown — always below search */
.address-search-wrap{position:relative!important;width:100%;overflow:visible!important}
.address-suggestions{
 position:absolute!important;z-index:100!important;left:0!important;right:0!important;
 top:calc(100% + 5px)!important;bottom:auto!important;transform:none!important;
 background:#071824;border:1px solid #2c5268;border-radius:8px;
 box-shadow:0 10px 24px rgba(0,0,0,.32);padding:3px;
 max-height:190px!important;overflow-y:auto!important;overflow-x:hidden!important
}
.address-suggestions.hidden{display:none!important}
.address-suggestion{
 width:100%;display:grid!important;grid-template-columns:18px minmax(0,1fr);
 gap:6px;align-items:center;text-align:left;background:transparent;
 border:0;border-bottom:1px solid #173344;border-radius:5px;
 padding:5px 6px!important;min-height:32px!important;color:#eaf3f7;cursor:pointer
}
.address-suggestion:last-child{border-bottom:0}
.address-suggestion:hover,.address-suggestion.active{background:#123044}
.address-suggestion .address-pin{font-size:.72rem!important;color:#53db89}
.address-suggestion span:nth-child(2){min-width:0;overflow:hidden}
.address-suggestion strong{
 display:block;font-size:.56rem!important;line-height:1.15;white-space:nowrap;
 overflow:hidden;text-overflow:ellipsis
}
.address-suggestion small{
 display:block;font-size:.44rem!important;line-height:1.15;color:#83a0b0;
 margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
@media(max-width:700px){
 .address-suggestions{top:calc(100% + 4px)!important;max-height:165px!important}
 .address-suggestion{min-height:30px!important;padding:5px!important}
 .address-suggestion strong{font-size:.54rem!important}
 .address-suggestion small{font-size:.42rem!important}
}

/* v1.12.7.3 — higher-contrast predictive address results */
.address-suggestions{
  background:#102a3a!important;
  border:1px solid #65d99a!important;
  box-shadow:0 12px 28px rgba(0,0,0,.48)!important;
  padding:4px!important;
}
.address-suggestion{
  background:#17384a!important;
  border:1px solid #2f6176!important;
  border-bottom:1px solid #2f6176!important;
  margin-bottom:3px!important;
  color:#ffffff!important;
}
.address-suggestion:last-child{margin-bottom:0!important}
.address-suggestion:hover,
.address-suggestion.active{
  background:#21536a!important;
  border-color:#67e3a2!important;
}
.address-suggestion .address-pin{
  color:#5ff29b!important;
}
.address-suggestion strong{
  color:#ffffff!important;
  font-weight:800!important;
  font-size:.60rem!important;
  letter-spacing:.01em;
}
.address-suggestion small{
  color:#c8e0eb!important;
  font-size:.47rem!important;
  font-weight:500!important;
}
@media(max-width:700px){
  .address-suggestion strong{font-size:.58rem!important}
  .address-suggestion small{font-size:.45rem!important}
}

/* v1.12.7.4 — easier-to-read autocomplete typography */
.address-suggestion strong{
  font-weight:500!important;
  font-size:.62rem!important;
  letter-spacing:0!important;
}
.address-suggestion small{
  font-weight:400!important;
  font-size:.49rem!important;
}
@media(max-width:700px){
  .address-suggestion strong{font-size:.60rem!important}
  .address-suggestion small{font-size:.47rem!important}
}

/* ============================================================
   GroundPredict v1.13.0 — Cohesive Product Design System
   Inspired by the original clean GroundPredict concept:
   dark navy canvas, crisp blue/teal structure, restrained orange
   brand accent, compact field-focused information architecture.
   ============================================================ */
:root{
  --gc-bg:#07131f;
  --gc-bg-deep:#04101a;
  --gc-shell:#0a1824;
  --gc-panel:#0d2231;
  --gc-panel-2:#102838;
  --gc-panel-3:#0a1d2a;
  --gc-line:#285066;
  --gc-line-soft:#1b3b4e;
  --gc-text:#f5f8fa;
  --gc-copy:#a9c2d0;
  --gc-muted:#6f91a2;
  --gc-mint:#49e3a5;
  --gc-mint-dim:#2ca879;
  --gc-orange:#f47a16;
  --gc-orange-soft:#f5a04a;
  --gc-danger:#e15c53;
  --gc-warning:#e7b348;
}

html,body{
  background:var(--gc-bg-deep)!important;
  color:var(--gc-text)!important;
}
body{
  background:
    radial-gradient(circle at 50% -120px,rgba(28,91,117,.18),transparent 420px),
    linear-gradient(180deg,#07131f 0%,#06121c 100%)!important;
}

/* App shell */
header,.topbar,.site-header{
  min-height:56px!important;
  background:rgba(4,16,26,.97)!important;
  border-bottom:1px solid #16384b!important;
  box-shadow:none!important;
}
.brand{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
.gc-brandmark{
  width:38px!important;
  height:38px!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:7px!important;
  border:1px solid #244b60!important;
  box-shadow:0 0 0 1px rgba(73,227,165,.04)!important;
}
.brand strong{
  letter-spacing:.08em!important;
  font-size:.82rem!important;
}
.brand small{
  color:#7e9aaa!important;
}
.version,.version-badge,.badge.version{
  background:#092519!important;
  color:#62e5aa!important;
  border-color:#277454!important;
}

/* Consistent content width / breathing room */
main,.content,.app-content{
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.view{
  padding-top:22px!important;
  padding-bottom:44px!important;
}

/* Typography */
h1{
  font-size:clamp(1.7rem,3vw,2.25rem)!important;
  line-height:1.05!important;
  letter-spacing:-.025em!important;
  color:#fff!important;
}
h2,h3{color:#f4f8fb!important}
.eyebrow{
  color:var(--gc-mint)!important;
  letter-spacing:.14em!important;
  font-size:.58rem!important;
  font-weight:800!important;
}
p,.validation-intro{
  color:var(--gc-copy)!important;
  line-height:1.5!important;
}
small,.muted,.subtle,.helper{
  color:var(--gc-muted)!important;
}

/* Subtle brand-orange rule, not orange-everything */
h1:after{
  content:"";
  display:block;
  width:42px;
  height:2px;
  margin-top:8px;
  background:var(--gc-orange);
  border-radius:10px;
}

/* Panels/cards: original clean GroundPredict look */
.panel,.card,.choice,.condition,.rock,.validation-panel,.validation-summary,
.contractor-status,.contractor-account-row,.reviewed-validation-row,
.validation-record-audit,.savedcard,.notice{
  background:linear-gradient(180deg,var(--gc-panel) 0%,#0b1e2b 100%)!important;
  border:1px solid var(--gc-line)!important;
  border-radius:9px!important;
  box-shadow:none!important;
}
.panel,.validation-panel,.validation-summary,.contractor-status{
  padding:14px!important;
}
.panel:hover,.card:hover,.contractor-account-row:hover,.reviewed-validation-row:hover{
  border-color:#32627b!important;
}

/* Home screen tiles */
.tiles{
  gap:10px!important;
}
.tiles button{
  min-height:72px!important;
  background:linear-gradient(180deg,#102838,#0d2231)!important;
  border:1px solid #2b5368!important;
  border-radius:9px!important;
  color:#f5f8fa!important;
  box-shadow:none!important;
  transition:background .15s,border-color .15s,transform .15s!important;
}
.tiles button:hover{
  background:#123047!important;
  border-color:#3a708b!important;
  transform:translateY(-1px);
}
.tiles button b{
  filter:saturate(.9);
}
.tiles button strong{
  font-size:.78rem!important;
}
.tiles button small{
  color:#8faebe!important;
  margin-top:3px!important;
}

/* Buttons: mint is the action color, orange is the brand accent */
button,.btn{
  border-radius:7px!important;
  font-weight:700!important;
}
.cta,.primary,.btn-primary,#signIn,#find,#toDepth,#predict{
  background:linear-gradient(180deg,#4fe0a5,#31c98e)!important;
  color:#05130e!important;
  border:1px solid #62ebb2!important;
  box-shadow:none!important;
}
.cta:hover,.primary:hover,#signIn:hover,#find:hover,#toDepth:hover,#predict:hover{
  filter:brightness(1.04);
}
.secondary,.btn-secondary{
  background:#102737!important;
  border:1px solid #31586d!important;
  color:#eef5f8!important;
}
.secondary:hover,.btn-secondary:hover{
  background:#153044!important;
}
.back{
  color:#9fc0cf!important;
}

/* Inputs */
input,select,textarea{
  background:#081822!important;
  color:#f4f8fa!important;
  border:1px solid #31586c!important;
  border-radius:8px!important;
}
input:focus,select:focus,textarea:focus{
  border-color:#49e3a5!important;
  box-shadow:0 0 0 2px rgba(73,227,165,.10)!important;
  outline:none!important;
}

/* Results / data hierarchy */
.resulttop{
  border-bottom:1px solid #15384b!important;
  padding-bottom:12px!important;
}
.confidence{
  background:#0c281e!important;
  border:1px solid #2f7457!important;
  border-radius:10px!important;
}
.confidence strong{
  color:#5be8aa!important;
}
.condition{
  border-left:3px solid var(--gc-orange)!important;
}
.metric,.validation-metric,.status-grid>div,.soilgrid>div{
  background:#091b27!important;
  border:1px solid #21465a!important;
  border-radius:7px!important;
}
.metric strong,.validation-metric strong,.status-grid strong{
  color:#f5f8fa!important;
}

/* Evidence / progress */
.validation-progressbar,.bar,.confidence-bar{
  background:#06151f!important;
}
.validation-progressbar i,.bar i,.confidence-bar i{
  background:linear-gradient(90deg,#36ce91,#58e6aa)!important;
}
.source-badge{
  background:#0a241b!important;
  border-color:#28684e!important;
  color:#5fe4a9!important;
}

/* Predictive search — compact, readable, part of the same design */
.address-suggestions{
  background:#081823!important;
  border:1px solid #315b72!important;
  border-radius:8px!important;
  box-shadow:0 14px 28px rgba(0,0,0,.38)!important;
}
.address-suggestion{
  background:#0e2736!important;
  border-color:#254c61!important;
}
.address-suggestion:hover,.address-suggestion.active{
  background:#143247!important;
  border-color:#48d9a0!important;
}
.address-suggestion .address-pin{
  color:#f47a16!important;
}
.address-suggestion strong{
  color:#f8fafb!important;
  font-weight:500!important;
}
.address-suggestion small{
  color:#9ab6c5!important;
  font-weight:400!important;
}

/* Semantic status colors remain semantic */
.good,.approved,.status-approved{color:#55e3a6!important}
.warn,.pending,.status-pending{color:#e9b34f!important}
.rejected,.status-rejected,.danger{color:#ea7168!important}

/* Map frame */
.map{
  border:1px solid #2e586e!important;
  border-radius:10px!important;
  overflow:hidden!important;
}
.location-summary{
  background:#0d2231!important;
  border:1px solid #2a5267!important;
  border-radius:9px!important;
}

/* Auth screen should feel like the same product */
.auth-card,.auth-shell,#authGate>div{
  background:linear-gradient(180deg,#0d2231,#0a1b28)!important;
  border:1px solid #31586d!important;
  box-shadow:0 18px 45px rgba(0,0,0,.28)!important;
}
.auth-status.ready{
  background:#0a251b!important;
  border-color:#286b50!important;
}

/* Mobile tightening */
@media(max-width:720px){
  .view{padding-top:14px!important}
  .gc-brandmark{width:34px!important;height:34px!important}
  .tiles{grid-template-columns:1fr!important}
  .tiles button{min-height:64px!important}
  .panel,.validation-panel,.validation-summary,.contractor-status{padding:11px!important}
}

/* ============================================================
   GroundPredict v1.14.0 — Full Brand UI Rebuild
   Logo-led commercial web app interface.
   ============================================================ */
:root{
  --gc-bg:#07090b;
  --gc-bg-2:#0b0e11;
  --gc-surface:#11161a;
  --gc-surface-2:#171d22;
  --gc-surface-3:#1c242a;
  --gc-border:#2d363d;
  --gc-border-strong:#424c53;
  --gc-text:#f2f4f5;
  --gc-copy:#b8c0c5;
  --gc-muted:#7f8a91;
  --gc-orange:#f47a16;
  --gc-orange-2:#ff983f;
  --gc-bronze:#8c5a2b;
  --gc-steel:#9da6ac;
  --gc-success:#58d59a;
  --gc-warning:#e7ad49;
  --gc-danger:#df635a;
}

*{box-sizing:border-box}
html,body{
  background:
    radial-gradient(circle at 50% -10%,rgba(244,122,22,.07),transparent 34rem),
    linear-gradient(180deg,#060809,#090c0f 100%)!important;
  color:var(--gc-text)!important;
}
body{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  letter-spacing:0!important;
}
.gc-main{
  max-width:1240px!important;
  margin:0 auto!important;
  padding-left:18px!important;
  padding-right:18px!important;
}

/* HEADER */
header,.topbar,.site-header{
  height:72px!important;
  min-height:72px!important;
  padding:0 20px!important;
  background:rgba(5,7,8,.96)!important;
  border-bottom:1px solid #272d31!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  box-shadow:0 10px 30px rgba(0,0,0,.18)!important;
}
.brand--image{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
.gc-header-logo{
  width:150px!important;
  height:54px!important;
  object-fit:contain!important;
  object-position:left center!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
}
.gc-version{
  font-size:.56rem!important;
  font-weight:700!important;
  color:#f0a05a!important;
  border:1px solid #6a3b17!important;
  background:#1a100a!important;
  padding:4px 7px!important;
  border-radius:999px!important;
}
header a,.topbar a{color:#c7ced2!important}
header a:hover,.topbar a:hover{color:#fff!important}

/* AUTH */
#authGate{
  background:
    radial-gradient(circle at 50% 0,rgba(244,122,22,.12),transparent 26rem),
    #07090b!important;
}
.auth-card,.auth-shell,#authGate>div{
  max-width:420px!important;
  background:linear-gradient(180deg,#11171b,#0c1013)!important;
  border:1px solid #343c42!important;
  border-radius:18px!important;
  padding:24px!important;
  box-shadow:0 24px 80px rgba(0,0,0,.42)!important;
}
.gc-auth-brand{
  display:flex;
  justify-content:center;
  padding:0 0 18px;
  margin-bottom:18px;
  border-bottom:1px solid #2a3136;
}
.gc-auth-logo{
  width:250px;
  max-width:82%;
  height:auto;
  object-fit:contain;
}
.auth-card h1,.auth-shell h1{
  font-size:1.7rem!important;
  text-align:center!important;
  margin-top:6px!important;
}
.auth-card h1:after,.auth-shell h1:after{margin-left:auto!important;margin-right:auto!important}
.auth-card p,.auth-shell p{text-align:center!important;color:#aab5bb!important}

/* HOME HERO */
.gc-home-brandbar{
  display:flex;
  align-items:center;
  gap:14px;
  margin:4px 0 24px;
  padding:14px 16px;
  background:linear-gradient(90deg,#11171a,#0c1013);
  border:1px solid #2d353a;
  border-radius:12px;
}
.gc-home-brandbar img{
  width:100px;
  height:64px;
  object-fit:contain;
}
.gc-home-brandbar strong{
  display:block;
  color:#fff;
  font-size:.78rem;
  letter-spacing:.12em;
}
.gc-home-brandbar span{
  display:block;
  color:#f0a05a;
  font-size:.68rem;
  margin-top:3px;
}
#home h1{
  font-size:clamp(2rem,4vw,3.05rem)!important;
  max-width:920px!important;
  line-height:1.02!important;
  margin-bottom:12px!important;
}
#home>p{font-size:1rem!important;max-width:760px!important}

/* TYPOGRAPHY */
h1,h2,h3{
  font-family:Inter,ui-sans-serif,system-ui!important;
  font-weight:750!important;
  color:#f7f8f8!important;
  text-shadow:none!important;
}
h1:after{
  background:linear-gradient(90deg,var(--gc-orange),#9a531e)!important;
  width:44px!important;
  height:2px!important;
}
.eyebrow{
  color:#f39a4d!important;
  font-size:.58rem!important;
  font-weight:800!important;
  letter-spacing:.15em!important;
}
p{color:#b7c0c5!important}
small,.muted,.subtle,.helper{color:#828f96!important}

/* HOME NAV CARDS */
.tiles{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  margin-top:28px!important;
}
.tiles button{
  min-height:94px!important;
  padding:18px 20px!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.015),transparent),
    #12181c!important;
  border:1px solid #303941!important;
  border-radius:12px!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
  position:relative!important;
  overflow:hidden!important;
}
.tiles button:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(180deg,var(--gc-orange),#9d5421);
}
.tiles button:hover{
  background:#171e23!important;
  border-color:#4a545b!important;
  transform:translateY(-1px)!important;
}
.tiles button strong{
  font-size:.86rem!important;
  font-weight:700!important;
  color:#f7f8f8!important;
}
.tiles button small{
  font-size:.64rem!important;
  color:#909ca3!important;
  margin-top:5px!important;
}
.tiles button b{
  font-size:1.45rem!important;
  filter:saturate(.85)!important;
}

/* SHARED PANELS */
.panel,.choice,.condition,.rock,.validation-panel,.validation-summary,
.contractor-status,.contractor-account-row,.reviewed-validation-row,
.validation-record-audit,.savedcard,.location-summary{
  background:linear-gradient(180deg,#141a1f,#101519)!important;
  border:1px solid #313a40!important;
  border-radius:11px!important;
  box-shadow:none!important;
}
.panel,.validation-panel,.validation-summary,.contractor-status{
  padding:15px!important;
}
.panel:hover,.contractor-account-row:hover,.reviewed-validation-row:hover{
  border-color:#454f56!important;
}

/* BUTTONS */
button,.btn{
  border-radius:8px!important;
  font-weight:700!important;
  box-shadow:none!important;
}
.cta,.primary,.btn-primary,#signIn,#find,#toDepth,#predict{
  background:linear-gradient(180deg,#f58a2d,#e66b0f)!important;
  color:#15100c!important;
  border:1px solid #ff9b49!important;
}
.cta:hover,.primary:hover,#signIn:hover,#find:hover,#toDepth:hover,#predict:hover{
  filter:brightness(1.06)!important;
}
.secondary,.btn-secondary{
  background:#1a2126!important;
  color:#e7ebed!important;
  border:1px solid #404b52!important;
}
.secondary:hover{background:#222b31!important}

/* INPUTS */
input,select,textarea{
  background:#0a0e11!important;
  color:#eef1f2!important;
  border:1px solid #414b52!important;
  border-radius:9px!important;
}
input::placeholder,textarea::placeholder{color:#69757c!important}
input:focus,select:focus,textarea:focus{
  border-color:#ef7b1f!important;
  box-shadow:0 0 0 2px rgba(244,122,22,.12)!important;
  outline:none!important;
}

/* QUICK LOOKUP */
#quick .choice{
  padding:14px!important;
  background:#11171b!important;
}
.address-suggestions{
  background:#0c1114!important;
  border:1px solid #4a5055!important;
  border-radius:9px!important;
  box-shadow:0 16px 36px rgba(0,0,0,.52)!important;
}
.address-suggestion{
  background:#151b1f!important;
  border-color:#343c42!important;
}
.address-suggestion:hover,.address-suggestion.active{
  background:#201811!important;
  border-color:#f47a16!important;
}
.address-suggestion .address-pin{color:#f47a16!important}
.address-suggestion strong{
  color:#fff!important;
  font-weight:500!important;
}
.address-suggestion small{
  color:#a6b0b6!important;
  font-weight:400!important;
}

/* MAP */
.map{
  border:1px solid #3a4248!important;
  border-radius:12px!important;
  overflow:hidden!important;
  box-shadow:0 12px 28px rgba(0,0,0,.18)!important;
}
.location-summary{
  margin-top:10px!important;
}
.location-summary strong{color:#fff!important}

/* DEPTH */
.depth-box{
  background:linear-gradient(180deg,#151c21,#101519)!important;
  border:1px solid #333d43!important;
  border-radius:12px!important;
}
.depth-box>strong{
  color:#fff!important;
  font-size:3.25rem!important;
}
input[type="range"]{accent-color:#f47a16!important}
.presets button{
  background:#171e23!important;
  border:1px solid #3b454c!important;
  color:#fff!important;
}
.presets button:hover{border-color:#ef7b1f!important}

/* RESULT PAGE */
.resulttop{
  border-bottom:1px solid #2c3338!important;
}
.confidence{
  background:#111811!important;
  border:1px solid #3f5b43!important;
  border-radius:12px!important;
}
.confidence strong{color:#6ed99d!important}
.condition{
  border-left:3px solid #f47a16!important;
}
.metric,.validation-metric,.status-grid>div,.soilgrid>div{
  background:#0c1114!important;
  border:1px solid #313a40!important;
  border-radius:8px!important;
}
.metric strong,.validation-metric strong{color:#fff!important}

/* Validation Lab */
.validation-progressbar,.bar,.confidence-bar{
  background:#090d10!important;
}
.validation-progressbar i,.bar i,.confidence-bar i{
  background:linear-gradient(90deg,#ef7a20,#f2a15c)!important;
}
.source-badge{
  background:#15100b!important;
  color:#f3a15d!important;
  border-color:#6e3d18!important;
}
.good,.approved,.status-approved{color:#62d79c!important}
.warn,.pending,.status-pending{color:#e5ae48!important}
.rejected,.status-rejected,.danger{color:#df6a62!important}

/* Remove stale text-only GroundPredict branding where image brand exists */
.brand:not(.brand--image)>strong,
.brand:not(.brand--image)>small{display:none!important}

/* MOBILE */
@media(max-width:760px){
  header,.topbar,.site-header{
    height:64px!important;
    min-height:64px!important;
    padding:0 12px!important;
  }
  .gc-header-logo{width:122px!important;height:44px!important}
  .gc-main{padding-left:12px!important;padding-right:12px!important}
  .tiles{grid-template-columns:1fr!important}
  .tiles button{min-height:78px!important}
  .gc-home-brandbar{padding:10px 12px!important}
  .gc-home-brandbar img{width:78px!important;height:50px!important}
  #home h1{font-size:2rem!important}
  .auth-card,.auth-shell,#authGate>div{padding:18px!important}
}

/* ==================================================================
   GroundPredict v1.15.0 — Contractor Beta Brand System
   NEW approved brand palette:
   carbon black / charcoal / white / steel / GroundPredict teal.
   Orange is removed from the core UI.
   ================================================================== */
:root{
  --gc-black:#050708;
  --gc-bg:#071015;
  --gc-bg2:#09151b;
  --gc-surface:#0e1b21;
  --gc-surface2:#12242b;
  --gc-surface3:#172d34;
  --gc-line:#28515a;
  --gc-line-soft:#1c3a42;
  --gc-teal:#3ebca9;
  --gc-teal-bright:#54d9c5;
  --gc-teal-deep:#237e73;
  --gc-white:#f7f8f8;
  --gc-silver:#c6ced1;
  --gc-copy:#a7b9bf;
  --gc-muted:#72888f;
  --gc-success:#62d89e;
  --gc-warning:#e0b04c;
  --gc-danger:#df6860;
}

html,body{
  background:
    radial-gradient(circle at 50% -120px,rgba(62,188,169,.10),transparent 420px),
    linear-gradient(180deg,#05090b 0%,#071116 100%)!important;
  color:var(--gc-white)!important;
}

/* ---------- UNIVERSAL HEADER BRAND ---------- */
header,.topbar,.site-header{
  height:82px!important;
  min-height:82px!important;
  background:#050809!important;
  border-top:2px solid var(--gc-teal)!important;
  border-bottom:1px solid #18373e!important;
  padding:7px 20px!important;
}
.brand--image{
  height:100%!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
.gc-header-logo{
  width:132px!important;
  height:68px!important;
  object-fit:contain!important;
  object-position:left center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.gc-version{
  background:#08251f!important;
  color:#68decb!important;
  border:1px solid #2b776c!important;
  font-size:.52rem!important;
}
header a,.topbar a{
  color:#b8c8cd!important;
  font-weight:500!important;
}
header a:hover,.topbar a:hover{color:#fff!important}

/* ---------- LOGIN ---------- */
#authGate{
  background:
    radial-gradient(circle at 50% -40px,rgba(62,188,169,.14),transparent 310px),
    #05090b!important;
}
.auth-card,.auth-shell,#authGate>div{
  background:linear-gradient(180deg,#0e191e,#091116)!important;
  border:1px solid #28505a!important;
  box-shadow:0 28px 70px rgba(0,0,0,.48)!important;
}
.gc-auth-brand{
  border-bottom:1px solid #224047!important;
  padding-bottom:18px!important;
}
.gc-auth-logo{
  width:310px!important;
  max-width:94%!important;
  height:auto!important;
}
.auth-card h1,.auth-shell h1{
  font-size:1.55rem!important;
  margin-top:12px!important;
}
.auth-card h1:after,.auth-shell h1:after{
  background:var(--gc-teal)!important;
}
.auth-status.ready{
  background:#08231d!important;
  border-color:#267262!important;
  color:#66d9b7!important;
}

/* ---------- HOME BRAND PANEL ---------- */
.gc-home-brandbar{
  background:linear-gradient(135deg,#0d171c,#101e23)!important;
  border:1px solid #2b515a!important;
  border-left:3px solid var(--gc-teal)!important;
  padding:15px 18px!important;
}
.gc-home-brandbar img{
  width:132px!important;
  height:86px!important;
  object-fit:contain!important;
}
.gc-home-brandbar strong{
  color:#f2f5f5!important;
  font-size:.75rem!important;
}
.gc-home-brandbar span{
  color:#63d8c5!important;
}
#home h1{
  color:#fff!important;
  text-shadow:none!important;
}
h1:after{
  background:linear-gradient(90deg,var(--gc-teal),transparent)!important;
}

/* ---------- BRAND LABELS ---------- */
.eyebrow{
  color:var(--gc-teal-bright)!important;
}
.source-badge{
  background:#09231f!important;
  border-color:#2b7167!important;
  color:#65dcca!important;
}

/* ---------- CARDS ---------- */
.tiles button,
.panel,.choice,.condition,.rock,.validation-panel,.validation-summary,
.contractor-status,.contractor-account-row,.reviewed-validation-row,
.validation-record-audit,.savedcard,.location-summary,.depth-box{
  background:linear-gradient(180deg,#102028,#0c191f)!important;
  border:1px solid #2b4f59!important;
  box-shadow:none!important;
}
.tiles button{
  border-radius:10px!important;
}
.tiles button:before{
  background:linear-gradient(180deg,var(--gc-teal),#236e65)!important;
}
.tiles button:hover,
.panel:hover,.contractor-account-row:hover,.reviewed-validation-row:hover{
  background:#13272e!important;
  border-color:#3b6974!important;
}
.tiles button strong{color:#f7f9f9!important}
.tiles button small{color:#8eabb3!important}

/* ---------- PRIMARY ACTIONS ---------- */
.cta,.primary,.btn-primary,#signIn,#find,#toDepth,#predict{
  background:linear-gradient(180deg,#53d7c3,#35bba7)!important;
  color:#04100e!important;
  border:1px solid #6ce2d0!important;
  box-shadow:none!important;
}
.cta:hover,.primary:hover,#signIn:hover,#find:hover,#toDepth:hover,#predict:hover{
  background:linear-gradient(180deg,#64e0ce,#41c7b3)!important;
}
.secondary,.btn-secondary{
  background:#14252b!important;
  color:#ecf2f3!important;
  border:1px solid #355b65!important;
}
.secondary:hover,.btn-secondary:hover{background:#1a3038!important}

/* ---------- INPUTS ---------- */
input,select,textarea{
  background:#071116!important;
  border:1px solid #315761!important;
  color:#f2f5f5!important;
}
input:focus,select:focus,textarea:focus{
  border-color:var(--gc-teal)!important;
  box-shadow:0 0 0 2px rgba(62,188,169,.13)!important;
}
input::placeholder,textarea::placeholder{color:#688087!important}

/* ---------- QUICK SEARCH ---------- */
.address-suggestions{
  background:#071216!important;
  border-color:#377068!important;
}
.address-suggestion{
  background:#102128!important;
  border-color:#28515b!important;
}
.address-suggestion:hover,.address-suggestion.active{
  background:#15332f!important;
  border-color:#4cd1bd!important;
}
.address-suggestion .address-pin{color:#54d9c5!important}
.address-suggestion strong{color:#fff!important}
.address-suggestion small{color:#9ab5bb!important}

/* ---------- MAP / LOCATION ---------- */
.map{
  border-color:#36636d!important;
}
.location-summary{
  border-left:3px solid var(--gc-teal)!important;
}

/* ---------- WORKING DEPTH ---------- */
input[type="range"]{accent-color:var(--gc-teal)!important}
.presets button{
  background:#102229!important;
  border:1px solid #315a64!important;
}
.presets button:hover{
  border-color:#54d9c5!important;
  background:#163038!important;
}
.depth-box>strong{color:#fff!important}

/* ---------- RESULT / EVIDENCE ---------- */
.confidence{
  background:#09231c!important;
  border-color:#337463!important;
}
.confidence strong{color:#66ddba!important}
.condition{
  border-left:3px solid var(--gc-teal)!important;
}
.metric,.validation-metric,.status-grid>div,.soilgrid>div{
  background:#08161b!important;
  border-color:#274a54!important;
}
.validation-progressbar i,.bar i,.confidence-bar i{
  background:linear-gradient(90deg,#2fac99,#59dac7)!important;
}
progress{accent-color:var(--gc-teal)!important}

/* ---------- SEMANTIC STATUS ONLY ---------- */
.good,.approved,.status-approved{color:var(--gc-success)!important}
.warn,.pending,.status-pending{color:var(--gc-warning)!important}
.rejected,.status-rejected,.danger{color:var(--gc-danger)!important}

/* ---------- PAGE STRUCTURE ---------- */
.gc-main{
  max-width:1180px!important;
}
.view{
  padding-top:22px!important;
}
h1,h2,h3{
  text-shadow:none!important;
}
p,.validation-intro{
  color:#abc0c6!important;
}

/* No old orange remains as a brand/action color */
button[style*="orange"], .orange, .brand-orange{
  color:inherit!important;
}

/* ---------- MOBILE ---------- */
@media(max-width:760px){
  header,.topbar,.site-header{
    height:70px!important;
    min-height:70px!important;
    padding:5px 10px!important;
  }
  .gc-header-logo{
    width:105px!important;
    height:58px!important;
  }
  .gc-version{font-size:.48rem!important}
  .gc-auth-logo{
    width:270px!important;
  }
  .gc-home-brandbar img{
    width:96px!important;
    height:66px!important;
  }
  .gc-home-brandbar{
    gap:10px!important;
    padding:10px 12px!important;
  }
}

/* ===============================================================
   GroundPredict v1.15.1 — Beta UI Polish
   Target: approved contractor-beta mockup.
   One brand, one header system, compact professional field UI.
   =============================================================== */

/* Global geometry */
.gc-main{
  max-width:1200px!important;
  padding:0 24px 48px!important;
}
.view{
  padding-top:26px!important;
}
h1{
  font-size:clamp(1.8rem,3.2vw,2.65rem)!important;
  line-height:1.05!important;
  margin-bottom:10px!important;
}
h1:after{display:none!important}
.eyebrow{
  font-size:.61rem!important;
  letter-spacing:.13em!important;
  margin-bottom:7px!important;
}

/* Header = actual logo everywhere, never plain text GroundPredict */
header,.topbar,.site-header{
  height:74px!important;
  min-height:74px!important;
  padding:6px 24px!important;
  border-top:0!important;
  border-bottom:1px solid #24434a!important;
  background:#05090b!important;
}
.gc-header-logo{
  width:154px!important;
  height:58px!important;
  object-fit:contain!important;
}
.gc-version{
  margin-left:4px!important;
  font-size:.54rem!important;
  padding:3px 8px!important;
}
/* Hide any legacy text branding that survived markup */
.brand--image strong,.brand--image small,
.brand--image .gc-brandmark{display:none!important}

/* Login: no duplicate branding; one full logo */
#authGate header,#authGate .topbar,#authGate .site-header{display:none!important}
.auth-card,.auth-shell,#authGate>div{
  width:min(94vw,390px)!important;
  padding:24px 26px!important;
  border-radius:14px!important;
}
.gc-auth-brand{
  padding:0 0 14px!important;
  margin:0 0 16px!important;
}
.gc-auth-logo{
  width:245px!important;
  max-width:88%!important;
}
.auth-card h1,.auth-shell h1{
  font-size:1.45rem!important;
  line-height:1.08!important;
  max-width:310px!important;
  margin:10px auto 12px!important;
}
.auth-card p,.auth-shell p{
  font-size:.78rem!important;
  margin-bottom:18px!important;
}
.auth-card input,.auth-shell input{
  min-height:44px!important;
}
.auth-card button,.auth-shell button{
  min-height:43px!important;
}
.auth-status{
  font-size:.62rem!important;
}

/* Dashboard hero like approved mockup */
#home{
  position:relative!important;
  padding-top:38px!important;
}
#home .eyebrow{
  color:#55d8c5!important;
}
#home h1{
  max-width:650px!important;
  font-size:clamp(2rem,4.2vw,3rem)!important;
  line-height:1.04!important;
}
#home>p{
  max-width:600px!important;
  font-size:.9rem!important;
  margin-top:15px!important;
}
#home .tiles{
  max-width:850px!important;
  margin-top:34px!important;
  gap:12px!important;
}
.tiles button{
  min-height:88px!important;
  padding:17px 20px!important;
  border-radius:9px!important;
}
.tiles button:before{width:2px!important}
.tiles button strong{font-size:.82rem!important}
.tiles button small{font-size:.63rem!important}

/* Quick check */
#quick .choice{
  display:grid!important;
  grid-template-columns:minmax(190px,.8fr) 28px minmax(300px,1.4fr)!important;
  align-items:center!important;
  gap:10px!important;
  padding:14px!important;
  border-radius:9px!important;
}
#quick .map{
  margin-top:14px!important;
}
.map{border-radius:8px!important}
.location-summary{
  border-radius:8px!important;
  padding:12px!important;
}
#quick .cta{
  min-height:44px!important;
  margin-top:12px!important;
}

/* Depth */
.depth-box{
  padding:22px!important;
  border-radius:9px!important;
}
.depth-box>strong{
  font-size:3.5rem!important;
  line-height:1!important;
}
.presets{
  gap:8px!important;
  margin-top:10px!important;
}
.presets button{
  min-width:62px!important;
  min-height:36px!important;
  border-radius:6px!important;
}
#depth .cta{
  margin-top:20px!important;
  min-height:45px!important;
}

/* Results: denser dashboard grid like mockup */
#results{
  max-width:1180px!important;
}
.resulttop{
  display:grid!important;
  grid-template-columns:1fr auto!important;
  align-items:start!important;
  gap:20px!important;
  padding-bottom:16px!important;
}
.confidence{
  min-width:190px!important;
  padding:14px 18px!important;
  text-align:center!important;
}
.confidence strong{
  font-size:2rem!important;
}
#results .panel,
#results .condition,
#results .rock{
  border-radius:8px!important;
}
#results .panel{
  padding:14px!important;
  margin-top:10px!important;
}
#results .soilgrid,
#results .status-grid{
  gap:10px!important;
}
.metric,.validation-metric,.status-grid>div,.soilgrid>div{
  border-radius:7px!important;
  padding:11px!important;
}

/* Clean cards, thinner borders, teal hierarchy */
.panel,.choice,.condition,.rock,.validation-panel,.validation-summary,
.contractor-status,.contractor-account-row,.reviewed-validation-row,
.validation-record-audit,.savedcard,.location-summary,.depth-box{
  border-color:#27474f!important;
}
.panel:hover,.contractor-account-row:hover,.reviewed-validation-row:hover{
  border-color:#3b686f!important;
}
.cta,.primary,.btn-primary,#signIn,#find,#toDepth,#predict{
  background:linear-gradient(90deg,#43c7b4,#2fb49f)!important;
  border-color:#56d3c0!important;
  color:#03110f!important;
}
input,select,textarea{
  border-color:#315159!important;
}
input:focus,select:focus,textarea:focus{
  border-color:#45cbb7!important;
}

/* Responsive */
@media(max-width:760px){
  .gc-main{padding-left:14px!important;padding-right:14px!important}
  header,.topbar,.site-header{
    height:66px!important;min-height:66px!important;padding:4px 12px!important;
  }
  .gc-header-logo{width:126px!important;height:52px!important}
  #quick .choice{
    grid-template-columns:1fr!important;
  }
  #quick .choice>span{display:none!important}
  .resulttop{grid-template-columns:1fr!important}
  .confidence{width:100%!important}
  #home{padding-top:24px!important}
  #home .tiles{grid-template-columns:1fr!important}
}

/* ===========================================================
   GroundPredict v1.15.2 — Structural Brand UI
   Actual logo header + pure black contractor-beta visual system
   =========================================================== */
:root{
 --gc1152-black:#020405;
 --gc1152-panel:#060a0c;
 --gc1152-panel2:#090f12;
 --gc1152-line:#253338;
 --gc1152-teal:#19c7ad;
 --gc1152-teal2:#35dbc3;
 --gc1152-text:#f5f7f7;
 --gc1152-copy:#b9c1c4;
 --gc1152-muted:#7e8b90;
}
html,body{
 background:#020405!important;
 color:var(--gc1152-text)!important;
}
body{background-image:none!important}
.gc-main{
 max-width:1180px!important;
 padding:0 20px 50px!important;
}

/* REAL APP HEADER */
.gc-app-header{
 height:72px!important;
 min-height:72px!important;
 padding:6px 20px!important;
 display:flex!important;
 align-items:center!important;
 justify-content:space-between!important;
 background:#020405!important;
 border-top:0!important;
 border-bottom:1px solid #203238!important;
}
.gc-header-left{
 display:flex!important;
 align-items:center!important;
 gap:10px!important;
 height:100%!important;
}
.gc-app-logo{
 width:165px!important;
 height:58px!important;
 object-fit:contain!important;
 object-position:left center!important;
 display:block!important;
}
.gc-header-version{
 color:#58dec9!important;
 border:1px solid #267769!important;
 background:#061b17!important;
 border-radius:999px!important;
 padding:3px 8px!important;
 font-size:.54rem!important;
 font-weight:800!important;
}
.gc-header-nav{display:flex!important;align-items:center!important;gap:14px!important}
.gc-header-nav .navbtn{
 background:transparent!important;
 border:0!important;
 padding:8px 3px!important;
 color:#d7dcde!important;
 min-height:auto!important;
}
.gc-header-nav .navbtn:hover{color:#55dbc7!important}

/* LOGIN — one logo only */
.auth-card{
 background:#030607!important;
 border:1px solid #273a3f!important;
 box-shadow:0 30px 80px rgba(0,0,0,.55)!important;
}
.gc-auth-logo{
 width:265px!important;
 max-width:88%!important;
}
.gc-auth-brand{border-bottom:0!important;margin-bottom:5px!important}
.auth-card h1{font-size:1.55rem!important;margin-top:6px!important}
.auth-card input{background:#020506!important}
.auth-card .secondary{background:#050a0c!important}
.auth-status.ready{background:#03130f!important;border-color:#1e6c5d!important}

/* HOME */
#home{padding-top:30px!important}
.gc-home-hero{
 display:grid!important;
 grid-template-columns:minmax(0,1fr) 270px!important;
 gap:34px!important;
 align-items:center!important;
 min-height:240px!important;
 padding:24px 0 14px!important;
}
.gc-home-copy h1{
 font-size:clamp(2.2rem,4vw,3.15rem)!important;
 line-height:1.04!important;
 max-width:700px!important;
 margin:7px 0 14px!important;
}
.gc-home-copy p{
 max-width:620px!important;
 font-size:.92rem!important;
}
.gc-home-mark{
 width:250px!important;
 max-height:210px!important;
 object-fit:contain!important;
 justify-self:end!important;
 opacity:.98!important;
}
#home .tiles{
 max-width:900px!important;
 grid-template-columns:1fr 1fr!important;
 gap:12px!important;
 margin-top:20px!important;
}
.tiles button{
 background:#040708!important;
 border:1px solid #273439!important;
 min-height:86px!important;
 border-radius:8px!important;
}
.tiles button:before{display:none!important}
.tiles button:hover{
 background:#07100f!important;
 border-color:#1d8e7e!important;
}
.tiles button strong{font-size:.88rem!important}
.tiles button small{color:#a1abad!important}

/* PAGE TITLES */
.view{padding-top:24px!important}
.eyebrow{color:#25cbb2!important}
h1,h2,h3{color:#f8f9f9!important}
.back{color:#51d5c1!important}

/* PANELS */
.panel,.choice,.condition,.rock,.validation-panel,.validation-summary,
.contractor-status,.contractor-account-row,.reviewed-validation-row,
.validation-record-audit,.savedcard,.location-summary,.depth-box{
 background:#05090b!important;
 border:1px solid #27363b!important;
 border-radius:8px!important;
}
.panel:hover,.contractor-account-row:hover,.reviewed-validation-row:hover{
 border-color:#33746d!important;
}

/* INPUTS / BUTTONS */
input,select,textarea{
 background:#020506!important;
 border:1px solid #304146!important;
 color:#fff!important;
}
input:focus,select:focus,textarea:focus{
 border-color:#24c9b0!important;
 box-shadow:0 0 0 2px rgba(25,199,173,.11)!important;
}
.cta,.primary,.btn-primary,#signIn,#find,#toDepth,#predict{
 background:linear-gradient(90deg,#16bda4,#28cdb3)!important;
 border:1px solid #34d9c0!important;
 color:#02100d!important;
}
.secondary,.btn-secondary{
 background:#04090b!important;
 border:1px solid #34464b!important;
 color:#f1f3f3!important;
}

/* QUICK */
#quick .choice{
 background:#040708!important;
 grid-template-columns:minmax(180px,.8fr) 28px minmax(310px,1.45fr)!important;
 border-radius:8px!important;
}
#gps{
 background:#030807!important;
 border:1px solid #20a995!important;
 color:#fff!important;
}
.map{border:1px solid #2b3a3f!important;border-radius:8px!important}
.location-summary{border-left:1px solid #27363b!important}

/* DEPTH */
.depth-box{background:#05090b!important}
input[type="range"]{accent-color:#1ec8af!important}
.presets button{
 background:#030708!important;
 border:1px solid #304247!important;
 color:#fff!important;
}
.presets button:hover{border-color:#22c9b0!important}

/* RESULTS — black dashboard */
#results .resulttop{
 border-bottom:1px solid #233136!important;
 margin-bottom:10px!important;
}
.confidence{
 background:#020807!important;
 border:1px solid #1fae97!important;
}
.confidence strong{color:#27d3b9!important}
.condition{border-left:1px solid #27363b!important}
#results .panel,#results .condition,#results .rock{
 background:#040708!important;
 border-color:#273439!important;
}
.metric,.validation-metric,.status-grid>div,.soilgrid>div{
 background:#020506!important;
 border-color:#253337!important;
}
.validation-progressbar i,.bar i,.confidence-bar i{
 background:#22c9b0!important;
}
.source-badge{
 background:#03110e!important;
 color:#35d7bf!important;
 border-color:#1c7164!important;
}

/* Autocomplete */
.address-suggestions{background:#020506!important;border-color:#2d4f4b!important}
.address-suggestion{background:#050a0c!important;border-color:#26363a!important}
.address-suggestion:hover,.address-suggestion.active{
 background:#071511!important;border-color:#23b9a3!important;
}

/* MOBILE */
@media(max-width:760px){
 .gc-app-header{height:66px!important;min-height:66px!important;padding:4px 10px!important}
 .gc-app-logo{width:128px!important;height:52px!important}
 .gc-home-hero{grid-template-columns:1fr!important;min-height:auto!important;padding-top:12px!important}
 .gc-home-mark{display:none!important}
 #home .tiles{grid-template-columns:1fr!important}
 #quick .choice{grid-template-columns:1fr!important}
}

/* ==============================================================
   GroundPredict v1.15.3 — Header Scale + Layout Polish
   Keeps v1.15.2 visual language; improves hierarchy and readability.
   ============================================================== */

/* GLOBAL CANVAS / CONTENT WIDTH */
.gc-main{
  max-width:1280px!important;
  padding-left:28px!important;
  padding-right:28px!important;
  padding-bottom:56px!important;
}
.view{
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* HEADER: larger, clearer primary identity */
.gc-app-header{
  height:92px!important;
  min-height:92px!important;
  padding:8px 28px!important;
  border-bottom:1px solid #23363b!important;
}
.gc-header-left{
  gap:12px!important;
}
.gc-app-logo{
  width:215px!important;
  height:76px!important;
  object-fit:contain!important;
  object-position:left center!important;
}
.gc-header-version{
  font-size:.58rem!important;
  padding:4px 9px!important;
  margin-left:2px!important;
}
.gc-header-nav{
  gap:18px!important;
}
.gc-header-nav .navbtn{
  font-size:.78rem!important;
}

/* LOGIN: keep one strong centered logo, slightly tighter */
.auth-card,.auth-shell,#authGate>div{
  width:min(94vw,410px)!important;
}
.gc-auth-logo{
  width:285px!important;
  max-width:92%!important;
}
.auth-card h1,.auth-shell h1{
  margin-top:8px!important;
  font-size:1.58rem!important;
}
.auth-card p,.auth-shell p{
  margin-bottom:16px!important;
}

/* HOME: remove duplicate visual logo and tighten hero */
#home{
  padding-top:26px!important;
}
.gc-home-hero{
  display:block!important;
  min-height:auto!important;
  padding:18px 0 8px!important;
}
.gc-home-copy{
  max-width:780px!important;
}
.gc-home-copy h1{
  font-size:clamp(2.3rem,4.2vw,3.35rem)!important;
  line-height:1.02!important;
  max-width:760px!important;
  margin-bottom:14px!important;
}
.gc-home-copy p{
  max-width:660px!important;
  font-size:.95rem!important;
}
.gc-home-mark{
  display:none!important;
}
#home .tiles{
  max-width:960px!important;
  margin-top:28px!important;
  gap:12px!important;
}
.tiles button{
  min-height:92px!important;
  padding:18px 20px!important;
}
.tiles button strong{
  font-size:.9rem!important;
}
.tiles button small{
  font-size:.65rem!important;
  line-height:1.35!important;
}

/* QUICK / DEPTH PAGE GEOMETRY */
#quick,#depth{
  max-width:1080px!important;
}
#quick .choice{
  padding:16px!important;
}
#quick .map{
  margin-top:14px!important;
}
#quick .cta,#depth .cta{
  min-height:48px!important;
  font-size:.82rem!important;
}
#depth .depth-box{
  padding:24px!important;
}
#depth .depth-box>strong{
  font-size:3.8rem!important;
}
#depth .presets button{
  min-height:38px!important;
  min-width:66px!important;
}

/* RESULTS: make dashboard easier to read at desktop size */
#results{
  max-width:1240px!important;
}
#results .resulttop{
  gap:26px!important;
  padding-top:4px!important;
  padding-bottom:18px!important;
}
#results .resulttop h1{
  font-size:2.1rem!important;
}
#results .resulttop p{
  font-size:.78rem!important;
}
#results .confidence{
  min-width:220px!important;
  padding:16px 20px!important;
}
#results .confidence small{
  font-size:.56rem!important;
}
#results .confidence strong{
  font-size:2.25rem!important;
  line-height:1!important;
}
#results .confidence em{
  font-size:.7rem!important;
}
#results .panel,
#results .condition,
#results .rock{
  padding:16px!important;
  margin-top:12px!important;
}
#results .panel h3{
  font-size:.82rem!important;
  margin-bottom:10px!important;
}
#results small{
  font-size:.52rem!important;
}
#results strong{
  letter-spacing:0!important;
}
#results .metric,
#results .validation-metric,
#results .status-grid>div,
#results .soilgrid>div{
  padding:12px!important;
}
#results .notice{
  padding:12px 14px!important;
  font-size:.67rem!important;
  line-height:1.45!important;
}
#results .actions{
  gap:10px!important;
  margin-top:12px!important;
}
#results .actions button{
  min-height:42px!important;
}

/* VALIDATION / ADMIN SCREENS also inherit readable content width */
#admin,#contractor,#actual,#saved,#formations,#project{
  max-width:1180px!important;
}

/* MOBILE */
@media(max-width:760px){
  .gc-main{
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .gc-app-header{
    height:72px!important;
    min-height:72px!important;
    padding:5px 12px!important;
  }
  .gc-app-logo{
    width:150px!important;
    height:58px!important;
  }
  .gc-header-version{
    font-size:.48rem!important;
    padding:3px 7px!important;
  }
  .gc-header-nav{
    gap:9px!important;
  }
  .gc-home-copy h1{
    font-size:2.05rem!important;
  }
  #home .tiles{
    grid-template-columns:1fr!important;
  }
  #results .resulttop{
    grid-template-columns:1fr!important;
  }
  #results .confidence{
    width:100%!important;
    min-width:0!important;
  }
}

/* ============================================================
   GroundPredict v1.15.4 — Results Page Overhaul
   Keeps all current data/logic; rebuilds visual hierarchy only.
   ============================================================ */

/* RESULTS PAGE WIDTH + RHYTHM */
.gc-results-view{
  max-width:1240px!important;
  padding-top:22px!important;
}
.gc-results-view>.back{
  margin-bottom:8px!important;
  font-size:.72rem!important;
  font-weight:700!important;
}
.gc-results-view .eyebrow{
  font-size:.62rem!important;
  letter-spacing:.12em!important;
  margin-bottom:5px!important;
}

/* TOP SUMMARY */
.gc-results-view .resulttop{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 230px!important;
  gap:22px!important;
  align-items:start!important;
  padding:0 0 18px!important;
  margin-bottom:12px!important;
  border-bottom:1px solid #23363b!important;
}
.gc-results-view .resulttop h1{
  font-size:2.35rem!important;
  line-height:1.02!important;
  margin:2px 0 8px!important;
}
.gc-results-view .resulttop p{
  font-size:.82rem!important;
  color:#aebcc1!important;
  margin:0!important;
}
.gc-results-view .confidence{
  min-width:0!important;
  width:100%!important;
  padding:16px 18px!important;
  border-radius:9px!important;
  background:#020807!important;
  border:1px solid #1fae97!important;
}
.gc-results-view .confidence small{
  display:block!important;
  font-size:.56rem!important;
  color:#55d9c4!important;
  letter-spacing:.1em!important;
}
.gc-results-view .confidence strong{
  display:block!important;
  font-size:2.35rem!important;
  line-height:1!important;
  margin:7px 0 4px!important;
  color:#2ad2b8!important;
}
.gc-results-view .confidence em{
  font-size:.74rem!important;
  color:#dfe7e8!important;
}

/* LIKELY CONDITION */
.gc-results-view .condition{
  padding:15px 16px!important;
  margin:0 0 12px!important;
  border-radius:8px!important;
}
.gc-results-view .condition small{
  display:block!important;
  font-size:.56rem!important;
  color:#55d9c4!important;
  margin-bottom:5px!important;
}
.gc-results-view .condition strong{
  display:block!important;
  font-size:1.12rem!important;
  color:#fff!important;
  margin-bottom:4px!important;
}
.gc-results-view .condition em{
  font-size:.74rem!important;
  color:#aebbc0!important;
}

/* PANELS */
.gc-results-view .panel,
.gc-results-view .rock{
  margin-top:12px!important;
  padding:16px!important;
  border-radius:8px!important;
  background:#040708!important;
  border:1px solid #273439!important;
}
.gc-results-view .panel h3{
  font-size:.88rem!important;
  margin:0 0 12px!important;
  color:#f5f7f7!important;
}
.gc-results-view .panel>small,
.gc-results-view .rock small{
  font-size:.54rem!important;
  letter-spacing:.07em!important;
}

/* SOIL GRID */
.gc-results-view .soilgrid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}
.gc-results-view .soilgrid>div{
  min-height:88px!important;
  padding:12px!important;
  background:#020506!important;
  border:1px solid #253337!important;
  border-radius:7px!important;
}
.gc-results-view .soilgrid strong{
  display:block!important;
  font-size:.98rem!important;
  color:#fff!important;
  margin:4px 0!important;
}
.gc-results-view .soilgrid em,
.gc-results-view .soilgrid span{
  font-size:.68rem!important;
  color:#a9b6bb!important;
}

/* ROCK PANEL */
.gc-results-view .rock .twocol{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
}
.gc-results-view .rock .twocol>div,
.gc-results-view .transition,
.gc-results-view .rockindex{
  background:#020506!important;
  border:1px solid #253337!important;
  border-radius:7px!important;
  padding:12px!important;
}
.gc-results-view .rock .twocol strong,
.gc-results-view .transition strong,
.gc-results-view .rockindex strong{
  display:block!important;
  font-size:.98rem!important;
  margin:4px 0!important;
  color:#fff!important;
}
.gc-results-view .transition{
  margin-top:10px!important;
}
.gc-results-view .rockindex{
  margin-top:10px!important;
}
.gc-results-view .metrics{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
  margin-top:10px!important;
}
.gc-results-view .metrics>div{
  background:#020506!important;
  border:1px solid #253337!important;
  border-radius:7px!important;
  padding:10px!important;
}

/* EVIDENCE */
.gc-results-view #evidence{
  display:grid!important;
  gap:8px!important;
}
.gc-results-view #evidence>*{
  font-size:.7rem!important;
  line-height:1.4!important;
}
.gc-results-view .notice{
  margin-top:12px!important;
  padding:13px 15px!important;
  background:#05090b!important;
  border:1px solid #273439!important;
  border-radius:8px!important;
  font-size:.68rem!important;
  line-height:1.45!important;
  color:#aab7bc!important;
}

/* RESULTS ACTIONS */
.gc-results-view .actions{
  display:flex!important;
  gap:10px!important;
  margin-top:12px!important;
}
.gc-results-view .actions button{
  min-height:42px!important;
  padding:0 16px!important;
  font-size:.72rem!important;
}

/* MAKE ALL RESULT DATA READABLE */
.gc-results-view small{
  line-height:1.25!important;
}
.gc-results-view strong{
  line-height:1.15!important;
}
.gc-results-view em{
  line-height:1.3!important;
}

/* Results content should no longer inherit ultra-condensed legacy scale */
.gc-results-view *{
  text-rendering:optimizeLegibility;
}

/* MOBILE */
@media(max-width:900px){
  .gc-results-view .resulttop{
    grid-template-columns:1fr!important;
  }
  .gc-results-view .confidence{
    width:100%!important;
  }
  .gc-results-view .soilgrid{
    grid-template-columns:1fr 1fr!important;
  }
  .gc-results-view .metrics{
    grid-template-columns:1fr 1fr!important;
  }
}
@media(max-width:620px){
  .gc-results-view{
    padding-top:14px!important;
  }
  .gc-results-view .resulttop h1{
    font-size:1.9rem!important;
  }
  .gc-results-view .soilgrid,
  .gc-results-view .rock .twocol,
  .gc-results-view .metrics{
    grid-template-columns:1fr!important;
  }
  .gc-results-view .actions{
    flex-direction:column!important;
  }
  .gc-results-view .actions button{
    width:100%!important;
  }
}

/* ==========================================================
   GroundPredict v1.15.5 — Results Structural Rebuild
   New Results layout; old result IDs/data bindings preserved.
   ========================================================== */

.gc-results-v2{
  max-width:1120px!important;
  margin:0 auto!important;
  padding:24px 0 56px!important;
}
.gc-results-toolbar{
  margin-bottom:10px!important;
}
.gc-results-v2 .back{
  color:#58d7c4!important;
  font-size:.72rem!important;
  font-weight:700!important;
  padding-left:0!important;
}
.gc-results-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 230px!important;
  gap:18px!important;
  align-items:stretch!important;
  margin-bottom:14px!important;
}
.gc-results-title{
  padding:12px 0 10px!important;
}
.gc-results-title .eyebrow{
  margin-bottom:5px!important;
}
.gc-results-title h1{
  font-size:2.4rem!important;
  line-height:1.02!important;
  margin:0 0 8px!important;
}
.gc-results-title p{
  margin:0!important;
  color:#aab7bc!important;
  font-size:.82rem!important;
}
.gc-results-confidence{
  background:#030807!important;
  border:1px solid #1eab95!important;
  border-radius:9px!important;
  padding:16px 18px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.gc-results-confidence small{
  color:#54d9c4!important;
  font-size:.56rem!important;
  letter-spacing:.1em!important;
  font-weight:800!important;
}
.gc-results-confidence strong{
  color:#27d2b8!important;
  font-size:2.45rem!important;
  line-height:1!important;
  margin:8px 0 4px!important;
}
.gc-results-confidence em{
  color:#e3e8e9!important;
  font-size:.72rem!important;
}

.gc-results-section{
  background:#040708!important;
  border:1px solid #273439!important;
  border-radius:9px!important;
  padding:16px!important;
  margin-top:12px!important;
}
.gc-section-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-bottom:12px!important;
}
.gc-section-label{
  color:#46d5c0!important;
  font-size:.56rem!important;
  font-weight:800!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
}
.gc-section-head h2{
  margin:4px 0 0!important;
  font-size:1.1rem!important;
  line-height:1.15!important;
  color:#f7f8f8!important;
}
.gc-summary-card{
  padding:14px 16px!important;
}
.gc-summary-main strong{
  display:block!important;
  color:#fff!important;
  font-size:1.15rem!important;
  margin-top:5px!important;
}
.gc-summary-main span{
  display:block!important;
  color:#aab8bd!important;
  font-size:.72rem!important;
  margin-top:4px!important;
}

.gc-soil-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}
.gc-soil-grid>div{
  min-height:92px!important;
  background:#020506!important;
  border:1px solid #263439!important;
  border-radius:7px!important;
  padding:12px!important;
}
.gc-soil-grid small{
  display:block!important;
  color:#53d8c3!important;
  font-size:.52rem!important;
  letter-spacing:.07em!important;
}
.gc-soil-grid strong{
  display:block!important;
  color:#fff!important;
  font-size:.98rem!important;
  margin:5px 0 3px!important;
}
.gc-soil-grid em,
.gc-soil-grid span{
  color:#9dacb1!important;
  font-size:.67rem!important;
}

.gc-rock-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
}
.gc-data-card{
  background:#020506!important;
  border:1px solid #263439!important;
  border-radius:7px!important;
  padding:12px!important;
  min-height:90px!important;
}
.gc-data-card small{
  display:block!important;
  color:#53d8c3!important;
  font-size:.52rem!important;
  letter-spacing:.07em!important;
}
.gc-data-card strong{
  display:block!important;
  color:#fff!important;
  font-size:1rem!important;
  margin:5px 0 3px!important;
}
.gc-data-card span{
  color:#9dacb1!important;
  font-size:.67rem!important;
}
.gc-data-card-wide{
  grid-column:span 1!important;
}
.gc-rock-index-card>div{
  display:flex!important;
  align-items:baseline!important;
  gap:4px!important;
}
.gc-rock-index-card strong{
  font-size:1.5rem!important;
}
.gc-rock-index-card span{
  font-size:.72rem!important;
}

.gc-metrics-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
  margin-top:10px!important;
}
.gc-metrics-grid>div{
  background:#020506!important;
  border:1px solid #263439!important;
  border-radius:7px!important;
  padding:10px!important;
  min-height:70px!important;
}
.gc-metrics-grid small{
  font-size:.5rem!important;
  color:#7f9095!important;
}
.gc-metrics-grid strong{
  display:block!important;
  color:#fff!important;
  font-size:.9rem!important;
  margin-top:4px!important;
}

.gc-evidence-list{
  display:grid!important;
  gap:8px!important;
}
.gc-evidence-list>*{
  background:#020506!important;
  border:1px solid #263439!important;
  border-radius:7px!important;
  padding:10px 12px!important;
  font-size:.69rem!important;
  line-height:1.4!important;
  color:#c3cbce!important;
}
.gc-results-notice{
  margin-top:12px!important;
  background:#05090b!important;
  border:1px solid #273439!important;
  border-radius:8px!important;
  padding:12px 14px!important;
  font-size:.66rem!important;
  line-height:1.45!important;
  color:#9eacb1!important;
}
.gc-results-actions{
  display:flex!important;
  gap:10px!important;
  margin-top:12px!important;
}
.gc-results-actions button{
  min-height:42px!important;
  padding:0 16px!important;
  font-size:.72rem!important;
}

/* Prevent old Results selectors from forcing compressed layout */
#results .panel,
#results .rock,
#results .condition,
#results .resulttop,
#results .confidence{
  all:unset;
}
#results .gc-results-section,
#results .gc-results-confidence{
  box-sizing:border-box!important;
}
#results .soilgrid,
#results .metrics{
  margin:0!important;
}

/* Responsive */
@media(max-width:900px){
  .gc-results-hero{
    grid-template-columns:1fr!important;
  }
  .gc-results-confidence{
    width:100%!important;
  }
  .gc-soil-grid{
    grid-template-columns:1fr 1fr!important;
  }
  .gc-metrics-grid{
    grid-template-columns:1fr 1fr!important;
  }
}
@media(max-width:620px){
  .gc-results-v2{
    padding-top:16px!important;
  }
  .gc-results-title h1{
    font-size:1.9rem!important;
  }
  .gc-soil-grid,
  .gc-rock-grid,
  .gc-metrics-grid{
    grid-template-columns:1fr!important;
  }
  .gc-results-actions{
    flex-direction:column!important;
  }
  .gc-results-actions button{
    width:100%!important;
  }
}

/* v1.15.5.1 compatibility anchors: preserve v1.15.5 visual structure */
.gc-results-v2 .gc-summary-card.condition{
  background:#040708!important;
  border:1px solid #273439!important;
  border-radius:9px!important;
  padding:14px 16px!important;
}
.gc-results-v2 .gc-evidence-panel.panel{
  display:block!important;
  background:#040708!important;
  border:1px solid #273439!important;
  border-radius:9px!important;
  padding:16px!important;
  margin-top:12px!important;
}

/* ============================================================
   GroundPredict v1.15.6 — Contractor Results
   Visible contractor dashboard separated from hidden legacy DOM.
   ============================================================ */
.results-compatibility{
  display:none!important;
}
.gc-results-contractor{
  max-width:1160px!important;
  margin:0 auto!important;
  padding:22px 0 58px!important;
}
#contractorDashboardMount{
  width:100%!important;
}
.gc-contractor-result{
  width:100%!important;
  color:#f5f7f7!important;
}
.gc-result-topbar{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:12px!important;
  margin-bottom:10px!important;
}
.gc-result-topbar .back{
  color:#55d8c4!important;
  padding-left:0!important;
}
.gc-outline-btn{
  background:#030708!important;
  color:#58d9c5!important;
  border:1px solid #238b79!important;
  border-radius:7px!important;
  padding:8px 12px!important;
  font-size:.68rem!important;
}
.gc-result-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 230px!important;
  gap:16px!important;
  align-items:stretch!important;
  margin-bottom:12px!important;
}
.gc-result-heading{
  padding:10px 0!important;
}
.gc-result-heading h1{
  font-size:2.5rem!important;
  line-height:1!important;
  margin:5px 0 8px!important;
}
.gc-result-heading p{
  margin:0!important;
  color:#aab9bd!important;
  font-size:.8rem!important;
}
.gc-confidence-card{
  background:#020807!important;
  border:1px solid #1cb29a!important;
  border-radius:9px!important;
  padding:15px 18px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  text-align:center!important;
}
.gc-confidence-card small{
  color:#55d9c4!important;
  font-size:.55rem!important;
  font-weight:800!important;
  letter-spacing:.09em!important;
}
.gc-confidence-card strong{
  color:#29d4ba!important;
  font-size:2.45rem!important;
  line-height:1!important;
  margin:7px 0 4px!important;
}
.gc-confidence-card span{
  color:#e0e6e8!important;
  font-size:.7rem!important;
}
.gc-primary-summary,
.gc-jobsite-card,
.gc-depth-profile,
.gc-why-section{
  background:#040708!important;
  border:1px solid #273439!important;
  border-radius:9px!important;
  padding:16px!important;
  margin-top:12px!important;
}
.gc-primary-summary{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 190px!important;
  gap:18px!important;
  align-items:center!important;
}
.gc-section-kicker{
  color:#4fd7c2!important;
  font-size:.54rem!important;
  font-weight:800!important;
  letter-spacing:.11em!important;
}
.gc-summary-copy h2,
.gc-section-headline h2{
  margin:5px 0 0!important;
  color:#fff!important;
  font-size:1.12rem!important;
}
.gc-summary-copy p{
  margin:6px 0 0!important;
  color:#aab7bb!important;
  font-size:.72rem!important;
  line-height:1.4!important;
}
.gc-summary-risk{
  background:#020506!important;
  border:1px solid #26383c!important;
  border-radius:7px!important;
  padding:11px!important;
}
.gc-summary-risk small,
.gc-key-card small{
  display:block!important;
  color:#4fd7c2!important;
  font-size:.5rem!important;
  font-weight:800!important;
  letter-spacing:.07em!important;
}
.gc-summary-risk strong{
  display:block!important;
  font-size:1.1rem!important;
  margin:4px 0!important;
}
.gc-summary-risk span{
  color:#8ea0a5!important;
  font-size:.64rem!important;
}
.gc-section-headline{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:12px!important;
  margin-bottom:12px!important;
}
.gc-section-headline>span,
.gc-coordinate{
  color:#7e9298!important;
  font-size:.62rem!important;
}
.gc-jobsite-map{
  position:relative!important;
  height:300px!important;
  overflow:hidden!important;
  border-radius:7px!important;
  border:1px solid #28383d!important;
}
.gc-jobsite-map img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.gc-key-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  margin-top:12px!important;
}
.gc-key-card{
  background:#040708!important;
  border:1px solid #273439!important;
  border-radius:8px!important;
  padding:13px!important;
  min-height:94px!important;
}
.gc-key-card strong{
  display:block!important;
  color:#fff!important;
  font-size:1rem!important;
  margin:6px 0 4px!important;
}
.gc-key-card span{
  color:#96a7ac!important;
  font-size:.65rem!important;
  line-height:1.3!important;
}
.gc-depth-track{
  display:grid!important;
  gap:7px!important;
}
.gc-depth-row{
  display:grid!important;
  grid-template-columns:95px minmax(0,1fr) 65px!important;
  gap:12px!important;
  align-items:center!important;
  background:#020506!important;
  border:1px solid #243337!important;
  border-radius:7px!important;
  padding:10px 12px!important;
}
.gc-depth-range{
  color:#4fd7c2!important;
  font-size:.72rem!important;
  font-weight:800!important;
}
.gc-depth-material strong{
  display:block!important;
  color:#fff!important;
  font-size:.8rem!important;
}
.gc-depth-material span{
  display:block!important;
  color:#82959a!important;
  font-size:.58rem!important;
  margin-top:2px!important;
}
.gc-depth-confidence{
  text-align:right!important;
  color:#d8e0e2!important;
  font-size:.7rem!important;
  font-weight:700!important;
}
.gc-empty-profile{
  color:#99a8ad!important;
  font-size:.7rem!important;
  padding:10px!important;
}
.gc-why-section .evidence-gate,
.gc-why-section .authority-notice,
.gc-why-section .observed-evidence{
  margin-top:8px!important;
}
.gc-nearby-mount{
  margin-top:12px!important;
}
.gc-nearby-mount .panel{
  background:#040708!important;
  border:1px solid #273439!important;
  border-radius:9px!important;
  padding:16px!important;
}
.gc-technical-details{
  margin-top:12px!important;
  background:#040708!important;
  border:1px solid #273439!important;
  border-radius:9px!important;
  overflow:hidden!important;
}
.gc-technical-details>summary{
  list-style:none!important;
  cursor:pointer!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:14px!important;
  padding:15px 16px!important;
}
.gc-technical-details>summary::-webkit-details-marker{display:none!important}
.gc-technical-details>summary strong{
  display:block!important;
  color:#fff!important;
  font-size:.82rem!important;
}
.gc-technical-details>summary small{
  display:block!important;
  color:#86989d!important;
  font-size:.6rem!important;
  margin-top:3px!important;
}
.gc-technical-details>summary b{
  color:#50d7c2!important;
  font-size:.64rem!important;
}
.gc-technical-body{
  border-top:1px solid #233237!important;
  padding:14px!important;
}
.gc-technical-body>section,
.gc-technical-body>.panel,
.gc-technical-body>.card{
  margin-top:10px!important;
}
.gc-raw-evidence{
  background:#020506!important;
  border:1px solid #243337!important;
  border-radius:7px!important;
  padding:12px!important;
  margin-top:10px!important;
}
.gc-bottom-actions{
  display:flex!important;
  gap:10px!important;
  margin-top:12px!important;
}
.gc-bottom-actions button{
  flex:1!important;
  min-height:44px!important;
}
.report-disclaimer{
  margin-top:12px!important;
  color:#788b90!important;
  font-size:.62rem!important;
  line-height:1.45!important;
}

/* Dynamic legacy sections remain hidden in compatibility layer. */
#resultsCompatibility .panel,
#resultsCompatibility .legacy-detail,
#resultsCompatibility #nearbyFieldEvidencePanel{
  display:none;
}

@media(max-width:900px){
  .gc-result-hero,
  .gc-primary-summary{
    grid-template-columns:1fr!important;
  }
  .gc-key-grid{
    grid-template-columns:1fr 1fr!important;
  }
}
@media(max-width:620px){
  .gc-results-contractor{
    padding-top:14px!important;
  }
  .gc-result-heading h1{
    font-size:2rem!important;
  }
  .gc-key-grid{
    grid-template-columns:1fr!important;
  }
  .gc-jobsite-map{
    height:225px!important;
  }
  .gc-depth-row{
    grid-template-columns:78px 1fr!important;
  }
  .gc-depth-confidence{
    grid-column:2!important;
    text-align:left!important;
  }
  .gc-bottom-actions{
    flex-direction:column!important;
  }
}

/* ============================================================
   GroundPredict v1.15.6.1 — Restore contractor-visible lower report
   ============================================================ */
.gc-visible-confidence,
.gc-visible-behavior,
.gc-visible-layers{
  margin-top:12px!important;
}
.gc-visible-confidence:empty,
.gc-visible-behavior:empty,
.gc-visible-layers:empty{
  display:none!important;
}

/* Confidence / uncertainty stays visible in the normal report */
.gc-visible-confidence .calibration-card,
.gc-visible-confidence .confidence-card,
.gc-visible-confidence .confidence-breakdown,
.gc-visible-confidence>section,
.gc-visible-confidence>details{
  background:#040708!important;
  border:1px solid #273439!important;
  border-radius:9px!important;
  margin-top:10px!important;
}
.gc-visible-confidence .calibration-card{
  padding:16px!important;
}
.gc-visible-confidence details>summary{
  padding:14px 16px!important;
}

/* Anticipated material behavior is contractor-facing, not technical-only */
.gc-visible-behavior .behavior-card{
  background:#040708!important;
  border:1px solid #273439!important;
  border-radius:9px!important;
  padding:16px!important;
}
.gc-visible-behavior .behavior-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.gc-visible-behavior .behavior-item{
  background:#020506!important;
  border:1px solid #253337!important;
  border-radius:7px!important;
  padding:12px!important;
}
.gc-visible-behavior .behavior-title{
  display:flex!important;
  justify-content:space-between!important;
  gap:10px!important;
  align-items:center!important;
}
.gc-visible-behavior .behavior-title span{
  color:#f4f7f7!important;
  font-size:.76rem!important;
  font-weight:700!important;
}
.gc-visible-behavior .behavior-title strong{
  color:#4fd7c2!important;
  font-size:.66rem!important;
}
.gc-visible-behavior .behavior-meta{
  display:flex!important;
  justify-content:space-between!important;
  gap:8px!important;
  color:#84979c!important;
  font-size:.57rem!important;
}
.gc-visible-behavior .behavior-item p{
  color:#a8b6ba!important;
  font-size:.66rem!important;
  line-height:1.4!important;
}
.gc-visible-behavior .behavior-boundary{
  margin-top:10px!important;
  color:#7f9196!important;
  font-size:.61rem!important;
}

/* Ground Layers remains visible as its own normal contractor drawer */
.gc-visible-layers .ground-layers-shell{
  background:#040708!important;
  border:1px solid #273439!important;
  border-radius:9px!important;
  overflow:hidden!important;
}
.gc-visible-layers .detail-drawer>summary{
  padding:14px 16px!important;
  cursor:pointer!important;
  color:#f5f7f7!important;
}
.gc-visible-layers #layersTab{
  border-top:1px solid #233237!important;
  padding:14px!important;
}

/* Technical Details is now genuinely deeper technical material only */
.gc-technical-details{
  margin-top:12px!important;
}

@media(max-width:700px){
  .gc-visible-behavior .behavior-grid{
    grid-template-columns:1fr!important;
  }
}

/* ==============================================================
   GroundPredict v1.15.6.2 — Final Contractor Beta Polish
   Presentation-only pass. No calculation or workflow changes.
   ============================================================== */

/* GLOBAL RESULTS RHYTHM */
.gc-contractor-result{
  padding-bottom:10px!important;
}
.gc-primary-summary,
.gc-jobsite-card,
.gc-depth-profile,
.gc-why-section,
.gc-visible-confidence,
.gc-visible-behavior,
.gc-visible-layers,
.gc-technical-details{
  margin-top:14px!important;
}

/* STRONGER SECTION HIERARCHY */
.gc-section-kicker,
.gc-contractor-result .eyebrow{
  font-size:.58rem!important;
  letter-spacing:.12em!important;
  font-weight:800!important;
}
.gc-summary-copy h2,
.gc-section-headline h2{
  font-size:1.18rem!important;
  line-height:1.15!important;
}
.gc-section-headline{
  margin-bottom:14px!important;
}
.gc-section-headline>span,
.gc-coordinate{
  font-size:.66rem!important;
}

/* HERO / SUMMARY POLISH */
.gc-result-heading h1{
  font-size:2.6rem!important;
  margin-bottom:9px!important;
}
.gc-result-heading p{
  font-size:.84rem!important;
}
.gc-confidence-card{
  padding:17px 19px!important;
}
.gc-confidence-card strong{
  font-size:2.55rem!important;
}
.gc-primary-summary{
  padding:18px!important;
}
.gc-summary-copy p{
  font-size:.76rem!important;
}
.gc-summary-risk{
  padding:13px!important;
}
.gc-summary-risk strong{
  font-size:1.15rem!important;
}

/* JOBSITE */
.gc-jobsite-card{
  padding:17px!important;
}
.gc-jobsite-map{
  height:320px!important;
}

/* KEY CONTRACTOR CARDS */
.gc-key-grid{
  gap:12px!important;
  margin-top:14px!important;
}
.gc-key-card{
  padding:14px!important;
  min-height:102px!important;
}
.gc-key-card small{
  font-size:.54rem!important;
}
.gc-key-card strong{
  font-size:1.06rem!important;
}
.gc-key-card span{
  font-size:.69rem!important;
  line-height:1.4!important;
}

/* DEPTH PROFILE */
.gc-depth-profile{
  padding:18px!important;
}
.gc-depth-track{
  gap:8px!important;
}
.gc-depth-row{
  padding:12px 13px!important;
  min-height:64px!important;
}
.gc-depth-range{
  font-size:.76rem!important;
}
.gc-depth-material strong{
  font-size:.84rem!important;
}
.gc-depth-material span{
  font-size:.62rem!important;
}
.gc-depth-confidence{
  font-size:.74rem!important;
}

/* WHY GROUNDPREDICT THINKS THIS */
.gc-why-section{
  padding:18px!important;
}
.gc-why-section details,
.gc-why-section .authority-card,
.gc-nearby-mount .panel{
  margin-top:10px!important;
}
.gc-why-section summary,
.gc-nearby-mount summary{
  font-size:.73rem!important;
}
.gc-why-section p,
.gc-nearby-mount p{
  font-size:.68rem!important;
  line-height:1.45!important;
}

/* CONFIDENCE — make lower report readable */
.gc-visible-confidence .calibration-card{
  padding:18px!important;
}
.gc-visible-confidence .card-heading h3,
.gc-visible-confidence details h3{
  font-size:.95rem!important;
}
.gc-visible-confidence small,
.gc-visible-confidence span,
.gc-visible-confidence p{
  font-size:.66rem!important;
}
.gc-visible-confidence strong{
  font-size:.82rem!important;
}
.gc-visible-confidence .calibration-primary>div{
  padding:13px!important;
}
.gc-visible-confidence .calibration-primary strong{
  font-size:1.35rem!important;
}
.gc-visible-confidence .calibration-rows>div,
.gc-visible-confidence .confidence-row,
.gc-visible-confidence .evidence-line{
  min-height:34px!important;
}

/* ANTICIPATED MATERIAL BEHAVIOR */
.gc-visible-behavior .behavior-card{
  padding:18px!important;
}
.gc-visible-behavior .card-heading{
  margin-bottom:14px!important;
}
.gc-visible-behavior .card-heading h3{
  font-size:.98rem!important;
}
.gc-visible-behavior .behavior-grid{
  gap:12px!important;
}
.gc-visible-behavior .behavior-item{
  padding:14px!important;
  min-height:150px!important;
}
.gc-visible-behavior .behavior-title span{
  font-size:.8rem!important;
}
.gc-visible-behavior .behavior-title strong{
  font-size:.68rem!important;
}
.gc-visible-behavior .behavior-meta{
  font-size:.6rem!important;
}
.gc-visible-behavior .behavior-item p{
  font-size:.69rem!important;
  line-height:1.45!important;
}
.gc-visible-behavior .behavior-meter{
  margin:9px 0!important;
}

/* GROUND LAYERS & FORMATIONS — match the rest of the report */
.gc-visible-layers .ground-layers-shell{
  background:#040708!important;
  border:1px solid #273439!important;
  border-radius:9px!important;
  overflow:hidden!important;
}
.gc-visible-layers .detail-drawer{
  background:transparent!important;
  border:0!important;
  margin:0!important;
}
.gc-visible-layers .detail-drawer>summary{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  min-height:54px!important;
  padding:15px 17px!important;
  background:#040708!important;
  color:#f5f7f7!important;
  font-size:.78rem!important;
  font-weight:700!important;
}
.gc-visible-layers .detail-drawer>summary:after{
  content:"View"!important;
  color:#50d7c2!important;
  font-size:.62rem!important;
  font-weight:700!important;
}
.gc-visible-layers details[open]>summary:after{
  content:"Hide"!important;
}
.gc-visible-layers #layersTab{
  background:#020506!important;
  border-top:1px solid #253337!important;
  padding:16px!important;
}
.gc-visible-layers #layersTab h2,
.gc-visible-layers #layersTab h3{
  font-size:.9rem!important;
}
.gc-visible-layers #layersTab p,
.gc-visible-layers #layersTab span,
.gc-visible-layers #layersTab small{
  font-size:.66rem!important;
  line-height:1.45!important;
}

/* TECHNICAL DETAILS — deliberately quieter than primary report */
.gc-technical-details{
  background:#030607!important;
}
.gc-technical-details>summary{
  min-height:58px!important;
  padding:15px 17px!important;
}
.gc-technical-details>summary strong{
  font-size:.84rem!important;
}
.gc-technical-details>summary small{
  font-size:.61rem!important;
}
.gc-technical-details>summary b{
  font-size:.63rem!important;
}
.gc-technical-body{
  padding:16px!important;
}

/* DISCLAIMER / ACTIONS */
.report-disclaimer{
  margin-top:14px!important;
  padding:0 3px!important;
  font-size:.64rem!important;
}
.gc-bottom-actions{
  gap:12px!important;
  margin-top:14px!important;
}
.gc-bottom-actions button{
  min-height:46px!important;
  font-size:.74rem!important;
}

/* DESKTOP CARD WIDTH BALANCE */
@media(min-width:1000px){
  .gc-results-contractor{
    max-width:1180px!important;
  }
}

/* MOBILE FINAL POLISH */
@media(max-width:700px){
  .gc-result-heading h1{
    font-size:2.08rem!important;
  }
  .gc-jobsite-map{
    height:235px!important;
  }
  .gc-key-card{
    min-height:88px!important;
  }
  .gc-visible-behavior .behavior-item{
    min-height:auto!important;
  }
  .gc-primary-summary,
  .gc-jobsite-card,
  .gc-depth-profile,
  .gc-why-section{
    padding:14px!important;
  }
}

/* ============================================================
   GroundPredict v1.15.6.3 — Nearby Field Validation Polish
   ============================================================ */
.gc-nearby-mount .nearby-field-panel{
  padding:16px!important;
  background:#040708!important;
  border:1px solid #273439!important;
  border-radius:9px!important;
}
.gc-nearby-mount .nearby-heading{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:16px!important;
  margin-bottom:12px!important;
}
.gc-nearby-mount .nearby-heading-copy h3{
  margin:4px 0 0!important;
  color:#f5f7f7!important;
  font-size:.9rem!important;
  line-height:1.2!important;
}
.gc-nearby-mount .nearby-radius{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  color:#7f9297!important;
  font-size:.58rem!important;
  white-space:nowrap!important;
}
.gc-nearby-mount .nearby-radius select{
  min-width:72px!important;
  height:34px!important;
  padding:0 28px 0 10px!important;
  background:#020506!important;
  border:1px solid #315159!important;
  border-radius:7px!important;
  color:#fff!important;
  font-size:.68rem!important;
}
.gc-nearby-mount .nearby-empty-state{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:72px!important;
  padding:14px 16px!important;
  background:#08141a!important;
  border:1px solid #264a54!important;
  border-radius:8px!important;
  text-align:center!important;
}
.gc-nearby-mount .nearby-empty-state strong{
  color:#dce4e6!important;
  font-size:.72rem!important;
  font-weight:700!important;
}
.gc-nearby-mount .nearby-empty-state span{
  margin-top:4px!important;
  color:#7f959c!important;
  font-size:.62rem!important;
  line-height:1.4!important;
}
.gc-nearby-mount .nearby-disclaimer{
  margin-top:10px!important;
  padding-top:9px!important;
  border-top:1px solid #1f3035!important;
  color:#6f8389!important;
  font-size:.58rem!important;
  line-height:1.45!important;
}
.gc-nearby-mount .nearby-validation-list{
  display:grid!important;
  gap:8px!important;
}
.gc-nearby-mount .nearby-validation{
  background:#020506!important;
  border:1px solid #253439!important;
  border-radius:7px!important;
  overflow:hidden!important;
}
.gc-nearby-mount .nearby-validation>summary{
  padding:11px 12px!important;
}

@media(max-width:620px){
  .gc-nearby-mount .nearby-heading{
    flex-direction:column!important;
    gap:10px!important;
  }
  .gc-nearby-mount .nearby-radius{
    width:100%!important;
    justify-content:space-between!important;
  }
}

/* ============================================================
   GroundPredict v1.15.6.4 — Flat Nearby Validation Card
   ============================================================ */

/* Remove the boxed-inside-a-box empty state */
.gc-nearby-mount .nearby-empty-state{
  display:none!important;
}

.gc-nearby-mount .nearby-field-panel{
  padding:14px 16px 12px!important;
  background:#040708!important;
  border:1px solid #273439!important;
  border-radius:9px!important;
}

.gc-nearby-mount .nearby-heading{
  margin-bottom:8px!important;
  align-items:center!important;
}

.gc-nearby-mount .nearby-heading-copy h3{
  font-size:.82rem!important;
  margin-top:3px!important;
}

.gc-nearby-mount .nearby-radius{
  align-items:center!important;
}

.gc-nearby-mount .nearby-radius span{
  font-size:.54rem!important;
  color:#71858a!important;
}

.gc-nearby-mount .nearby-radius select{
  height:30px!important;
  min-width:68px!important;
  font-size:.64rem!important;
}

.gc-nearby-mount .nearby-empty-line{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-height:30px!important;
  padding:4px 0!important;
  color:#9eb0b5!important;
  font-size:.64rem!important;
}

.gc-nearby-mount .nearby-empty-dot{
  width:7px!important;
  height:7px!important;
  flex:0 0 7px!important;
  border-radius:50%!important;
  background:#2fcbb2!important;
  box-shadow:0 0 0 3px rgba(47,203,178,.08)!important;
}

.gc-nearby-mount .nearby-disclaimer{
  margin-top:7px!important;
  padding-top:7px!important;
  border-top:1px solid #1a292e!important;
  color:#63777d!important;
  font-size:.54rem!important;
  line-height:1.35!important;
}

/* Give separation before the next major section */
.gc-nearby-mount{
  margin-bottom:14px!important;
}

@media(max-width:620px){
  .gc-nearby-mount .nearby-heading{
    align-items:flex-start!important;
  }
  .gc-nearby-mount .nearby-empty-line{
    align-items:flex-start!important;
  }
}

/* ============================================================
   GroundPredict v2.0.1 — Collapse Nearby Empty State
   ============================================================ */

/* When there is no nearby field evidence, it is a status row — not a report card. */
.gc-nearby-mount .nearby-field-panel-empty{
  padding:0!important;
  margin:0!important;
  min-height:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
}

.gc-nearby-mount .nearby-empty-compact{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  min-height:42px!important;
  padding:7px 0!important;
  border-top:1px solid #1d2b30!important;
  border-bottom:1px solid #1d2b30!important;
}

.gc-nearby-mount .nearby-empty-copy{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-width:0!important;
}

.gc-nearby-mount .nearby-empty-copy>div{
  display:flex!important;
  align-items:baseline!important;
  gap:8px!important;
  min-width:0!important;
}

.gc-nearby-mount .nearby-empty-copy strong{
  color:#52d7c3!important;
  font-size:.62rem!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.07em!important;
  white-space:nowrap!important;
}

.gc-nearby-mount .nearby-empty-copy small{
  color:#8da0a6!important;
  font-size:.61rem!important;
  white-space:nowrap!important;
}

.gc-nearby-mount .nearby-empty-dot{
  width:6px!important;
  height:6px!important;
  flex:0 0 6px!important;
  border-radius:50%!important;
  background:#35cdb5!important;
  box-shadow:none!important;
}

.gc-nearby-mount .nearby-radius-empty{
  flex:0 0 auto!important;
}

.gc-nearby-mount .nearby-radius-empty span{
  color:#65787e!important;
  font-size:.52rem!important;
}

.gc-nearby-mount .nearby-radius-empty select{
  height:29px!important;
  min-width:66px!important;
  font-size:.62rem!important;
}

/* Remove spacing that made an empty section look like a large card. */
.gc-nearby-mount{
  margin-top:9px!important;
  margin-bottom:10px!important;
}

/* Full nearby evidence remains a normal card when evidence exists. */
.gc-nearby-mount .nearby-field-panel:not(.nearby-field-panel-empty){
  padding:16px!important;
  margin:0!important;
  background:#040708!important;
  border:1px solid #273439!important;
  border-radius:9px!important;
}

@media(max-width:620px){
  .gc-nearby-mount .nearby-empty-compact{
    align-items:flex-start!important;
    padding:8px 0!important;
  }
  .gc-nearby-mount .nearby-empty-copy>div{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:2px!important;
  }
  .gc-nearby-mount .nearby-empty-copy small{
    white-space:normal!important;
  }
}

/* GroundPredict v2.0.1 brand layer */
:root{
 --gp-black:#020304;--gp-panel:#071014;--gp-panel2:#0b171c;
 --gp-cyan:#38d9e3;--gp-cyan2:#22bdc8;--gp-white:#f4f6f6;
 --gp-muted:#91a5ab;--gp-line:#263a41;
}
html,body{background:var(--gp-black)!important;color:var(--gp-white)!important}
body{background-image:radial-gradient(circle at 50% -15%,rgba(56,217,227,.07),transparent 34%)!important}
.panel,.card,.result-card,.section-card{background:linear-gradient(180deg,var(--gp-panel2),var(--gp-panel))!important;border-color:var(--gp-line)!important}
.eyebrow,.kicker,.section-label{color:var(--gp-cyan)!important}
button.primary,.btn-primary,.primary-btn,.cta-primary,button[type=submit]{
 background:linear-gradient(180deg,var(--gp-cyan),var(--gp-cyan2))!important;color:#001114!important;border-color:var(--gp-cyan)!important}
input,select,textarea{background:#020607!important;color:var(--gp-white)!important;border-color:#31535b!important}
.progress-fill,.confidence-fill,.meter-fill{background:linear-gradient(90deg,var(--gp-cyan2),var(--gp-cyan))!important}
.site-header,.app-header,header.topbar,.topbar{background:#000!important;border-bottom:1px solid rgba(56,217,227,.32)!important}
.gp-header-logo{display:block;width:min(370px,44vw);max-height:58px;object-fit:contain;object-position:left center}
.gp-auth-logo{display:block;width:min(360px,88%);max-height:310px;object-fit:contain;margin:0 auto 18px}
.gp-home-logo{display:block;width:min(700px,100%);max-height:155px;object-fit:contain;object-position:left center}
.gp-home-brand{background:#000;border:1px solid var(--gp-line);border-radius:9px;padding:10px 14px;margin-bottom:24px}
@media(max-width:680px){.gp-header-logo{width:190px;max-height:46px}.gp-auth-logo{width:88%;max-height:235px}.gp-home-logo{max-height:100px}}

/* ============================================================
   GroundPredict v2.0.1 — screenshot-matched visual system
   ============================================================ */
:root{
  --gp201-bg:#020607;
  --gp201-surface:#071116;
  --gp201-card:#0b1820;
  --gp201-card2:#102432;
  --gp201-line:#29444d;
  --gp201-line-soft:#172a31;
  --gp201-cyan:#28d5d0;
  --gp201-cyan-bright:#42e1dc;
  --gp201-green:#49e7a4;
  --gp201-white:#f5f7f7;
  --gp201-muted:#8da5ad;
}

html,body{
  background:var(--gp201-bg)!important;
  color:var(--gp201-white)!important;
}
body{
  background-image:
    radial-gradient(circle at 50% -12%,rgba(40,213,208,.055),transparent 31%),
    linear-gradient(180deg,#020607 0%,#031018 100%)!important;
}

/* Consistent header seen in approved comps */
header,.topbar,.site-header,.app-header{
  background:#010405!important;
  border-top:3px solid #0b5e88!important;
  border-bottom:1px solid #20343b!important;
}
.gp-header-logo{
  width:min(230px,35vw)!important;
  max-height:52px!important;
}

/* Typography / hierarchy */
h1,h2,h3{
  color:var(--gp201-white)!important;
  letter-spacing:-.025em!important;
}
.eyebrow,.kicker,.section-label{
  color:var(--gp201-cyan-bright)!important;
  font-weight:800!important;
  letter-spacing:.09em!important;
}

/* Cards are dark, restrained, cyan-edged — not bright blocks */
.panel,.card,.result-card,.section-card,
.home-card,.action-card{
  background:linear-gradient(180deg,#09151a,#050a0c)!important;
  border:1px solid var(--gp201-line)!important;
  border-radius:8px!important;
  box-shadow:none!important;
}
.home-card,.action-card{
  min-height:72px!important;
}
.home-card:hover,.action-card:hover{
  border-color:var(--gp201-cyan)!important;
  background:#09171b!important;
}

/* Inputs */
input,select,textarea{
  background:#020708!important;
  border:1px solid #31515a!important;
  color:var(--gp201-white)!important;
  border-radius:7px!important;
}
input::placeholder,textarea::placeholder{color:#718c95!important}

/* Primary CTAs exactly in the cyan family from the logo */
button.primary,.btn-primary,.primary-btn,.cta-primary,
button[type="submit"],#analyzeBtn,.analyze-btn{
  background:linear-gradient(90deg,#18bfb6,#31d3c7)!important;
  border:1px solid #42ded3!important;
  color:#00100f!important;
  font-weight:800!important;
  border-radius:6px!important;
}
button.primary:hover,.btn-primary:hover,.primary-btn:hover,
button[type="submit"]:hover{
  filter:brightness(1.06)!important;
}

/* Depth screen */
input[type="range"]{
  accent-color:var(--gp201-cyan)!important;
}
.depth-card,.depth-selector{
  background:#020708!important;
  border-color:#30464d!important;
}
.depth-preset,.preset-btn{
  background:#020708!important;
  border-color:#2b464e!important;
  color:#fff!important;
}
.depth-preset.active,.preset-btn.active{
  border-color:var(--gp201-cyan)!important;
  box-shadow:inset 0 0 0 1px rgba(40,213,208,.25)!important;
}

/* Results evidence styling from approved comp */
.results-page .panel,.results-page .card,
.result-card{
  border-color:#29444d!important;
}
.evidence-authority,.evidence-card{
  background:linear-gradient(180deg,#102a39,#0d2230)!important;
  border-left:3px solid var(--gp201-green)!important;
}
.progress-fill,.confidence-fill,.meter-fill{
  background:linear-gradient(90deg,var(--gp201-green),var(--gp201-cyan))!important;
}

/* ------------------------------------------------------------
   FIELD-VERIFIED NEARBY
   Empty state becomes a SINGLE 46px integrated report row.
   No hanging border, no left notch, no large blank box.
   ------------------------------------------------------------ */
.gc-nearby-mount.gp201-nearby-mount-empty,
.gc-nearby-mount:has(.gp201-nearby-empty){
  margin:8px 0 10px!important;
  padding:0!important;
  min-height:0!important;
  height:auto!important;
  border:0!important;
  background:transparent!important;
}

.nearby-field-panel-empty.gp201-nearby-empty{
  position:relative!important;
  display:block!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#04090b!important;
  border:1px solid #263b42!important;
  border-radius:7px!important;
}

.nearby-field-panel-empty.gp201-nearby-empty::before,
.nearby-field-panel-empty.gp201-nearby-empty::after{
  display:none!important;
  content:none!important;
}

.gp201-nearby-row{
  min-height:44px!important;
  height:44px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:0 12px!important;
  border:0!important;
  background:transparent!important;
}

.gp201-nearby-row .nearby-empty-copy{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
}

.gp201-nearby-row .nearby-empty-copy>div{
  display:flex!important;
  flex-direction:row!important;
  align-items:baseline!important;
  gap:9px!important;
}

.gp201-nearby-row .nearby-empty-copy strong{
  color:var(--gp201-cyan-bright)!important;
  font-size:.61rem!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.075em!important;
  white-space:nowrap!important;
}

.gp201-nearby-row .nearby-empty-copy small{
  color:#a0b2b8!important;
  font-size:.60rem!important;
  line-height:1!important;
  white-space:nowrap!important;
}

.gp201-nearby-row .nearby-empty-dot{
  display:none!important;
}

.gp201-nearby-row .nearby-radius{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
}
.gp201-nearby-row .nearby-radius span{
  color:#72878e!important;
  font-size:.52rem!important;
}
.gp201-nearby-row .nearby-radius select{
  width:70px!important;
  min-width:70px!important;
  height:27px!important;
  padding:0 7px!important;
  font-size:.60rem!important;
  border-radius:5px!important;
}

/* Kill legacy empty-state geometry that caused the broken left edge */
.gp201-nearby-mount-empty > *,
.gp201-nearby-empty > *{
  max-width:none!important;
}
.gp201-nearby-mount-empty .nearby-heading,
.gp201-nearby-mount-empty .nearby-disclaimer,
.gp201-nearby-mount-empty .nearby-validation-list,
.gp201-nearby-empty .nearby-heading,
.gp201-nearby-empty .nearby-disclaimer,
.gp201-nearby-empty .nearby-validation-list{
  display:none!important;
}

/* Confidence card sits naturally below field verification */
.gc-nearby-mount + .panel,
.gc-nearby-mount + .card{
  margin-top:10px!important;
}

@media(max-width:620px){
  .gp201-nearby-row{
    min-height:50px!important;
    height:auto!important;
    padding:8px 10px!important;
  }
  .gp201-nearby-row .nearby-empty-copy>div{
    flex-direction:column!important;
    gap:2px!important;
  }
  .gp201-nearby-row .nearby-empty-copy small{
    white-space:normal!important;
  }
}

/* ============================================================
   GroundPredict v2.2.0 — Pro Beta + full-width branded header
   ============================================================ */
:root{
  --gp-pro-cyan:#37d9df;
  --gp-pro-cyan2:#1dbcc6;
  --gp-pro-black:#010304;
  --gp-pro-card:#061015;
  --gp-pro-line:#263d44;
}

/* FULL-WIDTH HEADER */
.gp-pro-header{
  position:relative!important;
  min-height:84px!important;
  height:84px!important;
  padding:0 24px!important;
  overflow:hidden!important;
  background:#000!important;
  border-top:2px solid #1179a3!important;
  border-bottom:1px solid #20363d!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
}

.gp-header-brand-wrap{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  pointer-events:none!important;
}

.gp-pro-header .gp-header-logo{
  width:min(1080px,88vw)!important;
  max-width:none!important;
  height:78px!important;
  max-height:78px!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
  opacity:1!important;
}

.gp-pro-header nav,
.gp-pro-header .nav,
.gp-pro-header .header-actions,
.gp-pro-header .nav-actions,
.gp-pro-header>div:last-child{
  position:relative!important;
  z-index:3!important;
}

.gp-pro-header .gp-pro-badge{
  position:absolute!important;
  right:92px!important;
  top:10px!important;
  z-index:4!important;
  padding:3px 8px!important;
  border:1px solid rgba(55,217,223,.75)!important;
  border-radius:999px!important;
  background:rgba(0,16,18,.88)!important;
  color:#58e2df!important;
  font-size:.5rem!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
}

.gp-pro-header button,
.gp-pro-header a{
  position:relative!important;
  z-index:5!important;
}

/* Keep navigation readable over full-width artwork */
.gp-pro-header::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(90deg,rgba(0,0,0,.18) 0%,rgba(0,0,0,0) 34%,rgba(0,0,0,0) 68%,rgba(0,0,0,.42) 100%)!important;
  pointer-events:none!important;
  z-index:1!important;
}

/* HOME PRO BETA INTRO */
.gp-pro-intro{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin-bottom:12px!important;
}
.gp-pro-intro span{
  padding:4px 8px!important;
  border-radius:999px!important;
  border:1px solid rgba(55,217,223,.55)!important;
  background:#031114!important;
  color:#4bded9!important;
  font-size:.54rem!important;
  font-weight:900!important;
  letter-spacing:.085em!important;
}
.gp-pro-intro strong{
  color:#95a9ae!important;
  font-size:.66rem!important;
  font-weight:600!important;
}

/* PRO FEATURE MARKERS */
.gp-pro-feature{
  position:relative!important;
}
.gp-feature-pill{
  position:absolute!important;
  top:10px!important;
  right:10px!important;
  z-index:8!important;
  padding:2px 7px!important;
  border:1px solid #2dbbaa!important;
  border-radius:999px!important;
  background:#031310!important;
  color:#49dacb!important;
  font-size:.47rem!important;
  line-height:1.35!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  pointer-events:none!important;
}
.gp-summary-pro{
  margin-left:auto!important;
  padding:2px 7px!important;
  border:1px solid #2dbbaa!important;
  border-radius:999px!important;
  color:#49dacb!important;
  background:#031310!important;
  font-size:.48rem!important;
  font-weight:900!important;
}

/* Subtle Pro treatment without changing layout */
body[data-plan="pro-beta"] .gc-nearby-mount,
body[data-plan="pro-beta"] .gc-technical-details,
body[data-plan="pro-beta"] .gc-visible-behavior,
body[data-plan="pro-beta"] .gc-visible-layers{
  border-color:#29505a!important;
}

/* MOBILE */
@media(max-width:760px){
  .gp-pro-header{
    min-height:68px!important;
    height:68px!important;
    padding:0 10px!important;
  }
  .gp-pro-header .gp-header-logo{
    width:min(590px,92vw)!important;
    height:62px!important;
    max-height:62px!important;
  }
  .gp-pro-header .gp-pro-badge{
    right:58px!important;
    top:6px!important;
    font-size:.42rem!important;
    padding:2px 6px!important;
  }
}

/* GroundPredict v2.2.0 Mobile/PWA */
html{background:#010304}
body{min-height:100dvh}
.gp-install-app{
 position:relative;z-index:10;margin-left:auto;background:#041312!important;border:1px solid #2ccdc5!important;
 color:#eaffff!important;border-radius:8px!important;padding:7px 11px!important;display:flex!important;flex-direction:column!important;
 align-items:flex-start!important;line-height:1.05!important;cursor:pointer!important
}
.gp-install-app span{font-size:.64rem;font-weight:900}.gp-install-app small{font-size:.46rem;color:#61ddd6;margin-top:3px}
.gp-ios-tip{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translateX(-50%);z-index:99999;
 width:min(420px,calc(100vw - 28px));box-sizing:border-box;background:#071116;border:1px solid #35d6d0;border-radius:12px;padding:15px;
 box-shadow:0 18px 60px #000;color:#fff;display:grid;gap:7px}
.gp-ios-tip strong{font-size:.9rem}.gp-ios-tip span{font-size:.72rem;color:#a8bbc0}.gp-ios-tip button{margin-top:4px}
.gp-mobile-report-cta{border-color:#42e1dc!important}
@media(max-width:760px){
 body{padding-bottom:env(safe-area-inset-bottom)}
 .gp-pro-header{position:sticky!important;top:0!important;z-index:1000!important}
 .gp-install-app{position:fixed!important;right:10px!important;bottom:max(12px,env(safe-area-inset-bottom))!important;
  box-shadow:0 8px 28px rgba(0,0,0,.6)!important}
 .gp-standalone .gp-install-app{display:none!important}
 button,.btn,input,select{min-height:44px}
 .gp-mobile-gps{min-height:48px!important}
 .gp-mobile-report-cta{min-height:50px!important;font-size:.78rem!important;font-weight:900!important}
 .home-card,.action-card{min-height:78px!important}
}

/* GroundPredict v2.2.1 GPS request feedback */
#gps:disabled{
  opacity:.72!important;
  cursor:wait!important;
}

/* ============================================================
   GroundPredict v2.2.2 — Mobile Permission + Header Repair
   ============================================================ */

/* LOCATION PRE-PERMISSION SHEET */
.gp-location-sheet{
  position:fixed!important;
  inset:0!important;
  z-index:100000!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  padding:18px!important;
  padding-bottom:max(18px,env(safe-area-inset-bottom))!important;
  background:rgba(0,0,0,.72)!important;
  backdrop-filter:blur(4px)!important;
}
.gp-location-sheet-card{
  width:min(460px,100%)!important;
  background:#071116!important;
  border:1px solid #31535b!important;
  border-radius:14px!important;
  padding:18px!important;
  box-shadow:0 24px 80px rgba(0,0,0,.7)!important;
}
.gp-location-icon{
  width:38px!important;
  height:38px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:#06201e!important;
  border:1px solid #2dcfc4!important;
  color:#42e1dc!important;
  font-size:1.3rem!important;
  font-weight:800!important;
  margin-bottom:12px!important;
}
.gp-location-copy h3{
  margin:5px 0 8px!important;
  color:#fff!important;
  font-size:1.05rem!important;
}
.gp-location-copy p{
  margin:0!important;
  color:#9eb1b7!important;
  font-size:.74rem!important;
  line-height:1.45!important;
}
.gp-location-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  margin-top:16px!important;
}
.gp-location-actions button{
  min-height:46px!important;
}

/* HEADER — logo centered, controls isolated at far right */
.gp-header-fixed-layout{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  overflow:hidden!important;
  padding-left:18px!important;
  padding-right:18px!important;
}
.gp-header-fixed-layout .gp-header-brand-wrap,
.gp-header-fixed-layout .gp-header-brand-centered{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  pointer-events:none!important;
}
.gp-header-fixed-layout .gp-header-logo{
  display:block!important;
  width:min(920px,72vw)!important;
  height:70px!important;
  max-height:70px!important;
  object-fit:contain!important;
  object-position:center center!important;
  pointer-events:none!important;
}
.gp-header-fixed-layout .gp-fixed-nav{
  position:relative!important;
  z-index:20!important;
  margin-left:auto!important;
  display:flex!important;
  align-items:center!important;
  gap:16px!important;
  padding-left:18px!important;
  background:linear-gradient(90deg,transparent,rgba(0,0,0,.72) 22%,#000 52%)!important;
}
.gp-header-fixed-layout .gp-fixed-nav button,
.gp-header-fixed-layout .gp-fixed-nav a{
  position:relative!important;
  z-index:21!important;
  background:transparent!important;
  border:0!important;
  min-height:36px!important;
  padding:7px 3px!important;
  color:#dfe6e8!important;
  white-space:nowrap!important;
}
.gp-header-fixed-layout .gp-fixed-nav button:hover,
.gp-header-fixed-layout .gp-fixed-nav a:hover{
  color:#42e1dc!important;
}

/* Prevent old header rules from pinning nav over the logo */
.gp-header-fixed-layout > div:last-child:not(.gp-fixed-nav):not(.gp-header-brand-wrap){
  position:relative!important;
}

/* Keep install button away from header artwork on mobile */
@media(max-width:760px){
  .gp-header-fixed-layout{
    min-height:68px!important;
    height:68px!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
  .gp-header-fixed-layout .gp-header-logo{
    width:min(500px,72vw)!important;
    height:60px!important;
    max-height:60px!important;
  }
  .gp-header-fixed-layout .gp-fixed-nav{
    gap:8px!important;
    padding-left:14px!important;
  }
  .gp-header-fixed-layout .gp-fixed-nav button,
  .gp-header-fixed-layout .gp-fixed-nav a{
    font-size:.62rem!important;
  }
  .gp-location-sheet{
    padding-left:12px!important;
    padding-right:12px!important;
  }
}

/* ============================================================
   GroundPredict v2.2.3 — Mobile Header
   ============================================================ */

/* Desktop/tablet: preserve full-width logo experience */
.gp223-mobile-menu-btn,
.gp223-mobile-menu{
  display:none;
}

/* Phone layout */
@media(max-width:760px){
  .gp223-header{
    position:sticky!important;
    top:0!important;
    z-index:1000!important;
    min-height:64px!important;
    height:64px!important;
    padding:0 12px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    overflow:visible!important;
    background:#000!important;
  }

  /* Stop desktop centered-header geometry from colliding on phone */
  .gp223-header .gp-header-brand-wrap,
  .gp223-header .gp-header-brand-centered{
    position:static!important;
    inset:auto!important;
    width:auto!important;
    flex:0 1 auto!important;
    justify-content:flex-start!important;
    pointer-events:none!important;
  }

  .gp223-header .gp-header-logo{
    width:178px!important;
    height:52px!important;
    max-height:52px!important;
    object-fit:contain!important;
    object-position:left center!important;
    margin:0!important;
  }

  .gp223-header .gp223-version,
  .gp223-header .gp-header-version,
  .gp223-header .gc-header-version,
  .gp223-header .version-badge{
    position:absolute!important;
    left:188px!important;
    top:22px!important;
    z-index:12!important;
    margin:0!important;
    padding:3px 7px!important;
    font-size:.48rem!important;
    white-space:nowrap!important;
  }

  /* Hide desktop controls on phone. */
  .gp223-header .gp-fixed-nav,
  .gp223-header .header-actions,
  .gp223-header .nav-actions,
  .gp223-header nav,
  .gp223-header > div:last-child:not(.gp-header-brand-wrap):not(.gp-header-brand-centered){
    display:none!important;
  }

  .gp223-mobile-menu-btn{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:4px!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    margin-left:auto!important;
    padding:0 10px!important;
    position:relative!important;
    z-index:30!important;
    background:#050a0c!important;
    border:1px solid #2c4c54!important;
    border-radius:8px!important;
  }
  .gp223-mobile-menu-btn span{
    display:block!important;
    width:100%!important;
    height:2px!important;
    background:#dfe7e8!important;
    border-radius:3px!important;
  }

  .gp223-mobile-menu{
    display:none;
    position:fixed!important;
    inset:0!important;
    z-index:100000!important;
    background:rgba(0,0,0,.68)!important;
    padding:76px 12px 12px!important;
  }
  .gp223-mobile-menu.open{
    display:block!important;
  }
  .gp223-mobile-menu::before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    backdrop-filter:blur(5px)!important;
    pointer-events:none!important;
  }
  .gp223-mobile-menu > *{
    position:relative!important;
    z-index:2!important;
  }
  .gp223-mobile-menu{
    box-sizing:border-box!important;
  }
  .gp223-mobile-menu-head,
  .gp223-mobile-menu-actions{
    width:min(420px,100%)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    background:#071116!important;
  }
  .gp223-mobile-menu-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    padding:14px 14px 10px!important;
    border:1px solid #2b4a52!important;
    border-bottom:0!important;
    border-radius:12px 12px 0 0!important;
  }
  .gp223-mobile-menu-head strong{
    color:#f5f7f7!important;
    font-size:.82rem!important;
  }
  .gp223-mobile-menu-close{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    min-height:36px!important;
    padding:0!important;
    font-size:1.45rem!important;
    line-height:1!important;
    background:transparent!important;
    border:0!important;
    color:#a8b8bd!important;
  }
  .gp223-mobile-menu-actions{
    display:grid!important;
    gap:8px!important;
    padding:0 14px 14px!important;
    border:1px solid #2b4a52!important;
    border-top:0!important;
    border-radius:0 0 12px 12px!important;
  }
  .gp223-mobile-menu-actions button{
    width:100%!important;
    min-height:48px!important;
    border-radius:7px!important;
    background:#030708!important;
    border:1px solid #2d4850!important;
    color:#f4f7f7!important;
    font-size:.76rem!important;
    font-weight:800!important;
  }
  .gp223-mobile-menu-actions button.danger{
    color:#ff9a98!important;
    border-color:#5a3336!important;
  }
  body.gp223-menu-open{
    overflow:hidden!important;
  }

  /* Installed app shouldn't show install CTA floating over header */
  .gp-standalone #gp-install-app,
  html.gp-standalone #gp-install-app{
    display:none!important;
  }
}

/* ============================================================
   GroundPredict v2.3.0 — Beta Hardening
   ============================================================ */

/* DEPTH */
.gp-depth-presets,.gp-project-presets{
  display:flex!important;flex-wrap:wrap!important;gap:8px!important;
}
.gp-depth-presets button,.gp-project-presets button{
  min-width:64px!important;min-height:40px!important;
}

/* PREDICTING LOADER */
.gp-predicting-screen{
  min-height:60vh!important;
  display:none;
  align-items:center!important;
  justify-content:center!important;
  flex-direction:column!important;
  text-align:center!important;
}
.gp-predicting-screen.active{display:flex!important}
.gp-predicting-brand{width:min(340px,78vw)!important;margin-bottom:14px!important}
.gp-predicting-brand img{display:block;width:100%!important;max-height:235px!important;object-fit:contain!important}
.gp-predicting-dots{display:flex!important;justify-content:center!important;gap:10px!important;margin-top:2px!important}
.gp-predicting-dots i{
  width:9px!important;height:9px!important;border-radius:50%!important;background:#193f42!important;
  animation:gpPredictPulse 1.15s infinite ease-in-out!important;
}
.gp-predicting-dots i:nth-child(2){animation-delay:.18s!important}
.gp-predicting-dots i:nth-child(3){animation-delay:.36s!important}
@keyframes gpPredictPulse{0%,70%,100%{background:#193f42;transform:scale(.78);opacity:.45}35%{background:#3be0db;transform:scale(1.15);opacity:1}}
.gp-predicting-screen h2{font-size:1.25rem!important;margin:4px 0 7px!important}
.gp-predicting-screen p{color:#91a7ae!important;max-width:480px!important;font-size:.73rem!important;line-height:1.45!important}

/* FIELD VALIDATION */
.gp-field-validation{max-width:760px!important}
.gp-field-intro,.gp-project-intro{color:#91a6ad!important;font-size:.75rem!important;line-height:1.5!important;max-width:680px!important}
.gp-field-form{
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;
  background:#050a0c!important;border:1px solid #29434b!important;border-radius:10px!important;padding:16px!important;margin-top:16px!important
}
.gp-field-form label{display:flex!important;flex-direction:column!important;gap:6px!important;color:#dfe6e8!important;font-size:.7rem!important;font-weight:700!important}
.gp-field-form input,.gp-field-form textarea{width:100%!important;box-sizing:border-box!important;font-size:.78rem!important}
.gp-field-form textarea{resize:vertical!important}
.gp-rock-check{grid-column:1/-1!important;flex-direction:row!important;align-items:center!important;min-height:44px!important}
.gp-rock-check input{width:auto!important}
.gp-rock-fields{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important}
.gp-rock-disabled{opacity:.42!important}
.gp-field-form>label:has(textarea){grid-column:1/-1!important}
.gp-rating-grid{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:12px!important}
.gp-rating-grid label{background:#020607!important;border:1px solid #22363d!important;border-radius:7px!important;padding:10px!important}
.gp-submit-field{margin-top:12px!important;min-height:50px!important}

/* PROJECT MAPPING */
.gp-project-mapper{max-width:960px!important}
.gp-project-name{display:flex!important;flex-direction:column!important;gap:6px!important;font-size:.7rem!important;margin:14px 0!important}
.gp-project-controls{display:grid!important;grid-template-columns:minmax(220px,1fr) 1fr!important;gap:12px!important;align-items:center!important;margin-bottom:12px!important}
.gp-project-controls button{min-height:48px!important}
.gp-project-method{color:#81979e!important;font-size:.68rem!important}
.gp-projectbar{align-items:center!important}
.gp-projectbar>div{display:flex!important;gap:8px!important}
.gp-waypoint-list{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin:10px 0!important}
.gp-waypoint{display:flex!important;align-items:center!important;gap:6px!important;padding:5px 8px!important;background:#041014!important;border:1px solid #24434a!important;border-radius:999px!important;color:#91a8ae!important;font-size:.58rem!important}
.gp-waypoint b{display:grid!important;place-items:center!important;width:18px!important;height:18px!important;border-radius:50%!important;background:#32d5cf!important;color:#001111!important;font-size:.55rem!important}
.gp-project-marker{width:28px!important;height:28px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#35d9d4!important;border:3px solid #fff!important;box-shadow:0 2px 10px #000!important;color:#001112!important;font-weight:900!important;font-size:.66rem!important}
.gp-project-depth{margin-top:12px!important}
.gp-project-depth small{display:block!important;color:#43dcd5!important;font-size:.55rem!important;font-weight:800!important;letter-spacing:.08em!important;margin-bottom:4px!important}

/* COLLAPSIBLE REPORT */
.gp-report-collapsible{
  position:relative!important;transition:max-height .2s ease!important;overflow:hidden!important;
}
.gp-report-toggle{
  width:100%!important;min-height:46px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
  padding:0 12px!important;margin:0 0 12px!important;background:#061014!important;border:1px solid #29464e!important;border-radius:7px!important;color:#f3f7f7!important;
}
.gp-report-toggle span{font-size:.72rem!important;font-weight:800!important}
.gp-report-toggle b{font-size:.58rem!important;color:#43ddd6!important}
.gp-report-collapsed{max-height:48px!important;padding-top:0!important;padding-bottom:0!important}
.gp-report-collapsed>.gp-report-toggle{margin-bottom:0!important;border:0!important;background:transparent!important}

/* MOBILE */
@media(max-width:700px){
  .gp-field-form{grid-template-columns:1fr!important;padding:12px!important}
  .gp-field-form>*,.gp-rock-fields,.gp-rating-grid,.gp-field-form>label:has(textarea){grid-column:1!important}
  .gp-rock-fields,.gp-rating-grid{grid-template-columns:1fr!important}
  .gp-project-controls{grid-template-columns:1fr!important}
  .gp-project-method{text-align:center!important}
  .gp-projectbar{flex-direction:column!important;align-items:stretch!important;gap:8px!important}
  .gp-projectbar>div{display:grid!important;grid-template-columns:1fr 1fr!important}
  #projectMap{min-height:380px!important;height:54vh!important}
}

/* GroundPredict v2.4 trust + project reporting */
.gp-distribution{border:1px solid #244958;background:#05090b;border-radius:12px;padding:16px;margin:14px 0}
.gp-dist-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.gp-dist-head h2{margin:4px 0 14px}
.gp-suff{border:1px solid #22cdbd;border-radius:999px;padding:5px 9px;font-size:.68rem;font-weight:800;color:#38e4d2}
.gp-dist-row{display:grid;grid-template-columns:minmax(135px,1fr) 2fr 46px;gap:10px;align-items:center;margin:10px 0}
.gp-dist-row>div{height:7px;background:#10202a;border-radius:8px;overflow:hidden}.gp-dist-row i{display:block;height:100%;background:#31d8c5}
.gp-distribution p,.gp-beta-disclosure{color:#93aab8;font-size:.78rem;line-height:1.5}
.gp-project-actions,.gp-project-report-actions,.gp-saved-project-actions{display:flex;gap:10px}.gp-project-actions button{flex:1}
.gp-saved-heading{margin:24px 0 10px}.gp-saved-project{display:flex;justify-content:space-between;gap:14px;border:1px solid #244958;background:#05090b;padding:14px;border-radius:10px;margin:9px 0}
.gp-saved-project div:first-child{display:flex;flex-direction:column;gap:4px}.gp-saved-project span,.gp-saved-project small{color:#91a9b8}
.gp-project-report{max-width:980px;margin:auto}.gp-project-report-actions{margin:14px 0}.gp-project-summary,.gp-stations{border:1px solid #244958;border-radius:12px;padding:14px;margin:12px 0;background:#05090b}
.gp-project-summary>div{display:flex;justify-content:space-between;border-top:1px solid #18323d;padding:9px 0}
.gp-stations article{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid #18323d;padding:12px 0}.gp-stations article>div{display:flex;flex-direction:column;gap:4px}.gp-stations article span{color:#9ab0bc;font-size:.78rem}.gp-stations article b{color:#31d8c5;font-size:.72rem}
@media(max-width:650px){.gp-dist-row{grid-template-columns:120px 1fr 38px}.gp-saved-project{flex-direction:column}.gp-saved-project-actions button{flex:1}.gp-stations article{grid-template-columns:1fr}.gp-project-actions{flex-direction:column}}
@media print{.gc-app-header,.back,.gp-project-report-actions,.gc-result-actions-top{display:none!important}.gp-project-report,.gc-contractor-result{max-width:none!important}}

/* ============================================================
   GroundPredict v2.4.1 — Trust + Branding Repair
   ============================================================ */

/* Direct login branding fallback */
.gp-auth-logo-direct,
#auth .gp-auth-logo{
  display:block!important;
  width:min(360px,86vw)!important;
  max-height:270px!important;
  object-fit:contain!important;
  margin:0 auto 18px!important;
}

/* Never let the legacy conflicting summary compete with authoritative evidence */
.gp-hide-legacy-summary{
  display:none!important;
}

/* Primary evidence prediction becomes the hero answer */
.gp-authoritative-prediction{
  margin:12px 0 16px!important;
  padding:18px!important;
  border:1px solid #2b5962!important;
  background:linear-gradient(180deg,#071315,#020708)!important;
}
.gp-authoritative-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin:6px 0 15px!important;
}
.gp-authoritative-head small{
  color:#8da3a9!important;
  font-size:.56rem!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
}
.gp-authoritative-head h2{
  margin:4px 0 3px!important;
  font-size:1.55rem!important;
  line-height:1.05!important;
}
.gp-authoritative-head>div>span{
  color:#45ddd5!important;
  font-size:.72rem!important;
  font-weight:800!important;
}
.gp-dist-subhead{
  margin:5px 0 10px!important;
  color:#a9b8bc!important;
  font-size:.67rem!important;
  font-weight:800!important;
}
.gp-authoritative-prediction .gp-dist-row{
  margin:9px 0!important;
}
.gp-authoritative-prediction .gp-dist-row strong{
  font-size:.78rem!important;
}

/* Field-Verified Nearby: clean single-card empty state */
.gp241-nearby-empty{
  margin:10px 0 14px!important;
  padding:0!important;
  border:0!important;
  min-height:0!important;
  overflow:visible!important;
}
.gp241-nearby-empty::before,
.gp241-nearby-empty::after{
  display:none!important;
  content:none!important;
}
.gp241-nearby-panel{
  padding:0!important;
  margin:0!important;
  min-height:0!important;
  height:auto!important;
  overflow:hidden!important;
  border:1px solid #29454d!important;
  border-radius:8px!important;
  background:#04090b!important;
}
.gp241-nearby-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  min-height:52px!important;
  padding:10px 12px!important;
}
.gp241-nearby-copy{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
}
.gp241-nearby-copy strong{
  color:#43ddd5!important;
  text-transform:uppercase!important;
  letter-spacing:.07em!important;
  font-size:.58rem!important;
}
.gp241-nearby-copy span{
  color:#9caeb4!important;
  font-size:.62rem!important;
}
.gp241-nearby-row .nearby-radius{
  margin:0!important;
  flex:0 0 auto!important;
}

/* Mobile */
@media(max-width:700px){
  .gp-authoritative-head{
    flex-direction:column!important;
    gap:8px!important;
  }
  .gp-authoritative-head h2{
    font-size:1.35rem!important;
  }
  .gp241-nearby-row{
    align-items:flex-start!important;
  }
}

/* GroundPredict v2.4.1.1 — Desktop Primary Prediction Layout */
@media(min-width:901px){
  #contractorDashboardMount .gp-authoritative-prediction,
  #contractorDashboardMount .gp-distribution{
    width:100%!important;
    max-width:none!important;
    grid-column:1 / -1!important;
    float:none!important;
    position:relative!important;
    right:auto!important;
    left:auto!important;
    top:auto!important;
    margin:12px 0 16px!important;
    box-sizing:border-box!important;
  }

  #contractorDashboardMount .gp2411-result-layout{
    display:block!important;
  }

  #contractorDashboardMount .gc-result-hero,
  #contractorDashboardMount .gc-result-heading,
  #contractorDashboardMount .result-hero{
    grid-template-columns:1fr!important;
  }
}

#contractorDashboardMount [data-gp-synced="1"]{
  color:#f5f7f7!important;
  font-weight:900!important;
}

/* GroundPredict v2.4.1.2 — stable visual fixes */
.gp-feature-pill,.gp-summary-pro{display:none!important}

.gc-nearby-mount{
  width:100%!important;
  max-width:none!important;
  margin:14px 0!important;
  padding:0!important;
  overflow:visible!important;
}
.gc-nearby-mount .nearby-field-panel,
.gc-nearby-mount .nearby-field-panel-empty{
  width:100%!important;
  box-sizing:border-box!important;
  margin:0!important;
  border:1px solid #294653!important;
  border-radius:10px!important;
  background:#020708!important;
  overflow:hidden!important;
}
.gc-nearby-mount .nearby-heading{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
}
.gc-nearby-mount .nearby-radius{
  position:static!important;
  flex:0 0 auto!important;
}
.gc-nearby-mount .nearby-disclaimer{
  width:100%!important;
  box-sizing:border-box!important;
  overflow-wrap:anywhere!important;
}
.gp-project-presets{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
@media(max-width:700px){
  .gc-nearby-mount .nearby-heading{flex-direction:column!important}
  .gc-nearby-mount .nearby-radius{width:100%!important;justify-content:space-between!important}
}
