:root{color-scheme:light;--bg:#f3f6f9;--surface:#fff;--surface-2:#f8fafc;--ink:#132238;--muted:#65748a;--line:#dce3eb;--navy:#0b1728;--navy-2:#172b46;--orange:#f97316;--orange-soft:#fff0e5;--blue:#2563eb;--green:#17845b;--shadow:0 16px 40px rgba(18,35,57,.10);--radius:14px}
[data-theme="dark"]{color-scheme:dark;--bg:#09111e;--surface:#101d2e;--surface-2:#142338;--ink:#ecf3fb;--muted:#9bacbf;--line:#26384d;--navy:#07101c;--navy-2:#14263d;--orange-soft:#3a2418;--shadow:0 18px 45px rgba(0,0,0,.3)}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(249,115,22,.28);outline-offset:2px}[hidden]{display:none!important}
.topbar{height:68px;background:var(--navy);color:#fff;display:flex;align-items:center;padding:0 28px;position:sticky;top:0;z-index:20;box-shadow:0 1px 0 rgba(255,255,255,.08)}.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:800;font-size:1.08rem}.brand-mark{width:36px;height:36px;border-radius:10px;background:var(--orange);display:grid;place-items:center;font-size:.82rem;letter-spacing:-.05em}.prototype{font-size:.67rem;letter-spacing:.08em;color:#fdba74;border:1px solid rgba(253,186,116,.35);border-radius:999px;padding:4px 7px}.source-status{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:.82rem;color:#bdc9d7}.live-dot{width:8px;height:8px;border-radius:50%;background:#36d399;box-shadow:0 0 0 4px rgba(54,211,153,.12)}.icon-button{width:38px;height:38px;border:1px solid var(--line);background:transparent;color:inherit;border-radius:10px;margin-left:16px;font-size:1.25rem}
.app-shell{display:grid;grid-template-columns:276px minmax(0,1fr);min-height:calc(100vh - 68px)}.sidebar{background:var(--surface);border-right:1px solid var(--line);padding:28px 22px;position:sticky;top:68px;height:calc(100vh - 68px);overflow:auto}.sidebar-heading,.workspace-head,.results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.eyebrow{margin:0 0 6px;font-size:.72rem;line-height:1.2;font-weight:800;letter-spacing:.12em;color:var(--orange)}.text-button{border:0;background:transparent;color:var(--blue);font-size:.86rem}.field{display:grid;gap:8px;margin-top:22px;font-size:.86rem;font-weight:700}.field input,.field select,.results-toolbar select{width:100%;min-height:44px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:10px;padding:0 12px;font-weight:500}.search-wrap{display:flex;align-items:center;border:1px solid var(--line);background:var(--surface-2);border-radius:10px;padding-left:12px;color:var(--muted)}.search-wrap input{border:0;background:transparent;padding-left:8px}.check-group{border:0;padding:0;margin:22px 0 0}.check-group legend{margin-bottom:10px}.check-group label{font-weight:500;display:flex;gap:8px;margin:10px 0;color:var(--muted)}.check-group input{width:17px;min-height:17px;accent-color:var(--orange)}.saved-search{display:flex;gap:12px;margin-top:26px;padding:15px;border-radius:12px;background:var(--orange-soft);border:1px solid color-mix(in srgb,var(--orange) 20%,transparent)}.saved-icon{color:var(--green)}.saved-search strong{font-size:.84rem}.saved-search p{font-size:.76rem;line-height:1.45;color:var(--muted);margin:4px 0 0}
.workspace{padding:34px clamp(22px,4vw,56px) 80px;max-width:1500px;width:100%}.workspace-head h1{font-size:clamp(1.7rem,3vw,2.35rem);margin:0;letter-spacing:-.04em}.result-copy{color:var(--muted);margin:7px 0 0}.head-actions{display:flex;gap:10px}.primary-button,.secondary-button{min-height:42px;border-radius:10px;padding:0 16px;font-weight:750;border:1px solid var(--line)}.primary-button{background:var(--orange);color:#fff;border-color:var(--orange)}.secondary-button{background:var(--surface);color:var(--ink)}#mobileFilters{display:none}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:28px 0}.stats article{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:17px 18px;display:grid;gap:7px}.stats span{font-size:.78rem;color:var(--muted);font-weight:650}.stats strong{font-size:1.5rem}.stats .accent-stat{background:var(--navy-2);border-color:var(--navy-2);color:#fff}.stats .accent-stat span{color:#c4d1df}
.results-toolbar{margin:6px 0 14px}.view-tabs{display:flex;background:var(--surface-2);padding:4px;border-radius:10px;border:1px solid var(--line)}.view-tabs button{border:0;background:transparent;color:var(--muted);padding:8px 13px;border-radius:7px;font-weight:700}.view-tabs button.active{background:var(--surface);color:var(--ink);box-shadow:0 2px 8px rgba(15,30,50,.08)}.results-toolbar>label{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:.82rem}.results-toolbar select{width:auto;min-height:36px}
.results{display:grid;gap:10px}.investment-card,.entity-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;transition:.16s ease}.investment-card:hover,.entity-card:hover{border-color:#a9b8c9;box-shadow:0 9px 24px rgba(18,35,57,.07);transform:translateY(-1px)}.card-main,.entity-main{min-width:0}.card-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.segment-chip,.new-chip,.status-chip,.entity-chip{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;font-size:.69rem;font-weight:800}.segment-chip{background:#eaf1ff;color:#27539c}.new-chip{background:#e5f7ef;color:#14704e}.status-chip,.entity-chip{background:var(--orange-soft);color:#b84d08}.investment-card h3,.entity-card h3{font-size:1rem;line-height:1.4;margin:11px 0 9px}.meta{display:flex;gap:15px;flex-wrap:wrap;color:var(--muted);font-size:.78rem}.meta span{display:flex;align-items:center;gap:5px}.card-contacts{display:flex;gap:20px;margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}.contact-line{min-width:0}.contact-line small{display:block;color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;font-weight:750;margin-bottom:3px}.contact-line span{font-size:.8rem;font-weight:650}.muted-value{color:var(--muted);font-weight:500!important}.card-actions{display:flex;align-items:flex-start;gap:7px}.star-button,.open-button{border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:9px;min-height:38px}.star-button{width:40px;font-size:1.1rem}.star-button.active{color:#f59e0b;background:#fff8df;border-color:#f4d264}.open-button{padding:0 13px;font-weight:750;font-size:.8rem}.entity-card>.open-button{align-self:center}.entity-counts{display:flex;align-items:baseline;gap:6px 9px;margin:10px 0;color:var(--muted);font-size:.8rem}.entity-counts strong{font-size:1.15rem;color:var(--ink)}.loading-state,.empty-state{background:var(--surface);border:1px dashed var(--line);border-radius:var(--radius);padding:45px;text-align:center;color:var(--muted)}.empty-state{display:grid;gap:5px}.pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin:20px 0}.pagination button{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;padding:10px 14px;font-weight:750}.pagination span{color:var(--muted);font-size:.82rem}
.sheet-backdrop{position:fixed;inset:0;background:rgba(4,12,23,.52);z-index:40}.detail-sheet{position:fixed;right:0;top:0;bottom:0;width:min(600px,94vw);background:var(--surface);z-index:50;box-shadow:-20px 0 50px rgba(0,0,0,.18);transform:translateX(104%);transition:transform .24s ease;overflow:auto}.detail-sheet.open{transform:translateX(0)}.sheet-head{display:flex;align-items:flex-start;justify-content:space-between;padding:24px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface);z-index:2}.sheet-head h2{font-size:1.2rem;line-height:1.4;margin:0;max-width:480px}.detail-content{padding:22px 24px 40px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-box{background:var(--surface-2);border:1px solid var(--line);border-radius:11px;padding:13px}.detail-box.full{grid-column:1/-1}.detail-box small{display:block;color:var(--muted);font-size:.69rem;text-transform:uppercase;letter-spacing:.06em;font-weight:750;margin-bottom:5px}.detail-box strong{font-size:.88rem;line-height:1.4;word-break:break-word}.detail-section{margin-top:25px}.detail-section h3{font-size:.92rem;margin:0 0 11px}.status-row{display:flex;gap:7px;flex-wrap:wrap}.status-row button{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:9px;padding:8px 10px;font-size:.78rem}.status-row button.active{background:var(--navy-2);color:#fff;border-color:var(--navy-2)}.relation-list,.project-list{display:grid;gap:7px}.relation-row,.project-row{width:100%;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:10px;padding:11px 12px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:15px}.relation-row:hover,.project-row:hover{border-color:#a9b8c9;background:var(--surface)}.relation-row span{font-weight:700;font-size:.84rem}.relation-row strong{color:var(--orange);font-size:.72rem;text-align:right}.project-row>span:first-child{display:grid;gap:4px}.project-row strong{font-size:.8rem;line-height:1.35}.project-row small{font-size:.7rem;color:var(--muted)}textarea{width:100%;min-height:110px;resize:vertical;background:var(--surface-2);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:12px;line-height:1.45}.save-note{margin-top:9px}.source-note{color:var(--muted);font-size:.75rem;line-height:1.45;margin-top:22px}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:var(--navy);color:#fff;border-radius:10px;padding:11px 16px;font-size:.84rem;opacity:0;pointer-events:none;transition:.2s;z-index:80}.toast.show{opacity:1;transform:translate(-50%,0)}.bottom-nav{display:none}
@media(max-width:900px){.app-shell{display:block}.sidebar{position:fixed;z-index:45;left:0;top:68px;bottom:0;width:min(330px,90vw);height:auto;transform:translateX(-105%);transition:.22s;box-shadow:var(--shadow)}.sidebar.open{transform:translateX(0)}.workspace{padding:24px 17px 92px}.source-status{display:none}#mobileFilters{display:inline-flex}.stats{grid-template-columns:1fr 1fr}.card-contacts{display:grid;grid-template-columns:1fr 1fr}.view-tabs{max-width:100%;overflow:auto}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:66px;padding-bottom:env(safe-area-inset-bottom);background:var(--surface);border-top:1px solid var(--line);z-index:25;justify-content:space-around}.bottom-nav button{flex:1;border:0;background:transparent;color:var(--muted);display:grid;place-items:center;align-content:center;gap:2px;font-size:.7rem;font-weight:750}.bottom-nav button span{font-size:1rem}.bottom-nav button.active{color:var(--orange)}}
@media(max-width:560px){.topbar{height:60px;padding:0 14px}.brand{font-size:1rem}.brand-mark{width:32px;height:32px}.prototype{display:none}.app-shell{min-height:calc(100vh - 60px)}.sidebar{top:60px}.workspace-head{align-items:flex-start}.head-actions .secondary-button{display:none}.stats{margin:20px 0;gap:8px}.stats article{padding:13px}.stats strong{font-size:1.25rem}.results-toolbar{align-items:flex-end}.view-tabs button{padding:8px 10px;font-size:.76rem}.results-toolbar>label{font-size:0}.investment-card,.entity-card{grid-template-columns:1fr;padding:15px}.card-actions{grid-row:1;justify-self:end;margin-bottom:-45px;z-index:1}.investment-card>.card-actions .open-button,.entity-card>.open-button{display:none}.investment-card h3{padding-right:48px}.card-contacts{gap:10px}.entity-counts{flex-wrap:wrap}.detail-grid{grid-template-columns:1fr}.detail-box.full{grid-column:auto}.sheet-head{padding:18px}.detail-content{padding:18px}.toast{bottom:80px;max-width:90%;text-align:center}}
.volume-filter{border:0;padding:0;margin:22px 0 0}.volume-filter legend{margin-bottom:8px}.volume-filter>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}.volume-filter label{display:grid;gap:6px;font-weight:600;color:var(--muted)}.volume-filter input{min-width:0}.search-wrap:focus-within{border-color:var(--orange);box-shadow:0 0 0 3px rgba(249,115,22,.18)}.search-wrap input:focus-visible{outline:none}
