:root{--bg:#05060a;--glass:#0d0f17b8;--glass-strong:#0d0f17e6;--line:#ffffff14;--line-strong:#ffffff29;--text:#ece9e2;--muted:#8d91a0;--faint:#5b6070;--gold:#e8b04b;--ok:#4ade80;--warn:#fbbf24;--bad:#f87171;--serif:"Cormorant Garamond", Georgia, serif;--sans:"Inter", ui-sans-serif, system-ui, sans-serif;--radius:16px}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);font:14px/1.5 var(--sans);-webkit-font-smoothing:antialiased;margin:0;overflow:hidden}button{font:inherit;color:inherit}#map{cursor:grab;touch-action:none;width:100vw;height:100vh;display:block;position:fixed;inset:0}#map.dragging{cursor:grabbing}#map.pointing{cursor:pointer}.glass{background:var(--glass);border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(18px)saturate(1.3);box-shadow:0 20px 60px -20px #000000b3,inset 0 1px #ffffff0a}.brand{z-index:5;pointer-events:none;align-items:center;gap:12px;display:flex;position:fixed;top:22px;left:24px}.brand-mark{width:38px;height:38px;color:var(--gold);filter:drop-shadow(0 0 10px #e8b04b73)}.brand h1{font:600 26px/1 var(--serif);letter-spacing:.32em;text-transform:uppercase;background:linear-gradient(180deg, #fff3d6, var(--gold));color:#0000;-webkit-background-clip:text;background-clip:text;margin:0}.brand p{letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin:4px 0 0;font-size:11px}.icon-btn{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;place-items:center;width:34px;height:34px;transition:background .2s,border-color .2s;display:grid}.icon-btn:hover{border-color:var(--line);background:#ffffff0f}.icon-btn svg,.search svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;width:18px;height:18px}.filters{z-index:6;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;width:300px;padding:16px;position:fixed;top:86px;bottom:110px;left:24px;overflow-y:auto}.filters section{margin-top:18px}.filters h2,.panel h3{font:600 10.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--faint);margin:0 0 10px}.filters-toggle{display:none}.search{position:relative}.search>svg{color:var(--muted);position:absolute;top:11px;left:12px}.search input{border:1px solid var(--line);width:100%;height:40px;color:var(--text);font:inherit;background:#00000059;border-radius:12px;outline:none;padding:0 12px 0 38px;transition:border-color .2s,box-shadow .2s}.search input:focus{border-color:#e8b04b80;box-shadow:0 0 0 3px #e8b04b1f}.search-results{background:var(--glass-strong);border:1px solid var(--line);z-index:3;border-radius:12px;max-height:320px;margin:0;padding:6px;list-style:none;position:absolute;top:46px;left:0;right:0;overflow-y:auto}.search-results:empty{display:none}.search-results li{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.search-results li:hover,.search-results li.active{background:#ffffff0f}.search-results small{color:var(--faint);margin-left:auto;font-size:11px}.dot{border-radius:50%;flex:none;width:9px;height:9px;box-shadow:0 0 8px}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{--c:#fff;border:1px solid color-mix(in srgb, var(--c) 40%, transparent);background:color-mix(in srgb, var(--c) 12%, transparent);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:7px;padding:6px 11px 6px 9px;font-size:12.5px;transition:opacity .2s,background .2s,transform .15s;display:inline-flex}.chip .dot{background:var(--c);color:var(--c);width:8px;height:8px}.chip:hover{transform:translateY(-1px)}.chip.off{opacity:.35;background:0 0}.chip.off .dot{box-shadow:none}.evidence-list{gap:6px;display:grid}.evidence{border:1px solid var(--line);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:10px;grid-template-columns:34px 1fr;align-items:center;gap:10px;padding:8px 10px;transition:opacity .2s,background .2s;display:grid}.evidence:hover{background:#ffffff08}.evidence.off{opacity:.35}.evidence strong{font-size:13px;font-weight:500;display:block}.evidence small{color:var(--muted);font-size:11.5px;line-height:1.35;display:block}.evidence svg{width:34px;height:10px}.type-legend{grid-template-columns:1fr 1fr;gap:6px 10px;display:grid}.type-legend div{color:var(--muted);align-items:center;gap:8px;font-size:12.5px;display:flex}.type-legend svg{flex:none;width:16px;height:16px}.switches{gap:10px;display:grid}.switch{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:13px;display:flex}.switch input{display:none}.switch span{background:#ffffff1f;border-radius:99px;flex:none;width:32px;height:18px;transition:background .2s;position:relative}.switch span:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .2s;position:absolute;top:2px;left:2px}.switch input:checked+span{background:var(--gold)}.switch input:checked+span:after{transform:translate(14px)}.filters-foot{border-top:1px solid var(--line);color:var(--faint);justify-content:space-between;align-items:center;margin-top:20px;padding-top:14px;font-size:11.5px;display:flex}.link{color:var(--gold);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.link:hover{text-decoration:underline}.panel{z-index:6;opacity:0;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;background:var(--glass-strong);width:400px;padding:26px 24px 24px;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s;position:fixed;top:22px;bottom:110px;right:24px;overflow-y:auto;transform:translate(calc(100% + 40px))}.panel.open{opacity:1;transform:none}.panel-close{color:var(--muted);position:absolute;top:14px;right:14px}.eyebrow svg{flex:none;width:14px;height:14px}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;font-size:11px;display:flex}.panel h2{font:600 30px/1.1 var(--serif);letter-spacing:.01em;margin:10px 0 4px}.years{color:var(--gold);font:500 15px var(--serif);letter-spacing:.05em}.summary{color:#c9c6be;margin:14px 0 0;font-size:14px;line-height:1.6}.tags{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.tags .chip{cursor:default;padding:4px 9px 4px 8px;font-size:11.5px}.tags .chip:hover{transform:none}.panel section{margin-top:24px}.family-link{color:var(--muted);gap:6px;margin-top:10px;font-size:13px;display:inline-flex}.family-link button{color:var(--gold);cursor:pointer;background:0 0;border:0;padding:0}.conn-group+.conn-group{margin-top:14px}.conn-group h4{color:var(--muted);margin:0 0 6px;font-size:12px;font-weight:500}.conn{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;grid-template-columns:10px 1fr auto;align-items:center;gap:10px;width:100%;padding:8px 10px;transition:background .15s,border-color .15s;display:grid}.conn:hover{border-color:var(--line);background:#ffffff0a}.conn strong{font-size:13.5px;font-weight:500;display:block}.conn small{color:var(--muted);font-size:11.5px;display:block}.badge{letter-spacing:.02em;white-space:nowrap;border-radius:99px;padding:2px 7px;font-size:10.5px;font-weight:500}.badge.documentado{color:var(--ok);background:#4ade801f}.badge.provavel{color:var(--warn);background:#fbbf241f}.badge.alegado{color:var(--bad);background:#f871711f}.source{border:1px solid var(--line);background:#00000040;border-radius:12px;padding:12px 14px 12px 16px;position:relative}.source+.source{margin-top:8px}.source:before{content:"";background:var(--gold);border-radius:2px;width:2px;position:absolute;top:12px;bottom:12px;left:0}.source .kind{letter-spacing:.14em;text-transform:uppercase;color:var(--faint);font-size:10.5px}.source .title{font:600 16px/1.25 var(--serif);color:var(--text);margin:3px 0;display:block}.source .meta{color:var(--muted);font-size:12px}.source blockquote{font:italic 14px/1.5 var(--serif);color:#d6d2c8;margin:8px 0 0}.source a{color:var(--gold);font-size:12px;text-decoration:none}.source a:hover{text-decoration:underline}.source .note{color:var(--warn);margin-top:6px;font-size:11.5px}.edge-head{gap:6px;margin-top:12px;display:grid}.edge-node{border:1px solid var(--line);cursor:pointer;text-align:left;font:600 17px var(--serif);background:0 0;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.edge-node:hover{border-color:var(--line-strong)}.edge-arrow{color:var(--gold);padding-left:16px;font-size:13px}.desc{color:#c9c6be;margin:14px 0 0;line-height:1.6}.muted{color:var(--muted)}.path-box{border:1px dashed var(--line-strong);border-radius:12px;padding:14px}.path-box p{color:var(--muted);margin:0 0 10px;font-size:13px}.path-box .search input{height:36px}.path-steps{counter-reset:s;margin:12px 0 0;padding:0;list-style:none}.path-steps li{padding:0 0 12px 22px;font-size:13px;position:relative}.path-steps li:before{content:"";background:var(--gold);width:7px;height:7px;box-shadow:0 0 8px var(--gold);border-radius:50%;position:absolute;top:7px;left:4px}.path-steps li:after{content:"";background:#e8b04b4d;width:1px;position:absolute;top:16px;bottom:0;left:7px}.path-steps li:last-child:after{display:none}.path-steps .rel{color:var(--muted);font-size:11.5px;display:block}.path-steps button{color:var(--text);cursor:pointer;background:0 0;border:0;padding:0;font-weight:500}.timeline{z-index:6;align-items:center;gap:16px;width:min(760px,100vw - 48px);padding:12px 20px 12px 12px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.play{background:radial-gradient(circle at 30% 30%, #ffd88a, var(--gold) 60%, #a8741f);color:#1a1204;cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;width:46px;height:46px;transition:transform .15s;display:grid;box-shadow:0 0 24px #e8b04b73}.play:hover{transform:scale(1.06)}.play svg{fill:currentColor;width:20px;height:20px}.play .i-pause,.play.playing .i-play{display:none}.play.playing .i-pause{display:block}.year{flex-direction:column-reverse;flex:none;align-items:center;width:70px;display:flex}.year span{font:600 28px/1 var(--serif);letter-spacing:.04em;color:var(--text)}.year small{letter-spacing:.2em;text-transform:uppercase;color:var(--faint);font-size:9.5px}.range-wrap{flex:1;padding-bottom:14px;position:relative}input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:22px}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--gold) var(--p,100%), #ffffff1f var(--p,100%));border-radius:3px;height:3px}input[type=range]::-moz-range-track{background:#ffffff1f;border-radius:3px;height:3px}input[type=range]::-moz-range-progress{background:var(--gold);border-radius:3px;height:3px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border-radius:50%;width:16px;height:16px;margin-top:-6.5px;box-shadow:0 0 0 4px #e8b04b4d,0 0 14px #e8b04bcc}input[type=range]::-moz-range-thumb{background:#fff;border:0;border-radius:50%;width:16px;height:16px;box-shadow:0 0 0 4px #e8b04b4d,0 0 14px #e8b04bcc}.ticks{height:12px;position:absolute;bottom:0;left:8px;right:8px}.ticks span{color:var(--faint);letter-spacing:.05em;font-size:10px;position:absolute;transform:translate(-50%)}.zoom{z-index:5;border-radius:14px;gap:2px;padding:5px;display:flex;position:fixed;bottom:24px;right:24px}#tooltip{z-index:20;border:1px solid var(--line);background:var(--glass-strong);pointer-events:none;opacity:0;border-radius:10px;max-width:280px;padding:8px 12px;font-size:12.5px;transition:opacity .15s,transform .15s;position:fixed;transform:translateY(4px)}#tooltip.show{opacity:1;transform:none}#tooltip strong{font:600 15px var(--serif);display:block}#tooltip small{color:var(--muted)}.modal{z-index:30;background:#0000008c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal[hidden]{display:none}.modal-card{background:var(--glass-strong);max-width:560px;max-height:calc(100vh - 32px);padding:28px;position:relative;overflow-y:auto}.modal-card h2{font:600 28px var(--serif);margin:0 0 12px}.modal-card p{color:#c9c6be;line-height:1.65}.method-evidence{gap:8px;padding:0;list-style:none;display:grid}.method-evidence li{grid-template-columns:34px 1fr;align-items:center;gap:10px;display:grid}.loader{background:var(--bg);z-index:40;color:var(--muted);letter-spacing:.2em;text-transform:uppercase;place-content:center;justify-items:center;gap:18px;font-size:11px;transition:opacity .8s;display:grid;position:fixed;inset:0}.loader.done{opacity:0;pointer-events:none}.orbit{border:1px solid #e8b04b33;border-top-color:var(--gold);border-radius:50%;width:54px;height:54px;animation:1.1s linear infinite spin;box-shadow:0 0 30px #e8b04b33}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=860px){.brand{top:16px;left:16px}.brand h1{font-size:21px}.brand p{font-size:9.5px}.filters-toggle{z-index:7;background:var(--glass);border:1px solid var(--line);display:grid;position:fixed;top:18px;right:16px}.filters{opacity:0;pointer-events:none;width:auto;max-height:calc(100vh - 170px);transition:opacity .25s,transform .25s;inset:70px 16px auto;transform:translateY(-12px)}.filters.open{opacity:1;pointer-events:auto;transform:none}.panel{width:auto;max-height:62vh;inset:auto 16px 96px;transform:translateY(calc(100% + 120px))}.timeline{gap:10px;width:auto;padding:8px 14px 8px 8px;bottom:16px;left:16px;right:16px;transform:none}.play{width:40px;height:40px}.year{width:54px}.year span{font-size:22px}.zoom{display:none}}
