/* Rural Entrepreneurship: Business map, Change map and Trends. Loaded after ../black-business-places/styles.css,
   which carries the fonts, layout and phone sheet. Green does every job blue does in the Black business tools
   (Dante's UX direction, 2026-11-07); the selected county outline stays gold. Green lives only inside these pages. */
.rural{
  --action:#2b7a3d; --rural:#2b7a3d; --rural-dark:#1f5c2d; --rural-deep:#14532d; --rural-sky:#8fd19e; --rural-tint:#eaf5ec;
  --purple:#7d52a8; --purple-tint:#f1ecf7;
}
.rural a{color:var(--rural)}
.rural .top a{color:#fff}

/* Header: wordmark, crumb and title, page tabs, How we read this */
.rural .brand{border-right-color:rgba(143,209,158,.35)}
.rural .crumb{color:var(--rural-sky);display:flex;gap:6px;align-items:center;white-space:nowrap;overflow:hidden}
.rural .top .crumb a{color:var(--rural-sky);text-decoration:none}
.rural .top .crumb a:hover{color:#fff}
.rural .titlewrap{flex:0 1 auto}
.tabs{display:flex;gap:22px;align-self:stretch;margin-left:18px;flex:1;min-width:0}
.tabs a{display:flex;align-items:center;font-weight:600;font-size:14px;color:#fff;text-decoration:none;opacity:.82;border-bottom:3px solid transparent;border-top:3px solid transparent;white-space:nowrap}
.tabs a:hover{opacity:1}
.tabs a[aria-current="page"]{opacity:1;border-bottom-color:var(--rural-sky)}
.tabs .sw2{display:none}
.rural .how{border-color:rgba(143,209,158,.55)}

/* Controls */
.rural .seg button[aria-pressed="true"]{background:var(--rural);color:#fff}
.rural .seg button[aria-pressed="true"]:hover{background:var(--rural-dark)}
.rural .seg button:hover{background:var(--rural-tint)}
.rural .controls{gap:14px}
.rural .picker{width:300px}
.ctl{display:flex;align-items:center;gap:7px;flex:none;min-width:0}
.ctllbl{font-size:13px;color:var(--slate);white-space:nowrap}
.sel{border:1px solid var(--silver);border-radius:6px;padding:8px 30px 8px 11px;font:inherit;font-size:14px;color:var(--ink);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0h10L5 6z' fill='%23475569'/%3E%3C/svg%3E") no-repeat right 11px center;-webkit-appearance:none;appearance:none;max-width:340px;cursor:pointer;text-overflow:ellipsis}
.sel:hover{border-color:var(--slate)}
.sel:disabled{opacity:.6;cursor:default;background-color:var(--cloud)}
.rural .dropitem:hover,.rural .dropitem[aria-selected="true"],.rural .dropitem.active{background:var(--rural-tint)}
.dropitem .tagst{font-size:11px;font-weight:700;color:var(--rural-dark);background:var(--rural-tint);border-radius:3px;padding:1px 6px;flex:none}
.dropitem .alias{display:block;font-size:11.5px;color:var(--slate);font-weight:400}

/* Map */
.rural #map{top:58px;bottom:118px;height:calc(100% - 176px)}
.rural #map .cty{cursor:pointer;vector-effect:non-scaling-stroke;stroke-width:.45px}
.rural #map .hov{fill:none;stroke:var(--navy);stroke-width:1.5px;vector-effect:non-scaling-stroke;pointer-events:none}
.rural #map .selc{fill:none;stroke:var(--gold);stroke-width:2.5px;vector-effect:non-scaling-stroke;pointer-events:none}
.rural #map .stl{fill:none;stroke:#fff;stroke-width:1.2px;vector-effect:non-scaling-stroke;pointer-events:none;stroke-linejoin:round}
.rural #map .selring{fill:none;stroke:var(--gold);stroke-width:2.5px;vector-effect:non-scaling-stroke;pointer-events:none}
.rural #map .typel{fill:none;stroke:var(--gold);stroke-width:1.6px;vector-effect:non-scaling-stroke;pointer-events:none;stroke-linejoin:round}
.rural .mapctl .btn,.rural .mapctl .zm button{color:var(--navy)}
.rural .legend{bottom:52px;max-width:calc(100% - 56px)}
.rural .legend .lt{flex-basis:100%}
.rural .legend .k[title]{cursor:help}
.rural .legend .note2{flex-basis:100%;font-size:11.5px;color:var(--slate);margin-top:-2px}
.sw.metro{background:#f4f6f8}
.sw.hatch2{background:repeating-linear-gradient(-45deg,#eef6f0 0 3px,#9fd0a8 3px 5px)}
.sw.hatch3{background:radial-gradient(circle,#94a3b8 0 1px,transparent 1.5px) 0 0/4px 4px,#f1f3f6}
.sw.hatch4{background:repeating-linear-gradient(0deg,#fff8e7 0 3px,#d8a84f 3px 4.5px)}
.maphint{position:absolute;left:28px;top:16px;z-index:4;background:#fff;border:1px solid var(--mist);border-radius:6px;padding:7px 12px;font-size:13px;font-weight:700;color:var(--navy);box-shadow:0 4px 14px rgba(13,36,61,.06)}
.has-stamp .maphint{top:58px}
.tip .t2{font-size:12.5px;color:var(--slate)}
.tip .t3{font-size:12.5px;color:var(--ink);margin-top:2px}
.tip .np{color:var(--slate);font-weight:600}

/* Panel */
.rural .back{color:var(--rural)}
.pr{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:4px 12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--mist);font-size:13.5px;line-height:1.3}
.pr .pv{font-family:var(--display);font-weight:700;color:var(--navy);font-size:15px;white-space:nowrap;text-align:right}
.pr .pv.np{font-family:var(--body);font-weight:500;color:var(--slate);font-size:12.5px}
.pr .pc{display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:150px}
.pr .rf{font-size:11.5px;color:var(--slate);white-space:nowrap}
.yrs{display:block;font-size:11.5px;color:var(--slate);font-weight:400;margin-top:1px}
.unusual{display:inline-block;font-size:10.5px;font-weight:700;color:#7a5a12;background:#fff8e7;border:1px solid var(--gold-l);border-radius:3px;padding:0 5px;margin-left:4px;cursor:help;vertical-align:1px;flex:none}
.pr .why2{grid-column:1/-1;font-size:12px;color:var(--slate);margin-top:-2px}
.pr.sub1{padding-left:12px;font-size:13px}
.prhead{font-size:12.5px;color:var(--slate);font-weight:600;padding:8px 0 0}
.bchip{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:700;border-radius:11px;padding:2px 9px;white-space:nowrap;line-height:1.45}
.bchip.up{background:var(--rural-tint);color:var(--rural-dark)}
.bchip.same{background:#eef1f4;color:#334155}
.bchip.down{background:#f1f3f6;color:#475569}
.bchip.gain{background:var(--rural-tint);color:var(--rural-dark)}
.bchip.loss{background:var(--purple-tint);color:#5b3a80}
.bchip.wrap{white-space:normal;text-align:right;border-radius:9px}
.tchip{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;border-radius:11px;padding:2px 10px 2px 6px;background:#f1f3f6;color:var(--ink);white-space:nowrap}
.tchip .dotc{width:10px;height:10px;border-radius:50%;flex:none}
.rchip{display:inline-block;font-size:12px;font-weight:700;border-radius:11px;padding:2px 10px;background:var(--rural-tint);color:var(--rural-dark)}
.rchip.metro{background:#eef1f4;color:#334155}
.rbar{display:grid;grid-template-columns:repeat(9,1fr);gap:3px;margin:9px 0 3px;max-width:360px}
.rbar span{height:6px;border-radius:2px;background:var(--mist)}
.rbar span.on{background:var(--rural);height:10px;margin-top:-2px}
.rbar span.mt{background:#cfd8e3}
.rbar span.mt.on{background:var(--navy)}
.rbarl{display:flex;justify-content:space-between;max-width:360px;font-size:11px;color:var(--slate)}
.popl{font-size:13.5px;color:var(--ink);margin-top:8px}
.popl .code{color:var(--slate)}
.help{font-size:12px;color:var(--slate);line-height:1.45;margin-top:8px}
.szbars{margin-top:4px}
.szrow{display:grid;grid-template-columns:150px 1fr 54px;gap:10px;align-items:center;font-size:12.5px;padding:3px 0}
.szrow .bk{height:10px;background:var(--mist);border-radius:2px;overflow:hidden}
.szrow .bk i{display:block;height:100%;background:var(--rural)}
.szrow .bk i.solo{background:var(--rural-sky)}
.szrow b{text-align:right;color:var(--navy);font-family:var(--display);font-weight:700}
.linkbtn{color:var(--rural);font-weight:700;font-size:13px;padding:0;margin-top:6px}
.linkbtn:hover{text-decoration:underline}
.since{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.since .big2{font-family:var(--display);font-weight:800;font-size:19px;color:var(--navy)}
.spark{display:block;margin-top:6px;max-width:100%}
.spark text{font-family:var(--body)}
.links{display:flex;flex-direction:column;gap:7px;margin-top:4px}
.links a{font-size:13.5px;font-weight:700;text-decoration:none}
.links a:hover{text-decoration:underline}
.srcline{font-size:11.5px;color:var(--slate);margin-top:14px;line-height:1.45}
.stackbar{display:flex;height:14px;border-radius:3px;overflow:hidden;margin:8px 0 6px;border:1px solid var(--mist)}
.stackbar i{display:block;height:100%}
.stackkey{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;color:var(--slate)}
.stackkey span{display:inline-flex;align-items:center;gap:5px}
.lrow{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:7px 2px;border-bottom:1px solid var(--mist);font-size:13.5px;width:100%;text-align:left}
.lrow .nm{color:var(--rural);font-weight:500;display:flex;align-items:baseline;gap:5px;min-width:0}
.lrow .nm .cn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.lrow .nm small{color:var(--slate);font-weight:400;flex:none}
.lrow:hover .nm{text-decoration:none}.lrow:hover .nm .cn{text-decoration:underline}
.lrow .vv{font-family:var(--display);font-weight:700;color:var(--navy);white-space:nowrap}
.lrow .vv.np{font-family:var(--body);font-weight:500;font-size:12px;color:var(--slate)}
.lrow:hover{background:var(--cloud)}
.lrow:hover .nm{text-decoration:underline}
.lrow:focus-visible{outline-offset:-2px}
.lrow .sw{width:14px;height:14px}
.lists2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.typerow{display:grid;grid-template-columns:16px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 8px;border:1px solid transparent;border-bottom-color:var(--mist);font-size:13.5px;width:100%;text-align:left;border-radius:4px}
.typerow:hover{background:var(--cloud)}
.typerow[aria-pressed="true"]{background:var(--rural-tint);border-color:var(--gold)}
.typerow b{font-family:var(--display);color:var(--navy)}
.typerow small{display:block;color:var(--slate);font-size:11.5px;line-height:1.35}
.phonehint{background:var(--rural-tint);border-radius:6px;padding:8px 10px;font-size:12.5px;font-weight:600;color:var(--rural-dark);margin-bottom:10px}
.metronote{background:#f1f3f6;border-radius:6px;padding:8px 10px;font-size:12.5px;line-height:1.45;color:var(--ink);margin:10px 0 0}
.more50{margin-top:10px;border:1px solid var(--silver);border-radius:6px;padding:7px 14px;font-weight:600;font-size:13px;color:var(--navy);background:#fff}
.more50:hover{background:var(--cloud)}

/* Method */
.readPage{max-width:1180px}
.readPage h1{font-family:var(--display);font-weight:800;font-size:30px;color:var(--navy);margin:4px 0 16px}
.readGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.readGrid .card ul{padding-left:18px}
.readGrid .card li+li{margin-top:4px}
.readGrid .card.wide{grid-column:1/-1}
.readGrid dl{display:grid;grid-template-columns:minmax(150px,auto) 1fr;gap:6px 14px;font-size:13.5px;line-height:1.45;color:var(--slate)}
.readGrid dt{font-weight:700;color:var(--ink)}
.ramp{display:flex;flex-wrap:wrap;gap:6px 14px;margin:10px 0 4px;font-size:12.5px;color:var(--slate)}
.ramp span{display:inline-flex;align-items:center;gap:6px}
.motto{font-family:var(--display);font-weight:800;color:var(--rural-dark);font-size:18px;margin-top:6px}

/* Trends page: a normal scrolling page under the tool header */
body.rural.trends{overflow:auto;height:auto}
.trends .controls.tcontrols{height:auto;min-height:var(--ctl-h);flex-wrap:wrap;padding:12px 28px;row-gap:10px}
.tgroup{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0}
.cmpchip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--silver);border-radius:16px;padding:4px 6px 4px 11px;font-size:13px;font-weight:600;color:var(--ink);background:#fff}
.cmpchip i{width:10px;height:10px;border-radius:50%;display:inline-block}
.cmpchip button{width:22px;height:22px;border-radius:50%;font-size:15px;line-height:1;color:var(--slate)}
.cmpchip button:hover{background:var(--cloud);color:var(--ink)}
.addbtn{border:1px solid var(--silver);border-radius:6px;padding:8px 12px;font-size:14px;font-weight:600;color:var(--navy);background:#fff}
.addbtn:hover{background:var(--rural-tint)}
.addbtn[disabled]{opacity:.5;cursor:default}
.chk{display:inline-flex;align-items:center;gap:7px;font-size:14px;color:var(--ink);border:1px solid var(--silver);border-radius:6px;padding:8px 12px;cursor:pointer;background:#fff}
.chk input{accent-color:var(--rural);width:16px;height:16px}
.findq{border:1px solid var(--silver);border-radius:6px;padding:8px 12px;font:inherit;font-size:14px;width:220px}
.tmain{background:var(--cloud);padding:22px 28px 40px;min-height:calc(100vh - var(--top-h) - var(--ctl-h))}
.tgrid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:20px;align-items:start;max-width:1500px}
.ccard{background:#fff;border:1px solid var(--mist);border-radius:8px;padding:18px 20px}
.ccard+.ccard{margin-top:18px}
.ccard h2{font-family:var(--display);font-weight:800;font-size:19px;color:var(--navy);line-height:1.2}
.ccard .chead{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;margin-bottom:4px}
.ccard .csub{font-size:12.5px;color:var(--slate);line-height:1.45;margin-top:3px}
.chart{position:relative;margin-top:8px}
.chart svg{display:block;overflow:visible}
.chart text{font-family:var(--body)}
.chart .hbox{position:absolute;pointer-events:none;background:#fff;border:1px solid var(--mist);box-shadow:var(--shadow);border-radius:6px;padding:7px 10px;font-size:12px;line-height:1.5;z-index:3;white-space:nowrap}
.chart .hbox b{font-family:var(--display);color:var(--navy)}
.chart .hbox .r{display:flex;justify-content:space-between;gap:14px}
.chart .hbox .r i{display:inline-block;width:10px;height:3px;margin-right:6px;vertical-align:middle}
.nums{margin-top:6px;font-size:12.5px}
.nums summary{cursor:pointer;color:var(--rural);font-weight:700;display:inline-block}
.numswrap{overflow-x:auto;margin-top:6px;max-height:320px;overflow-y:auto;border:1px solid var(--mist);border-radius:6px}
.nums table{border-collapse:collapse;font-size:12px;width:100%}
.nums th,.nums td{padding:4px 8px;border-bottom:1px solid var(--mist);text-align:right;white-space:nowrap}
.nums thead th{background:var(--cloud);color:var(--slate);position:sticky;top:0}
.nums tbody th{text-align:left;color:var(--slate);font-weight:600}
.chartempty{padding:40px 0;text-align:center;color:var(--slate);font-size:14px}
.side.ccard{position:sticky;top:12px;margin-top:0}
.side h2{font-size:24px;margin:5px 0 6px}
.gnote{margin-top:10px;font-size:13.5px;color:var(--ink);line-height:1.5;border-left:3px solid var(--gold);padding:3px 0 3px 10px}
.empty1{padding:50px 20px;text-align:center}
.empty1 h2{font-size:22px}
.empty1 p{color:var(--slate);font-size:14px;margin-top:8px}
.tblcap{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:12px}
.tblcap p{font-size:14px;color:var(--ink)}
.tblcap .sortline{font-size:13px;color:var(--slate);margin-top:3px}
.tblcap .dl{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.tblcap .dl a,.tblcap .dl button{font-weight:700;font-size:14px;color:var(--rural);text-decoration:none}
.tblcap .dl .sm{font-weight:600;font-size:12.5px}
.tblcap .dl a:hover,.tblcap .dl button:hover{text-decoration:underline}
.ctable-wrap{overflow-x:auto;border:1px solid var(--mist);border-radius:6px;-webkit-overflow-scrolling:touch;background:#fff}
.ctable{border-collapse:separate;border-spacing:0;width:100%;font-size:13px;min-width:980px}
.ctable th{position:sticky;top:0;background:var(--navy);color:#fff;text-align:left;font-weight:700;font-size:12px;padding:0;white-space:normal;vertical-align:bottom;z-index:1;line-height:1.25}
.ctable th button{color:#fff;font-weight:700;padding:9px 8px;width:100%;text-align:inherit;display:flex;gap:4px;align-items:flex-end;max-width:150px}
.ctable th.num button{margin-left:auto}
.ctable th.num button{justify-content:flex-end}
.ctable th button:hover{background:var(--navy2)}
.ctable th button:focus-visible{outline-color:var(--gold-l);outline-offset:-3px}
.ctable th .ar{font-size:11px;opacity:.9}
.ctable td{padding:8px 8px;border-bottom:1px solid var(--mist);white-space:nowrap;color:var(--ink)}
.ctable td.num{text-align:right;font-variant-numeric:tabular-nums}
.ctable td.np{color:var(--slate);font-size:12px}
.ctable td.sorted{font-weight:700;color:var(--navy)}
.ctable th:first-child,.ctable td:first-child{position:sticky;left:0;z-index:2}
.ctable td:first-child{background:#fff;font-weight:600}
.ctable th:first-child{z-index:3}
.ctable tbody tr{cursor:pointer}
.ctable tbody tr:hover td{background:var(--rural-tint)}
.ctable tbody tr:focus-visible td{background:var(--rural-tint)}
.ctable tbody tr:focus-visible{outline:3px solid var(--rural);outline-offset:-3px}
.ctable td .sw{width:10px;height:10px;margin-right:6px;vertical-align:-1px}

/* Tablet */
@media (max-width:1240px) and (min-width:768px){
  .tabs{gap:14px;margin-left:8px}
  .tabs .lw{display:none}.tabs .sw2{display:inline}
  .rural .picker{width:230px}
  .ctllbl{display:none}
  .sel{max-width:250px}
  .tgrid{grid-template-columns:minmax(0,1fr) 320px}
  .pr .pc{min-width:0}
}
@media (max-width:1000px) and (min-width:768px){
  .rural .crumb{display:none}
  .rural .controls{gap:8px;padding:0 12px}
  .rural .picker{width:190px}
  .sel{max-width:200px;font-size:13px}
  .tgrid{grid-template-columns:1fr}
  .side.ccard{position:static}
}

/* Phone */
@media (max-width:767.98px){
  .rural{--top-h:88px;--ctl-h:150px}
  .rural .top{display:grid;grid-template-columns:auto 1fr;grid-template-rows:50px 38px;padding:0 14px;gap:0 10px;align-items:center}
  .rural .brand{grid-row:1;grid-column:1}
  .rural .titlewrap{grid-row:1;grid-column:2;min-width:0}
  .rural .title{font-size:15px;line-height:1.1}
  .tabs{grid-row:2;grid-column:1/-1;margin:0;gap:24px;border-top:1px solid rgba(255,255,255,.12);height:38px}
  .tabs a{font-size:13px}
  .tabs .lw{display:none}.tabs .sw2{display:inline}
  .rural .controls{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:8px 12px;align-content:center}
  .rural .controls .picker{grid-column:1/-1;width:100%}
  .rural .controls .ctl{min-width:0}
  .rural .controls #measureCtl{grid-column:1/-1}
  .rural .controls.jobs #measureCtl{grid-column:auto}
  .rural .crumb{display:none}
  .ctllbl{display:none}
  .sel{width:100%;max-width:none;font-size:13px;padding:7px 26px 7px 9px;height:37px}
  .rural .controls #scopeSeg{grid-column:1/-1;width:100%}
  .rural .controls #scopeSeg button{flex:1;padding:7px 5px;font-size:12.5px}
  .rural #map{top:14px;left:8px;right:8px;width:calc(100% - 16px);bottom:auto;height:calc(44% - 62px)}
  .rural .legend{grid-template-columns:repeat(4,auto);top:auto;bottom:calc(56% + 4px);font-size:9.5px}
  .rural .legend.n6{grid-template-columns:repeat(6,auto)}
  .rural .legend.n7{grid-template-columns:repeat(4,auto)}
  .rural .legend .note2{display:none}
  .maphint{display:none}
  .pr{font-size:12px;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px}
  .pr .pv{font-size:13px}
  .pr .pc{grid-column:1/-1;flex-direction:row;justify-content:flex-start;align-items:center;gap:8px;min-width:0}
  .bchip{font-size:11px;padding:1px 8px}
  .szrow{grid-template-columns:118px 1fr 44px;font-size:11.5px}
  .lists2{grid-template-columns:1fr}
  .lrow{font-size:12.5px}
  .phonehint{font-size:12px}
  .readGrid{grid-template-columns:1fr}
  .readGrid dl{grid-template-columns:1fr}
  .readPage h1{font-size:23px}
  .trends .controls.tcontrols{display:flex;padding:10px 12px;gap:8px}
  .trends .controls.tcontrols .seg{width:100%}
  .trends .controls.tcontrols .seg button{flex:1;padding:7px 4px;font-size:12px}
  .trends .tgroup{width:100%;gap:8px}
  .trends .tgroup .picker{width:100%}
  .findq{width:100%}
  .trends .tgroup .ctl,.trends .tgroup .chk{width:100%}
  .trends .tgroup #chips:empty{display:none}
  .tblcap .dl{align-items:flex-start}
  .tmain{padding:12px 10px 30px}
  .tgrid{grid-template-columns:1fr;gap:12px}
  .side.ccard{position:static}
  .ccard{padding:14px 12px}
  .ctable{font-size:12px;min-width:960px}
  .ctable td:first-child{max-width:150px;white-space:normal}
}
