@import"https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=JetBrains+Mono:wght@300;400;600&display=swap";:root{color-scheme:dark;color:#e8e3d8;background:#0b0d12;font-family:JetBrains Mono,IBM Plex Mono,Menlo,Consolas,monospace;--ink: #e8e3d8;--ink-muted: #a59f93;--paper: #0b0d12;--paper-raised: #111521;--grid-line: rgba(182, 168, 146, .08);--accent: #c8ad6a;--accent-strong: #f2c760;--edge: #2b2a26;--panel-border: #343029;--panel-fill: #121622;--panel-fill-strong: #151b29;--glow: rgba(242, 199, 96, .16);--title-font: "DM Serif Display", "Times New Roman", serif;--paper-shift-x: 0px;--paper-shift-y: 0px;--paper-scale: 1}*{box-sizing:border-box}html,body,#root{height:100%;background-color:var(--paper)!important}body{margin:0;color:var(--ink);background:radial-gradient(900px 450px at 10% -10%,rgba(242,199,96,.12),transparent 60%),radial-gradient(700px 500px at 110% 20%,rgba(140,194,255,.12),transparent 55%),repeating-linear-gradient(0deg,transparent 0 22px,var(--grid-line) 22px 23px),repeating-linear-gradient(90deg,transparent 0 22px,var(--grid-line) 22px 23px),var(--paper)}.app{display:grid;grid-template-rows:auto 1fr;height:100vh;background:var(--paper)!important}.app__header{padding:16px 22px 34px;border-bottom:1px solid var(--edge);background:linear-gradient(180deg,#151a26eb,#0d1018fa),repeating-linear-gradient(90deg,transparent 0 14px,rgba(200,173,106,.06) 14px 15px);position:relative;box-shadow:inset 0 -1px #ffffff0a,0 12px 24px #00000059}.app__header h1{margin:0 0 6px;font-size:22px;font-family:var(--title-font);letter-spacing:.02em;text-transform:uppercase;text-wrap:balance}.app__tip{display:inline-flex;align-items:center;gap:8px;margin-bottom:6px;padding:6px 12px;border-radius:8px;background:var(--panel-fill);border:1px dashed var(--panel-border);color:var(--ink-muted);font-size:11px;width:fit-content;text-transform:uppercase;letter-spacing:.08em}.app__tip--floating{position:absolute;top:68px;right:16px;z-index:11;margin-bottom:0}.app__tip--inline{margin:6px 0 0}.app__controls{margin-top:10px;display:flex;gap:12px;align-items:center;color:var(--ink-muted);font-size:11px;flex-wrap:wrap;text-transform:uppercase;letter-spacing:.08em}.controls__column{display:flex;flex-direction:column;gap:8px}.controls__row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.legend{display:grid;grid-template-columns:auto 1fr;align-items:start;column-gap:12px;row-gap:6px;padding:8px 12px;border-radius:14px;background:var(--panel-fill);border:1px solid var(--panel-border);box-shadow:0 10px 20px #00000059,inset 0 0 0 1px #f2c7600f;max-width:680px}.legend--floating{position:absolute;top:16px;right:16px;z-index:12}.legend__label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);padding-top:4px}.legend__items{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.legend__item{display:inline-flex;align-items:center;gap:6px;color:var(--ink);font-size:11px}.legend__swatch{width:10px;height:10px;border-radius:3px;border:1px solid rgba(242,199,96,.4);display:inline-block;box-shadow:0 0 8px #f2c7602e}.search{position:relative}.search__input{width:240px;background:var(--panel-fill-strong);color:var(--ink);border:1px solid var(--panel-border);border-radius:6px;padding:7px 10px;font-size:12px;line-height:1.4;box-shadow:inset 0 0 0 1px #f2c76014;font-family:inherit;text-transform:uppercase;letter-spacing:.08em}.search__results{position:absolute;top:calc(100% + 6px);left:0;width:320px;max-height:260px;overflow:auto;background:var(--panel-fill);border:1px solid var(--panel-border);border-radius:10px;box-shadow:0 12px 30px #00000073,0 0 0 1px #f2c7600f;z-index:20;padding:6px;display:grid;gap:6px;font-family:inherit}.search__result{display:flex;flex-direction:column;gap:2px;background:transparent;border:1px solid transparent;border-radius:8px;padding:8px 10px;color:var(--ink);text-align:left;cursor:pointer;min-width:0}.search__result:hover{border-color:#f2c76066;background:#121622cc;box-shadow:0 0 0 1px #f2c7601f,0 6px 16px #00000059}.search__label{font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:inherit}.search__meta{font-size:10px;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.08em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:inherit}.search__empty{padding:10px 12px;font-size:11px;color:var(--ink-muted);text-align:center;text-transform:uppercase;letter-spacing:.08em}.app__controls select{margin-left:8px;background:var(--panel-fill-strong);color:var(--ink);border:1px solid var(--panel-border);border-radius:6px;padding:4px 10px;text-transform:uppercase;letter-spacing:.08em}.app__main{height:100%;position:relative;background:radial-gradient(800px 500px at 20% 20%,rgba(242,199,96,.08),transparent 60%),var(--paper);background-color:var(--paper)!important;overflow:hidden}.app__main:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.12),transparent 20%,rgba(0,0,0,.18)),linear-gradient(0deg,rgba(200,173,106,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(200,173,106,.06) 1px,transparent 1px);background-size:100% 100%,calc(24px * var(--paper-scale)) calc(24px * var(--paper-scale)),calc(24px * var(--paper-scale)) calc(24px * var(--paper-scale));background-position:0 0,var(--paper-shift-x) var(--paper-shift-y),var(--paper-shift-x) var(--paper-shift-y);mix-blend-mode:screen;opacity:.6;z-index:0}.sigma-container{width:100%;height:100%;background:transparent!important;position:relative;z-index:1}.sigma-container canvas{background:transparent!important}.reset-view{position:absolute;top:12px;left:12px;z-index:11;background:var(--panel-fill-strong);color:var(--ink);border:1px solid var(--panel-border);border-radius:8px;padding:6px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;box-shadow:0 6px 16px #00000059,inset 0 0 0 1px #f2c7601a}.reset-view:hover{background:#1a2030;border-color:#f2c76099;box-shadow:0 10px 20px #00000073,0 0 18px var(--glow)}@media(max-width:1280px){.legend--floating{position:static;order:0;max-width:100%}.app__header{padding-bottom:16px}}@media(max-width:520px){.legend{border-radius:16px;padding:8px 10px;width:100%}}:root{--sigma-background-color:#fff;--sigma-controls-background-color:#fff;--sigma-controls-background-color-hover:rgba(0,0,0,.2);--sigma-controls-border-color:rgba(0,0,0,.2);--sigma-controls-color:#000;--sigma-controls-zindex:100;--sigma-controls-margin:5px;--sigma-controls-size:30px}div.react-sigma{height:100%;width:100%;position:relative;background:var(--sigma-background-color)}div.sigma-container{height:100%;width:100%}.react-sigma-controls{position:absolute;z-index:var(--sigma-controls-zindex);border:2px solid var(--sigma-controls-border-color);border-radius:4px;color:var(--sigma-controls-color);background-color:var(--sigma-controls-background-color)}.react-sigma-controls.bottom-right{bottom:var(--sigma-controls-margin);right:var(--sigma-controls-margin)}.react-sigma-controls.bottom-left{bottom:var(--sigma-controls-margin);left:var(--sigma-controls-margin)}.react-sigma-controls.top-right{top:var(--sigma-controls-margin);right:var(--sigma-controls-margin)}.react-sigma-controls.top-left{top:var(--sigma-controls-margin);left:var(--sigma-controls-margin)}.react-sigma-controls:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.react-sigma-controls:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.react-sigma-control{width:var(--sigma-controls-size);height:var(--sigma-controls-size);line-height:var(--sigma-controls-size);background-color:var(--sigma-controls-background-color);border-bottom:1px solid var(--sigma-controls-border-color)}.react-sigma-control:last-child{border-bottom:none}.react-sigma-control>*{box-sizing:border-box}.react-sigma-control>button{display:block;border:none;margin:0;padding:0;width:var(--sigma-controls-size);height:var(--sigma-controls-size);line-height:var(--sigma-controls-size);background-position:center;background-size:50%;background-repeat:no-repeat;background-color:var(--sigma-controls-background-color);clip:rect(0,0,0,0)}.react-sigma-control>button:hover{background-color:var(--sigma-controls-background-color-hover)}.react-sigma-search{background-color:var(--sigma-controls-background-color)}.react-sigma-search label{visibility:hidden}.react-sigma-search input{color:var(--sigma-controls-color);background-color:var(--sigma-controls-background-color);font-size:1em;width:100%;margin:0;border:none;padding:var(--sigma-controls-margin);box-sizing:border-box}
