:root{--bg-primary: #0f0f23;--bg-secondary: #1a1a2e;--bg-tertiary: #16213e;--bg-gradient-start: #1a1a2e;--bg-gradient-mid: #16213e;--bg-gradient-end: #0f3460;--bg-card: rgba(255, 255, 255, .05);--bg-input: #1a1a2e;--bg-hover: rgba(100, 255, 218, .05);--bg-hierarchy: rgba(100, 255, 218, .05);--text-primary: #e0e0e0;--text-secondary: #8892b0;--text-accent: #64ffda;--text-accent-secondary: #7ee8fa;--text-title: #ccd6f6;--text-subfield: #98a8c8;--border-color: #1a1a2e;--border-accent: #1a3a5c;--btn-bg: #64ffda;--btn-text: #0f0f23;--btn-hover: #4fd1b5;--highlight-bg: #ffd700;--highlight-text: #000;--highlight-node-bg: rgba(100, 255, 218, .15);--highlight-node-border: #64ffda;--scrollbar-track: #0f0f23;--scrollbar-thumb: #1a1a2e;--scrollbar-thumb-hover: #2a2a3e}[data-theme=light]{--bg-primary: #f5f5f5;--bg-secondary: #ffffff;--bg-tertiary: #e8f0fe;--bg-gradient-start: #e8f0fe;--bg-gradient-mid: #f0f4f8;--bg-gradient-end: #d4e4fc;--bg-card: rgba(0, 0, 0, .03);--bg-input: #ffffff;--bg-hover: rgba(0, 150, 136, .05);--bg-hierarchy: rgba(0, 150, 136, .05);--text-primary: #333333;--text-secondary: #666666;--text-accent: #009688;--text-accent-secondary: #00897b;--text-title: #1a1a2e;--text-subfield: #5f6368;--border-color: #e0e0e0;--border-accent: #c0c0c0;--btn-bg: #009688;--btn-text: #ffffff;--btn-hover: #00796b;--highlight-bg: #ffd700;--highlight-text: #000;--highlight-node-bg: rgba(0, 150, 136, .15);--highlight-node-border: #009688;--scrollbar-track: #f0f0f0;--scrollbar-thumb: #c0c0c0;--scrollbar-thumb-hover: #a0a0a0}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;scroll-behavior:smooth;transition:background-color .3s,color .3s}.app{max-width:1400px;margin:0 auto;padding:20px}.hero-section{background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-mid) 50%,var(--bg-gradient-end) 100%);border-radius:16px;padding:40px;margin-bottom:30px;border:1px solid var(--border-accent)}.hero-title{font-size:2.5rem;color:var(--text-accent);margin-bottom:15px;text-align:center}.hero-subtitle{color:var(--text-secondary);font-size:1.2rem;text-align:center;margin-bottom:30px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:30px}.info-card{background-color:var(--bg-card);border-radius:12px;padding:20px;border:1px solid var(--border-color)}.info-card h3{color:var(--text-accent);font-size:1.1rem;margin-bottom:10px;display:flex;align-items:center;gap:8px}.info-card p{color:var(--text-secondary);font-size:.95rem;margin-bottom:8px}.info-card ul{list-style:none;padding-left:0;margin-top:10px}.info-card ul li{color:var(--text-secondary);font-size:.9rem;padding:4px 0 4px 20px;position:relative}.info-card ul li:before{content:"▸";position:absolute;left:0;color:var(--text-accent)}.hierarchy-visual{background-color:var(--bg-hierarchy);border-radius:8px;padding:15px;margin-top:15px;font-family:Courier New,monospace;font-size:.9rem}.hierarchy-level{padding:4px 0;color:var(--text-secondary)}.hierarchy-level .level-icon{color:var(--text-accent);margin-right:8px}.jump-button{display:block;width:fit-content;margin:0 auto;background:linear-gradient(135deg,var(--btn-bg) 0%,var(--btn-hover) 100%);color:var(--btn-text);border:none;padding:15px 30px;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;text-decoration:none}.jump-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #64ffda4d}.jump-button:active{transform:translateY(0)}.settings-bar{display:flex;justify-content:flex-end;gap:10px;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid var(--border-color)}.setting-btn{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);padding:8px 12px;border-radius:6px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;gap:6px;transition:all .2s}.setting-btn:hover{background:var(--bg-hover);border-color:var(--text-accent)}.lang-dropdown{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);padding:8px 12px;border-radius:6px;cursor:pointer;font-size:.9rem}.main-content{margin-top:30px}.search-container{margin-bottom:30px;display:flex;flex-direction:column;gap:10px;align-items:center}.search-bar{display:flex;gap:10px;width:100%;max-width:600px}.search-input{flex:1;padding:12px 16px;font-size:1rem;border:2px solid var(--border-color);border-radius:8px;background-color:var(--bg-input);color:var(--text-primary);transition:border-color .2s}.search-input:focus{outline:none;border-color:var(--text-accent)}.search-input::placeholder{color:var(--text-secondary)}.tree-type-toggle{display:flex;gap:10px;justify-content:center;margin:15px 0}.toggle-btn{padding:10px 24px;font-size:.95rem;border:2px solid var(--border-color);border-radius:8px;background-color:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:all .2s;font-weight:500}.toggle-btn:hover{border-color:var(--text-accent);color:var(--text-primary)}.toggle-btn.active{background-color:var(--btn-bg);color:var(--btn-text);border-color:var(--btn-bg);font-weight:600}.data-version-badge{text-align:center;color:var(--text-accent);font-size:.85rem;font-weight:500;margin:10px 0;padding:6px 12px;background-color:#64ffda1a;border-radius:6px;display:inline-block}.search-button,.clear-button{padding:12px 20px;font-size:1rem;border:none;border-radius:8px;cursor:pointer;transition:all .2s}.search-button{background-color:var(--btn-bg);color:var(--btn-text);font-weight:600}.search-button:hover{background-color:var(--btn-hover)}.clear-button{background-color:var(--bg-secondary);color:var(--text-secondary);padding:12px 16px}.clear-button:hover{background-color:var(--border-color);color:var(--text-primary)}.searching-indicator{color:var(--text-accent);font-size:.9rem}.search-results-count{color:var(--text-accent);font-size:.9rem;font-weight:500}.main-content{background-color:var(--bg-secondary);border-radius:12px;padding:20px;min-height:500px;max-height:80vh;overflow-y:auto}.loading{text-align:center;padding:50px;color:var(--text-secondary);font-size:1.2rem}.tree-view{font-size:.95rem}.tree-node{margin:2px 0}.tree-node-header{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:4px;cursor:default;transition:background-color .2s}.tree-node-header:hover{background-color:var(--bg-hover)}.tree-node-header[role=button]{cursor:pointer}.tree-node-header[role=button]:hover{background-color:#64ffda1a}.expand-icon{font-size:.7rem;color:var(--text-accent);width:16px;text-align:center;flex-shrink:0}.node-icon{font-size:1.1rem;flex-shrink:0}.node-name{flex:1;font-weight:500}.works-count{color:var(--text-secondary);font-size:.85rem;flex-shrink:0}.node-stats{display:flex;gap:8px;align-items:center;margin-left:10px}.stat-item{color:var(--text-accent);font-size:.8rem;white-space:nowrap}.openalex-btn{background:none;border:1px solid var(--text-accent);border-radius:4px;cursor:pointer;padding:2px 6px;font-size:.85rem;transition:all .2s}.openalex-btn:hover{background-color:var(--text-accent);color:var(--bg-primary)}.tree-children{margin-top:2px}.highlight{background-color:var(--highlight-bg);color:var(--highlight-text);padding:0 2px;border-radius:2px;font-weight:600}.highlighted{background-color:var(--highlight-node-bg)!important;border-left:3px solid var(--highlight-node-border);padding-left:5px}[data-type=domain] .node-name{font-size:1.1rem;font-weight:700;color:var(--text-accent)}[data-type=field] .node-name{font-size:1.1rem;font-weight:600;color:var(--text-accent-secondary)}[data-type=subfield] .node-name{font-size:1rem;font-weight:500;color:var(--text-subfield)}[data-type=topic] .node-name,[data-type=concept] .node-name{font-size:.95rem;font-weight:400;color:var(--text-title)}.main-content::-webkit-scrollbar{width:10px}.main-content::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:5px}.main-content::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:5px}.main-content::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}@media (max-width: 768px){.app{padding:15px}.hero-title{font-size:2rem}.search-bar{flex-direction:column}.main-content{padding:15px}}
