/* interactive-knowledge-tree-full: style.css */
:root{--bg:#2b4a7a;--panel-bg:rgba(0,0,0,0.2);--accent:#1976d2;--accent-2:#00bcd4;--highlight:#ffeb3b}
html,body{height:100%;margin:0;font-family:Arial, sans-serif;background:var(--bg);color:#fff;overflow:hidden}
#sheet-selector{position:fixed;top:10px;left:50%;transform:translateX(-50%);z-index:10000;padding:8px 12px;border-radius:6px;border:none}
#tree-container{width:100%;height:100vh;min-height:640px;border:0;position:relative;overflow:hidden}
#loading-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.65);color:#fff;font-size:18px;display:flex;align-items:center;justify-content:center;z-index:100000;opacity:0;pointer-events:none;transition:opacity .25s ease}
#loading-overlay.visible{opacity:1;pointer-events:auto}
#bottom-panel{position:fixed;left:0;right:0;bottom:56px;text-align:center;padding:12px 10px;z-index:9998;background:var(--panel-bg);backdrop-filter:blur(6px)}
#level-buttons{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:8px}
#level-buttons button{background:var(--accent);color:#fff;border:none;padding:8px 12px;border-radius:8px;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,0.2);font-size:13px;transition:background .3s,transform .12s}
#level-buttons button:hover{transform:translateY(-2px);background:#0f66b0}
#search-buttons{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
#search-buttons a button{background:#1976d2;color:#fff;border:none;padding:8px 12px;border-radius:8px;cursor:pointer}
#search-buttons a button:hover{background:#0d47a1;transform:translateY(-2px)}
#bottom-toggle-btn{position:fixed;bottom:16px;right:50%;transform:translateX(50%);z-index:9999;background:#1976d2;color:#fff;border:none;padding:8px 14px;border-radius:20px;cursor:pointer}
.tooltip-box{position:fixed;left:80%;top:10%;transform:translate(0%,12px);background:rgba(255,255,255,0.98);color:#111;padding:14px 18px;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,0.35);font-family:Arial,sans-serif;font-size:15px;max-width:520px;text-align:left;z-index:999999;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .35s ease}
.tooltip-box.visible{opacity:1;transform:translate(-50%,0)}
@keyframes pulseGlow{0%,100%{fill:var(--highlight);filter:drop-shadow(0 0 4px rgba(255,255,0,0.8));}50%{fill:#fff176;filter:drop-shadow(0 0 8px rgba(255,255,0,1));}}
.node text.highlighted{font-weight:bold;animation:pulseGlow 1.5s infinite}
.node circle.selected{stroke:var(--highlight);stroke-width:4px;filter:drop-shadow(0 0 6px rgba(255,255,0,0.8))}
.link{fill:none;stroke:#8fc0ff;stroke-width:1.2px;opacity:0.9}
.passion-footer{position:fixed;bottom:0;left:0;width:100%;background:transparent;color:rgba(200,200,200,0.9);font-family:Arial,sans-serif;font-size:12px;text-align:center;padding:6px 3px;z-index:10000;user-select:none}
.passion-footer a{color:rgba(200,200,200,0.9);text-decoration:none;margin:0 6px;transition:color .3s}
.passion-footer a:hover{color:#fff}
#disclaimer-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.6);backdrop-filter:blur(3px);justify-content:center;align-items:center;z-index:999999}
#disclaimer-modal.active{display:flex}
#disclaimer-modal .modal-content{background:#fff;border-radius:10px;padding:18px;max-width:420px;box-shadow:0 4px 12px rgba(0,0,0,0.3);text-align:left;font-size:13px;color:#333;line-height:1.5}
#close-disclaimer{display:block;margin-top:12px;background:#1976d2;color:#fff;border:none;border-radius:6px;padding:6px 12px;cursor:pointer;font-size:12px}
/* responsive tweaks */
@media (max-width:720px){ .tooltip-box{left:50%;top:8%;max-width:320px} #sheet-selector{width:90%;left:50%} }
