*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:1rem}body{overflow-wrap:break-word;min-height:100vh;margin:0}h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd{margin:0}img,svg,canvas,video{max-width:100%;display:block}svg:not([width]){height:auto}input,button,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}button,select,label,summary,[role=button]{cursor:pointer}button:disabled{cursor:not-allowed}table{border-collapse:collapse}[hidden]{display:none!important}svg.icon{flex:none;width:1.15em;height:1.15em}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:100;background:var(--skip-bg,#000);color:var(--skip-ink,#fff);border-radius:.4rem;padding:.6rem 1rem;text-decoration:none;position:absolute;top:-4rem;left:1rem}.skip-link:focus{top:1rem}:focus-visible{outline:3px solid var(--focus,currentColor);outline-offset:2px}.theme-toggle .tt{align-items:center;gap:.4em;display:none}:root:not([data-theme]) .theme-toggle .tt--system,:root[data-theme=light] .theme-toggle .tt--light,:root[data-theme=dark] .theme-toggle .tt--dark{display:inline-flex}.faq summary{list-style:none}.faq summary::-webkit-details-marker{display:none}.faq details[open] summary .icon{transform:rotate(180deg)}.toast{z-index:200;border-radius:var(--toast-radius,.6rem);background:var(--toast-bg,#111);max-width:calc(100vw - 2rem);color:var(--toast-ink,#fff);opacity:0;pointer-events:none;padding:.7rem 1.1rem;transition:opacity .2s,transform .2s;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%,1rem);box-shadow:0 6px 24px #00000040}.toast.is-shown{opacity:1;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.print-only{display:none}@media print{body.is-printing{color:#000!important;background:#fff!important}body.is-printing *{visibility:hidden}body.is-printing .print-target,body.is-printing .print-target *{visibility:visible}body.is-printing .print-target{width:100%;margin:0;position:absolute;top:0;left:0;box-shadow:none!important}body.is-printing .print-target .no-print{display:none!important}body.is-printing :has(.print-target){display:contents!important}body.is-printing :has(.print-target):before{display:none!important}body.is-printing :has(.print-target):after{display:none!important}body.is-printing :not(.print-target,.print-target *,:has(.print-target)){display:none!important}body.is-printing:has(.print-target) .print-target{position:relative}.print-only{display:block}.skip-link,.toast,.theme-toggle{display:none!important}}@font-face{font-family:Cardo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cardo-latin-400-normal-CFoX0N4J.woff2)format("woff2"),url(/assets/cardo-latin-400-normal-DBrrJcp6.woff)format("woff")}@font-face{font-family:Cardo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cardo-latin-700-normal-C0AJnwFQ.woff2)format("woff2"),url(/assets/cardo-latin-700-normal-lRoFMtMe.woff)format("woff")}@font-face{font-family:Cardo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cardo-latin-ext-400-normal-Bz9_wDRX.woff2)format("woff2"),url(/assets/cardo-latin-ext-400-normal-Cevs836X.woff)format("woff")}@font-face{font-family:Cardo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cardo-latin-ext-700-normal-DQzda8Tv.woff2)format("woff2"),url(/assets/cardo-latin-ext-700-normal-_oawv27n.woff)format("woff")}@font-face{font-family:Cardo;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cardo-latin-400-italic-DS-zTz6l.woff2)format("woff2"),url(/assets/cardo-latin-400-italic-4xrlgVMP.woff)format("woff")}@font-face{font-family:Andada Pro Variable;font-style:normal;font-display:swap;font-weight:400 840;src:url(/assets/andada-pro-vietnamese-wght-normal-ByGCW_CV.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Andada Pro Variable;font-style:normal;font-display:swap;font-weight:400 840;src:url(/assets/andada-pro-latin-ext-wght-normal-CsTSlgMo.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Andada Pro Variable;font-style:normal;font-display:swap;font-weight:400 840;src:url(/assets/andada-pro-latin-wght-normal-Bmccq1Rg.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--linen:#f4eddf;--linen-2:#ebe2cf;--card:#fbf7ee;--field:#fffdf8;--ink:#2a211c;--muted:#5a4c41;--line:#d6c8ad;--line-strong:#8c7a62;--red:#9b3226;--blue:#2b4470;--green:#4f6e47;--gold:#b8862e;--trunk:#7a5232;--on-red:#fbf4e6;--on-blue:#fff;--tint-red:#f3e0d6;--tint-blue:#dfe5ef;--tint-green:#e3eadb;--tint-gold:#f1e3c4;--weave:#6e50280b;--focus:#2b4470;--skip-bg:#2b4470;--skip-ink:#fff;--toast-bg:#2b4470;--toast-ink:#fff;--toast-radius:4px;--shadow:0 1px 0 #fff9 inset, 0 18px 40px -30px #462d148c;--band:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='18'%3E%3Cg fill='none' stroke-width='1.5' stroke-linecap='round'%3E%3Cpath stroke='%239b3226' d='M0.8 0.8l4.4 4.4m0 -4.4l-4.4 4.4M6.8 6.8l4.4 4.4m0 -4.4l-4.4 4.4M12.8 12.8l4.4 4.4m0 -4.4l-4.4 4.4M18.8 6.8l4.4 4.4m0 -4.4l-4.4 4.4'/%3E%3Cpath stroke='%232b4470' d='M0.8 12.8l4.4 4.4m0 -4.4l-4.4 4.4M12.8 0.8l4.4 4.4m0 -4.4l-4.4 4.4'/%3E%3C/g%3E%3C/svg%3E");--x:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='none' stroke='%239b3226' stroke-width='2' stroke-linecap='round' d='M2 2l8 8M10 2l-8 8'/%3E%3C/svg%3E");--display:"Cardo", "Iowan Old Style", Georgia, serif;--body:"Andada Pro Variable", "Iowan Old Style", Georgia, serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--linen:#1c1814;--linen-2:#241f1a;--card:#29231d;--field:#211c17;--ink:#f2e9da;--muted:#c9baa5;--line:#4a4036;--line-strong:#8a7a66;--red:#ef8a7c;--blue:#9db8e8;--green:#9cc08e;--gold:#e2b85e;--trunk:#c49a6c;--on-red:#1c1814;--on-blue:#141a26;--tint-red:#3d2622;--tint-blue:#232d40;--tint-green:#26301f;--tint-gold:#3a3020;--weave:#fff0d206;--focus:#9db8e8;--skip-bg:#9db8e8;--skip-ink:#141a26;--toast-bg:#9db8e8;--toast-ink:#141a26;--shadow:0 18px 40px -26px #000000e6;--band:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='18'%3E%3Cg fill='none' stroke-width='1.5' stroke-linecap='round'%3E%3Cpath stroke='%23ef8a7c' d='M0.8 0.8l4.4 4.4m0 -4.4l-4.4 4.4M6.8 6.8l4.4 4.4m0 -4.4l-4.4 4.4M12.8 12.8l4.4 4.4m0 -4.4l-4.4 4.4M18.8 6.8l4.4 4.4m0 -4.4l-4.4 4.4'/%3E%3Cpath stroke='%239db8e8' d='M0.8 12.8l4.4 4.4m0 -4.4l-4.4 4.4M12.8 0.8l4.4 4.4m0 -4.4l-4.4 4.4'/%3E%3C/g%3E%3C/svg%3E");--x:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='none' stroke='%23ef8a7c' stroke-width='2' stroke-linecap='round' d='M2 2l8 8M10 2l-8 8'/%3E%3C/svg%3E");--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--linen:#1c1814;--linen-2:#241f1a;--card:#29231d;--field:#211c17;--ink:#f2e9da;--muted:#c9baa5;--line:#4a4036;--line-strong:#8a7a66;--red:#ef8a7c;--blue:#9db8e8;--green:#9cc08e;--gold:#e2b85e;--trunk:#c49a6c;--on-red:#1c1814;--on-blue:#141a26;--tint-red:#3d2622;--tint-blue:#232d40;--tint-green:#26301f;--tint-gold:#3a3020;--weave:#fff0d206;--focus:#9db8e8;--skip-bg:#9db8e8;--skip-ink:#141a26;--toast-bg:#9db8e8;--toast-ink:#141a26;--shadow:0 18px 40px -26px #000000e6;--band:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='18'%3E%3Cg fill='none' stroke-width='1.5' stroke-linecap='round'%3E%3Cpath stroke='%23ef8a7c' d='M0.8 0.8l4.4 4.4m0 -4.4l-4.4 4.4M6.8 6.8l4.4 4.4m0 -4.4l-4.4 4.4M12.8 12.8l4.4 4.4m0 -4.4l-4.4 4.4M18.8 6.8l4.4 4.4m0 -4.4l-4.4 4.4'/%3E%3Cpath stroke='%239db8e8' d='M0.8 12.8l4.4 4.4m0 -4.4l-4.4 4.4M12.8 0.8l4.4 4.4m0 -4.4l-4.4 4.4'/%3E%3C/g%3E%3C/svg%3E");--x:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='none' stroke='%23ef8a7c' stroke-width='2' stroke-linecap='round' d='M2 2l8 8M10 2l-8 8'/%3E%3C/svg%3E");--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background-color:var(--linen);background-image:repeating-linear-gradient(0deg, var(--weave) 0 1px, transparent 1px 3px), repeating-linear-gradient(90deg, var(--weave) 0 1px, transparent 1px 3px);color:var(--ink);font-family:var(--body);font-size:1.0625rem;line-height:1.62}a{color:var(--blue);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{color:var(--red);text-decoration-thickness:2px}.wrap{width:min(1160px,100% - 32px);margin-inline:auto}h1,h2,h3,h4{font-family:var(--display);font-weight:700;line-height:1.15}.mk-leaf,.st-leaf{stroke:var(--green)}.mk-fruit,.st-red{stroke:var(--red)}.mk-trunk,.st-trunk{stroke:var(--trunk)}.st-blue{stroke:var(--blue)}.brand__mark path,.hero-motif path{fill:none;stroke-width:1.15px;stroke-linecap:round}.hero-motif path{stroke-width:1.3px}.site-header{background:var(--card);border-bottom:1px solid var(--line);padding-top:18px;position:relative}.site-header:before{content:"";background:var(--band) center top / 24px 18px repeat-x;height:18px;position:absolute;inset:0 0 auto}.site-header:after{content:"";background:repeating-linear-gradient(90deg, var(--red) 0 11px, transparent 11px 18px);opacity:.75;height:2px;position:absolute;bottom:5px;left:0;right:0}.site-header__bar{text-align:center;grid-template-columns:1fr auto 1fr;grid-template-areas:".brand toggle"".tag.";align-items:center;column-gap:1rem;padding-block:1.3rem .4rem;display:grid}.brand{min-height:44px;color:var(--ink);grid-area:brand;justify-content:center;align-items:center;gap:.65rem;text-decoration:none;display:inline-flex}.brand:hover{color:var(--ink)}.brand__mark{width:34px;height:39px}.brand__name{font-family:var(--display);letter-spacing:.01em;font-size:2.15rem;font-weight:700;line-height:1}.site-header__tag{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;grid-area:tag;font-size:.8rem}.theme-toggle{border:1.5px solid var(--line-strong);background:var(--field);min-height:42px;color:var(--ink);border-radius:3px;grid-area:toggle;justify-self:end;align-items:center;padding:0 .9rem;font-size:.9rem;font-weight:600;display:inline-flex;position:relative}.theme-toggle:after,.btn--primary:after,.site-nav a[aria-current=page]:after{content:"";opacity:.45;pointer-events:none;border:1px dashed;border-radius:1px;position:absolute;inset:4px}.theme-toggle:hover{border-color:var(--red)}.site-nav ul{flex-wrap:wrap;justify-content:center;align-items:center;gap:.15rem .35rem;padding:.35rem 0 1.05rem;list-style:none;display:flex}.site-nav li{align-items:center;gap:.35rem;display:flex}.site-nav li+li:before{content:"";background:var(--x) center / contain no-repeat;opacity:.8;width:9px;height:9px}.site-nav a{min-height:44px;color:var(--ink);font-family:var(--display);letter-spacing:.02em;border-radius:2px;align-items:center;padding:0 .85rem;font-size:1.08rem;font-weight:700;text-decoration:none;display:inline-flex;position:relative}.site-nav a:hover{color:var(--red);background:var(--tint-red)}.site-nav a[aria-current=page]{background:var(--red);color:var(--on-red)}.hero{text-align:center;justify-items:center;gap:.7rem;padding-block:1.7rem 1.4rem;display:grid}.hero-motif{width:205px;height:35px}.hero h1{max-width:30ch;margin-inline:auto;font-size:clamp(2.1rem,1.5rem + 2.4vw,3.1rem)}.lead{max-width:70ch;color:var(--muted);font-family:var(--display);margin:.6rem auto 0;font-size:1.22rem;line-height:1.5}.btn{border:1.5px solid var(--line-strong);background:var(--field);min-height:46px;color:var(--ink);font-family:var(--body);white-space:nowrap;border-radius:3px;justify-content:center;align-items:center;gap:.5rem;padding:0 1.15rem;font-size:1rem;font-weight:650;line-height:1.2;text-decoration:none;display:inline-flex;position:relative}.btn:hover:not(:disabled){border-color:var(--red);color:var(--red)}.btn:disabled{opacity:.5}.btn--primary{border-color:var(--red);background:var(--red);color:var(--on-red)}.btn--primary:hover:not(:disabled){color:var(--on-red);background:color-mix(in srgb, var(--red) 88%, #000)}.btn--small{min-height:40px;padding:0 .8rem;font-size:.92rem}.btn--quiet{border-style:dashed;border-color:var(--line-strong);background:0 0}.field{align-content:start;gap:.3rem;min-width:0;display:grid}.field label,fieldset legend{font-size:.93rem;font-weight:650}.hint{color:var(--muted);font-size:.9rem}input[type=text],input[type=number],input[type=date],input[type=time],select,textarea{border:1.5px solid var(--line-strong);background:var(--field);width:100%;min-height:44px;color:var(--ink);font-family:var(--body);border-radius:3px;padding:.45rem .7rem;font-size:1rem}textarea{resize:vertical;line-height:1.45}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.85}input:hover,select:hover,textarea:hover{border-color:var(--ink)}select:disabled{opacity:.55}[aria-invalid=true]{box-shadow:0 0 0 1px var(--red);border-color:var(--red)!important}.field-error{color:var(--red);font-size:.92rem;font-weight:600}.field-error:empty{display:none}fieldset{border:0;min-width:0;margin:0;padding:0}fieldset legend{margin-bottom:.4rem;padding:0}.check{align-items:center;gap:.6rem;min-height:44px;line-height:1.35;display:flex}.check input{width:22px;height:22px;accent-color:var(--red);flex:none;margin:0}.chips__row{flex-wrap:wrap;gap:.4rem;display:flex}.chip{border:1.5px solid var(--line-strong);background:var(--field);border-radius:3px;align-items:center;min-height:44px;padding:0 .95rem;font-size:.97rem;font-weight:650;display:inline-flex;position:relative}.chip input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.chip:hover{border-color:var(--blue)}.chip:has(input:checked){border-color:var(--blue);background:var(--blue);color:var(--on-blue)}.chip:has(input:checked):after{content:"";opacity:.5;pointer-events:none;border:1px dashed;position:absolute;inset:4px}.chip:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.status{min-height:1.7em;color:var(--muted);font-size:.95rem}.status .btn{margin-left:.4rem}.empty-row{color:var(--muted);padding:.8rem 0;font-style:normal}.tool{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:4px;padding:clamp(18px,3vw,34px);position:relative}.tool:before{content:"";border:1.5px dashed var(--red);opacity:.38;pointer-events:none;border-radius:2px;position:absolute;inset:7px}.panel{border:1px solid var(--line);background:var(--linen);border-radius:3px;padding:1.1rem 1.15rem 1.2rem}.panel h2,.rp-panel h2{align-items:center;gap:.55rem;margin-bottom:.8rem;font-size:1.4rem;display:flex}.panel h2:before{content:"";background:var(--x) center / contain no-repeat;flex:none;width:12px;height:12px}.panel__note{color:var(--muted);margin-bottom:.8rem;font-size:.95rem}.ft-example{border:1.5px dashed var(--gold);background:var(--tint-gold);border-radius:3px;flex-wrap:wrap;align-items:center;gap:.5rem .8rem;margin-bottom:1.1rem;padding:.55rem .6rem .55rem .9rem;font-size:.97rem;display:flex}.ft-example .icon{color:var(--trunk)}.ft-example p{flex:16rem}.tiles{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.8rem;display:grid}.tile{border:1px solid var(--line);background:var(--field);border-radius:3px;padding:1.15rem 1rem .9rem;position:relative;overflow:hidden}.tile:before{content:"";background:var(--band) center top / 9.33px 7px repeat-x;opacity:.85;height:7px;position:absolute;inset:0 0 auto}.tile__label{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:700}.tile__value{font-family:var(--display);margin-top:.15rem;font-size:1.6rem;font-weight:700;line-height:1.2}.tile__sub{color:var(--muted);font-size:.9rem}.tile--yes .tile__value{color:var(--green)}.table-scroll{max-width:100%;overflow-x:auto}.table-scroll:focus-visible{outline-offset:0}table{width:100%;font-size:.97rem}th,td{text-align:left;vertical-align:top;border-bottom:1px dashed var(--line);padding:.5rem .65rem}thead th{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border-bottom:2px solid var(--line-strong);white-space:nowrap;font-size:.8rem}tbody th{font-weight:650}.cell{gap:.15rem;min-width:0;display:grid}.cell__label{color:var(--muted);font-size:.8rem;font-weight:700}.row-head{display:none}.ft{grid-template-columns:minmax(0,1fr);gap:1.8rem;display:grid}.ft-top{grid-template-columns:auto minmax(0,1fr) 11rem;align-items:end;gap:.7rem 1rem;margin-bottom:1rem;display:grid}.ft-top .chips legend{margin-bottom:.3rem}.sheet{max-width:1000px;margin:0 auto}.sheet__paper{border:1px solid var(--line);aspect-ratio:1022/768;background:#fffbf3;box-shadow:0 2px #0000000a,0 22px 30px -22px #3c230a8c}.sheet[data-orient=portrait] .sheet__paper{aspect-ratio:768/1022;max-width:520px;margin-inline:auto}.sheet__svg{width:100%;height:100%}.sheet__zoom{margin:.5rem auto 0;display:none}.sheet.is-zoomed .sheet__scroll{padding-bottom:6px;overflow-x:auto}.sheet.is-zoomed .sheet__paper{width:920px;max-width:none}.sheet.is-zoomed[data-orient=portrait] .sheet__paper{width:700px}.sheet__caption{min-height:3em;color:var(--muted);margin-top:.6rem;font-size:.93rem}.sheet__warn{color:var(--red);font-weight:600}.ft-actions,.file-btns,.form-btns,.rp-btns,.rp-actions,.gaps-form__bar{flex-wrap:wrap;gap:.6rem;display:flex}.ft-actions{justify-content:center;margin-top:.4rem}.sheet__caption{text-align:center}.ft-look{border-top:1px dashed var(--line-strong);margin-top:1.4rem;padding-top:1.1rem}.ft-look legend{font-family:var(--display);margin-bottom:.7rem;font-size:1.25rem;font-weight:700}.ft-look__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem 1rem;display:grid}.field--wide{grid-column:span 2}.ft-look__checks{flex-wrap:wrap;gap:0 1.6rem;margin-top:.5rem;display:flex}.ft-outline{margin-top:1rem;font-size:.95rem}.ft-outline summary{min-height:44px;color:var(--blue);align-items:center;font-weight:650;display:inline-flex}.outline,.outline ul{border-left:1px dashed var(--line-strong);padding-left:1.1rem;list-style:none}.outline{padding-left:.8rem}.ft__edit{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:1rem 1.2rem;display:grid}.ft__edit>.panel:first-child{grid-row:span 2}.links-wrap summary{min-height:44px;color:var(--blue);align-items:center;font-weight:650;display:flex}.links-wrap[open] summary{margin-bottom:.3rem}.person-form__grid{grid-template-columns:1fr 1fr;gap:.7rem .8rem;display:grid}.connect{border:1px dashed var(--line-strong);border-radius:3px;margin-top:.9rem;padding:.7rem .8rem .8rem}.connect legend{margin-bottom:0;padding:0 .3rem}.connect__row{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.6rem .8rem;display:grid}.form-btns{margin:.9rem 0 .4rem}.person-form[data-mode=edit]{background:var(--tint-blue);border-radius:3px;margin:-.6rem;padding:.6rem}.people,.links{border-top:1px solid var(--line);max-height:25rem;padding:0;list-style:none;overflow-y:auto}.person,.link-row{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:center;gap:.6rem;padding:.55rem .1rem;display:flex}.person__text{min-width:0;line-height:1.35;display:grid}.person__name{font-weight:700}.person__meta,.person__rel{color:var(--muted);font-size:.88rem}.person__btns{flex:none;gap:.35rem;display:flex}.link-row{font-size:.95rem;line-height:1.35}.rel-word{color:var(--muted);font-style:italic}.link-form{gap:.6rem;margin-bottom:.4rem;display:grid}.link-form .btn{justify-self:start}.kin-form{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.kin-person{border:1.5px solid var(--line);border-top:5px solid var(--red);background:var(--linen);border-radius:3px;gap:.7rem;padding:1rem;display:grid}.kin-person--b{border-top-color:var(--blue)}.kin-person legend{float:left;width:100%;font-family:var(--display);margin-bottom:.1rem;font-size:1.3rem}.kin-person--a legend{color:var(--red)}.kin-person--b legend{color:var(--blue)}.kin-opts{flex-wrap:wrap;grid-column:1/-1;align-items:end;gap:.4rem 1.6rem;display:flex}.kin-opts .field{min-width:16rem}.kin-out{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1.4rem;margin-top:1.4rem;display:grid}.kin-result{border:1px solid var(--line);background:var(--field);border-radius:3px;align-content:start;gap:.55rem;min-height:19rem;padding:1.2rem 1.25rem;display:grid}.kin-headline{font-family:var(--display);color:var(--red);font-size:clamp(1.45rem,1.1rem + 1.2vw,1.9rem);font-weight:700;line-height:1.2}.kin-reverse{font-size:1.08rem;font-weight:600}.kin-also,.kin-anc,.kin-removed{color:var(--muted);font-size:.97rem}.kin-also:empty,.kin-removed:empty{display:none}.kin-dna{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:baseline;gap:.2rem .6rem;padding-top:.55rem;display:flex}.kin-dna dt{font-weight:650}.kin-dna dd{font-family:var(--display);margin:0;font-size:1.3rem;font-weight:700}.kin-dna dd span{color:var(--muted);font-size:1rem}.kin-result .btn{justify-self:start}.kin-diagram{margin:0}.kin-diagram figcaption{color:var(--muted);margin-top:.4rem;font-size:.88rem}.kd{width:100%;font-family:var(--display)}.kd-node rect{fill:var(--field);stroke:var(--line-strong);stroke-width:1.5px}.kd-node .kd-stitch{fill:none;stroke:var(--line-strong);stroke-width:1px;stroke-dasharray:3 2.5;opacity:.6}.kd-node--ca rect:first-child{fill:var(--tint-gold)}.kd-node--a rect:first-child{fill:var(--tint-red);stroke:var(--red);stroke-width:2.2px}.kd-node--b rect:first-child{fill:var(--tint-blue);stroke:var(--blue);stroke-width:2.2px}.kd-node--a .kd-stitch{stroke:var(--red)}.kd-node--b .kd-stitch{stroke:var(--blue)}.kd-title{fill:var(--ink);text-anchor:middle;font-size:16px;font-weight:700}.kd-sub,.kd-gap{fill:var(--muted);font-family:var(--body);text-anchor:middle;font-size:13px}.kd-line{fill:none;stroke:var(--trunk);stroke-width:2px}.kd-line--gap{stroke-dasharray:2 5;stroke-linecap:round}.kin-tree{margin-top:1.6rem}.kin-tree__form{grid-template-columns:1fr 1fr auto;align-items:end;gap:.8rem;display:grid}.kin-tree__out{min-height:1.6em;margin-top:.8rem;font-weight:600}.cc{margin-top:1.6rem}.cc h2{margin-bottom:.3rem;font-size:1.4rem}.cc-scroll{border:1px solid var(--line);background:var(--field);border-radius:3px;overflow-x:auto}.cc-table{border-collapse:separate;border-spacing:0;min-width:760px;font-size:.84rem}.cc-table caption{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.cc-table th,.cc-table td{vertical-align:middle;border-bottom:0;padding:3px}.cc-table thead th{letter-spacing:.05em;white-space:normal;text-align:center;color:var(--blue);padding:.5rem .3rem;font-size:.72rem}.cc-table tbody th{z-index:1;background:var(--field);color:var(--red);letter-spacing:.04em;text-transform:uppercase;max-width:7rem;padding:0 .5rem;font-size:.75rem;position:sticky;left:0}.cc-cell{border:1px solid var(--line);background:var(--linen);width:100%;min-height:48px;color:var(--ink);border-radius:2px;padding:.3rem;font-size:.8rem;line-height:1.2;display:block}.cc-cell:hover{border-color:var(--red)}.cc-cell.is-on{background:var(--red);border-color:var(--red);color:var(--on-red);font-weight:700}.gap-head,.gap-row{grid-template-columns:1.6rem minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:.6rem;display:grid}.gap-head{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;padding:0 0 .3rem;font-size:.8rem;font-weight:700}.gap-rows{gap:.55rem;margin-bottom:.9rem;padding:0;list-style:none;display:grid}.gap-row .cell__label{display:none}.gap-row__n{font-family:var(--display);color:var(--red);text-align:center;font-weight:700}.gap-row__err{grid-column:2/-1}.gaps-form .check{margin-top:.4rem}.gaps-table{min-width:540px}.gaps-out{border-top:1px dashed var(--line-strong);margin-top:1.4rem;padding-top:1.3rem}.gaps-out h3,.rp-timeline-wrap h3{margin:1.4rem 0 .6rem;font-size:1.25rem}.gen-steps{gap:.3rem;padding-left:1.3rem;display:grid}.gen-steps li::marker{color:var(--red);font-weight:700}.gen-steps__who{margin-right:.6rem;font-weight:700}.gen-steps__gap{color:var(--muted)}.notice{border-left:4px solid var(--gold);background:var(--tint-gold);margin-top:1rem;padding:.7rem .9rem}.tl-wrap{margin:0}.tl-wrap figcaption{color:var(--muted);margin-top:.4rem;font-size:.88rem}.tl{width:100%;font-family:var(--body)}.tl-grid{stroke:var(--line);stroke-width:1px}.tl-year{fill:var(--muted);text-anchor:middle;font-size:12px}.tl-overlap{fill:var(--gold);opacity:.2}.tl-now{stroke:var(--red);stroke-width:1.5px;stroke-dasharray:4 3}.tl-now-label{fill:var(--red);text-anchor:middle;font-size:11px;font-weight:700}.tl-name{fill:var(--ink);text-anchor:end;font-size:14px;font-weight:700}.tl-bar{fill:var(--green)}.tl-bar--living{fill:var(--blue)}.tl-bar--unknown{fill:var(--line);stroke:var(--line-strong);stroke-dasharray:4 3}.tl-span{fill:var(--ink);font-size:12px}.tl-span--in{fill:var(--card);font-weight:700}.gen-back{margin-top:1.6rem}.gen-back__form{grid-template-columns:repeat(3,minmax(0,12rem));gap:.8rem;display:grid}.gen-back__out{margin-top:.8rem;font-size:1.05rem}.rp,.kin,.gaps,.ft__chart,.ft__edit{min-width:0}.rp{grid-template-columns:minmax(0,1fr);gap:1.2rem;display:grid}.rp>.ft-example{margin-bottom:0}.rp-panel{border:1px solid var(--line);background:var(--linen);border-radius:3px;padding:1.15rem 1.2rem 1.25rem}.rp-panel h2 .icon{color:var(--red)}.rp-event__grid{grid-template-columns:1.4fr 11rem 1.2fr;gap:.8rem 1rem;display:grid}.rp-event__grid .field--wide{grid-column:auto}.rp-event__grid .field:last-child{grid-column:1/-1}.rp-countdown{font-family:var(--display);color:var(--blue);margin-top:.8rem;font-size:1.2rem;font-weight:700}.hh-head,.hh{grid-template-columns:minmax(0,1.4fr) minmax(0,1.1fr) 5.6rem 5.6rem minmax(0,1.3fr) 8.6rem auto;align-items:end;gap:.5rem;display:grid}.hh-head{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;padding:0 0 .3rem .7rem;font-size:.78rem;font-weight:700}.hh-list,.ex-list,.task-list,.slot-list{gap:.5rem;margin-bottom:.8rem;padding:0;list-style:none;display:grid}.hh{border:1px solid var(--line);border-left:5px solid var(--blue);background:var(--card);border-radius:3px;padding:.45rem .45rem .45rem .7rem}.hh[data-rsvp=yes]{border-left-color:var(--green)}.hh[data-rsvp=maybe]{border-left-color:var(--gold)}.hh[data-rsvp=no]{border-left-color:var(--line-strong);border-left-style:dashed}.hh .cell__label,.ex .cell__label,.task .cell__label,.slot .cell__label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.rp-split{grid-template-columns:8rem auto 12rem auto;align-items:end;gap:.6rem 1.2rem;margin-bottom:1rem;display:grid}.ex{grid-template-columns:minmax(0,2fr) 9rem minmax(0,1.3fr) auto;align-items:end;gap:.5rem;display:grid}.rp-budget{margin-top:1rem}.rp-budget h4,.rp-timeline h4{margin:1rem 0 .4rem;font-size:1.1rem}.budget-table td.pos{color:var(--green);font-weight:700}.budget-table td.neg{color:var(--red);font-weight:700}.budget-table tfoot th,.budget-table tfoot td{border-bottom:0;border-top:2px solid var(--line-strong);font-weight:700}.settle{gap:.3rem;padding-left:1.3rem;display:grid}.settle li::marker{color:var(--red)}.content li::marker{color:var(--red)}.settle-done{color:var(--green);margin-top:.8rem;font-weight:700}.rp-progress{color:var(--muted);margin:-.4rem 0 .8rem;font-weight:600}.rp-tasks{grid-template-columns:minmax(0,1fr);gap:1.2rem;display:grid}.rp-timeline-wrap{border-top:1px dashed var(--line-strong);padding-top:1rem}.rp-timeline{columns:2 22rem;column-gap:2.4rem}.rp-timeline__group{break-inside:avoid}.task{grid-template-columns:44px minmax(0,1fr) 10rem 7rem auto;align-items:center;gap:.4rem;display:grid}.task__check{place-items:center;width:44px;height:44px;display:grid}.task__check input{width:22px;height:22px;accent-color:var(--green);margin:0}.task.is-done .task__text input{color:var(--muted);text-decoration:line-through}.task.is-late .task__due input{border-color:var(--red);color:var(--red)}.rp-timeline-wrap h3{margin-top:0}.rp-timeline{padding:0;list-style:none}.rp-timeline__group{border-left:2px dashed var(--red);padding:0 0 .6rem 1rem}.rp-timeline__group h4{margin-top:0;padding-top:.5rem;position:relative}.rp-timeline__group h4:before{content:"";background:var(--linen) var(--x) center / 10px no-repeat;width:12px;height:12px;position:absolute;top:calc(.5rem + .25em);left:calc(-1rem - 7px)}.rp-timeline ul{gap:.2rem;padding:0;font-size:.93rem;list-style:none;display:grid}.rp-timeline ul li{grid-template-columns:6.3rem minmax(0,1fr) auto;gap:.5rem;display:grid}.rp-timeline__date{color:var(--muted);font-variant-numeric:tabular-nums}.rp-timeline li.is-done .rp-timeline__text{color:var(--muted);text-decoration:line-through}.rp-timeline__state{text-transform:uppercase;letter-spacing:.06em;color:var(--green);font-size:.8rem;font-weight:700}.rp-timeline li.is-late .rp-timeline__state{color:var(--red)}.slot{grid-template-columns:9rem minmax(0,1fr) auto;align-items:end;gap:.5rem;display:grid}.rp-actions{padding-top:.4rem}.rp-print{display:none}.content,.sources,.faq-section,.tools-grid,.recommended{padding-block:1.8rem}.content,.sources,.faq-section{max-width:800px;margin-inline:auto}.content{margin-top:1.6rem}.content h2,.sources h2,.faq-section h2,.tools-grid h2,.recommended h2{margin-bottom:.7rem;font-size:clamp(1.6rem,1.3rem + 1.1vw,2.1rem)}.content h2:after,.faq-section h2:after,.tools-grid h2:after,.recommended h2:after{content:"";background:repeating-linear-gradient(90deg, var(--red) 0 9px, transparent 9px 14px);width:74px;height:2px;margin-top:.45rem;display:block}.tools-grid h2:after,.recommended h2:after,.tools-grid h2,.recommended h2{text-align:center;margin-inline:auto}.content h2:not(:first-child){margin-top:2rem}.content p+p,.content p+ol,.content ol+p,.content p+ul,.content ul+p{margin-top:.8rem}.content ol,.content ul{gap:.45rem;padding-left:1.4rem;display:grid}.content li::marker{font-family:var(--display);font-weight:700}.prose h2{margin-top:1.8rem}.prose h2:first-child{margin-top:0}.callout{border:1.5px dashed var(--blue);background:var(--tint-blue);border-radius:3px;gap:.8rem;margin-top:1.6rem;padding:1rem 1.15rem;display:flex;position:relative}.callout .icon{color:var(--blue);margin-top:.25rem}.sources ul{color:var(--muted);gap:.5rem;padding-left:1.2rem;font-size:.95rem;display:grid}.sources h2{font-size:1.3rem}.section-intro{max-width:62ch;color:var(--muted);text-align:center;margin:0 auto 1.4rem}.tool-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;padding:0;list-style:none;display:grid}.tool-card{border:1px solid var(--line);background:var(--card);height:100%;color:var(--ink);text-align:center;box-shadow:var(--shadow);border-radius:3px;justify-items:center;gap:.45rem;padding:1.6rem 1.3rem 1.4rem;text-decoration:none;transition:transform .2s,border-color .2s;display:grid;position:relative}.tool-card:after{content:"";border:1.5px dashed var(--green);opacity:.4;pointer-events:none;border-radius:2px;position:absolute;inset:6px}.tool-card:hover{color:var(--ink);border-color:var(--red);transform:translateY(-3px)}svg.tool-card__icon{border:1.5px dashed var(--red);width:52px;height:52px;color:var(--red);background:var(--tint-red);border-radius:50%;padding:12px}.tool-card__name{font-family:var(--display);font-size:1.35rem;font-weight:700;line-height:1.2}.tool-card__blurb{color:var(--muted);font-size:.97rem}.rec-grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1rem;max-width:960px;margin-inline:auto;display:grid}.rec{border:1px solid var(--line);background:var(--linen-2);border-radius:3px;align-content:start;gap:.6rem;padding:2rem 1.5rem 1.3rem;display:grid;position:relative;overflow:hidden}.rec:before{content:"";background:var(--band) center top / 16px 12px repeat-x;height:12px;position:absolute;inset:0 0 auto}.rec h3{font-size:1.35rem}.rec p{color:var(--muted)}.rec__cta{align-items:center;gap:.4rem;min-height:44px;font-weight:700;display:inline-flex}.faq{border-top:1px solid var(--line-strong);display:grid}.faq details{border-bottom:1px dashed var(--line-strong)}.faq summary{min-height:54px;font-family:var(--display);justify-content:space-between;align-items:center;gap:1rem;padding:.65rem 0;font-size:1.15rem;font-weight:700;display:flex}.faq summary .icon{color:var(--red);transition:transform .2s}.faq details>div{color:var(--muted);padding:0 0 1.1rem}.not-found .nf-list{gap:.3rem;padding-left:1.2rem;display:grid}.not-found .nf-list a{font-family:var(--display);padding-block:.45rem;font-size:1.15rem;font-weight:700;display:inline-block}.not-found{max-width:800px;margin-inline:auto}.site-footer{background:var(--linen-2);border-top:1px solid var(--line);margin-top:3.5rem;padding:2.6rem 0 1.4rem;position:relative}.site-footer:before{content:"";background:var(--band) center top / 24px 18px repeat-x;height:18px;position:absolute;inset:0 0 auto}.sampler-alpha{font-family:var(--display);letter-spacing:.3em;color:var(--red);text-align:center;flex-wrap:wrap;justify-content:center;gap:.2rem 1.4rem;padding:.4rem 16px 0;font-size:1rem;font-weight:700;display:flex}.sampler-alpha span:nth-child(2){color:var(--blue)}.sampler-alpha span:nth-child(3){color:var(--green)}.footer-grid{grid-template-columns:1.3fr 1fr 1.25fr 1.25fr;gap:2rem;padding-block:1.6rem 2rem;display:grid}.footer-col h2{color:var(--red);letter-spacing:.02em;margin-bottom:.7rem;font-size:1.1rem}.footer-col ul{gap:.45rem;padding:0;list-style:none;display:grid}.footer-col li a{padding-block:.15rem;font-weight:650;display:inline-block}.footer-about p{color:var(--muted);margin-top:.7rem;font-size:.95rem}.brand--footer .brand__name{font-size:1.6rem}.desc{color:var(--muted);font-size:.88rem;line-height:1.4;display:block}.footer-bottom{border-top:2px dashed var(--line-strong);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem;font-size:.93rem;display:flex}.footer-bottom ul{gap:1.2rem;padding:0;list-style:none;display:flex}.footer-bottom a{padding-block:.6rem;display:inline-block}@media (width<=1060px){.ft-top{grid-template-columns:minmax(0,1fr) 11rem}.ft-top .chips{grid-column:1/-1}}@media (width<=900px){.sheet__zoom{display:flex}.footer-grid,.ft-look__grid{grid-template-columns:1fr 1fr}.kin-out{grid-template-columns:minmax(0,1fr)}.kin-result{min-height:0}.hh-head{display:none}.hh{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.hh .cell__label{clip:auto;width:auto;height:auto;position:static;overflow:visible}.hh__name,.hh__contact,.hh__notes,.hh__rsvp{grid-column:span 2}.hh__remove{grid-column:span 2;justify-self:end}.rp-split,.rp-event__grid{grid-template-columns:1fr 1fr}.rp-event__grid .field:first-child{grid-column:1/-1}}@media (width<=640px){body{font-size:1rem}.site-header__bar{text-align:left;grid-template-columns:1fr auto;grid-template-areas:"brand toggle""tag tag";padding-top:1rem}.brand{justify-content:flex-start}.brand__name{font-size:1.65rem}.brand__mark{width:28px;height:32px}.site-header__tag{letter-spacing:.1em;margin-top:.2rem;font-size:.7rem}.site-nav ul{justify-content:flex-start;gap:.1rem .15rem}.site-nav a{padding:0 .55rem;font-size:1rem}.site-nav li+li:before{display:none}.hero{padding-block:1.5rem 1.1rem}.hero-motif{width:164px;height:28px}.lead{font-size:1.04rem}.tool{margin-inline:auto;padding:18px 14px}.tool:before{inset:5px}.ft-top{grid-template-columns:minmax(0,1fr) 9rem}.ft-look__grid,.person-form__grid,.connect__row,.kin-form,.kin-tree__form,.gen-back__form,.rp-split,.rp-event__grid{grid-template-columns:minmax(0,1fr)}.field--wide{grid-column:auto}.ft__edit{grid-template-columns:minmax(0,1fr)}.ft__edit>.panel:first-child{grid-row:auto}.panel,.rp-panel{padding:.9rem .8rem 1rem}.people,.links{max-height:22rem}.person{flex-direction:column;align-items:stretch}.person__btns{justify-content:flex-end}.gap-head{display:none}.gap-row{border:1px solid var(--line);background:var(--field);border-radius:3px;grid-template-columns:1.2rem minmax(0,1fr) minmax(0,1fr);gap:.4rem .5rem;padding:.5rem .5rem .6rem;position:relative}.gap-row .cell__label{display:block}.gap-row__n{grid-row:span 2;align-self:start;padding-top:1.6rem}.gr-c-name{grid-column:2/-1;margin-right:52px}.gr-remove{width:44px;min-height:44px;padding:0;position:absolute;top:1.95rem;right:.5rem}.gr-remove__t{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.gr-c-born{grid-column:2}.gr-c-died{grid-column:3}.hh{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hh__name,.hh__contact,.hh__notes{grid-column:1/-1}.hh__rsvp,.hh__remove{grid-column:auto}.hh__remove{align-self:end}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.tile{padding:1rem .7rem .7rem}.tile__value{font-size:1.3rem}.ex,.slot{border:1px solid var(--line);background:var(--card);border-radius:3px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:.6rem}.ex .cell__label,.task .cell__label,.slot .cell__label{clip:auto;width:auto;height:auto;position:static;overflow:visible}.ex__item,.slot__what{grid-column:1/-1}.slot__time{grid-row:1}.ex__remove,.slot .btn{place-self:end}.slot__what{grid-row:2}.slot .btn{grid-area:1/2}.task{border:1px solid var(--line);background:var(--card);border-radius:3px;grid-template-columns:44px minmax(0,1fr) minmax(0,1fr);padding:.5rem}.task__check{grid-row:span 2;align-self:start;margin-top:1.2rem}.task__text{grid-column:2/-1}.task__remove{grid-column:2/-1;justify-self:end}.rp-timeline ul li{grid-template-columns:5.6rem minmax(0,1fr)}.rp-timeline__state{grid-column:2}.footer-grid{grid-template-columns:minmax(0,1fr);gap:1.6rem}.sampler-alpha{letter-spacing:.22em;gap:.1rem 1rem;font-size:.85rem}}@media print{.sheet__caption,.sheet+.ft-actions{display:none!important}.sheet__paper{box-shadow:none;aspect-ratio:auto;border:0;width:auto!important;max-width:none!important}.sheet__scroll{overflow:visible!important}.sheet__svg{width:100%;height:auto;max-height:98vh}.rp-print{font-family:var(--body);color:#000;font-size:10.5pt;display:block}.rp-print h2{font-size:20pt}.rp-print h3{border-bottom:1px solid #555;margin:14pt 0 5pt;font-size:13pt}.rp-print h4{margin:8pt 0 3pt;font-size:11pt}.rp-print table{font-size:10pt}.rp-print th,.rp-print td{color:#000;border-bottom:1px solid #bbb;padding:3pt 5pt}.rp-print .rp-timeline{border-left:0;padding-left:0}.rp-print .rp-timeline__group h4:before{display:none}.rp-print .rp-timeline ul li{grid-template-columns:6.5rem 1fr auto}.rp-print__meta,.rp-print__count{margin:4pt 0}}
