:root{--registry-green: #2D5016;--registry-red: #8B3A3A;--sepia-dark: #3E3528;--sepia-light: #8B7355;--sepia-pale: #C8B8A8;--brass: #D4AF37;--paper-bg: #F5F1ED;--ink: #2C2A29}*{box-sizing:border-box}body{font-family:Spectral,Georgia,serif;background:linear-gradient(135deg,var(--paper-bg) 0%,#E8E3DD 100%);color:var(--ink);margin:0;padding:0}.family-tree{max-width:1400px;margin:0 auto;padding:20px;min-height:100vh}.header{text-align:center;margin-bottom:40px;border-bottom:3px double var(--registry-green);padding-bottom:20px}.header h1{font-family:Libre Caslon Display,serif;font-size:2.5em;margin:0 0 10px;color:var(--registry-green);text-shadow:1px 1px 2px rgba(255,255,255,.8)}.header p{font-size:.95em;color:var(--sepia-light);margin:0;font-style:italic}.toolbar{display:flex;flex-direction:column;gap:15px;margin-bottom:25px;padding:15px;background:#fff;border:2px solid var(--registry-green);border-radius:8px}.search-container{position:relative;flex:1}.search-input{width:100%;padding:12px 16px;font-size:1em;border:2px solid var(--registry-green);border-radius:4px;background:#fff;color:var(--ink);font-family:Spectral,serif;transition:all .3s ease;box-shadow:0 2px 8px #2d50161a}.search-input:focus{outline:none;border-color:var(--brass);box-shadow:0 0 0 3px #d4af371a}.search-results{position:absolute;top:100%;left:0;right:0;background:#fff;border:2px solid var(--registry-green);border-top:none;border-radius:0 0 4px 4px;max-height:300px;overflow-y:auto;z-index:1000;box-shadow:0 4px 12px #2d501626}.search-result-item{padding:10px 16px;cursor:pointer;border-bottom:1px solid var(--paper-bg);transition:background .2s}.search-result-item:hover{background:var(--paper-bg);color:var(--registry-green);font-weight:500}.search-result-item:last-child{border-bottom:none}.search-result-item small{color:var(--sepia-light);font-style:italic;display:block;font-size:.85em}.error,.loading{text-align:center;padding:15px;margin:20px 0;border-radius:4px;font-weight:500}.error{background:#ffe6e6;color:var(--registry-red);border:1px solid var(--registry-red)}.loading{background:var(--paper-bg);color:var(--registry-green);border:1px solid var(--registry-green)}.tree-container{width:100%;height:600px;background:#fff;border:2px solid var(--registry-green);border-radius:8px;overflow:hidden;box-shadow:0 4px 12px #2d50161a;margin-bottom:30px}.tree-svg{width:100%;height:100%}.node{cursor:grab}.node:active{cursor:grabbing}.node circle{transition:r .2s,stroke-width .2s}.node circle:hover{filter:drop-shadow(0 0 6px rgba(212,175,55,.6))}.node-label{pointer-events:none;font-family:IBM Plex Mono,monospace;-webkit-user-select:none;user-select:none}.link{stroke-linecap:round;opacity:.6;transition:opacity .2s}.link:hover{opacity:1;stroke-width:3!important}.tooltip{position:absolute;padding:8px 12px;background:#2d5016f2;color:#fff;border-radius:4px;font-size:.85em;pointer-events:none;z-index:10000;box-shadow:0 2px 8px #0000004d;max-width:250px}.tooltip strong{display:block;margin-bottom:4px;border-bottom:1px solid rgba(212,175,55,.5);padding-bottom:4px}.person-info{background:#fff;border:2px solid var(--registry-green);border-radius:8px;padding:25px;text-align:center;box-shadow:0 2px 8px #2d50161a;border-left:5px solid var(--brass)}.person-info h2{font-family:Libre Caslon Display,serif;font-size:1.8em;margin:0 0 15px;color:var(--registry-green)}.person-info p{margin:8px 0;font-size:.95em;color:var(--sepia-light);line-height:1.6}.view-controls{display:flex;gap:8px;justify-content:center}.btn,.btn-small{padding:8px 16px;border:2px solid var(--registry-green);background:#fff;color:var(--registry-green);border-radius:4px;cursor:pointer;font-family:Spectral,serif;font-size:.95em;font-weight:500;transition:all .3s ease}.btn:hover{background:var(--registry-green);color:#fff;box-shadow:0 2px 8px #2d501633}.btn.active{background:var(--registry-green);color:#fff;box-shadow:0 2px 8px #2d50164d}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-small{padding:6px 12px;font-size:.85em}.breadcrumb-controls select{padding:6px 10px;border:2px solid var(--registry-green);background:#fff;color:var(--registry-green);border-radius:4px;cursor:pointer;font-family:Spectral,serif;font-size:.85em;margin:0 4px;transition:all .3s ease}.breadcrumb-controls select:hover{background:var(--registry-green);color:#fff}.breadcrumb{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(to right,var(--paper-bg),white);border:2px solid var(--brass);border-radius:8px;padding:12px 16px;margin-bottom:20px}.person-name{font-family:Libre Caslon Display,serif;font-size:1.2em;font-weight:600;color:var(--registry-green)}.breadcrumb-controls{display:flex;gap:8px}.list-view{background:#fff;border:2px solid var(--registry-green);border-radius:8px;padding:25px;min-height:400px;box-shadow:0 4px 12px #2d50161a}.person-detail h3{font-family:Libre Caslon Display,serif;font-size:1.8em;margin:0 0 15px;color:var(--registry-green);border-bottom:2px solid var(--brass);padding-bottom:10px}.detail-info{background:var(--paper-bg);border-left:5px solid var(--registry-green);padding:12px;margin-bottom:20px;border-radius:4px}.detail-info p{margin:6px 0;font-size:.95em}.relations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.relation-section{background:var(--paper-bg);padding:15px;border-radius:8px;border:2px solid var(--registry-green)}.relation-section h4{margin:0 0 10px;color:var(--registry-green);font-size:1.05em}.relation-section ul{list-style:none;padding:0;margin:0}.relation-section li{padding:6px 0;border-bottom:1px solid rgba(45,80,22,.1)}.relation-section li:last-child{border-bottom:none}.link-btn{background:none;border:none;color:var(--registry-green);cursor:pointer;font-family:Spectral,serif;font-size:.95em;font-weight:500;text-decoration:underline;padding:0;transition:color .3s ease}.link-btn:hover{color:var(--brass)}.stats-panel{background:linear-gradient(135deg,var(--paper-bg),white);border:2px solid var(--brass);border-radius:8px;padding:20px;margin-top:20px;box-shadow:0 4px 12px #d4af371a}.stats-panel h3{font-family:Libre Caslon Display,serif;color:var(--registry-green);margin:0 0 15px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.stat-card{background:#fff;border:2px solid var(--registry-green);border-radius:6px;padding:15px;text-align:center;transition:all .3s ease}.stat-card:hover{background:var(--paper-bg);box-shadow:0 2px 8px #2d50161a}.stat-value{display:block;font-family:IBM Plex Mono,monospace;font-size:1.6em;font-weight:700;color:var(--brass);margin-bottom:5px}.stat-label{display:block;font-size:.8em;color:var(--sepia-light)}@media (max-width: 768px){.family-tree{padding:10px}.header h1{font-size:1.8em}.tree-container{height:400px}}.site-link{color:var(--registry-red);font-size:.9em;text-decoration:none;border-bottom:1px dotted var(--registry-red)}.site-link:hover{color:var(--brass);border-bottom-color:var(--brass)}.site-link-row{margin:-8px 0 14px}.bandeau-video{display:block;width:100%;aspect-ratio:16 / 9;max-height:320px;object-fit:cover;border-radius:8px;margin-bottom:20px;background:var(--ink)}.intro-shespaout{display:block;width:100%;height:min(70vh,560px);border:0;border-radius:8px;margin-bottom:20px}
