:root{--bg:#0d0d11;--panel:#16171d;--border:#2a2c36;--text:#cdd0d8;--text-dim:#8a8d99;--accent:#c084fc;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;font-family:system-ui,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{background:var(--bg);width:100%;height:100%;color:var(--text);margin:0;overflow:hidden}.app{position:fixed;inset:0;overflow:hidden}.loading{height:100%;color:var(--text-dim);place-items:center;display:grid}button{background:var(--panel);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:6px 12px;font-size:13px}button:hover{border-color:var(--accent)}.topbar{pointer-events:none;z-index:5;background:linear-gradient(#0d0d11e6,#0000);align-items:center;gap:14px;padding:10px 16px;display:flex;position:absolute;top:0;left:0;right:0}.topbar .title{font-weight:600}.topbar .count{color:var(--text-dim);font-size:13px}.topbar .clear{pointer-events:auto}.topbar .zinfo{color:var(--text-dim);margin-left:auto;font-size:12px}.topbar .zinfo em{opacity:.6;margin-left:6px;font-style:normal}.topbar .topbar-seg,.topbar .panel-toggle,.topbar .clear{pointer-events:auto}.topbar-seg{gap:4px;margin:0;display:inline-flex}.topbar-seg button{padding:4px 12px}.topbar-seg button.on{background:var(--accent);color:#1a1024;border-color:var(--accent)}.panel-toggle{padding:4px 10px}.sidebar{border:1px solid var(--border);z-index:6;background:#16171df0;border-radius:10px;width:240px;padding:12px;font-size:12px;position:absolute;top:46px;bottom:12px;left:12px;overflow-y:auto}.seg{gap:4px;margin-bottom:12px;display:flex}.seg button{flex:1}.seg button.on{background:var(--accent);color:#1a1024;border-color:var(--accent)}.group{margin-bottom:12px}.group label{color:var(--text-dim);margin-bottom:6px;display:block}.group select,.noun-input{width:100%;color:var(--text);border:1px solid var(--border);background:#0f1014;border-radius:5px;margin-top:3px;padding:5px;font-size:12px}.ghead{color:var(--text-dim);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px;font-size:11px}.ghead .rng{float:right;text-transform:none;color:var(--accent)}.chiprow{flex-wrap:wrap;gap:4px;display:flex}.fchip{background:#ffffff0a;border-radius:11px;padding:2px 7px;font-size:11px}.fchip.on{background:var(--accent);color:#1a1024;border-color:var(--accent)}.dual{flex-direction:column;gap:2px;display:flex}.dual input{width:100%}.footer{justify-content:space-between;align-items:center;display:flex}.footer .vis{color:var(--text-dim)}.hovercard{z-index:10;pointer-events:none;border:1px solid var(--border);background:#16171df5;border-radius:8px;gap:8px;max-width:320px;padding:8px;display:flex;position:absolute;box-shadow:0 8px 24px #00000080}.hovercard img{object-fit:cover;border-radius:4px;flex:none;width:86px;height:86px}.hovercard-body{min-width:0;font-size:12px}.hc-cat{color:var(--accent);margin-bottom:4px;font-weight:600}.hc-nouns,.muted{color:var(--text-dim)}.lb-backdrop{z-index:20;background:#050508f5;place-items:center;display:grid;position:fixed;inset:0}.lb-full{-webkit-user-select:none;user-select:none;width:auto;max-width:100vw;height:auto;max-height:100vh;display:block}.lb-controls{z-index:22;gap:8px;display:flex;position:fixed;top:14px;right:16px}.lb-btn{background:#16171dd9;border-radius:50%;place-items:center;width:38px;height:38px;padding:0;font-size:18px;font-style:italic;display:grid}.lb-btn.on{background:var(--accent);color:#1a1024;border-color:var(--accent)}.lb-panel{border-left:1px solid var(--border);z-index:21;background:#121319f7;width:330px;height:100%;padding:64px 18px 18px;position:fixed;top:0;right:0;overflow-y:auto}.desc{margin:0 0 12px;font-size:14px;line-height:1.45}.chips{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.chip{border:1px solid var(--border);background:#ffffff0a;border-radius:12px;padding:3px 8px;font-size:12px}.nouns{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.noun{font-size:12px}.noun:after{content:"·";color:var(--text-dim);margin-left:6px}.noun:last-child:after{content:""}.meta-line{color:var(--text-dim);margin-bottom:14px;font-size:11px}.similar{width:100%;margin-bottom:16px}.neighbors{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:6px;display:grid}.neighbors img{aspect-ratio:1;object-fit:cover;cursor:pointer;opacity:.85;border-radius:4px;width:100%}.neighbors img:hover{opacity:1;outline:1px solid var(--accent)}
