@import "https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900&display=swap";@import "https://fonts.googleapis.com/css2?family=Geist+Mono:wght@300..700&display=swap";:root{--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--emerald-300:#6ee7b7;--emerald-400:#34d399;--emerald-500:#10b981;--emerald-600:#059669;--emerald-700:#047857;--background:#fff;--foreground:#1e2433;--card:#fff;--card-foreground:#1e2433;--muted:#f1f5f9;--muted-foreground:#64748b;--border:#e2e8f0;--input:#e2e8f0;--secondary:#f1f5f9;--secondary-foreground:#1e2433;--primary:#059c6e;--primary-foreground:#fff;--ring:#10b981;--accent:#d1fae5;--accent-foreground:#1d6f53;--status-scheduled:#10b981;--status-scheduled-fg:#047857;--status-future:#3b82f6;--status-future-fg:#1d4ed8;--status-delisted:#f59e0b;--status-delisted-fg:#b45309;--status-concluded:#94a3b8;--status-concluded-fg:#64748b;--status-cancelled:#ef4444;--status-cancelled-fg:#dc2626;--pos:#16a34a;--neg:#dc2626;--unviewed:#3b82f6;--bookmark:#eab308;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:14px;--radius-full:9999px;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--text-h1:24px;--text-h2:20px;--text-h3:18px;--text-base:16px;--text-sm:14px;--text-xs:12px;--text-2xs:11px}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{font-family:var(--font-sans);color:var(--foreground);-webkit-font-smoothing:antialiased;font-size:var(--text-sm);background:#f8fafc;line-height:1.45}button{font-family:inherit}a{color:var(--emerald-600);text-decoration:none}a:hover{color:var(--emerald-700);text-decoration:underline}.num,.tab-num{font-variant-numeric:tabular-nums}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.muted{color:var(--muted-foreground)}.xs{font-size:var(--text-xs)}.xxs{font-size:var(--text-2xs)}.pos{color:var(--pos)}.neg{color:var(--neg)}:focus-visible{outline:none;border-color:var(--ring)!important;box-shadow:0 0 0 3px #10b98159!important}.btn{border-radius:var(--radius-md);height:36px;font-size:var(--text-sm);white-space:nowrap;cursor:pointer;background:var(--background);color:var(--foreground);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:500;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.btn svg{width:16px;height:16px}.btn.default{background:var(--primary);color:#fff;box-shadow:var(--shadow-xs)}.btn.default:hover{background:#047f5a}.btn.secondary{background:var(--secondary);color:var(--secondary-foreground);box-shadow:var(--shadow-xs)}.btn.secondary:hover{background:#e7edf4}.btn.outline{border-color:var(--input);box-shadow:var(--shadow-xs)}.btn.outline:hover{background:var(--accent);color:var(--accent-foreground)}.btn.ghost{background:0 0}.btn.ghost:hover{background:var(--accent);color:var(--accent-foreground)}.btn.sm{height:32px;font-size:var(--text-xs);gap:6px;padding:0 12px}.btn.sm svg{width:14px;height:14px}.btn.icon{width:32px;height:32px;padding:0}.btn.icon.sm{width:28px;height:28px}.btn.icon svg{width:16px;height:16px}.btn:disabled{opacity:.5;pointer-events:none}.iconbtn{border-radius:var(--radius-md);width:34px;height:34px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.iconbtn:hover{background:var(--muted);color:var(--foreground)}.iconbtn svg{width:16px;height:16px}input[type=text],input[type=search],input[type=number],select,textarea{border-radius:var(--radius-md);border:1px solid var(--input);height:36px;font:inherit;font-size:var(--text-sm);box-shadow:var(--shadow-xs);color:var(--foreground);background:0 0;width:100%;padding:0 12px}textarea{resize:vertical;height:auto;padding:8px 12px;line-height:1.45}input::placeholder,textarea::placeholder{color:var(--muted-foreground)}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:30px}.compact input,.compact select,input.compact,select.compact{height:32px;font-size:13px}input[type=checkbox]{accent-color:var(--emerald-500);width:15px;height:15px;margin:0}.badge{border-radius:var(--radius-full);font-size:var(--text-xs);white-space:nowrap;align-items:center;gap:5px;padding:2px 9px;font-weight:500;line-height:1.4;display:inline-flex}.badge svg{width:12px;height:12px}.badge.secondary{background:var(--secondary);color:var(--secondary-foreground)}.badge.outline{border:1px solid var(--border);color:var(--foreground)}.badge.muted{border:1px solid var(--border);color:var(--muted-foreground)}.pill{border:1px solid var(--status-concluded);color:var(--status-concluded-fg);border-radius:var(--radius-full);font-size:var(--text-xs);white-space:nowrap;background:#fff;align-items:center;gap:5px;padding:2px 10px;font-weight:500;display:inline-flex}.pill.scheduled,.pill.yes{border-color:var(--status-scheduled);color:var(--status-scheduled-fg)}.pill.future,.pill.pushed{border-color:var(--status-future);color:var(--status-future-fg)}.pill.delisted,.pill.maybe{border-color:var(--status-delisted);color:var(--status-delisted-fg)}.pill.cancelled,.pill.dead{border-color:var(--status-cancelled);color:var(--status-cancelled-fg)}.linkpill{border:1px solid var(--border);border-radius:var(--radius-full);font-size:var(--text-xs);color:var(--foreground);background:#fff;align-items:center;gap:5px;padding:3px 10px;display:inline-flex}.linkpill:hover{background:var(--muted);color:var(--foreground);text-decoration:none}.linkpill svg{width:12px;height:12px}.eyebrow{letter-spacing:.07em;text-transform:uppercase;color:var(--emerald-500);font-size:12px;font-weight:600}.seg{background:var(--muted);border-radius:var(--radius-md);gap:2px;padding:2px;display:inline-flex}.seg button{font-size:var(--text-xs);border-radius:var(--radius-sm);color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;height:26px;padding:3px 10px;display:inline-flex}.seg button svg{width:13px;height:13px}.seg button.active{background:var(--emerald-500);color:#063a2b;font-weight:600}.seg button.active.maybe{color:#78350f;background:#fcd34d}.seg button.active.no{color:#1e2433;background:#cbd5e1}.card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:12px}.card .pad{padding:20px 24px}.card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;padding-bottom:14px;display:flex}.card-title{font-size:var(--text-h3);margin:0;font-weight:600}.kv{grid-template-columns:repeat(3,1fr);gap:14px 32px;display:grid}.kv.c4{grid-template-columns:repeat(4,1fr)}.kv.c2{grid-template-columns:repeat(2,1fr)}.kv .k{font-size:var(--text-xs);color:var(--muted-foreground);margin:0;font-weight:500}.kv .v{font-size:var(--text-sm);font-variant-numeric:tabular-nums;margin:3px 0 0;font-weight:500}.nav{background:var(--background);border-bottom:1px solid var(--border);z-index:30;height:64px;position:sticky;top:0}.nav .in{align-items:center;gap:16px;max-width:1180px;height:100%;margin:0 auto;padding:0 24px;display:flex;position:relative}.nav .in.wide{max-width:1400px}.nav .right{align-items:center;gap:8px;margin-left:auto;display:flex}.wordmark{letter-spacing:-.02em;color:var(--emerald-500);font-size:20px;font-weight:700;text-decoration:none}.wordmark:hover{color:var(--emerald-500);text-decoration:none}.nav .links{align-items:center;gap:2px;height:100%;display:flex;position:absolute;left:50%;transform:translate(-50%)}.nav .links a{font-size:var(--text-sm);color:var(--muted-foreground);padding:8px 12px;text-decoration:none;position:relative}.nav .links a:hover{color:var(--foreground)}.nav .links a.active{color:var(--foreground);font-weight:600}.nav .links a.active:after{content:"";background:var(--emerald-500);border-radius:9999px;height:2px;position:absolute;bottom:-9px;left:12px;right:12px}.avatar{background:var(--emerald-500);color:#fff;border-radius:9999px;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:600;display:inline-flex}.container{max-width:1180px;margin:0 auto;padding:28px 24px 60px}.container.wide{max-width:1400px}.page-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-title{font-size:var(--text-h1);letter-spacing:-.03em;margin:0;font-weight:700}.page-sub{color:var(--muted-foreground);margin:6px 0 0;font-size:15px}.toolbar{align-items:center;gap:8px;display:flex}.back{font-size:var(--text-sm);color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin-bottom:16px;padding:0;display:inline-flex}.back:hover{color:var(--foreground);text-decoration:none}.back svg{width:15px;height:15px}.list-body{gap:24px;margin-top:24px;display:flex}.sidebar{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);flex-shrink:0;align-self:flex-start;width:264px;max-height:calc(100vh - 112px);padding:16px;position:sticky;top:88px;overflow:auto}.fgroup+.fgroup{border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.fgroup .ft{justify-content:space-between;align-items:center;margin-bottom:6px;font-size:13px;font-weight:600;display:flex}.fgroup .clear{color:var(--emerald-600);cursor:pointer;background:0 0;border:0;padding:0;font-size:11px;font-weight:500}.frow{cursor:pointer;align-items:center;gap:8px;padding:4px 0;font-size:13px;display:flex}.frow .cnt{color:var(--muted-foreground);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px}.frange{color:var(--muted-foreground);align-items:center;gap:8px;display:flex}.main{flex:1;min-width:0}.twrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);overflow:auto hidden}table.t{border-collapse:collapse;width:100%;font-size:var(--text-sm)}table.t thead th{text-align:left;color:var(--muted-foreground);border-bottom:1px solid var(--border);background:var(--card);white-space:nowrap;padding:10px 14px;font-size:13px;font-weight:500}table.t .sort{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}table.t .sort svg{width:13px;height:13px}table.t .sort:hover{color:var(--foreground)}table.t tbody td{border-bottom:1px solid var(--border);white-space:nowrap;font-variant-numeric:tabular-nums;padding:11px 14px}table.t tbody tr:last-child td{border-bottom:0}table.t tbody tr.row{cursor:pointer;transition:background .12s}table.t tbody tr.row:hover{background:var(--muted)}table.t td.ind{text-align:center;width:16px;padding-left:14px;padding-right:0}table.t .dot{background:var(--unviewed);border-radius:9999px;width:8px;height:8px;display:inline-block}table.t td.ell{text-overflow:ellipsis;max-width:240px;overflow:hidden}table.t.sub td,table.t.sub th{padding:8px 12px;font-size:13px}.pager{font-size:var(--text-sm);color:var(--muted-foreground);justify-content:space-between;align-items:center;margin-top:14px;display:flex}.pager .r{align-items:center;gap:8px;display:flex}.pager .pg{text-align:center;min-width:60px;color:var(--foreground)}.empty{text-align:center;font-size:var(--text-sm);color:var(--muted-foreground);padding:60px 0}.map{border-radius:var(--radius-lg);border:1px solid var(--border);height:calc(100vh - 230px);min-height:420px;overflow:hidden}.leaflet-container{font:inherit}.detail-grid{grid-template-columns:1.4fr 1fr;align-items:start;gap:20px;margin-top:12px;display:grid}.summary{margin-top:12px;position:relative}.straddle{gap:6px;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.straddle .pill{box-shadow:var(--shadow-sm)}.narrative p{font-size:var(--text-sm);margin:0 0 10px;line-height:1.6}.narrative p:last-child{margin-bottom:0}.mapbox{border-radius:var(--radius-lg);border:1px solid var(--border);height:200px;overflow:hidden}.aerial{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--muted);width:100%;display:block}.aerial:hover{border-color:var(--emerald-500)}.pills{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.sec-h{align-items:center;gap:8px;margin:28px 0 12px;font-size:15px;font-weight:600;display:flex}.sec-h .n{color:var(--muted-foreground);font-weight:400}.sec-h .src{color:var(--muted-foreground);margin-left:auto;font-size:12px;font-weight:400}.score-bar{gap:3px;margin-top:6px;display:flex}.score-bar span{background:var(--border);border-radius:2px;flex:1;height:4px;overflow:hidden}.score-bar span i{background:var(--emerald-500);height:100%;display:block}.disc{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);overflow:hidden}.disc+.disc{margin-top:12px}.disc .head{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:12px 14px;display:flex}.disc .head:hover{background:var(--muted)}.disc .head .chev{width:16px;color:var(--muted-foreground);transition:transform .15s;display:inline-flex}.disc .head .chev svg{width:14px;height:14px}.disc.open .head .chev{transform:rotate(90deg)}.disc .head .t{min-width:160px;font-weight:600}.disc .head .h{color:var(--muted-foreground);flex:1;font-size:13px}.disc .head .h.warn{color:var(--status-delisted-fg)}.disc .head .src{color:var(--muted-foreground);font-size:12px}.disc .body{background:var(--card);border-top:1px solid var(--border);padding:14px}.disc .body table.t,.disc .body table.t thead th{background:0 0}.person{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:14px 16px}.person+.person{margin-top:12px}.person .top{align-items:flex-start;gap:12px;display:flex}.person .who{flex:1;min-width:0}.person .name{font-size:var(--text-sm);flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-weight:600;display:flex}.person .sub{color:var(--muted-foreground);align-items:center;gap:5px;margin:3px 0 0;font-size:12px;display:flex}.person .sub svg{flex-shrink:0;width:12px;height:12px}.person .pnote input{height:32px;font-size:13px}.contact-grid{grid-template-columns:1fr 1fr;gap:6px 24px;margin-top:12px;display:grid}.phone{border-radius:var(--radius-md);align-items:center;gap:8px;padding:4px 6px;display:flex}.phone.good{background:var(--accent)}.phone.bad{background:#fee2e2}.phone.meh{background:#fef3c7}.phone.bad .n{color:var(--muted-foreground);text-decoration:line-through}.phone .n{font-family:var(--font-mono);color:var(--foreground);font-size:13px;font-weight:500}.phone .meta{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:11px;overflow:hidden}.verdicts{gap:2px;display:inline-flex}.verdicts button{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.verdicts button svg{width:14px;height:14px}.verdicts button:hover{border-color:var(--border);color:var(--foreground);background:#fff}.verdicts button.on{border-color:var(--border);background:#fff}.verdicts button.on.correct{color:var(--pos)}.verdicts button.on.wrong,.verdicts button.on.dead,.verdicts button.on.dnc{color:var(--neg)}.verdicts button.on.noanswer{color:var(--status-delisted-fg)}.emails{flex-wrap:wrap;gap:6px 18px;margin-top:8px;font-size:13px;display:flex}.emails span{align-items:center;gap:5px;display:inline-flex}.emails svg{width:13px;height:13px;color:var(--muted-foreground)}.more{color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;margin-top:10px;padding:0;font-size:12px;display:inline-flex}.more:hover{color:var(--foreground)}.more svg{width:13px;height:13px;transition:transform .15s}.more.open svg{transform:rotate(90deg)}.pdetail{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);grid-template-columns:1fr 1fr;gap:14px 24px;margin-top:12px;padding:12px 14px;display:grid}.pdetail h4{color:var(--muted-foreground);margin:0 0 6px;font-size:12px;font-weight:600}.pdetail ul{margin:0;padding:0;font-size:13px;list-style:none}.pdetail li{gap:8px;padding:2px 0;display:flex}.pdetail li .d{color:var(--muted-foreground);white-space:nowrap;font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px}.addp{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.addp input{width:180px;height:32px;font-size:13px}.result{border-radius:var(--radius-lg);background:var(--card);border:1px solid var(--border);margin-top:12px;padding:12px 14px;font-size:13px}.result.err{border-color:var(--status-cancelled);color:var(--status-cancelled-fg)}pre.raw{white-space:pre-wrap;font-family:var(--font-mono);background:var(--muted);border-radius:var(--radius-md);max-height:320px;margin:0;padding:12px;font-size:12px;overflow:auto}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.detail-grid{grid-template-columns:1.4fr 1fr;align-items:stretch;margin-top:24px}.detail-grid .leftwrap{position:relative}.detail-grid .leftwrap .card.summary{flex-direction:column;margin-top:0;display:flex;position:absolute;inset:0}.card.summary .pad{flex:1;min-height:0;overflow:auto}.card.summary .narrative{padding-right:4px}.stats2{grid-template-columns:1fr 1fr;gap:16px 28px;margin-bottom:14px;display:grid}.stats2 .blk h3{letter-spacing:.07em;text-transform:uppercase;color:var(--emerald-500);margin:0 0 8px;font-size:12px;font-weight:600}.stats2 .kv{grid-template-columns:1fr 1fr;gap:10px 20px}.stats2 .legal{grid-column:1/-1;margin-top:10px}.thumbwrap{position:relative}.thumbwrap .straddle{z-index:5}.mapbox.sq{aspect-ratio:4/3;height:auto;margin-top:10px}.mapbox.full{z-index:200;aspect-ratio:auto;border-radius:0;height:100vh;margin:0;position:fixed;inset:0}.leaflet-bar a.fs{font-size:14px;line-height:26px}.badges{flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:60%;display:flex}.contact-grid{gap:2px 20px;margin-top:10px}.phone{padding:2px 6px}.phone .n{font-size:13px}.phone .n.em{font-family:var(--font-sans);font-weight:500}.verdicts button{width:24px;height:24px}.kin{border-top:1px solid var(--border);padding:10px 0}.kin:first-of-type{border-top:0}.kin .name{font-size:13px}.pdetail.list{display:block}.pdetail .col2{grid-template-columns:1fr 1fr;gap:14px 24px;display:grid}.stats{margin-bottom:14px}.stats .blk{border-top:1px solid var(--border);padding:12px 0}.stats .blk:first-child{border-top:0;padding-top:0}.stats .blk h3{letter-spacing:.07em;text-transform:uppercase;color:var(--emerald-500);margin:0 0 8px;font-size:12px;font-weight:600}.stats .kv{grid-template-columns:1fr 1fr;gap:10px 20px}.stats .kv .v.addr{white-space:pre-line;font-weight:400}.card-head .badges-l{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.portfolio a{margin-right:0}.thumbwrap{margin-top:0}.detail-grid{margin-top:28px}.contact-cols{grid-template-columns:1fr 1fr;gap:2px 20px;margin-top:10px;display:grid}.contact-cols .col{flex-direction:column;gap:2px;min-width:0;display:flex}.pushsel{color:var(--muted-foreground);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:inline-flex}.pushsel.on{color:var(--emerald-700);font-weight:500}.person .top .ctl{align-items:center;gap:8px;display:flex}.person .pnote{width:240px}table.t tr.unviewed td{font-weight:600}table.t tr.unviewed td.muted,table.t tr.unviewed td .badge{font-weight:500}table.t .dot.yes{background:var(--status-scheduled)}table.t .dot.maybe{background:var(--status-delisted)}table.t .dot.no{background:var(--status-cancelled)}table.t .dot.pushed{background:var(--status-future);box-shadow:0 0 0 2px #dbeafe}
