/* The Network (builder 5): public directory, profiles, requests, investor room, provider dashboard. Uses site.css tokens. */
.nw main{overflow-x:clip}
.nw .small{font-size:.85rem}.nw .mono{font-family:var(--mono)}
.nw-sub{border-bottom:1px solid var(--line);background:rgba(21,24,29,.7)}
.nw-sub .wrap{display:flex;gap:4px;align-items:center;overflow-x:auto;scrollbar-width:none;padding-top:8px;padding-bottom:8px}.nw-sub .wrap::-webkit-scrollbar{display:none}
.nw-sub a{white-space:nowrap;text-decoration:none;font-family:var(--mono);font-size:.82rem;padding:.45em .8em;border-radius:8px;color:var(--dim)}.nw-sub a:hover{color:var(--ink);background:var(--slot)}.nw-sub a.on{color:var(--ink);background:var(--slot);box-shadow:inset 0 -2px 0 var(--amber)}
.nw-sub .nw-sub-home{display:flex;gap:2px;padding:.2em .2em;margin-right:8px;color:var(--ink)}.nw-sub .nw-sub-home .flap{font-size:.75rem}
.nw-kicker{font-family:var(--mono);font-size:.8rem;letter-spacing:.08em;margin:0 0 .8em}.nw-kicker a{text-decoration:none}
.nw-hero{padding:clamp(36px,7vw,84px) 0 18px}.nw-hero h1{max-width:16ch}.nw-hero .lede{max-width:60ch;color:#cfd2d8}
.nw-dir{padding-bottom:30px}
.nw-tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:thin;border-bottom:1px solid var(--line);margin:0 0 16px}
.nw-tabs a{white-space:nowrap;text-decoration:none;padding:.6em .9em;font-family:var(--mono);font-size:.82rem;color:var(--dim);border-bottom:2px solid transparent}.nw-tabs a.on{color:var(--ink);border-color:var(--amber)}.nw-tabs a small{opacity:.7;margin-left:2px}
.nw-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;background:var(--board);border:1px solid var(--line);border-radius:14px;padding:14px}
.nw-filters label,.nw-more-b label{display:grid;gap:4px;font-family:var(--mono);font-size:.75rem;color:var(--dim);min-width:0;flex:1 1 150px}.nw-filters label.grow{flex:2 1 220px}
.nw input,.nw select,.nw textarea{padding:.7em .8em;border-radius:10px;border:1px solid var(--line);background:var(--slot);color:var(--ink);font:inherit;width:100%;min-width:0}
.nw input:focus-visible,.nw select:focus-visible,.nw textarea:focus-visible,.nw a:focus-visible,.nw button:focus-visible,.nw summary:focus-visible{outline:2px solid var(--amber);outline-offset:2px}
.nw-more{flex:1 1 100%}.nw-more summary{cursor:pointer;font-family:var(--mono);font-size:.8rem;color:var(--dim);padding:.3em 0}.nw-more-b{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.nw-fbtn{display:flex;gap:8px}.nw .btn{min-height:44px}
.nw-tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.nw-tags a,.nw-tags span{font-family:var(--mono);font-size:.75rem;padding:.3em .65em;border-radius:999px;background:var(--slot);text-decoration:none;color:#c9ccd2}.nw-tags a:hover{color:var(--amber)}
.nw-split{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:20px;align-items:start;margin-top:8px}
.nw-count{color:var(--dim);font-size:.8rem;margin:.2em 0 10px}
.nw-cards{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.nw-card{display:flex;flex-direction:column;text-decoration:none;background:var(--board);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:border-color .15s,transform .15s}.nw-card:hover{border-color:#3b414b;transform:translateY(-2px)}
.nw-card.feat{border-color:rgba(255,177,59,.45)}
.nw-card img{width:100%;height:150px;object-fit:cover;background:var(--slot)}
.nw-ini{display:flex;align-items:center;justify-content:center;height:150px;background:repeating-linear-gradient(135deg,var(--slot) 0 10px,#1b1f25 10px 20px);font-family:var(--mono);font-size:2.2rem;color:var(--amber);letter-spacing:.05em}
.nw-ini.big{height:auto;aspect-ratio:16/10;border-radius:14px;font-size:3.4rem}
.nw-card-b{padding:12px 14px 14px;display:grid;gap:4px}.nw-card-b h3{margin:0;font-size:1.02rem}.nw-card-b p{margin:0;color:#c3c6cc;font-size:.9rem;line-height:1.4}
.nw-card-k{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);margin:0 0 .3em}
.nw-feat{color:#1a1200;background:var(--amber);padding:.1em .5em;border-radius:4px}.nw-ver{color:var(--green)}
.nw-sample{color:#d9dbe0;border:1px dashed #6b717c;padding:.05em .5em;border-radius:4px;letter-spacing:.08em}
.nw-banner.nw-banner-sample{background:#1f232a;color:#d9dbe0;border-bottom:1px solid var(--line)}.nw-banner-sample b{color:var(--ink);font-family:var(--mono);font-weight:500;letter-spacing:.04em}
.nw-card-m{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:.78rem;color:var(--dim);font-family:var(--mono);margin-top:4px}
.nw-stars{color:var(--amber);letter-spacing:1px}
.nw-mapcol{position:sticky;top:76px;display:grid;gap:8px}
.nw-map{height:min(70vh,560px);border-radius:14px;border:1px solid var(--line);background:var(--board);overflow:hidden}
.nw-map .leaflet-popup-content-wrapper,.nw-map .leaflet-popup-tip{background:var(--board);color:var(--ink)}.nw-map .leaflet-popup-content a{color:var(--amber)}.nw-map .leaflet-container{background:#11141a}
.nw-map .nw-dark{filter:invert(1) hue-rotate(180deg) brightness(.82) contrast(.92) saturate(.35)}
.nw-map .leaflet-container .leaflet-control-attribution,.nw-map .leaflet-control-attribution{background:rgba(11,13,16,.85);color:#b4b9c2}.nw-map .leaflet-control-attribution a{color:var(--amber)}
.nw-map.leaflet-container,.nw-map .leaflet-container{background:#11141a}.nw-map .leaflet-bar a{background:#1f232a;color:var(--ink);border-color:var(--line)}.nw-map .leaflet-bar a:hover{background:#272c34}
.nw-pin{display:block;width:14px;height:14px;border-radius:50%;background:var(--amber);border:2px solid #1a1200;box-shadow:0 0 0 3px rgba(255,177,59,.25)}.nw-pin.f{background:#fff2c4}
.nw-empty{padding:30px;text-align:center;background:var(--board);border:1px dashed var(--line);border-radius:14px}
.nw-steps{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.nw-steps>div{background:var(--board);border:1px solid var(--line);border-radius:14px;padding:18px}.nw-steps .n{font-family:var(--mono);color:var(--amber);font-size:.8rem}
.nw-banner{background:#352810;color:var(--amber);padding:10px 20px;text-align:center;font-size:.92rem}
.nw-prof{padding-top:28px;padding-bottom:40px}
.nw-prof-h{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:center;margin-bottom:28px}
.nw-prof-img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:14px;border:1px solid var(--line)}
.nw-prof-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start}
.nw-prof-main section{margin-bottom:28px}.nw-prof-main h2{font-family:var(--mono);font-weight:500;font-size:1.05rem;letter-spacing:.04em;color:var(--ink)}
.nw-prof h1,.nw-avail h3,.nw-cta h3{font-family:var(--mono);color:var(--ink)}
.nw-prof-side{display:grid;gap:16px;position:sticky;top:76px}
.nw-facts .row{grid-template-columns:120px minmax(0,1fr);font-family:var(--sans);font-size:.92rem}.nw-facts .row>span:last-child{overflow-wrap:anywhere}.nw-facts .ok{color:var(--green);font-family:var(--mono)}.nw-facts .warn{color:var(--amber);font-family:var(--mono)}
.nw-rows .row{grid-template-columns:56px minmax(0,1fr) auto}
.nw-md p,.nw-md li{color:#d6d8dc}.nw-md ul{padding-left:1.2em}
.nw-photos{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.nw-photos img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}.nw-photos figcaption{font-size:.8rem;color:var(--dim)}
.nw-review{margin:0 0 12px;padding:14px 16px;background:var(--board);border-left:3px solid var(--amber);border-radius:0 10px 10px 0}.nw-review p{margin:0 0 .4em}
.nw-avail h3,.nw-cta h3{font-size:.95rem;margin:0 0 .6em}.nw-avail ul{list-style:none;padding:0;margin:0;display:grid;gap:4px;font-size:.9rem}
.nw-links{display:flex;flex-wrap:wrap;gap:8px}.nw-links a{font-family:var(--mono);font-size:.8rem;padding:.4em .8em;border:1px solid var(--line);border-radius:8px;text-decoration:none}
.nw-cta{background:var(--board);border:1px solid var(--line);border-radius:14px;padding:18px}
.nw-gate p{margin:0 0 .8em}.nw-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.nw-magic{margin-top:10px;border-top:1px dashed var(--line);padding-top:12px}
.nw .form label{display:grid;gap:4px;font-size:.82rem;color:var(--dim);font-family:var(--mono)}.nw .form .err{color:var(--red);font-size:.9rem;min-height:1.2em;margin:0}
.nw-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.nw-save{margin-top:10px;width:100%}
.nw-report summary{cursor:pointer;color:var(--dim);font-size:.82rem;padding:.6em 0;min-height:44px;display:flex;align-items:center}.nw-report[open] summary{color:var(--ink)}
.nw-reqs{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:16px}
.nw-req{display:grid;gap:4px;text-decoration:none;background:var(--board);border:1px solid var(--line);border-radius:14px;padding:16px}.nw-req:hover{border-color:#3b414b}.nw-req h3{margin:0}.nw-req p{margin:0}
.nw-disc{border:1px solid rgba(255,177,59,.35);background:rgba(255,177,59,.06);border-radius:12px;padding:12px 14px;font-size:.9rem;margin:16px 0}
.nw-narrow{max-width:640px}
.nw-join{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:32px;align-items:start}.nw-join .nw-alt{grid-column:2}
.nw-ticks{list-style:none;padding:0;display:grid;gap:8px}.nw-ticks li{padding-left:1.4em;position:relative}.nw-ticks li:before{content:'→';position:absolute;left:0;color:var(--amber);font-family:var(--mono)}
/* dashboard */
.nw-me{display:grid;gap:18px}
.nw-me-h{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}.nw-me-h h1{margin:0;font-size:clamp(1.5rem,4vw,2.2rem)}
.nw-status{display:flex;flex-wrap:wrap;gap:6px}.nw-status span{font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;padding:.35em .6em;border-radius:6px;background:var(--slot)}.nw-status .ok{color:var(--green)}.nw-status .warn{color:var(--amber)}.nw-status .bad{color:var(--red)}
.nw-jump{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.nw-jump a{white-space:nowrap;font-family:var(--mono);font-size:.78rem;text-decoration:none;padding:.45em .75em;border-radius:999px;background:var(--slot)}.nw-jump a b{color:var(--amber);margin-left:4px}
.nw-box{background:var(--board);border:1px solid var(--line);border-radius:14px;padding:18px;scroll-margin-top:80px}.nw-box h2{font-size:1.1rem;margin:0 0 .8em;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.nw-box h2 small{font-family:var(--sans);font-weight:400;color:var(--dim);font-size:.82rem}
.nw-grid2{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
.nw-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.nw-list li{background:var(--slot);border-radius:10px;padding:10px 12px;display:grid;gap:2px}.nw-list li.unread{box-shadow:inset 3px 0 0 var(--amber)}.nw-list .meta{font-size:.78rem;color:var(--dim);font-family:var(--mono)}
.nw-list button.link{background:none;border:0;padding:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;text-decoration:underline;text-decoration-color:#555}
.nw-thread{display:grid;gap:8px;margin-top:8px}.nw-msg{padding:8px 10px;border-radius:10px;background:var(--bg);font-size:.92rem}.nw-msg.mine{background:#2a2213}.nw-msg .meta{display:block}
.nw-pills{display:flex;flex-wrap:wrap;gap:6px}.nw-pill{font-family:var(--mono);font-size:.7rem;padding:.15em .55em;border-radius:999px;background:var(--bg);color:var(--ink)}.nw-pill.ok{color:var(--green)}.nw-pill.warn{color:var(--amber)}.nw-pill.bad{color:var(--red)}
.nw-tiers{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.nw-tier{border:1px solid var(--line);border-radius:12px;padding:12px}.nw-tier.on{border-color:var(--amber)}.nw-tier b{display:block;font-family:var(--mono)}.nw-tier p{margin:.3em 0 0;font-size:.85rem;color:var(--dim)}
.nw-leads{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}.nw-leads div{background:var(--slot);border-radius:10px;padding:10px;text-align:center}.nw-leads b{display:block;font-family:var(--mono);font-size:1.5rem;color:var(--amber)}.nw-leads span{font-size:.75rem;color:var(--dim)}
.nw-ph{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));margin-bottom:10px}.nw-ph figure{margin:0;position:relative}.nw-ph img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px}.nw-ph button{position:absolute;top:4px;right:4px;background:rgba(0,0,0,.7);color:#fff;border:0;border-radius:6px;min-width:32px;min-height:32px;cursor:pointer}
.nw-row-act{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.nw-tbl{width:100%;border-collapse:collapse;font-size:.88rem}.nw-tbl th,.nw-tbl td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:top}.nw-tbl th{font-family:var(--mono);font-size:.7rem;color:var(--dim);font-weight:500;letter-spacing:.06em}.nw-tblw{overflow-x:auto}
@media(max-width:1000px){.nw-split{grid-template-columns:1fr}.nw-mapcol{position:static;order:-1}.nw-map{height:240px}.nw-prof-grid,.nw-prof-h{grid-template-columns:1fr}.nw-prof-side{position:static}.nw-join{grid-template-columns:1fr}.nw-join .nw-alt{grid-column:auto}}
@media(max-width:560px){
  .nw-cards{gap:8px}
  .nw-card.noimg{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:start;padding:12px 14px;border-radius:12px}
  .nw-card.noimg .nw-ini{height:40px;width:40px;font-size:.9rem;border-radius:8px;background:var(--slot);box-shadow:inset 0 0 0 1px var(--line)}
  .nw-card.noimg .nw-card-b{padding:0;gap:2px}.nw-card .nw-card-b h3{font-size:.98rem}
  .nw-card .nw-card-b p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.86rem}
  .nw-card .nw-card-k{margin:0}.nw-card-m{margin-top:2px}
  .nw-card img{height:120px}
  .nw-prof-h.noimg{display:block}.nw-prof-h.noimg>div:first-child{display:none}
  .nw-2{grid-template-columns:1fr}.nw-fbtn{flex:1 1 100%}.nw-fbtn .btn{flex:1;justify-content:center}.nw-cards{grid-template-columns:1fr}.nw-reqs{grid-template-columns:1fr}.nw-facts .row{grid-template-columns:100px minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.nw-card{transition:none}.nw-card:hover{transform:none}}

.nw-map .leaflet-container .leaflet-control-attribution{background:rgba(11,13,16,.9)!important;color:#c9ced6!important}
