@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/fraunces-400.ttf) format('truetype');
}
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/fraunces-600.ttf) format('truetype');
}
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/space-grotesk-400.ttf) format('truetype');
}
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/space-grotesk-600.ttf) format('truetype');
}
:root{color-scheme:dark;--bg:#111418;--panel:#171b20;--line:#2b3038;--muted:#89929e;--text:#e6eaf0;--accent:#8eafff;--root:#dce6ff;--second:#76859b;--green:#8cc6a2;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:7px;background:#20262e;color:var(--text);padding:9px 12px;white-space:nowrap}button:hover{background:#2b3440}button:disabled{opacity:.4;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}[hidden]{display:none!important}.topbar{height:66px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;color:var(--text);font-size:23px;font-weight:650;letter-spacing:-1px}.brand:hover{text-decoration:none}.brand-mark{display:grid;place-items:center;border:1px solid var(--accent);color:var(--accent);font-weight:400;font-size:26px;border-radius:50%;height:28px;width:28px;line-height:1}.brand-divider{height:18px;width:1px;background:var(--line);margin:0 5px}.brand small{font-size:12px;font-weight:500;letter-spacing:1.7px;color:var(--muted)}.top-actions{display:flex;gap:12px;align-items:center}.mode{font-size:12px;color:var(--muted);letter-spacing:1.3px}.quiet{background:transparent;border-color:transparent;color:var(--muted)}.quiet:hover{color:var(--text)}.workspace{display:grid;grid-template-columns:285px minmax(450px,1fr) 266px;min-height:calc(100vh - 66px)}.sidebar{padding:32px 23px 22px;border-right:1px solid var(--line);display:flex;flex-direction:column}.eyebrow{font-size:12px;letter-spacing:1.6px;color:var(--muted);font-weight:600}h1{font-size:27px;line-height:1.28;font-weight:500;letter-spacing:-.7px;margin:14px 0 12px}h2{font-size:23px;letter-spacing:-.5px;font-weight:500;margin:8px 0 0}h3{font-size:16px;font-weight:500;line-height:1.5;margin:0 0 10px}p{line-height:1.7;color:var(--muted)}.intro{font-size:15px;margin-bottom:32px}label{font-size:14px;color:#afb7c3;display:block;margin:0 0 9px}input,select{width:100%;background:var(--bg);border:1px solid #333b47;color:var(--text);border-radius:6px;min-width:0;padding:11px 10px}input::placeholder{color:#66707e;font-size:14px}.form-row{display:grid;grid-template-columns:85px 1fr;gap:10px;margin:19px 0}.form-row select{font-size:14px;padding-left:8px}.primary{background:var(--accent);color:#15213a;border-color:var(--accent);font-weight:600}.primary:hover{background:#b5caff}.full{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:24px;padding:12px 14px}.control-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}.control-row button{font-size:14px}.status-box{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.status-title{display:flex;align-items:center;gap:8px;font-size:14px}.status-title i{width:6px;height:6px;border-radius:50%;background:var(--muted)}.status-title i.running{background:var(--green)}.status-box p{font-size:14px;margin:10px 0 0}.install-note{padding:13px;border:1px solid var(--line);border-radius:7px;margin-top:20px;font-size:14px}.install-note p{margin:6px 0 0}.sidebar-bottom{margin-top:auto;padding-top:45px}.small-label{font-size:12px;letter-spacing:1px;color:var(--muted)}.sidebar-bottom p{font-size:13px}.danger{color:#d69f9f;font-size:14px;padding-left:0}.main-panel{min-width:0;display:flex;flex-direction:column}.panel-heading{padding:29px 27px 25px;display:flex;align-items:center;justify-content:space-between;gap:10px}.badge{font-size:13px;color:var(--muted);border:1px solid var(--line);padding:6px 10px;border-radius:20px}.badge.running{color:var(--green)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 27px 26px}.metrics>div{border-left:1px solid var(--line);padding-left:15px}.metrics>div:first-child{border:0;padding-left:0}.metrics strong{display:block;font-size:24px;line-height:1.2;font-weight:450;letter-spacing:-.8px;margin-bottom:6px}.metrics span{font-size:13px;color:var(--muted)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:11px 20px}.view-tabs{display:flex;gap:3px}.view-tabs button{border:0;background:none;color:var(--muted);padding:8px 13px;font-size:14px}.view-tabs button[aria-selected=true]{background:#29303b;color:var(--text)}#search{max-width:255px;font-size:14px;padding:8px 11px;background:transparent;border-color:var(--line)}.graph-area{position:relative;flex:1;min-height:490px;overflow:hidden;background:#13171c}canvas{width:100%;height:100%;position:absolute;inset:0;touch-action:none;cursor:grab}canvas:active{cursor:grabbing}.empty-graph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none;text-align:center}.empty-graph h3{font-size:23px;font-weight:400;line-height:1.4;letter-spacing:-.3px;margin-top:26px}.empty-graph p{font-size:15px}.orbit-symbol{position:relative;width:95px;height:95px;border:1px solid #354154;border-radius:50%;display:grid;place-items:center}.orbit-symbol:after{content:'';width:45px;height:45px;border:1px solid #354154;border-radius:50%}.orbit-symbol span{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--accent);left:22px;top:2px}.orbit-symbol span:nth-child(2){width:5px;height:5px;left:87px;top:58px;background:var(--second)}.orbit-symbol span:nth-child(3){left:45px;top:43px;width:10px;height:10px;background:var(--root)}.graph-legend{position:absolute;top:19px;left:20px;display:flex;gap:15px;font-size:12px;color:var(--muted);pointer-events:none}.graph-legend span{display:flex;align-items:center;gap:5px}.graph-legend i{height:5px;width:5px;display:inline-block;border-radius:50%}.root-key{background:var(--root)}.direct-key{background:var(--accent)}.extended-key{background:var(--second)}.graph-tools{position:absolute;right:18px;bottom:17px;display:flex;gap:4px}.graph-tools button{background:var(--panel);padding:6px 10px;font-size:14px}.graph-caption{position:absolute;bottom:23px;left:20px;font-size:12px;color:var(--muted);pointer-events:none}.panel-footer{display:flex;justify-content:space-between;padding:13px 20px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);gap:10px}.inspector{padding:31px 22px;border-left:1px solid var(--line)}.inspector-icon{margin:75px 0 22px;color:var(--accent);font-size:24px}.inspector p{font-size:14px}.inspector h3{font-size:17px}.person-avatar{width:44px;height:44px;margin:28px 0 18px;border-radius:50%;background:#29364b;color:var(--accent);display:grid;place-items:center;font-size:14px}.profile-link{display:inline-block;margin:12px 0 26px;font-size:14px}.detail-section{border-top:1px solid var(--line);padding-top:20px;margin-top:5px}.detail-section h4{font-size:12px;font-weight:500;letter-spacing:1.2px;color:var(--muted);margin:0 0 16px}.path-person{font-size:14px;padding:10px 0 10px 16px;border-left:1px solid #465a77;position:relative;margin-left:4px;color:#cad5e6}.path-person:before{content:'';position:absolute;left:-3px;top:15px;width:5px;height:5px;border-radius:50%;background:var(--accent)}.neighbor{display:block;background:none;border:0;text-align:left;white-space:normal;color:var(--text);padding:9px 0;font-size:14px;width:100%}.evidence-link{display:block;font-size:13px;line-height:1.7;margin:8px 0;word-break:break-word}.data-view{flex:1;padding:23px;min-height:490px}.section-caption{display:flex;align-items:center;gap:10px;margin-bottom:16px;color:var(--muted);font-size:14px}.section-caption span{margin-right:auto}.section-caption button{font-size:13px;padding:5px}.table-wrap{max-height:calc(100vh - 360px);min-height:100px;overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px;text-align:left}th{font-size:12px;font-weight:500;letter-spacing:.5px;color:var(--muted);position:sticky;top:0;background:var(--bg);padding:12px 10px}td{border-top:1px solid var(--line);padding:13px 10px;line-height:1.6}td:nth-child(2){color:var(--muted);max-width:300px}.person-button{font:inherit;text-align:left;border:0;background:none;white-space:normal;padding:0;color:var(--text)}.person-button:hover{color:var(--accent);background:none}.table-note{font-size:14px;color:var(--muted);padding:20px}.coverage-description{font-size:14px;max-width:650px;margin-bottom:24px}.activity-title{margin-top:28px}.log-line{font-size:13px;color:var(--muted);padding:7px 0;border-bottom:1px solid var(--line)}.log-line time{color:#657286;margin-right:12px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:600px;background:#303c4d;border:1px solid #50627b;color:var(--text);padding:14px 20px;border-radius:8px;z-index:20;font-size:15px;line-height:1.6}code{font-family:ui-monospace,monospace;font-size:13px}@media(min-width:1600px){.workspace{grid-template-columns:310px minmax(450px,1fr) 300px}.sidebar{padding:40px 28px}.inspector{padding:40px 28px}.graph-area{min-height:600px}}@media(max-width:1120px){.workspace{grid-template-columns:255px minmax(360px,1fr)}.inspector{grid-column:2;border-top:1px solid var(--line);border-left:0;min-height:180px}.inspector-icon{margin-top:20px}.sidebar{grid-row:1/3}.graph-area{min-height:500px}.topbar .mode{display:none}.graph-caption{max-width:230px;line-height:1.6;bottom:17px}}@media(max-width:730px){.workspace{display:flex;flex-direction:column}.sidebar{border:0;border-bottom:1px solid var(--line)}.sidebar-bottom{padding-top:16px;margin:0}.intro{margin-bottom:20px}h1 br,.intro br{display:none}.topbar{padding:0 14px}.brand small,.brand-divider{display:none}.top-actions{gap:0}.top-actions button{font-size:13px;padding:8px}.toolbar{flex-wrap:wrap}.toolbar #search{max-width:none}.metrics{gap:5px;margin-left:18px;margin-right:18px}.metrics span{font-size:12px}.panel-heading{padding-left:18px}.graph-caption{display:none}.inspector{border-left:0}.graph-legend{gap:12px;font-size:12px}.section-caption{flex-wrap:wrap}}
dialog{color:var(--text);background:var(--panel);border:1px solid #47556a;border-radius:12px;padding:25px;width:min(560px,90vw)}dialog::backdrop{background:rgba(0,0,0,.65)}.dialog-heading{display:flex;align-items:center;justify-content:space-between}.dialog-heading h3{margin:0}dialog p{font-size:15px}dialog label{margin:22px 0 9px}dialog textarea{width:100%;height:180px;resize:vertical;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:7px;padding:12px;font:11px ui-monospace,monospace}

.live-progress{display:flex;align-items:center;gap:12px;padding:12px 24px;border-bottom:1px solid var(--border,#29313c);background:#141d2c;min-height:66px;flex-shrink:0}.live-progress[hidden]{display:none}.live-progress>div{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.live-progress strong{font-size:14px;color:#dce6ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.live-progress #live-detail{font-size:16px;color:#9eafc8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#live-rate{font-size:16px;color:#b4c9ee;white-space:nowrap}.live-pulse{width:8px;height:8px;border-radius:50%;background:#91b1ff;box-shadow:0 0 0 5px #91b1ff14;animation:collecting-pulse 1.8s ease-in-out infinite}@keyframes collecting-pulse{50%{opacity:.4}}@media(prefers-reduced-motion:reduce){.live-pulse{animation:none}}@media(max-width:650px){.live-progress{padding:12px}#live-rate{display:none}}

.library-panel{margin:0 0 24px;padding:16px;background:#1b2330;border:1px solid #34445a;border-radius:9px}.library-panel p{font-size:16px;line-height:1.5}.library-panel h3{font-size:17px}.library-panel label{font-size:14px}.library-panel input{font-size:14px}.library-panel button{font-size:16px;margin-top:8px;white-space:normal}.library-person{display:block;width:100%;text-align:left}#library-results{font-size:16px;max-height:210px;overflow:auto}#library-status{color:#aec5e8}.sidebar .intro{margin-bottom:20px}

/* Readable type, fewer competing panels, and deliberate graph controls. */
:root{--muted:#a6afbd;font-size:16px}body{line-height:1.55}button,.button{min-height:44px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:1px solid var(--line);border-radius:8px;padding:12px 20px;font-weight:600;text-decoration:none}.button:hover{text-decoration:none}.topbar{min-height:80px;height:auto;padding:18px 32px;gap:24px}.top-actions{flex-wrap:wrap}.brand small{letter-spacing:1px}.workspace{grid-template-columns:320px minmax(0,1fr);min-height:calc(100vh - 80px)}.sidebar{padding:28px 24px;grid-row:1/3;gap:4px}.sidebar h1{font-size:28px}.sidebar .intro{font-size:16px}.sidebar .profile-link{margin:0 0 24px}.main-panel{grid-column:2;min-width:0}.inspector{grid-column:2;border-left:0;border-top:1px solid var(--line);padding:24px 32px;min-width:0}.inspector-icon{display:none}.inspector h3{font-size:22px;margin-top:12px}.inspector p{font-size:16px;max-width:70ch}.person-avatar{margin-top:16px}.neighbor,.path-person{font-size:16px}.collection-settings{margin-top:20px}.collection-settings summary,.library-panel summary{font-size:16px;cursor:pointer;padding:10px 0;color:var(--text);font-weight:550}.collection-settings[open]{padding-bottom:8px}.form-row{grid-template-columns:100px minmax(0,1fr);gap:16px}.form-row select{font-size:14px}.library-panel{margin-top:24px;padding:8px 16px;background:transparent}.library-panel h3{display:none}.library-panel[open]{padding-bottom:18px}.status-box p,.sidebar-bottom p,.install-note{font-size:14px;line-height:1.65}.sidebar-bottom{padding-top:24px}.panel-heading{padding:28px 32px}.metrics{margin:0 32px 26px;gap:20px}.metrics strong{font-size:30px}.metrics span{font-size:14px}.toolbar{padding:12px 24px;flex-wrap:wrap}.view-tabs button{font-size:15px}#search{font-size:15px;max-width:300px}.graph-area{min-height:570px}.graph-tools{gap:6px;align-items:center;bottom:18px;right:20px;padding:6px;border:1px solid var(--line);border-radius:12px;background:#171b20f2;flex-wrap:wrap}.graph-tools button{font-size:16px;min-width:44px;padding:8px 12px}.graph-tools output{min-width:54px;text-align:center;font-size:14px;font-variant-numeric:tabular-nums}.scroll-toggle{display:flex;align-items:center;gap:8px;margin:0 8px;font-size:14px;cursor:pointer}.scroll-toggle input{width:18px;height:18px;margin:0;accent-color:var(--accent)}.graph-caption{bottom:88px;font-size:13px;max-width:none}.graph-legend{font-size:13px;gap:18px;flex-wrap:wrap;right:20px}.graph-legend i{width:7px;height:7px}.empty-graph{padding:70px 24px 140px}.empty-graph p{font-size:16px}.empty-graph h3{font-size:28px}table{font-size:15px}th{font-size:13px}td{padding:18px 12px}.section-caption{flex-wrap:wrap}.table-wrap{max-height:650px}.live-progress strong,.live-progress #live-detail{white-space:normal}.panel-footer{flex-wrap:wrap;font-size:13px}.top-actions button{font-size:14px}input::placeholder{font-size:14px}.setup-error,#setup-error{color:#ffb5ac}code{overflow-wrap:anywhere}
/* Welcome and profile setup share the workspace's quiet visual language. */
.welcome-page{background:#101419}.welcome-page .topbar{max-width:1440px;margin:auto;border-bottom-color:#ffffff12}.welcome-page nav a{color:var(--text);font-size:15px}.landing{max-width:1280px;padding:0 48px;margin:auto}.hero{min-height:650px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:48px;padding:80px 0}.hero h1{font-size:clamp(42px,5vw,70px);line-height:1.08;letter-spacing:-2.8px;font-weight:500;margin:24px 0}.hero-intro{font-size:19px;max-width:490px;line-height:1.7;margin:26px 0 32px}.hero-footnote{font-size:14px;margin-top:22px}.hero-art{position:relative;min-height:470px;background:radial-gradient(ellipse at center,#253c623d,transparent 68%)}.art-orbit{position:absolute;left:50%;top:50%;border:1px solid #8eafff30;border-radius:50%;transform:translate(-50%,-50%) rotate(-28deg)}.orbit-one{width:86%;height:68%}.orbit-two{width:62%;height:96%}.orbit-three{width:95%;height:40%}.art-person{position:absolute;border:1px solid #526888;background:#1b2635;border-radius:40px;padding:12px 18px;font-size:15px;color:#dce6ff;box-shadow:0 8px 32px #0003;white-space:nowrap}.art-you{left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;width:90px;height:90px;display:grid;place-items:center;font-size:23px;background:#a7bded;color:#15213a}.art-you span{position:absolute;top:110px;width:230px;text-align:center;font-size:13px;color:var(--muted)}.art-a{top:10%;left:6%}.art-b{right:0;top:33%}.art-c{bottom:8%;left:15%}.art-dot{width:10px;height:10px;background:#8eafff;box-shadow:0 0 0 8px #8eafff10;border-radius:50%;position:absolute}.dot-one{left:5%;top:57%}.dot-two{right:19%;bottom:13%}.dot-three{left:55%;top:5%}.how-section{padding:64px 0 72px;border-top:1px solid var(--line)}.how-section h2,.signup-section h2{font-size:clamp(28px,3vw,40px);line-height:1.25;letter-spacing:-1px;max-width:540px}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin-top:44px}.steps h3{font-size:21px;margin:18px 0 10px}.steps p{font-size:16px;max-width:30ch}.step-number{font-size:14px;color:var(--accent)}.signup-section{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding:70px 0 90px;border-top:1px solid var(--line)}.signup-section>div>p{max-width:43ch;font-size:17px}.signup-card{background:#191f28;border:1px solid #344154;border-radius:20px;padding:32px}.signup-card h3{font-size:26px}.google-button{justify-content:center;gap:16px;background:#f1f3f6;color:#202124;border-color:#f1f3f6}.google-button:disabled{opacity:.65}.google-button span{font-size:22px;font-weight:650}.signup-card .auth-note{font-size:14px;line-height:1.6}.preview-link{display:inline-block;margin-top:18px}.welcome-footer{border-top:1px solid var(--line);padding:28px 48px;display:flex;justify-content:space-between;align-items:center;gap:24px}.welcome-footer p{font-size:14px}.setup-page{max-width:700px;margin:0 auto;padding:48px 28px 80px}.setup-steps{display:flex;justify-content:space-between;gap:16px;margin-bottom:44px;font-size:14px;color:var(--muted)}.setup-steps strong{color:var(--accent)}.setup-card{padding:40px;background:#171d26;border:1px solid var(--line);border-radius:20px}.setup-card h1{font-size:46px;line-height:1.13;letter-spacing:-1.5px}.setup-card>p{font-size:17px}.setup-card form{margin-top:28px}.setup-card label{font-size:16px}.setup-card input{font-size:16px;padding:15px}.field-help{font-size:14px;margin-top:12px}.setup-companion{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.setup-companion p{font-size:15px}.setup-card #session-status{font-size:14px;color:var(--accent)}
@media(min-width:1600px){.workspace{grid-template-columns:340px minmax(0,1fr) 300px}.inspector{grid-column:3;grid-row:1;border-top:0;border-left:1px solid var(--line)}.sidebar{grid-row:1}.graph-area{min-height:650px}}
@media(max-width:1000px){.hero{gap:16px}.hero-art{min-height:400px}.art-person{font-size:13px;padding:10px}.art-you{font-size:23px}.landing{padding:0 28px}.signup-section{gap:36px}.workspace{grid-template-columns:280px minmax(0,1fr)}.sidebar{padding:24px 20px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.metrics>div:nth-child(3){border:0;padding-left:0}.graph-tools{left:16px;right:auto}.graph-caption{left:16px;bottom:132px}.graph-area{min-height:600px}}
@media(max-width:730px){.topbar{padding:16px 20px}.top-actions{gap:6px}.welcome-page nav a{font-size:14px}.hero{grid-template-columns:1fr;padding:52px 0 32px;gap:8px}.hero h1{letter-spacing:-1.7px}.hero-art{min-height:340px;max-width:470px;width:100%;margin:auto}.hero-intro{font-size:18px}.hero h1 br{display:initial}.steps{grid-template-columns:1fr;gap:24px}.steps p{max-width:none}.signup-section{grid-template-columns:1fr;gap:28px;padding-top:44px}.signup-card{padding:24px}.welcome-footer{padding:24px;align-items:flex-start;flex-direction:column;gap:4px}.workspace{display:flex;flex-direction:column}.sidebar{padding:28px 24px}.sidebar-bottom{display:none}.main-panel{width:100%}.inspector{padding:24px}.graph-area{min-height:550px}.graph-legend{font-size:12px;gap:12px}.graph-caption{display:block;bottom:126px;font-size:12px}.graph-tools{max-width:calc(100% - 32px)}.scroll-toggle{font-size:13px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics span{font-size:14px}.setup-page{padding:32px 18px}.setup-card{padding:26px}.setup-card h1{font-size:38px}.setup-steps{font-size:12px;gap:8px}.panel-heading{padding:24px}.topbar .brand small,.brand-divider{display:none}}

/* Dark editorial theme inspired by Connections' four-color vocabulary. */
:root{--bg:#171716;--panel:#21211f;--line:#41413d;--muted:#b5b4ac;--text:#f2f0e6;--accent:#b4c5e0;--root:#ead779;--second:#b5a0cb;--green:#a8bf83;color-scheme:dark;font-family:Arial,Helvetica,sans-serif}
body,.welcome-page{background:var(--bg);color:var(--text)}
h1,h2,.brand{font-family:Georgia,'Times New Roman',serif;font-weight:700;letter-spacing:-.045em}
h3{font-weight:650}.brand{font-size:30px}.brand-mark{border:0;border-radius:4px;background:var(--root);color:#24241d;font-family:Georgia,serif;font-weight:700;font-size:26px}.brand small,.eyebrow,.small-label{font-family:Arial,Helvetica,sans-serif;letter-spacing:.1em}.eyebrow{color:#cbc9bd}
.topbar,.welcome-page .topbar{border-bottom:1px solid #77766b;padding-top:20px;padding-bottom:20px}.brand-divider{background:#77766b}
button,.button,input,select,dialog,.library-panel,.install-note,.graph-tools,.signup-card,.setup-card{border-radius:5px}
button,.button{background:#292925;border-color:#626259;color:var(--text)}button:hover,.button:hover{background:#3c3c35;color:var(--text)}.primary,.button.primary{background:#ead779;border-color:#ead779;color:#24241d}.primary:hover,.button.primary:hover{background:#f0e19b;color:#24241d}.quiet,.button.quiet{background:transparent;border-color:transparent;color:#c6c4b9}.quiet:hover,.button.quiet:hover{background:#30302b;color:var(--text)}
input,select,dialog textarea{background:#1a1a18;border-color:#646459;color:var(--text)}input::placeholder{color:#a4a498}a{color:#c2cfe3}p{color:var(--muted)}.mode,.badge{letter-spacing:.03em}.badge{border-radius:4px;background:#292925;color:#d4d1c3}.badge.running{background:#a8bf83;color:#202719;border-color:#a8bf83}
.sidebar,.inspector{background:#1c1c19}.sidebar h1{font-size:31px}.panel-heading h2{font-size:30px}.metrics strong{font-family:Georgia,serif;font-size:34px;font-weight:700}.metrics>div{border-left:0;border-radius:4px;padding:14px!important;background:#ead779;color:#24241d}.metrics>div:nth-child(2){background:#a8bf83}.metrics>div:nth-child(3){background:#b4c5e0}.metrics>div:nth-child(4){background:#b5a0cb}.metrics span{color:#303129;font-weight:600}.metrics{gap:10px}.view-tabs button{border:1px solid transparent;border-radius:4px;color:#c7c5b9}.view-tabs button[aria-selected=true]{background:#e4e1d4;color:#24241d;font-weight:700}.toolbar{background:#1d1d1a}.graph-area{background:#181916}.graph-tools{background:#262621f5;border-color:#646459}.graph-tools button{background:#36362e;border-color:#747466}.graph-tools output{color:#ece9db}.graph-legend{color:#cfcdbe}.root-key{background:#ead779}.direct-key{background:#a8bf83}.extended-key{background:#b5a0cb}.empty-graph h3{font-family:Georgia,serif;font-size:32px}.orbit-symbol,.orbit-symbol:after{border-color:#67695b}.orbit-symbol span{background:#a8bf83}.orbit-symbol span:nth-child(2){background:#b5a0cb}.orbit-symbol span:nth-child(3){background:#ead779}.library-panel{background:#23251f;border-color:#565e49}#library-status{color:#c5d3b0}.person-avatar{border-radius:5px;background:#b5a0cb;color:#26212d;font-weight:700}.path-person{border-color:#a8bf83;color:#e7e5d8}.path-person:before{background:#a8bf83}.detail-section h4{color:#c7c4b8}.neighbor:hover{background:#30302a}.live-progress{background:#272e23;border-color:#4e5b42}.live-progress strong{color:#e1e9d6}.live-progress #live-detail,#live-rate{color:#c3d1b3}.live-pulse{background:#a8bf83;box-shadow:0 0 0 5px #a8bf8318}#toast{background:#36362f;border-color:#77776a;color:var(--text)}th{background:#20201c}.log-line time{color:#b4c5e0}
.hero{gap:64px}.hero h1{font-size:clamp(46px,5.5vw,78px);line-height:1.02;letter-spacing:-.055em}.hero-intro{font-size:19px}.hero-art{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,170px);gap:12px;min-height:0;background:none;transform:rotate(-3deg);align-content:center}.art-orbit,.art-dot{display:none}.art-person{position:static;transform:none;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;white-space:normal;width:auto;height:auto;padding:24px 16px;border:0;border-radius:5px;box-shadow:none;font-family:Arial,Helvetica,sans-serif;font-size:21px;font-weight:750;line-height:1.15;color:#25251f;text-transform:uppercase;letter-spacing:-.03em;background:#ead779}.art-you{font-size:34px;grid-column:auto;background:#ead779}.art-you span{position:static;width:auto;margin-top:14px;font-size:12px;line-height:1.4;text-transform:none;letter-spacing:0;color:#343429;font-weight:500}.art-a{background:#a8bf83}.art-b{background:#b4c5e0}.art-c{background:#b5a0cb}.how-section h2,.signup-section h2{font-size:clamp(32px,3.4vw,44px);line-height:1.12}.steps{gap:28px}.steps article{border-top:5px solid #a8bf83;padding-top:20px}.steps article:nth-child(2){border-color:#b4c5e0}.steps article:nth-child(3){border-color:#b5a0cb}.step-number{color:#e4dfca;font-weight:700}.signup-card,.setup-card{background:#22221e;border-color:#68685b}.signup-card h3{font-family:Georgia,serif;font-size:30px}.signup-card .google-button{background:#e4e1d4;color:#24241d}.setup-steps strong{color:#ead779}.setup-card #session-status{color:#c9d6b7}.setup-companion{border-color:#666958}.welcome-footer{border-top-color:#77766b}
@media(max-width:730px){.hero{gap:34px}.hero-art{grid-template-rows:repeat(2,130px);max-width:440px;transform:none}.art-person{font-size:18px}.art-you{font-size:28px}.hero h1{font-size:48px}.metrics strong{font-size:30px}.metrics span{font-size:13px}.panel-heading h2{font-size:27px}.setup-card h1{font-size:40px}}
.map-filters{padding:22px 24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:18px;background:#25251f;border-bottom:1px solid var(--line)}.map-filters label{font-size:14px}.map-filters select{font-size:15px;min-height:46px}.map-filters p{margin:0;font-size:14px;line-height:1.6;grid-column:1/-1}.map-filters .filter-help{color:#c4c2b5}#filter-count{color:#ead779}#filter-toggle[aria-expanded=true]{background:#b4c5e0;color:#20252d}#filter-toggle{font-size:14px}@media(max-width:1100px){.map-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.map-filters{grid-template-columns:1fr}}
.map-manager{padding:16px;border:1px solid var(--line);border-radius:5px;margin-bottom:24px;background:#25251f}.map-manager p{font-size:13px;margin-bottom:0}.map-manager .full{margin-top:12px}.map-manager select{font-size:14px}#cancel-build{color:#efb6a6;border-color:#8a5e51}.map-filters{align-items:center}
.library-import{margin:18px 0 10px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.library-import strong{display:block;font-size:15px}.library-import p{margin:6px 0 8px;font-size:13px;line-height:1.55}.library-import button:disabled{cursor:wait;opacity:.65}.library-import-actions{display:flex;gap:8px;flex-wrap:wrap}.library-import-actions button{flex:1 1 150px}#library-import-preview{margin-top:12px;padding:12px;background:#191b17;border:1px solid #56604b;border-radius:4px}#library-import-summary{font-size:14px;color:#d3d8c9}

/* Unified account and database surfaces. Motion is deliberately soft and never blocks interaction. */
.google-signin{display:flex;min-height:44px;margin-top:24px;align-items:center;justify-content:center;transition:opacity .2s ease,transform .2s ease}.google-signin.is-busy{opacity:.55;transform:scale(.985);pointer-events:none}.library-import-list{display:grid;gap:8px;margin:10px 0 2px}.library-import-list article{display:grid;gap:3px;padding:10px 11px;background:#191b17;border:1px solid #4b5045;border-radius:4px}.library-import-list strong{font-size:14px;overflow-wrap:anywhere}.library-import-list span{font-size:12px;line-height:1.45;color:var(--muted)}.database-panel{margin-top:0}.database-panel>p{margin:4px 0 8px;font-size:13px}.top-actions #account-label{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body{animation:orbit-page-in .45s cubic-bezier(.2,.75,.25,1) both}.button,button,input,select,.signup-card,.setup-card,.library-panel{transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease}.button:hover:not(:disabled),button:hover:not(:disabled){transform:translateY(-1px)}.primary:hover:not(:disabled){box-shadow:0 8px 24px #ead77920}.signup-card,.setup-card{box-shadow:0 24px 80px #00000024}.hero-art{animation:orbit-settle .8s cubic-bezier(.16,1,.3,1) both}.art-person{animation:orbit-float 7s ease-in-out infinite}.art-person:nth-of-type(2){animation-delay:-1.6s}.art-person:nth-of-type(3){animation-delay:-3.1s}.art-person:nth-of-type(4){animation-delay:-4.7s}.orbit-symbol span:first-child{animation:orbit-pulse 2.4s ease-in-out infinite}
@keyframes orbit-page-in{from{opacity:0}to{opacity:1}}@keyframes orbit-settle{from{opacity:0;transform:translateY(18px) rotate(-5deg)}to{opacity:1;transform:translateY(0) rotate(-3deg)}}@keyframes orbit-float{0%,100%{translate:0 0}50%{translate:0 -5px}}@keyframes orbit-pulse{0%,100%{box-shadow:0 0 0 0 #a8bf8340}50%{box-shadow:0 0 0 10px #a8bf8300}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
.workspace-nav{display:flex;gap:8px;padding:16px 28px;border-bottom:1px solid var(--line)}.workspace-nav button{background:transparent;border-color:transparent}.workspace-nav button[aria-pressed=true]{background:#e4e1d4;color:#24241d;font-weight:700}.separated-workspace{display:grid;grid-template-columns:minmax(0,1fr) 280px;min-height:calc(100vh - 158px)}.separated-workspace .main-panel{grid-column:1}.separated-workspace .inspector{grid-column:2;grid-row:1;border-left:1px solid var(--line);border-top:0}.separated-workspace .sidebar{grid-column:1/-1;grid-row:auto;width:min(960px,100%);justify-self:center;border:0;padding:40px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 40px;align-content:start}.separated-workspace .sidebar>h1,.separated-workspace .sidebar>.eyebrow,.separated-workspace .sidebar>.intro,.separated-workspace .sidebar>.profile-link{grid-column:1/-1;margin:0}.separated-workspace .sidebar .map-manager{grid-column:1;grid-row:5;margin:0}.separated-workspace .sidebar #setup-form{grid-column:2;grid-row:5/8}.separated-workspace .sidebar .sidebar-bottom{display:block;margin:0;padding:0}.separated-workspace .graph-area{min-height:650px}.separated-workspace .sidebar .full{margin-top:16px}@media(max-width:1000px){.separated-workspace{grid-template-columns:minmax(0,1fr)}.separated-workspace .inspector{grid-column:1;grid-row:auto;border-left:0;border-top:1px solid var(--line)}}@media(max-width:650px){.separated-workspace .sidebar{display:flex;padding:24px;gap:20px}.workspace-nav{padding:12px 20px}.separated-workspace .graph-area{min-height:560px}}
.separated-workspace{grid-template-columns:minmax(0,1fr)}.workspace-build-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:0 32px 22px}.workspace-build-controls .control-row{margin:0;gap:10px}.workspace-build-controls button{font-size:15px}.person-dialog{position:fixed;width:min(540px,calc(100vw - 32px));max-height:80vh;overflow:auto;padding:28px}.person-dialog::backdrop{background:#0009}.person-dialog #close-person{display:block;margin-left:auto}.person-dialog h3{font-size:24px}.person-dialog p{font-size:16px}.person-dialog .profile-link{font-size:15px}@media(max-width:650px){.workspace-build-controls{padding:0 24px 20px}}
.match-reason,.library-person small,.path-contributors{display:block;color:#b4c5e0;font-size:12px;margin-top:4px}.library-person strong{display:block}.inspector-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0 24px}.inspector-actions .profile-link{margin:0}.profile-facts{display:grid;gap:8px;margin:18px 0}.profile-disclosure{border:1px solid #4c4c43;border-radius:6px;padding:0 14px;background:#23231f}.profile-disclosure summary{cursor:pointer;padding:12px 0;font-weight:650;color:#e6e3d5}.profile-disclosure p{margin:0;padding:0 0 14px;white-space:pre-line}.shared-path{background:#24271f;border:1px solid #4e5b42;border-radius:7px;padding:18px;margin-top:20px}.shared-route{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:12px}.shared-route .path-person{border:0;margin:0;padding:8px 10px;background:#30352a}.shared-route .path-person:before{display:none}.route-arrow{color:#a8bf83}.neighbor-list{padding-bottom:12px}.path-loading{color:var(--muted);font-size:14px}
.separated-workspace .sidebar #setup-form{grid-column:1;grid-row:auto}.separated-workspace .sidebar .library-panel{margin-top:0}.separated-workspace .sidebar .database-panel{grid-column:2}
.map-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.map-filters input,.map-filters select{font-size:15px;min-height:46px;width:100%}.map-filters .scroll-toggle{display:flex;align-items:center;gap:8px;min-height:46px}.map-filters .scroll-toggle input{width:auto;min-height:auto}.degree-filters{grid-column:1/-1;border:1px solid var(--line);border-radius:5px;padding:12px 16px;display:flex;gap:24px;flex-wrap:wrap}.degree-filters legend{font-size:14px;padding:0 8px}.degree-filters label{display:flex;align-items:center;gap:8px;margin:0;font-size:15px}.degree-filters input{width:18px;min-height:18px;height:18px;accent-color:var(--accent)}#location-search{margin-bottom:10px}.database-proof{padding:10px 12px;border-radius:4px;background:#a8bf83;color:#1f271a!important;font-weight:750;font-size:12px!important;letter-spacing:.025em}.library-import-list>details{border:1px solid #4b5045;border-radius:4px;padding:0 10px}.library-import-list>details>summary{padding:10px 0;cursor:pointer;font-weight:700}.library-import-list>details>div{display:grid;gap:8px;padding-bottom:10px}
/* Searchable facets replace the former long selects and manual group controls. */
.map-filters{grid-template-columns:minmax(160px,.8fr) minmax(160px,.8fr) minmax(230px,1.15fr) minmax(210px,1fr);align-items:end;padding:18px 24px;gap:14px 16px;background:#23231f}.map-filters[hidden]{display:none!important}.map-filters .facet-field label{margin-bottom:7px;color:#d7d4c6;font-weight:650}.map-filters .facet-field input{background:#191a17;border-color:#55564d;transition:border-color .18s ease,box-shadow .18s ease}.map-filters .facet-field input:focus{border-color:#ead779;box-shadow:0 0 0 3px #ead7791c}.degree-filters{grid-column:1/3;min-height:54px;background:#1d1e1a;border-color:#45473f;padding:10px 14px}.degree-filters label{color:#d5d2c5}.filter-actions{grid-column:4;display:flex;align-items:center;justify-content:flex-end;gap:12px;min-height:54px}.filter-actions .scroll-toggle{min-height:auto;margin:0}.filter-actions button{min-height:40px}.map-filters .filter-help{grid-column:1/3;color:#aead9f;font-size:13px}.map-filters #filter-count{grid-column:3/5;text-align:right;color:#ead779;font-weight:650}.toolbar #filter-toggle{margin-left:auto}.toolbar #search{transition:max-width .2s ease,border-color .2s ease;max-width:340px}.toolbar #search:focus{max-width:410px;border-color:#ead779}.graph-area canvas{transition:filter .2s ease}
.companion-update-banner{position:sticky;z-index:8;top:0;margin:0;padding:12px 24px;border:0;border-bottom:1px solid #a9953d;border-radius:0;background:#3a3419f5;color:#f4edc8;font-size:14px;line-height:1.55;box-shadow:0 10px 30px #0007;backdrop-filter:blur(10px)}.companion-update-banner a{color:#fff1a2;font-weight:800;text-decoration:underline}.companion-update-banner code{color:#fff}.pause-reason{flex:1 1 320px;max-width:760px;color:#d7cfa9;font-size:13px;line-height:1.45}
@media(max-width:1050px){.map-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.map-filters .facet-wide,.degree-filters,.filter-actions,.map-filters .filter-help,.map-filters #filter-count{grid-column:1/-1}.filter-actions{justify-content:space-between}.map-filters #filter-count{text-align:left}}
@media(max-width:650px){.map-filters{grid-template-columns:1fr;padding:16px}.map-filters .facet-field,.map-filters .facet-wide,.degree-filters,.filter-actions,.map-filters .filter-help,.map-filters #filter-count{grid-column:1}.filter-actions{align-items:flex-start;flex-direction:column}.toolbar #filter-toggle{margin-left:0}.toolbar #search,.toolbar #search:focus{max-width:none;width:100%}}

/* Keep current activity visible without competing with the map. */
.live-progress{display:block;min-height:0;padding:0 24px;background:#20241e}
.live-progress summary{display:flex;align-items:center;gap:12px;min-height:42px;cursor:pointer;list-style:none}
.live-progress summary::-webkit-details-marker{display:none}
.live-progress summary:focus-visible{outline:2px solid #ead779;outline-offset:2px}
.live-progress strong{flex:1;min-width:0;white-space:nowrap;font-size:14px;overflow:hidden;text-overflow:ellipsis;font-weight:500}
.activity-disclosure{flex-shrink:0;font-size:14px;color:#c3d1b3}.activity-disclosure:after{content:' ＋'}.live-progress[open] .activity-disclosure:after{content:' −'}
.live-progress .activity-details{padding:0 0 12px 20px;gap:6px}
.live-progress #live-detail,.live-progress #live-rate{font-size:14px;white-space:normal}
@media(max-width:650px){.live-progress{padding:0 16px}.live-progress #live-rate{display:block}}

/* Orbit: editorial headings and precise game-board typography. */
:root{--font-body:'Space Grotesk',sans-serif;--font-display:'Fraunces',Georgia,serif;font-family:var(--font-body)}
body,button,input,select,textarea,.art-person{font-family:var(--font-body)}
h1,h2,h3,.brand,.hero h1,.signup-card h3,.metrics strong,.panel-heading h2{font-family:var(--font-display);font-weight:600;font-optical-sizing:auto}
.brand{font-size:30px;letter-spacing:-1.3px}.brand small,.eyebrow,.step-number{font-family:var(--font-body)}
.hero h1{letter-spacing:-.055em;line-height:1.08}.hero-intro{line-height:1.65}.eyebrow{font-size:14px;letter-spacing:.12em}
.art-person{font-weight:600;letter-spacing:-.035em;border-radius:9px;box-shadow:0 5px 0 #0003;animation:none}
.art-you{font-family:var(--font-display);text-transform:none;font-size:42px}.art-you span{font-family:var(--font-body);font-size:14px}
.steps article{border-radius:8px;background:#ffffff03;padding:24px;transition:background .25s,transform .25s}.steps article:hover{background:#ffffff07;transform:translateY(-4px)}
.step-number{display:inline-grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;font-variant-numeric:tabular-nums}
.view-tabs button,.workspace-nav button{font-weight:600;letter-spacing:-.02em}.metrics strong{font-variant-numeric:tabular-nums}.graph-legend{font-size:14px}
.signup-card{border-top:4px solid #b5a0cb}.signup-section{scroll-margin-top:24px}
/* Scroll choreography: slide the narrative, settle tiles, illuminate the form. */
.brand-mark,.small-label,.empty-graph h3{font-family:var(--font-display)}
.welcome-page{animation:none}
.welcome-page .hero-art{animation:none}
.welcome-page .landing{overflow:clip}
.welcome-page .hero-copy > *{transform-origin:left center}
.welcome-page .steps h3{font-size:24px;line-height:1.2;letter-spacing:-.025em}
.welcome-page .step-number{border:0;border-radius:8px;background:#a8bf83;color:#25251f;font-weight:600;box-shadow:0 3px 0 #0003;margin-bottom:18px}
.welcome-page .steps article:nth-child(2) .step-number{background:#b4c5e0}
.welcome-page .steps article:nth-child(3) .step-number{background:#b5a0cb}
.welcome-page .signup-card{position:relative;isolation:isolate}
.welcome-page .signup-card:after{content:'';position:absolute;inset:-4px;border:2px solid #b5a0cb;border-radius:8px;opacity:0;pointer-events:none}
.welcome-page .button span{display:inline-block;transition:transform .25s ease}
.welcome-page .button:hover span{transform:translate(3px,-3px)}
@keyframes orbit-slide{
 from{opacity:0;transform:translate(var(--reveal-x,0px),var(--reveal-y,40px))}
 to{opacity:1;transform:translate(0,0)}
}
@keyframes orbit-tile-lock{
 from{opacity:0;transform:translateY(44px) rotate(-7deg) scale(.94)}
 65%{opacity:1;transform:translateY(-6px) rotate(1.5deg) scale(1.015)}
 82%{transform:translateY(2px) rotate(-.6deg)}
 to{opacity:1;transform:none}
}
@keyframes orbit-badge-wiggle{
 0%,100%{transform:none}
 25%{transform:rotate(-9deg) scale(1.08)}
 50%{transform:rotate(6deg) scale(1.08)}
 75%{transform:rotate(-3deg)}
}
@keyframes orbit-glimmer{
 0%,100%{box-shadow:0 24px 80px #00000024}
 45%{box-shadow:0 0 32px #b5a0cb38,0 24px 80px #00000024}
}
@keyframes orbit-halo{
 0%{opacity:0;transform:scale(.99)}
 35%{opacity:.7}
 100%{opacity:0;transform:scale(1.045)}
}
@media(prefers-reduced-motion:no-preference){
 html{scroll-behavior:smooth}
 .welcome-page [data-motion="left"]{--reveal-x:-40px;--reveal-y:0px}
 .welcome-page .scroll-revealed{animation:orbit-slide .75s cubic-bezier(.16,1,.3,1) backwards;animation-delay:var(--reveal-delay,0ms)}
 .welcome-page [data-motion="tile"].scroll-revealed{animation-name:orbit-tile-lock;animation-duration:.85s}
 .welcome-page [data-motion="glimmer"].scroll-revealed{animation-name:orbit-glimmer;animation-duration:1.1s}
 .welcome-page .signup-card.scroll-revealed:after{animation:orbit-halo 1s ease-out backwards}
 .welcome-page .steps article.scroll-revealed .step-number{animation:orbit-badge-wiggle .6s ease-in-out backwards;animation-delay:calc(var(--reveal-delay,0ms) + .12s)}
 .welcome-page .art-person{transition:transform .25s ease,box-shadow .25s ease}
 .welcome-page .art-person:hover{transform:translateY(-5px) rotate(2deg);box-shadow:0 10px 0 #0003}
}
@media(max-width:730px){
 .hero h1{font-size:clamp(40px,10vw,58px)}.steps article{padding:20px}.art-you{font-size:32px}
 .welcome-page [data-motion="left"]{--reveal-x:0px;--reveal-y:24px}
 .welcome-page .scroll-revealed{animation-delay:0ms}
 .welcome-page .hero-art{transform:none}
}
@media(prefers-reduced-motion:reduce){
 .welcome-page .scroll-revealed,.hero-art,.art-person{animation:none!important}
 .welcome-page .steps article:hover,.welcome-page .art-person:hover,.welcome-page .button:hover span{transform:none}
}

/* A compact map arrangement switch keeps grouping separate from filtering. */
.map-arrangement{display:flex;align-items:center;gap:3px;margin-left:auto;padding:3px;border:1px solid #494a43;border-radius:7px;background:#171814}.map-arrangement span{padding:0 8px;color:#9e9d91;font-size:12px;letter-spacing:.04em}.map-arrangement button{min-height:34px;padding:6px 10px;border:0;background:transparent;color:#aaa99e;font-size:13px}.map-arrangement button:hover{background:#2e2f29}.map-arrangement button[aria-pressed=true]{background:#e4e1d4;color:#24241d;box-shadow:0 1px 5px #0005}.toolbar #filter-toggle{margin-left:0}
.collection-option{margin:18px 0 6px}.collection-option+ .small-label{display:block;letter-spacing:0;line-height:1.55}
@media(max-width:900px){.map-arrangement{order:3;margin-left:0}.toolbar #search{order:4;flex:1 1 260px}}
@media(max-width:560px){.map-arrangement{width:100%}.map-arrangement span{margin-right:auto}.map-arrangement button{flex:1}.toolbar #search{flex-basis:100%}}
.tree-focus{position:absolute;z-index:3;top:16px;right:18px;display:flex;align-items:center;gap:14px;max-width:min(480px,calc(100% - 36px));padding:9px 10px 9px 14px;border:1px solid #5a5c50;border-radius:9px;background:#25261ff2;box-shadow:0 12px 35px #0006;backdrop-filter:blur(10px)}.tree-focus[hidden]{display:none}.tree-focus>span{display:grid;min-width:0}.tree-focus small{color:#a8bf83;font-size:10px;font-weight:700;letter-spacing:.11em}.tree-focus strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.tree-focus em{color:#aaa99e;font-size:11px;font-style:normal}.tree-focus button{min-height:34px;padding:6px 9px;font-size:12px}.alternate-routes{margin-top:16px}.alternate-route-list{display:grid;gap:8px;padding-bottom:12px}.alternate-route-list .shared-route{margin-top:0}.alternate-route-list .path-person{font-size:12px;padding:6px 8px}.inspector-actions .primary{padding:9px 11px}
.alternate-route{display:grid;gap:3px}.route-proof,.coverage-freshness{color:#9e9d91;font-size:11px}.detail-section>.route-proof{display:block;margin-top:9px}.alternate-route .route-proof{padding-left:2px}
.expansion-controls{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:0 32px 20px}.expansion-controls button{border-color:#87996b;color:#d3e3b7;font-size:14px}.expansion-controls span{font-size:14px;color:var(--muted)}@media(max-width:650px){.expansion-controls{padding:0 24px 20px}}
@media(max-width:650px){.tree-focus{top:58px;left:16px;right:16px}.tree-focus>span{flex:1}.tree-focus em{display:none}}

/* A perspective-projected node system, rotated by scroll around its Y axis. */
.solar-journey{position:relative;margin-top:48px;border-top:1px solid #77766b}
.solar-stage{position:relative;height:780px;max-height:100svh;min-height:min(500px,100svh);isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 55%,#b4c5e00b,transparent 64%)}
.solar-enabled{height:300svh}.solar-enabled .solar-stage{position:sticky;top:0;height:100svh}
.solar-heading{position:absolute;left:3%;top:5%;z-index:2;pointer-events:none}
.solar-heading h2{font-size:clamp(34px,4.8vw,64px);line-height:1.04;letter-spacing:-.045em;margin:12px 0}
.solar-heading .eyebrow{font-size:12px;letter-spacing:.14em}
.solar-scene{position:absolute;inset:175px 0 90px}
.solar-canvas{position:absolute;inset:0;width:100%;height:100%;cursor:default;touch-action:pan-y}
.solar-caption{position:absolute;left:0;right:0;bottom:42px;display:flex;justify-content:center;align-items:center;gap:10px}.solar-caption p{margin:0;color:var(--text);font-size:16px}.solar-key{width:8px;height:8px;border-radius:50%;background:#ead779;box-shadow:0 0 15px #ead77950}
.solar-scroll-note{position:absolute;bottom:10px;left:0;right:0;margin:0;text-align:center;font-size:12px;letter-spacing:.08em;color:var(--muted)}
@media(max-width:730px){.solar-heading{left:0;top:24px}.solar-heading h2{font-size:38px}.solar-heading .eyebrow{font-size:11px}.solar-scene{inset:158px -12px 88px}.solar-enabled{height:260svh}}
@media(max-height:600px){.solar-heading{top:12px}.solar-heading h2{font-size:30px}.solar-heading .eyebrow{margin:0;font-size:10px}.solar-scene{inset:100px 0 70px}.solar-caption{bottom:30px}.solar-caption p{font-size:14px}.solar-scroll-note{bottom:6px}}
@media(prefers-reduced-motion:reduce){.solar-enabled{height:auto}.solar-enabled .solar-stage{position:relative;height:740px;max-height:none}.solar-scroll-note{display:none}}

/* Shared totals are intentionally separate from device-local collector progress. */
.metrics{margin-bottom:10px}
.metrics-source{margin:0 32px 24px;font-size:12px;line-height:1.4;color:#a8bf83;font-weight:700;letter-spacing:.04em}
@media(max-width:730px){.metrics-source{margin:0 24px 20px}}

/* Compact workspace: keep the graph in the first viewport and make settings a drawer. */
html{max-width:100%;overflow-x:hidden}
.map-page{height:100dvh;max-width:100%;overflow:hidden;background:#141512;font-family:var(--font-body);font-size:14px}
.map-page *{min-width:0}
.map-page h1,.map-page h2,.map-page h3,.map-page .brand,.map-page .metrics strong{font-family:var(--font-body);font-optical-sizing:auto;letter-spacing:-.035em}
.map-page .topbar{height:54px;min-height:54px;padding:0 18px;border-bottom-color:#34352f}
.map-page .brand{gap:9px;font-size:22px;letter-spacing:-.045em}
.map-page .brand-mark{width:30px;height:30px;font-family:var(--font-body);font-size:19px;border-radius:7px}
.map-page .brand-divider{height:16px;margin:0 2px}
.map-page .brand small{font-size:11px;letter-spacing:.11em}
.map-page .top-actions{gap:10px;overflow:hidden}
.map-page .top-actions .mode{font-size:11px;letter-spacing:.035em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.map-page .top-actions #account-label{max-width:230px}
.map-page .top-actions button{min-height:32px;padding:5px 8px;font-size:13px}
.map-page .workspace-nav{height:42px;padding:5px 14px;gap:3px;background:#181916;border-bottom-color:#34352f}
.map-page .workspace-nav button{min-height:30px;padding:5px 12px;border-radius:7px;font-size:13px;color:#aaa99e}
.map-page .workspace-nav button[aria-pressed=true]{background:#292a25;color:#f2f0e6;box-shadow:inset 0 0 0 1px #44453e}
.map-page .workspace{display:block;width:100%;height:calc(100dvh - 96px);min-height:0;overflow:hidden}
.map-page .main-panel{position:relative;display:flex;width:100%;height:100%;min-height:0;overflow:hidden;background:#171815}
.workspace-overview{display:grid;grid-template-columns:minmax(240px,.9fr) auto minmax(220px,1.25fr);align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid #34352f;background:#191a17;animation:workspace-settle .38s ease-out both}
.map-page .panel-heading{padding:0;gap:10px}
.map-page .panel-heading .eyebrow{font-size:10px;letter-spacing:.14em;color:#919187}
.map-page .panel-heading h2{max-width:44ch;margin:2px 0 0;font-size:18px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.map-page .badge{padding:4px 7px;font-size:11px;border-radius:6px}
.map-page .workspace-build-controls,.map-page .expansion-controls{padding:0;gap:6px;flex-wrap:wrap}
.map-page .workspace-build-controls{justify-content:flex-start}
.map-page .workspace-build-controls .control-row{gap:5px}
.map-page .workspace-build-controls button,.map-page .expansion-controls button{min-height:32px;padding:6px 9px;font-size:12px;border-radius:7px}
.map-page .workspace-build-controls .primary{padding-inline:12px}
.map-page .expansion-controls{justify-content:flex-end}
.map-page .expansion-controls span{flex-basis:100%;text-align:right;font-size:11px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.map-page .pause-reason{flex-basis:100%;max-width:520px;font-size:11px}
.map-page .metrics{display:flex;align-items:stretch;gap:7px;margin:0;padding:8px 16px;border-bottom:1px solid #34352f;background:#151613;animation:workspace-settle .42s .03s ease-out both}
.map-page .metrics>div{position:relative;display:flex;flex:0 1 180px;align-items:baseline;gap:8px;padding:7px 10px 7px 13px!important;border:1px solid #373831;border-radius:8px;background:#20211d;color:#f2f0e6}
.map-page .metrics>div:before{content:'';position:absolute;inset:7px auto 7px 0;width:3px;border-radius:3px;background:#ead779}
.map-page .metrics>div:nth-child(2):before{background:#a8bf83}.map-page .metrics>div:nth-child(3):before{background:#b4c5e0}.map-page .metrics>div:nth-child(4):before{background:#b5a0cb}
.map-page .metrics strong{margin:0;font-size:19px;line-height:1;font-weight:650;font-variant-numeric:tabular-nums}
.map-page .metrics span{font-size:11px;line-height:1.15;color:#aaa99e;font-weight:550}
.map-page .metrics-source{display:flex;align-items:center;margin:0 0 0 auto;padding:0 4px;max-width:270px;font-size:10px;line-height:1.25;color:#8fa571;letter-spacing:.04em;text-align:right}
.map-controls{position:relative;z-index:9;flex:none}
.map-page .toolbar{min-height:46px;padding:6px 12px;gap:8px;flex-wrap:nowrap;background:#1b1c18;border-color:#34352f;animation:workspace-settle .44s .05s ease-out both}
.map-page .view-tabs{gap:2px}
.map-page .view-tabs button{min-height:32px;padding:6px 10px;border-radius:7px;font-size:12px}
.map-page .toolbar #search{order:2;flex:1 1 260px;width:auto;max-width:440px;min-height:32px;margin-left:auto;padding:6px 10px;border-radius:7px;font-size:13px;background:#141512}
.map-page .toolbar #search:focus{max-width:500px}
.map-page .toolbar #filter-toggle{order:3;min-height:32px;padding:6px 10px;border-radius:7px;font-size:12px}
.map-page .map-arrangement{order:4;margin-left:0;padding:2px;border-radius:7px}
.map-page .map-arrangement button{min-height:28px;padding:4px 8px;font-size:11px}
.map-page .map-filters{position:absolute;top:calc(100% + 8px);right:12px;display:grid;width:min(920px,calc(100vw - 24px));grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px;border:1px solid #55574e;border-radius:12px;background:#22231ff5;box-shadow:0 22px 70px #000b;backdrop-filter:blur(16px);animation:filter-in .2s ease-out both}
.map-page .map-filters .facet-field,.map-page .map-filters .facet-wide{grid-column:auto}
.map-page .map-filters .facet-field label{margin-bottom:5px;font-size:12px}
.map-page .map-filters input,.map-page .map-filters select{min-height:38px;padding:7px 9px;font-size:13px;border-radius:7px}
.map-page .filter-actions{grid-column:2/4;justify-content:flex-end;min-height:38px}
.map-page .filter-actions .scroll-toggle{font-size:12px}
.map-page .filter-actions button{min-height:34px;font-size:12px}
.map-page .map-filters .filter-help{grid-column:1/3;font-size:11px;line-height:1.4}
.map-page .map-filters #filter-count{grid-column:3;text-align:right;font-size:11px;line-height:1.4}
.map-page .live-progress{flex:none;padding:0 14px;border-bottom:1px solid #354031;background:#1e231c}
.map-page .live-progress summary{min-height:34px;gap:8px}
.map-page .live-progress strong,.map-page .activity-disclosure{font-size:12px}
.map-page .live-progress .activity-details{padding:0 0 8px 16px}
.map-page .live-progress #live-detail,.map-page .live-progress #live-rate{font-size:12px}
.map-page .graph-area{position:relative;flex:1;min-height:0;overflow:hidden;background:radial-gradient(circle at 50% 44%,#20241d 0,#171815 62%);animation:graph-in .5s ease-out both}
.map-page .data-view{flex:1;min-height:0;overflow:auto;padding:18px}
.map-page .graph-legend{top:11px;left:12px;right:auto;gap:11px;padding:6px 8px;border:1px solid #34362f;border-radius:8px;background:#1d1e1ad9;backdrop-filter:blur(8px);font-size:11px}
.map-page .graph-legend i{width:6px;height:6px}
.map-page .graph-tools{left:auto;right:12px;bottom:12px;gap:3px;padding:4px;border-color:#505149;border-radius:9px;background:#22231fed;box-shadow:0 8px 28px #0006}
.map-page .graph-tools button{min-width:34px;min-height:32px;padding:5px 8px;font-size:12px;border-radius:6px}
.map-page .graph-tools output{min-width:42px;font-size:11px}
.map-page .graph-tools .scroll-toggle{margin:0 5px;font-size:11px}
.map-page .graph-tools .scroll-toggle input{width:14px;height:14px}
.map-page .graph-caption{left:12px;bottom:12px;padding:7px 9px;border:1px solid #34362f;border-radius:8px;background:#1d1e1ad9;backdrop-filter:blur(8px);font-size:11px;line-height:1;color:#aaa99e}
.map-page .panel-footer{flex:none;min-height:28px;padding:6px 12px;font-size:10px;border-color:#34352f;background:#181916}
.map-page .empty-graph{padding:40px 20px}
.map-page .empty-graph h3{margin:18px 0 2px;font-size:22px}
.map-page .empty-graph p{margin:4px 0;font-size:13px}
.map-page .orbit-symbol{width:72px;height:72px}.map-page .orbit-symbol:after{width:34px;height:34px}

/* Settings stay contextual: a compact slide-over instead of replacing the map. */
.map-page .settings-scrim{position:fixed;z-index:34;inset:0;width:100%;height:100%;min-height:0;padding:0;border:0;border-radius:0;background:#0008;backdrop-filter:blur(2px)}
.map-page .settings-scrim:hover{transform:none;background:#0008}
.map-page .separated-workspace .sidebar{position:fixed;z-index:35;inset:0 0 0 auto;display:block;width:min(430px,100vw);height:100dvh;padding:18px 18px 24px;overflow-y:auto;border:0;border-left:1px solid #515248;background:#1b1c18;box-shadow:-24px 0 70px #0009;animation:settings-in .25s cubic-bezier(.2,.8,.2,1) both}
.map-page .settings-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:4px}
.map-page .settings-heading h1{margin:3px 0 0;font-size:22px;line-height:1.15}
.map-page .settings-heading .eyebrow{font-size:10px}
.map-page #close-settings{min-height:32px;padding:5px 9px;border:1px solid #46473f;border-radius:7px}
.map-page .sidebar>.intro{margin:8px 0 16px;font-size:13px;line-height:1.5}
.map-page .sidebar #setup-form{display:block;margin:0;padding:14px;border:1px solid #3d3e37;border-radius:10px;background:#20211d}
.map-page .sidebar label{margin-bottom:5px;font-size:12px}
.map-page .sidebar input,.map-page .sidebar select{min-height:38px;padding:7px 9px;border-radius:7px;font-size:13px}
.map-page .sidebar .form-row{grid-template-columns:112px minmax(0,1fr);gap:9px;margin:12px 0}
.map-page .collection-settings{margin:8px 0 0;border-top:1px solid #3c3d36}
.map-page .collection-settings summary{padding:10px 0 4px;font-size:12px;color:#c8c6ba}
.map-page .settings-detail{display:grid;gap:8px;padding-top:7px}
.map-page .settings-detail p{margin:0;font-size:11px;line-height:1.45}
.map-page .sidebar .collection-option{margin:5px 0;font-size:12px}
.map-page .sidebar .full{min-height:38px;margin-top:12px;padding:7px 10px;font-size:13px}
.map-page .sidebar .library-panel{display:block;margin:10px 0 0;padding:13px;border:1px solid #3d3e37;border-radius:10px;background:#20211d}
.map-page .settings-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.map-page .settings-section-heading h3{margin:1px 0 0;font-size:15px;letter-spacing:-.02em}
.map-page .settings-section-heading .small-label{font-size:9px}
.map-page .database-proof{padding:4px 6px;font-size:9px!important;border-radius:5px}
.map-page .library-panel>p{margin:7px 0;font-size:11px;line-height:1.4}
.map-page .library-panel label{font-size:11px}
.map-page .library-panel button{min-height:32px;margin-top:6px;padding:5px 8px;font-size:12px}
.map-page #library-results{max-height:130px;font-size:12px}
.map-page .library-import{margin:10px 0 4px;padding:0;border:0;border-top:1px solid #3d3e37}
.map-page .library-import summary{padding:9px 0 3px;font-size:11px;cursor:pointer;color:#c8c6ba}
.map-page .library-import p{font-size:11px}
.map-page .database-panel .settings-section-heading button{margin:0}
.map-page .library-import-list{max-height:180px;overflow:auto}
.map-page .status-box{margin-top:10px;padding:11px 12px;border:1px solid #3d3e37;border-radius:10px;background:#20211d}
.map-page .status-title{font-size:12px}.map-page .status-box p{margin:5px 0 0;font-size:11px;line-height:1.45}
.map-page .collection-maintenance{margin-top:9px;padding:10px 11px;border:1px solid #3d3e37;border-radius:10px;background:#191a17}
.map-page .collection-maintenance strong{display:block;font-size:12px;color:#e4e1d4}
.map-page .collection-maintenance p{margin:4px 0 7px;font-size:10.5px;line-height:1.45;color:#aaa99e}
.map-page .collection-maintenance p b{color:#d8d5c7;font-weight:650}
.map-page .collection-maintenance #cancel-build{min-height:28px;padding:3px 0;font-size:10.5px}
.map-page .sidebar-bottom{display:flex!important;align-items:center;justify-content:space-between;margin:10px 0 0!important;padding:0!important}
.map-page .sidebar-bottom .profile-link{margin:0;font-size:11px}
.map-page .sidebar-bottom .danger{min-height:30px;margin:0;padding:4px 7px;font-size:11px}

@keyframes settings-in{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
@keyframes filter-in{from{opacity:0;transform:translateY(-7px) scale(.99)}to{opacity:1;transform:none}}
@keyframes workspace-settle{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
@keyframes graph-in{from{opacity:.6;filter:blur(3px)}to{opacity:1;filter:none}}

@media(max-width:1100px){
 .workspace-overview{grid-template-columns:minmax(220px,.8fr) auto}.map-page .expansion-controls{grid-column:1/-1;justify-content:flex-start}.map-page .expansion-controls span{flex:1 1 260px;text-align:left}
 .map-page .metrics-source{display:none}.map-page .metrics>div{flex:1 1 0}
}
@media(max-width:800px){
 .map-page .top-actions #account-label{display:none}.workspace-overview{grid-template-columns:1fr auto}.map-page .workspace-build-controls{grid-column:1/-1}
 .map-page .expansion-controls{display:none}.map-page .map-arrangement{display:none}.map-page .toolbar #search{max-width:none}
 .map-page .map-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.map-page .filter-actions,.map-page .map-filters .filter-help,.map-page .map-filters #filter-count{grid-column:1/-1;text-align:left}
}
@media(max-width:620px){
 .map-page{height:auto;min-height:100dvh;overflow-y:auto}.map-page .brand small,.map-page .brand-divider,.map-page #connection-mode{display:none}.map-page .workspace{height:auto;min-height:calc(100dvh - 96px);overflow:visible}.map-page .main-panel{min-height:calc(100dvh - 96px);overflow:visible}
 .workspace-overview{padding:9px 11px}.map-page .panel-heading h2{font-size:16px}.map-page .workspace-build-controls{overflow-x:auto;flex-wrap:nowrap}.map-page .workspace-build-controls .control-row{flex-wrap:nowrap}
 .map-page .metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:7px 10px}.map-page .metrics>div{width:auto}.map-page .toolbar{flex-wrap:wrap}.map-page .toolbar #search{order:5;flex-basis:100%}
 .map-page .map-filters{position:fixed;inset:96px 8px auto;width:auto;max-height:calc(100dvh - 112px);grid-template-columns:1fr;overflow:auto}.map-page .map-filters .facet-field,.map-page .map-filters .facet-wide,.map-page .filter-actions,.map-page .map-filters .filter-help,.map-page .map-filters #filter-count{grid-column:1}
 .map-page .graph-area{height:62dvh;min-height:480px}.map-page .graph-caption{display:none}.map-page .graph-tools{left:10px;right:auto;max-width:calc(100% - 20px)}.map-page .graph-tools .scroll-toggle{display:none}.map-page .panel-footer{display:none}
}
