@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600&family=Instrument+Serif:ital@0;1&display=swap";.password-field{border-bottom:1px solid #5d7c71;align-items:center;display:flex}.password-field input{border-bottom:0!important}.password-field button{color:#e7d69d;background:0 0;border:0;flex:none;font-family:DM Mono;font-size:10px}:root{color:#183c36;font-synthesis:none;background:#f6f3ed;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{background:#f6f3ed;min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #e5aa5b}.app-shell{max-width:1440px;min-height:100vh;margin:0 auto;overflow:hidden}.topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:3;background:#f6f3eddd;border-bottom:1px solid #d9dbd3;justify-content:space-between;align-items:center;height:73px;padding:0 20px;display:flex;position:relative}.wordmark{color:#183c36;letter-spacing:-.055em;font-family:Instrument Serif,serif;font-size:28px;text-decoration:none}.wordmark span{color:#b2603e}.wordmark i{color:#6d766b;letter-spacing:.06em;vertical-align:middle;margin-left:5px;font-family:DM Mono,monospace;font-size:12px;font-style:normal}.top-actions{align-items:center;gap:10px;display:flex}.icon-button{color:#183c36;background:0 0;border:1px solid #ccd1c8;border-radius:50%;width:36px;height:36px;font-family:Instrument Serif;font-size:21px}.account-button{color:#56675e;text-underline-offset:4px;background:0 0;border:0;font-size:11px;text-decoration:underline}.button,.outline-button{color:#fffdf8;background:#183c36;border:0;border-radius:100px;padding:13px 18px;font-size:14px;font-weight:600;transition:transform .2s,background .2s}.button:hover{background:#28544c;transform:translateY(-1px)}.button span{vertical-align:-1px;margin-left:6px;font-size:18px}.button-small{padding:9px 13px;font-size:12px}.button-small span{font-size:15px}.intro{background:radial-gradient(circle at 80% 13%,#dfd6b1 0,#dfd6b100 31%),#f6f3ed;padding:63px 21px 42px}.eyebrow{color:#677169;letter-spacing:.11em;text-transform:uppercase;margin:0 0 11px;font-family:DM Mono,monospace;font-size:10px;font-weight:500}.intro h1,h2{letter-spacing:-.05em;margin:0;font-weight:400}.intro h1{max-width:540px;font-family:Instrument Serif,serif;font-size:clamp(53px,15vw,91px);line-height:.86}.intro h1 em{color:#b2603e}.intro-copy{color:#59665e;max-width:360px;margin:28px 0 19px;font-size:15px;line-height:1.55}.privacy-note{color:#415a4f;align-items:center;gap:7px;font-size:12px;display:inline-flex}.privacy-note span{color:#b2603e;font-size:18px}.intro.compact{padding-bottom:39px}.intro.compact .intro-copy{margin-bottom:0}.tree-section{background:#e8ece2;padding:32px 0 0}.section-heading{justify-content:space-between;align-items:flex-end;gap:16px;padding:0 20px 21px;display:flex}.section-heading h2,.archive-actions h2{font-size:24px;line-height:1.05}.text-button{color:#a05132;text-underline-offset:4px;white-space:nowrap;background:0 0;border:0;padding:4px 0;font-size:12px;font-weight:600;text-decoration:underline}.family-breadcrumbs{color:#718077;white-space:nowrap;scrollbar-width:none;align-items:center;gap:7px;margin:-8px 20px 20px;padding:3px 0;font-family:DM Mono,monospace;font-size:10px;display:flex;overflow:auto}.family-breadcrumbs::-webkit-scrollbar{display:none}.family-breadcrumbs span{align-items:center;gap:7px;display:inline-flex}.family-breadcrumbs button{color:#53675c;max-width:150px;font:inherit;text-overflow:ellipsis;text-underline-offset:3px;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:2px 0;-webkit-text-decoration:underline #a9b8a9;text-decoration:underline #a9b8a9;overflow:hidden}.family-breadcrumbs button:hover{color:#183c36}.family-breadcrumbs b{color:#a4aea3;font-weight:400}.family-breadcrumbs strong{color:#183c36;text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-weight:500;overflow:hidden}.tree-toolbar{align-items:end}.tree-search{color:#7c887d;background:#f6f3ed;border:1px solid #c5cec2;border-radius:30px;align-items:center;gap:5px;width:125px;padding:7px 9px;display:flex}.tree-search input{color:#183c36;background:0 0;border:0;outline:0;width:100%;font-size:12px}.notice{color:#74432e;background:#f4e5d8;border-left:3px solid #b2603e;margin:-4px 20px 15px;padding:9px 12px;font-size:12px}.empty-state{color:#f9f7f1;text-align:center;background:#183c36;min-height:435px;padding:54px 26px 36px}.seedling{color:#e5aa5b;border:1px solid #618179;border-radius:50%;place-items:center;width:60px;height:60px;margin:0 auto 24px;font-size:23px;display:grid}.empty-state h2{max-width:345px;margin:auto;font-family:Instrument Serif;font-size:40px;line-height:.96}.empty-state p{color:#cad8cf;max-width:310px;margin:20px auto 29px;font-size:14px;line-height:1.55}.empty-state .button{color:#183c36;background:#e7d69d}.tree-frame{scrollbar-color:#a9b8a9 transparent;background:#e8ece2;border-top:1px solid #d3d9ce;position:relative;overflow:auto}.tree-hint{z-index:2;color:#657169;background:#f6f3edcc;border:1px solid #d2d9cf;border-radius:30px;width:max-content;margin:12px;padding:6px 9px;font-size:10px;position:sticky;top:12px;left:14px}.tree-canvas{background-image:radial-gradient(#c0cbbd 1px,#0000 1px);background-size:17px 17px;margin-top:-40px;position:relative}.connections{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.connections path{fill:none;stroke:#afbcad;stroke-width:1.5px}.person-card{color:#183c36;background:#fffdfa;border:1px solid #becfc1;border-top:4px solid #4f7c6d;border-radius:11px;width:176px;min-height:152px;transition:transform .2s,box-shadow .2s;position:absolute;transform:translate(-50%,-50%);box-shadow:0 5px 12px #27483c12}.person-card:hover,.person-card.is-focus{transform:translate(-50%,calc(-50% - 3px));box-shadow:0 8px 22px #27483c24}.person-card.is-focus{outline-offset:3px;outline:2px solid #e5aa5b}.person-card-main{color:#183c36;text-align:left;background:0 0;border:0;border-radius:8px;width:100%;min-height:148px;padding:15px 13px}.person-card strong,.person-card small{display:block}.person-card strong{max-width:113px;margin-top:-37px;font-size:14px;line-height:1.2}.person-card small{color:#718077;margin-top:9px;font-family:DM Mono;font-size:10px}.monogram,.profile-mark{color:#fffdf8;background:#4f7c6d;border-radius:50%;place-items:center;width:36px;height:36px;margin-left:auto;font-family:Instrument Serif;font-size:16px;display:grid;overflow:hidden}.person-card-main img,.profile-mark img{object-fit:cover;border-radius:50%;width:36px;height:36px}.collapse-button{z-index:2;color:#183c36;background:#f6f3ed;border:1px solid #93aa99;border-radius:50%;width:25px;height:25px;padding:0;font-size:17px;line-height:1;position:absolute;bottom:-10px;right:-10px}.branch-clay{border-color:#d6ae9d}.branch-clay .monogram,.branch-clay.profile-mark{background:#b2603e}.branch-gold{border-color:#ddca83}.branch-gold .monogram,.branch-gold.profile-mark{background:#b28b30}.branch-plum{border-color:#ccb9c5}.branch-plum .monogram,.branch-plum.profile-mark{background:#76545f}.archive-actions{background:#d8d0b2;gap:25px;padding:50px 21px;display:grid}.archive-actions h2{max-width:460px;font-family:Instrument Serif;font-size:37px;line-height:.96}.archive-actions p:not(.eyebrow){color:#515d55;max-width:475px;font-size:14px;line-height:1.55}.backup-buttons{flex-wrap:wrap;align-self:end;gap:9px;display:flex}.outline-button{color:#183c36;background:0 0;border:1px solid #677169;padding:10px 14px;font-size:12px}.outline-button:hover{background:#eee8d1}.outline-button:disabled{opacity:.45;cursor:not-allowed}footer{color:#778178;letter-spacing:.04em;justify-content:space-between;gap:10px;padding:19px 20px;font-family:DM Mono;font-size:9px;display:flex}.profile-sheet{z-index:5;max-height:87vh;padding:32px 21px calc(28px + env(safe-area-inset-bottom));background:#fffdfa;border-radius:22px 22px 0 0;position:fixed;bottom:0;left:0;right:0;overflow:auto;box-shadow:0 -12px 40px #183c3633}.close-button{color:#183c36;background:#fffdfa;border:1px solid #d5d9d1;border-radius:50%;width:33px;height:33px;font-size:25px;line-height:0;position:absolute;top:14px;right:17px}.profile-mark{width:50px;height:50px;margin:0 0 22px;font-size:21px}.profile-sheet h2,.editor-modal h2{margin-bottom:24px;font-family:Instrument Serif;font-size:41px;line-height:.95}.edit-form{gap:15px;display:grid}.edit-form label{color:#637067;letter-spacing:.04em;gap:6px;font-family:DM Mono;font-size:10px;display:grid}.edit-form input,.edit-form textarea,.edit-form select{color:#183c36;letter-spacing:0;resize:vertical;background:0 0;border:0;border-bottom:1px solid #c9d1c7;border-radius:0;width:100%;padding:10px 0;font-family:DM Sans;font-size:15px}.edit-form select{padding-bottom:9px}.two-up{grid-template-columns:1fr 1fr;gap:14px;display:grid}.save-button{justify-self:start;margin-top:2px}.relative-actions{border-top:1px solid #e2e5df;gap:0;margin-top:27px;padding-top:23px;display:grid}.relative-actions p{margin-bottom:8px}.relative-actions button{color:#183c36;text-align:left;background:0 0;border:0;border-bottom:1px solid #e2e5df;justify-content:space-between;padding:11px 0;font-size:14px;display:flex}.relative-actions span{color:#a05132}.modal-backdrop{z-index:7;background:#183c367d;align-items:flex-end;display:flex;position:fixed;inset:0}.editor-modal{width:100%;max-height:92vh;padding:34px 22px calc(29px + env(safe-area-inset-bottom));background:#fffdfa;border-radius:22px 22px 0 0;position:relative;overflow:auto}.editor-modal .button{justify-self:start;margin-top:6px}.help-modal ol{color:#526159;gap:18px;padding-left:19px;font-size:14px;line-height:1.45;display:grid}.help-modal b{color:#183c36}.edit-form label span{color:#89938a;text-transform:none;font-size:9px}.danger-button{color:#a1402d;text-align:left;background:0 0;border:0;border-bottom:1px solid #e2e5df;justify-content:space-between;padding:11px 0;font-size:14px;display:flex}.auth-shell{background:#f6f3ed;min-height:100vh;display:grid}.auth-intro{background:radial-gradient(circle at 80% 10%,#ddd4ad 0,#ddd4ad00 32%),#f6f3ed;padding:42px 21px 51px}.auth-intro .wordmark{margin-bottom:82px;display:inline-block}.auth-intro h1{letter-spacing:-.055em;margin:0;font-family:Instrument Serif;font-size:clamp(52px,15vw,80px);font-weight:400;line-height:.87}.auth-intro h1 em{color:#b2603e}.auth-intro>p:last-child{color:#59665e;max-width:330px;margin:26px 0 0;font-size:14px;line-height:1.6}.auth-card{background:#183c36;padding:40px 21px}.auth-card .eyebrow{color:#b8d1c4}.auth-card h2{color:#fffdf8;letter-spacing:-.05em;margin:0 0 27px;font-family:Instrument Serif;font-size:43px;font-weight:400}.auth-card .edit-form label{color:#c2d0c7}.auth-card .edit-form input{color:#fffdf8;border-color:#5d7c71}.auth-card .button{color:#183c36;background:#e7d69d;width:max-content;margin-top:8px}.auth-card .button:disabled{opacity:.65}.auth-switch{color:#e7d69d;margin-top:24px;display:block}.auth-note{color:#a7bbb0;max-width:370px;margin:40px 0 0;font-size:11px;line-height:1.55}.form-error{color:#ffc5a8;margin:0;font-size:12px}.loading-screen{color:#526159;background:#f6f3ed;place-items:center;min-height:100vh;font-family:Instrument Serif;font-size:31px;display:grid}@media (width>=700px){.topbar{height:82px;padding:0 47px}.intro{padding:103px 8vw 82px}.tree-section{padding-top:53px}.section-heading{padding:0 8vw 29px}.empty-state{min-height:450px;padding-top:72px}.archive-actions{grid-template-columns:1fr auto;align-items:end;padding:70px 8vw}.profile-sheet{border-radius:0;width:408px;max-height:100vh;padding:46px 35px;top:0;left:auto;box-shadow:-12px 0 40px #183c3633}.modal-backdrop{justify-content:center;align-items:center}.editor-modal{border-radius:17px;width:min(600px,100vw - 32px);max-height:90vh;padding:44px}.two-up{gap:23px}footer{padding:21px 8vw}.auth-shell{grid-template-columns:minmax(400px,1.15fr) 1fr}.auth-intro{padding:66px 9vw}.auth-card{flex-direction:column;justify-content:center;padding:64px min(10vw,128px);display:flex}}.family-toolbar{align-items:flex-start}.navigator-controls{grid-template-columns:1fr auto;gap:8px;min-width:min(100%,340px);display:grid;position:relative}.tree-search{width:100%;min-width:0}.home-button{white-space:nowrap}.people-results{z-index:4;background:#fffdfa;border:1px solid #c5cec2;border-radius:13px;gap:2px;margin:0;padding:6px;list-style:none;display:grid;position:absolute;top:42px;left:0;right:0;box-shadow:0 12px 28px #183c3626}.people-results button{color:#183c36;text-align:left;background:0 0;border:0;border-radius:8px;justify-content:space-between;gap:12px;width:100%;padding:10px;font-size:13px;display:flex}.people-results button:hover{background:#eef1e9}.people-results span{color:#68756d;font-family:DM Mono,monospace;font-size:9px}.family-focus{background:#f7f8f3;border-top:1px solid #d3d9ce;outline:none;scroll-margin-top:18px;display:grid;overflow:hidden}.family-sidebar{color:#fffdfa;background:#183c36;border-bottom:1px solid #d5ddd3;gap:14px;padding:24px 21px 25px;display:grid}.family-sidebar .eyebrow{color:#b8d1c4}.sidebar-person{align-items:center;gap:12px;display:flex}.sidebar-person>img,.sidebar-person>span{color:#183c36;object-fit:cover;background:#e7d69d;border:1px solid #759489;border-radius:50%;flex:none;place-items:center;width:48px;height:48px;font-family:Instrument Serif,serif;font-size:20px;display:grid;overflow:hidden}.sidebar-person h3{margin:0;font-family:Instrument Serif,serif;font-size:27px;font-weight:400;line-height:.9}.sidebar-person p,.sidebar-summary{color:#b8d1c4;margin:5px 0 0;font-size:12px;line-height:1.4}.sidebar-summary{margin:0;font-family:DM Mono,monospace;font-size:10px}.family-sidebar .button{color:#183c36;background:#e7d69d;width:max-content}.sidebar-actions{border-top:1px solid #42665e;display:grid}.sidebar-actions button{color:#f7f4e9;text-align:left;background:0 0;border:0;border-bottom:1px solid #42665e;justify-content:space-between;padding:11px 0;font-size:13px;display:flex}.sidebar-actions span{color:#e7d69d}.family-stage{background:radial-gradient(circle at 50% 2%,#e6ddbd88 0,#e6ddbd00 31%),#f7f8f3;min-width:0;padding:28px 20px 42px}.family-stage-heading{border-bottom:1px solid #d8dfd5;justify-content:space-between;align-items:end;gap:20px;padding-bottom:25px;display:flex}.family-stage-heading h2{font-family:Instrument Serif,serif;font-size:clamp(33px,6vw,48px);font-weight:400;line-height:.9}.family-stage-heading>p{color:#6b776f;text-align:right;max-width:180px;margin:0;font-size:11px;line-height:1.45}.family-tier{position:relative}.family-tier-label{color:#69766c;letter-spacing:.1em;text-transform:uppercase;margin:0 0 9px;font-family:DM Mono,monospace;font-size:9px}.family-parents{padding:25px 0 12px}.family-node-row{flex-wrap:wrap;gap:9px;display:flex}.family-node{color:#183c36;text-align:left;background:#fffdfa;border:1px solid #cad5ca;border-radius:12px;grid-template-columns:33px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:min(100%,225px);max-width:260px;padding:10px;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid;box-shadow:0 3px 10px #183c3610}.family-node:hover{border-color:#4f7c6d;transform:translateY(-2px);box-shadow:0 8px 18px #183c3620}.family-node img,.family-node-mark{color:#fffdfa;object-fit:cover;background:#4f7c6d;border-radius:50%;place-items:center;width:33px;height:33px;font-family:Instrument Serif,serif;display:grid;overflow:hidden}.family-node-copy{min-width:0}.family-node-copy small,.family-node-copy strong,.family-node-copy em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.family-node-copy small{color:#7b887e;letter-spacing:.06em;text-transform:uppercase;margin-bottom:2px;font-family:DM Mono,monospace;font-size:8px}.family-node-copy strong{font-size:13px;line-height:1.15}.family-node-copy em{color:#68766c;margin-top:3px;font-size:10px;font-style:normal}.family-node-tail{color:#a05132;text-align:right;font-family:DM Mono,monospace;font-size:9px}.focus-person-wrap{place-items:center;padding:28px 0 25px;display:grid;position:relative}.focus-connector{background:#a2b5a7;width:1px;height:32px;position:absolute;top:0}.focus-person{color:#fffdfa;text-align:center;background:#183c36;border:2px solid #d6b65c;border-radius:20px;width:min(100%,375px);padding:28px 25px 23px;transform:scale(1.025);box-shadow:0 15px 30px #183c3630}.focus-person>img,.focus-mark{color:#183c36;object-fit:cover;background:#e7d69d;border:2px solid #efdda3;border-radius:50%;place-items:center;width:70px;height:70px;margin:0 auto 17px;font-family:Instrument Serif,serif;font-size:30px;display:grid;overflow:hidden}.focus-person .eyebrow{color:#b8d1c4}.focus-person h3{margin:0;font-family:Instrument Serif,serif;font-size:39px;font-weight:400;line-height:.9}.focus-person p:not(.eyebrow){color:#d3dfd6;margin:9px 0 0;font-size:13px}.focus-person small{color:#b8d1c4;margin-top:8px;font-size:11px;display:block}.focus-person .text-button{color:#e7d69d;margin-top:16px}.family-partners{text-align:center;padding:0 0 27px}.family-partners .family-node-row{justify-content:center}.family-children{border-top:1px solid #cdd7cd;padding:25px 0 0}.family-children-heading{justify-content:space-between;align-items:end;gap:15px;margin-bottom:15px;display:flex}.family-children-heading h3{margin:0;font-family:Instrument Serif,serif;font-size:30px;font-weight:400;line-height:.92}.family-child-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,162px),1fr));gap:12px;display:grid}.family-child-grid .family-node{border-top:3px solid #b2603e;min-width:0;max-width:none;min-height:73px}.family-empty{color:#66746b;max-width:390px;margin:0;font-size:13px;line-height:1.5}.activity-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.activity-list li{border-bottom:1px solid #dde3dc;padding:14px 0}.activity-list p{color:#183c36;margin:0;font-size:14px;line-height:1.4}.activity-list small{color:#738077;margin-top:5px;font-family:DM Mono,monospace;font-size:9px;display:block}.invite-result{gap:16px;display:grid}.invite-result>p{color:#58675e;margin:0;font-size:14px;line-height:1.5}.invite-result code{overflow-wrap:anywhere;color:#183c36;background:#eef1e9;border:1px dashed #91a69a;border-radius:10px;padding:15px;font-family:DM Mono,monospace;font-size:14px;line-height:1.4;display:block}.connection-editor{border-top:1px solid #e2e5df;gap:0;margin-top:27px;padding-top:23px;display:grid}.connection-editor .eyebrow{margin-bottom:8px}.connection-editor>div{color:#536157;border-bottom:1px solid #e2e5df;justify-content:space-between;align-items:center;gap:14px;padding:10px 0;font-size:12px;line-height:1.3;display:flex}.connection-editor button{color:#a1402d;text-underline-offset:3px;background:0 0;border:0;flex:none;padding:2px 0;font-size:11px;text-decoration:underline}@media (width>=700px){.family-toolbar{align-items:flex-end}.navigator-controls{min-width:340px}.family-focus{grid-template-columns:minmax(250px,300px) minmax(0,1fr);min-height:650px}.family-sidebar{border-bottom:0;border-right:1px solid #31574f;align-content:start;padding:34px 27px}.family-stage{padding:39px clamp(30px,5vw,80px) 60px}.family-child-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media (width<=520px){.family-toolbar{display:grid}.navigator-controls{width:100%}.home-button,.family-stage-heading>p{display:none}.family-node{width:100%;max-width:none}.family-children-heading .outline-button{padding:8px 11px}}
