@charset "UTF-8";
:root{color-scheme:dark;--bg:#111113;--surface:#1c1c20;--surface2:#232328;--line:#34343c;--text:#f4f1ee;--muted:#b5b2bd;--accent:#b7abc9;--accent-bg:#35303f;--radius:25px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);line-height:1.55;font-size:14px}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button{border:0}button:disabled{opacity:.55;cursor:wait}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid #d3b9ef;outline-offset:4px}button:hover{filter:brightness(1.13)}button,input{transition:background .18s,border-color .18s,opacity .18s}[hidden]{display:none!important}p{color:var(--muted);margin:0}h1,h2,h3{font-weight:500;letter-spacing:-.045em;line-height:1.1;margin:0}em{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--accent)}.preview-bar{height:34px;border-bottom:1px solid #29292e;padding:0 4.4%;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.16em;color:#a9a3b2}.preview-bar>span:first-child{display:flex;align-items:center;gap:8px}.preview-bar>span:last-child{letter-spacing:.03em}.preview-bar i{width:5px;height:5px;border-radius:50%;background:#b7abc9}header{max-width:1560px;margin:auto;padding:0 4.4%;height:104px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:10px;align-items:center;font-size:18px;font-weight:550;letter-spacing:.015em}.mark{width:37px;height:39px;border:1px solid #665a72;background:#302b38;display:grid;place-items:center;border-radius:12px;font-family:Georgia,serif;font-size:26px;font-weight:400}.brand-dot{color:#b7abc9;margin-left:-7px;font-size:25px}nav{display:flex;align-items:center;gap:28px;font-size:12px;color:var(--muted)}.private-tag{display:flex;gap:8px;align-items:center;border:1px solid #4c4558;background:#232029;border-radius:30px;padding:8px 14px;color:#d8d0e0}.private-tag span{font-size:18px}.quiet,.text-button{background:none;padding:4px 0;color:#c6b9d2;font-size:11px}.quiet{border-bottom:1px solid #756681}.eyebrow{color:#bfb1ce;font-size:9px;letter-spacing:.2em;font-weight:550}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}main{max-width:1560px;padding:0 4.4%;margin:0 auto;outline:none}.access{display:grid;grid-template-columns:1.15fr 1fr;gap:9%;max-width:1180px;margin:46px auto 70px}.access-intro{padding-top:34px}.access h1{font-size:clamp(52px,5.8vw,83px);margin:22px 0 27px;line-height:1.04}.access-intro>p{font-size:15px;line-height:1.8}.access-side{padding-top:0}.login-card{padding:34px 36px 28px;background:radial-gradient(ellipse at top right,#44364f55,transparent 68%),var(--surface)}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.lock-symbol{font-size:25px;color:#b4a4c3}.login-card h2{font-size:33px;margin-bottom:18px}.login-card>p{font-size:12px;line-height:1.8}form{margin-top:28px}label{display:block;font-size:11px;margin-bottom:9px;color:#d7d0df}input{background:#151518;border:1px solid #414049;border-radius:12px;color:var(--text);padding:13px 15px;width:100%;min-width:0;font-size:13px}input::placeholder{color:#93909d}input:focus{border-color:#b7abc9;outline:2px solid #b7abc933;outline-offset:0}.label-row{display:flex;align-items:center;justify-content:space-between;margin-top:20px}.label-row button{margin-bottom:9px}.primary,.secondary{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:43px;padding:11px 17px;border-radius:12px;font-size:12px}.primary{background:var(--accent);color:#1b1720;font-weight:550;border:1px solid #b7abc9}.primary>span{font-size:20px;line-height:1}.secondary{background:#26222e;border:1px solid #504758;color:#e0d7e8}.wide{width:100%}form .primary{margin-top:26px}.message{font-size:11px;color:#e2c7ec;line-height:1.7;margin-top:12px}.message:empty{display:none}.invitation-note{display:flex;align-items:center;gap:12px;padding-top:20px;margin-top:23px;border-top:1px solid #49414f;font-size:10px;color:#b5acbf;line-height:1.8}.invitation-note>span:first-child{font-size:22px}.demo-card{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:25px 28px;margin-top:16px;background:#211e27}.demo-card h3{font-size:21px;margin:9px 0 8px}.demo-card p{font-size:11px}.round{width:42px;height:42px;border:1px solid #7b6d86;border-radius:50%;background:transparent;font-size:23px;flex-shrink:0}.heritage-art{position:relative;height:185px;max-width:470px;margin-top:52px;overflow:hidden;mask-image:linear-gradient(to bottom,#000 80%,transparent)}.heritage-art:before{content:"";position:absolute;width:300px;height:180px;left:70px;top:0;background:radial-gradient(ellipse,#b7abc918,transparent 70%)}.heritage-art svg{position:absolute;width:100%;bottom:0;height:160px;fill:none;stroke:#a18aad;stroke-width:1;opacity:.4}.orbit{position:absolute;border:1px solid #7f6b8e55;border-radius:100%;height:300px;width:370px;left:45px;top:35px;transform:rotate(-35deg)}.orbit-two{transform:rotate(35deg);width:320px;left:70px;top:30px}.orbit-three{transform:rotate(80deg);width:230px;left:115px;top:25px}.art-point{position:absolute;background:#d2c1de;width:8px;height:8px;border-radius:50%;box-shadow:0 0 20px #c6a3de66}.art-point.a{left:22%;top:39%}.art-point.b{left:77%;top:39%}.art-point.c{left:50%;top:76%}.art-label{position:absolute;top:20px;left:0;font-family:Georgia,serif;font-style:italic;font-size:20px;color:#a99ab7;transform:rotate(-7deg)}footer{max-width:1424px;padding:25px 0 32px;border-top:1px solid #303038;margin:0 4.4%;display:flex;align-items:center;gap:30px;color:#a9a2b0;font-size:10px}footer>span:first-child{font-size:16px;letter-spacing:.06em;color:#c2b5ce}footer>span:first-child .brand-dot{margin-left:0}footer>span:last-child{margin-left:auto}.skip{position:fixed;top:-60px;left:20px;padding:10px;background:#b7abc9;color:#111;z-index:100}.skip:focus{top:10px}
.workspace-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin:30px 0 31px}.workspace-heading h1{font-size:clamp(36px,4.2vw,62px);margin:15px 0 0}.workspace-description{padding-bottom:4px}.workspace-description p{font-size:11px;line-height:1.7;margin-top:12px}.chip{display:inline-flex;border:1px solid #5b4e65;color:#d0bedf;padding:6px 11px;border-radius:30px;font-size:9px;letter-spacing:.025em;background:#2e2636}.bento-stats{display:grid;grid-template-columns:1fr 1fr 1.6fr;gap:16px;margin-bottom:18px}.stat{position:relative;display:flex;align-items:center;gap:20px;padding:22px 25px;min-height:113px}.stat-icon{width:44px;height:44px;border-radius:15px;background:#302a38;color:#c7b7d5;display:grid;place-items:center;font-size:28px;border:1px solid #50445b}.stat strong{display:block;font-size:29px;font-weight:450;line-height:1.2;letter-spacing:-.03em}.stat div>span{font-size:10px;color:#b5afbd}.stat-number{position:absolute;right:17px;top:15px;color:#81758a;font-size:9px}.privacy-card{display:flex;align-items:center;gap:20px;padding:20px 27px;background:radial-gradient(ellipse at top right,#45354e55,transparent 90%),#211e27}.privacy-icon{font-size:36px;color:#bfa9ce}.privacy-card strong{display:block;font-size:15px;line-height:1.45;font-weight:450;letter-spacing:-.02em}.privacy-card div>span{display:block;font-size:9px;color:#b9aec4;margin-top:7px}.tree-layout{display:grid;grid-template-columns:minmax(0,1fr) 305px;gap:18px;align-items:stretch}.tree-card{overflow:hidden;min-width:0;background:#19191d}.tree-top{padding:18px 22px;display:flex;align-items:center;gap:15px;border-bottom:1px solid #323138}.view-tabs{display:flex;padding:3px;border-radius:9px;border:1px solid #3b3643;background:#151518;gap:3px}.view-tabs button{background:none;padding:7px 15px;border-radius:6px;font-size:10px;color:#ada5b7}.view-tabs button[aria-pressed=true]{background:#3a3046;color:#e6dced}.small-muted{color:#a39aaa;font-size:9px}.tree-top>.text-button{margin-left:auto;font-size:9px;white-space:nowrap}.tree-toolbar{display:flex;align-items:center;gap:9px;padding:16px 20px 12px}.search-wrap{position:relative;flex:1}.search-wrap>span{position:absolute;left:13px;top:5px;font-size:25px;color:#b0a0bf}.search-wrap input{padding:11px 12px 11px 38px;border-radius:10px;font-size:11px;background:#212126;border-color:#3d3a43;min-height:40px}.tree-toolbar .secondary{font-size:10px;min-height:40px;padding:8px 12px;background:#25212d}.icon-button{background:none;border:1px solid #45404e;border-radius:9px;width:36px;height:36px;display:grid;place-items:center;font-size:19px;color:#bfb2cd}.tree-toolbar .icon-button{height:40px;width:40px}.viewport{height:470px;position:relative;overflow:hidden;touch-action:none;cursor:grab;background-image:radial-gradient(#82768e30 .7px,transparent .7px);background-size:19px 19px;outline-offset:-4px}.viewport.dragging{cursor:grabbing}.scene{position:absolute;transform-origin:0 0;will-change:transform;inset:0}.scene svg{position:absolute;inset:0;overflow:visible;pointer-events:none}.scene path{fill:none;stroke:#74647e;stroke-width:1.4}.scene path.couple-line{stroke:#b899cc;stroke-width:1.7}.person-node{position:absolute;width:174px;height:80px;border-radius:13px;border:1px solid #514558;background:linear-gradient(115deg,#28232e,#242128);display:flex;align-items:center;gap:10px;padding:12px;text-align:left;box-shadow:0 8px 18px #0002;cursor:pointer}.person-node:hover{border-color:#b4a0c3;background:#332c3d;transform:translateY(-2px)}.person-node.selected{border-color:#bdaaCA;box-shadow:0 0 0 3px #ad8dcc24,0 8px 24px #0003;background:#3b3047}.node-avatar{height:35px;width:35px;border-radius:50%;background:#43364e;color:#e4d6ed;display:grid;place-items:center;flex-shrink:0;font-family:Georgia,serif;font-size:14px;border:1px solid #70607b}.person-node.female .node-avatar{background:#49383e;border-color:#886472;color:#e9d4dc}.person-node.private{border-style:dashed;border-color:#514a58;background:#222126}.person-node.private .node-avatar{background:#343038;border-color:#60566a;color:#b6a7c2;font-size:22px}.node-text{min-width:0;line-height:1.3}.node-name{font-size:11px;display:block;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:105px}.node-dates{display:block;font-size:9px;color:#b9aebf;margin-top:5px}.node-place{display:block;font-size:8px;color:#a99daf;margin-top:4px}.tree-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #333038;padding:12px 20px;gap:12px;font-size:9px;color:#aca1b6}.tree-bottom>span{display:flex;align-items:center;gap:7px}.legend-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#c8b2d8}.zoom-controls{display:flex;align-items:center;border:1px solid #4c4355;border-radius:9px;overflow:hidden;background:#26222d;flex-shrink:0}.zoom-controls button{background:none;width:31px;height:30px;font-size:18px}.zoom-controls output{width:53px;text-align:center;font-size:10px;color:#d9cee2}.profile{padding:22px;position:relative;display:flex;flex-direction:column;background:radial-gradient(ellipse at top,#45344f33,transparent 48%),#1e1b23;min-width:0}.profile-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.profile-top .eyebrow{font-size:8px}.profile-top .icon-button{width:25px;height:25px;border:0}.profile-avatar{margin:26px auto 14px;width:74px;height:74px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(ellipse at top left,#715881,#362c40 80%);border:1px solid #9279a5;box-shadow:0 0 0 7px #58436322;font-family:Georgia,serif;font-size:27px;color:#f1e5f6}.profile-status{text-align:center;font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:#b8a7c6}.profile h2{font-size:27px;text-align:center;margin:11px 0 7px;line-height:1.2;overflow-wrap:anywhere}.profile-dates{text-align:center;color:#b7a9c0;font-size:11px;margin-bottom:23px}.profile>.secondary{font-size:9px;padding:10px 12px;min-height:37px;border-radius:9px}.profile-tabs{display:flex;gap:18px;border-bottom:1px solid #433a4a;margin-top:25px}.profile-tabs button{font-size:10px;color:#b4a6bf;background:none;padding:0 0 12px;border-bottom:2px solid transparent}.profile-tabs button[aria-pressed=true]{color:#e7daef;border-color:#c7abd9}.profile-content{font-size:11px;padding:20px 0 12px;min-height:165px}.event{position:relative;border-left:1px solid #5d4e68;padding:0 0 19px 18px;margin-left:4px}.event:before{content:"";position:absolute;left:-3px;top:5px;width:5px;height:5px;background:#b9a2cc;border-radius:50%}.event strong{font-size:10px;font-weight:500;color:#decde9;display:block}.event span{display:block;color:#bfb0ca;font-size:10px;margin-top:5px}.event small{font-size:10px;color:#a99bb4}.profile-foot{border-top:1px solid #433849;padding-top:16px;font-size:8px;color:#b3a2bf;margin-top:auto}.profile-empty{padding:16px;border:1px dashed #61516d;border-radius:12px;color:#b9abc4;font-size:10px;line-height:1.8;margin-bottom:13px}.profile-empty strong{color:#e0d2e9;display:block;font-size:11px;margin-bottom:4px;font-weight:500}.profile-content h3{font-size:11px;letter-spacing:0;margin-bottom:11px;color:#d3c0df}.relation-button{display:block;width:100%;background:#2c2633;border:1px solid #4b3f55;border-radius:9px;padding:9px 11px;margin:7px 0;text-align:left;font-size:11px;color:#dfcde9}.relation-group{margin-bottom:19px}.relation-group>span{display:block;color:#b2a1bf;font-size:9px;margin-bottom:7px}.workspace-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:18px 0 35px}.workspace-foot p{font-size:10px}.workspace-foot .text-button{font-size:9px}.results{position:absolute;z-index:15;top:47px;left:0;right:0;border:1px solid #756382;border-radius:12px;background:#29222f;box-shadow:0 15px 35px #0008;max-height:250px;overflow:auto;padding:6px}.results button{width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border-radius:7px;padding:10px;text-align:left;font-size:11px;color:#e3d5ed}.results button:hover{background:#45364e}.results small{font-size:9px;color:#b8a3c7}.results p{font-size:11px;padding:12px}.people-list{height:470px;overflow:auto;padding:10px 20px}.people-row{width:100%;display:flex;align-items:center;gap:13px;background:none;border-bottom:1px solid #38313f;padding:14px 6px;text-align:left}.people-row strong{font-size:12px;font-weight:450;display:block}.people-row small{font-size:10px;color:#b9a5c7}.people-row>span:last-child{margin-left:auto;color:#bfa5d0}.empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px;background:#1b191eee}.empty>span{font-size:46px;color:#b6a1c6}.empty h2{font-size:28px;max-width:330px;margin:15px 0}.empty p{font-size:12px;line-height:1.8}.empty button{margin-top:25px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:14px 21px;background:#352a3e;border:1px solid #8e70a3;border-radius:14px;color:#e9dcf1;z-index:100;font-size:12px;max-width:90vw}.profile-overlay{display:none}.motion-reduced *,.motion-reduced *:before,.motion-reduced *:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
@media(min-width:1580px){footer{margin-left:auto;margin-right:auto}}@media(max-width:1150px){.tree-layout{grid-template-columns:minmax(0,1fr) 270px}.profile{padding:19px}.tree-top{padding:15px}.tree-top .small-muted{display:none}.access{gap:7%;margin-top:30px}.access h1{font-size:67px}.stat{padding:20px;gap:13px}.privacy-card{padding:18px;gap:14px}.privacy-card div>span{font-size:9px}.workspace-heading h1{font-size:48px}.viewport,.people-list{height:450px}}
@media(max-width:850px){.access{gap:4%;grid-template-columns:1fr 1fr}.access h1{font-size:55px}.login-card{padding:27px}.login-card h2{font-size:29px}.access-intro>p{font-size:13px}.bento-stats{grid-template-columns:1fr 1fr}.privacy-card{grid-column:1/-1;min-height:90px}.privacy-card strong br{display:none}.tree-layout{grid-template-columns:1fr}.profile{display:none}.profile.open{display:flex;position:fixed;right:20px;top:30px;bottom:25px;width:320px;z-index:40;box-shadow:0 0 0 100vmax #08070bbf;overflow:auto}.workspace-heading h1{font-size:43px}.workspace-description p{display:none}.workspace-description{padding-bottom:8px}.viewport,.people-list{height:510px}.workspace-foot{align-items:flex-start}.workspace-foot p{max-width:65%}.tree-top .small-muted{display:block}.profile-content{min-height:190px}}
@media(max-width:600px){header{height:85px;padding:0 22px}.preview-bar{padding:0 22px;font-size:8px;height:30px}.preview-bar>span:last-child{display:none}main{padding:0 18px}.brand{font-size:16px;gap:9px}.mark{height:35px;width:33px;font-size:24px}nav{gap:12px}.nav-muted{display:none}.private-tag{font-size:10px;padding:6px 10px}.private-tag>span{font-size:16px}.quiet{font-size:9px}body:has(#workspace:not([hidden])) .private-tag{display:none}.access{grid-template-columns:1fr;gap:30px;margin:20px 0 40px}.access-intro{padding:0 10px}.access h1{font-size:53px;margin:18px 0 19px}.access-intro>p{font-size:13px;line-height:1.7}.heritage-art{display:none}.login-card{padding:27px 25px}.login-card h2{font-size:30px}.login-card>.card-top{margin-bottom:22px}.login-card>p{font-size:12px}.demo-card{padding:23px;gap:10px}.demo-card h3{font-size:21px}.demo-card p{font-size:10px}.demo-card .eyebrow{font-size:8px}footer{margin:0 22px;flex-wrap:wrap;gap:12px 25px;padding:23px 0;font-size:9px}footer>span:last-child{width:100%;margin:0}.workspace-heading{display:block;margin:23px 4px}.workspace-heading h1{font-size:38px;line-height:1.1;margin:14px 0 17px;max-width:330px}.workspace-heading .eyebrow{font-size:8px}.workspace-description{padding:0}.bento-stats{gap:10px;margin-bottom:12px}.stat{padding:17px 15px;min-height:92px;gap:10px;border-radius:19px}.stat-icon{height:32px;width:32px;font-size:23px;border-radius:11px}.stat strong{font-size:25px}.stat div>span{font-size:8px;line-height:1.35;display:block;max-width:75px;margin-top:3px}.stat-number{font-size:8px;right:12px;top:10px}.privacy-card{padding:17px 19px;border-radius:19px;gap:16px;min-height:92px}.privacy-card strong{font-size:13px;line-height:1.5}.privacy-card strong br{display:initial}.privacy-card div>span{font-size:8px;max-width:245px;line-height:1.65}.privacy-icon{font-size:30px}.tree-card{border-radius:20px}.tree-top{padding:14px;gap:8px}.tree-top .small-muted{display:none}.tree-top .text-button{font-size:9px}.view-tabs button{padding:7px 12px}.tree-toolbar{padding:12px;gap:7px}.tree-toolbar .secondary{padding:8px 11px;font-size:17px;width:39px;height:39px;justify-content:center}.tree-toolbar .secondary span{display:none}.tree-toolbar .icon-button{width:36px;height:39px}.search-wrap input{font-size:10px;padding-left:30px;padding-right:5px}.search-wrap>span{left:10px;top:7px;font-size:21px}.viewport,.people-list{height:440px}.tree-bottom{padding:11px 12px;gap:9px;font-size:8px;min-height:56px}.tree-bottom>span{max-width:60%;line-height:1.5}.zoom-controls output{width:43px;font-size:9px}.zoom-controls button{width:28px}.workspace-foot{margin:15px 4px 28px;gap:15px}.workspace-foot p{font-size:9px;max-width:60%;line-height:1.7}.workspace-foot .text-button{font-size:8px;max-width:90px;text-align:right}.profile.open{width:auto;left:12px;right:12px;top:auto;bottom:12px;max-height:85dvh;border-radius:25px;padding:23px}.profile-avatar{margin-top:18px;width:60px;height:60px;font-size:23px}.profile h2{font-size:26px}.profile-dates{margin-bottom:16px}.profile-content{min-height:150px}.profile-tabs{margin-top:20px}.profile-foot{padding-top:13px}.profile-empty{margin-bottom:8px}.empty h2{font-size:24px}.empty p{font-size:11px}.people-list{padding:7px 13px}.people-row strong{font-size:11px}.chip{font-size:8px}}
.tree-layout.profile-closed{grid-template-columns:1fr}.tree-layout.profile-closed>.profile{display:none}
@media(min-width:601px) and (max-width:760px){.access{grid-template-columns:1fr;gap:30px;max-width:520px;margin:25px auto 40px}.access-intro{padding:0}.heritage-art{display:none}.access h1{font-size:58px}.access-intro>p{font-size:14px}.login-card{padding:30px}.access-side{padding:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* Alignement sur les valeurs mesurées sur www.hudecek.fr, 07/11/2026. */
body{font-size:15px;line-height:1.6}h1,h2,h3{font-weight:530;letter-spacing:-.04em}header,main{max-width:1240px;padding-left:32px;padding-right:32px}header{height:100px}.brand{font-size:15px;font-weight:550;letter-spacing:-.035em;gap:12px}.mark{font-family:inherit;font-weight:550;font-size:25px;line-height:36px;width:40px;height:40px;display:block;text-align:center;border-radius:12px;background:#35303f;border:1px solid #4c4656;letter-spacing:inherit}.brand-dot{display:block;width:5px;height:5px;border-radius:50%;background:#b7abc9;margin:4px 0 0 1px;font-size:0}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.13em;line-height:1.5;color:#b7abc9}.access{margin-top:30px;gap:7%;grid-template-columns:1.1fr 1fr}.access-intro{padding-top:20px}.access h1{font-size:clamp(38px,4.5vw,54px);line-height:1.09;letter-spacing:-.045em;margin:20px 0 25px}.access-intro>p{font-size:14px;line-height:1.6}.login-card h2{font-size:28px;line-height:1.18}.login-card>p{font-size:14px;line-height:1.6}label{font-size:13px}input{font-size:14px}.label-row button,.text-button,.quiet{font-size:12px}.primary,.secondary{font-size:13px}.invitation-note{font-size:12px;line-height:1.6}.workspace-heading h1{font-size:clamp(38px,4.5vw,54px);line-height:1.09}.workspace-description p{font-size:14px}.chip{font-size:11px}.stat div>span{font-size:12px}.privacy-card div>span{font-size:11px}.privacy-card strong{font-size:16px}.small-muted{font-size:11px}.view-tabs button{font-size:12px}.tree-top>.text-button{font-size:11px}.search-wrap input{font-size:13px}.tree-toolbar .secondary{font-size:12px}.profile-top .eyebrow{font-size:10px}.profile-status{font-size:10px}.profile h2{font-size:26px}.profile-dates{font-size:12px}.profile>.secondary{font-size:12px}.profile-tabs button{font-size:12px}.profile-content,.event strong,.event span,.event small{font-size:12px}.profile-empty{font-size:12px}.profile-empty strong,.profile-content h3{font-size:13px}.relation-button{font-size:13px}.relation-group>span{font-size:11px}.profile-foot{font-size:10px;line-height:1.6}.node-name{font-size:12px}.node-dates{font-size:10px}.node-place{font-size:9px}.tree-bottom{font-size:11px}.workspace-foot p,.workspace-foot .text-button{font-size:12px}.people-row strong{font-size:14px}.people-row small{font-size:12px}.workspace-foot p{max-width:70%}footer{font-size:11px;max-width:1176px;margin-left:auto;margin-right:auto}footer>span:first-child{font-size:15px;letter-spacing:-.035em}.message{font-size:12px}.skip{top:-100px}.skip:not(:focus-visible){clip-path:inset(100%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.skip:focus-visible{clip-path:none;top:10px;width:auto;height:auto}.tree-top{flex-wrap:wrap}.person-node{height:86px}.profile{padding:22px}.tree-layout{grid-template-columns:minmax(0,1fr) 315px}
.validation-controls{margin:0;padding:14px max(22px,calc((100% - 1176px)/2));background:#25202c;border-top:1px solid #55485f;border-bottom:1px solid #55485f;color:#d7c7e1;font-size:11px}.validation-controls>span{font-size:10px;letter-spacing:.12em}.validation-controls>div{display:flex;flex-wrap:wrap;gap:9px;margin:10px 0}.validation-controls button{background:#39303f;border:1px solid #7b658c;border-radius:8px;padding:8px 12px;font-size:12px}.validation-controls p{font-size:11px;color:#c0b2cb}.admin-heading{display:flex;align-items:flex-end;gap:24px;justify-content:space-between;margin:35px 0}.admin-heading h1{font-size:clamp(34px,4vw,50px);line-height:1.12;margin:16px 0 20px;max-width:700px}.admin-heading p{font-size:14px;max-width:650px}.admin-heading>.chip{flex-shrink:0}.admin-layout{display:grid;grid-template-columns:minmax(0,365px) minmax(0,1fr);gap:20px;margin-bottom:45px}.admin-add,.admin-roster{padding:28px}.admin-add{background:radial-gradient(ellipse at top right,#44364f55,transparent 68%),#1c1c20}.admin-layout h2{font-size:26px;line-height:1.2;margin:16px 0}.admin-layout p{font-size:14px;line-height:1.6}.admin-add label{margin-top:20px}.admin-add label:first-child{margin-top:0}.optional{font-size:11px;color:#a99db4}.admin-layout .admin-disclaimer{border-top:1px solid #4a4052;padding-top:20px;margin-top:25px;font-size:12px;color:#bdb0c8}.admin-roster-heading{display:flex;align-items:center;gap:15px;justify-content:space-between}.admin-roster-heading .chip{white-space:nowrap}.admin-roster h2{font-size:24px}.access-list{margin-top:25px}.access-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 0;border-top:1px solid #403747}.access-row-info{min-width:0}.access-row strong{display:block;font-size:14px;font-weight:500;overflow-wrap:anywhere}.access-row-meta{display:flex;align-items:center;gap:12px;margin-top:9px;flex-wrap:wrap;font-size:11px;color:#b9a9c4}.access-status{display:inline-block;color:#cfe4d6;background:#2d3d33;border:1px solid #566b5e;padding:3px 8px;border-radius:30px}.access-status.suspended{background:#383039;border-color:#736174;color:#d3becd}.access-row button{font-size:12px;white-space:nowrap;padding:8px 12px;min-height:40px}.admin-layout .admin-note{border-top:1px solid #403747;padding-top:22px;margin-top:20px;font-size:12px}.admin-roster>.profile-empty{margin-top:25px}
@media(max-width:1000px){.brand{font-size:14px}.tree-layout{grid-template-columns:minmax(0,1fr) 280px}.admin-layout{grid-template-columns:minmax(0,330px) minmax(0,1fr)}.admin-roster-heading{align-items:flex-start;flex-direction:column}.admin-add,.admin-roster{padding:23px}}
@media(max-width:850px){.tree-layout{grid-template-columns:1fr}.admin-heading{display:block}.admin-heading>.chip{margin-top:20px}.admin-layout{grid-template-columns:1fr}.admin-roster-heading{flex-direction:row;align-items:center}}
@media(max-width:760px){header,main{padding-left:20px;padding-right:20px}header{height:85px}.access{grid-template-columns:1fr;max-width:520px;margin-top:24px;gap:30px}.access h1,.workspace-heading h1{font-size:clamp(34px,6vw,44px)}.access-intro{padding:0}.access-intro>p{font-size:14px}.workspace-description p{display:none}.heritage-art{display:none}nav{font-size:12px;gap:14px}.workspace-foot{align-items:flex-start}.workspace-foot p{max-width:65%;font-size:11px}.workspace-foot .text-button{font-size:11px}.tree-top .small-muted{display:none}footer{margin-left:20px;margin-right:20px}.admin-heading h1{font-size:38px}}
@media(max-width:480px){.brand{font-size:14px;gap:8px}.mark{width:35px;height:35px;line-height:31px;font-size:23px}.brand-dot{display:none}.access h1,.workspace-heading h1,.admin-heading h1{font-size:35px;line-height:1.13}.access h1{margin:18px 0 23px}.login-card h2{font-size:25px}.login-card>p{font-size:14px}.eyebrow{font-size:10px}.login-card{padding:25px}.invitation-note{font-size:11px}.chip{font-size:10px}.stat div>span{font-size:10px}.privacy-card strong{font-size:14px}.privacy-card div>span{font-size:10px}.tree-toolbar .secondary{font-size:17px}.tree-toolbar input{font-size:12px}.tree-top>.text-button{font-size:10px}.tree-bottom{font-size:10px}.workspace-foot p{font-size:11px}.workspace-foot .text-button{font-size:10px}nav{gap:10px}.quiet{font-size:10px}.admin-roster-heading{display:block}.admin-roster-heading>.chip{margin-top:5px}.admin-layout h2{font-size:24px}.access-row{align-items:flex-start}.access-row button{font-size:11px;padding:7px 9px}.access-row strong{font-size:13px}.admin-add,.admin-roster{padding:22px}.admin-heading{margin:24px 0}.validation-controls button{font-size:11px}.validation-controls p{font-size:10px}}
.access-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.access-actions .secondary{white-space:normal}
#password-form h3,#password-form .message{margin-bottom:12px}
#password-form label[for="confirm-password"]{margin-top:14px}
#password-link-panel>div{min-width:0;width:100%}
#password-link-panel .quiet{margin-right:12px}
@media(max-width:600px){.access-row{flex-wrap:wrap}.access-actions{justify-content:flex-start;width:100%}}

.gedcom-section{margin:12px 0}.gedcom-section summary{cursor:pointer;font-weight:600}.gedcom-fields{list-style:none;padding:0 0 0 10px;margin:8px 0;border-left:1px solid #4e435a}.gedcom-fields li{margin:7px 0}.gedcom-value{display:block;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted)}

.scene .family-route path{stroke:#8d779d;stroke-width:1.65;stroke-linecap:round}.scene .family-route circle{fill:#aa93bb;stroke:#19151d;stroke-width:1.5}.scene .family-route.is-related path{stroke:#d3b7e5;stroke-width:2.4}.scene .family-route.is-related circle{fill:#e3c9f1}

.person-node,.family-route{transition:opacity .18s ease}
.person-node.branch-near{opacity:.38}
.person-node.branch-distant{opacity:.17}
.person-node.branch-near:is(:hover,:focus-visible),.person-node.branch-distant:is(:hover,:focus-visible){opacity:1}
.family-route.branch-near{opacity:.24}
.family-route.branch-distant{opacity:.06}
.branch-actions{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:4px}
.branch-actions .text-button{padding:4px 0;text-decoration:underline;text-underline-offset:3px}
@media(min-width:851px){#open-profile{display:none}}
@media(prefers-reduced-motion:reduce){.person-node,.family-route{transition:none}}
.motion-reduced :is(.person-node,.family-route){transition:none}
