:root{color:#23332e;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#21362e;--muted:#78867d;--forest:#193d34;--forest-dark:#12332c;--gold:#c49d6c;--paper:#fffefa;--cream:#f6f5ef;--line:#e7e8df;--serif:"Iowan Old Style", "Baskerville", "Palatino Linotype", Georgia, serif;background:#f6f5ef;font-family:Avenir Next,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #9dc9a9}a{color:inherit;text-decoration:none}img{max-width:100%}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.eyebrow,.section-overline{color:#a47f4d;letter-spacing:.17em;text-transform:uppercase;font-size:10px;font-weight:800;line-height:1.5}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);letter-spacing:-.045em;font-weight:500}em{color:#a67f52;font-style:italic;font-weight:400}.button{white-space:nowrap;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:10px;min-height:43px;padding:0 17px;font-size:12px;font-weight:700;line-height:1;transition:background .18s,transform .18s,border-color .18s,color .18s;display:inline-flex}.button:not(:disabled):hover{transform:translateY(-1px)}.button-primary{color:#fffefa;background:#234c3c;box-shadow:0 5px 13px #1a3c3020}.button-secondary{color:#2b493a;background:#fffefa;border-color:#d8dfd4}.button-secondary:not(:disabled):hover{background:#eef3e9;border-color:#abc3ae}.button-ghost{color:#5a6c60;background:0 0}.button-ghost:hover{background:#f2f4ee}.button-danger{color:#fff;background:#a9463a}.button-danger:not(:disabled):hover{background:#8e392f}.button-danger-outline{color:#ad4c3e;background:#fffdfa;border-color:#e4b5ad}.button-danger-outline:not(:disabled):hover{background:#fff3ef}.button-danger-text{color:#ac4d3e;background:0 0;padding-left:0}.icon-button,.mini-icon-button{color:inherit;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;display:inline-grid}.icon-button{width:34px;height:34px}.mini-icon-button{color:#8f9a90;width:28px;height:28px}.icon-button:hover,.mini-icon-button:hover{color:var(--ink);background:#eaf0e8}.text-link{color:#507057;white-space:nowrap;background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:11px;font-weight:800;display:inline-flex}.text-link:hover{color:#214c37;text-decoration:underline}.text-link.danger{color:#a95347}.required{color:#b05849}.app-shell{background:#f7f7f1;min-height:100vh;display:flex}.sidebar{z-index:50;color:#d8e4d9;background:#17392f;flex-direction:column;flex:none;width:257px;height:100vh;min-height:100vh;padding:26px 18px 18px;display:flex;position:sticky;top:0;box-shadow:8px 0 30px #2944370a}.sidebar:after{content:"";pointer-events:none;background:radial-gradient(circle at 2% 90%,#2e574666,#0000 65%);height:225px;position:absolute;inset:auto 0 0}.sidebar>*{z-index:1;position:relative}.sidebar-top{justify-content:space-between;align-items:center;padding:0 11px 34px;display:flex}.brand{color:#fff7e8;font-family:var(--serif);letter-spacing:-.075em;align-items:center;gap:10px;font-size:29px;line-height:1;display:inline-flex}.brand-mark{color:#e8c28b;background:#ffffff10;border:1px solid #ffffff20;border-radius:9px;flex:none;place-items:center;width:35px;height:35px;display:inline-grid}.brand-mark svg{width:29px;height:29px;display:block}.brand-type small,.auth-brand small{color:#d8c29b;letter-spacing:.24em;margin-top:3px;font-family:DM Sans,sans-serif;font-size:7px;font-weight:700;display:block}.sidebar-label{color:#84a496;letter-spacing:.17em;padding:0 11px;font-size:9px;font-weight:800;line-height:1.5;display:block}.sidebar-switcher-wrap{margin-bottom:36px;position:relative}.tree-switcher{color:#e9eee5;text-align:left;background:#ffffff0c;border:1px solid #ffffff25;border-radius:10px;align-items:center;gap:10px;width:100%;margin-top:10px;padding:11px;display:flex}.tree-switcher:hover{background:#ffffff15}.tree-switcher>span:nth-child(2){flex:1;min-width:0}.tree-switcher strong{color:#f7f4e9;white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.tree-switcher small{color:#a8c1ad;text-transform:capitalize;margin-top:3px;font-size:10px;display:block}.tree-switcher-icon{color:#e7c594;background:#d1bc8a20;border-radius:8px;flex:none;place-items:center;width:33px;height:33px;display:grid}.tree-switcher>svg{transition:transform .2s}.tree-switcher>svg.rotate{transform:rotate(180deg)}.tree-switch-menu{z-index:90;background:#fdfdf8;border:1px solid #e3e8db;border-radius:10px;padding:5px;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 15px 35px #061b1535}.tree-switch-menu button{color:#294437;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:9px;width:100%;min-height:35px;padding:6px 8px;font-size:11px;display:flex}.tree-switch-menu button span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tree-switch-menu button:hover,.tree-switch-menu button.current{background:#e8efe7}.tree-switch-menu .tree-switch-create{border-top:1px solid #e4e9e2;border-radius:0;margin-top:4px;padding-top:9px;font-weight:700}.sidebar-nav{flex-direction:column;gap:4px;display:flex}.sidebar-nav .sidebar-label{margin-bottom:7px}.sidebar-label-spaced{margin-top:30px}.sidebar-nav-item{color:#b6cabb;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;width:100%;min-height:42px;padding:0 12px;font-size:12px;font-weight:600;display:flex;position:relative}.sidebar-nav-item:hover{color:#f9f8ee;background:#ffffff0c}.sidebar-nav-item.active{color:#fffdf3;background:#edf1dc1f}.sidebar-nav-item.active:before{content:"";background:#d3ae7c;border-radius:4px;width:3px;position:absolute;top:8px;bottom:8px;left:0}.sidebar-nav-item.active svg{color:#e6c28f}.sidebar-nav-item span:nth-child(2){flex:1}.nav-active-dot{background:#e3be8d;border-radius:50%;width:5px;height:5px}.sidebar-bottom{margin-top:auto}.sidebar-quote{background:#ffffff0b;border:1px solid #ffffff17;border-radius:10px;margin-bottom:15px;padding:16px 15px 17px;position:relative}.sidebar-quote>span{color:#d9b787;height:17px;font-family:Georgia,serif;font-size:35px;line-height:1;display:block}.sidebar-quote p{color:#d2e0d1;max-width:170px;font-family:var(--serif);margin:5px 0 7px;font-size:14px;line-height:1.35}.sidebar-quote svg{color:#dbba8d}.sidebar-user{border-top:1px solid #ffffff1e;align-items:center;gap:9px;padding:14px 2px 0;display:flex}.sidebar-user-avatar,.topbar-avatar,.member-avatar{color:#17382e;width:32px;height:32px;font-family:var(--serif);background:#bfa57d;border-radius:50%;flex:none;place-items:center;font-size:16px;font-weight:600;display:inline-grid}.sidebar-user>span:nth-child(2){flex:1;min-width:0}.sidebar-user strong,.sidebar-user small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sidebar-user strong{color:#f2f4e9;font-size:11px}.sidebar-user small{color:#a3bdab;margin-top:2px;font-size:9px}.sidebar-user .icon-button{color:#a9c2ae}.sidebar-user .icon-button:hover{color:#fff;background:#ffffff12}.app-main{flex:1;min-width:0}.topbar{background:#fffefa;border-bottom:1px solid #e7e8df;justify-content:space-between;align-items:center;height:68px;padding:0 42px;display:flex}.topbar-left,.topbar-right{align-items:center;gap:22px;display:flex}.topbar-location{color:#617368;letter-spacing:.11em;text-transform:uppercase;font-size:10px;font-weight:800}.topbar-location span{color:#bdcbbd;padding:0 10px}.topbar-right{gap:18px}.private-badge{color:#829d89;letter-spacing:.12em;align-items:center;gap:5px;font-size:9px;font-weight:800;display:inline-flex}.topbar-share{color:#42694c;background:0 0;border:0;align-items:center;gap:7px;padding:7px 0;font-size:11px;font-weight:700;display:inline-flex}.topbar-share:hover{color:#193d34}.topbar-avatar{color:#44644c;background:#e3eacb;width:29px;height:29px;font-size:14px}.mobile-menu,.mobile-close,.mobile-scrim{display:none}.explore-page,.content-page{max-width:1640px;margin:0 auto;padding:43px 43px 54px}.explore-heading,.page-heading-row{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.explore-heading h1,.page-heading-row h1{margin:10px 0 7px;font-size:clamp(35px,3.4vw,50px);line-height:1.07}.explore-heading p,.page-heading-row p{color:#75847b;margin-bottom:0;font-size:12px;line-height:1.6}.explore-heading .button,.page-heading-row .button{margin-bottom:4px}.explore-stats{background:#fffefa;border:1px solid #e8eadf;border-radius:10px;align-items:center;gap:0;margin:29px 0 22px;padding:13px 19px;display:flex;box-shadow:0 8px 25px #1e372908}.explore-stats>div:not(.explore-stats-note){border-right:1px solid #e9eae2;align-items:center;gap:9px;min-width:145px;margin-right:25px;padding:0 25px 0 5px;display:flex}.explore-stats>div>span{color:#4f7156;background:#ecf2e9;border-radius:8px;place-items:center;width:31px;height:31px;display:inline-grid}.explore-stats strong{color:#263f31;font-family:var(--serif);font-size:23px;font-weight:600}.explore-stats small{color:#87948a;font-size:10px}.explore-stats-note{color:#9f855c;font-family:var(--serif);white-space:nowrap;align-items:center;gap:8px;margin-left:auto;font-size:12px;font-style:italic;display:flex}.explore-toolbar,.directory-toolbar,.timeline-toolbar{align-items:center;gap:10px;margin-bottom:12px;display:flex}.search-field{color:#8aa08e;background:#fffefa;border:1px solid #e1e6db;border-radius:8px;align-items:center;gap:8px;width:min(315px,100%);min-height:40px;padding:0 12px;display:flex}.search-field:focus-within{border-color:#85a88d;box-shadow:0 0 0 3px #bad0ba33}.search-field input{color:#2d4636;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:11px}.search-field input::placeholder{color:#a4aea5}.explore-toolbar>select,.directory-toolbar>select{color:#496150;background:#fffefa;border:1px solid #e1e6db;border-radius:8px;height:40px;padding:0 29px 0 11px;font-size:11px;font-weight:600}.toolbar-spacer{flex:1}.view-label,.result-count{color:#9ba59b;letter-spacing:.13em;white-space:nowrap;font-size:9px;font-weight:800}.segmented-control{background:#edf0e9;border:1px solid #e2e8de;border-radius:8px;align-items:center;gap:2px;padding:3px;display:inline-flex}.segmented-control button{color:#7c8c7e;white-space:nowrap;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:5px;min-height:30px;padding:0 12px;font-size:10px;font-weight:700;display:inline-flex}.segmented-control button.active{color:#304d37;background:#fffefa;box-shadow:0 1px 5px #233a2215}.explorer-workspace{background:#fffefa;border:1px solid #dfe6db;border-radius:13px;height:min(62vh,620px);min-height:430px;display:flex;overflow:hidden;box-shadow:0 13px 35px #213c2910}.explorer-main{flex:1;min-width:0;position:relative}.tree-viewport{color:#dce8da;background:radial-gradient(circle at 50% 38%,#1b4a3e,#102e29 65%,#0d2925);width:100%;height:100%;position:relative;overflow:hidden}.tree-viewport canvas{display:block}.scene-topline{z-index:3;pointer-events:none;color:#d8e2cf;letter-spacing:.16em;align-items:center;gap:7px;font-size:9px;font-weight:800;display:flex;position:absolute;top:22px;left:25px;right:24px}.scene-live-dot{background:#c8a970;border-radius:50%;width:6px;height:6px;box-shadow:0 0 9px #e1bb78}.scene-coordinate{color:#91b2a0;margin-left:auto;font-weight:600}.scene-hint{z-index:3;pointer-events:none;color:#b4cabc;align-items:center;gap:6px;font-size:9px;display:flex;position:absolute;bottom:22px;left:24px}.scene-actions{z-index:3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#eff7ec20;border:1px solid #ffffff2d;border-radius:8px;align-items:center;gap:3px;padding:4px;display:flex;position:absolute;bottom:17px;right:19px}.scene-actions button{color:#e2efdc;background:0 0;border:0;border-radius:5px;place-items:center;width:29px;height:29px;display:inline-grid}.scene-actions button:hover{background:#ffffff28}.scene-actions-divider{background:#ffffff30;width:1px;height:18px;margin:0 2px}.scene-person-label{color:#294133;text-align:left;background:#fffdf7ed;border:1px solid #cbdccca6;border-radius:7px;align-items:center;gap:6px;min-width:110px;max-width:150px;padding:5px 8px 5px 5px;transition:transform .15s,box-shadow .15s;display:flex;transform:translateZ(0);box-shadow:0 8px 18px #05281d50}.scene-person-label:hover,.scene-person-label.is-selected{border-color:#e2be88;transform:scale(1.07);box-shadow:0 9px 22px #061c17a6}.scene-person-avatar{color:#385c47;background:#dce5d6;border-radius:50%;flex:none;place-items:center;width:25px;height:25px;font-size:9px;font-weight:800;display:grid;overflow:hidden}.scene-person-avatar img{object-fit:cover;width:100%;height:100%}.scene-person-copy{min-width:0;display:block}.scene-person-copy strong,.scene-person-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.scene-person-copy strong{font-size:9px}.scene-person-copy small{color:#718477;margin-top:1px;font-size:7px}.scene-unavailable{color:#e3eadd;text-align:center;background:#15392f;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:30px;display:flex}.scene-unavailable h3{color:#fffdf3;font-family:var(--serif);margin:13px 0 6px;font-size:23px}.scene-unavailable p{color:#adc7b1;max-width:350px;font-size:12px;line-height:1.6}.explore-footnote{color:#9aa79b;font-family:var(--serif);align-items:center;gap:8px;margin:13px 0 0;font-size:11px;font-style:italic;display:flex}.explore-footnote span{background:#a9baab;width:19px;height:1px;display:block}.person-panel{background:#fffefa;border-left:1px solid #dce6d9;flex:none;width:336px;min-width:0}.person-panel-scroll{scrollbar-width:thin;scrollbar-color:#bdcbbd transparent;height:100%;overflow-y:auto}.person-panel-hero{color:#ecf1e8;background:radial-gradient(circle at 85% 12%,#55745b70,#0000 46%),#1d4837;padding:26px 23px 19px;position:relative}.person-panel-hero .eyebrow{color:#d8c390;font-size:9px}.person-close{color:#e2ece1;position:absolute;top:12px;right:12px}.person-close:hover{color:#fff;background:#ffffff20}.portrait-wrap{width:fit-content;margin:20px 0 13px;position:relative}.person-portrait{color:#2b4939;width:63px;height:63px;font-family:var(--serif);background:#e1e8ce;border:3px solid #d8be89;border-radius:50%;place-items:center;font-size:23px;display:grid;overflow:hidden}.person-portrait img{object-fit:cover;width:100%;height:100%}.portrait-edit{color:#2d4935;background:#e2c18e;border:2px solid #1d4837;border-radius:50%;place-items:center;width:25px;height:25px;display:grid;position:absolute;bottom:-4px;right:-7px}.person-panel-hero h2{color:#fffef5;margin:0;font-size:28px;line-height:1.1}.person-nickname{color:#d9c397;font-family:var(--serif);margin:5px 0 0;font-size:13px;font-style:italic}.person-years{color:#b7d0b9;margin:7px 0 0;font-size:11px}.person-hero-rule{background:#fff2;height:1px;margin:17px 0 13px}.person-quick-facts{flex-wrap:wrap;gap:7px 13px;display:flex}.person-quick-facts span{color:#cadbca;align-items:center;gap:5px;font-size:10px;display:inline-flex}.person-quick-facts svg{color:#d2b886}.person-hero-actions{gap:7px;margin-top:16px;display:flex}.person-hero-actions button{color:#f5f2de;background:#ffffff15;border:1px solid #ffffff3a;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:6px;min-height:31px;padding:0 5px;font-size:10px;font-weight:700;display:flex}.person-hero-actions button:hover{background:#ffffff2a}.person-panel-content{padding:8px 22px 27px}.profile-section{border-bottom:1px solid #ebeee7;padding:21px 0}.profile-section:last-of-type{border-bottom:0}.person-bio{color:#50665a;font-family:var(--serif);white-space:pre-wrap;margin:9px 0 0;font-size:14px;line-height:1.55}.detail-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px;margin-top:13px;display:grid}.detail-facts span,.detail-facts strong{display:block}.detail-facts span{color:#91a092;font-size:9px}.detail-facts strong{color:#365141;margin-top:3px;font-size:10px;font-weight:700;line-height:1.4}.section-heading{justify-content:space-between;align-items:end;margin-bottom:12px;display:flex}.section-heading h3{font-family:var(--serif);margin:3px 0 0;font-size:20px}.relative-group+.relative-group{margin-top:12px}.relative-group-heading{color:#5a715f;align-items:center;gap:6px;font-size:10px;font-weight:800;display:flex}.relative-group-heading strong{color:#6c886d;background:#ecf1e9;border-radius:5px;place-items:center;min-width:16px;height:16px;font-size:9px;display:grid}.relative-row{background:#fffefa;border:1px solid #ecf0e9;border-radius:6px;align-items:center;min-height:41px;margin-top:5px;display:flex}.relative-person{text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:7px;min-width:0;padding:5px 7px;display:flex}.relative-person>span:nth-child(2){flex:1;min-width:0}.relative-person strong,.relative-person small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.relative-person strong{color:#385442;font-size:10px}.relative-person small{color:#92a194;margin-top:2px;font-size:8px}.relative-person>svg{color:#a5b1a7}.relative-avatar{color:#42624c;background:#e5ecda;border-radius:50%;flex:none;place-items:center;width:27px;height:27px;font-size:9px;font-weight:700;display:grid}.relative-empty,.section-empty{color:#9aa69b;margin:8px 0 0;font-size:10px;line-height:1.5}.person-event-list{padding-left:3px;position:relative}.person-event-list:before{content:"";border-left:1px solid #e6eae0;position:absolute;top:7px;bottom:7px;left:13px}.person-event{text-align:left;background:0 0;border:0;align-items:center;gap:8px;width:100%;padding:8px 0;display:flex;position:relative}.person-event-icon{z-index:1;color:#678769;background:#e8eee1;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid}.person-event>span:nth-child(2){flex:1;min-width:0}.person-event strong,.person-event small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.person-event strong{color:#395742;font-size:10px}.person-event small{color:#98a599;margin-top:2px;font-size:8px}.person-event>svg{color:#9fb4a1}.media-gallery{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.media-tile{background:#e8eee7;border-radius:5px;height:76px;position:relative;overflow:hidden}.media-tile>a{width:100%;height:100%;display:block}.media-tile img{object-fit:cover;width:100%;height:100%}.media-file-icon{color:#68856d;place-items:center;height:100%;display:grid}.media-tile-actions{opacity:0;gap:2px;transition:opacity .18s;display:flex;position:absolute;top:3px;right:3px}.media-tile:hover .media-tile-actions,.media-tile:focus-within .media-tile-actions{opacity:1}.media-tile-actions button{color:#314b39;background:#fffef9e8;border:0;border-radius:4px;place-items:center;width:23px;height:23px;display:grid}.gallery-empty{color:#95a69a;border:1px dashed #d5e0d3;border-radius:7px;align-items:center;gap:10px;padding:15px 11px;font-size:9px;display:flex}.gallery-empty>svg{flex:none}.gallery-empty span{flex:1}.gallery-empty button{color:#4e7655;background:0 0;border:0;align-items:center;gap:3px;font-size:9px;font-weight:700;display:inline-flex}.delete-person-link{color:#af6255;background:0 0;border:0;align-items:center;gap:6px;margin-top:6px;padding:5px 0;font-size:10px;display:flex}.explore-list{background:#fffefa;height:100%;padding:30px;overflow:auto}.explore-list-heading h2{margin:6px 0 3px;font-size:28px}.explore-list-heading p{color:#87978b;font-size:11px}.generation-group{margin-top:25px}.generation-heading{border-bottom:1px solid #e5ebe3;align-items:center;gap:12px;padding-bottom:9px;display:flex}.generation-heading>span{color:#b99b6e;font-family:var(--serif);font-size:24px}.generation-heading h3{font-family:var(--serif);margin:0;font-size:20px;font-weight:500}.generation-heading small{color:#94a293;margin-left:auto;font-size:10px}.generation-people{grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:8px;padding-top:12px;display:grid}.generation-person{text-align:left;background:#fdfefa;border:1px solid #e6ebe4;border-radius:7px;align-items:center;gap:9px;min-width:0;padding:8px;display:flex}.generation-person:hover{background:#f5f9f2;border-color:#a9c5ab}.generation-person>span:nth-child(2){flex:1;min-width:0}.generation-person strong,.generation-person small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.generation-person strong{color:#35513e;font-size:11px}.generation-person small{color:#8d9e8e;font-size:9px}.generation-person>svg{color:#7e9b80}.empty-tree{text-align:center;background:radial-gradient(circle at 50% 44%,#f6f3e8,#fffefa 55%);flex-direction:column;justify-content:center;align-items:center;height:100%;padding:35px;display:flex;position:relative;overflow:hidden}.empty-tree-art{width:230px;height:176px;margin-bottom:15px;position:relative}.empty-tree-orbit{border:1px solid #dce8d6;border-radius:50%;position:absolute}.empty-tree-orbit.a{width:170px;height:170px;top:0;left:30px}.empty-tree-orbit.b{width:225px;height:103px;top:35px;left:2px;transform:rotate(-24deg)}.empty-tree-node{z-index:2;background:#b4cbaa;border:5px solid #f3eee1;border-radius:50%;width:35px;height:35px;display:block;position:absolute;box-shadow:0 3px 9px #6c9b6e55}.empty-tree-node.one{background:#c8a777;top:7px;left:99px}.empty-tree-node.two{top:76px;left:40px}.empty-tree-node.three{background:#8fae9c;top:80px;left:153px}.empty-tree-node.four{background:#d3bd93;top:139px;left:102px}.empty-tree-link{z-index:1;transform-origin:0;background:#9eba9e;height:2px;display:block;position:absolute}.empty-tree-link.l1{width:87px;top:42px;left:114px;transform:rotate(140deg)}.empty-tree-link.l2{width:86px;top:43px;left:118px;transform:rotate(41deg)}.empty-tree-link.l3{width:84px;top:104px;left:69px;transform:rotate(27deg)}.empty-tree h2{max-width:445px;margin:9px 0;font-size:30px;line-height:1.16}.empty-tree p{color:#7d8e7f;max-width:390px;margin-bottom:20px;font-size:11px;line-height:1.6}.empty-panel{color:#90a393;text-align:center;background:#fffefa;border:1px dashed #d9e3d5;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;min-height:260px;padding:34px;display:flex}.empty-panel h3{font-family:var(--serif);margin:12px 0 4px;font-size:23px}.empty-panel p{color:#91a092;max-width:370px;font-size:11px;line-height:1.6}.empty-panel .button{margin-top:5px}.explore-no-results{border:0;height:100%}.content-page{padding-top:48px}.directory-toolbar,.timeline-toolbar{margin:31px 0 17px}.directory-toolbar .search-field{width:min(410px,100%)}.directory-toolbar .result-count,.timeline-toolbar .result-count{margin-left:auto}.person-card-grid{grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:14px;display:grid}.directory-card{text-align:left;background:#fffefa;border:1px solid #e1e7dd;border-radius:10px;flex-direction:column;align-items:stretch;min-height:218px;padding:18px 18px 0;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;box-shadow:0 5px 20px #223d2908}.directory-card:hover{border-color:#b5cbb5;transform:translateY(-3px);box-shadow:0 14px 26px #24432d14}.directory-card-top{justify-content:space-between;align-items:flex-start;display:flex}.avatar{color:#487054;width:34px;height:34px;font-family:var(--serif);background:#e3ebdf;border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:600;display:inline-grid;overflow:hidden}.avatar-large{width:49px;height:49px;font-size:18px}.avatar img{object-fit:cover;width:100%;height:100%}.status-pill{color:#8c897f;background:#f0eeea;border-radius:15px;padding:5px 8px;font-size:9px;font-weight:700;display:inline-flex}.status-pill.is-living{color:#5a815d;background:#e9f0e4}.directory-card h3{font-family:var(--serif);margin:13px 0 2px;font-size:19px;font-weight:500}.directory-lifespan{color:#8e9a8d;margin:0 0 14px;font-size:10px}.directory-card-meta{flex-direction:column;gap:5px;margin-top:auto;display:flex}.directory-card-meta span{color:#758979;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;font-size:10px;display:flex;overflow:hidden}.directory-card-meta svg{color:#8fae90;flex:none}.directory-card-bottom{color:#5b795e;border-top:1px solid #e9ede6;justify-content:space-between;align-items:center;margin-top:17px;padding:10px 0;font-size:10px;font-weight:700;display:flex}.directory-page>.empty-panel{margin-top:20px}.timeline-stream{max-width:790px;padding-left:8px}.timeline-year{color:#a3855c;font-family:var(--serif);align-items:center;gap:11px;margin:26px 0 11px;font-size:26px;display:flex}.timeline-year:first-child{margin-top:5px}.timeline-year:after{content:"";background:#e0e5dc;flex:1;height:1px}.timeline-entry{gap:15px;padding:0 0 20px 9px;display:flex;position:relative}.timeline-entry:before{content:"";background:#dbe5db;width:1px;position:absolute;top:22px;bottom:-4px;left:27px}.timeline-entry:last-child:before{display:none}.timeline-symbol{z-index:1;color:#54785e;background:#e9f0e6;border:1px solid #dbe8d6;border-radius:50%;flex:none;place-items:center;width:37px;height:37px;display:grid;position:relative}.timeline-symbol.birth{color:#b17f56;background:#f5eada;border-color:#ecd7b8}.timeline-symbol.death{color:#728993;background:#e8edef;border-color:#d6e0e2}.timeline-entry-card{background:#fffefa;border:1px solid #e2e9df;border-radius:9px;flex:1;padding:18px 21px;box-shadow:0 5px 17px #213d2908}.timeline-entry-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.moment-type{color:#9c7b51;letter-spacing:.13em;text-transform:uppercase;font-size:9px;font-weight:800}.timeline-entry-top time{color:#9aa69b;font-size:10px}.timeline-entry-card h3{font-family:var(--serif);margin:8px 0 12px;font-size:23px;font-weight:500}.timeline-person-link{color:#4c6b54;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:10px;font-weight:700;display:inline-flex}.timeline-person-link .avatar{width:26px;height:26px;font-size:9px}.timeline-person-link:hover{text-decoration:underline}.timeline-unlinked{color:#9eaa9e;font-size:10px;font-style:italic;display:inline-block}.timeline-entry-card>p{color:#687d6d;white-space:pre-wrap;max-width:600px;margin:11px 0 0;font-size:11px;line-height:1.6}.timeline-place{color:#889b8b;align-items:center;gap:4px;margin-top:11px;font-size:10px;display:flex}.timeline-edit-link{color:#5d7c61;background:0 0;border:0;align-items:center;gap:5px;margin-top:13px;padding:0;font-size:10px;font-weight:700;display:inline-flex}.timeline-toolbar .search-field{width:min(410px,100%)}.insight-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:32px 0 19px;display:grid}.insight-metric{background:#fffefa;border:1px solid #e2e9df;border-radius:10px;min-height:125px;padding:16px 18px}.insight-metric>span{color:#668665;background:#edf2e8;border-radius:7px;place-items:center;width:28px;height:28px;display:grid}.insight-metric strong{color:#304a37;font-family:var(--serif);margin-top:9px;font-size:27px;line-height:1;display:block}.insight-metric small{color:#91a092;margin-top:5px;font-size:10px;display:block}.insights-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.insight-card{background:#fffefa;border:1px solid #e2e9df;border-radius:10px;min-height:262px;padding:24px}.insight-card h2{margin:6px 0 23px;font-size:25px}.bar-list{flex-direction:column;gap:12px;display:flex}.bar-row{color:#536b56;grid-template-columns:104px 1fr 28px;align-items:center;gap:13px;font-size:10px;display:grid}.bar-row>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bar-row strong{text-align:right;font-size:10px}.bar-track{background:#eff2eb;border-radius:10px;height:7px;overflow:hidden}.bar-track div{background:linear-gradient(90deg,#8fb195,#c4aa7a);border-radius:10px;height:100%}.insight-card-dark{color:#e9f0e5;background:radial-gradient(circle at 95% 7%,#436d52,#0000 50%),#1b4635;border-color:#173e32}.insight-card-dark .section-overline{color:#dcc092}.insight-card-dark h2{color:#fff8e9;max-width:350px;margin-bottom:10px;font-size:32px;line-height:1.14}.insight-card-dark p{color:#b9d1bb;max-width:400px;font-size:11px;line-height:1.6}.insight-progress{background:#ffffff2e;border-radius:7px;height:7px;margin:25px 0 8px;overflow:hidden}.insight-progress div{background:#d6b787;border-radius:7px;height:100%}.insight-card-dark small{color:#a9c5ae;font-size:9px}.place-list>div{color:#5b755f;border-top:1px solid #eaf0e7;justify-content:space-between;align-items:center;gap:15px;padding:11px 0;font-size:11px;display:flex}.place-list>div>span{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:7px;display:inline-flex;overflow:hidden}.place-list>div svg{color:#8eaa8e;flex:none}.place-list strong{color:#456747}.recent-people{flex-direction:column;display:flex}.recent-people button{text-align:left;background:0 0;border:0;border-top:1px solid #eaf0e7;align-items:center;gap:9px;width:100%;padding:8px 0;display:flex}.recent-people button>span:nth-child(2){flex:1;min-width:0}.recent-people strong,.recent-people small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.recent-people strong{color:#476449;font-size:10px}.recent-people small{color:#9aaa9b;font-size:9px}.recent-people button>svg{color:#8fac90}.members-grid{grid-template-columns:minmax(0,1.25fr) minmax(310px,.9fr);gap:15px;margin-top:32px;display:grid}.member-card,.activity-card,.setting-card{background:#fffefa;border:1px solid #e2e9df;border-radius:10px;box-shadow:0 5px 22px #29402b07}.member-card{padding:25px}.member-card h2{margin:5px 0 18px;font-size:26px}.member-card h2 span{color:#9eaf9b;vertical-align:middle;margin-left:6px;font-family:DM Sans,sans-serif;font-size:11px}.member-list{flex-direction:column;display:flex}.member-row{border-top:1px solid #e9eee6;align-items:center;gap:9px;min-height:55px;padding:8px 0;display:flex}.member-avatar{color:#5d7e5e;background:#e6eddf;width:32px;height:32px;font-size:13px}.member-identity{flex:1;min-width:0}.member-identity strong,.member-identity small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.member-identity strong{color:#405c46;font-size:11px}.member-identity small{color:#93a295;margin-top:3px;font-size:9px}.member-identity em{color:#9aac9a;letter-spacing:0;font-family:DM Sans,sans-serif;font-size:9px}.member-row select{color:#516e55;background:#fcfdf9;border:1px solid #dce5d9;border-radius:5px;max-width:82px;height:29px;padding:0 5px;font-size:9px}.role-badge{color:#69886b;text-transform:capitalize;align-items:center;gap:4px;font-size:9px;font-weight:700;display:inline-flex}.invite-card>p{color:#829386;font-size:11px;line-height:1.5}.invite-form{grid-template-columns:1fr 1fr;gap:11px;margin:23px 0 15px;display:grid}.invite-form label,.dialog-body label,.auth-form-wrap form label{color:#56705b;font-size:10px;font-weight:800;display:block}.invite-form select{color:#405e47;background:#fffefa;border:1px solid #dbe4d7;border-radius:6px;width:100%;height:38px;margin-top:6px;padding:0 7px;font-size:10px;display:block}.created-invite{background:#f1f8ed;border:1px solid #bad8b7;border-radius:8px;margin-top:20px;padding:14px}.created-invite>div:first-child{color:#4b8350;align-items:center;gap:6px;font-size:11px;display:flex}.created-invite p{color:#69846b;margin:6px 0 9px;font-size:10px;line-height:1.5}.copy-field{background:#fff;border:1px solid #cadfc8;border-radius:5px;min-width:0;height:33px;display:flex}.copy-field input{color:#4d7250;background:0 0;border:0;outline:0;flex:1;min-width:0;padding:0 7px;font-size:9px}.copy-field button{color:#4f7b53;background:#f7fbf5;border:0;border-left:1px solid #cadfc8;align-items:center;gap:4px;padding:0 8px;font-size:9px;font-weight:700;display:inline-flex}.read-only-note{color:#819483;background:#f3f6ef;border-radius:6px;align-items:center;gap:8px;padding:15px;font-size:10px;line-height:1.5;display:flex}.outstanding-invites{margin-top:16px}.invite-list>div{border-top:1px solid #e9eee6;align-items:center;gap:9px;min-height:50px;display:flex}.invite-symbol{color:#758e77;background:#ebf1e7;border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.invite-list>div>span:nth-child(2){flex:1;min-width:0}.invite-list strong,.invite-list small{display:block}.invite-list strong{color:#446147;font-size:10px}.invite-list small{color:#9caa9d;margin-top:3px;font-size:9px}.privacy-note{color:#8b9d8d;align-items:center;gap:7px;margin:18px 0;font-size:10px;display:flex}.activity-card{margin-top:32px;padding:10px 25px}.activity-row{border-bottom:1px solid #eaf0e7;align-items:center;gap:12px;min-height:67px;padding:12px 0;display:flex}.activity-row:last-child{border-bottom:0}.activity-icon{color:#6e926f;background:#eaf1e6;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;display:grid}.activity-row>div{color:#667c69;font-size:11px;line-height:1.5}.activity-row strong{color:#385542}.activity-row small{color:#9eaa9d;font-size:9px;display:block}.settings-page>.setting-card:first-of-type{margin-top:32px}.setting-card{align-items:center;gap:19px;padding:24px;display:flex}.setting-card>div:nth-child(2){flex:1}.setting-card-icon{color:#5c805f;background:#edf3e8;border-radius:8px;flex:none;place-items:center;width:38px;height:38px;display:grid}.setting-card h2{margin:5px 0;font-size:24px}.setting-card p{color:#829385;margin:0;font-size:11px;line-height:1.55}.settings-meta{color:#90a192;text-transform:capitalize;margin-top:13px;font-size:10px}.settings-meta strong{color:#527755}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:16px;display:grid}.setting-card-column{flex-direction:column;align-items:flex-start;gap:0;min-height:236px;display:flex}.setting-card-column .setting-card-icon{margin-bottom:16px}.setting-card-column h2{margin:5px 0 7px}.setting-card-column p{margin-bottom:19px}.setting-card-column>.button,.setting-actions{margin-top:auto}.setting-actions{flex-wrap:wrap;gap:8px;display:flex}.setting-privacy{min-height:auto;margin-top:16px}.setting-privacy .setting-card-icon{margin-bottom:14px}.setting-account{justify-content:space-between;gap:18px;margin-top:16px}.setting-danger{background:#fffcfa;border-color:#ead4cf;justify-content:space-between;gap:20px;margin-top:16px}.setting-danger h2{color:#98564e}.setting-danger p{max-width:630px}.startup-screen,.page-loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:100vh;padding:30px;display:flex}.startup-screen{color:#eaf1e8;background:#17392f}.startup-screen h2{color:#fdf9e9;margin:15px 0 0;font-size:30px}.startup-screen p{color:#b4ceba;font-size:12px}.page-loading{color:#91a593;min-height:calc(100vh - 68px)}.page-loading p{font-size:12px}.page-loading h2{margin:0;font-size:28px}.page-loading.error-state{color:#819b85}.loading-spinner{border:3px solid #bbd4bd;border-top-color:#bc965f;border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin;display:block}@keyframes spin{to{transform:rotate(360deg)}}.welcome-page{flex-direction:column;justify-content:center;align-items:flex-start;max-width:850px;min-height:calc(100vh - 68px);padding:65px 70px;display:flex}.welcome-page h1{max-width:710px;margin:16px 0 9px;font-size:clamp(44px,6vw,74px);line-height:1.05}.welcome-page>p{color:#788a7c;max-width:510px;font-size:13px;line-height:1.65}.welcome-page>.button{margin-top:15px}.welcome-steps{border-top:1px solid #dfe7dc;grid-template-columns:repeat(3,1fr);gap:20px;width:100%;margin-top:90px;padding-top:25px;display:grid}.welcome-steps div{flex-direction:column;gap:4px;display:flex}.welcome-steps span{color:#ad8c62;font-family:var(--serif);font-size:22px}.welcome-steps strong{color:#3c5c43;font-size:11px}.welcome-steps small{color:#92a292;font-size:9px}.invite-banner{background:#f3f6e5;border:1px solid #d8dfc8;border-radius:8px;align-items:center;gap:12px;margin:20px 43px 0;padding:13px 15px;display:flex}.invite-banner-icon{color:#69805b;background:#e2e9cf;border-radius:7px;flex:none;place-items:center;width:33px;height:33px;display:grid}.invite-banner>div{flex:1;min-width:0}.invite-banner strong,.invite-banner small{display:block}.invite-banner strong{color:#405c3e;font-size:11px}.invite-banner small{color:#829881;margin-top:2px;font-size:10px}.invite-banner .button{min-height:33px}.toast{z-index:250;color:#3d6542;background:#f7fcf4;border:1px solid #bfd8be;border-radius:8px;align-items:center;gap:10px;min-width:260px;max-width:min(420px,100vw - 32px);padding:11px 12px;font-size:11px;font-weight:700;display:flex;position:fixed;bottom:22px;right:23px;box-shadow:0 12px 30px #1d392b33}.toast>span{background:#deeedb;border-radius:50%;place-items:center;width:21px;height:21px;display:grid}.toast button{color:#7a997d;background:0 0;border:0;border-radius:4px;place-items:center;width:22px;height:22px;margin-left:auto;display:grid}.toast-error{color:#a34b3d;background:#fff8f4;border-color:#e7bdb2}.toast-error>span{background:#f5e2dc}.auth-page{background:#fffefa;grid-template-columns:minmax(0,1.13fr) minmax(410px,.87fr);min-height:100vh;display:grid}.auth-art{color:#f7f7e9;background:radial-gradient(circle at 65% 35%,#3d6654 0,#1d4b3b 38%,#12362e 80%);min-height:100vh;position:relative;overflow:hidden}.auth-art:before{content:"";border:1px solid #ffffff12;border-radius:50%;position:absolute;inset:-15% -20%;transform:rotate(-24deg)}.auth-art:after{content:"";border:1px solid #ffffff0c;border-radius:50%;width:145%;height:100%;position:absolute;top:13%;left:-25%;transform:rotate(20deg)}.auth-art-inner{z-index:1;flex-direction:column;height:100%;min-height:100vh;padding:36px 43px 25px;display:flex;position:relative}.auth-brand{color:#fff8e8;width:fit-content;font-family:var(--serif);letter-spacing:-.07em;align-items:center;gap:10px;font-size:30px;line-height:1;display:inline-flex}.auth-brand .brand-mark{width:39px;height:39px}.auth-brand .brand-mark svg{width:30px;height:30px}.auth-illustration{flex:none;width:min(100%,545px);height:365px;margin:auto auto 12px;position:relative}.auth-orbit{pointer-events:none;border:1px solid #a7d0ac1a;border-radius:50%;position:absolute}.auth-orbit.orbit-one{width:310px;height:310px;top:16px;left:105px}.auth-orbit.orbit-two{width:545px;height:200px;top:75px;left:5px;transform:rotate(-18deg)}.constellation-person{z-index:2;color:#385242;text-align:center;background:#f8f4e8;border:1px solid #e8d3aa82;border-radius:9px;flex-direction:column;align-items:center;min-width:83px;padding:8px 8px 6px;display:flex;position:absolute;box-shadow:0 14px 30px #06261f77}.constellation-person i{color:#4b7051;background:#d7e4d0;border-radius:50%;place-items:center;width:31px;height:31px;margin-bottom:5px;font-size:10px;font-style:normal;font-weight:800;display:grid}.constellation-person b{color:#31513b;font-family:var(--serif);font-size:12px;font-weight:600}.constellation-person small{color:#8c9d8e;margin-top:2px;font-size:7px}.constellation-person.p1{top:35px;left:99px;transform:rotate(-5deg)}.constellation-person.p2{top:18px;right:82px;transform:rotate(5deg)}.constellation-person.p3{top:135px;left:225px;transform:rotate(-2deg)}.constellation-person.p4{bottom:28px;left:95px;transform:rotate(3deg)}.constellation-person.p5{bottom:15px;right:87px;transform:rotate(-4deg)}.auth-constellation-line{z-index:1;transform-origin:0;background:#d9d0a073;height:2px;position:absolute}.auth-constellation-line.line-a{width:175px;top:93px;left:185px;transform:rotate(28deg)}.auth-constellation-line.line-b{width:185px;top:78px;left:344px;transform:rotate(149deg)}.auth-constellation-line.line-c{width:160px;top:202px;left:269px;transform:rotate(132deg)}.auth-constellation-line.line-d{width:153px;top:205px;left:302px;transform:rotate(52deg)}.auth-art-copy{max-width:620px}.auth-art-copy .eyebrow{color:#dac797;align-items:center;gap:7px;display:inline-flex}.auth-art-copy h1{color:#fffbee;max-width:600px;margin:13px 0;font-size:clamp(44px,4.5vw,69px);line-height:1.02}.auth-art-copy h1 em{color:#e3c596}.auth-art-copy p{color:#bcd2c2;max-width:420px;margin-bottom:42px;font-size:12px;line-height:1.6}.auth-art-bottom{color:#a9c5b0;letter-spacing:.16em;border-top:1px solid #ffffff2d;justify-content:space-between;gap:10px;padding-top:18px;font-size:8px;font-weight:800;display:flex}.auth-art-bottom span:last-child{align-items:center;gap:6px;display:inline-flex}.auth-art-bottom svg{color:#d5b988}.auth-form-side{flex-direction:column;min-width:0;padding:33px 52px 21px;display:flex}.auth-mobile-brand{display:none}.auth-form-wrap{width:min(100%,385px);margin:auto;padding:20px 0}.auth-form-icon{color:#67846c;background:#f1f6ed;border:1px solid #dae8d9;border-radius:11px;place-items:center;width:43px;height:43px;margin-bottom:24px;display:grid}.auth-form-wrap h2{margin:9px 0 8px;font-size:clamp(34px,3.4vw,47px);line-height:1.08}.auth-form-description{color:#8a9c8e;max-width:320px;margin-bottom:27px;font-size:12px;line-height:1.6}.auth-form-wrap form label{margin:14px 0 0}.auth-form-wrap form input{color:#365444;background:#fcfdfa;border:1px solid #d9e4d9;border-radius:7px;outline:none;width:100%;height:45px;margin-top:7px;padding:0 13px;font-size:12px;font-weight:500;display:block}.auth-form-wrap form input::placeholder{color:#a6b4a6}.auth-form-wrap form input:focus{border-color:#8aaa8b;box-shadow:0 0 0 3px #accbac35}.password-field{display:block;position:relative}.password-field input{padding-right:45px!important}.password-field button{color:#829685;background:0 0;border:0;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:8px;right:7px}.field-help{color:#9da99e;margin-top:5px;font-size:9px;font-weight:400;display:block}.auth-submit{justify-content:space-between;width:100%;height:46px;margin-top:22px;padding:0 18px}.auth-switch{color:#8c9c8e;text-align:center;margin:18px 0 0;font-size:10px}.auth-switch button{color:#4d7b55;font-size:inherit;background:0 0;border:0;font-weight:800}.auth-switch button:hover{text-decoration:underline}.auth-trust{color:#9baa9b;border-top:1px solid #e8ede4;align-items:center;gap:8px;margin-top:34px;padding-top:18px;font-size:10px;line-height:1.45;display:flex}.auth-trust svg{color:#76a07b;flex:none}.auth-footer{color:#b0bbb0;text-align:center;font-size:9px}.auth-invite-note{color:#59745d;background:#f3f7ee;border:1px solid #dbe7d5;border-radius:6px;align-items:center;gap:8px;margin:-8px 0 19px;padding:10px;font-size:10px;display:flex}.auth-invite-note svg{flex:none}.dialog-backdrop{z-index:180;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0d251bb9;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.dialog{scrollbar-width:thin;background:#fffefa;border:1px solid #e5e9df;border-radius:13px;width:min(100%,505px);max-height:min(90vh,820px);overflow-y:auto;box-shadow:0 25px 70px #0c201981}.dialog-wide{width:min(100%,675px)}.dialog-header{z-index:2;background:#fffefa;border-bottom:1px solid #e9ece5;justify-content:space-between;align-items:flex-start;gap:10px;padding:22px 26px 16px;display:flex;position:sticky;top:0}.dialog-header h2{margin:4px 0 0;font-size:30px}.dialog-header .icon-button{color:#7a8e7d}.dialog-body{padding:19px 26px 25px}.dialog-intro{color:#7c907e;font-size:11px;line-height:1.6}.dialog-body label{margin-top:13px}.dialog-body label:first-of-type{margin-top:0}.dialog-body input:not([type=checkbox]):not([type=radio]):not([type=file]),.dialog-body select,.dialog-body textarea{color:#345040;background:#fcfdfa;border:1px solid #dbe5d8;border-radius:7px;outline:none;width:100%;min-height:39px;margin-top:6px;padding:8px 11px;font-size:11px;font-weight:500;display:block}.dialog-body input:focus,.dialog-body select:focus,.dialog-body textarea:focus{box-shadow:0 0 0 3px #a6c8aa38;border-color:#8aaf8d!important}.dialog-body input::placeholder,.dialog-body textarea::placeholder{color:#acb8ac}.dialog-body textarea{resize:vertical;min-height:85px}.dialog-footer{z-index:2;background:#fffefa;border-top:1px solid #e9ece5;justify-content:flex-end;align-items:center;gap:8px;padding:15px 25px;display:flex;position:sticky;bottom:0}.dialog-footer-between{justify-content:space-between}.button-cluster{gap:8px;display:inline-flex}.dialog-footer .button{min-height:39px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;display:grid}.form-grid label{margin-top:0}.full-span{grid-column:1/-1}.form-divider{color:#a3b0a3;letter-spacing:.15em;align-items:center;gap:11px;margin:24px 0 19px;font-size:9px;font-weight:800;display:flex}.form-divider:after{content:"";background:#e5ebe3;flex:1;height:1px}.switch-row{background:#f8fbf6;border:1px solid #e0e8dd;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;display:flex!important}.switch-row>span:first-child{flex:1}.switch-row strong,.switch-row small{display:block}.switch-row strong{color:#45634b;font-size:11px}.switch-row small{color:#93a293;margin-top:3px;font-size:9px;font-weight:400}.switch-row input{opacity:0;position:absolute}.switch-visual{background:#cbd7c9;border-radius:15px;flex:none;width:34px;height:19px;transition:background .2s;position:relative}.switch-visual:after{content:"";background:#fff;border-radius:50%;width:15px;height:15px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0002}.switch-row input:checked+.switch-visual{background:#6b9c70}.switch-row input:checked+.switch-visual:after{transform:translate(15px)}.switch-row input:focus-visible+.switch-visual{outline-offset:2px;outline:3px solid #9dc9a9}.form-error,.form-warning{color:#a04739;background:#fff2ef;border:1px solid #edc7bf;border-radius:6px;margin:12px 0 0;padding:10px 12px;font-size:10px;line-height:1.5}.form-note{color:#91a293;margin:12px 0 0;font-size:10px;line-height:1.5}.form-warning{color:#9a7140;background:#fff9e9;border-color:#e8d7b0}.relation-choice{grid-template-columns:repeat(3,1fr);gap:8px;margin:17px 0;display:grid}.relation-choice button{color:#6b846d;background:#fcfdfa;border:1px solid #e1e8de;border-radius:7px;flex-direction:column;align-items:center;gap:6px;min-height:69px;padding:10px;font-size:10px;font-weight:700;display:flex}.relation-choice button.selected{color:#3f784a;background:#edf6e9;border-color:#9fbd9e}.confirm-icon{color:#b56b43;background:#fff1e6;border-radius:50%;place-items:center;width:40px;height:40px;margin-bottom:12px;display:grid}.upload-dropzone{text-align:center;cursor:pointer;background:#f7fbf4;border:1px dashed #b6d0b5;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;min-height:139px;padding:18px;color:#6e9274!important;display:flex!important}.upload-dropzone svg{margin-bottom:6px}.upload-dropzone strong{color:#4d754e;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:11px;overflow:hidden}.upload-dropzone span{color:#9aaa9a;margin-top:3px;font-size:9px;font-weight:400}.upload-dropzone input{opacity:0;width:1px;height:1px;position:absolute}.import-file-types{gap:10px;margin-top:11px;display:flex}.import-file-types span{color:#8a9d8b;align-items:center;gap:4px;font-size:9px;font-weight:700;display:inline-flex}.radio-card{cursor:pointer;background:#fcfdfa;border:1px solid #e2e9df;border-radius:7px;align-items:flex-start;gap:9px;padding:11px;display:flex!important}.radio-card input{accent-color:#5a8b60;margin-top:2px}.radio-card strong,.radio-card small{display:block}.radio-card strong{color:#49664e;font-size:10px}.radio-card small{color:#96a698;margin-top:3px;font-size:9px;font-weight:400;line-height:1.45}.replace-ack{align-items:flex-start;gap:7px;line-height:1.4;color:#9e5c4c!important;margin-top:12px!important;font-size:10px!important;font-weight:700!important;display:flex!important}.replace-ack input{accent-color:#a84e3d;margin:1px 0 0}.password-dialog-icon{color:#5f8864;background:#edf4e9;border-radius:8px;place-items:center;width:34px;height:34px;margin:18px 0 17px;display:grid}.scene-loading{color:#b9d3bf;background:radial-gradient(circle,#215143,#11342c 73%);flex-direction:column;justify-content:center;align-items:center;gap:11px;width:100%;height:100%;display:flex}.scene-loading p{font-family:var(--serif);font-size:14px}.scene-large-tree{color:#c7ddcb;text-align:center;background:radial-gradient(circle,#215143,#11342c 73%);flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:30px;display:flex}.scene-large-tree h3{color:#fff9ed;font-family:var(--serif);margin:13px 0 5px;font-size:28px;font-weight:500}.scene-large-tree p{color:#adcab5;max-width:370px;font-size:11px;line-height:1.6}.load-more-wrap{justify-content:center;padding:24px 0 6px;display:flex}@media (width<=1250px){.sidebar{width:235px}.explore-page,.content-page{padding:35px 29px 45px}.topbar{padding:0 29px}.explore-stats>div:not(.explore-stats-note){min-width:124px;margin-right:16px;padding-right:16px}.person-panel{width:310px}.auth-illustration{transform-origin:50%;transform:scale(.86)}}@media (width<=1030px){.sidebar{width:265px;height:100vh;transition:transform .25s;position:fixed;top:0;left:0;transform:translate(-105%)}.sidebar.sidebar-open{transform:translate(0)}.mobile-scrim.visible{z-index:40;background:#0b281ca6;display:block;position:fixed;inset:0}.mobile-menu,.mobile-close{display:inline-grid}.mobile-menu{margin-left:-8px}.mobile-close{color:#d6e3d6}.app-main{width:100%}.auth-art-inner{padding-left:29px;padding-right:29px}.auth-art-copy h1{font-size:49px}.auth-form-side{padding-left:35px;padding-right:35px}}@media (width<=770px){.topbar{height:61px;padding:0 21px}.topbar-location{font-size:9px}.topbar-right{gap:10px}.private-badge{display:none}.explore-page,.content-page{padding:31px 22px 38px}.explore-heading,.page-heading-row{align-items:flex-start}.explore-heading h1,.page-heading-row h1{font-size:39px}.explore-heading p,.page-heading-row p{font-size:11px}.explore-stats{margin:24px 0 17px}.explore-stats>div:not(.explore-stats-note){flex:1;gap:5px;min-width:0;margin-right:8px;padding-right:8px}.explore-stats>div>span{width:27px;height:27px}.explore-stats strong{font-size:19px}.explore-stats small{font-size:9px}.explore-stats-note{display:none}.explorer-workspace{height:min(69vh,610px);min-height:450px;position:relative}.person-panel{z-index:10;border-left:1px solid #dce6d9;width:min(355px,100%);position:absolute;inset:0 0 0 auto;box-shadow:-14px 0 32px #102d2547}.members-grid,.auth-page{grid-template-columns:1fr}.auth-art{display:none}.auth-form-side{min-height:100vh}.auth-mobile-brand{color:#28513b;width:fit-content;font-family:var(--serif);letter-spacing:-.06em;align-items:center;gap:8px;font-size:26px;display:flex}.auth-mobile-brand .brand-mark{color:#547558;background:#e8efe3;border-color:#d6e2d1;font-family:sans-serif;font-size:20px}.auth-form-wrap{padding-top:42px;padding-bottom:42px}.auth-footer{margin-top:auto}.page-loading{min-height:calc(100vh - 61px)}.invite-banner{margin:15px 22px 0}}@media (width<=580px){.topbar{padding:0 17px}.topbar-location{text-overflow:ellipsis;white-space:nowrap;max-width:195px;overflow:hidden}.topbar-share{font-size:0}.topbar-share svg{width:19px;height:19px}.explore-page,.content-page{padding:28px 17px 34px}.explore-heading,.page-heading-row{display:block}.explore-heading h1,.page-heading-row h1{font-size:37px}.explore-heading .button,.page-heading-row .button{margin-top:19px}.explore-stats{padding:11px}.explore-stats>div:not(.explore-stats-note){flex-direction:column;align-items:flex-start;gap:2px;padding-right:6px}.explore-stats>div>span{display:none}.explore-stats strong{font-size:22px}.explore-stats small{font-size:9px}.explore-toolbar{flex-wrap:wrap}.explore-toolbar .search-field{width:100%}.explore-toolbar>select{flex:1}.view-label{display:none}.explorer-workspace{height:65vh;min-height:490px}.scene-coordinate{display:none}.scene-topline{top:16px;left:16px}.scene-hint{max-width:180px;line-height:1.4;bottom:15px;left:13px}.scene-actions{bottom:9px;right:9px}.scene-actions button{width:25px;height:26px}.person-panel{width:100%}.explore-list{padding:20px 17px}.generation-people{grid-template-columns:1fr}.directory-toolbar{flex-wrap:wrap}.directory-toolbar .search-field{width:100%}.directory-toolbar .result-count{margin-left:auto}.person-card-grid{grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:9px}.directory-card{min-height:210px;padding:13px 12px 0}.insight-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.insights-grid,.settings-grid{grid-template-columns:1fr}.insight-card{min-height:225px}.timeline-entry{gap:9px;padding-left:0}.timeline-entry:before{left:18px}.timeline-entry-card{padding:15px}.timeline-entry-card h3{font-size:20px}.setting-card{flex-wrap:wrap;gap:12px;padding:19px}.setting-card>div:nth-child(2){flex-basis:calc(100% - 56px)}.setting-card>.button{margin-left:50px}.setting-danger>.button,.setting-actions .button{margin-left:0}.welcome-page{padding:70px 24px}.welcome-page h1{font-size:48px}.welcome-steps{grid-template-columns:1fr;gap:17px;margin-top:65px}.welcome-steps div{display:block}.welcome-steps span{min-width:36px;display:inline-block}.welcome-steps strong{display:inline}.welcome-steps small{padding-left:36px;display:block}.invite-banner{flex-wrap:wrap;margin:14px 17px 0}.invite-banner .button{width:calc(100% - 48px);margin-left:45px}.auth-form-side{padding:24px 27px 19px}.auth-form-wrap h2{font-size:39px}.dialog-backdrop{padding:10px}.dialog{max-height:94vh}.dialog-header,.dialog-body{padding-left:18px;padding-right:18px}.dialog-footer{padding:12px 17px}.dialog-header h2{font-size:27px}.form-grid{grid-template-columns:1fr;gap:12px}.form-grid .full-span{grid-column:auto}}@media (width<=390px){.person-card-grid{grid-template-columns:1fr}.directory-card{min-height:190px}.explore-toolbar .view-control button{padding:0 8px}.invite-form{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}:root{--theme-canvas:#f7f7f1;--theme-surface:#fffefa;--theme-raised:#fcfdfa;--theme-ink:#21362e;--theme-muted:#78867d;--theme-line:#e3e8df;--theme-sidebar:#17392f;--theme-sidebar-ink:#f7f4e9;--theme-sidebar-muted:#b6cabb;--theme-primary:#234c3c;--theme-primary-hover:#173a2d;--theme-accent:#c49d6c;--theme-accent-soft:#edf2e8;--theme-scene:#10332d;--theme-radius:11px;--theme-font:"Avenir Next", "Segoe UI", system-ui, sans-serif;--theme-display:"Iowan Old Style", "Baskerville", "Palatino Linotype", Georgia, serif;--theme-shadow:0 14px 35px #193b2713;--theme-on-primary:#fffefa}:root[data-design-system=midnight]{--theme-canvas:#0c1524;--theme-surface:#17263a;--theme-raised:#1d3047;--theme-ink:#edf7fa;--theme-muted:#a9bfd0;--theme-line:#34465d;--theme-sidebar:#091321;--theme-sidebar-ink:#f3fbff;--theme-sidebar-muted:#9db9c8;--theme-primary:#5bbec1;--theme-primary-hover:#79d5d3;--theme-accent:#79d5cf;--theme-accent-soft:#203e54;--theme-scene:#0b1528;--theme-radius:15px;--theme-font:"Avenir Next", "Segoe UI", system-ui, sans-serif;--theme-display:"Avenir Next", "Segoe UI", system-ui, sans-serif;--theme-shadow:0 18px 38px #020a1699;--theme-on-primary:#0b1a29}:root[data-design-system=terracotta]{--theme-canvas:#f5ebdf;--theme-surface:#fff9f1;--theme-raised:#fbefe1;--theme-ink:#56392f;--theme-muted:#8e7063;--theme-line:#e8d8c8;--theme-sidebar:#633a31;--theme-sidebar-ink:#fff5e5;--theme-sidebar-muted:#e2c5b5;--theme-primary:#a45238;--theme-primary-hover:#8d422e;--theme-accent:#ce8058;--theme-accent-soft:#f6e3d2;--theme-scene:#512d29;--theme-radius:17px;--theme-font:"Avenir Next", "Segoe UI", system-ui, sans-serif;--theme-display:"Palatino Linotype", "Book Antiqua", Georgia, serif;--theme-shadow:0 15px 34px #74422c20;--theme-on-primary:#fff9f1}:root[data-design-system=museum]{--theme-canvas:#f4f4f0;--theme-surface:#fff;--theme-raised:#f8f8f5;--theme-ink:#171a1c;--theme-muted:#6b6e71;--theme-line:#d6d7d4;--theme-sidebar:#171a1c;--theme-sidebar-ink:#fff;--theme-sidebar-muted:#b9baba;--theme-primary:#e6462e;--theme-primary-hover:#bf341f;--theme-accent:#e6462e;--theme-accent-soft:#fbe8e2;--theme-scene:#171a1c;--theme-radius:2px;--theme-font:Arial, Helvetica, sans-serif;--theme-display:Arial, Helvetica, sans-serif;--theme-shadow:0 8px 0 #171a1c0c;--theme-on-primary:#fff}:root[data-design-system=lavender]{--theme-canvas:#f3edf8;--theme-surface:#fffaff;--theme-raised:#f9f0fc;--theme-ink:#4b3857;--theme-muted:#8a7594;--theme-line:#e9daed;--theme-sidebar:#392b4d;--theme-sidebar-ink:#fff6ff;--theme-sidebar-muted:#d3c0dc;--theme-primary:#7f548f;--theme-primary-hover:#633d74;--theme-accent:#b886c8;--theme-accent-soft:#f0e2f5;--theme-scene:#30213e;--theme-radius:19px;--theme-font:"Avenir Next", "Segoe UI", system-ui, sans-serif;--theme-display:"Iowan Old Style", Georgia, serif;--theme-shadow:0 15px 38px #5c3c6a1e;--theme-on-primary:#fffaff}:root[data-design-system=heritage][data-color-mode=dark]{--theme-canvas:#0d1a18;--theme-surface:#182923;--theme-raised:#20352b;--theme-ink:#edf5ec;--theme-muted:#adc0b2;--theme-line:#395345;--theme-sidebar:#091510;--theme-sidebar-ink:#f3f7ec;--theme-sidebar-muted:#aec7b2;--theme-primary:#a8d2ac;--theme-primary-hover:#c1e2bf;--theme-accent:#dfb778;--theme-accent-soft:#294333;--theme-scene:#10332d;--theme-shadow:0 18px 38px #030c0899;--theme-on-primary:#14271b}:root[data-design-system=midnight][data-color-mode=light]{--theme-canvas:#edf4f8;--theme-surface:#fff;--theme-raised:#f3f8fb;--theme-ink:#193447;--theme-muted:#667f90;--theme-line:#cddfe8;--theme-sidebar:#18314a;--theme-sidebar-ink:#f4fcff;--theme-sidebar-muted:#b5d0df;--theme-primary:#176b79;--theme-primary-hover:#125664;--theme-accent:#3c96a0;--theme-accent-soft:#e0f0f2;--theme-scene:#e8f1f7;--theme-shadow:0 15px 35px #234d6917;--theme-on-primary:#fff}:root[data-design-system=terracotta][data-color-mode=dark]{--theme-canvas:#211714;--theme-surface:#33241f;--theme-raised:#412e26;--theme-ink:#fff0df;--theme-muted:#d0b4a4;--theme-line:#674b3c;--theme-sidebar:#241411;--theme-sidebar-ink:#fff2e4;--theme-sidebar-muted:#d7b6a3;--theme-primary:#e9a47d;--theme-primary-hover:#f3bd99;--theme-accent:#f3ad78;--theme-accent-soft:#523629;--theme-scene:#512d29;--theme-shadow:0 18px 40px #100906a1;--theme-on-primary:#40251b}:root[data-design-system=museum][data-color-mode=dark]{--theme-canvas:#131516;--theme-surface:#242729;--theme-raised:#303436;--theme-ink:#f6f5ef;--theme-muted:#b5b8b8;--theme-line:#4d5252;--theme-sidebar:#0a0b0c;--theme-sidebar-ink:#fff;--theme-sidebar-muted:#bebfc0;--theme-primary:#ff795f;--theme-primary-hover:#ff9a83;--theme-accent:#ff795f;--theme-accent-soft:#49312e;--theme-scene:#171a1c;--theme-shadow:0 8px 0 #0005;--theme-on-primary:#24120e}:root[data-design-system=lavender][data-color-mode=dark]{--theme-canvas:#1b1522;--theme-surface:#2b2034;--theme-raised:#382944;--theme-ink:#fbf0ff;--theme-muted:#c8afd2;--theme-line:#594361;--theme-sidebar:#160f20;--theme-sidebar-ink:#fff6ff;--theme-sidebar-muted:#d4badd;--theme-primary:#d6a7e3;--theme-primary-hover:#e8c2ef;--theme-accent:#e3add3;--theme-accent-soft:#4a3154;--theme-scene:#30213e;--theme-shadow:0 18px 40px #100a15a1;--theme-on-primary:#2e1c37}:root{font-family:var(--theme-font);color:var(--theme-ink);background:var(--theme-canvas);--ink:var(--theme-ink);--muted:var(--theme-muted);--forest:var(--theme-primary);--forest-dark:var(--theme-sidebar);--gold:var(--theme-accent);--paper:var(--theme-surface);--cream:var(--theme-canvas);--line:var(--theme-line);--serif:var(--theme-display)}body,.app-shell,.app-main,.welcome-page{background:var(--theme-canvas);color:var(--theme-ink)}h1,h2,h3{color:var(--theme-ink)}em,.eyebrow,.section-overline{color:var(--theme-accent)}.sidebar,.startup-screen{background:var(--theme-sidebar);color:var(--theme-sidebar-ink)}.sidebar:after{background:radial-gradient(circle at 0 100%, color-mix(in srgb, var(--theme-accent) 23%, transparent), transparent 65%)}.brand,.sidebar-user strong,.tree-switcher strong,.sidebar-nav-item.active,.sidebar-quote p{color:var(--theme-sidebar-ink)}.sidebar-label,.sidebar-user small,.sidebar-nav-item,.tree-switcher small{color:var(--theme-sidebar-muted)}.sidebar-nav-item.active{background:color-mix(in srgb, var(--theme-accent) 17%, transparent)}.sidebar-nav-item.active:before,.nav-active-dot{background:var(--theme-accent)}.sidebar-nav-item.active svg,.brand-mark,.tree-switcher-icon,.sidebar-quote svg{color:var(--theme-accent)}.tree-switcher,.sidebar-quote{border-color:color-mix(in srgb, var(--theme-sidebar-ink) 17%, transparent)}.tree-switch-menu,.topbar,.explore-stats,.explorer-workspace,.person-panel,.dialog,.dialog-header,.dialog-footer,.setting-card,.directory-card,.insight-card,.activity-card,.member-card,.invite-card,.timeline-entry-card,.generation-person,.empty-panel,.explore-list,.toast,.auth-page,.auth-form-side,.search-field,.segmented-control button.active,.radio-card,.switch-row,.relation-choice button,.upload-dropzone,.created-invite,.privacy-note,.read-only-note,.timeline-unlinked,.scene-person-label{background:var(--theme-surface);color:var(--theme-ink);border-color:var(--theme-line)}.topbar,.dialog-header,.dialog-footer,.profile-section,.sidebar-user,.generation-group,.form-divider:after{border-color:var(--theme-line)}.topbar-location,.topbar-share,.private-badge,.settings-meta,.detail-facts strong,.person-bio,.relative-person,.timeline-person-link,.tree-switch-menu button,.directory-card strong,.directory-card h3,.member-row strong,.invite-card strong,.setting-card h2,.explore-stats strong,.generation-person strong,.section-heading h3,.radio-card strong,.switch-row strong{color:var(--theme-ink)}.explore-heading p,.page-heading-row p,.setting-card p,.auth-form-description,.auth-trust,.auth-switch,.section-empty,.detail-facts span,.relative-empty,.generation-person small,.directory-card small,.timeline-entry-card p,.insight-card p,.member-row small,.invite-card small,.explore-footnote,.scene-person-copy small,.form-note,.dialog-intro,.tree-switch-menu button:hover{color:var(--theme-muted)}.button,.sidebar-nav-item,.tree-switcher,.tree-switch-menu,.search-field,.segmented-control,.explorer-workspace,.setting-card,.directory-card,.dialog,.toast,.auth-form-wrap input,.admin-card{border-radius:var(--theme-radius)}.button-primary{background:var(--theme-primary);border-color:var(--theme-primary);color:var(--theme-on-primary);box-shadow:var(--theme-shadow)}.button-primary:not(:disabled):hover{background:var(--theme-primary-hover)}.button-secondary,.button-ghost,.button-danger-outline{background:var(--theme-surface);color:var(--theme-ink);border-color:var(--theme-line)}.button-secondary:not(:disabled):hover,.button-ghost:hover,.icon-button:hover,.mini-icon-button:hover,.tree-switch-menu button:hover,.tree-switch-menu button.current{background:var(--theme-accent-soft);color:var(--theme-ink)}.text-link,.topbar-share,.auth-switch button{color:var(--theme-primary)}.search-field input,.explore-toolbar>select,.directory-toolbar>select,.dialog-body input:not([type=checkbox]):not([type=radio]):not([type=file]),.dialog-body select,.dialog-body textarea,.auth-form-wrap form input,.copy-field input,.admin-page input,.admin-page select,.google-password-card input{background:var(--theme-raised);color:var(--theme-ink);border-color:var(--theme-line)}.search-field input::placeholder,.admin-page input::placeholder,.auth-form-wrap form input::placeholder{color:var(--theme-muted)}.invite-form label,.dialog-body label,.auth-form-wrap form label{color:var(--theme-ink)}.explore-stats,.explorer-workspace,.directory-card,.setting-card,.admin-card{box-shadow:var(--theme-shadow)}.explore-stats>div>span,.setting-card-icon,.auth-form-icon,.person-event-icon,.timeline-symbol,.insight-metric>span,.avatar,.avatar-large,.relative-avatar,.generation-heading>span,.member-avatar,.admin-user-avatar{background:var(--theme-accent-soft);color:var(--theme-primary)}.segmented-control{background:var(--theme-accent-soft);border-color:var(--theme-line)}.segmented-control button{color:var(--theme-muted)}.segmented-control button.active{color:var(--theme-ink)}.person-panel-hero,.insight-card-dark{background:var(--theme-sidebar);color:var(--theme-sidebar-ink)}.person-panel-hero h2,.insight-card-dark h2,.insight-card-dark h3{color:var(--theme-sidebar-ink)}.person-nickname,.person-panel-hero .eyebrow{color:var(--theme-accent)}.person-years,.person-quick-facts span{color:var(--theme-sidebar-muted)}.portrait-edit{background:var(--theme-accent);border-color:var(--theme-sidebar)}.tree-viewport,.scene-loading,.scene-large-tree,.scene-unavailable{background:var(--theme-scene)}.scene-topline,.scene-hint,.scene-coordinate{color:var(--theme-sidebar-ink)}.scene-actions{border-color:color-mix(in srgb, var(--theme-sidebar-ink) 25%, transparent);background:color-mix(in srgb, var(--theme-sidebar) 65%, transparent)}.scene-actions button{color:var(--theme-sidebar-ink)}:root[data-color-mode=light] .scene-topline,:root[data-color-mode=light] .scene-hint,:root[data-color-mode=light] .scene-coordinate{color:var(--theme-ink)}:root[data-color-mode=light] .scene-actions{border-color:var(--theme-line);background:color-mix(in srgb, var(--theme-surface) 90%, transparent)}:root[data-color-mode=light] .scene-actions button{color:var(--theme-ink)}.scene-person-label{box-shadow:var(--theme-shadow)}.auth-art{background:radial-gradient(circle at 63% 34%, color-mix(in srgb, var(--theme-sidebar) 69%, var(--theme-accent)), var(--theme-sidebar) 72%)}.auth-brand,.auth-art-copy h1{color:var(--theme-sidebar-ink)}.auth-art-copy h1 em,.auth-art-copy .eyebrow,.auth-brand .brand-mark{color:var(--theme-accent)}.auth-art-copy p,.auth-art-bottom{color:var(--theme-sidebar-muted)}.auth-footer{color:var(--theme-muted)}.constellation-person{background:var(--theme-surface);color:var(--theme-ink);border-color:var(--theme-accent)}.constellation-person i{background:var(--theme-accent-soft);color:var(--theme-primary)}.constellation-person b{color:var(--theme-ink)}.constellation-person small{color:var(--theme-muted)}.auth-constellation-line{background:color-mix(in srgb, var(--theme-accent) 65%, transparent)}.dialog-backdrop{background:color-mix(in srgb, var(--theme-sidebar) 77%, transparent)}.toast{color:var(--theme-ink)}:root[data-design-system=museum] h1,:root[data-design-system=museum] h2,:root[data-design-system=museum] h3{letter-spacing:-.065em;font-weight:800}:root[data-design-system=museum] em{text-underline-offset:7px;font-style:normal;text-decoration:underline;text-decoration-thickness:4px}:root[data-design-system=museum] .sidebar-nav-item.active,:root[data-design-system=museum] .admin-tabs button.active{border-left:3px solid var(--theme-accent)}:root[data-design-system=midnight] .button-primary{color:var(--theme-on-primary)}:root[data-design-system=midnight] .auth-form-side,:root[data-design-system=midnight] .auth-page{background:var(--theme-canvas)}:root[data-design-system=midnight] .person-panel-hero{background:#101d31}.admin-page{max-width:1560px;margin:0 auto;padding:32px 42px 70px}.admin-hero{border-radius:calc(var(--theme-radius) + 7px);background:var(--theme-sidebar);min-height:190px;color:var(--theme-sidebar-ink);justify-content:space-between;gap:24px;padding:31px 35px;display:flex;position:relative;overflow:hidden}.admin-hero:after{content:"";border:1px solid color-mix(in srgb, var(--theme-accent) 35%, transparent);border-radius:50%;width:390px;height:390px;position:absolute;top:-100px;right:2%}.admin-hero .eyebrow{color:var(--theme-accent);align-items:center;gap:7px;display:flex}.admin-hero h1{color:var(--theme-sidebar-ink);margin:12px 0 7px;font-size:clamp(32px,3.2vw,47px)}.admin-hero h1 em{color:var(--theme-accent)}.admin-hero p{color:var(--theme-sidebar-muted);margin:0;font-size:12px}.admin-hero-mark{color:var(--theme-accent);opacity:.8;align-items:center;gap:12px;margin-right:40px;display:flex}.admin-hero-mark span{letter-spacing:.22em;font-size:10px;font-weight:800;line-height:1.5}.admin-layout{grid-template-columns:225px minmax(0,1fr);gap:30px;margin-top:30px;display:grid}.admin-tabs{flex-direction:column;align-self:start;gap:5px;display:flex;position:sticky;top:86px}.admin-tabs button{border-radius:var(--theme-radius);width:100%;min-height:42px;color:var(--theme-muted);text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:11px;padding:0 12px;font-size:12px;font-weight:700;display:flex}.admin-tabs button:hover{color:var(--theme-ink);background:var(--theme-accent-soft)}.admin-tabs button.active{background:var(--theme-surface);border-color:var(--theme-line);color:var(--theme-primary);box-shadow:var(--theme-shadow)}.admin-tabs button span{flex:1}.admin-tabs button>svg:last-child{opacity:.5}.admin-content{min-width:0}.admin-section-title{margin:1px 0 22px}.admin-section-title h2{margin:6px 0 5px;font-size:clamp(29px,2.5vw,38px)}.admin-section-title p{max-width:750px;color:var(--theme-muted);margin:0;font-size:12px;line-height:1.65}.admin-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;display:grid}.admin-metric{border:1px solid var(--theme-line);border-radius:var(--theme-radius);background:var(--theme-surface);min-height:130px;box-shadow:var(--theme-shadow);flex-direction:column;padding:16px;display:flex}.admin-metric>span{background:var(--theme-accent-soft);width:33px;height:33px;color:var(--theme-primary);border-radius:8px;place-items:center;display:grid}.admin-metric strong{color:var(--theme-ink);font-family:var(--theme-display);margin-top:13px;font-size:30px;line-height:1}.admin-metric small{color:var(--theme-muted);margin-top:3px;font-size:10px}.admin-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:18px;display:grid}.admin-card{border:1px solid var(--theme-line);border-radius:var(--theme-radius);background:var(--theme-surface);padding:22px}.admin-card h3{margin:9px 0 8px;font-size:23px}.admin-card p{color:var(--theme-muted);font-size:11px;line-height:1.65}.admin-feature-highlight{background:color-mix(in srgb, var(--theme-accent-soft) 70%, var(--theme-surface))}.admin-overview-grid .button{margin-top:15px}.admin-note{border:1px solid var(--theme-line);border-radius:var(--theme-radius);background:var(--theme-accent-soft);color:var(--theme-muted);align-items:flex-start;gap:11px;margin-top:18px;padding:15px 17px;font-size:11px;line-height:1.6;display:flex}.admin-note svg{color:var(--theme-primary);flex:none}.admin-note strong{color:var(--theme-ink);display:block}.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.theme-card{border:2px solid var(--theme-line);border-radius:calc(var(--theme-radius) + 4px);background:var(--theme-surface);width:100%;color:var(--theme-ink);text-align:left;box-shadow:var(--theme-shadow);padding:0;transition:transform .18s,border-color .18s;display:block;overflow:hidden}.theme-card:hover{border-color:var(--theme-accent);transform:translateY(-3px)}.theme-card.selected{border-color:var(--theme-primary)}.theme-preview{background:var(--preview-back);height:150px;padding:15px 0 0 15px;display:flex}.theme-preview-heritage{--preview-side:#17392f;--preview-back:#e9e8df;--preview-page:#fffefa;--preview-accent:#c49d6c}.theme-preview-midnight{--preview-side:#091321;--preview-back:#101d31;--preview-page:#1d3047;--preview-accent:#79d5cf}.theme-preview-terracotta{--preview-side:#633a31;--preview-back:#f0decf;--preview-page:#fff9f1;--preview-accent:#ce8058}.theme-preview-museum{--preview-side:#171a1c;--preview-back:#e6e6e2;--preview-page:#fff;--preview-accent:#e6462e}.theme-preview-lavender{--preview-side:#392b4d;--preview-back:#e7d9eb;--preview-page:#fffaff;--preview-accent:#b886c8}.theme-preview-heritage.theme-preview-dark{--preview-side:#091510;--preview-back:#0d1a18;--preview-page:#20352b;--preview-accent:#dfb778}.theme-preview-terracotta.theme-preview-dark{--preview-side:#241411;--preview-back:#211714;--preview-page:#412e26;--preview-accent:#f3ad78}.theme-preview-museum.theme-preview-dark{--preview-side:#0a0b0c;--preview-back:#131516;--preview-page:#303436;--preview-accent:#ff795f}.theme-preview-lavender.theme-preview-dark{--preview-side:#160f20;--preview-back:#1b1522;--preview-page:#382944;--preview-accent:#e3add3}.theme-preview-midnight.theme-preview-light{--preview-side:#18314a;--preview-back:#edf4f8;--preview-page:#fff;--preview-accent:#3c96a0}.theme-preview-side{background:var(--preview-side);border-radius:7px 0 0;flex-direction:column;gap:11px;width:23%;padding:26px 13px;display:flex}.theme-preview-side i{background:var(--preview-accent);opacity:.75;border-radius:5px;width:80%;height:7px}.theme-preview-side i:nth-child(2){opacity:.4;width:60%}.theme-preview-side i:nth-child(3){opacity:.4;width:75%}.theme-preview-main{background:var(--preview-page);border-radius:7px 0 0;flex:1;padding:22px 24px}.theme-preview-main>span{background:var(--preview-side);opacity:.8;width:46%;height:12px;display:block}.theme-preview-main>b{background:var(--preview-accent);width:66%;height:6px;margin-top:9px;display:block}.theme-preview-main>i{background:var(--preview-side);opacity:.22;width:40%;height:5px;margin-top:6px;display:block}.theme-preview-main>div{gap:8px;margin-top:18px;display:flex}.theme-preview-main>div i{background:var(--preview-back);border-top:4px solid var(--preview-accent);width:38%;height:43px}.theme-card-copy{padding:17px 19px 19px}.theme-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.theme-card-top strong{color:var(--theme-ink);font-family:var(--theme-display);font-size:23px}.theme-live{background:var(--theme-accent-soft);color:var(--theme-primary);border-radius:20px;align-items:center;gap:4px;padding:4px 7px;font-size:9px;font-weight:800;display:inline-flex}.theme-card-copy>small{color:var(--theme-accent);text-transform:uppercase;letter-spacing:.12em;margin-top:3px;font-size:9px;font-weight:800;display:block}.theme-card-copy p{color:var(--theme-muted);margin:12px 0 13px;font-size:11px}.theme-swatches{gap:5px;display:flex}.theme-swatches i{border:1px solid #8885;border-radius:50%;width:17px;height:17px}.admin-feature-group{margin-bottom:16px}.admin-feature-group>div:first-child h3{margin:0 0 2px;font-size:20px}.admin-feature-group>div:first-child p{margin:0 0 14px}.admin-flag-list{border-top:1px solid var(--theme-line)}.admin-flag{border-bottom:1px solid var(--theme-line);cursor:pointer;align-items:center;gap:18px;min-height:63px;padding:9px 0;display:flex}.admin-flag:last-child{border-bottom:0}.admin-flag>span:first-child{flex:1}.admin-flag strong,.admin-flag small{display:block}.admin-flag strong{color:var(--theme-ink);font-size:12px}.admin-flag small{color:var(--theme-muted);margin-top:3px;font-size:10px}.admin-flag input{opacity:0;width:1px;height:1px;position:absolute}.admin-toggle{background:var(--theme-line);border-radius:20px;flex:none;width:40px;height:23px;transition:background .18s;position:relative}.admin-toggle:after{content:"";background:#fff;border-radius:50%;width:17px;height:17px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.admin-flag input:checked+.admin-toggle{background:var(--theme-primary)}.admin-flag input:checked+.admin-toggle:after{transform:translate(17px)}.admin-flag input:focus-visible+.admin-toggle{outline:3px solid var(--theme-accent);outline-offset:3px}.admin-access-summary{border-radius:var(--theme-radius);background:var(--theme-accent-soft);color:var(--theme-primary);align-items:center;gap:9px;padding:12px 15px;font-size:11px;font-weight:700;display:flex}.admin-user-search{border:1px solid var(--theme-line);border-radius:var(--theme-radius);background:var(--theme-surface);max-width:430px;color:var(--theme-muted);align-items:center;gap:8px;margin:17px 0 12px;padding:0 12px;display:flex}.admin-user-search input{background:0 0;border:0;outline:0;flex:1;min-width:0;height:40px}.admin-user-list,.admin-audit-list{border:1px solid var(--theme-line);border-radius:var(--theme-radius);background:var(--theme-surface);overflow:hidden}.admin-user-row{border-bottom:1px solid var(--theme-line);align-items:center;gap:12px;padding:13px 17px;display:flex}.admin-user-row:last-child{border-bottom:0}.admin-user-avatar{width:36px;height:36px;font-family:var(--theme-display);border-radius:50%;flex:none;place-items:center;font-size:18px;display:grid}.admin-user-row>div{flex:1;min-width:0}.admin-user-row strong,.admin-user-row span,.admin-user-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.admin-user-row strong{color:var(--theme-ink);font-size:12px}.admin-user-row strong small{color:var(--theme-accent);display:inline}.admin-user-row div>span{color:var(--theme-muted);margin-top:2px;font-size:10px}.admin-user-row div>small{color:var(--theme-muted);margin-top:3px;font-size:9px}.admin-user-row select{border:1px solid var(--theme-line);border-radius:var(--theme-radius);min-height:34px;padding:5px 8px;font-size:10px;font-weight:700}.admin-load-more{margin-top:14px}.admin-empty{color:var(--theme-muted);text-align:center;margin:0;padding:30px;font-size:12px}.admin-identity-card{align-items:flex-start;gap:18px;display:flex}.admin-identity-icon{background:var(--theme-accent-soft);width:48px;height:48px;color:var(--theme-primary);border-radius:14px;flex:none;place-items:center;display:grid}.admin-identity-card h3{margin-top:0}.admin-identity-card code{background:var(--theme-accent-soft);color:var(--theme-ink);border-radius:3px;padding:1px 4px}.admin-identity-card a{color:var(--theme-primary);align-items:center;gap:4px;font-size:11px;font-weight:800;display:inline-flex}.admin-identity-form{align-items:end;gap:12px;margin-top:17px;display:flex}.admin-identity-form label{color:var(--theme-ink);flex:1;font-size:11px;font-weight:700}.admin-identity-form input{border:1px solid var(--theme-line);border-radius:var(--theme-radius);width:100%;min-height:42px;margin-top:7px;padding:0 12px;font-size:11px;display:block}.admin-message{border:1px solid var(--theme-line);border-radius:var(--theme-radius);align-items:center;gap:8px;margin-bottom:16px;padding:11px 14px;font-size:11px;display:flex}.admin-message.success{background:var(--theme-accent-soft);color:var(--theme-primary)}.admin-message.error{color:#9c392d;background:#fff0ed;border-color:#e9b1a7}.admin-audit-list>div{border-bottom:1px solid var(--theme-line);align-items:center;gap:12px;padding:14px 17px;display:flex}.admin-audit-list>div:last-child{border-bottom:0}.admin-audit-dot{background:var(--theme-accent);border-radius:50%;flex:none;width:8px;height:8px}.admin-audit-list>div>div{flex:1}.admin-audit-list strong{color:var(--theme-ink);font-size:11px}.admin-audit-list p{color:var(--theme-muted);margin:3px 0 0;font-size:10px}.admin-audit-list time{color:var(--theme-muted);white-space:nowrap;font-size:9px}.admin-confirm{max-width:460px}.admin-confirm .dialog-body p{color:var(--theme-muted);font-size:12px;line-height:1.7}.auth-google{flex-direction:column;align-items:center;gap:11px;margin-top:22px;display:flex}.auth-google>span{color:var(--theme-muted);letter-spacing:.13em;font-size:9px;font-weight:800}.auth-google small{color:var(--theme-muted);text-align:center;font-size:9px}.google-button{min-height:41px}.account-methods{padding-top:0}.google-password-card form{align-items:end;gap:12px;margin-top:12px;display:flex}.google-password-card form label{color:var(--theme-ink);font-size:11px;font-weight:700}.google-password-card input{border:1px solid var(--theme-line);border-radius:var(--theme-radius);min-height:41px;margin-top:6px;padding:0 12px;display:block}.topbar-mode{border:1px solid var(--theme-line);border-radius:var(--theme-radius);background:var(--theme-surface);color:var(--theme-primary);align-items:center;gap:5px;padding:3px 8px;display:inline-flex}.topbar-mode select{max-width:100px;color:var(--theme-ink);cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:700}.topbar-mode select:focus-visible{outline:2px solid var(--theme-accent);outline-offset:3px}.admin-mode-row{border:1px solid var(--theme-line);border-radius:var(--theme-radius);background:var(--theme-surface);justify-content:space-between;align-items:center;gap:20px;margin-bottom:19px;padding:16px 19px;display:flex}.admin-mode-row strong,.admin-mode-row small{display:block}.admin-mode-row strong{color:var(--theme-ink);font-size:12px}.admin-mode-row small{color:var(--theme-muted);margin-top:3px;font-size:10px}.admin-mode-row .segmented-control{padding:3px;display:flex}.admin-mode-row .segmented-control button{cursor:pointer;border:0;min-width:65px;padding:7px 10px}.discover-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.discover-card{border:1px solid var(--theme-line);border-radius:var(--theme-radius);background:var(--theme-surface);min-width:0;box-shadow:var(--theme-shadow);padding:25px}.discover-card-icon{background:var(--theme-accent-soft);width:43px;height:43px;color:var(--theme-primary);border-radius:12px;place-items:center;margin-bottom:17px;display:grid}.discover-card h2{color:var(--theme-ink);font-family:var(--theme-display);margin:8px 0 5px;font-size:clamp(23px,2vw,30px)}.discover-card>p{max-width:420px;color:var(--theme-muted);margin:0 0 20px;font-size:12px;line-height:1.6}.discover-selects{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.discover-selects label{color:var(--theme-muted);font-size:11px;font-weight:700}.discover-selects select{border:1px solid var(--theme-line);border-radius:var(--theme-radius);background:var(--theme-raised);width:100%;min-width:0;min-height:42px;color:var(--theme-ink);margin-top:6px;padding:7px 10px;font-size:12px;display:block}.connection-path{margin-top:22px}.connection-path>strong{color:var(--theme-ink);font-size:12px}.connection-path ol{margin:12px 0 0;padding:0;list-style:none}.connection-path li{border-top:1px solid var(--theme-line);align-items:center;gap:12px;min-height:44px;display:flex}.connection-relation{width:52px;color:var(--theme-accent);text-transform:uppercase;flex:none;font-size:10px;font-weight:800}.connection-path li button{color:var(--theme-ink);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:8px 0;font-size:12px;font-weight:700;display:inline-flex}.connection-path li button:hover{color:var(--theme-primary)}.discover-empty{border-radius:var(--theme-radius);background:var(--theme-accent-soft);color:var(--theme-muted);margin-top:18px;padding:16px;font-size:12px;line-height:1.6}.upcoming-list{flex-direction:column;display:flex}.upcoming-row{border-top:1px solid var(--theme-line);align-items:center;gap:11px;min-height:62px;padding:9px 0;display:flex}.upcoming-row>div{flex:1;min-width:0}.upcoming-symbol{background:var(--theme-accent-soft);width:34px;height:34px;color:var(--theme-primary);border-radius:50%;flex:none;place-items:center;display:grid}.upcoming-row strong,.upcoming-row small{display:block}.upcoming-row strong{color:var(--theme-ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.upcoming-row small{color:var(--theme-muted);margin-top:3px;font-size:10px}.upcoming-days{color:var(--theme-primary);white-space:nowrap;flex:none;font-size:10px;font-weight:800}.upcoming-row .mini-icon-button{color:var(--theme-primary);flex:none}.discover-more{margin-top:16px}@media (width<=1050px){.discover-grid{grid-template-columns:1fr}}@media (width<=580px){.topbar-mode{padding:3px 5px}.topbar-mode select{max-width:68px;font-size:10px}.discover-card{padding:18px}.discover-selects{grid-template-columns:1fr}.admin-mode-row{flex-direction:column;align-items:flex-start}}@media (width<=1100px){.admin-layout{grid-template-columns:190px minmax(0,1fr);gap:20px}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=770px){.admin-page{padding:23px 22px 50px}.admin-layout{display:block}.admin-tabs{flex-direction:row;margin-bottom:21px;padding-bottom:8px;position:static;overflow-x:auto}.admin-tabs button{white-space:nowrap;flex:none;width:auto}.admin-tabs button>svg:last-child,.admin-hero-mark{display:none}}@media (width<=580px){.admin-page{padding:15px 14px 45px}.admin-hero{min-height:155px;padding:25px 21px}.admin-hero h1{font-size:30px}.theme-grid,.admin-overview-grid{grid-template-columns:1fr}.admin-metrics{gap:8px}.admin-metric{min-height:112px;padding:13px}.admin-identity-form,.google-password-card form{flex-direction:column;align-items:stretch}.admin-user-row{flex-wrap:wrap}.admin-user-row select{margin-left:48px}.admin-audit-list time{display:none}.account-methods{padding-top:0}}
