@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff)format("woff")}:root{--forest:#24402f;--forest-light:#2f5240;--leaf:#4f7a4b;--link:#3d6a3a;--brass:#b4893a;--sage:#e6ebe2;--paper:#fff;--pale:#eef2ea;--ink:#1c2620;--moss:#5e6a62;--outline:#d5dcd1;--outline-strong:#8a958d;--outline-soft:#edf0ea;--sidebar-text:#c9d7cc;--sidebar-label:#b9cbbe;--tag:#dde6d7;--success-bg:#e1efdd;--success:#2e6b3a;--attention-bg:#f6ebd3;--attention:#6e5220;--warning-bg:#fbefd2;--error-bg:#f6e1da;--error:#a5472e;--earth:#8c6d3a;--radius-sm:6px;--radius-md:8px;--radius-lg:14px;--sidebar-width:204px;--topbar-height:64px;--bottom-nav-height:64px;--gutter:28px;--card-padding:18px;--control:36px;--control-font:14px;--font:"IBM Plex Sans", "PingFang SC", "Noto Sans SC", "Microsoft YaHei", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}@media (width<=720px),(pointer:coarse){:root{--control:44px;--control-font:16px}}@media (width<=720px){:root{--gutter:16px}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{min-height:100vh;font-family:var(--font);color:var(--ink);background:var(--paper);font-variant-numeric:tabular-nums;margin:0;font-size:14px;line-height:1.6}h1,h2,h3{margin:0;line-height:1.3}h1{letter-spacing:-.01em;margin-bottom:14px;font-size:28px;font-weight:700;line-height:1.2}h2{margin-bottom:10px;font-size:17px;font-weight:600}h3{margin-bottom:6px;font-size:15px;font-weight:600}p{margin:0 0 8px}p:last-child{margin-bottom:0}a{color:var(--link);text-underline-offset:2px;text-decoration:underline}a:hover{color:var(--forest)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}svg.icon{vertical-align:-4px;flex:none;width:18px;height:18px}:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.muted{color:var(--moss)}.small{font-size:13px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.row{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.stack{flex-direction:column;gap:12px;display:flex}.skip-link{z-index:900;background:var(--paper);color:var(--ink);border-radius:var(--radius-sm);padding:8px 14px;position:absolute;top:-60px;left:8px}.skip-link:focus{top:8px}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100vh;display:grid}.sidebar,.nav-drawer{background:var(--forest);color:var(--sidebar-text);flex-direction:column;gap:4px;padding:18px 12px;display:flex}.sidebar{height:100vh;position:sticky;top:0;overflow-y:auto}.sidebar :focus-visible,.nav-drawer :focus-visible{outline-color:#fff}.brand{align-items:center;gap:10px;display:flex}.brand-mark{border-radius:var(--radius-sm);background:var(--brass);width:28px;height:28px;color:var(--forest);flex:none;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:inline-flex}.brand-name{letter-spacing:-.01em;font-size:20px;font-weight:700;line-height:1.2}.sidebar .brand,.nav-drawer .brand{color:#fff;padding:4px 8px 10px}.sidebar-church{color:var(--sidebar-label);overflow-wrap:anywhere;padding:2px 8px 14px;font-size:13px;line-height:1.35}.nav-item{border-radius:var(--radius-md);width:100%;min-height:40px;color:var(--sidebar-text);text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:8px 12px;font-size:15px;font-weight:500;line-height:1.25;text-decoration:none;display:flex;position:relative}.nav-item:hover{color:#fff;background:#ffffff0f}.nav-item.active{background:var(--forest-light);color:#fff;font-weight:600}.nav-item.active:before{content:"";background:var(--brass);border-radius:2px;width:3px;position:absolute;top:8px;bottom:8px;left:0}.nav-foot{flex-direction:column;gap:4px;margin-top:auto;display:flex}.nav-divider{background:#ffffff24;height:1px;margin:12px 8px}.main-column{flex-direction:column;min-width:0;display:flex}.topbar{height:var(--topbar-height);padding:0 var(--gutter);background:var(--paper);border-bottom:1px solid var(--outline);z-index:20;align-items:center;gap:12px;display:flex;position:sticky;top:0}.topbar-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0 auto 0 0;font-size:17px;font-weight:600;overflow:hidden}.topbar-search{width:240px}.topbar-search .search-box input[type=search]{background:var(--pale);border-color:#0000;height:32px;min-height:32px;padding:0 14px 0 34px;font-size:14px}.topbar-search .search-box svg.icon{width:16px;height:16px;margin-top:-8px;left:12px}.canvas{width:100%;max-width:1240px;padding:22px var(--gutter) 60px;flex:1}.canvas:focus{outline:none}.bottom-nav{display:none}.nav-drawer{border:0;width:min(300px,86vw);max-width:none;height:100dvh;max-height:none;margin:0;position:fixed;inset:0 auto 0 0}.nav-drawer:not([open]){display:none}.nav-drawer::backdrop{background:#1c262066}.nav-drawer .nav-item{min-height:44px}@media (width<=900px){.topbar-search{display:none}}@media (width<=720px){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.topbar{height:56px}.canvas{padding:16px var(--gutter) calc(var(--bottom-nav-height) + 32px + env(safe-area-inset-bottom))}h1{font-size:24px}.bottom-nav{z-index:30;padding-bottom:env(safe-area-inset-bottom);background:var(--paper);border-top:1px solid var(--outline);display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav a,.bottom-nav button{min-width:0;height:var(--bottom-nav-height);color:var(--moss);text-align:center;background:0 0;border:0;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:2px;padding:0 2px;font-size:12px;font-weight:500;line-height:1.2;text-decoration:none;display:flex}.bottom-nav svg.icon{width:22px;height:22px}.bottom-nav a.active{color:var(--forest);box-shadow:inset 0 3px 0 var(--brass);font-weight:600}}.signin{background:var(--sage);place-items:center;min-height:100vh;padding:16px;display:grid}.signin .card{width:100%;max-width:420px}.signin .brand{color:var(--ink);margin-bottom:16px}.signin h1{font-size:22px}.signin .links{margin-top:16px}.member-head{background:var(--forest);color:#fff;padding:16px 18px 18px}.member-head>div,.member-body{max-width:560px;margin:0 auto}.member-church{color:var(--sidebar-label);font-size:13px;font-weight:500}.member-head h1{margin:2px 0 0;font-size:22px}.member-body{padding:16px 18px 24px;font-size:15px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 16px;margin-bottom:18px;display:flex}.page-head h1,.record-head h1{margin:0}.page-meta{color:var(--moss);margin-top:4px;font-size:15px}.page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.back-link{min-height:32px;color:var(--moss);align-items:center;gap:4px;margin-bottom:8px;font-size:13px;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--ink);text-decoration:underline}.record-head{align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.record-names{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.pills{flex-wrap:wrap;gap:6px;display:flex}.record-head .pills{margin-top:8px}.button{min-height:var(--control);border-radius:var(--radius-sm);border:1px solid var(--forest);background:var(--forest);color:#fff;text-align:center;justify-content:center;align-items:center;gap:6px;padding:4px 16px;font-size:14px;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}.button:hover{background:var(--forest-light);color:#fff}.button.quiet{background:var(--paper);border-color:var(--outline-strong);color:var(--ink)}.button.quiet:hover{background:var(--pale);color:var(--ink)}.button.danger{background:var(--paper);border-color:var(--error);color:var(--error)}.button.danger:hover{background:var(--error-bg);color:var(--error)}.button:disabled,.button[aria-disabled=true]{opacity:.55;cursor:default}.card{background:var(--paper);border:1px solid var(--outline);border-radius:var(--radius-md);padding:var(--card-padding)}.card+.card{margin-top:16px}.card.muted-card{background:var(--pale);border-color:#0000}.card.attention{background:var(--attention-bg);border-color:#0000}.card-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.card-title h2{margin:0}.columns{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.reading-width{max-width:760px}@media (width<=900px){.columns{grid-template-columns:minmax(0,1fr);gap:16px}}.tiles{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin-bottom:20px;display:grid}.tile{background:var(--pale);border-radius:var(--radius-md);padding:16px}.tile.attention{background:var(--attention-bg)}.tile-label,.tile-context{color:var(--moss);font-size:13px}.tile-label{font-weight:500}.tile.attention .tile-label,.tile.attention .tile-context{color:var(--attention)}.tile-value{margin:6px 0 4px;font-size:30px;font-weight:700;line-height:1.1}label{margin:12px 0 4px;font-size:13px;font-weight:600;display:block}.field{margin:12px 0 0}.field:first-child,.field>label{margin-top:0}.field-hint,.field-error{margin-top:4px;font-size:13px}.field-hint{color:var(--moss)}.field-error{color:var(--error);font-weight:500}input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=date],input[type=number],select,textarea{width:100%;min-height:var(--control);border:1px solid var(--outline-strong);border-radius:var(--radius-sm);background:var(--paper);font-size:var(--control-font);padding:6px 12px}textarea{min-height:88px;line-height:1.5}select{width:auto;max-width:100%}input::placeholder,textarea::placeholder{color:var(--moss);opacity:1}[aria-invalid=true]{border-color:var(--error)}input[type=file]{width:100%;color:var(--moss);font-size:14px}input[type=file]::file-selector-button{min-height:var(--control);border:1px solid var(--outline-strong);border-radius:var(--radius-sm);background:var(--paper);color:var(--ink);font:inherit;cursor:pointer;margin-right:12px;padding:4px 16px;font-weight:600}input[type=file]::file-selector-button:hover{background:var(--pale)}progress{width:100%;accent-color:var(--forest)}input[type=checkbox],input[type=radio]{width:18px;height:18px;accent-color:var(--forest);flex:none;margin:0}.check{align-items:flex-start;gap:10px;margin:10px 0;font-size:14px;font-weight:400;display:flex}.check input{margin-top:2px}.field-group{border:0;margin:12px 0 0;padding:0}.field-group legend{padding:0;font-size:13px;font-weight:600}.actions{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:16px;display:flex}.search-box{position:relative}.search-box svg.icon{color:var(--moss);pointer-events:none;margin-top:-9px;position:absolute;top:50%;left:14px}.search-box input[type=search]{min-height:max(40px, var(--control));border-radius:999px;padding-left:40px}.notice{border-radius:var(--radius-md);background:var(--pale);margin:12px 0;padding:10px 14px}.notice.attention{background:var(--attention-bg);color:var(--attention)}.notice.success{background:var(--success-bg);color:var(--success)}.notice.error{background:var(--error-bg);color:var(--error);font-weight:500}.pill{background:var(--tag);min-height:24px;color:var(--forest);border-radius:999px;align-items:center;gap:4px;padding:1px 10px;font-size:13px;font-weight:500;line-height:1.25;display:inline-flex}.pill.success{background:var(--success-bg);color:var(--success)}.pill.attention{background:var(--attention-bg);color:var(--attention)}.pill.warning{background:var(--warning-bg);color:var(--attention)}.pill.error{background:var(--error-bg);color:var(--error)}.lock-note{color:var(--moss);align-items:center;gap:6px;font-size:13px;display:inline-flex}.lock-note svg.icon{vertical-align:0;width:14px;height:14px}.avatar{background:var(--leaf);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:13px;font-weight:600;display:inline-flex}.avatar.earth{background:var(--earth)}.avatar.large{width:60px;height:60px;font-size:22px;font-weight:700}.avatar.you{background:var(--attention-bg);width:32px;height:32px;color:var(--forest);box-shadow:inset 0 0 0 1.5px var(--brass);text-decoration:none}.cn-name{vertical-align:middle;gap:3px;font-weight:400;line-height:1.15;display:inline-flex}.cn-cell{flex-direction:column;align-items:center;min-width:1.5em;display:inline-flex}.cn-char{color:var(--moss);font-size:15px}.cn-syllable{color:var(--moss);white-space:nowrap;font-size:11px;font-style:italic}.cn-name.large .cn-char{font-size:20px}.cn-name.large .cn-syllable{font-size:12px}.known-as{color:var(--moss);font-size:13px;font-style:italic}.known-as b{color:var(--ink);font-style:normal;font-weight:600}.rows,.items{margin:0;padding:0;list-style:none}.rows>li,.items>li{border-top:1px solid var(--outline-soft)}.rows>li:first-child,.items>li:first-child{border-top:0}.row-item{min-height:48px;color:inherit;align-items:center;gap:12px;padding:8px 0;text-decoration:none;display:flex}a.row-item{border-radius:var(--radius-sm);margin:0 -8px;padding-left:8px;padding-right:8px}a.row-item:hover{background:var(--pale);color:inherit}.row-main{flex:1;min-width:0}.row-title{overflow-wrap:anywhere;font-weight:600}.row-sub{color:var(--moss);overflow-wrap:anywhere;font-size:13px;display:block}.row-end{text-align:right;flex:none;margin-left:auto}.items{margin:8px 0}.items>li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.items small{color:var(--moss);font-size:13px;display:block}dl{margin:0}.key-values{grid-template-columns:minmax(96px,150px) minmax(0,1fr);gap:8px 12px;display:grid}.key-values>div{display:contents}.key-values dt{color:var(--moss);overflow-wrap:anywhere}.key-values dd{overflow-wrap:anywhere;margin:0}.counts{grid-template-columns:1fr max-content;gap:4px 16px;display:grid}.counts>div{display:contents}.counts dd{text-align:right;margin:0;font-weight:600}.table-wrap{border:1px solid var(--outline);border-radius:var(--radius-md);overflow-x:auto}table.data{border-collapse:collapse;width:100%}table.data th{text-align:left;color:var(--moss);background:var(--pale);border-bottom:1px solid var(--outline);white-space:nowrap;padding:10px 12px;font-size:13px;font-weight:600}table.data td{border-bottom:1px solid var(--outline-soft);vertical-align:middle;padding:10px 12px}table.data tr:last-child td{border-bottom:0}.tabs{border-bottom:1px solid var(--outline);gap:4px;margin-bottom:18px;display:flex;overflow-x:auto}.tabs a{color:var(--moss);white-space:nowrap;flex:none;padding:8px 12px;font-size:15px;text-decoration:none}.tabs a.active{color:var(--ink);box-shadow:inset 0 -3px 0 var(--forest);font-weight:600}.empty-state{text-align:center;color:var(--moss);padding:28px 16px}.empty-state h2{color:var(--ink);margin-bottom:4px}.loading{color:var(--moss);padding:12px 0}.page-loading{min-height:100vh;color:var(--moss);background:var(--paper);place-items:center;display:grid}details{border-top:1px solid var(--outline-soft);padding:8px 0}details:first-of-type{border-top:0}summary{cursor:pointer;min-height:28px;font-weight:600}@media print{body,.card,.canvas{background:#fff}.sidebar,.topbar,.bottom-nav,.skip-link,.no-print{display:none!important}.app-shell{display:block}.card{border:0;padding:0}.canvas{max-width:none;padding:0}details>*{display:block}}.qr{width:200px;height:200px;margin:12px 0;display:block}.secret{font-family:var(--mono);word-break:break-all;background:var(--pale);border-radius:var(--radius-sm);padding:8px 10px}.codes{background:var(--pale);border-radius:var(--radius-md);font-family:var(--mono);grid-template-columns:repeat(2,1fr);gap:6px 16px;margin:12px 0;padding:12px;list-style:none;display:grid}.mapping{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:8px 12px;display:grid}.mapping>div{display:contents}.mapping label{overflow-wrap:anywhere;margin:0}.section-gap{margin-top:16px}.lines{margin:8px 0 0;padding:0;list-style:none}.lines li{border-top:1px solid var(--outline-soft);overflow-wrap:anywhere;padding:6px 0}.lines li:first-child{border-top:0}.lines small{color:var(--moss);font-size:13px;display:block}.person-find{margin-bottom:16px}.privacy-line{margin-top:12px}.gallery-gap{margin-top:28px}.gallery-member{max-width:420px;padding:0;overflow:hidden}
