:root{font-family:Noto Sans SC,Microsoft YaHei,sans-serif;color:#292d29;background:#f7f3e9;font-synthesis:none;--paper: #f7f3e9;--paper-deep: #eee8da;--surface: #fffdf8;--ink: #292d29;--green: #173f35;--green-2: #315c4d;--jade: #6e8d7b;--red: #9e3f32;--red-soft: #f1e1dc;--line: #d7d1c3;--line-strong: #b9b09e;--muted: #77796f;--sidebar: 190px;--header: 68px;--inspector: 310px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body,#root{min-width:0;width:100%;height:100%;min-height:100%;margin:0;overflow:hidden}body{min-height:100vh;overflow:hidden}button,input,select,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid rgba(158,63,50,.5);outline-offset:2px}.app-shell{height:100vh;min-height:100vh;display:grid;grid-template-columns:var(--sidebar) 1fr;grid-template-rows:var(--header) calc(100vh - var(--header));background:radial-gradient(circle at 15% 20%,rgba(110,141,123,.05),transparent 25%),var(--paper);overflow:hidden}.topbar{grid-column:1 / -1;position:fixed;top:0;left:0;right:0;height:var(--header);display:flex;align-items:center;gap:16px;padding:0 18px;border-bottom:1px solid var(--line);background:#fffdf8f5;z-index:40}.brand{display:flex;align-items:center;gap:10px;border:0;background:none;padding:0;min-width:208px;cursor:pointer;text-align:left}.brand-mark{width:36px;height:36px;display:grid;place-items:center;background:var(--green);color:#fffaf0;font:700 19px/1 "Noto Serif SC",serif;border-radius:2px;box-shadow:inset 0 0 0 1px #ffffff47}.brand strong{display:block;color:var(--green);font:700 16px/1.15 "Noto Serif SC",serif;letter-spacing:.06em}.brand small{display:block;margin-top:4px;font-size:10px;color:var(--muted);white-space:nowrap}.featured-genealogy-link{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;padding:0 11px;border:1px solid var(--line-strong);background:#f5f1e7;color:var(--green);font-size:10px;font-weight:600;text-decoration:none;white-space:nowrap}.featured-genealogy-link:hover,.featured-genealogy-link:focus-visible{border-color:var(--red);color:var(--red);background:#fff8ee;outline:2px solid rgba(158,64,56,.12);outline-offset:2px}.featured-genealogy-link svg{width:15px;height:15px}.featured-genealogy-short{display:none}.ancestry-path{display:flex;align-items:center;gap:8px;min-width:250px;font-size:11px;color:var(--muted)}.ancestry-path i{width:18px;height:1px;background:var(--line-strong);position:relative}.ancestry-path i:after{content:"";position:absolute;right:0;top:-2px;border-left:4px solid var(--line-strong);border-top:2.5px solid transparent;border-bottom:2.5px solid transparent}.ancestry-path b{color:var(--green);font-weight:600}.search-wrap{margin-left:auto;width:min(320px,25vw);height:38px;border:1px solid var(--line);background:var(--paper);display:flex;align-items:center;padding:0 11px;gap:8px;position:relative}.search-wrap>svg{color:var(--jade);flex:0 0 auto}.search-wrap input{min-width:0;flex:1;border:0;outline:0;background:transparent;font-size:12px;color:var(--ink)}.search-wrap input::placeholder{color:#9a9a91}.clear-search{display:grid;place-items:center;border:0;background:none;cursor:pointer;color:var(--muted);padding:2px}.search-results{position:absolute;top:44px;left:0;right:0;z-index:80;background:var(--surface);border:1px solid var(--line-strong);box-shadow:0 18px 40px #24302b24;padding:7px}.search-caption{padding:7px 9px;color:var(--muted);font-size:10px;border-bottom:1px solid var(--line)}.search-results button{width:100%;display:grid;grid-template-columns:78px 1fr;gap:2px 8px;text-align:left;border:0;background:transparent;padding:9px;cursor:pointer}.search-results button:hover{background:#f0eee5}.search-results button span{font-size:11px;color:var(--muted)}.search-results button .result-name{color:var(--green);font:600 13px "Noto Serif SC",serif;grid-row:span 2}.search-results button small{font-size:10px;color:#94958d}.empty-result{padding:18px 9px;font-size:12px;color:var(--muted);text-align:center}.view-switch{display:flex;height:34px;border:1px solid var(--line);background:var(--paper);padding:2px}.view-switch button{min-width:45px;border:0;background:transparent;font-size:11px;cursor:pointer}.view-switch button.active{background:var(--green);color:#fff}.primary-action,.solid-btn,.outline-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--green);min-height:36px;padding:0 14px;cursor:pointer;font-weight:600;font-size:12px}.primary-action,.solid-btn{background:var(--green);color:#fff}.primary-action:hover,.solid-btn:hover{background:#0f332b}.outline-btn{background:transparent;color:var(--green)}.outline-btn:hover{background:#edf1ec}.mobile-preview-action{width:36px;height:36px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--line);background:var(--paper);color:var(--green);cursor:pointer}.mobile-preview-action:hover{border-color:var(--green);background:#edf1ec}.mobile-preview-action svg{width:17px}.mobile-account-action{display:none;align-items:center;justify-content:center;gap:4px;min-height:34px;flex:0 0 auto;border:1px solid var(--line);background:var(--paper);color:var(--green);padding:0 8px;font-size:9px;cursor:pointer;white-space:nowrap}.mobile-account-action:hover{border-color:var(--green);background:#edf1ec}.automatic-sync-chip{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:5px;flex:0 0 auto;border:1px solid var(--line);background:var(--paper);padding:0 8px;color:var(--green);font-size:9px;cursor:pointer;white-space:nowrap}.automatic-sync-chip svg{width:14px;height:14px}.automatic-sync-chip.syncing svg{animation:view-data-spin 1s linear infinite}.automatic-sync-chip.offline,.automatic-sync-chip.waiting{color:#7a5a2d;border-color:#c9ae7d;background:#fbf3e4}.automatic-sync-chip.attention{color:var(--red);border-color:#d7a59d;background:var(--red-soft)}.automatic-sync-panel{grid-column:1 / -1;border:1px solid var(--line);background:#fffdf8b8}.automatic-sync-summary{min-height:62px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 12px}.automatic-sync-summary>svg{width:20px;color:var(--jade)}.automatic-sync-summary strong,.automatic-sync-summary small{display:block}.automatic-sync-summary strong{color:var(--green);font-size:10px}.automatic-sync-summary small{margin-top:3px;color:var(--muted);font-size:8px;line-height:1.45}.automatic-sync-summary button svg{width:14px}.automatic-sync-panel.state-attention .automatic-sync-summary>svg{color:var(--red)}.automatic-sync-queue{border-top:1px solid var(--line);padding:0 12px 8px}.automatic-sync-queue article{min-height:55px;display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--line);padding:8px 0}.automatic-sync-queue article>span{min-width:0;flex:1}.automatic-sync-queue strong,.automatic-sync-queue small,.automatic-sync-queue em{display:block}.automatic-sync-queue strong{color:var(--green);font-size:8.5px}.automatic-sync-queue small{margin-top:3px;color:var(--muted);font-size:7px}.automatic-sync-queue em{margin-top:3px;color:var(--red);font-size:7px;font-style:normal;line-height:1.4}.automatic-sync-queue button{min-height:30px;padding:0 9px;font-size:8px}.automatic-sync-empty{margin:0;border-top:1px solid var(--line);padding:10px 12px;color:var(--muted);font-size:8px}.view-data-loading,.view-data-error{width:100%;height:100%;min-height:360px;display:grid;align-content:center;justify-items:center;gap:8px;padding:32px;background:linear-gradient(#fffdf8de,#f7f3eaeb),repeating-linear-gradient(90deg,transparent 0 47px,rgba(45,79,65,.025) 47px 48px);text-align:center}.view-data-loading-mark,.view-data-error>span{width:46px;height:46px;display:grid;place-items:center;margin-bottom:3px;border:1px solid var(--line-strong);background:#fffdf8c7;color:var(--green)}.view-data-loading-mark svg{width:20px;animation:view-data-spin 1.1s linear infinite}.view-data-loading strong,.view-data-error strong{color:var(--green);font:600 15px "Noto Serif SC",serif}.view-data-loading small,.view-data-error small{max-width:430px;color:var(--muted);font-size:8.5px;line-height:1.65}.view-data-error>span{border-color:var(--red);color:var(--red);font:700 17px "Noto Serif SC",serif}.view-data-error button{margin-top:8px}.view-data-error button svg{width:14px}.view-data-error small{color:#82665e}@keyframes view-data-spin{to{transform:rotate(360deg)}}.app-load-error{width:100vw;min-height:100dvh;display:grid;align-content:center;justify-items:center;gap:10px;padding:32px;background:linear-gradient(#fffdf8e6,#f7f3eaf2),repeating-linear-gradient(90deg,transparent 0 47px,rgba(45,79,65,.025) 47px 48px);text-align:center}.app-load-error>span{width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--red);background:var(--paper);color:var(--red);font:700 17px "Noto Serif SC",serif}.app-load-error strong{color:var(--green);font:600 16px "Noto Serif SC",serif}.app-load-error small{max-width:455px;color:#82665e;font-size:9px;line-height:1.7}.app-load-error button svg{width:14px}.mobile-menu{display:none;border:0;background:none;padding:4px;color:var(--green)}.app-back{width:36px;height:36px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--line);background:var(--paper);color:var(--green);cursor:pointer}.app-back:hover{border-color:var(--green);background:#edf1ec}.app-back svg{width:18px}.sidebar{grid-column:1;grid-row:2;border-right:1px solid var(--line);background:#f0ece2;display:flex;flex-direction:column;min-height:0;z-index:35}.sidebar nav{flex:1;min-height:0;padding:18px 10px;display:grid;align-content:start;gap:5px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--jade) transparent}.sidebar nav::-webkit-scrollbar{width:7px}.sidebar nav::-webkit-scrollbar-track{background:transparent}.sidebar nav::-webkit-scrollbar-thumb{border:2px solid transparent;background:var(--jade);background-clip:padding-box}.sidebar nav button,.sidebar-foot button{position:relative;width:100%;height:43px;display:flex;align-items:center;gap:11px;padding:0 12px;border:0;background:transparent;cursor:pointer;color:#525950;font-size:12px;text-align:left}.sidebar nav button:before{content:"";position:absolute;left:-10px;width:3px;height:0;background:var(--red);transition:height .18s ease}.sidebar nav button.active{color:var(--green);background:#fffdf8cc;font-weight:600}.sidebar nav button.active:before{height:24px}.sidebar nav button:disabled{cursor:default;opacity:.63}.sidebar nav button em{margin-left:auto;font-style:normal;font-size:9px;color:#99968c}.sidebar-foot{flex:0 0 auto;border-top:1px solid var(--line);padding:10px}.edition-block{position:relative;flex:0 0 auto;padding:14px 34px 16px 18px;border-top:1px solid var(--line);background:#fffdf873}.edition-block span,.edition-block small{display:block;color:var(--muted);font-size:9px}.edition-block strong{display:block;margin:4px 0;color:var(--green);font:600 11px "Noto Serif SC",serif}.edition-block svg{position:absolute;right:13px;top:25px;color:var(--jade)}.sidebar-mobile-head,.sidebar-scrim,.mobile-bottom-nav{display:none}.workspace{grid-column:2;grid-row:2;min-width:0;min-height:0;overflow:hidden}.app-bootstrap{min-height:100vh;display:grid;place-content:center;gap:8px;background:var(--paper, #fffdf8);color:var(--green, #254b3f);text-align:center}.app-bootstrap span{font:700 22px "Noto Serif SC",serif}.app-bootstrap small{color:var(--muted, #6f746f);font-size:12px}.app-bootstrap.is-error span{color:var(--red, #9e4038)}.split-view{height:100%;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) var(--inspector);overflow:hidden}.platform-download-links{display:inline-flex;align-items:stretch;flex-wrap:wrap;justify-content:flex-end;gap:8px}.platform-download-links.compact{flex-wrap:nowrap;gap:6px}.android-download-control{position:relative;display:inline-flex;align-items:stretch;flex:0 0 auto}.android-download-link,.windows-download-link{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;border:1px solid var(--jade);background:var(--paper);color:var(--green);font-size:11px;font-weight:600;text-decoration:none;white-space:nowrap}.android-download-link:hover,.android-download-link:focus-visible,.windows-download-link:hover,.windows-download-link:focus-visible{border-color:var(--green);background:#f4f6f1;outline:2px solid rgba(44,106,88,.15);outline-offset:2px}.android-download-link svg,.windows-download-link svg{width:16px;height:16px}.android-download-control.compact .android-download-link,.windows-download-link.compact{min-height:32px;padding:0 11px;font-size:10px}.android-qr-control{position:relative;margin-left:-1px}.android-qr-control>summary{min-width:42px;height:100%;min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 11px;border:1px solid var(--jade);background:#edf1ec;color:var(--green);font-size:10px;font-weight:600;list-style:none;cursor:pointer;white-space:nowrap}.android-qr-control>summary::-webkit-details-marker{display:none}.android-qr-control>summary:hover,.android-qr-control>summary:focus-visible,.android-qr-control[open]>summary{position:relative;z-index:2;border-color:var(--green);background:#e4ebe5;outline:2px solid rgba(44,106,88,.15);outline-offset:2px}.android-qr-control>summary svg{width:16px;height:16px}.android-download-control.compact .android-qr-control>summary{min-height:32px;padding:0 9px}.android-download-control.compact .android-qr-control>summary span{display:none}.android-qr-popover{position:absolute;top:calc(100% + 9px);right:0;z-index:70;width:242px;display:grid;justify-items:center;gap:8px;padding:15px;border:1px solid var(--line-strong);background:var(--paper);color:var(--green);box-shadow:0 16px 38px #23362e33}.android-qr-popover:before{content:"";position:absolute;top:-6px;right:17px;width:10px;height:10px;border-top:1px solid var(--line-strong);border-left:1px solid var(--line-strong);background:var(--paper);transform:rotate(45deg)}.android-qr-popover strong{font:600 13px "Noto Serif SC",serif}.android-qr-popover img,.android-qr-placeholder{width:212px;height:212px;border:1px solid var(--line);background:#fffdf8}.android-qr-placeholder{display:grid;place-items:center;padding:18px;color:var(--muted);font-size:10px;text-align:center}.android-qr-popover small{color:var(--muted);font-size:9px}.android-qr-popover>a{color:var(--red);font-size:10px;font-weight:600;text-underline-offset:3px}.canvas-panel{min-width:0;min-height:0;display:flex;flex-direction:column;position:relative}.canvas-head{height:72px;flex:0 0 72px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 20px 12px 24px;border-bottom:1px solid var(--line);background:#f7f3e9e6}.canvas-head h1{margin:0;font:700 20px/1.2 "Noto Serif SC",serif;color:var(--green);letter-spacing:.04em}.canvas-head p{margin:6px 0 0;font-size:10.5px;color:var(--muted)}.canvas-legend{display:flex;align-items:center;gap:15px;font-size:10px;color:var(--muted)}.canvas-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px}.canvas-legend span{display:flex;align-items:center;gap:5px}.canvas-legend i{display:block;width:20px;height:2px}.legend-main{background:var(--green)}.legend-branch{background:var(--red)}.legend-migration{border-top:1px dashed var(--jade)}.tree-canvas{flex:1;min-height:0;overflow:hidden;position:relative;background-color:var(--paper);background-image:linear-gradient(rgba(41,45,41,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(41,45,41,.02) 1px,transparent 1px);background-size:36px 36px}.tree-pan-surface{position:absolute;inset:0;overflow:hidden}.tree-stage-frame{position:absolute;width:980px;height:760px;left:50%;top:50%;transform:translate(-50%,-49%);transform-origin:center;transition:transform .2s ease}.tree-stage{position:absolute;inset:0;width:980px;height:760px;transform:scale(var(--tree-scale));transform-origin:center;transition:transform .2s ease}.tree-stage>img{position:absolute;width:690px;height:690px;object-fit:contain;left:132px;top:24px;mix-blend-mode:multiply;filter:saturate(.7) contrast(.94) sepia(.08);opacity:.87}.tree-wash{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 45%,transparent 38%,rgba(247,243,233,.18) 64%,rgba(247,243,233,.72) 82%)}.sixth-generation-plaques{position:absolute;inset:0;z-index:5;pointer-events:none}.sixth-generation-plaque{--plaque-ink: #5b472d;--plaque-paper: rgba(244,226,172,.96);position:absolute;width:124px;min-height:52px;transform:translate(-50%,-50%);display:grid;place-items:center;align-content:center;gap:3px;padding:9px 17px 7px;border:1px solid var(--plaque-ink);border-radius:1px;background-color:var(--plaque-paper);background-image:repeating-linear-gradient(0deg,rgba(93,70,38,.018) 0,rgba(93,70,38,.018) 1px,transparent 1px,transparent 4px);color:var(--green);text-align:center;box-shadow:inset 0 0 0 3px #faeec9eb,inset 0 0 0 4px #5b472db8,0 4px 10px #292d2926;pointer-events:auto;cursor:pointer}.sixth-generation-plaque.founder{width:150px;min-height:70px;padding-top:11px;padding-bottom:10px}.sixth-generation-plaque:before,.sixth-generation-plaque:after{content:"";position:absolute;z-index:0;left:21px;right:21px;height:1px;background:#5b472db8;pointer-events:none}.sixth-generation-plaque:before{top:5px}.sixth-generation-plaque:after{bottom:5px}.plaque-corner{position:absolute;z-index:1;width:19px;height:16px;color:var(--plaque-ink);pointer-events:none}.plaque-corner:before{content:"";position:absolute;inset:1px 0 0 1px;border-top:1px solid currentColor;border-left:1px solid currentColor;box-shadow:inset 3px 3px 0 -2px currentColor,inset 6px 6px 0 -5px currentColor}.plaque-corner:after{content:"";position:absolute;left:5px;top:5px;width:9px;height:7px;border-top:1px solid currentColor;border-left:1px solid currentColor;border-radius:8px 0 0;box-shadow:-3px 2px 0 -2px currentColor,2px -3px 0 -2px currentColor}.plaque-corner.top-left{left:2px;top:2px}.plaque-corner.top-right{right:2px;top:2px;transform:scaleX(-1)}.plaque-corner.bottom-left{left:2px;bottom:2px;transform:scaleY(-1)}.plaque-corner.bottom-right{right:2px;bottom:2px;transform:scale(-1)}.sixth-generation-plaque:hover,.sixth-generation-plaque:focus-visible{transform:translate(-50%,-50%) translateY(-2px);--plaque-ink: #8e3f32;box-shadow:inset 0 0 0 3px #faeec9eb,inset 0 0 0 4px #8e3f32bf,0 0 0 2px #9e3f3224,0 7px 16px #292d292e;outline:2px solid rgba(158,63,50,.22);outline-offset:2px}.sixth-generation-plaque.active{--plaque-ink: #8e3f32;box-shadow:inset 0 0 0 3px #faeec9eb,inset 0 0 0 4px #8e3f32c7,0 0 0 3px #9e3f322e,0 7px 16px #292d2933}.sixth-generation-plaque strong,.sixth-generation-plaque small{position:relative;z-index:2}.sixth-generation-plaque strong{max-width:100%;overflow:hidden;color:#244a3d;font:700 14px/1.1 "Noto Serif SC",serif;text-overflow:ellipsis;white-space:nowrap}.sixth-generation-plaque small{color:#75664e;font:600 8px/1.1 "Noto Serif SC",serif}.sixth-generation-plaque em{position:relative;z-index:2;color:#75664e;font:500 7.5px/1.2 "Noto Serif SC",serif;font-style:normal;white-space:nowrap}.sixth-generation-plaque.founder small{color:var(--red)}.sixth-generation-plaque.other{--plaque-ink: #766b54;--plaque-paper: rgba(238,229,195,.94)}.common-ancestor-plaques{position:absolute;inset:0;z-index:4;pointer-events:none}.common-ancestor-plaque{--plaque-ink: #67553a;--ancestor-row-count: 1;position:absolute;width:min(102px,calc(680px / var(--ancestor-row-count)));min-width:68px;min-height:46px;transform:translate(-50%,-50%);display:grid;place-items:center;align-content:center;gap:2px;padding:8px 13px 7px;border:1px solid var(--plaque-ink);background-color:#f3e6bef0;background-image:repeating-linear-gradient(0deg,rgba(93,70,38,.018) 0,rgba(93,70,38,.018) 1px,transparent 1px,transparent 4px);color:var(--green);text-align:center;box-shadow:inset 0 0 0 3px #faefcfe6,inset 0 0 0 4px #67553a94,0 3px 8px #292d2921}.common-ancestor-plaque strong,.common-ancestor-plaque small{position:relative;z-index:2;display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.common-ancestor-plaque strong{font:700 12px/1.1 "Noto Serif SC",serif}.common-ancestor-plaque small{color:#80694b;font:600 7.5px/1.1 "Noto Serif SC",serif}.common-ancestor-plaque .plaque-corner{width:15px;height:13px}.migration-marker{position:absolute;border:1px dashed var(--jade);background:#f7f3e9d9;color:var(--green);padding:6px 9px;cursor:pointer}.migration-marker span,.migration-marker small{display:block}.migration-marker span{font:600 11px "Noto Serif SC",serif}.migration-marker small{color:var(--muted);font-size:8px;margin-top:2px}.taiyuan{left:838px;top:348px}.jining{left:34px;top:430px}.ancestor-plaque{--plaque-ink: #795337;position:absolute;left:380px;top:620px;width:200px;min-height:72px;display:grid;align-content:center;padding:12px 28px 11px;border:2px solid var(--plaque-ink);border-radius:25px 25px 20px 20px/14px 14px 11px 11px;background-color:#f7e7bef5;background-image:repeating-linear-gradient(0deg,rgba(93,70,38,.018) 0,rgba(93,70,38,.018) 1px,transparent 1px,transparent 4px);color:var(--ink);text-align:center;box-shadow:inset 0 0 0 3px #fbf0cdeb,inset 0 0 0 4px #795337b8,0 7px 16px #292d291f}.ancestor-plaque:before,.ancestor-plaque:after{content:"";position:absolute;left:50%;transform:translate(-50%);width:48px;height:8px;border:1px solid var(--plaque-ink);border-left-color:transparent;border-right-color:transparent;border-radius:50%;pointer-events:none}.ancestor-plaque:before{top:4px;border-bottom:0}.ancestor-plaque:after{bottom:4px;border-top:0}.ancestor-plaque .plaque-corner{width:28px;height:23px}.ancestor-plaque .plaque-corner.top-left{left:5px;top:5px}.ancestor-plaque .plaque-corner.top-right{right:5px;top:5px}.ancestor-plaque .plaque-corner.bottom-left{left:5px;bottom:5px}.ancestor-plaque .plaque-corner.bottom-right{right:5px;bottom:5px}.ancestor-plaque span,.ancestor-plaque small,.ancestor-plaque strong{position:relative;z-index:2;display:block}.ancestor-plaque span,.ancestor-plaque small{font-size:8.5px;color:#75664e}.ancestor-plaque strong{margin:3px 0;font:700 17px "Noto Serif SC",serif;color:var(--green)}.tree-caption{position:absolute;left:395px;top:705px;width:170px;text-align:center;color:#173f359e;font:600 11px "Noto Serif SC",serif;letter-spacing:.28em}.blank-tree-plaque{pointer-events:none;cursor:default}.blank-tree-plaque:hover{transform:translate(-50%,-50%);--plaque-ink: #5b472d;outline:0}.blank-tree-stage .ancestor-plaque.blank-tree-plaque:hover{transform:none}.blank-tree-intro{padding:22px 0 18px}.blank-tree-intro h2{margin:0;color:var(--green);font:700 22px/1.3 "Noto Serif SC",serif}.blank-tree-intro p{margin:7px 0 0;color:var(--muted);font-size:10px;line-height:1.6}.blank-tree-primary-action{padding:16px 0 2px}.blank-tree-primary-action .solid-btn{width:100%;justify-content:center}.blank-tree-actions{display:grid;gap:7px}.blank-tree-actions>button{min-width:0;min-height:52px;display:grid;grid-template-columns:24px minmax(0,1fr) 16px;align-items:center;gap:9px;padding:9px 10px;border:1px solid var(--line);background:var(--surface);color:var(--green);text-align:left;cursor:pointer}.blank-tree-actions>button:hover:not(:disabled){border-color:var(--jade);background:#f1f4ef}.blank-tree-actions>button:disabled{cursor:default;opacity:.45}.blank-tree-actions>button>svg:first-child{width:19px;color:var(--red)}.blank-tree-actions>button>svg:last-child{width:14px;color:var(--jade)}.blank-tree-actions strong,.blank-tree-actions small{display:block}.blank-tree-actions strong{font:600 10px "Noto Serif SC",serif}.blank-tree-actions small{margin-top:3px;color:var(--muted);font-size:7.5px}.blank-tree-profile{margin-top:18px;padding:10px 11px;border-left:2px solid var(--jade);background:#edf1ec}.blank-tree-profile span,.blank-tree-profile strong{display:block}.blank-tree-profile span{color:var(--muted);font-size:8px}.blank-tree-profile strong{margin-top:4px;color:var(--green);font:600 10px "Noto Serif SC",serif}.zoom-controls{position:absolute;left:16px;bottom:16px;display:flex;align-items:center;background:var(--surface);border:1px solid var(--line-strong);box-shadow:0 6px 18px #292d2914;z-index:10}.zoom-controls button{width:34px;height:34px;display:grid;place-items:center;border:0;border-right:1px solid var(--line);background:transparent;cursor:pointer;color:var(--green)}.zoom-controls button:last-child{border-right:0}.zoom-controls span{min-width:46px;text-align:center;font-size:10px;color:var(--muted);border-right:1px solid var(--line)}.tree-minimap{position:absolute;right:16px;bottom:16px;width:105px;height:74px;border:1px solid var(--line-strong);background:#fffdf8eb;display:grid;place-items:center;color:var(--muted);font-size:8px}.mini-tree{width:46px;height:40px;border-left:3px solid var(--green);border-radius:50% 50% 20% 20%;position:relative;opacity:.7}.mini-tree:before,.mini-tree:after{content:"";position:absolute;width:32px;height:20px;border-top:2px solid var(--green);top:4px}.mini-tree:before{left:-24px;transform:rotate(-25deg)}.mini-tree:after{right:-10px;transform:rotate(25deg)}.inspector{min-width:0;border-left:1px solid var(--line);background:#fffdf8d6;padding:18px;overflow-y:auto}.inspector-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:11px;border-bottom:1px solid var(--line);color:var(--green);font-size:11px;font-weight:600}.inspector-heading small{color:var(--muted);font-weight:400;font-size:9px}.branch-title,.person-title{display:flex;align-items:center;gap:13px;margin:18px 0 14px}.large-seal{width:56px;height:62px;display:grid;place-items:center;background:var(--red);color:#fff;font:700 28px "Noto Serif SC",serif}.branch-title h2,.person-title h2{margin:0;font:700 22px "Noto Serif SC",serif;color:var(--green)}.branch-title p,.person-title p{margin:4px 0 0;font-size:10px;color:var(--muted)}.branch-founder-summary{margin:-3px 0 14px;padding:10px 11px;border-left:2px solid var(--red);background:#f7eee8}.branch-founder-summary span,.branch-founder-summary strong,.branch-founder-summary small{display:block}.branch-founder-summary span{color:var(--red);font-size:7.5px}.branch-founder-summary strong{margin-top:4px;color:var(--green);font:600 10px/1.5 "Noto Serif SC",serif}.branch-founder-summary small{margin-top:4px;color:var(--muted);font-size:7.5px;line-height:1.5}.branch-stat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;padding:13px 0 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.branch-stat>div{min-width:0;padding:0 9px;border-right:1px solid var(--line)}.branch-stat>div:first-child{padding-left:0}.branch-stat>div:last-child{padding-right:0;border-right:0}.branch-stat strong,.branch-stat span{display:block}.branch-stat strong{color:var(--green);font:700 20px "Noto Serif SC",serif}.branch-stat span{margin-top:3px;font-size:8.5px;color:var(--muted)}.import-provenance{margin-top:12px;padding:10px 11px;border-left:2px solid var(--jade);background:#edf1ec}.import-provenance strong,.import-provenance span,.import-provenance small{display:block}.import-provenance strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.import-provenance span{margin-top:4px;color:#4f5d56;font-size:8.5px;line-height:1.45}.import-provenance small{margin-top:3px;color:var(--muted);font-size:7.5px}.inspector-section{margin-top:18px}.inspector-section h3,.bio-rail h3{margin:0 0 10px;color:var(--green);font:600 12px "Noto Serif SC",serif}.lineage-row{width:100%;display:grid;grid-template-columns:25px 1fr 16px;align-items:center;gap:8px;padding:9px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;cursor:pointer}.line-index{width:23px;height:27px;display:grid;place-items:center;border:1px solid var(--line-strong);color:var(--red);font:600 11px "Noto Serif SC",serif}.lineage-row strong,.lineage-row small{display:block}.lineage-row strong{color:var(--ink);font:600 11px "Noto Serif SC",serif}.lineage-row small{margin-top:3px;color:var(--muted);font-size:8.5px}.lineage-row svg{color:var(--jade)}.region-list{display:grid;gap:8px}.region-list span{position:relative;height:21px;display:flex;justify-content:space-between;align-items:center;padding:0 7px;border-left:2px solid var(--jade);color:var(--muted);font-size:9px;background:linear-gradient(90deg,rgba(110,141,123,.11),transparent)}.region-list b{color:var(--green)}.inspector-actions{display:flex;gap:8px;margin-top:18px}.inspector-actions>*{flex:1}.inspector-actions.stacked{display:grid}.person-title .seal-avatar{width:51px;height:57px;display:grid;place-items:center;background:var(--green);color:#fff;font:700 23px "Noto Serif SC",serif}.person-portrait{position:relative;display:grid;place-items:center;overflow:hidden;background:#e7e8e1;color:#6d7770;border:1px solid rgba(23,63,53,.2)}.person-portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 18%}.person-portrait>svg{width:48%;height:48%;stroke-width:1.35}.person-title-portrait{width:51px;height:61px;flex:0 0 51px}.person-years{margin:-4px 0 3px 64px;color:var(--ink);font:600 13px "Noto Serif SC",serif}.person-courtesy{margin:0 0 14px 64px;color:var(--muted);font-size:10px}.verified-line{display:flex;align-items:center;gap:6px;color:var(--green-2);font-size:9px;padding:9px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.verified-line span{margin-left:auto;color:var(--muted)}.inspector-section dl{margin:0}.inspector-section dl div{display:grid;grid-template-columns:48px 1fr;gap:8px;padding:7px 0;border-bottom:1px solid #e8e3d8;font-size:10px}.inspector-section dt{color:var(--muted)}.inspector-section dd{margin:0;color:var(--ink)}.inspector-section>p{display:flex;gap:7px;align-items:flex-start;margin:8px 0;font-size:9.5px;line-height:1.5;color:var(--muted)}.inspector-section>p svg{flex:0 0 auto;margin-top:1px;color:var(--jade)}.text-action{width:100%;display:flex;align-items:center;gap:7px;border:0;background:transparent;padding:10px 0 0;color:var(--green);font-size:10px;cursor:pointer}.text-action svg:last-child{margin-left:auto}.privacy-note{margin-top:18px;padding:11px;display:flex;gap:8px;background:#edf1ec;color:var(--green)}.privacy-note svg{flex:0 0 auto}.privacy-note span{font-size:8.5px;line-height:1.45;color:var(--muted)}.privacy-note strong{display:block;margin-bottom:2px;color:var(--green)}.pedigree-head{height:76px;flex-basis:76px}.pedigree-tools{display:flex;gap:5px}.pedigree-tools button{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 8px;border:1px solid var(--line);background:var(--surface);color:var(--green);font-size:9px;cursor:pointer}.pedigree-tools button.active{border-color:var(--red);background:var(--red-soft);color:var(--red)}.pedigree-select{height:30px;display:flex;align-items:center;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:8px}.pedigree-select span{padding-left:7px}.pedigree-select select{height:28px;max-width:72px;border:0;background:transparent;color:var(--green);font-size:9px;padding:0 5px;outline:0}.pedigree-select.founder-select select{max-width:190px}.pedigree-scroll{flex:1;min-height:0;overflow:auto;background-color:var(--paper);background-image:radial-gradient(rgba(41,45,41,.07) .6px,transparent .6px);background-size:7px 7px}.pedigree-stage{width:1080px;height:790px;margin:12px auto 60px;position:relative;transform-origin:top center;transition:transform .2s ease}.pedigree-scroll{overscroll-behavior:contain;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}.connector-layer{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.connector-layer path{fill:none;stroke:#9e3f32ad;stroke-width:1.25;vector-effect:non-scaling-stroke}.connector-layer .uncertain-edge{stroke:var(--jade);stroke-dasharray:4 4}.connector-layer .heir-edge{stroke:var(--green-2);stroke-dasharray:2 4;stroke-width:1.5}.generation-rule{position:absolute;left:52px;right:20px;height:1px;border-top:1px solid rgba(185,176,158,.45)}.generation-rule span{position:absolute;left:-42px;top:-12px;color:var(--red);writing-mode:vertical-rl;font:600 11px "Noto Serif SC",serif;letter-spacing:.1em;background:var(--paper);padding:4px 2px}.gen13{top:62px}.gen14{top:195px}.gen15{top:344px}.gen16{top:506px}.gen17{top:674px}.pedigree-node{position:absolute;width:84px;height:105px;display:flex;justify-content:center;align-items:flex-start;gap:2px;padding:0;border:0;background:transparent;cursor:pointer;z-index:3}.main-plaque,.spouse-plaque{height:92px;display:flex;align-items:center;flex-direction:column;border:1px solid #776e60;background:#fffdf8eb;padding:5px 5px 6px}.main-plaque{width:37px}.spouse-plaque{width:29px;border-color:#9a8e7d}.main-plaque small,.spouse-plaque small{color:var(--muted);font-size:7px;writing-mode:horizontal-tb}.main-plaque strong,.spouse-plaque strong{margin-top:4px;color:var(--ink);font:600 12px/1.15 "Noto Serif SC",serif;writing-mode:vertical-rl;letter-spacing:.07em}.spouse-plaque strong{font-size:10px;color:#5f5d56}.marriage-lines{width:5px;padding-top:25px;display:grid;gap:3px}.marriage-lines i{width:5px;height:1px;background:var(--red)}.pedigree-node:hover .main-plaque{border-color:var(--jade);box-shadow:0 4px 10px #292d2917}.pedigree-node.selected .main-plaque{border:2px solid var(--red);background:var(--red-soft);box-shadow:0 0 0 3px #9e3f3217}.pedigree-node .branch-founder-mark{position:absolute;top:-18px;left:50%;transform:translate(-50%);white-space:nowrap;padding:2px 4px;border:1px solid rgba(158,63,50,.65);background:#fff8f1f5;color:var(--red);font-size:7px;line-height:1.2;z-index:4}.pedigree-node.active-founder{box-shadow:0 0 0 2px #173f356b,0 7px 16px #173f3529}.pedigree-node em{position:absolute;right:-11px;bottom:12px;color:var(--jade);font-style:normal;font-size:7px;writing-mode:vertical-rl}.pedigree-node .hidden-children{position:absolute;left:50%;bottom:-19px;transform:translate(-50%);min-width:28px;padding:2px 5px;border:1px dashed var(--jade);background:var(--surface);color:var(--green);font-size:8px;writing-mode:horizontal-tb}.pedigree-node .no-issue-note{position:absolute;left:-9px;bottom:12px;color:var(--muted);font-size:7px;writing-mode:vertical-rl}.review-mode .pedigree-node.verified{opacity:.42}.review-mode .pedigree-node.uncertain{filter:drop-shadow(0 0 5px rgba(158,63,50,.22))}.layout-note{position:absolute;left:72px;bottom:10px;color:var(--muted);font-size:9px}.pedigree-legend{position:absolute;right:18px;bottom:18px;z-index:8;display:grid;gap:6px;padding:10px 12px;border:1px solid var(--line-strong);background:#fffdf8f2;color:var(--muted);font-size:8px;box-shadow:0 6px 18px #292d2914}.pedigree-legend span{display:flex;align-items:center;gap:7px}.pedigree-legend i{width:24px;border-top:1px solid var(--red)}.pedigree-legend i.pending{border-top-style:dashed;border-top-color:var(--green-2)}.collapsed-household{position:absolute;border:1px dashed var(--jade);background:#fffdf8db;color:var(--green);padding:7px 9px;font-size:9px;cursor:pointer}.adoption-note{position:absolute;color:var(--jade);font-size:8px;border-bottom:1px dashed var(--jade)}.pedigree-zoom{position:absolute}.kinship-head{min-height:78px;height:auto;flex-basis:auto}.kinship-head-actions{display:flex;align-items:center;gap:6px}.kinship-search{position:relative;width:220px;height:32px;display:flex;align-items:center;gap:6px;border:1px solid var(--line-strong);background:var(--surface);padding:0 8px}.kinship-search>svg{width:15px;color:var(--jade);flex:0 0 auto}.kinship-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:9px}.kinship-search>button{width:20px;height:24px;display:grid;place-items:center;border:0;background:transparent;color:var(--muted);cursor:pointer}.kinship-search>button svg{width:13px}.kinship-search-results{position:absolute;left:-1px;right:-1px;top:35px;z-index:30;max-height:300px;overflow-y:auto;border:1px solid var(--line-strong);background:var(--surface);box-shadow:0 12px 28px #292d2924;scrollbar-width:none}.kinship-search-results::-webkit-scrollbar{display:none}.kinship-search-results>button{width:100%;min-height:47px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;padding:7px 9px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;cursor:pointer}.kinship-search-results>button:hover{background:#edf1ec}.kinship-search-results strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.kinship-search-results span{color:var(--muted);font-size:8px}.kinship-search-results small{grid-column:1 / -1;overflow:hidden;color:var(--muted);font-size:7.5px;text-overflow:ellipsis;white-space:nowrap}.kinship-search-results>div{padding:17px 10px;color:var(--muted);font-size:9px;text-align:center}.kinship-print{height:32px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line-strong);background:var(--surface);padding:0 9px;color:var(--green);font-size:9px;cursor:pointer}.kinship-print svg{width:15px}.kinship-summary{min-height:51px;display:flex;align-items:stretch;flex:0 0 auto;border-bottom:1px solid var(--line);background:#fffdf8c2}.kinship-summary>span{min-width:105px;display:grid;grid-template-columns:19px auto;grid-template-rows:1fr 1fr;align-items:center;column-gap:6px;padding:7px 11px;border-right:1px solid var(--line)}.kinship-summary>span svg{grid-row:1 / 3;width:16px;color:var(--jade)}.kinship-summary>span strong{align-self:end;color:var(--green);font:700 12px "Noto Serif SC",serif}.kinship-summary>span small{align-self:start;color:var(--muted);font-size:7.5px}.kinship-highlight{margin-left:auto;display:flex;align-items:center;padding:8px 12px}.kinship-highlight button{min-height:29px;border:1px solid var(--line);border-right:0;background:transparent;padding:0 8px;color:var(--muted);font-size:8px;cursor:pointer;white-space:nowrap}.kinship-highlight button:last-child{border-right:1px solid var(--line)}.kinship-highlight button.active{border-color:var(--green);background:var(--green);color:#fff}.kinship-scroll{flex:1;min-height:0;overflow:auto;touch-action:pan-x pan-y;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--jade) var(--paper-deep);background-color:var(--paper);background-image:radial-gradient(rgba(41,45,41,.07) .6px,transparent .6px);background-size:7px 7px;cursor:grab}.kinship-scroll:active{cursor:grabbing}.kinship-scroll::-webkit-scrollbar{width:10px;height:10px}.kinship-scroll::-webkit-scrollbar-track{background:var(--paper-deep)}.kinship-scroll::-webkit-scrollbar-thumb{border:2px solid var(--paper-deep);background:var(--jade)}.kinship-scroll::-webkit-scrollbar-corner{background:var(--paper-deep)}.kinship-stage{min-width:1080px;min-height:720px;position:relative;margin:12px auto 72px;transform-origin:top center;transition:transform .2s ease}.kinship-connectors path{stroke:#315c4d94}.kinship-connectors path.secondary-edge{stroke-dasharray:2 4;opacity:.75}.kinship-connectors path.dimmed{opacity:.1}.kinship-node{position:absolute;z-index:3;width:86px;height:68px;display:grid;grid-template-rows:17px 24px 17px;align-content:center;padding:4px 5px;border:1px solid #786f61;background:#fffdf8f2;color:var(--ink);cursor:pointer;box-shadow:0 3px 8px #292d290d;transition:opacity .16s ease,border-color .16s ease,box-shadow .16s ease}.kinship-node:hover{z-index:5;border-color:var(--green);box-shadow:0 6px 14px #292d2921}.kinship-node.selected{z-index:6;border:2px solid var(--red);box-shadow:0 0 0 3px #9e3f321a}.kinship-node.focal{border-color:var(--red);background:var(--red-soft)}.kinship-node.direct:not(.focal){border-color:var(--green);background:#edf2ec}.kinship-node.same_generation{border-color:var(--jade)}.kinship-node.collateral{border-color:#9b8e7b}.kinship-node.uncertain{border-style:dashed}.kinship-node.dimmed{opacity:.17}.kinship-node-meta{overflow:hidden;color:var(--muted);font-size:6.8px;text-overflow:ellipsis;white-space:nowrap}.kinship-node strong{overflow:hidden;color:var(--green);font:600 13px/22px "Noto Serif SC",serif;text-overflow:ellipsis;white-space:nowrap}.kinship-node small{overflow:hidden;color:var(--muted);font-size:7.5px;text-overflow:ellipsis;white-space:nowrap}.kinship-node em{position:absolute;right:-7px;top:-9px;min-width:25px;padding:2px 4px;background:var(--red);color:#fff;font-size:7px;font-style:normal}.kinship-generation{left:56px;right:24px}.kinship-generation span{background:var(--paper)}.kinship-legend{position:absolute;right:16px;bottom:16px;z-index:9;display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--line-strong);background:#fffdf8f2;box-shadow:0 6px 18px #292d2914;color:var(--muted);font-size:7.5px}.kinship-legend span{display:flex;align-items:center;gap:4px;white-space:nowrap}.kinship-legend i{width:9px;height:9px;border:1px solid #9b8e7b;background:var(--surface)}.kinship-legend i.focal{border-color:var(--red);background:var(--red-soft)}.kinship-legend i.direct{border-color:var(--green);background:#edf2ec}.kinship-legend i.same{border-color:var(--jade)}.kinship-legend i.uncertain{border-style:dashed}.kinship-zoom{position:absolute}.kinship-data-warning{position:absolute;left:50%;bottom:16px;z-index:8;transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid #d7baa6;background:#fbf3e8;color:#85543b;font-size:8px}.kinship-data-warning svg{width:14px}.kinship-relation-title{display:flex;align-items:center;gap:10px;padding:11px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.kinship-relation-title>svg{width:23px;color:var(--red)}.kinship-relation-title span,.kinship-relation-title strong,.kinship-relation-title small{display:block}.kinship-relation-title span{color:var(--muted);font-size:8px}.kinship-relation-title strong{margin-top:2px;color:var(--green);font:600 13px "Noto Serif SC",serif}.kinship-relation-title small{margin-top:2px;color:var(--jade);font-size:7.5px}.kinship-route>p{display:block;padding:9px 10px;border-left:2px solid var(--red);background:var(--red-soft);color:#67524b}.kinship-route .text-action svg{width:15px}.kinship-boundary-note{display:flex;gap:8px;margin-top:18px;padding:11px;background:#edf1ec;color:var(--green)}.kinship-boundary-note svg{width:17px;flex:0 0 auto}.kinship-boundary-note span{color:var(--muted);font-size:8px;line-height:1.55}.kinship-boundary-note strong{display:block;margin-bottom:3px;color:var(--green)}.kinship-empty{min-height:100%;display:grid;place-content:center;justify-items:center;color:var(--muted)}.kinship-empty svg{width:36px;color:var(--jade)}.kinship-empty h1{margin:12px 0 5px;color:var(--green);font:600 19px "Noto Serif SC",serif}.kinship-empty p{margin:0;font-size:10px}.biography-page{height:100%;overflow:auto;padding:22px 28px 48px;background-color:var(--paper);background-image:radial-gradient(rgba(41,45,41,.045) .55px,transparent .55px);background-size:6px 6px}.bio-topline{display:flex;justify-content:space-between;align-items:flex-start;max-width:1250px;margin:0 auto}.bio-topline h1{margin:0;color:var(--green);font:700 30px/1.2 "Noto Serif SC",serif;letter-spacing:.08em}.bio-topline p{margin:7px 0 0;color:var(--muted);font-size:11px}.solid-btn.compact{min-height:34px}.bio-top-actions{display:flex;gap:7px}.bio-top-actions .compact{min-height:34px}.bio-tabs{max-width:1250px;margin:19px auto 0;display:flex;gap:28px;border-bottom:1px solid var(--line-strong)}.bio-tabs button{position:relative;border:0;background:none;padding:0 0 11px;color:var(--muted);font-size:11px;cursor:pointer}.bio-tabs button.active{color:var(--green);font-weight:600}.bio-tabs button.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--red)}.bio-layout{max-width:1250px;margin:22px auto 0;display:grid;grid-template-columns:205px minmax(0,1fr) 250px;gap:34px;align-items:start}.identity-column{border-right:1px solid var(--line);padding-right:22px}.portrait-placeholder{height:215px;border:1px solid var(--line-strong);background:#e7e2d7;position:relative;display:grid;place-items:center;overflow:hidden}.portrait-placeholder:before{content:"";position:absolute;inset:12px;border:1px solid rgba(23,63,53,.18)}.portrait-name{position:relative;color:#173f357a;font:600 34px/1.25 "Noto Serif SC",serif;writing-mode:vertical-rl;letter-spacing:.18em}.portrait-placeholder>span{position:absolute;bottom:10px;font-size:8px;color:var(--muted)}.portrait-placeholder.has-media:before{z-index:2;pointer-events:none}.portrait-placeholder.has-media img{width:100%;height:100%;object-fit:cover}.portrait-placeholder.has-media>span{left:9px;bottom:9px;z-index:3;padding:4px 6px;background:#173f35d6;color:#fff}.identity-name{display:flex;gap:10px;align-items:center;margin:16px 0}.vertical-seal{width:30px;height:40px;display:grid;place-items:center;background:var(--red);color:#fff;font:700 16px "Noto Serif SC",serif}.identity-name h2{margin:0;font:700 20px "Noto Serif SC",serif;color:var(--green)}.identity-name p{margin:3px 0 0;font-size:10px;color:var(--muted)}.identity-list{margin:0;border-top:1px solid var(--line)}.identity-list div{display:grid;grid-template-columns:43px 1fr;gap:8px;padding:8px 0;border-bottom:1px solid var(--line);font-size:9.5px}.identity-list dt{color:var(--muted)}.identity-list dd{margin:0;color:var(--ink)}.identity-column blockquote{margin:18px 0 0;padding:13px 0 0 13px;border-left:2px solid var(--red);color:#65665f;font:500 10.5px/1.8 "Noto Serif SC",serif}.biography-content{min-width:0;padding-bottom:60px}.lead-copy{margin:0;color:#3f453f;font:500 13px/2 "Noto Serif SC",serif;text-align:justify}.biography-content section{margin-top:28px}.biography-content h2{margin:0 0 14px;color:var(--green);font:700 16px "Noto Serif SC",serif;letter-spacing:.06em}.timeline-list{position:relative;padding-left:5px}.timeline-list:before{content:"";position:absolute;left:61px;top:8px;bottom:15px;width:1px;background:var(--line-strong)}.timeline-item{position:relative;display:grid;grid-template-columns:45px 16px 1fr;gap:9px;padding:0 0 16px}.timeline-item time{padding-top:1px;color:var(--red);font:600 10px "Noto Serif SC",serif;text-align:right}.timeline-item i{width:7px;height:7px;border:1px solid var(--red);background:var(--paper);border-radius:50%;margin:4px 0 0 3px;z-index:2}.timeline-item h3{margin:0;font:600 11px "Noto Serif SC",serif;color:var(--ink)}.timeline-item p{margin:4px 0 0;color:var(--muted);font-size:9.5px;line-height:1.65}.prose-section p{margin:0 0 10px;font:400 11px/1.9 "Noto Serif SC",serif;color:#454944;text-align:justify}.biography-variants{border-top:1px solid var(--line);padding-top:20px}.biography-variants details{border:1px solid var(--line);border-radius:4px;background:#fff;margin-top:8px}.biography-variants summary{display:flex;align-items:center;gap:8px;min-height:42px;padding:0 12px;color:var(--green);cursor:pointer;font:600 12px/1.5 "Noto Serif SC",serif}.biography-variants summary svg{width:15px;height:15px;flex:0 0 auto}.biography-variants details>div{border-top:1px solid var(--line);padding:12px}.biography-variants p{margin:0 0 10px;color:#454944;font:400 11px/1.9 "Noto Serif SC",serif;text-align:justify}.resume-section{margin-top:0!important}.resume-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}.resume-section-head h2{margin-bottom:5px}.resume-section-head p{margin:0;color:var(--muted);font-size:9px}.resume-section-head button{min-height:31px;flex:0 0 auto;font-size:8.5px}.resume-section>p{margin:16px 0 0;padding-left:15px;border-left:2px solid var(--jade);color:#454944;font:400 11px/1.9 "Noto Serif SC",serif;white-space:pre-line}.section-heading-row{display:flex;justify-content:space-between;align-items:center}.section-heading-row button{display:inline-flex;align-items:center;border:0;background:none;color:var(--jade);font-size:9px;cursor:pointer}.archive-row{width:100%;display:grid;grid-template-columns:30px 1fr 18px;align-items:center;gap:8px;padding:11px 0;border:0;border-top:1px solid var(--line);background:none;text-align:left;cursor:pointer;color:var(--green)}.archive-row:last-child{border-bottom:1px solid var(--line)}.archive-row>svg:first-child{padding:5px;width:27px;height:27px;border:1px solid var(--line-strong)}.archive-row strong,.archive-row small{display:block}.archive-row strong{font:600 11px "Noto Serif SC",serif;color:var(--ink)}.archive-row small{margin-top:3px;font-size:8.5px;color:var(--muted)}.media-strip{display:grid;grid-template-columns:105px 105px 1fr;gap:9px}.photo-empty{height:82px;border:1px solid var(--line);display:grid;place-items:center;align-content:center;gap:5px;background:#e8e3d8;color:var(--jade)}.photo-empty.second{background:#dedbd2}.photo-empty svg{width:19px}.photo-empty span{font-size:8px;color:var(--muted)}.audio-row{min-width:0;display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:var(--surface);padding:10px;cursor:pointer;text-align:left}.audio-icon{width:34px;height:34px;display:grid;place-items:center;color:var(--red);border:1px solid var(--red)}.audio-icon svg{width:17px}.audio-row strong,.audio-row small{display:block}.audio-row strong{font:600 10px "Noto Serif SC",serif}.audio-row small{margin-top:4px;color:var(--muted);font-size:8px}.audio-wave{margin-left:auto;width:45px;height:20px;background:repeating-linear-gradient(90deg,var(--jade) 0 1px,transparent 1px 4px);-webkit-mask-image:linear-gradient(to bottom,transparent 8%,black 45%,transparent 92%);mask-image:linear-gradient(to bottom,transparent 8%,black 45%,transparent 92%);opacity:.6}.bio-rail{display:grid;gap:20px}.bio-rail section{padding-bottom:17px;border-bottom:1px solid var(--line)}.mini-lineage{display:grid;justify-items:center;gap:4px}.mini-lineage>div{width:132px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);padding:7px 8px;background:#fffdf8a6}.mini-lineage span{width:24px;height:23px;display:grid;place-items:center;background:#e8e2d6;color:var(--muted);font-size:8px}.mini-lineage strong{font:600 10px "Noto Serif SC",serif;color:var(--green)}.mini-lineage>i{height:11px;width:1px;background:var(--red)}.mini-lineage .mini-current{border-color:var(--red);background:var(--red-soft)}.mini-lineage .mini-current span{background:var(--red);color:#fff}.source-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.source-list li{display:grid;grid-template-columns:22px 1fr;gap:8px;align-items:start}.source-list svg{width:17px;color:var(--jade)}.source-list span{font:500 9.5px "Noto Serif SC",serif}.source-list small{display:block;margin-top:3px;font:400 8px Noto Sans SC,sans-serif;color:var(--muted)}.revision-panel p{margin:7px 0;display:flex;align-items:center;gap:6px;font-size:9px;color:var(--green)}.revision-panel p svg{width:14px}.revision-panel small{display:block;margin-top:10px;color:var(--muted);font-size:8px;line-height:1.7}.revision-panel .review-warning{padding:7px 8px;border-left:2px solid var(--red);background:var(--red-soft);color:#7b3027;line-height:1.5}.rail-actions{display:grid;gap:7px}.rail-actions svg{width:15px}.permission-button{display:block;min-width:0}.permission-button>button{width:100%}.biography-access-status{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;padding:10px;border:1px solid #d7baa6;background:#fbf3e8;color:#85543b}.biography-access-status>svg{width:17px;margin-top:1px}.biography-access-status strong{display:block;color:#7b3027;font-size:9px}.biography-access-status p{margin:4px 0 0;color:#85543b;font-size:8px;line-height:1.55}.biography-access-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.biography-access-actions .text-action{padding:0;color:var(--green);font-size:8px}.biography-access-actions .text-action svg{width:13px}.is-spinning{animation:yuanmai-spin .8s linear infinite}@keyframes yuanmai-spin{to{transform:rotate(360deg)}}.archive-empty,.media-empty{padding:24px;border:1px dashed var(--line-strong);color:var(--muted);font-size:10px;line-height:1.7;background:#fffdf87a}.media-empty{min-height:160px;display:grid;place-items:center;align-content:center;gap:7px;text-align:center}.media-empty svg{color:var(--jade)}.media-empty strong{color:var(--green);font:600 12px "Noto Serif SC",serif}.media-empty span{max-width:310px}.media-empty button{margin-top:5px}.media-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.media-section-head h2{margin-bottom:5px}.media-section-head p{margin:0;color:var(--muted);font-size:9px;line-height:1.5}.media-section-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.media-section-head button{min-height:31px;flex:0 0 auto;font-size:8.5px}.media-section-head button svg{width:14px}.media-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.media-record{min-width:0;border:1px solid var(--line);background:#fffdf8b8}.media-record-preview{aspect-ratio:4 / 3;display:grid;place-items:center;overflow:hidden;border-bottom:1px solid var(--line);background:#e8e3d8;color:var(--jade)}.media-record-preview img{width:100%;height:100%;object-fit:contain;background:#f1eee6}.media-record-preview>svg{width:28px;height:28px}.media-record.audio .media-record-preview,.media-record.document .media-record-preview{aspect-ratio:auto;min-height:72px;background:#f1eee6}.media-record-body{padding:12px}.media-record-title{display:flex;justify-content:space-between;align-items:center;gap:8px}.media-record-title>span{color:var(--jade);font-size:8px;font-weight:700}.media-record-title em{padding:3px 5px;background:#f1e5d9;color:#8a553d;font-size:7px;font-style:normal;white-space:nowrap}.media-record-title em.accepted{background:#e1ece3;color:var(--green)}.media-record h3{margin:8px 0 0;color:var(--green);font:600 12px/1.4 "Noto Serif SC",serif;overflow-wrap:anywhere}.media-record p{margin:5px 0 0;min-height:28px;color:var(--muted);font-size:8.5px;line-height:1.55}.media-record audio{width:100%;height:31px;margin-top:9px}.media-record-body>a{min-height:30px;display:inline-flex;align-items:center;gap:5px;margin-top:9px;color:var(--green);font-size:8.5px;text-decoration:none}.media-record-body>a.disabled{color:var(--muted);cursor:default}.media-record-body>a svg{width:14px}.media-record dl{margin:10px 0 0;border-top:1px solid var(--line)}.media-record dl>div{display:grid;grid-template-columns:38px minmax(0,1fr);gap:7px;padding:6px 0;border-bottom:1px solid var(--line);font-size:7.5px}.media-record dt{color:var(--muted)}.media-record dd{margin:0;color:var(--ink);overflow-wrap:anywhere}.media-record footer{min-height:0;display:flex;justify-content:space-between;gap:8px;padding:9px 0 0;border:0;background:transparent}.media-record footer span{display:inline-flex;align-items:center;gap:4px;color:var(--jade);font-size:7px;white-space:nowrap}.media-record footer span svg{width:11px}.media-record footer small{min-width:0;overflow:hidden;color:var(--muted);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.bio-tab-section{margin-top:0!important}.source-detail-row{display:grid;grid-template-columns:28px 1fr;gap:10px;padding:12px 0;border-top:1px solid var(--line)}.source-detail-row:last-child{border-bottom:1px solid var(--line)}.source-detail-row>svg{color:var(--jade);width:18px}.source-detail-row strong,.source-detail-row span,.source-detail-row small{display:block}.source-detail-row strong{color:var(--green);font:600 11px "Noto Serif SC",serif}.source-detail-row span{margin-top:3px;color:var(--ink);font-size:9px}.source-detail-row small{margin-top:3px;color:var(--muted);font-size:8px}.directory-page,.workbench-page{height:100%;min-width:0;display:flex;flex-direction:column;background-color:var(--paper);background-image:radial-gradient(rgba(41,45,41,.04) .55px,transparent .55px);background-size:6px 6px}.living-directory-page{min-width:0;min-height:100%;overflow:auto;background:var(--paper);background-image:radial-gradient(rgba(41,45,41,.04) .55px,transparent .55px);background-size:6px 6px}.living-directory-head{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:24px 28px 19px;border-bottom:1px solid var(--line);background:#f7f3e9f0}.directory-kicker,.directory-dialog-kicker{display:inline-flex;align-items:center;gap:6px;color:var(--red);font-size:8.5px;font-weight:700;letter-spacing:.08em}.directory-kicker svg,.directory-dialog-kicker svg{color:var(--jade)}.living-directory-head h1{margin:7px 0 0;color:var(--green);font:700 24px/1.2 "Noto Serif SC",serif}.living-directory-head p{margin:7px 0 0;color:var(--muted);font-size:10px}.living-directory-stats{display:flex;border:1px solid var(--line-strong);background:#fffdf8b3}.living-directory-stats span{min-width:95px;padding:10px 14px;border-right:1px solid var(--line)}.living-directory-stats span:last-child{border-right:0}.living-directory-stats strong,.living-directory-stats small{display:block}.living-directory-stats strong{color:var(--green);font:700 17px "Noto Serif SC",serif}.living-directory-stats small{margin-top:2px;color:var(--muted);font-size:8px}.living-directory-notice{display:flex;align-items:flex-start;gap:8px;margin:16px 28px 0;padding:10px 12px;border-left:2px solid var(--jade);background:#edf1ec;color:var(--muted);font-size:9px;line-height:1.55}.living-directory-notice svg{flex:0 0 auto;color:var(--jade)}.living-directory-notice strong{margin-right:5px;color:var(--green)}.living-directory-toolbar{display:flex;align-items:end;gap:8px;padding:17px 28px 12px}.living-directory-toolbar>label{display:grid;gap:5px}.living-directory-toolbar>label>span{color:var(--muted);font-size:8px}.living-directory-toolbar input,.living-directory-toolbar select{height:34px;border:1px solid var(--line-strong);border-radius:0;background:var(--surface);color:var(--ink);padding:0 9px;font-size:9px}.living-directory-search{min-width:250px;flex:1;display:flex!important;flex-direction:row;align-items:center;gap:7px;padding:0 9px}.living-directory-search svg{color:var(--jade)}.living-directory-search input{min-width:0;flex:1;border:0;outline:0;padding:0}.living-directory-toolbar>button{height:34px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line-strong);background:transparent;color:var(--green);padding:0 10px;font-size:9px;cursor:pointer}.living-directory-toolbar>button.active{background:#e5ece6;border-color:var(--jade)}.living-directory-toolbar>button.solid-btn{border-color:var(--green);background:var(--green);color:#fff}.living-directory-resultbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 28px 11px;border-bottom:1px solid var(--line);color:var(--muted);font-size:9px}.living-directory-resultbar strong{color:var(--red);font:700 12px "Noto Serif SC",serif}.living-directory-resultbar small{display:inline-flex;align-items:center;gap:4px}.living-directory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;padding:18px 28px 30px}.directory-person-card{min-width:0;border:1px solid var(--line);background:#fffdf8c7;box-shadow:0 4px 12px #17231e0a}.directory-person-card-head{display:flex;align-items:center;gap:9px;padding:13px 14px 10px;border-bottom:1px solid var(--line)}.directory-avatar{width:37px;height:37px;display:grid;place-items:center;flex:0 0 auto;background:var(--green);color:#fff;font:700 17px "Noto Serif SC",serif}.directory-person-card h2{margin:0;color:var(--green);font:600 14px "Noto Serif SC",serif}.directory-person-card-head p{margin:3px 0 0;color:var(--muted);font-size:8px}.directory-living-badge{margin-left:auto;padding:3px 6px;background:#e3ede5;color:var(--green);font-size:7px}.directory-person-card-body{min-height:140px;padding:12px 14px 4px}.directory-detail{display:flex;align-items:flex-start;gap:6px;margin:0 0 7px;color:var(--ink);font-size:9px;line-height:1.45}.directory-detail svg{flex:0 0 auto;color:var(--jade);margin-top:1px}.directory-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.directory-tags span,.directory-contact-fields span{display:inline-flex;align-items:center;gap:3px;padding:4px 6px;background:#edf1ec;color:var(--green);font-size:7px}.directory-muted{margin:11px 0 0;color:var(--muted);font-size:8px}.directory-bio{margin:10px 0 0;color:#555a54;font-size:8px;line-height:1.5}.directory-contact-fields{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.directory-person-card-actions{display:flex;gap:6px;padding:9px 14px 13px;border-top:1px solid var(--line)}.directory-person-card-actions button{min-height:29px;flex:1;display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:8px;cursor:pointer}.directory-person-card-actions .outline-btn{border:1px solid var(--line-strong);background:transparent;color:var(--green)}.directory-person-card-actions .solid-btn{border:1px solid var(--green);background:var(--green);color:#fff}.directory-person-card-actions button:disabled{opacity:.45;cursor:default}.directory-card-error{margin:0 14px 11px;color:#8b342d;font-size:8px}.living-directory-empty{display:grid;place-items:center;gap:7px;padding:72px 20px;color:var(--muted);text-align:center}.living-directory-empty svg{color:var(--jade)}.living-directory-empty strong{color:var(--green);font:600 13px "Noto Serif SC",serif}.living-directory-empty span{font-size:9px}.directory-profile-dialog{width:min(680px,100%);max-height:min(820px,calc(100dvh - 30px));display:flex;flex-direction:column}.directory-profile-dialog>header{display:flex;justify-content:space-between;gap:15px;padding:18px 21px 14px;border-bottom:1px solid var(--line)}.directory-profile-dialog h2{margin:7px 0 0;color:var(--green);font:700 21px "Noto Serif SC",serif}.directory-profile-dialog header p{margin:4px 0 0;color:var(--muted);font-size:8px}.directory-profile-dialog header button{width:29px;height:29px;display:grid;place-items:center;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}.directory-profile-form{min-height:0;overflow-y:auto;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px 21px 20px}.directory-profile-form label{display:grid;gap:5px}.directory-profile-form label>span,.directory-visibility-grid>strong{color:var(--green);font-size:8.5px;font-weight:600}.directory-profile-form input,.directory-profile-form textarea,.directory-profile-form select{width:100%;min-height:33px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);color:var(--ink);padding:8px 9px;font-size:9px}.directory-profile-form textarea{min-height:72px;resize:vertical}.directory-profile-form small{color:var(--muted);font-size:7.5px}.directory-profile-form .span-two{grid-column:1 / -1}.directory-visibility-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:2px;padding-top:13px;border-top:1px solid var(--line)}.directory-visibility-grid>strong{grid-column:1 / -1}.directory-visibility-grid label{gap:4px}.directory-visibility-grid label>span{color:var(--muted);font-size:7.5px}.directory-visibility-grid select{min-height:30px;padding:0 7px;font-size:8px}.directory-form-error{grid-column:1 / -1;margin:0;padding:8px 10px;border-left:2px solid var(--red);background:var(--red-soft);color:#7b3027;font-size:8px}.directory-profile-dialog>footer{display:flex;align-items:center;gap:7px;padding:11px 21px;border-top:1px solid var(--line)}.directory-privacy-note{display:inline-flex;align-items:center;gap:5px;flex:1;color:var(--muted);font-size:7.5px}.directory-privacy-note svg{color:var(--jade)}.directory-saved{display:grid;place-items:center;gap:8px;padding:46px 24px;color:var(--jade);text-align:center}.directory-saved strong{color:var(--green);font:600 14px "Noto Serif SC",serif}.directory-saved p{max-width:370px;margin:0 0 8px;color:var(--muted);font-size:9px;line-height:1.55}.directory-head,.workbench-head{min-height:92px;flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:17px 24px;border-bottom:1px solid var(--line);background:#f7f3e9f0}.directory-head h1,.workbench-head h1{margin:0;color:var(--green);font:700 23px/1.2 "Noto Serif SC",serif;letter-spacing:.05em}.directory-head p,.workbench-head p{margin:7px 0 0;color:var(--muted);font-size:10.5px}.directory-summary{display:flex;align-items:stretch;border:1px solid var(--line-strong);background:#fffdf8b3}.directory-summary span{min-width:106px;display:grid;grid-template-columns:20px 1fr;align-items:center;gap:1px 7px;padding:9px 12px;border-right:1px solid var(--line)}.directory-summary span:last-child{border-right:0}.directory-summary svg{grid-row:span 2;width:17px;color:var(--jade)}.directory-summary strong{color:var(--green);font:700 15px "Noto Serif SC",serif}.directory-summary small{color:var(--muted);font-size:8px}.directory-filters{display:grid;grid-template-columns:minmax(210px,1.4fr) repeat(4,minmax(112px,.65fr)) minmax(150px,.75fr) auto;gap:8px;align-items:end;padding:12px 18px;border-bottom:1px solid var(--line);background:#fffdf8b8}.directory-filters label{display:grid;gap:5px}.directory-filters label>span,.generation-filter>span{color:var(--muted);font-size:8.5px}.directory-filters select,.directory-filters input,.review-queue-tools select,.review-queue-tools input{height:33px;min-width:0;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);color:var(--ink);padding:0 9px;font-size:10px}.directory-filters .directory-search{height:33px;display:flex;flex-direction:row;align-items:center;gap:7px;border:1px solid var(--line-strong);background:var(--paper);padding:0 9px}.directory-search svg{width:15px;color:var(--jade)}.directory-search input{flex:1;height:30px;padding:0;border:0;outline:0;background:transparent}.generation-filter{display:grid;grid-template-columns:1fr 37px 14px 37px;gap:5px;align-items:center}.generation-filter>span{grid-column:1 / -1}.generation-filter input{width:37px;padding:0 4px;text-align:center}.generation-filter i{font-style:normal;color:var(--muted);font-size:8px;text-align:center}.filter-reset{height:33px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line-strong);background:transparent;color:var(--green);padding:0 10px;font-size:9px;cursor:pointer}.filter-reset svg{width:14px}.directory-resultbar{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 20px;border-bottom:1px solid var(--line);color:var(--muted);font-size:9px}.directory-resultbar strong{color:var(--red);font:700 12px "Noto Serif SC",serif}.directory-resultbar small{font-size:8px}.directory-table-scroll{flex:1;min-height:0;overflow:auto;scrollbar-width:none;-ms-overflow-style:none;touch-action:pan-x pan-y;overscroll-behavior:contain}.directory-table-scroll::-webkit-scrollbar{width:0;height:0;display:none}.directory-table{width:100%;min-width:880px;border-collapse:collapse;table-layout:fixed;background:#fffdf85c}.directory-table th{position:sticky;top:0;z-index:3;height:34px;padding:0 12px;border-bottom:1px solid var(--line-strong);background:#eee9de;color:var(--green);font-size:9px;font-weight:600;text-align:left}.directory-table th:nth-child(1){width:165px}.directory-table th:nth-child(2){width:64px}.directory-table th:nth-child(3){width:145px}.directory-table th:nth-child(4){width:112px}.directory-table th:nth-child(5){width:92px}.directory-table th:nth-child(7){width:148px}.directory-table td{height:48px;padding:6px 12px;border-bottom:1px solid #e5dfd3;color:#4b504a;font-size:9.5px;vertical-align:middle}.directory-table tbody tr{cursor:pointer;transition:background .14s ease}.directory-table tbody tr:hover{background:#6e8d7b14}.directory-table tbody tr.selected{background:var(--red-soft);box-shadow:inset 3px 0 0 var(--red)}.directory-table td strong,.directory-table td small,.directory-table td span{display:block}.directory-table td strong{color:var(--green);font:600 12px "Noto Serif SC",serif}.directory-table td small{margin-top:3px;overflow:hidden;color:var(--muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.directory-table td b{color:var(--red);font:600 11px "Noto Serif SC",serif}.directory-table .source-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-status{display:inline-block!important;padding:3px 6px;border-left:2px solid var(--jade);background:#edf1ec;color:var(--green);font-style:normal;font-size:8px;white-space:nowrap}.member-status.needs_review{border-color:var(--red);background:var(--red-soft);color:#7f332a}.member-status.draft{border-color:#ac7c35;background:#f2e8d6;color:#725323}.row-actions{display:flex;gap:4px}.row-actions button{width:27px;height:27px;display:grid;place-items:center;border:1px solid var(--line);background:var(--surface);color:var(--jade);cursor:pointer}.row-actions button:hover{border-color:var(--green);color:var(--green)}.row-actions svg{width:13px}.directory-empty{padding:55px 20px;color:var(--muted);font-size:11px;text-align:center}.directory-pagination{min-height:48px;flex:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 18px;border-top:1px solid var(--line);background:#fffdf8cc;color:var(--muted);font-size:9px}.directory-pagination div{display:flex;gap:6px}.directory-pagination button{height:29px;display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line-strong);background:var(--surface);color:var(--green);padding:0 9px;font-size:9px;cursor:pointer}.directory-pagination button:disabled{cursor:default;opacity:.4}.directory-pagination svg{width:13px}.workbench-stats{display:flex;border:1px solid var(--line-strong)}.workbench-stats button{width:105px;display:grid;grid-template-columns:20px 1fr;align-items:center;gap:0 7px;padding:8px 10px;border:0;border-right:1px solid var(--line);background:#fffdf8b3;color:var(--muted);text-align:left;cursor:pointer}.workbench-stats button:last-child{border-right:0}.workbench-stats button.active{background:#e9eee9;color:var(--green);box-shadow:inset 0 -2px 0 var(--red)}.workbench-stats svg{grid-row:span 2;width:16px}.workbench-stats strong{color:var(--green);font:700 14px "Noto Serif SC",serif}.workbench-stats small{font-size:8px}.workbench-grid{flex:1;min-height:0;display:grid;grid-template-columns:190px minmax(340px,.9fr) minmax(330px,1.05fr)}.review-categories,.review-detail{min-height:0;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;background:#fffdf8ab}.review-categories::-webkit-scrollbar,.review-detail::-webkit-scrollbar,.review-list::-webkit-scrollbar{display:none}.review-categories{padding:15px 10px;border-right:1px solid var(--line)}.review-pane-title{display:flex;align-items:center;gap:7px;padding:2px 9px 12px;color:var(--green);font:600 11px "Noto Serif SC",serif}.review-pane-title svg{width:16px;color:var(--jade)}.review-categories>button{width:100%;min-height:37px;display:flex;justify-content:space-between;align-items:center;gap:8px;border:0;background:transparent;padding:0 9px;color:#525950;font-size:9.5px;text-align:left;cursor:pointer}.review-categories>button:hover{background:#6e8d7b14}.review-categories>button.active{background:#e8ede8;color:var(--green);box-shadow:inset 2px 0 0 var(--red);font-weight:600}.review-categories>button strong{color:var(--red);font-size:9px}.review-boundary{margin:18px 7px 0;padding:11px;display:flex;gap:8px;border-left:2px solid var(--jade);background:#edf1ec}.review-boundary svg{width:16px;flex:0 0 auto;color:var(--green)}.review-boundary span{color:var(--muted);font-size:8px;line-height:1.55}.review-boundary strong{display:block;margin-bottom:3px;color:var(--green);font:600 9px "Noto Serif SC",serif}.review-queue{min-width:0;min-height:0;display:flex;flex-direction:column;border-right:1px solid var(--line);background:#f7f3e9b8}.review-queue-tools{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:7px;padding:12px;border-bottom:1px solid var(--line)}.review-queue-tools label{height:33px;display:flex;align-items:center;gap:7px;border:1px solid var(--line-strong);background:var(--paper);padding:0 9px}.review-queue-tools label svg{width:14px;color:var(--jade)}.review-queue-tools label input{flex:1;height:30px;padding:0;border:0;outline:0}.review-queue-caption{min-height:34px;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;border-bottom:1px solid var(--line);color:var(--green);font-size:9px}.review-queue-caption small{overflow:hidden;color:var(--muted);font-size:7.5px;text-overflow:ellipsis;white-space:nowrap}.review-list{flex:1;min-height:0;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.review-list>button{width:100%;min-height:58px;display:grid;grid-template-columns:8px minmax(105px,1fr) auto 15px;align-items:center;gap:9px;border:0;border-bottom:1px solid #e2dccf;background:transparent;padding:8px 11px;text-align:left;cursor:pointer}.review-list>button:hover{background:#6e8d7b12}.review-list>button.selected{background:var(--red-soft);box-shadow:inset 3px 0 0 var(--red)}.review-list>button>span{min-width:0}.review-list strong,.review-list small{display:block}.review-list strong{overflow:hidden;color:var(--green);font:600 11px "Noto Serif SC",serif;text-overflow:ellipsis;white-space:nowrap}.review-list small{margin-top:4px;overflow:hidden;color:var(--muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.review-list em{max-width:86px;color:var(--jade);font-size:8px;font-style:normal;text-align:right}.review-list svg{width:13px;color:var(--line-strong)}.review-status-dot{width:7px;height:7px;border:1px solid var(--red);background:transparent;border-radius:50%}.review-status-dot.accepted{border-color:var(--green-2);background:var(--green-2)}.review-status-dot.rejected{border-color:#97968d;background:#97968d}.review-empty{padding:48px 18px;color:var(--muted);font-size:10px;text-align:center}.review-detail{padding:18px 20px 28px}.review-detail-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:11px;border-bottom:1px solid var(--line);color:var(--green);font-size:9px}.review-decision{padding:3px 6px;background:var(--red-soft);color:#7f332a;font-size:8px;font-style:normal}.review-decision.accepted{background:#e4ece7;color:var(--green)}.review-decision.rejected{background:#e9e7e1;color:#66675f}.review-subject{display:flex;align-items:center;gap:12px;padding:17px 0 14px}.review-subject>div{width:46px;height:52px;display:grid;place-items:center;flex:0 0 auto;background:var(--green);color:#fff;font:700 21px "Noto Serif SC",serif}.review-subject h2{margin:0;color:var(--green);font:700 19px "Noto Serif SC",serif}.review-subject p{margin:4px 0 0;color:var(--muted);font-size:8.5px}.review-comparison{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}.review-comparison>div{min-width:0;padding:12px}.review-comparison>div:first-child{border-right:1px solid var(--line);background:#eee8da73}.review-comparison>div:last-child{box-shadow:inset 0 2px 0 var(--red);background:#fffdf89e}.review-comparison span{color:var(--muted);font-size:8px}.review-comparison p{margin:7px 0 0;color:var(--ink);font:500 10px/1.65 "Noto Serif SC",serif;overflow-wrap:anywhere}.review-reason,.review-sources{margin-top:18px}.review-reason h3,.review-sources h3{margin:0 0 9px;color:var(--green);font:600 11px "Noto Serif SC",serif}.review-reason p,.review-sources>p{margin:0;color:#555a54;font-size:9px;line-height:1.7}.review-reason small{display:block;margin-top:6px;color:var(--muted);font-size:8px}.review-assignment{margin-top:18px;padding:12px;border:1px solid var(--line);background:#f4f1e9}.review-assignment h3{margin:0 0 10px;color:var(--green);font:600 11px "Noto Serif SC",serif}.review-assignment>div{display:grid;grid-template-columns:minmax(110px,1fr) minmax(112px,.85fr) auto;gap:7px;align-items:end}.review-assignment label{min-width:0;display:grid;gap:5px}.review-assignment label>span{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:7.5px}.review-assignment label svg{width:12px;color:var(--jade)}.review-assignment select,.review-assignment input{width:100%;min-width:0;height:31px;border:1px solid var(--line-strong);border-radius:0;background:var(--surface);padding:0 7px;color:var(--ink);font-size:8.5px}.review-assignment input:disabled{opacity:.45}.review-assignment>div>button{height:31px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--green);background:var(--green);padding:0 9px;color:#fff;font-size:8px;cursor:pointer;white-space:nowrap}.review-assignment>div>button svg{width:13px}.review-assignment>p{margin:8px 0 0;color:var(--muted);font-size:7.5px;line-height:1.5}.review-sources>div{display:grid;grid-template-columns:22px 1fr;gap:8px;padding:9px 0;border-top:1px solid var(--line)}.review-sources>div:last-child{border-bottom:1px solid var(--line)}.review-sources svg{width:16px;color:var(--jade)}.review-sources strong,.review-sources small{display:block}.review-sources strong{color:var(--ink);font:500 9px "Noto Serif SC",serif}.review-sources small{margin-top:3px;color:var(--muted);font-size:8px}.review-person-links{display:flex;gap:7px;margin-top:16px}.review-person-links button{flex:1;min-height:31px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line-strong);background:transparent;color:var(--green);font-size:8.5px;cursor:pointer}.review-person-links svg{width:14px}.review-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:19px;padding-top:14px;border-top:1px solid var(--line)}.review-actions button{min-height:35px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:9px;font-weight:600;cursor:pointer}.review-actions svg{width:15px}.review-actions .accept{border:1px solid var(--green);background:var(--green);color:#fff}.review-actions .reject{border:1px solid var(--red);background:transparent;color:var(--red)}.review-actions .reopen{grid-column:1 / -1;border:1px solid var(--green);background:transparent;color:var(--green)}.review-actions.single{grid-template-columns:1fr}.review-actions .reconnect{border:1px solid var(--green);background:var(--green);color:#fff}.review-actions .restore{grid-column:1 / -1;border:1px solid var(--red);background:transparent;color:var(--red)}.review-detail-empty{min-height:280px;display:grid;justify-items:center;align-content:center;gap:8px;color:var(--muted);text-align:center}.review-detail-empty svg{width:30px;color:var(--jade)}.review-detail-empty strong{color:var(--green);font:600 12px "Noto Serif SC",serif}.review-detail-empty span{max-width:220px;font-size:9px;line-height:1.6}.family-archive-page{height:100%;min-width:0;display:flex;flex-direction:column;overflow:hidden;background-color:var(--paper);background-image:radial-gradient(rgba(41,45,41,.04) .55px,transparent .55px);background-size:6px 6px}.family-archive-head{min-height:92px;flex:0 0 auto;display:grid;grid-template-columns:minmax(300px,1fr) auto auto;align-items:center;gap:19px;padding:16px 24px;border-bottom:1px solid var(--line);background:#f7f3e9f2}.family-archive-head h1{margin:0;color:var(--green);font:700 23px/1.2 "Noto Serif SC",serif}.family-archive-head p{margin:7px 0 0;color:var(--muted);font-size:10px;line-height:1.55}.family-archive-head>button{min-height:36px;white-space:nowrap}.family-archive-stats{display:flex;border:1px solid var(--line-strong)}.family-archive-stats span{min-width:82px;padding:8px 10px;border-right:1px solid var(--line)}.family-archive-stats span:last-child{border-right:0}.family-archive-stats strong,.family-archive-stats small{display:block}.family-archive-stats strong{color:var(--green);font:700 14px "Noto Serif SC",serif}.family-archive-stats small{margin-top:2px;color:var(--muted);font-size:7.5px}.family-archive-scroll{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;scrollbar-width:none;-ms-overflow-style:none}.family-archive-scroll::-webkit-scrollbar{width:0;height:0;display:none}.family-archive-tools{min-height:57px;flex:0 0 auto;display:flex;align-items:center;gap:7px;padding:10px 13px;border-bottom:1px solid var(--line);background:#fffdf8b3}.family-archive-tools select,.archive-year{height:34px;flex:0 0 auto;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font-size:9px}.family-archive-tools select{width:108px;padding:0 8px}.archive-search{height:34px;min-width:210px;max-width:420px;flex:1;display:flex;align-items:center;gap:7px;padding:0 9px;border:1px solid var(--line-strong);background:var(--paper)}.archive-search svg{width:14px;color:var(--jade)}.archive-search input{min-width:0;flex:1;height:31px;border:0;outline:0;background:transparent;color:var(--ink);font-size:9px}.archive-year{width:98px;display:grid;grid-template-columns:24px 1fr;align-items:center}.archive-year span{color:var(--muted);font-size:8px;text-align:center}.archive-year input{width:100%;min-width:0;height:31px;border:0;outline:0;background:transparent;color:var(--ink);font-size:9px}.archive-person-filter{min-width:0;max-width:175px;height:34px;display:grid;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:5px;border:1px solid var(--green-2);background:#e8eee8;padding:0 8px;color:var(--green);cursor:pointer}.archive-person-filter svg{width:14px}.archive-person-filter span{overflow:hidden;font-size:8.5px;text-overflow:ellipsis;white-space:nowrap}.archive-person-filter b{color:var(--red);font-size:7.5px;font-weight:500}.family-archive-grid{flex:1;min-height:0;display:grid;grid-template-columns:205px minmax(340px,1fr) minmax(315px,.82fr)}.event-categories,.event-detail{min-height:0;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;background:#fffdf8ad}.event-categories::-webkit-scrollbar,.event-detail::-webkit-scrollbar,.event-list::-webkit-scrollbar{display:none}.event-categories{padding:14px 10px 22px;border-right:1px solid var(--line)}.event-pane-title{display:flex;align-items:center;gap:7px;padding:2px 9px 10px;color:var(--green);font:600 11px "Noto Serif SC",serif}.event-pane-title svg{width:16px;color:var(--jade)}.event-categories>button{width:100%;min-height:38px;display:grid;grid-template-columns:27px minmax(0,1fr) auto;align-items:center;gap:7px;border:0;background:transparent;padding:6px 8px;color:var(--ink);text-align:left;cursor:pointer}.event-categories>button:first-of-type{display:flex;justify-content:space-between;padding-left:12px}.event-categories>button:hover{background:#6e8d7b14}.event-categories>button.active{background:#e8ede8;box-shadow:inset 2px 0 0 var(--red)}.event-categories>button>i{width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--line-strong);background:#f3f0e8;color:var(--green);font:600 9px "Noto Serif SC",serif;font-style:normal}.event-categories>button span{min-width:0}.event-categories>button span strong,.event-categories>button span small{display:block}.event-categories>button span strong{color:var(--green);font:600 9px "Noto Serif SC",serif}.event-categories>button span small{margin-top:2px;overflow:hidden;color:var(--muted);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.event-categories>button>b,.event-categories>button:first-of-type strong{color:var(--red);font-size:8px;font-weight:600}.event-source-boundary{display:flex;gap:8px;margin:18px 7px 0;padding:11px;border-left:2px solid var(--jade);background:#edf1ec}.event-source-boundary svg{width:16px;flex:0 0 auto;color:var(--green)}.event-source-boundary span{color:var(--muted);font-size:7.5px;line-height:1.55}.event-source-boundary strong{display:block;margin-bottom:3px;color:var(--green);font:600 9px "Noto Serif SC",serif}.event-timeline-panel{min-width:0;min-height:0;display:flex;flex-direction:column;border-right:1px solid var(--line);background:#f7f3e9ad}.event-list-caption{min-height:39px;flex:0 0 auto;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:0 13px;border-bottom:1px solid var(--line);color:var(--green);font-size:9px}.event-list-caption small{overflow:hidden;color:var(--muted);font-size:7.5px;text-overflow:ellipsis;white-space:nowrap}.event-list{flex:1;min-height:0;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.event-list>button{width:100%;min-height:77px;display:grid;grid-template-columns:43px 28px minmax(135px,1fr) auto 14px;align-items:center;gap:8px;border:0;border-bottom:1px solid #e2dccf;background:transparent;padding:9px 10px;color:var(--ink);text-align:left;cursor:pointer}.event-list>button:hover{background:#6e8d7b12}.event-list>button.selected{background:var(--red-soft);box-shadow:inset 3px 0 0 var(--red)}.event-list time{color:var(--red);font:600 9px "Noto Serif SC",serif;text-align:right}.event-list>button>i{width:25px;height:29px;display:grid;place-items:center;border:1px solid var(--line-strong);background:var(--surface);color:var(--green);font:600 10px "Noto Serif SC",serif;font-style:normal}.event-list>button>span{min-width:0}.event-list strong,.event-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-list strong{color:var(--green);font:600 10.5px "Noto Serif SC",serif}.event-list small{margin-top:3px;color:var(--muted);font-size:7.5px}.event-list p{display:-webkit-box;overflow:hidden;margin:4px 0 0;color:#646861;font-size:8px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.event-list em{max-width:82px;padding:3px 5px;background:#e5ece6;color:var(--green);font-size:7px;font-style:normal;white-space:nowrap}.event-list em.pending,.event-list em.source_pending{background:#f4e6dd;color:#88452f}.event-list>button>svg{width:13px;color:var(--line-strong)}.event-empty,.event-detail-empty{min-height:270px;display:grid;justify-items:center;align-content:center;gap:8px;padding:20px;color:var(--muted);text-align:center}.event-empty svg,.event-detail-empty svg{width:28px;color:var(--jade)}.event-empty strong,.event-detail-empty strong{color:var(--green);font:600 12px "Noto Serif SC",serif}.event-empty span,.event-detail-empty span{max-width:240px;font-size:8.5px;line-height:1.6}.event-detail{padding:17px 19px 28px}.event-detail-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:10px;border-bottom:1px solid var(--line);color:var(--green);font-size:8.5px}.event-detail-head em{padding:3px 6px;background:#e4ece7;color:var(--green);font-size:7.5px;font-style:normal}.event-detail-head em.pending,.event-detail-head em.source_pending{background:#f4e6dd;color:#88452f}.event-detail-title{display:flex;align-items:center;gap:11px;padding:17px 0 14px}.event-detail-title>i{width:43px;height:49px;display:grid;place-items:center;flex:0 0 auto;background:var(--green);color:#fff;font:700 18px "Noto Serif SC",serif;font-style:normal}.event-detail-title h2{margin:0;color:var(--green);font:700 18px/1.35 "Noto Serif SC",serif}.event-detail-title p{margin:4px 0 0;color:var(--red);font:600 9px "Noto Serif SC",serif}.event-facts{margin:0;border-top:1px solid var(--line-strong)}.event-facts>div{display:grid;grid-template-columns:70px minmax(0,1fr);gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.event-facts dt{color:var(--muted);font-size:8px}.event-facts dd{margin:0;color:var(--ink);font:500 9px/1.65 "Noto Serif SC",serif;overflow-wrap:anywhere}.event-facts dd small{display:block;margin-top:2px;color:var(--muted);font:7.5px sans-serif}.event-excerpt,.event-sources{margin-top:17px}.event-excerpt{padding:11px 12px;border-left:2px solid var(--jade);background:#edf1ec}.event-excerpt h3,.event-sources h3{margin:0 0 7px;color:var(--green);font:600 10px "Noto Serif SC",serif}.event-excerpt p{display:-webkit-box;overflow:hidden;margin:0;color:#555d56;font-size:8px;line-height:1.65;-webkit-box-orient:vertical;-webkit-line-clamp:5}.event-sources>div{display:grid;grid-template-columns:20px minmax(0,1fr);gap:7px;padding:8px 0;border-top:1px solid var(--line)}.event-sources>div:last-child{border-bottom:1px solid var(--line)}.event-sources svg{width:15px;color:var(--jade)}.event-sources strong,.event-sources small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-sources strong{color:var(--ink);font:500 8.5px "Noto Serif SC",serif}.event-sources small{margin-top:3px;color:var(--muted);font-size:7px}.event-sources>p{color:var(--muted);font-size:8px}.event-detail-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:17px}.event-detail-actions button{min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line-strong);background:transparent;color:var(--green);font-size:8px;cursor:pointer}.event-detail-actions button:last-child{grid-column:1 / -1;border-color:var(--green);background:var(--green);color:#fff}.event-detail-actions svg{width:14px}.event-dialog{width:min(680px,100%);max-height:min(800px,calc(100vh - 30px));display:flex;flex-direction:column}.event-dialog-body{min-height:0;overflow-y:auto;padding:17px 22px 20px;scrollbar-width:none}.event-dialog-body::-webkit-scrollbar,.event-person-results::-webkit-scrollbar{display:none}.event-person-search{display:grid;gap:6px}.event-person-search>span,.event-form-grid label>span{color:var(--green);font-size:9px;font-weight:600}.event-person-search>div{height:34px;display:flex;align-items:center;gap:7px;padding:0 9px;border:1px solid var(--line-strong);background:var(--paper)}.event-person-search svg{width:14px;color:var(--jade)}.event-person-search input{min-width:0;flex:1;height:31px;border:0;outline:0;background:transparent;color:var(--ink);font-size:9px}.event-person-results{display:grid;grid-template-columns:1fr 1fr;gap:5px;max-height:150px;overflow-y:auto;margin-top:7px;scrollbar-width:none}.event-person-results button{min-width:0;display:grid;grid-template-columns:27px minmax(0,1fr) 14px;align-items:center;gap:7px;padding:7px;border:1px solid var(--line);background:#fffdf8b3;text-align:left;cursor:pointer}.event-person-results i{width:27px;height:27px;display:grid;place-items:center;background:#e5ebe5;color:var(--green);font:600 11px "Noto Serif SC",serif;font-style:normal}.event-person-results strong,.event-person-results small,.event-person-selected strong,.event-person-selected small{display:block}.event-person-results strong,.event-person-selected strong{color:var(--green);font:600 9px "Noto Serif SC",serif}.event-person-results small,.event-person-selected small{margin-top:2px;color:var(--muted);font-size:7.5px}.event-person-results svg{width:13px;color:var(--line-strong)}.event-person-results>p{grid-column:1 / -1;color:var(--muted);font-size:8px;text-align:center}.event-person-selected{display:flex;align-items:center;gap:7px;margin-top:7px;padding:8px 9px;border-left:2px solid var(--jade);background:#edf1ec}.event-person-selected>svg{width:18px;color:var(--green)}.event-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;padding-top:15px;border-top:1px solid var(--line)}.event-form-grid label{display:grid;gap:5px}.event-form-grid .span-two{grid-column:1 / -1}.event-form-grid input,.event-form-grid select,.event-form-grid textarea{width:100%;min-height:33px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);padding:8px 9px;color:var(--ink);font-size:9px}.event-form-grid textarea{min-height:55px;resize:vertical}.event-dialog footer .solid-btn:disabled{cursor:default;opacity:.42}.timeline-item h3 small{margin-left:7px;color:var(--jade);font:500 7.5px sans-serif}.bio-event-actions{display:flex;gap:7px;margin-top:7px}.bio-event-actions .text-action{flex:1}.biography-editor-dialog{width:min(720px,100%);max-height:min(820px,calc(100vh - 30px));display:flex;flex-direction:column}.biography-editor-tabs{min-height:43px;display:flex;flex:0 0 auto;border-bottom:1px solid var(--line);background:#f6f2e9;padding:6px 22px 0}.biography-editor-tabs button{min-width:132px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:9px;cursor:pointer}.biography-editor-tabs button.active{border-color:var(--red);color:var(--green);font-weight:600}.biography-editor-tabs svg{width:15px}.biography-editor-body{min-height:0;overflow-y:auto;padding:18px 22px 20px;scrollbar-width:none}.biography-editor-body::-webkit-scrollbar{display:none}.biography-editor-body label{display:grid;gap:6px}.biography-editor-body label>span{color:var(--green);font-size:9px;font-weight:600}.biography-editor-body label>span em{color:var(--red);font-style:normal}.biography-editor-body textarea{width:100%;min-height:255px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);padding:12px;color:var(--ink);font:400 10px/1.75 "Noto Serif SC",serif;resize:vertical}.biography-editor-body label>small{color:var(--muted);font-size:7.5px}.biography-source-note{margin-top:17px;padding-top:16px;border-top:1px solid var(--line)}.biography-source-note textarea{min-height:67px;font-family:Noto Sans SC,Microsoft YaHei,sans-serif}.biography-submit-blocker{margin:10px 0 0;padding:8px 10px;border-left:2px solid var(--red);background:var(--red-soft);color:#7b3027;font-size:8.5px;line-height:1.55}.biography-editor-dialog footer .solid-btn:disabled{cursor:default;opacity:.42}.review-biography-comparison{border:1px solid var(--line-strong);background:var(--paper)}.review-biography-comparison>header{display:grid;gap:3px;padding:10px 12px;border-bottom:1px solid var(--line);background:#f4f1e9}.review-biography-comparison>header strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.review-biography-comparison>header small{color:var(--muted);font-size:7.5px}.review-biography-drafts{display:grid;grid-template-columns:1fr 1fr}.review-biography-drafts article{min-width:0;padding:12px;background:#eee8da73}.review-biography-drafts article+article{border-left:1px solid var(--line)}.review-biography-drafts article.proposed{box-shadow:inset 0 2px 0 var(--red);background:#fffdf89e}.review-biography-drafts h3{margin:0 0 10px;color:var(--green);font:600 10px "Noto Serif SC",serif}.review-biography-drafts span{display:block;margin-top:10px;color:var(--muted);font-size:7.5px}.review-biography-drafts p{margin:5px 0 0;color:var(--ink);font:400 9px/1.7 "Noto Serif SC",serif;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:800px){.review-biography-drafts{grid-template-columns:1fr}.review-biography-drafts article+article{border-top:1px solid var(--line);border-left:0}}.media-upload-dialog{width:min(740px,100%);max-height:min(850px,calc(100vh - 30px));display:flex;flex-direction:column}.media-upload-body{min-height:0;overflow-y:auto;padding:18px 22px 20px;scrollbar-width:none}.media-upload-body::-webkit-scrollbar{display:none}.media-file-picker{min-height:76px;display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px dashed var(--line-strong);background:#f8f5ed;color:var(--jade);cursor:pointer}.media-file-picker.selected{border-style:solid;border-color:var(--jade);background:#edf1ec}.media-file-picker input{position:absolute;width:1px;height:1px;opacity:0}.media-file-picker>svg{width:24px;flex:0 0 auto}.media-file-picker strong,.media-file-picker small{display:block}.media-file-picker strong{color:var(--green);font:600 10px "Noto Serif SC",serif;overflow-wrap:anywhere}.media-file-picker small{margin-top:4px;color:var(--muted);font-size:8px}.media-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;padding-top:15px;border-top:1px solid var(--line)}.media-form-grid label{display:grid;gap:5px}.media-form-grid label>span{color:var(--green);font-size:9px;font-weight:600}.media-form-grid input,.media-form-grid select,.media-form-grid textarea{width:100%;min-height:33px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);padding:8px 9px;color:var(--ink);font-size:9px}.media-form-grid textarea{min-height:58px;resize:vertical}.media-form-grid .span-two{grid-column:1 / -1}.media-upload-error{margin-top:12px;padding:9px 10px;border-left:2px solid var(--red);background:var(--red-soft);color:#7b3027;font-size:8.5px;line-height:1.5}.media-storage-note{display:flex;align-items:flex-start;gap:7px;margin-top:14px;color:var(--muted);font-size:8px;line-height:1.5}.media-storage-note svg{width:14px;color:var(--jade);flex:0 0 auto}.media-upload-dialog footer .solid-btn:disabled,.media-upload-dialog header button:disabled{cursor:default;opacity:.42}.mobile-preview-backdrop{position:fixed;inset:0;z-index:150;display:grid;place-items:center;padding:18px;background:#17231e94;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mobile-preview-dialog{width:min(980px,100%);max-height:calc(100vh - 36px);display:flex;flex-direction:column;border:1px solid var(--line-strong);background:var(--surface);box-shadow:0 25px 80px #17231e52}.mobile-preview-dialog>header{min-height:62px;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:11px 15px 11px 19px;border-bottom:1px solid var(--line)}.mobile-preview-dialog h2{margin:0;color:var(--green);font:700 17px "Noto Serif SC",serif}.mobile-preview-dialog header p{margin:4px 0 0;color:var(--muted);font-size:8.5px}.mobile-preview-controls{display:flex;border:1px solid var(--line-strong);background:var(--paper)}.mobile-preview-controls button,.mobile-preview-controls a{width:35px;height:34px;display:grid;place-items:center;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}.mobile-preview-controls>:last-child{border-right:0}.mobile-preview-controls button.active{background:var(--green);color:#fff}.mobile-preview-controls svg{width:16px}.mobile-device-stage{min-height:0;flex:1;display:grid;place-items:center;overflow:auto;padding:20px;background:#dfe2dd;scrollbar-width:none}.mobile-device-stage::-webkit-scrollbar{display:none}.mobile-device-frame{position:relative;overflow:hidden;border:8px solid #25332e;border-radius:24px;background:var(--paper);box-shadow:0 16px 45px #17231e3d;transition:width .18s ease,height .18s ease}.mobile-device-stage.portrait .mobile-device-frame{width:406px;height:796px}.mobile-device-stage.landscape .mobile-device-frame{width:796px;height:406px}.mobile-device-frame iframe{width:100%;height:100%;display:block;border:0;background:var(--paper)}.mobile-device-speaker{position:absolute;left:50%;top:5px;z-index:2;width:50px;height:4px;transform:translate(-50%);border-radius:4px;background:#ffffffb8;pointer-events:none}.mobile-preview-dialog>footer{min-height:42px;display:flex;align-items:center;gap:7px;padding:0 18px;border-top:1px solid var(--line);color:var(--muted);font-size:8px}.mobile-preview-dialog>footer svg{width:15px;color:var(--jade)}.dialog-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#17231e75;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.quick-card-backdrop{z-index:110}.person-quick-card{width:min(690px,100%);max-height:min(760px,calc(100dvh - 30px));overflow-y:auto;border:1px solid var(--line-strong);background:var(--surface);box-shadow:0 24px 70px #17231e4d}.person-quick-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:19px 21px 14px;border-bottom:1px solid var(--line)}.quick-card-eyebrow{display:inline-flex;align-items:center;gap:5px;color:var(--red);font-size:8px;font-weight:600}.person-quick-card h2{margin:7px 0 0;color:var(--green);font:700 23px "Noto Serif SC",serif}.person-quick-card header p{margin:4px 0 0;color:var(--muted);font-size:9px}.quick-card-close{display:grid;place-items:center;width:31px;height:31px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}.quick-card-body{display:grid;grid-template-columns:180px minmax(0,1fr);gap:21px;padding:20px 21px 15px}.quick-card-portrait{position:relative;min-height:215px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--line-strong);background:#e7e2d7}.quick-card-portrait:before{content:"";position:absolute;inset:11px;border:1px solid rgba(23,63,53,.18);pointer-events:none}.quick-card-portrait>span{color:#173f3585;font:600 47px "Noto Serif SC",serif}.quick-card-portrait img{width:100%;height:100%;min-height:215px;object-fit:cover}.quick-card-portrait small{position:absolute;left:8px;right:8px;bottom:8px;padding:4px 5px;background:#173f35d1;color:#fff;font-size:7px;text-align:center}.quick-card-portrait:not(.has-media) small{background:transparent;color:var(--muted)}.quick-card-portrait>svg{width:44px;height:44px;color:#173f357a}.quick-card-details dl{margin:0;border-top:1px solid var(--line)}.quick-card-details dl>div{display:grid;grid-template-columns:68px minmax(0,1fr);gap:8px;padding:8px 0;border-bottom:1px solid var(--line);font-size:9px}.quick-card-details dt{color:var(--muted)}.quick-card-details dd{margin:0;color:var(--ink);overflow-wrap:anywhere}.quick-card-bio{margin-top:15px;padding:11px 12px;border-left:2px solid var(--jade);background:#edf1ec}.quick-card-bio h3{margin:0 0 6px;color:var(--green);font:600 11px "Noto Serif SC",serif}.quick-card-bio p{margin:0;color:#4f5d56;font-size:8.5px;line-height:1.65}.quick-card-actions{display:flex;gap:8px;padding:0 21px 14px;border-bottom:1px solid var(--line)}.quick-card-actions>button{flex:1}.quick-card-actions button:disabled{cursor:not-allowed;opacity:.46}.quick-card-message{display:grid;gap:6px;padding:14px 21px 0}.quick-card-message>span{color:var(--green);font-size:8px;font-weight:600}.quick-card-message textarea{width:100%;min-height:54px;resize:vertical;border:1px solid var(--line-strong);background:var(--paper);padding:8px;color:var(--ink);font-size:9px}.quick-card-verify-note,.quick-card-feedback{display:flex;align-items:flex-start;gap:6px;margin:14px 21px 18px;padding:9px 10px;font-size:8px;line-height:1.5}.quick-card-verify-note{border-left:2px solid var(--red);background:var(--red-soft);color:#7d3d33}.quick-card-feedback{margin-top:12px;margin-bottom:18px}.quick-card-feedback.success{color:var(--green);background:#edf1ec}.quick-card-feedback.error{color:#7d3d33;background:var(--red-soft)}.dialog{width:min(580px,100%);background:var(--surface);border:1px solid var(--line-strong);box-shadow:0 24px 70px #17231e40}.dialog header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 22px 16px;border-bottom:1px solid var(--line)}.dialog h2{margin:0;color:var(--green);font:700 20px "Noto Serif SC",serif}.dialog header p{margin:5px 0 0;font-size:10px;color:var(--muted)}.dialog header button{border:0;background:none;cursor:pointer;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:20px 22px}.form-grid label{display:grid;gap:6px}.form-grid label span{color:var(--green);font-size:10px;font-weight:600}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid var(--line-strong);background:var(--paper);padding:9px 10px;color:var(--ink);font-size:11px;border-radius:0}.form-grid textarea{min-height:74px;resize:vertical}.form-grid .span-two{grid-column:1 / -1}.person-editor-dialog{width:min(760px,100%);max-height:min(900px,calc(100vh - 30px));display:flex;flex-direction:column}.person-editor-dialog .form-grid{min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}.person-basic-relations{display:grid;gap:11px;padding-top:15px;border-top:1px solid var(--line)}.person-relations-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.person-relations-heading>span strong,.person-relations-heading>span small{display:block}.person-relations-heading>span strong{color:var(--green);font:600 11px "Noto Serif SC",serif}.person-relations-heading>span small{margin-top:4px;color:var(--muted);font-size:8px;line-height:1.5}.person-relations-heading>svg{width:18px;color:var(--jade);flex:0 0 auto}.person-relation-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.person-relation-group{min-width:0;border-top:2px solid var(--jade);background:#fffdf88f}.person-relation-group-title{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:7px;padding:6px 8px;border-bottom:1px solid var(--line)}.person-relation-group-title>span{color:var(--green);font-size:9px;font-weight:600}.person-relation-group-title>span small{margin-left:5px;color:var(--muted);font-size:7px;font-weight:400}.person-relation-group-title>button{min-height:24px;display:inline-flex;align-items:center;gap:3px;border:0;background:transparent;color:var(--jade);font-size:7.5px;cursor:pointer}.person-relation-group-title>button svg{width:12px}.person-relation-list{max-height:188px;overflow-y:auto;scrollbar-width:none}.person-relation-list::-webkit-scrollbar{display:none}.person-relation-row{min-width:0;display:grid;grid-template-columns:25px minmax(0,1fr) 25px 25px;align-items:center;gap:5px;min-height:45px;padding:6px 7px;border-bottom:1px solid var(--line)}.person-relation-row>i{width:25px;height:25px;display:grid;place-items:center;background:#e5ebe5;color:var(--green);font:600 9px "Noto Serif SC",serif;font-style:normal}.person-relation-row>span{min-width:0}.person-relation-row strong,.person-relation-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person-relation-row strong{color:var(--green);font:600 9px "Noto Serif SC",serif}.person-relation-row small{margin-top:3px;color:var(--muted);font-size:6.8px}.person-relation-row .icon-btn{width:25px;height:25px;min-height:25px;display:grid;place-items:center;padding:0;border:1px solid var(--line);background:transparent;color:var(--jade);cursor:pointer}.person-relation-row .icon-btn svg{width:12px}.person-relation-row .icon-btn.danger{color:var(--red)}.person-relation-empty{min-height:45px;display:grid;place-items:center;padding:8px;color:var(--muted);font-size:7.5px}.person-gender-choice{min-width:0;margin:0;padding:0;border:0}.person-gender-choice legend{margin-bottom:6px;color:var(--green);font-size:10px;font-weight:600}.person-gender-choice>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.person-gender-choice button{min-height:37px;border:1px solid var(--line-strong);background:var(--paper);color:var(--muted);cursor:pointer}.person-gender-choice button.active{border-color:var(--green);background:#e7eee8;color:var(--green);font-weight:600;box-shadow:inset 0 -2px 0 var(--red)}.person-gender-choice>small{display:block;margin-top:5px;color:var(--muted);font-size:7.5px;line-height:1.4}@media(max-width:800px){.person-editor-dialog{max-height:calc(100dvh - 20px)}.person-editor-dialog .form-grid{padding-left:15px;padding-right:15px}.person-relation-groups{grid-template-columns:1fr}.person-relation-list{max-height:150px}.person-relation-row{grid-template-columns:29px minmax(0,1fr) 31px 31px;min-height:49px}.person-relation-row .icon-btn{width:31px;height:31px;min-height:31px}}.dialog footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1px solid var(--line);background:#f6f2e9}.dialog-review-note{margin-right:auto;align-self:center;color:var(--muted);font-size:9px}.action-readiness{display:inline-flex;align-items:center;gap:6px;min-width:0;margin:0 auto 0 0;color:#7b3027;font-size:8.5px;line-height:1.45}.action-readiness svg{width:15px;height:15px;flex:0 0 auto}.action-readiness.ready{color:var(--green)}.action-readiness.busy{color:var(--muted)}.billing-plan>.action-readiness{grid-column:1 / -1;width:100%}.dialog footer .action-readiness{max-width:min(56%,520px)}.ai-review-actions .action-readiness,.dna-review-actions .action-readiness{min-width:min(100%,260px);flex:1 1 260px}.studio-inspector>.action-readiness{margin:0 13px 10px}.import-center-dialog{width:min(1080px,100%);max-height:min(880px,calc(100vh - 30px));display:flex;flex-direction:column}.import-center-body{min-height:0;display:flex;flex-direction:column;overflow:hidden}.import-kind-switch{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));flex:0 0 auto;border-bottom:1px solid var(--line);background:#f6f2e9}.import-kind-switch button{min-width:0;min-height:65px;display:grid;grid-template-columns:minmax(0,1fr) 13px;grid-template-rows:auto auto;align-items:center;gap:3px 8px;padding:10px 12px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);text-align:left;cursor:pointer}.import-kind-switch button:last-child{border-right:0}.import-kind-switch button:hover{background:#edf1ec}.import-kind-switch button.active{box-shadow:inset 0 -3px 0 var(--red);background:#e7eee8;color:var(--green)}.import-kind-switch button:disabled{cursor:not-allowed;opacity:.48}.import-kind-switch button span{min-width:0;overflow:hidden;font:600 10px "Noto Serif SC",serif;text-overflow:ellipsis;white-space:nowrap}.import-kind-switch button small{min-width:0;overflow:hidden;color:var(--muted);font-size:7px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.import-kind-switch button svg{width:13px;grid-column:2;grid-row:1 / 3;color:var(--jade)}.import-work-area{min-height:0;flex:1;overflow-y:auto;padding:17px 20px 20px;scrollbar-width:none}.import-work-area::-webkit-scrollbar{display:none}.import-select-panel{min-width:0;border:1px solid var(--line);background:#fffdf8cc}.import-panel-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:15px 16px 13px;border-bottom:1px solid var(--line)}.import-panel-title h3,.import-recent h3{margin:0;color:var(--green);font:600 13px "Noto Serif SC",serif}.import-panel-title p{margin:5px 0 0;color:var(--muted);font-size:8px;line-height:1.5}.import-panel-title button{flex:0 0 auto}.import-file-picker{min-height:82px;display:flex;align-items:center;gap:12px;margin:15px 16px 0;padding:13px 14px;border:1px dashed var(--line-strong);background:#f8f5ed;color:var(--jade);cursor:pointer}.import-file-picker.selected{border-style:solid;border-color:var(--jade);background:#edf1ec}.import-file-picker input{position:absolute;width:1px;height:1px;opacity:0}.import-file-picker>svg{width:25px;flex:0 0 auto}.import-file-picker>span{min-width:0;flex:1}.import-file-picker strong,.import-file-picker small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-file-picker strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.import-file-picker small{margin-top:4px;color:var(--muted);font-size:8px}.import-file-picker>svg:last-child{width:17px}.import-data-loading,.import-processing{min-height:84px;display:flex;align-items:center;gap:9px;margin:15px 16px 0;padding:14px;border:1px solid #c7d4ca;background:#edf2ec;color:var(--muted);font-size:8.5px;line-height:1.5}.import-data-loading svg,.import-processing svg{width:19px;color:var(--jade);flex:0 0 auto;animation:spin 1s linear infinite}.import-processing{flex-direction:column;justify-content:center;text-align:center}.import-processing strong{color:var(--green);font:600 11px "Noto Serif SC",serif}.import-processing span{max-width:430px}.import-template-fields{display:flex;align-items:flex-start;gap:10px;margin:14px 16px 16px;padding-top:13px;border-top:1px solid var(--line)}.import-template-fields>span{flex:0 0 auto;color:var(--muted);font-size:8px}.import-template-fields>div{display:flex;flex-wrap:wrap;gap:5px}.import-template-fields code{padding:3px 5px;border:1px solid var(--line);background:#f2eee5;color:var(--green);font:7.5px/1.2 Noto Sans SC,sans-serif}.import-error,.import-unknown{display:flex;align-items:flex-start;gap:7px;margin:12px 16px;padding:9px 10px;border-left:2px solid var(--red);background:var(--red-soft);color:#7b3027;font-size:8px;line-height:1.5}.import-error svg,.import-unknown svg{width:15px;flex:0 0 auto}.import-unknown{border-color:#b26d3b;background:#fbf3e8;color:#85543b;margin-left:0;margin-right:0}.import-recent{margin-top:17px;border:1px solid var(--line);background:#fffdf8b3}.import-recent h3{padding:13px 15px 10px;border-bottom:1px solid var(--line);font-size:11px}.import-recent>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 15px;border-bottom:1px solid #e5dfd3}.import-recent>div:last-child{border-bottom:0}.import-recent>div>span{min-width:0}.import-recent strong,.import-recent small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-recent strong{color:var(--green);font:600 9px "Noto Serif SC",serif}.import-recent small{margin-top:3px;color:var(--muted);font-size:7.5px}.import-recent em{flex:0 0 auto;color:var(--jade);font-size:8px;font-style:normal}.import-recent em.committed{color:var(--green)}.import-report-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);background:#fffdf8bd}.import-report-strip button{min-height:67px;display:grid;align-content:center;gap:4px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);text-align:left;padding:9px 13px;cursor:pointer}.import-report-strip button:last-child{border-right:0}.import-report-strip button:hover{background:#edf1ec}.import-report-strip button.active{box-shadow:inset 0 -3px 0 var(--red);background:#e7eee8;color:var(--green)}.import-report-strip strong{font:700 18px "Noto Serif SC",serif}.import-report-strip span{font-size:8px}.import-review-tools{display:flex;align-items:center;gap:12px;margin-top:12px}.import-review-tools label{min-width:0;flex:1;height:34px;display:flex;align-items:center;gap:7px;padding:0 9px;border:1px solid var(--line-strong);background:var(--paper)}.import-review-tools label svg{width:14px;color:var(--jade)}.import-review-tools input{min-width:0;flex:1;height:31px;border:0;outline:0;background:transparent;color:var(--ink);font-size:9px}.import-review-tools>span{flex:0 0 auto;color:var(--muted);font-size:8px}.import-preview-table{margin-top:11px;border:1px solid var(--line);background:#fffdf8b8}.import-preview-head,.import-preview-table article{display:grid;grid-template-columns:48px minmax(170px,1.15fr) minmax(145px,.9fr) minmax(210px,1.35fr);gap:10px;align-items:start}.import-preview-head{min-height:32px;align-items:center;padding:0 11px;border-bottom:1px solid var(--line);background:#f2eee5;color:var(--muted);font-size:8px}.import-preview-table article{min-height:68px;padding:10px 11px;border-bottom:1px solid #e5dfd3;color:var(--muted);font-size:8px}.import-preview-table article:last-child{border-bottom:0}.import-preview-table article>span{color:var(--jade);font:600 9px "Noto Serif SC",serif}.import-preview-table article>div{min-width:0}.import-preview-table strong,.import-preview-table small{display:block;overflow-wrap:anywhere}.import-preview-table strong{color:var(--green);font:600 9px/1.35 "Noto Serif SC",serif}.import-preview-table small{margin-top:3px;color:var(--muted);font-size:7.5px;line-height:1.4}.import-preview-table article>div:last-child em{display:inline-block;margin-bottom:2px;padding:3px 5px;background:#e5ece6;color:var(--green);font-size:7.5px;font-style:normal}.import-preview-table article.warning>div:last-child em{background:#fbf0df;color:#85543b}.import-preview-table article.error>div:last-child em{background:var(--red-soft);color:var(--red)}.import-empty{min-height:120px;display:grid;place-items:center;color:var(--muted);font-size:8.5px}.import-success{min-height:390px;display:grid;justify-items:center;align-content:center;gap:10px;padding:35px;text-align:center}.import-success>svg{width:37px;color:var(--green)}.import-success h3{margin:0;color:var(--green);font:700 16px "Noto Serif SC",serif}.import-success p{max-width:420px;margin:0;color:var(--muted);font-size:9px;line-height:1.6}.import-success dl{width:min(420px,100%);margin:6px 0;border-top:1px solid var(--line)}.import-success dl>div{display:grid;grid-template-columns:75px minmax(0,1fr);gap:10px;padding:9px 0;border-bottom:1px solid var(--line);text-align:left}.import-success dt{color:var(--muted);font-size:8px}.import-success dd{min-width:0;margin:0;color:var(--green);font:600 9px "Noto Serif SC",serif;overflow-wrap:anywhere}.relationship-dialog{width:min(620px,100%);max-height:min(760px,calc(100vh - 30px));display:flex;flex-direction:column}.relationship-body{min-height:0;overflow-y:auto;padding:18px 22px 20px;scrollbar-width:none}.relationship-body::-webkit-scrollbar{display:none}.relationship-subject{display:flex;align-items:center;gap:9px;padding-bottom:14px;border-bottom:1px solid var(--line)}.relationship-subject .seal-avatar{width:34px;height:34px;font-size:15px}.relationship-person-portrait{width:34px;height:41px;flex:0 0 34px}.relationship-subject strong,.relationship-subject small{display:block}.relationship-subject strong{color:var(--green);font:600 12px "Noto Serif SC",serif}.relationship-subject small{margin-top:3px;color:var(--muted);font-size:8px}.kinship-access-note{display:grid;grid-template-columns:25px minmax(0,1fr);gap:8px;margin:12px 0;padding:10px;border-left:3px solid var(--red);background:var(--red-soft);color:#71372e}.kinship-access-note>svg{width:18px;margin-top:1px}.kinship-access-note span,.kinship-access-note strong,.kinship-access-note small{display:block}.kinship-access-note strong{font-size:9px;line-height:1.45}.kinship-access-note small{margin-top:3px;font-size:7.5px;line-height:1.5;color:#86635d}.kinship-access-note button{grid-column:2;justify-self:start;padding:0;border:0;background:none;color:var(--red);font-size:8.5px;font-weight:700;cursor:pointer}.account-access-dialog{width:min(680px,calc(100vw - 32px))}.account-mode-tabs{display:grid;border-bottom:1px solid var(--line);background:#f1ede3}.account-mode-tabs.two{grid-template-columns:repeat(2,minmax(0,1fr))}.account-mode-tabs.three{grid-template-columns:repeat(3,minmax(0,1fr))}.account-mode-tabs button{min-width:0;min-height:45px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}.account-mode-tabs button:last-child{border-right:0}.account-mode-tabs button.active{background:var(--surface);color:var(--green);box-shadow:inset 0 -3px 0 var(--green)}.account-mode-tabs svg{width:16px;flex:0 0 auto}.account-access-body{display:grid;gap:14px;padding:19px 22px}.account-rule-note{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;background:#edf1ec;color:var(--green)}.account-rule-note svg{width:19px;flex:0 0 auto}.account-rule-note span,.account-rule-note strong{display:block}.account-rule-note strong{margin-bottom:3px;font-size:10px}.account-rule-note span{color:var(--muted);font-size:8px;line-height:1.55}.account-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.account-form.single-column{grid-template-columns:1fr}.account-form .span-two{grid-column:1 / -1}.account-form label{display:grid;gap:6px}.account-form label>span{color:var(--muted);font-size:9px}.account-form input{width:100%;height:38px;padding:0 10px;border:1px solid var(--line);background:var(--surface);color:var(--ink)}.account-consent{display:flex;align-items:flex-start;gap:9px;color:var(--muted);font-size:8.5px;line-height:1.65;cursor:pointer}.account-consent input{width:16px;height:16px;margin:1px 0 0;flex:0 0 auto;accent-color:var(--green)}.account-consent a{color:var(--green);text-decoration:underline;text-underline-offset:2px}.password-field{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 38px;border:1px solid var(--line);background:var(--surface)}.account-form .password-field input{min-width:0;border:0;outline:0}.password-field:focus-within{border-color:var(--jade);box-shadow:0 0 0 1px var(--jade)}.password-field button{width:38px;height:38px;display:grid;place-items:center;border:0;border-left:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}.password-field button:hover{color:var(--green)}.password-field button svg{width:16px}.account-inline-action{justify-self:end;min-height:28px;display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;padding:0;color:var(--red);font-size:9px;cursor:pointer}.account-inline-action:hover{color:var(--green)}.account-inline-action svg{width:14px}.account-person-matches{display:grid;gap:9px;padding-top:2px}.account-person-matches>div:first-child strong,.account-person-matches>div:first-child small{display:block}.account-person-matches>div:first-child strong{color:var(--green);font-size:10px}.account-person-matches>div:first-child small{margin-top:3px;color:var(--muted);font-size:8px}.account-match-list{max-height:190px;display:grid;gap:6px;overflow:auto}.account-match-list button{min-height:47px;display:grid;grid-template-columns:minmax(80px,auto) 1fr 18px;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer}.account-match-list button.selected{border-color:var(--green);background:#edf1ec}.account-match-list span{color:var(--green);font:600 12px "Noto Serif SC",serif}.account-match-list small{color:var(--muted);font-size:8px}.account-match-list svg{width:16px;color:var(--green)}.account-status-card{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line)}.account-status-card.verified{background:#edf1ec;color:var(--green)}.account-status-card.unlinked{background:var(--red-soft);color:var(--red)}.account-status-card>svg{width:24px}.account-status-card span,.account-status-card strong,.account-status-card small{display:block}.account-status-card strong{font:600 15px "Noto Serif SC",serif}.account-status-card small{margin-top:4px;color:var(--muted);font-size:8px}.account-unlinked-note,.account-scope-note{padding:10px 12px;border-left:2px solid var(--line-strong);background:#f4f1e8;color:var(--muted);font-size:8.5px;line-height:1.65}.account-access-error{margin:0 22px 14px;padding:9px 11px;border-left:2px solid var(--red);background:var(--red-soft);color:var(--red);font-size:9px}.account-access-notice{margin:0 22px 14px;padding:9px 11px;border-left:2px solid var(--jade);background:#edf1ec;color:var(--green);font-size:9px}.relationship-operation{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:15px}.relationship-operation button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line-strong);background:transparent;color:var(--muted);font-size:9px;cursor:pointer}.relationship-operation button svg{width:15px}.relationship-operation button.active{border-color:var(--green);background:#e7eee8;color:var(--green);font-weight:600}.relationship-operation button.active.danger{border-color:var(--red);background:var(--red-soft);color:var(--red)}.relationship-kind{display:flex;gap:6px;margin-top:15px}.relationship-kind button{min-height:31px;flex:1;border:1px solid var(--line-strong);background:transparent;color:var(--muted);font-size:9px;cursor:pointer}.relationship-kind button.active{border-color:var(--green);background:#e7eee8;color:var(--green);font-weight:600;box-shadow:inset 0 -2px 0 var(--red)}.relationship-child-gender{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:9px 10px;border:1px solid var(--line);background:#fffdf88f}.relationship-child-gender>span{color:var(--green);font-size:9px;font-weight:600}.relationship-child-gender>div{display:grid;grid-template-columns:64px 64px;gap:6px}.relationship-child-gender button{min-height:30px;border:1px solid var(--line-strong);background:var(--paper);color:var(--muted);cursor:pointer}.relationship-child-gender button.active{border-color:var(--green);background:#e7eee8;color:var(--green);font-weight:600;box-shadow:inset 0 -2px 0 var(--red)}.relationship-add-person:disabled{cursor:not-allowed;opacity:.48}.relationship-search,.relationship-lineage,.relationship-note{display:grid;gap:6px;margin-top:15px}.relationship-search>span,.relationship-lineage>span,.relationship-note>span{color:var(--green);font-size:9px;font-weight:600}.relationship-search>div{display:flex;align-items:center;gap:7px;border:1px solid var(--line-strong);background:var(--paper);padding:0 9px}.relationship-search svg{color:var(--jade);flex:0 0 auto}.relationship-search input{width:100%;min-height:33px;border:0;outline:0;background:transparent;color:var(--ink);font-size:10px}.relationship-candidates{display:grid;grid-template-columns:1fr 1fr;gap:5px;max-height:206px;overflow-y:auto;margin-top:8px;padding-right:2px;scrollbar-width:none}.relationship-candidates::-webkit-scrollbar{display:none}.relationship-candidates>button{min-width:0;display:grid;grid-template-columns:27px minmax(0,1fr) 14px;align-items:center;gap:7px;padding:7px;border:1px solid var(--line);background:#fffdf8b3;color:var(--ink);text-align:left;cursor:pointer}.relationship-candidates>button:hover{border-color:var(--jade);background:#f2f5ef}.relationship-candidates>button.selected{border-color:var(--red);background:var(--red-soft);box-shadow:inset 2px 0 0 var(--red)}.candidate-avatar{width:27px;height:27px;display:grid;place-items:center;background:#e5ebe5;color:var(--green);font:600 11px "Noto Serif SC",serif}.relationship-candidates strong,.relationship-candidates small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.relationship-candidates strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.relationship-candidates small{margin-top:3px;color:var(--muted);font-size:7.5px}.relationship-candidates .candidate-kinship-label{color:var(--green);font-weight:600}.relationship-candidates svg{width:13px;color:var(--line-strong)}.relationship-empty{grid-column:1 / -1;display:flex;justify-content:center;align-items:center;gap:7px;min-height:56px;color:var(--muted);font-size:8.5px}.relationship-empty svg{color:var(--jade)}.relationship-selected{display:flex;align-items:center;gap:6px;margin-top:9px;padding:8px 9px;border-left:2px solid var(--jade);background:#edf1ec;color:var(--muted);font-size:8.5px}.relationship-selected svg{color:var(--green);flex:0 0 auto}.relationship-selected strong{color:var(--green)}.relationship-selected em{margin-left:auto;color:var(--red);font-style:normal;font-size:8px;white-space:nowrap}.relationship-lineage select{min-height:33px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);padding:0 8px;font-size:9px}.relationship-warning{margin:12px 0 0;padding:8px 9px;border-left:2px solid #b26d3b;background:#fbf3e8;color:#85543b;font-size:8px;line-height:1.5}.relationship-note textarea{min-height:58px;border:1px solid var(--line-strong);background:var(--paper);padding:8px 9px;color:var(--ink);font-size:9px;resize:vertical}.relationship-add-person{width:100%;min-height:34px;display:flex;align-items:center;justify-content:center;gap:7px;margin-top:8px;border:1px dashed var(--jade);background:#f2f5ef;color:var(--green);font-size:9px;font-weight:600;cursor:pointer}.relationship-add-person:hover{border-style:solid;background:#e7eee8}.relationship-add-person svg{width:15px}.relationship-existing{display:grid;grid-template-columns:1fr 1fr;gap:5px;max-height:220px;overflow-y:auto;margin-top:12px;scrollbar-width:none}.relationship-existing::-webkit-scrollbar{display:none}.relationship-existing>button{min-width:0;display:grid;grid-template-columns:27px minmax(0,1fr) 15px;align-items:center;gap:7px;padding:8px;border:1px solid var(--line);background:#fffdf8b3;color:var(--ink);text-align:left;cursor:pointer}.relationship-existing>button:hover{border-color:var(--red);background:#fbf4ef}.relationship-existing>button.selected{border-color:var(--red);background:var(--red-soft);box-shadow:inset 2px 0 0 var(--red)}.relationship-existing>button:disabled{cursor:not-allowed;opacity:.58}.relationship-existing strong,.relationship-existing small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.relationship-existing strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.relationship-existing small{margin-top:3px;color:var(--muted);font-size:7.5px}.relationship-existing .relationship-record-id{color:var(--green);font-family:ui-monospace,Consolas,monospace}.relationship-existing .relationship-record-id.invalid{color:var(--red)}.relationship-existing svg{width:14px;color:var(--red)}.relationship-selected.removal{border-color:var(--red);background:var(--red-soft)}.relationship-selected.removal svg,.relationship-selected.removal strong{color:var(--red)}.relationship-selected.removal span small{display:block;margin-top:3px;color:var(--red);font-family:ui-monospace,Consolas,monospace}.danger-btn{min-height:33px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--red);background:var(--red);padding:0 13px;color:#fff;font-size:9px;cursor:pointer}.danger-btn:disabled{cursor:default;opacity:.42}.relationship-action{margin-top:7px}.save-toast{position:fixed;right:22px;bottom:22px;z-index:120;max-width:390px;padding:12px 16px;border:1px solid var(--green-2);background:var(--green);color:#fff;box-shadow:0 16px 40px #17231e38;font-size:11px}.empty-inspector,.empty-lineage{color:var(--muted);font-size:10px;line-height:1.7}.verified-line.pending{color:#8a4a32;background:#9e3f320d}@media(max-width:1250px){:root{--sidebar: 166px;--inspector: 280px}.ancestry-path{display:none}.search-wrap{width:min(300px,30vw)}.mobile-preview-action{width:34px}.tree-stage-frame{transform:translate(-50%,-48%) scale(.9)}.bio-layout{grid-template-columns:180px minmax(0,1fr) 225px;gap:24px}.directory-filters{grid-template-columns:minmax(190px,1.2fr) repeat(4,minmax(100px,.6fr))}.generation-filter{grid-column:1 / 3}.filter-reset{grid-column:3}.workbench-grid{grid-template-columns:165px minmax(300px,.8fr) minmax(310px,1fr)}.family-archive-grid{grid-template-columns:185px minmax(330px,1fr) minmax(300px,.82fr)}}@media(max-width:980px){:root{--header: 62px}.app-shell{grid-template-columns:1fr;grid-template-rows:var(--header) calc(100vh - var(--header))}.workspace{grid-column:1}.sidebar{position:fixed;left:0;top:0;bottom:0;width:230px;transform:translate(-102%);transition:transform .22s ease;box-shadow:16px 0 35px #292d292e;z-index:90}.sidebar.mobile-open{transform:translate(0)}.sidebar-mobile-head{height:62px;display:flex;justify-content:space-between;align-items:center;padding:0 14px 0 20px;border-bottom:1px solid var(--line);color:var(--green);font:600 14px "Noto Serif SC",serif}.sidebar-mobile-head button{border:0;background:none;color:var(--green)}.sidebar-scrim{display:block;position:fixed;inset:0;z-index:80;border:0;background:#17231e61}.mobile-menu{display:grid;place-items:center}.brand{min-width:165px}.brand small{display:none}.view-switch{margin-left:auto}.search-wrap{margin-left:0;width:min(290px,35vw)}.primary-action{padding:0 10px}.split-view{grid-template-columns:minmax(0,1fr) 270px}.pedigree-tools button span{display:none}.kinship-summary>span{min-width:92px;padding-left:8px;padding-right:8px}.kinship-highlight{padding-left:8px;padding-right:8px}.bio-layout{grid-template-columns:170px minmax(0,1fr)}.bio-rail{grid-column:1 / -1;grid-template-columns:repeat(3,1fr)}.rail-actions{align-content:start}.directory-head,.workbench-head{min-height:84px}.directory-summary span{min-width:92px;padding:8px 9px}.directory-filters{grid-template-columns:minmax(190px,1.2fr) repeat(3,minmax(105px,.75fr))}.directory-filters label:nth-of-type(5){grid-column:1}.generation-filter{grid-column:2 / 4}.filter-reset{grid-column:4}.workbench-grid{grid-template-columns:165px minmax(300px,1fr)}.review-detail{grid-column:1 / -1;border-top:1px solid var(--line)}.workbench-page{overflow-y:auto}.workbench-grid{flex:none;min-height:980px}.family-archive-scroll{overflow:auto;touch-action:pan-x pan-y;overscroll-behavior:contain}.family-archive-tools,.family-archive-grid{min-width:900px}.family-archive-grid{flex:none;min-height:720px}}.service-auth{margin-top:13px;padding-top:12px;border-top:1px solid var(--line)}.service-auth-head{display:flex;align-items:flex-start;gap:7px}.service-auth-head>svg{width:15px;flex:0 0 auto;color:var(--jade)}.service-auth-head strong,.service-auth-head small{display:block}.service-auth-head strong{color:var(--green);font-size:8.5px}.service-auth-head small,.service-session-state{margin-top:2px;color:var(--muted);font-size:7px;line-height:1.45}.service-auth label{display:grid;gap:5px;margin-top:10px}.service-auth label>span{color:var(--green);font-size:8px;font-weight:600}@media(max-width:800px){.living-directory-head{display:block;padding:16px 14px 14px}.living-directory-head h1{font-size:20px}.living-directory-head p{line-height:1.55}.living-directory-stats{margin-top:13px;width:100%}.living-directory-stats span{min-width:0;flex:1;padding:8px 10px}.living-directory-notice{margin:12px 14px 0}.living-directory-toolbar{overflow-x:auto;align-items:end;padding:12px 14px 10px;touch-action:pan-x;scrollbar-width:none}.living-directory-toolbar::-webkit-scrollbar{display:none}.living-directory-search{min-width:220px}.living-directory-toolbar>label:not(.living-directory-search){flex:0 0 112px}.living-directory-toolbar>button{flex:0 0 auto;white-space:nowrap}.living-directory-resultbar{padding:0 14px 10px}.living-directory-resultbar small{display:none}.living-directory-grid{grid-template-columns:minmax(0,1fr);gap:10px;padding:14px 14px 80px}.directory-person-card-body{min-height:0}.directory-profile-dialog{max-height:calc(100dvh - 18px)}.directory-profile-form{grid-template-columns:1fr;padding:15px 16px 18px}.directory-profile-form .span-two,.directory-visibility-grid,.directory-form-error{grid-column:1}.directory-visibility-grid{grid-template-columns:1fr}.directory-visibility-grid>strong{grid-column:1}.directory-profile-dialog>footer{flex-wrap:wrap;padding:10px 16px}.directory-privacy-note{flex-basis:100%;order:-1}.account-access-dialog{max-height:calc(100dvh - 20px)}.account-access-body{padding:15px}.account-form{grid-template-columns:1fr}.account-form .span-two{grid-column:auto}.account-match-list{max-height:155px}.account-access-dialog footer .dialog-review-note{display:none}html,body,#root{height:auto;min-height:100%;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none}html,#root{overflow-y:visible}body{min-height:100dvh;overflow-y:auto}html::-webkit-scrollbar,body::-webkit-scrollbar,#root::-webkit-scrollbar,.workspace::-webkit-scrollbar,.tree-pan-surface::-webkit-scrollbar,.pedigree-scroll::-webkit-scrollbar,.kinship-scroll::-webkit-scrollbar,.kinship-summary::-webkit-scrollbar,.kinship-legend::-webkit-scrollbar,.biography-page::-webkit-scrollbar,.inspector::-webkit-scrollbar,.bio-tabs::-webkit-scrollbar,.directory-table-scroll::-webkit-scrollbar,.review-list::-webkit-scrollbar,.review-detail::-webkit-scrollbar,.family-archive-scroll::-webkit-scrollbar,.event-categories::-webkit-scrollbar,.event-list::-webkit-scrollbar,.event-detail::-webkit-scrollbar{width:0;height:0;display:none}.app-shell{display:block;width:100vw;max-width:100vw;height:auto;min-height:100vh;overflow-x:hidden;overflow-y:visible}.topbar{width:100vw;max-width:100vw;height:60px;position:sticky;top:0;padding:0 11px;gap:8px}.app-back{width:32px;height:32px;border:0;background:transparent}.brand{min-width:0}.brand strong{font-size:14px}.brand-mark{width:32px;height:32px}.topbar.has-featured-genealogy .brand{width:32px}.topbar.has-featured-genealogy .brand strong{display:none}.featured-genealogy-link{width:66px;min-width:66px;min-height:34px;gap:4px;padding:0 5px;font-size:8px}.featured-genealogy-link .featured-genealogy-full{display:none}.featured-genealogy-link .featured-genealogy-short{display:inline}.search-wrap,.view-switch,.mobile-preview-action,.identity-chip{display:none}.automatic-sync-chip{position:absolute;top:12px;right:140px;width:36px;height:36px;min-height:36px;padding:0}.automatic-sync-chip span{display:none}.mobile-account-action{position:absolute;top:12px;right:51px;z-index:2;display:inline-flex;width:82px;min-width:82px;height:36px;min-height:36px;border-color:var(--green);background:var(--green);color:#fffdf8;padding:0 5px;font-size:9px;font-weight:700;box-shadow:0 2px 7px #173f352e}.mobile-account-action:hover{border-color:var(--red);background:var(--red)}.primary-action{position:absolute;top:13px;right:11px;width:34px;min-width:34px;margin-left:0;padding:0;min-height:34px;font-size:0}.primary-action svg{width:15px}.kinship-scroll{scrollbar-width:none;-ms-overflow-style:none}.view-data-loading,.view-data-error{min-height:calc(100dvh - 121px);padding:24px 18px 86px}.app-load-error{min-height:100dvh;padding:24px 18px}.workspace{width:100vw;max-width:100vw;height:auto;min-height:calc(100vh - 60px);padding-bottom:61px;overflow-x:hidden;overflow-y:visible}.split-view{display:block;height:auto}.canvas-panel{min-height:calc(100vh - 121px)}.canvas-head{height:auto;min-height:70px;flex-basis:auto;padding:12px 14px}.canvas-head h1{font-size:17px}.canvas-legend{display:none}.tree-canvas{height:calc(100dvh - 191px);min-height:520px;overflow:hidden}.tree-pan-surface{overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;cursor:grab;scrollbar-width:none;-ms-overflow-style:none}.tree-pan-surface:active{cursor:grabbing}.tree-stage-frame{position:relative;width:var(--tree-mobile-width);height:var(--tree-mobile-height);left:auto;top:auto;margin:12px;transform:none}.tree-stage{transform:scale(var(--tree-mobile-scale));transform-origin:top left}.tree-stage .migration-marker{display:none}.inspector{border-left:0;border-top:1px solid var(--line);padding:18px 16px 24px}.mobile-bottom-nav{display:grid;position:fixed;z-index:70;bottom:0;left:0;width:100vw;max-width:100vw;height:61px;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--line);background:#fffdf8f7}.mobile-bottom-nav button{min-width:0;display:grid;justify-items:center;align-content:center;gap:3px;border:0;background:none;color:var(--muted);font-size:8px}.mobile-bottom-nav button.active{color:var(--red)}.mobile-bottom-nav svg{width:17px}.pedigree-head{align-items:flex-start}.pedigree-tools{position:absolute;top:75px;left:10px;right:10px;z-index:5;overflow-x:auto;padding-bottom:4px}.pedigree-tools button{min-width:31px;padding:0 7px;justify-content:center;white-space:nowrap}.pedigree-select{flex:0 0 auto}.pedigree-scroll{height:650px;padding:44px 0 86px;overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;cursor:grab;scrollbar-width:none;-ms-overflow-style:none}.pedigree-scroll:active{cursor:grabbing}.pedigree-stage{transform-origin:top left;margin-left:5px}.pedigree-legend{left:12px;right:auto;bottom:72px}.save-toast{left:14px;right:14px;bottom:76px}.kinship-head{display:block;padding-top:14px;padding-bottom:12px}.kinship-head-actions{margin-top:10px}.kinship-search{min-width:0;width:auto;flex:1}.kinship-print{flex:0 0 auto}.kinship-summary{overflow-x:auto;touch-action:pan-x;scrollbar-width:none;-ms-overflow-style:none}.kinship-summary>span{flex:0 0 92px}.kinship-highlight{flex:0 0 auto}.kinship-scroll{height:650px;flex:none;padding-bottom:88px}.kinship-stage{transform-origin:top left;margin-left:5px}.kinship-legend{left:12px;right:auto;bottom:72px;max-width:calc(100vw - 24px);overflow-x:auto;scrollbar-width:none}.kinship-data-warning{bottom:72px;width:calc(100vw - 30px);justify-content:center}.kinship-inspector{overflow-y:visible;padding-bottom:82px}.biography-page{padding:18px 15px 80px;scrollbar-width:none;-ms-overflow-style:none}.bio-topline{display:block}.bio-topline h1{font-size:24px}.bio-top-actions{margin-top:13px}.bio-top-actions button{flex:1;padding:0 9px}.bio-tabs{gap:18px;overflow-x:auto;overscroll-behavior-x:contain;touch-action:pan-x;scrollbar-width:none;-ms-overflow-style:none}.bio-tabs button{white-space:nowrap}.bio-layout{display:block}.identity-column{border-right:0;border-bottom:1px solid var(--line);padding:0 0 22px}.portrait-placeholder{height:210px;max-width:230px}.biography-content{padding-top:24px}.bio-rail{display:grid;grid-template-columns:1fr;margin-top:8px}.media-strip{grid-template-columns:1fr 1fr}.audio-row{grid-column:1 / -1}.media-section-head{display:block}.media-section-actions{display:grid;grid-template-columns:1fr;margin-top:10px}.media-section-head button{width:100%}.media-record-grid{grid-template-columns:1fr}.media-upload-body{padding:15px}.media-form-grid{grid-template-columns:1fr}.media-form-grid .span-two{grid-column:auto}.resume-section-head{display:block}.resume-section-head button{width:100%;margin-top:11px}.biography-editor-tabs{padding-left:15px;padding-right:15px}.biography-editor-tabs button{min-width:0;flex:1}.biography-editor-body{padding:15px}.biography-editor-body textarea{min-height:220px}.form-grid{grid-template-columns:1fr}.form-grid .span-two{grid-column:1}.dialog-backdrop{place-items:end center;padding:10px}.dialog{max-height:calc(100dvh - 20px)}.dialog header{padding:16px 15px 13px}.dialog h2{font-size:17px}.dialog header p{font-size:8.5px}.dialog footer{flex-wrap:wrap;padding:11px 15px}.dialog-review-note{flex-basis:100%;margin:0 0 4px;font-size:8px}.relationship-body{padding:15px}.relationship-candidates,.relationship-existing{grid-template-columns:1fr;max-height:180px}.relationship-kind button{font-size:8.5px}.quick-card-backdrop{place-items:end center;padding:10px}.person-quick-card{max-height:calc(100dvh - 20px)}.person-quick-card>header{padding:15px}.person-quick-card h2{font-size:19px}.quick-card-body{grid-template-columns:108px minmax(0,1fr);gap:12px;padding:15px}.quick-card-portrait,.quick-card-portrait img{min-height:165px}.quick-card-portrait>span{font-size:35px}.quick-card-details dl>div{grid-template-columns:55px minmax(0,1fr);padding:6px 0;font-size:8px}.quick-card-bio{margin-top:10px;padding:8px 9px}.quick-card-bio h3{font-size:9px}.quick-card-bio p{font-size:7.5px}.quick-card-actions{padding:0 15px 12px}.quick-card-actions button{min-height:34px;padding:0 8px;font-size:9px}.quick-card-message{padding:12px 15px 0}.quick-card-verify-note,.quick-card-feedback{margin-left:15px;margin-right:15px}.family-archive-page{height:calc(100dvh - 121px);min-height:650px}.family-archive-head{min-height:0;display:grid;grid-template-columns:1fr auto;gap:11px;padding:14px}.family-archive-head>div:first-child{grid-column:1 / -1}.family-archive-head h1{font-size:20px}.family-archive-head p{font-size:8.5px;line-height:1.5}.family-archive-stats span{min-width:65px;padding:6px 7px}.family-archive-stats strong{font-size:12px}.family-archive-head>button{padding:0 9px}.family-archive-scroll{flex:1;min-height:0;overflow:auto;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.family-archive-tools,.family-archive-grid{min-width:900px}.family-archive-grid{min-height:760px}.family-archive-tools{position:sticky;top:0;z-index:5}.event-dialog-body{padding:14px 15px 17px}.event-person-results,.event-form-grid{grid-template-columns:1fr}.event-form-grid .span-two{grid-column:1}.bio-event-actions{display:grid;grid-template-columns:1fr}.directory-page,.workbench-page{height:auto;min-height:calc(100dvh - 121px)}.directory-head,.workbench-head{display:block;min-height:0;padding:16px 14px}.directory-head h1,.workbench-head h1{font-size:20px}.directory-head p,.workbench-head p{line-height:1.55}.directory-summary,.workbench-stats{margin-top:13px;width:100%}.directory-summary span,.workbench-stats button{min-width:0;flex:1;padding:8px}.directory-summary strong,.workbench-stats strong{font-size:12px}.directory-summary small,.workbench-stats small{font-size:7px}.directory-filters{display:flex;overflow-x:auto;align-items:end;gap:8px;padding:11px 14px;touch-action:pan-x;scrollbar-width:none;-ms-overflow-style:none}.directory-filters::-webkit-scrollbar{display:none}.directory-filters>label,.generation-filter{flex:0 0 128px}.directory-filters .directory-search{flex-basis:220px}.generation-filter{grid-template-columns:1fr 37px 14px 37px}.filter-reset{flex:0 0 64px}.directory-resultbar{padding:0 14px}.directory-resultbar small{display:none}.directory-table-scroll{height:610px;flex:none;overflow:auto;touch-action:pan-x pan-y}.directory-table{min-width:846px}.directory-table th{position:sticky}.directory-table th:first-child,.directory-table td:first-child{position:sticky;left:0;z-index:2;background:#f7f3e9}.directory-table th:first-child{z-index:4;background:#eee9de}.directory-table tbody tr.selected td:first-child{background:var(--red-soft)}.directory-pagination{padding:0 13px 74px;min-height:112px}.workbench-grid{display:block;min-height:0}.review-categories{overflow-x:auto;display:flex;align-items:center;gap:5px;padding:9px 12px;border-right:0;border-bottom:1px solid var(--line);touch-action:pan-x;scrollbar-width:none}.review-categories::-webkit-scrollbar{display:none}.review-pane-title{flex:0 0 auto;padding:0 8px 0 0}.review-categories>button{width:auto;min-width:max-content;min-height:31px;padding:0 9px;border:1px solid var(--line)}.review-categories>button.active{box-shadow:inset 0 -2px 0 var(--red)}.review-boundary{display:none}.review-queue{height:480px;border-right:0}.review-queue-tools{grid-template-columns:minmax(0,1fr) 112px;padding:10px 12px}.review-list>button{grid-template-columns:8px minmax(100px,1fr) auto 14px}.review-detail{min-height:520px;padding:17px 15px 82px}.review-comparison{grid-template-columns:1fr}.review-comparison>div:first-child{border-right:0;border-bottom:1px solid var(--line)}.review-actions{position:sticky;bottom:68px;z-index:4;padding:10px;margin-left:-10px;margin-right:-10px;background:#fffdf8f5;box-shadow:0 -8px 18px #292d290f}.review-assignment>div{grid-template-columns:1fr 1fr}.review-assignment>div>button{grid-column:1 / -1;justify-content:center}}@media(max-width:360px){.mobile-account-action{right:49px;width:78px;min-width:78px;padding:0 3px;font-size:8px}}@media(max-width:800px){html:has(.edition-page),body:has(.edition-page),#root:has(.edition-page),.app-shell:has(.edition-page){height:100dvh;min-height:100dvh;overflow:hidden}.workspace:has(.edition-page){height:calc(100dvh - 60px);min-height:0;padding-bottom:61px;overflow:hidden}}.settings-page{height:100%;overflow-y:auto;padding:26px 30px 42px;scrollbar-width:none;-ms-overflow-style:none}.settings-page::-webkit-scrollbar{display:none}.settings-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:21px;border-bottom:1px solid var(--line)}.settings-head h1{margin:5px 0 7px;color:var(--green);font:700 28px "Noto Serif SC",serif}.settings-head p{margin:0;color:var(--muted);font-size:10px;line-height:1.6}.settings-head>button{flex:0 0 auto}.settings-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:17px;margin-top:20px}.settings-main,.settings-rail{min-width:0}.settings-section,.role-panel,.settings-audit{margin-bottom:16px;border:1px solid var(--line);background:#fffdf8bd}.settings-section-title{display:flex;align-items:flex-start;gap:10px;padding:16px 18px 14px;border-bottom:1px solid var(--line)}.settings-section-title>svg{width:18px;color:var(--jade);flex:0 0 auto}.settings-section-title h2{margin:0;color:var(--green);font:600 14px "Noto Serif SC",serif}.settings-section-title p{margin:5px 0 0;color:var(--muted);font-size:8.5px;line-height:1.5}.settings-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:18px}.settings-form label{display:grid;gap:6px}.settings-form label>span:first-child{color:var(--green);font-size:9px;font-weight:600}.settings-form input,.settings-form select,.settings-form textarea{width:100%;min-height:32px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);padding:8px 9px;color:var(--ink);font-size:10px}.settings-form textarea{min-height:62px;resize:vertical}.settings-form .span-two{grid-column:1 / -1}.toggle-setting{display:flex!important;grid-template-columns:auto 1fr;grid-template-areas:"check text";align-items:flex-start;gap:9px!important}.toggle-setting input{grid-area:check;width:15px;min-height:15px;margin:1px 0 0;accent-color:var(--green)}.toggle-setting span{grid-area:text}.toggle-setting strong,.toggle-setting small{display:block}.toggle-setting strong{color:var(--green);font:600 9px "Noto Serif SC",serif}.toggle-setting small{margin-top:4px;color:var(--muted);font-size:7.5px;line-height:1.45}.branch-setting-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.branch-setting-grid>div{display:grid;grid-template-columns:13px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:7px;align-items:center;min-height:72px;padding:10px 14px;border-bottom:1px solid var(--line)}.branch-setting-grid>div:nth-child(odd){border-right:1px solid var(--line)}.branch-setting-grid>div:nth-last-child(-n+2){border-bottom:0}.branch-dot{width:9px;height:9px;grid-row:1 / 3;border:1px solid var(--jade);background:#dfe9df;border-radius:50%}.branch-dot[data-tone=active]{border-color:var(--red);background:#f1d9d1}.branch-setting-grid strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.branch-setting-grid small{color:var(--muted);font-size:7.5px}.branch-setting-grid button{grid-column:3;grid-row:1 / 3;border:1px solid var(--line-strong);background:transparent;padding:5px 6px;color:var(--jade);font-size:7px;cursor:pointer}.role-panel .settings-section-title,.settings-audit .settings-section-title{padding-bottom:12px}.role-row,.audit-row{display:flex;align-items:center;gap:9px;padding:9px 15px;border-bottom:1px solid #e5dfd3}.role-row:last-child,.audit-row:last-child{border-bottom:0}.role-row>i{width:28px;height:28px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;color:#fff;font:600 8px "Noto Serif SC",serif;font-style:normal;background:var(--green)}.role-row>i.branch{background:#768f7e}.role-row>i.source{background:#8e9885}.role-row>i.member{background:#a1aa99}.role-row>i.guest{background:#b8b9a8}.role-row>span,.audit-row>span{min-width:0;flex:1}.role-row strong,.role-row small,.audit-row strong,.audit-row small{display:block}.role-row strong{color:var(--ink);font:600 9px "Noto Serif SC",serif}.role-row small{margin-top:3px;color:var(--muted);font-size:7.5px}.role-row>svg{width:14px;color:var(--green-2)}.audit-row strong{color:var(--ink);font-size:8px}.audit-row small{margin-top:3px;overflow:hidden;color:var(--muted);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.audit-row>svg{width:13px;color:var(--line-strong)}.settings-empty{display:grid;justify-items:center;gap:7px;padding:29px 15px;color:var(--muted);font-size:8px}.settings-empty svg{width:20px;color:var(--jade)}.settings-footnote{display:flex;align-items:center;gap:8px;padding:12px 2px;color:var(--muted);font-size:8px}.settings-footnote svg{width:15px;color:var(--jade);flex:0 0 auto}.settings-footnote span{flex:1}.settings-footnote small{color:var(--jade);white-space:nowrap}.billing-page{height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;padding:25px 28px 42px}.billing-page::-webkit-scrollbar{width:10px}.billing-page::-webkit-scrollbar-track{background:transparent}.billing-page::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:8px;background:var(--line-strong);background-clip:padding-box}.billing-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:20px;border-bottom:1px solid var(--line)}.billing-head h1{margin:5px 0 7px;color:var(--green);font:700 28px "Noto Serif SC",serif}.billing-head p{max-width:640px;margin:0;color:var(--muted);font-size:10px;line-height:1.6}.billing-access-state{min-width:230px;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;border-left:3px solid #a96e42;background:#f8efe3;padding:11px 13px}.billing-access-state.covered{border-color:var(--jade);background:#eaf0ea}.billing-access-state>svg{width:24px;color:#a96e42}.billing-access-state.covered>svg{color:var(--jade)}.billing-access-state span,.billing-access-state small,.billing-access-state strong,.billing-access-state em{min-width:0;display:block}.billing-access-state small{color:var(--muted);font-size:7px}.billing-access-state strong{margin-top:2px;color:var(--green);font-size:10px}.billing-access-state em{margin-top:3px;overflow:hidden;color:var(--muted);font-size:7px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.billing-plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:18px}.billing-plan{min-width:0;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:start;border:1px solid var(--line);border-top:3px solid var(--green);background:#fffdf8c7;padding:16px}.billing-plan.workspace-plan{border-top-color:#a05a42}.billing-plan-icon{width:40px;height:40px;display:grid;place-items:center;background:var(--green);color:#fff}.workspace-plan .billing-plan-icon{background:#914d3d}.billing-plan-icon svg{width:20px}.billing-plan-title span{color:var(--jade);font-size:7.5px}.billing-plan-title h2{margin:3px 0 5px;color:var(--green);font:600 16px "Noto Serif SC",serif}.billing-plan-title p{margin:0;color:var(--muted);font-size:8px;line-height:1.5}.billing-price{align-self:center;min-width:90px;text-align:right}.billing-price strong{display:block;color:#914d3d;font:700 19px "Noto Serif SC",serif}.billing-price small{color:var(--muted);font-size:7px}.billing-plan dl{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;margin:2px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.billing-plan dl>div{min-width:0;padding:9px 10px}.billing-plan dl>div+div{border-left:1px solid var(--line)}.billing-plan dt{color:var(--muted);font-size:7px}.billing-plan dd{margin:4px 0 0;overflow-wrap:anywhere;color:var(--green);font-size:8.5px}.billing-plan>button{grid-column:1 / -1;min-height:36px;justify-content:center}.billing-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:15px;margin-top:15px}.billing-policy-panel,.billing-ledger{min-width:0;border:1px solid var(--line);background:#fffdf8bd}.billing-policy-panel>header,.billing-ledger>header{min-height:66px;display:flex;align-items:center;gap:10px;padding:13px 15px;border-bottom:1px solid var(--line)}.billing-policy-panel>header>svg,.billing-ledger>header>svg{width:19px;flex:0 0 auto;color:var(--jade)}.billing-policy-panel>header>div,.billing-ledger>header>div{min-width:0;flex:1}.billing-policy-panel h2,.billing-ledger h2{margin:0;color:var(--green);font:600 12px "Noto Serif SC",serif}.billing-policy-panel header p,.billing-ledger header p{margin:4px 0 0;color:var(--muted);font-size:7.5px;line-height:1.45}.billing-policy-panel header button{flex:0 0 auto}.billing-admin-badge{flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;border:1px solid #b98b5e;padding:5px 7px;color:#7e4a31;font-size:7px;font-weight:600}.billing-admin-badge svg{width:11px}.billing-mode-selector{display:grid;grid-template-columns:repeat(3,1fr)}.billing-mode-selector button{min-width:0;min-height:92px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;padding:12px;color:var(--muted);text-align:left;cursor:pointer}.billing-mode-selector button:last-child{border-right:0}.billing-mode-selector button.active{background:#e9efe9;box-shadow:inset 0 -3px 0 var(--green)}.billing-mode-selector button:disabled{cursor:default}.billing-mode-selector span,.billing-mode-selector small{display:block}.billing-mode-selector span{color:var(--green);font-size:9px;font-weight:600}.billing-mode-selector small{margin-top:6px;font-size:7px;line-height:1.5}.billing-collector-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.7fr);gap:12px;padding:14px 15px}.billing-collector-form label{display:grid;gap:6px}.billing-collector-form label>span{color:var(--green);font-size:8px;font-weight:600}.billing-collector-form input{min-height:35px;border:1px solid var(--line-strong);background:var(--paper);padding:0 9px;color:var(--ink);font-size:8.5px}.merchant-state{display:flex;align-items:center;gap:8px;border-left:2px solid #a96e42;background:#f8efe3;padding:8px 10px}.merchant-state>svg{width:17px;flex:0 0 auto;color:#a96e42}.merchant-state strong,.merchant-state small{display:block}.merchant-state strong{color:#794632;font-size:8px}.merchant-state small{margin-top:3px;color:#806b5c;font-size:7px;line-height:1.4}.billing-order-list>div{display:grid;grid-template-columns:27px minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;gap:2px 8px;padding:10px 12px;border-bottom:1px solid var(--line)}.billing-order-list i{width:25px;height:25px;grid-row:1 / 3;display:grid;place-items:center;border:1px solid var(--line-strong);color:var(--jade);font-style:normal}.billing-order-list i svg{width:13px}.billing-order-list span{min-width:0}.billing-order-list strong,.billing-order-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.billing-order-list strong{color:var(--green);font-size:8px}.billing-order-list small{margin-top:3px;color:var(--muted);font-size:6.5px}.billing-order-list em{color:#9a5d37;font-size:7px;font-style:normal}.billing-order-list b{grid-column:3;color:var(--green);font-size:8px;font-weight:600}.billing-order-detail-btn{grid-column:2 / -1;min-height:28px;justify-content:center;margin-top:5px}.billing-empty{min-height:120px;display:grid;place-items:center;align-content:center;gap:7px;color:var(--muted);font-size:8px}.billing-empty svg{width:22px;color:var(--line-strong)}.billing-security-note{display:flex;align-items:flex-start;gap:7px;margin:12px;padding:9px;border-left:2px solid var(--jade);background:#edf1ec;color:var(--muted);font-size:7px;line-height:1.5}.billing-security-note svg{width:14px;flex:0 0 auto;color:var(--jade)}.billing-order-list>div.actionable{background:#fbf7ee}.billing-quote-input{grid-column:2 / -1;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;margin-top:7px}.billing-quote-input>span{color:var(--green);font-size:7px;font-weight:600}.billing-quote-input>div{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 24px;align-items:center;border:1px solid var(--line-strong);background:var(--paper)}.billing-quote-input input{width:100%;min-width:0;height:30px;border:0;background:transparent;padding:0 7px;color:var(--ink);font-size:8px;outline:0}.billing-quote-input small{color:var(--muted);font-size:7px;text-align:center}.billing-activate-btn{grid-column:2 / -1;min-height:31px;justify-content:center;margin-top:5px}.billing-order-dialog{width:min(620px,calc(100vw - 28px))}.billing-order-dialog-body{display:grid;gap:16px;padding:20px 22px}.billing-order-dialog-body dl{display:grid;grid-template-columns:1fr 1fr;margin:0;border:1px solid var(--line)}.billing-order-dialog-body dl>div{min-width:0;padding:11px 12px;border-bottom:1px solid var(--line)}.billing-order-dialog-body dl>div:nth-child(odd){border-right:1px solid var(--line)}.billing-order-dialog-body dl>div:nth-last-child(-n+2){border-bottom:0}.billing-order-dialog-body dt{color:var(--muted);font-size:8px}.billing-order-dialog-body dd{margin:4px 0 0;overflow-wrap:anywhere;color:var(--green);font-size:10px;font-weight:600}.billing-payment-guide{display:flex;align-items:flex-start;gap:11px;padding:13px;border-left:3px solid #a86b3f;background:#f8efe3}.billing-payment-guide.covered{border-left-color:var(--green);background:#edf1ec}.billing-payment-guide>svg{width:21px;flex:0 0 auto;color:#965c35}.billing-payment-guide.covered>svg{color:var(--green)}.billing-payment-guide strong{color:var(--green);font-size:10px}.billing-payment-guide p{margin:5px 0 0;color:var(--muted);font-size:8.5px;line-height:1.65}.billing-checkout-btn{margin-top:12px}.billing-checkout-qr{display:grid;justify-items:start;gap:5px;margin-top:14px}.billing-checkout-qr img{width:220px;height:220px;border:8px solid #fff;box-shadow:0 2px 8px #1c281e24;image-rendering:pixelated}.billing-checkout-qr small{color:var(--muted);font-size:7.5px;line-height:1.4}.billing-checkout-link{display:inline-block;margin-top:10px;color:var(--green);font-size:8px;text-decoration:underline}.billing-dialog-quote{display:grid;gap:6px}.billing-dialog-quote span{color:var(--green);font-size:9px;font-weight:600}.billing-dialog-quote input{min-height:38px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);padding:0 10px;color:var(--ink)}@media(max-width:800px){.billing-page{height:auto;min-height:calc(100dvh - 121px);padding:16px 14px 82px}.billing-head{display:block}.billing-head h1{font-size:23px}.billing-access-state{width:100%;margin-top:14px}.billing-plan-grid,.billing-layout{grid-template-columns:1fr}.billing-plan{grid-template-columns:38px minmax(0,1fr);padding:14px}.billing-price{grid-column:1 / -1;text-align:left}.billing-plan dl{grid-template-columns:1fr}.billing-plan dl>div+div{border-left:0;border-top:1px solid var(--line)}.billing-mode-selector{grid-template-columns:1fr}.billing-mode-selector button{min-height:70px;border-right:0}.billing-collector-form{grid-template-columns:1fr}.billing-policy-panel>header{flex-wrap:wrap}.billing-policy-panel>header button{width:100%;justify-content:center}.billing-ledger>header{align-items:flex-start;flex-wrap:wrap}.billing-admin-badge{margin-left:29px}}.collaboration-title{align-items:center}.collaboration-title>div:nth-child(2){min-width:0;flex:1}.collaboration-stats{flex:0 0 auto!important;display:flex;gap:17px}.collaboration-stats span{display:grid;justify-items:end}.collaboration-stats strong{color:var(--green);font:700 16px "Noto Serif SC",serif}.collaboration-stats small{margin-top:2px;color:var(--muted);font-size:7px}.collaboration-tabs{height:37px;display:flex;align-items:stretch;border-bottom:1px solid var(--line);background:#f5f1e8}.collaboration-tabs button{min-width:92px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);font-size:8.5px;cursor:pointer}.collaboration-tabs button.active{background:var(--paper);color:var(--green);box-shadow:inset 0 -2px 0 var(--red)}.collaboration-tabs svg{width:14px}.space-member-list{background:#fffdf8b8}.space-member-row{min-height:59px;display:grid;grid-template-columns:31px minmax(120px,1fr) 126px minmax(110px,.9fr) 31px;align-items:center;gap:10px;padding:9px 13px;border-bottom:1px solid #e5dfd3}.space-member-row:last-child{border-bottom:0}.space-member-row.suspended{background:#7878700f;opacity:.72}.space-member-row>i{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;font:600 10px "Noto Serif SC",serif;font-style:normal}.space-member-identity,.space-member-identity strong,.space-member-identity small{min-width:0;display:block}.space-member-identity strong{overflow:hidden;color:var(--ink);font:600 9px "Noto Serif SC",serif;text-overflow:ellipsis;white-space:nowrap}.space-member-identity small{margin-top:3px;overflow:hidden;color:var(--muted);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.space-member-row label{display:grid;gap:3px}.space-member-row label>span{color:var(--muted);font-size:6.5px}.space-member-row select{min-width:0;width:100%;height:28px;border:1px solid var(--line);border-radius:0;background:var(--paper);padding:0 7px;color:var(--green);font-size:8px}.space-member-row select:disabled{border-color:transparent;background:transparent;color:var(--muted);opacity:1}.space-member-scope{overflow:hidden;color:var(--muted);font-size:7.5px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.space-member-row>button{width:29px;height:29px;display:grid;place-items:center;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}.space-member-row>button:disabled{cursor:not-allowed;opacity:.28}.space-member-row>button.member-suspend:not(:disabled):hover{border-color:#b96f5a;color:var(--red)}.space-member-row>button.member-resume{border-color:#91a797;color:var(--green)}.space-member-row>button svg{width:13px}.space-invitation-workspace{background:#fffdf8b8}.space-invite-form{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;align-items:end;gap:10px;padding:14px;border-bottom:1px solid var(--line)}.space-invite-form label{display:grid;gap:5px}.space-invite-form label>span,.invitation-accept-form label>span{color:var(--green);font-size:7.5px;font-weight:600}.space-invite-form input,.space-invite-form select,.invitation-accept-form input{width:100%;height:31px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);padding:0 8px;color:var(--ink);font-size:8.5px}.space-invite-form>button{min-height:31px;white-space:nowrap}.space-invitation-row{min-height:47px;display:flex;align-items:center;gap:9px;padding:8px 14px;border-bottom:1px solid #e5dfd3}.space-invitation-row:last-child{border-bottom:0}.space-invitation-row>svg{width:15px;flex:0 0 auto;color:var(--jade)}.space-invitation-row>span{min-width:0;flex:1}.space-invitation-row strong,.space-invitation-row small{display:block}.space-invitation-row strong{color:var(--ink);font:600 8.5px "Noto Serif SC",serif}.space-invitation-row small{margin-top:3px;overflow:hidden;color:var(--muted);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.space-invitation-row>div{display:flex;gap:5px}.space-invitation-row button{width:28px;height:27px;display:grid;place-items:center;border:1px solid var(--line);background:transparent;color:var(--green);cursor:pointer}.space-invitation-row button:last-child{color:var(--red)}.space-invitation-row button svg{width:12px}.space-invitation-row em{color:var(--muted);font-size:7.5px;font-style:normal}.space-invitation-row.revoked,.space-invitation-row.expired{opacity:.55}.invitation-acceptance{padding:17px;background:#fffdf8b8}.invitation-summary{display:flex;align-items:center;gap:10px;padding:11px 12px;border-left:2px solid var(--jade);background:#edf1ec}.invitation-summary>svg{width:20px;flex:0 0 auto;color:var(--green)}.invitation-summary strong,.invitation-summary small{display:block}.invitation-summary strong{color:var(--green);font:600 11px "Noto Serif SC",serif}.invitation-summary small{margin-top:4px;color:var(--muted);font-size:7.5px}.invitation-accept-form{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:11px;margin-top:13px}.invitation-accept-form label{display:grid;gap:5px}.invitation-accept-form .invitation-consent{grid-column:1 / -1;display:flex;align-items:flex-start;gap:7px;color:var(--muted);font-size:7.5px;line-height:1.45}.invitation-consent input{width:14px;height:14px;flex:0 0 auto;margin:0;accent-color:var(--green)}.invitation-accept-form>button{justify-self:end;grid-column:1 / -1}.collaboration-locked{display:flex;align-items:center;gap:10px;padding:22px 18px;color:var(--muted)}.collaboration-locked>svg{width:21px;color:var(--jade)}.collaboration-locked strong,.collaboration-locked small{display:block}.collaboration-locked strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.collaboration-locked small{margin-top:4px;font-size:7.5px}.collaboration-empty{min-height:130px;display:grid;place-items:center;align-content:center;gap:5px;color:var(--muted);text-align:center}.collaboration-empty.compact{min-height:96px}.collaboration-empty svg{width:21px;color:var(--jade)}.collaboration-empty strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.collaboration-empty span{font-size:7.5px}.collaboration-error{margin:0 14px 13px;padding:8px 10px;border-left:2px solid var(--red);background:var(--red-soft);color:#7b3027;font-size:8px;line-height:1.45}@media(max-width:800px){.settings-page{height:auto;min-height:calc(100dvh - 121px);padding:18px 14px 80px}.settings-head{display:block}.settings-head h1{font-size:23px}.settings-head>button{margin-top:14px;width:100%;justify-content:center}.settings-layout{display:block;margin-top:14px}.settings-rail{margin-top:14px}.settings-form{grid-template-columns:1fr;gap:12px;padding:14px}.settings-form .span-two{grid-column:auto}.branch-setting-grid{grid-template-columns:1fr}.branch-setting-grid>div,.branch-setting-grid>div:nth-child(odd),.branch-setting-grid>div:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--line)}.branch-setting-grid>div:last-child{border-bottom:0}.settings-footnote{align-items:flex-start;flex-wrap:wrap}.settings-footnote span{flex-basis:calc(100% - 24px)}.settings-footnote small{margin-left:23px;white-space:normal}.collaboration-title{align-items:flex-start;flex-wrap:wrap}.collaboration-stats{width:100%;justify-content:flex-start;padding-left:28px}.collaboration-stats span{justify-items:start}.space-member-row{grid-template-columns:31px minmax(0,1fr) 31px;gap:8px}.space-member-row>label,.space-member-scope{grid-column:2 / -1}.space-member-row>button{grid-column:3;grid-row:1}.space-invite-form{grid-template-columns:1fr 1fr}.space-invite-form>button{grid-column:1 / -1;justify-content:center}.invitation-accept-form{grid-template-columns:1fr}.invitation-accept-form .invitation-consent,.invitation-accept-form>button{grid-column:auto}.invitation-accept-form>button{width:100%;justify-content:center}.space-invitation-row small{white-space:normal;line-height:1.45}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media(max-width:800px){.import-center-dialog{max-height:calc(100dvh - 20px)}.import-kind-switch{display:flex;overflow-x:auto;touch-action:pan-x;scrollbar-width:none}.import-kind-switch::-webkit-scrollbar{display:none}.import-kind-switch button{min-width:145px;flex:0 0 145px}.import-work-area{padding:12px 14px 15px}.import-panel-title{display:block}.import-panel-title button{width:100%;justify-content:center;margin-top:11px}.import-template-fields{display:block}.import-template-fields>div{margin-top:7px}.import-report-strip button{min-height:60px;padding:8px 9px}.import-report-strip strong{font-size:15px}.import-report-strip span{font-size:7px}.import-review-tools{display:block}.import-review-tools>span{display:block;margin-top:7px}.import-preview-table{overflow-x:auto;touch-action:pan-x}.import-preview-head,.import-preview-table article{min-width:650px}.import-success{min-height:360px;padding:26px 18px}}.publication-page{height:100%;overflow-y:auto;padding:26px 30px 42px;scrollbar-width:none;-ms-overflow-style:none}.publication-page::-webkit-scrollbar{display:none}.publication-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;padding-bottom:21px;border-bottom:1px solid var(--line)}.publication-head h1{margin:5px 0 7px;color:var(--green);font:700 28px "Noto Serif SC",serif}.publication-head p{margin:0;color:var(--muted);font-size:10px;line-height:1.6}.eyebrow{display:flex;align-items:center;gap:6px;color:var(--jade);font-size:9px;font-weight:700;letter-spacing:.08em}.eyebrow svg{width:15px}.publication-actions{display:flex;gap:8px;flex:0 0 auto}.publication-actions button{min-height:34px}.release-banner{display:flex;align-items:center;gap:11px;margin:20px 0;padding:14px 16px;border:1px solid #c7d4ca;background:#edf2ec}.release-banner>svg{width:20px;color:var(--green);flex:0 0 auto}.release-banner div{min-width:0;flex:1}.release-banner strong,.release-banner span{display:block}.release-banner strong{color:var(--green);font:600 12px "Noto Serif SC",serif}.release-banner span{margin-top:4px;color:var(--muted);font-size:9px;line-height:1.55}.release-banner b{padding:4px 8px;color:var(--green);background:#dbe7dc;font-size:9px;font-weight:600;white-space:nowrap}.release-banner.content-locked{border-color:#9c4a3961;background:#f6ebe5}.release-banner.content-locked>svg,.release-banner.content-locked strong{color:#8b4534}.release-banner.content-locked b{color:#8b4534;background:#ecd5ca}.release-banner>.outline-btn{min-height:30px;white-space:nowrap}.publication-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.75fr);gap:17px}.quality-panel,.release-panel{border:1px solid var(--line);background:#fffdf8bd}.section-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:17px 18px 14px;border-bottom:1px solid var(--line)}.section-title h2{margin:0;color:var(--green);font:600 15px "Noto Serif SC",serif}.section-title p{margin:5px 0 0;color:var(--muted);font-size:8.5px;line-height:1.5}.section-title>span{color:var(--jade);font-size:8px;white-space:nowrap}.quality-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:71px;padding:9px 18px;border-bottom:1px solid #e5dfd3}.quality-row:last-child{border-bottom:0}.quality-icon{width:26px;height:26px;display:grid;place-items:center;border-radius:50%}.quality-icon svg{width:16px}.quality-icon.pass{color:var(--green);background:#e2eee4}.quality-icon.warn{color:#9b543a;background:#f3e3d8}.quality-row strong{color:var(--ink);font:600 10px "Noto Serif SC",serif}.quality-row p{margin:4px 0 0;color:var(--muted);font-size:8px;line-height:1.5}.quality-row em{max-width:140px;color:var(--green);font:600 10px "Noto Serif SC",serif;font-style:normal;text-align:right}.quality-row em.warn{color:#9b543a}.export-row{width:100%;display:flex;align-items:center;gap:10px;padding:14px 18px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--green);text-align:left;cursor:pointer}.export-row:hover{background:#6e8d7b12}.export-row svg{width:18px;color:var(--jade)}.export-row strong,.export-row small{display:block}.export-row strong{font:600 10px "Noto Serif SC",serif}.export-row small{margin-top:4px;color:var(--muted);font-size:8px}.release-history{padding:18px}.release-history h3{margin:0 0 10px;color:var(--green);font:600 11px "Noto Serif SC",serif}.release-history>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--line)}.release-history strong,.release-history small{display:block}.release-history strong{color:var(--ink);font-size:9px;font-weight:600}.release-history small{margin-top:3px;color:var(--muted);font-size:7.5px}.release-history em{color:var(--jade);font-size:8px;font-style:normal;white-space:nowrap}.release-history p{margin:0;color:var(--muted);font-size:9px;line-height:1.6}.audit-strip{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:17px;padding:13px 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.audit-strip div{display:flex;align-items:center;gap:8px;min-width:0}.audit-strip svg{width:16px;color:var(--jade);flex:0 0 auto}.audit-strip strong{color:var(--green);font:600 10px "Noto Serif SC",serif;white-space:nowrap}.audit-strip span{color:var(--muted);font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-strip em{color:var(--muted);font-size:8px;font-style:normal;white-space:nowrap}.claim-pending{color:var(--green)!important;background:#e0ece2!important}.claim-success{display:grid;justify-items:center;gap:10px;padding:36px 25px;text-align:center}.claim-success svg{width:35px;color:var(--green)}.claim-success strong{color:var(--green);font:600 14px "Noto Serif SC",serif}.claim-success span{max-width:280px;color:var(--muted);font-size:9px;line-height:1.6}.claim-success button{margin-top:6px}.privacy-editor label{display:grid;gap:5px}.privacy-editor label span{color:var(--muted);font-size:8px}.privacy-editor select{min-height:29px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font-size:9px}.privacy-editor>small{display:block;margin-top:7px;color:var(--muted);font-size:7.5px;line-height:1.5}.privacy-editor>em{display:block;margin-top:5px;color:var(--green-2);font-size:7.5px;font-style:normal}@media(max-width:800px){.publication-page{height:auto;min-height:calc(100dvh - 121px);padding:18px 14px 80px}.publication-head{display:block}.publication-head h1{font-size:23px}.publication-actions{margin-top:14px}.publication-actions button{flex:1;justify-content:center}.release-banner{align-items:flex-start}.release-banner b{margin-left:auto}.publication-grid{display:block}.release-panel{margin-top:14px}.quality-row{grid-template-columns:26px minmax(0,1fr);padding:10px 14px}.quality-row em{grid-column:2;text-align:left}.audit-strip{align-items:flex-start}.audit-strip div{align-items:flex-start;flex-wrap:wrap}.audit-strip span{flex-basis:100%;margin-left:24px;white-space:normal}.audit-strip em{margin-left:auto}}.source-page{height:100%;overflow-y:auto;padding:26px 30px 42px;scrollbar-width:none;-ms-overflow-style:none}.source-page::-webkit-scrollbar{display:none}.source-head{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;padding-bottom:21px;border-bottom:1px solid var(--line)}.source-head h1{margin:5px 0 7px;color:var(--green);font:700 28px "Noto Serif SC",serif}.source-head p{max-width:650px;margin:0;color:var(--muted);font-size:10px;line-height:1.6}.source-head-actions{flex:0 0 auto;display:grid;justify-items:end;gap:9px}.source-head-actions>button{min-height:33px}.source-head-stats{display:flex;gap:10px}.source-head-stats span{min-width:70px;padding:8px 11px;border-left:2px solid var(--jade);background:#6e8d7b14}.source-head-stats strong,.source-head-stats small{display:block}.source-head-stats strong{color:var(--green);font:700 17px "Noto Serif SC",serif}.source-head-stats small{margin-top:3px;color:var(--muted);font-size:7.5px}.source-layout{display:grid;grid-template-columns:285px minmax(0,1fr);min-height:580px;margin-top:20px;border:1px solid var(--line);background:#fffdf8bd}.source-list-panel{min-width:0;display:flex;flex-direction:column;border-right:1px solid var(--line)}.source-filter{display:flex;gap:5px;overflow-x:auto;padding:11px;border-bottom:1px solid var(--line);scrollbar-width:none}.source-filter::-webkit-scrollbar{display:none}.source-filter button{flex:0 0 auto;min-height:27px;border:1px solid var(--line);background:transparent;padding:0 8px;color:var(--muted);font-size:8px;cursor:pointer}.source-filter button.active{border-color:var(--green);background:#e7eee8;color:var(--green);font-weight:600}.source-list{min-height:0;overflow-y:auto;scrollbar-width:none}.source-list::-webkit-scrollbar{display:none}.source-list>button{width:100%;display:grid;grid-template-columns:28px minmax(0,1fr) 14px;align-items:center;gap:9px;min-height:70px;padding:10px 12px;border:0;border-bottom:1px solid #e5dfd3;background:transparent;text-align:left;cursor:pointer}.source-list>button:hover{background:#6e8d7b0f}.source-list>button.selected{background:var(--red-soft);box-shadow:inset 3px 0 0 var(--red)}.source-file-icon{width:26px;height:30px;display:grid;place-items:center;border:1px solid var(--line-strong);color:var(--jade);background:#f1eee6}.source-file-icon.current{border-color:#a8c1ad;color:var(--green);background:#e7efe8}.source-file-icon svg{width:15px}.source-list strong,.source-list small{display:block}.source-list strong{overflow:hidden;color:var(--green);font:600 9px "Noto Serif SC",serif;line-height:1.35;text-overflow:ellipsis}.source-list small{margin-top:4px;overflow:hidden;color:var(--muted);font-size:7.5px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.source-list>button>svg{width:13px;color:var(--line-strong)}.source-detail{min-width:0;padding:22px 25px 30px;overflow-y:auto;scrollbar-width:none}.source-detail::-webkit-scrollbar{display:none}.source-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:16px;border-bottom:1px solid var(--line)}.source-status{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:8px}.source-status.current{color:var(--green)}.source-status svg{width:14px}.source-detail h2{max-width:760px;margin:7px 0 5px;color:var(--green);font:700 20px "Noto Serif SC",serif;overflow-wrap:anywhere}.source-detail-head p{margin:0;color:var(--muted);font-size:8.5px}.source-detail-head button{flex:0 0 auto}.source-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:17px}.source-facts>div{min-width:0;padding:12px 13px;border:1px solid var(--line);background:#f8f5ed}.source-facts span,.source-facts strong,.source-facts small{display:block}.source-facts span{color:var(--muted);font-size:8px}.source-facts strong{margin-top:6px;color:var(--green);font:600 11px "Noto Serif SC",serif;overflow-wrap:anywhere}.source-facts small{display:flex;align-items:center;gap:4px;margin-top:7px;color:var(--muted);font-size:7.5px;line-height:1.4}.source-facts small svg{width:12px;color:var(--jade);flex:0 0 auto}.source-note{display:flex;gap:10px;margin-top:17px;padding:13px;border-left:2px solid var(--jade);background:#edf1ec}.source-note-icon{width:24px;height:24px;display:grid;place-items:center;flex:0 0 auto;color:var(--green)}.source-note-icon svg{width:18px}.source-note h3{margin:0;color:var(--green);font:600 11px "Noto Serif SC",serif}.source-note p{margin:5px 0 0;color:#536057;font-size:8.5px;line-height:1.6}.version-compare{margin-top:19px;border:1px solid var(--line)}.version-compare .section-title{align-items:center}.version-compare .section-title>svg{width:19px;color:var(--jade)}.compare-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.compare-grid>div{min-width:0;min-height:90px;padding:12px;border-right:1px solid var(--line)}.compare-grid>div:last-child{border-right:0}.compare-grid span,.compare-grid strong,.compare-grid small{display:block}.compare-grid span{color:var(--muted);font-size:8px}.compare-grid strong{margin-top:7px;color:var(--green);font:600 12px "Noto Serif SC",serif;overflow-wrap:anywhere}.compare-grid small{margin-top:5px;color:var(--muted);font-size:7.5px;line-height:1.45}.compare-warning{display:flex;align-items:center;gap:7px;padding:11px 12px;border-top:1px solid var(--line);background:#fbf3e8;color:#85543b}.compare-warning>svg{width:16px;flex:0 0 auto}.compare-warning span{min-width:0;flex:1;font-size:8px;line-height:1.5}.compare-warning button{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;border:0;background:none;color:#85543b;font-size:8px;cursor:pointer}.compare-warning button svg{width:13px}.source-empty{min-height:300px;display:grid;justify-items:center;align-content:center;gap:8px;color:var(--muted);text-align:center}.source-empty svg{width:30px;color:var(--jade)}.source-empty strong{color:var(--green);font:600 12px "Noto Serif SC",serif}.source-empty span{max-width:280px;font-size:8.5px;line-height:1.6}.source-footer{display:flex;align-items:center;gap:8px;margin-top:15px;padding:12px 2px;color:var(--muted);font-size:8px}.source-footer svg{width:15px;color:var(--jade);flex:0 0 auto}.source-footer span{flex:1}.source-footer small{color:var(--jade);white-space:nowrap}.source-import-actions{display:flex;gap:7px}.source-import-actions button{min-height:33px}@media(max-width:800px){.source-page{height:auto;min-height:calc(100dvh - 121px);padding:18px 14px 80px}.source-head{display:block}.source-head h1{font-size:23px}.source-head-actions{display:block}.source-head-actions>button{width:100%;justify-content:center;margin-top:9px}.source-head-stats{margin-top:14px}.source-head-stats span{flex:1;min-width:0}.source-layout{display:block;min-height:0;margin-top:14px}.source-list-panel{border-right:0;border-bottom:1px solid var(--line)}.source-list{display:flex;overflow-x:auto;touch-action:pan-x}.source-list>button{min-width:245px;border-right:1px solid #e5dfd3;border-bottom:0}.source-detail{padding:18px 14px 25px}.source-detail-head{display:block}.source-detail-head button{margin-top:12px;width:100%;justify-content:center}.source-detail h2{font-size:18px}.source-facts{grid-template-columns:1fr}.compare-grid{grid-template-columns:1fr 1fr}.compare-grid>div:nth-child(2){border-right:0}.compare-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.compare-warning{align-items:flex-start;flex-wrap:wrap}.compare-warning button{margin-left:23px}.source-footer{align-items:flex-start;flex-wrap:wrap}.source-footer span{flex-basis:calc(100% - 24px)}.source-footer small{margin-left:23px}.source-import-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:9px}.source-import-actions button{justify-content:center}}.edition-contribution-dialog{width:min(750px,100%);max-height:min(850px,calc(100vh - 30px));display:flex;flex-direction:column}.edition-contribution-body{min-height:0;overflow-y:auto;padding:18px 22px 20px;scrollbar-width:none}.edition-contribution-body::-webkit-scrollbar,.edition-person-results::-webkit-scrollbar{display:none}.edition-contribution-modes{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line-strong)}.edition-contribution-modes button{min-height:39px;display:flex;align-items:center;justify-content:center;gap:6px;border:0;border-right:1px solid var(--line-strong);background:#f8f5ed;color:var(--muted);font-size:9px;cursor:pointer}.edition-contribution-modes button:last-child{border-right:0}.edition-contribution-modes button.active{background:var(--green);color:#fff;font-weight:700}.edition-contribution-modes svg{width:14px}.edition-chapter-edit-context{display:grid;gap:11px;padding-bottom:16px;border-bottom:1px solid var(--line)}.edition-chapter-edit-context label{display:grid;gap:6px}.edition-chapter-edit-context label>span,.edition-before-text>span{color:var(--green);font-size:9px;font-weight:600}.edition-chapter-edit-context select{width:100%;min-height:38px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);padding:7px 9px;color:var(--ink);font-size:9px}.edition-before-text{padding:11px 12px;border-left:3px solid #a96e42;background:#f7f1e7}.edition-before-text p,.edition-edit-hint{margin:6px 0 0;color:var(--muted);font-size:8.5px;line-height:1.65;white-space:pre-wrap}.edition-contribution-context{margin-top:16px;padding-bottom:16px;border-bottom:1px solid var(--line)}.edition-person-search{display:grid;gap:6px}.edition-person-search>span,.edition-context-grid label>span,.edition-contribution-form label>span{color:var(--green);font-size:9px;font-weight:600}.edition-person-search>div{height:35px;display:flex;align-items:center;gap:7px;padding:0 9px;border:1px solid var(--line-strong);background:var(--paper)}.edition-person-search svg{width:14px;color:var(--jade)}.edition-person-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:9px}.edition-person-results{max-height:168px;overflow-y:auto;border:1px solid var(--line);border-top:0;background:var(--surface)}.edition-person-results button{width:100%;min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:7px 9px;text-align:left;cursor:pointer}.edition-person-results button:hover{background:#edf1ec}.edition-person-results strong,.edition-person-results small{display:block}.edition-person-results strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.edition-person-results small{margin-top:2px;color:var(--muted);font-size:7.5px}.edition-person-results svg{width:14px;color:var(--jade)}.edition-person-results p{margin:0;padding:13px;color:var(--muted);font-size:8px;text-align:center}.edition-person-selected{min-height:46px;display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #b3c2b7;background:#edf1ec}.edition-person-selected>svg{width:16px;color:var(--jade)}.edition-person-selected span{min-width:0;flex:1}.edition-person-selected strong,.edition-person-selected small{display:block}.edition-person-selected strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.edition-person-selected small{margin-top:2px;color:var(--muted);font-size:7.5px}.edition-person-selected button{border:0;background:transparent;color:#7b574a;font-size:8px;cursor:pointer}.edition-context-grid,.edition-contribution-form{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:13px}.edition-context-grid label,.edition-contribution-form label{display:grid;gap:5px}.edition-context-grid input,.edition-context-grid select,.edition-contribution-form input,.edition-contribution-form select,.edition-contribution-form textarea{width:100%;min-height:33px;border:1px solid var(--line-strong);border-radius:0;outline:0;background:var(--paper);padding:8px 9px;color:var(--ink);font-size:9px}.edition-contribution-form textarea{min-height:58px;resize:vertical}.edition-context-grid .span-two,.edition-contribution-form .span-two{grid-column:1 / -1}.edition-media-source{margin-top:15px}.edition-oral-history{margin:15px 0 0;padding:12px;border:1px solid #c8c2b7;background:#f8f5ed}.edition-oral-history legend{padding:0 5px;color:var(--green);font-size:9px;font-weight:700}.edition-oral-history-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.edition-oral-history-grid label{display:grid;gap:5px}.edition-oral-history-grid label>span{color:var(--green);font-size:9px;font-weight:600}.edition-oral-history-grid input:not([type=checkbox]),.edition-oral-history-grid select{width:100%;min-height:33px;border:1px solid var(--line-strong);border-radius:0;outline:0;background:var(--paper);padding:8px 9px;color:var(--ink);font-size:9px}.edition-oral-history-grid .span-two{grid-column:1 / -1}.edition-oral-consent{grid-template-columns:15px minmax(0,1fr);align-items:start;padding:9px 10px;border-left:2px solid var(--jade);background:#edf1ec}.edition-oral-consent input{margin:1px 0 0;accent-color:var(--jade)}.edition-oral-consent span{color:#49564d!important;font-size:8px!important;font-weight:400!important;line-height:1.55}.edition-recorder{min-height:63px;display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid #c8c2b7;background:#f8f5ed}.edition-recorder.is-recording{border-color:#b05b4c;background:#faf0ec}.edition-recorder>svg{width:20px;color:var(--jade)}.edition-recorder.is-recording>svg{color:var(--red);animation:pulse 1s ease-in-out infinite}.edition-recorder span{min-width:0;flex:1}.edition-recorder strong,.edition-recorder small{display:block}.edition-recorder strong{color:var(--green);font-size:9px}.edition-recorder small{margin-top:3px;overflow:hidden;color:var(--muted);font-size:7.5px;text-overflow:ellipsis;white-space:nowrap}.edition-recorder button{min-height:29px;display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line-strong);background:var(--paper);padding:0 8px;color:var(--green);font-size:8px;cursor:pointer}.edition-recorder button svg{width:12px}.edition-capture-picker{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px;padding:9px 11px;border:1px dashed var(--line-strong);background:#f8f5ed;cursor:pointer}.edition-capture-picker.selected{border-style:solid;border-color:var(--jade);background:#edf1ec}.edition-capture-picker input{position:absolute;width:1px;height:1px;opacity:0}.edition-capture-picker>span{min-width:0;display:grid;grid-template-columns:18px minmax(0,1fr);gap:2px 7px}.edition-capture-picker span svg{grid-row:span 2;width:18px;color:var(--jade)}.edition-capture-picker strong,.edition-capture-picker small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edition-capture-picker strong{color:var(--green);font-size:9px}.edition-capture-picker small{color:var(--muted);font-size:7.5px}.edition-capture-picker>svg{width:15px;color:var(--jade)}.edition-contribution-error{margin-top:12px;padding:9px 10px;border-left:2px solid var(--red);background:var(--red-soft);color:#7b3027;font-size:8.5px;line-height:1.5}@media(max-width:800px){.edition-contribution-body{padding:14px}.edition-contribution-modes button{min-width:0;font-size:8px}.edition-context-grid,.edition-contribution-form,.edition-oral-history-grid{grid-template-columns:1fr}.edition-context-grid .span-two,.edition-contribution-form .span-two,.edition-oral-history-grid .span-two{grid-column:auto}.edition-recorder{align-items:flex-start;flex-wrap:wrap}.edition-recorder span{flex-basis:calc(100% - 32px)}.edition-recorder button{margin-left:28px}}.media-record-preview video{width:100%;height:100%;object-fit:cover;background:#171b18}.relationship-path-page{height:100%;overflow-y:auto;padding:26px 30px 42px;scrollbar-width:none;-ms-overflow-style:none}.relationship-path-page::-webkit-scrollbar{display:none}.relationship-path-head{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;padding-bottom:21px;border-bottom:1px solid var(--line)}.relationship-path-head h1{margin:5px 0 7px;color:var(--green);font:700 28px "Noto Serif SC",serif}.relationship-path-head p{max-width:680px;margin:0;color:var(--muted);font-size:10px;line-height:1.6}.relationship-path-head>span{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;color:var(--jade);font-size:8px}.relationship-path-head>span svg{width:15px}.path-query-band{display:grid;grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr);align-items:start;gap:12px;margin-top:20px;padding:18px;border:1px solid var(--line);background:#fffdf8bd}.path-person-picker{position:relative;min-width:0}.path-person-picker>label{display:grid;gap:6px}.path-person-picker>label>span{color:var(--green);font-size:9px;font-weight:600}.path-person-picker>label>div{display:flex;align-items:center;gap:7px;min-height:35px;border:1px solid var(--line-strong);background:var(--paper);padding:0 9px}.path-person-picker>label svg{width:14px;color:var(--jade);flex:0 0 auto}.path-person-picker input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:9px}.path-picker-results{position:absolute;left:0;right:0;top:58px;z-index:20;max-height:230px;overflow-y:auto;border:1px solid var(--line-strong);background:var(--paper);box-shadow:0 14px 30px #2c312b24;scrollbar-width:none}.path-picker-results::-webkit-scrollbar{display:none}.path-picker-results button{width:100%;display:grid;grid-template-columns:25px minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;cursor:pointer}.path-picker-results button:hover{background:#edf1ec}.path-picker-results button i,.path-selected-person>i,.path-node>i{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;font:600 9px "Noto Serif SC",serif;font-style:normal}.path-picker-results strong,.path-picker-results small{display:block}.path-picker-results strong{color:var(--green);font:600 9px "Noto Serif SC",serif}.path-picker-results small{margin-top:2px;color:var(--muted);font-size:7.5px}.path-picker-results p{margin:0;padding:18px 10px;color:var(--muted);font-size:8px;text-align:center}.path-selected-person{min-width:0;display:flex;align-items:center;gap:8px;margin-top:9px;padding:7px 9px;border-left:2px solid var(--jade);background:#edf1ec}.path-selected-person>span{min-width:0}.path-selected-person strong,.path-selected-person small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.path-selected-person strong{color:var(--green);font:600 9px "Noto Serif SC",serif}.path-selected-person small{margin-top:2px;color:var(--muted);font-size:7.5px}.path-swap{width:34px;height:34px;display:grid;place-items:center;margin-top:20px;border:1px solid var(--line-strong);background:var(--paper);color:var(--green);cursor:pointer}.path-swap:disabled{opacity:.4;cursor:default}.path-swap svg{width:15px}.path-result-panel{min-height:330px;margin-top:16px;border:1px solid var(--line);background:#fffdf8bd}.path-empty{min-height:328px;display:grid;justify-items:center;align-content:center;gap:8px;padding:30px;color:var(--muted);text-align:center}.path-empty svg{width:31px;color:var(--jade)}.path-empty strong{color:var(--green);font:600 13px "Noto Serif SC",serif}.path-empty span{max-width:360px;font-size:8.5px;line-height:1.6}.path-empty.warning svg{color:#a76d45}.path-result-title{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding:18px 20px 15px;border-bottom:1px solid var(--line)}.path-result-title span,.path-result-title p{color:var(--muted);font-size:8px}.path-result-title h2{margin:5px 0 4px;color:var(--green);font:700 18px "Noto Serif SC",serif}.relationship-path-strip{min-height:170px;display:flex;align-items:center;overflow-x:auto;padding:28px 22px;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x}.relationship-path-strip::-webkit-scrollbar{display:none}.path-node{min-width:98px;display:grid;justify-items:center;gap:6px;flex:0 0 auto;border:0;background:transparent;color:var(--ink);cursor:pointer}.path-node>i{width:38px;height:38px;background:var(--paper);border:1px solid var(--green);color:var(--green);font-size:12px}.path-node:first-child>i,.path-node:last-child>i{background:var(--green);color:#fff}.path-node strong{max-width:96px;overflow-wrap:anywhere;color:var(--green);font:600 11px "Noto Serif SC",serif}.path-node span{color:var(--muted);font-size:7.5px;white-space:nowrap}.path-edge{position:relative;width:112px;min-width:112px;display:grid;justify-items:center;gap:3px;flex:0 0 auto;padding-top:22px;text-align:center}.path-edge>i{position:absolute;top:10px;left:0;right:0;height:1px;background:var(--line-strong)}.path-edge>i:after{content:"";position:absolute;right:0;top:-3px;width:6px;height:6px;border-top:1px solid var(--green);border-right:1px solid var(--green);transform:rotate(45deg)}.path-edge span{color:var(--green);font-size:8px;font-weight:600}.path-edge small{max-width:104px;color:var(--muted);font-size:7px;line-height:1.35}.path-evidence-note{display:flex;align-items:flex-start;gap:7px;margin:0 20px 18px;padding:11px 12px;border-left:2px solid var(--jade);background:#edf1ec;color:var(--muted);font-size:8px;line-height:1.55}.path-evidence-note svg{width:14px;color:var(--jade);flex:0 0 auto}.data-exchange-dialog{width:min(790px,100%);max-height:min(880px,calc(100vh - 30px));display:flex;flex-direction:column}.data-exchange-tabs{display:flex;gap:0;padding:0 22px;border-bottom:1px solid var(--line)}.data-exchange-tabs button{min-height:42px;display:inline-flex;align-items:center;gap:6px;border:0;border-bottom:2px solid transparent;background:transparent;padding:0 14px;color:var(--muted);font-size:9px;cursor:pointer}.data-exchange-tabs button.active{border-color:var(--red);color:var(--green);font-weight:600}.data-exchange-tabs svg{width:15px}.data-exchange-body{min-height:0;overflow-y:auto;padding:18px 22px 22px;scrollbar-width:none}.data-exchange-body::-webkit-scrollbar{display:none}.exchange-section,.exchange-import{border:1px solid var(--line);background:#fffdf8b8}.exchange-section{display:flex;align-items:center;gap:14px;padding:14px}.exchange-section>div,.exchange-section-title{min-width:0;display:flex;align-items:flex-start;gap:9px;flex:1}.exchange-section>div>svg,.exchange-section-title>svg{width:18px;color:var(--jade);flex:0 0 auto}.exchange-section h3,.exchange-section p,.exchange-section-title h3,.exchange-section-title p{margin:0}.exchange-section h3,.exchange-section-title h3{color:var(--green);font:600 11px "Noto Serif SC",serif}.exchange-section p,.exchange-section-title p{margin-top:4px;color:var(--muted);font-size:8px;line-height:1.5}.exchange-section>button{flex:0 0 auto}.exchange-import{margin-top:12px;padding:15px}.exchange-file-picker{min-height:64px;display:flex;align-items:center;gap:10px;margin-top:13px;padding:10px 12px;border:1px dashed var(--line-strong);background:#f8f5ed;cursor:pointer}.exchange-file-picker.selected{border-style:solid;border-color:var(--jade);background:#edf1ec}.exchange-file-picker input{position:absolute;width:1px;height:1px;opacity:0}.exchange-file-picker>svg{width:20px;color:var(--jade);flex:0 0 auto}.exchange-file-picker>span{min-width:0}.exchange-file-picker strong,.exchange-file-picker small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exchange-file-picker strong{color:var(--green);font:600 9px "Noto Serif SC",serif}.exchange-file-picker small{margin-top:4px;color:var(--muted);font-size:7.5px}.gedcom-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.gedcom-options label{display:grid;gap:5px}.gedcom-options span{color:var(--green);font-size:8px;font-weight:600}.gedcom-options select,.gedcom-options input{width:100%;min-height:32px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);padding:0 8px;color:var(--ink);font-size:9px}.exchange-preview{display:grid;grid-template-columns:repeat(4,1fr);margin-top:12px;border:1px solid var(--line)}.exchange-preview>span{min-width:0;padding:10px;border-right:1px solid var(--line)}.exchange-preview>span:last-child{border-right:0}.exchange-preview strong,.exchange-preview small{display:block}.exchange-preview strong{color:var(--green);font:700 15px "Noto Serif SC",serif}.exchange-preview small{margin-top:3px;color:var(--muted);font-size:7px}.exchange-submit{margin-top:12px}.restore-confirm{display:flex;align-items:flex-start;gap:8px;margin-top:12px;padding:10px;border-left:2px solid #a76d45;background:#fbf3e8}.restore-confirm input{width:14px;height:14px;margin:1px 0 0;accent-color:var(--red)}.restore-confirm strong,.restore-confirm small{display:block}.restore-confirm strong{color:#7a4d34;font-size:8.5px}.restore-confirm small{margin-top:4px;color:#8a674f;font-size:7.5px;line-height:1.45}.exchange-message{display:flex;align-items:center;gap:7px;margin-top:12px;padding:10px;border-left:2px solid var(--jade);background:#edf1ec;color:var(--green);font-size:8px;line-height:1.5}.exchange-message.error{border-color:var(--red);background:var(--red-soft);color:#7b3027}.exchange-message>svg{width:14px;flex:0 0 auto}.exchange-message button{margin-left:auto;border:0;background:transparent;color:var(--green);font-size:8px;text-decoration:underline;cursor:pointer}@media(max-width:800px){.relationship-path-page{height:auto;min-height:calc(100dvh - 121px);padding:18px 14px 80px}.relationship-path-head{display:block}.relationship-path-head h1{font-size:23px}.relationship-path-head>span{margin-top:12px}.path-query-band{grid-template-columns:1fr;padding:14px}.path-swap{margin:0 auto;transform:rotate(90deg)}.path-result-title{display:block}.path-result-title button{width:100%;justify-content:center;margin-top:12px}.relationship-path-strip{min-height:0;display:grid;justify-items:center;overflow:visible;padding:24px 14px;touch-action:pan-y}.path-node{min-width:130px}.path-edge{width:120px;min-width:120px;min-height:76px;padding-top:39px}.path-edge>i{inset:0 auto 0 50%;width:1px;height:auto}.path-edge>i:after{right:-3px;top:auto;bottom:0;transform:rotate(135deg)}.path-evidence-note{margin-left:14px;margin-right:14px}.data-exchange-dialog{max-height:calc(100dvh - 20px)}.data-exchange-tabs{padding:0 12px}.data-exchange-tabs button{min-width:0;flex:1;justify-content:center;padding:0 6px}.data-exchange-body{padding:14px}.exchange-section{align-items:flex-start;flex-wrap:wrap}.exchange-section>button{width:100%;justify-content:center}.gedcom-options,.exchange-preview{grid-template-columns:1fr 1fr}.exchange-preview>span:nth-child(2){border-right:0}.exchange-preview>span:nth-child(-n+2){border-bottom:1px solid var(--line)}.exchange-submit{width:100%;justify-content:center}}.genealogy-explore-page{height:100%;min-height:0;display:flex;flex-direction:column;background:var(--surface)}.explore-head{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex:0 0 auto;padding:13px 24px;border-bottom:1px solid var(--line);background:var(--paper)}.explore-head h1,.explore-head p{margin:0}.explore-head h1{color:var(--green);font:700 21px "Noto Serif SC",serif}.explore-head p{margin-top:4px;color:var(--muted);font-size:8px;line-height:1.5}.explore-head nav{min-height:38px;display:flex;border:1px solid var(--line-strong);background:#f8f5ed}.explore-head nav button{min-width:105px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-right:1px solid var(--line-strong);background:transparent;color:var(--muted);font-size:8.5px;cursor:pointer}.explore-head nav button:last-child{border-right:0}.explore-head nav button.active{background:var(--green);color:#fff}.explore-head nav svg{width:15px}.explore-body{min-height:0;flex:1}.explore-empty{min-height:180px;display:grid;place-items:center;padding:24px;color:var(--muted);font-size:9px;text-align:center}.fan-workspace{height:100%;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto}.fan-toolbar{min-height:52px;display:flex;align-items:center;gap:11px;padding:8px 18px;border-bottom:1px solid var(--line);background:#f7f3e9}.explore-person-search{position:relative;min-width:270px;height:34px;display:flex;align-items:center;gap:7px;flex:1;border:1px solid var(--line-strong);background:var(--paper);padding:0 9px}.explore-person-search>svg{width:15px;color:var(--jade)}.explore-person-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:9px}.explore-person-search>div{position:absolute;z-index:40;left:-1px;right:-1px;top:34px;max-height:240px;overflow-y:auto;border:1px solid var(--line-strong);background:var(--paper);box-shadow:0 12px 28px #24312a24}.explore-person-search>div button{width:100%;min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:7px 10px;text-align:left;cursor:pointer}.explore-person-search>div button:hover{background:#edf1ec}.explore-person-search>div strong{color:var(--green);font:600 9px "Noto Serif SC",serif}.explore-person-search>div span{color:var(--muted);font-size:7.5px}.fan-depth{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:8px}.fan-depth select{min-height:32px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);padding:0 26px 0 8px;color:var(--green);font-size:8.5px}.canvas-zoom{display:flex;align-items:center;height:32px;border:1px solid var(--line-strong);background:var(--paper)}.canvas-zoom button{width:31px;height:30px;display:grid;place-items:center;border:0;border-right:1px solid var(--line);background:transparent;color:var(--green);cursor:pointer}.canvas-zoom button:last-child{border-right:0;border-left:1px solid var(--line)}.canvas-zoom svg{width:14px}.canvas-zoom span{min-width:46px;text-align:center;color:var(--muted);font-size:8px}.fan-summary{min-height:54px;display:flex;align-items:center;gap:24px;padding:8px 20px;border-bottom:1px solid var(--line);background:#fffdf8c7}.fan-summary>span{display:grid;gap:2px}.fan-summary>span:first-child{min-width:150px}.fan-summary strong{color:var(--green);font:700 13px "Noto Serif SC",serif}.fan-summary small{color:var(--muted);font-size:7.5px}.fan-summary button{min-height:30px;display:inline-flex;align-items:center;gap:6px;margin-left:auto;border:1px solid var(--line-strong);background:transparent;padding:0 10px;color:var(--green);font-size:8px;cursor:pointer}.fan-summary button svg{width:14px}.fan-scroll-canvas{min-width:0;min-height:0;overflow:auto;background-color:#f4efe3;background-image:linear-gradient(rgba(74,100,88,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(74,100,88,.045) 1px,transparent 1px);background-size:28px 28px;scrollbar-width:none;overscroll-behavior:contain;touch-action:pan-x pan-y;cursor:grab}.fan-scroll-canvas:active,.fan-scroll-canvas.pointer-pan-active{cursor:grabbing}.fan-scroll-canvas::-webkit-scrollbar{display:none}.fan-stage{min-width:720px;min-height:410px;margin:0 auto}.fan-stage svg{width:100%;height:100%;display:block;overflow:visible}.fan-sector{cursor:default;outline:none}.fan-sector.known{cursor:pointer}.fan-sector path{fill:#fffdf8e0;stroke:#9ca89f;stroke-width:1;transition:fill .18s ease,stroke .18s ease}.fan-sector.known:hover path,.fan-sector.selected path{fill:#dfe8e1;stroke:var(--green);stroke-width:1.6}.fan-sector.missing path{fill:#f3eee2ad;stroke-dasharray:5 5}.fan-sector.uncertain path{fill:#fbf0e8;stroke:#a87354;stroke-dasharray:4 3}.fan-name{fill:var(--green);font:600 11px "Noto Serif SC",serif;pointer-events:none}.fan-meta{fill:var(--muted);font:7px sans-serif;pointer-events:none}.fan-root{cursor:pointer}.fan-root circle{fill:var(--green);stroke:#eadfca;stroke-width:7}.fan-root>text{fill:#fff;font:700 15px "Noto Serif SC",serif}.fan-root>text.fan-meta{fill:#dbe5df;font:7px sans-serif}.fan-legend{min-height:40px;display:flex;align-items:center;gap:17px;padding:8px 18px;border-top:1px solid var(--line);background:var(--paper);color:var(--muted);font-size:7.5px}.fan-legend span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.fan-legend i{width:16px;height:9px;border:1px solid var(--green);background:#dfe8e1}.fan-legend i.uncertain{border-color:#a87354;background:#fbf0e8}.fan-legend i.missing{border-style:dashed;border-color:#9ca89f;background:#f3eee2}.fan-legend small{margin-left:auto;font-size:7px}.migration-workspace{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr)}.migration-toolbar{min-height:51px;display:flex;align-items:center;gap:10px;padding:8px 18px;border-bottom:1px solid var(--line);background:#f7f3e9}.migration-toolbar>label{min-width:260px;height:34px;display:flex;align-items:center;gap:7px;flex:1;border:1px solid var(--line-strong);background:var(--paper);padding:0 9px}.migration-toolbar label svg,.migration-toolbar>span svg{width:14px;color:var(--jade)}.migration-toolbar input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:9px}.migration-toolbar select{min-height:34px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);padding:0 28px 0 9px;color:var(--green);font-size:8.5px}.migration-toolbar>span{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:8px;white-space:nowrap}.migration-layout{min-height:0;display:grid;grid-template-columns:minmax(360px,1.5fr) minmax(270px,.85fr) minmax(245px,.68fr)}.migration-map-panel,.migration-records,.migration-detail{min-width:0;min-height:0}.migration-map-panel{position:relative;border-right:1px solid var(--line);background:#e9ece7}.migration-leaflet{width:100%;height:100%;min-height:420px;background:#e8ece7}.migration-leaflet .leaflet-tile-pane{filter:saturate(.5) contrast(.9) brightness(1.04)}.map-offline-note{position:absolute;z-index:500;left:10px;bottom:10px;max-width:290px;display:flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid rgba(75,91,81,.24);background:#fffdf8e6;color:var(--muted);font-size:7px;line-height:1.4;pointer-events:none}.map-offline-note svg{width:13px;color:var(--jade);flex:0 0 auto}.migration-map-icon{width:74px!important;height:44px!important;display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:4px;border:1px solid #557265;background:#fffdf8f0;box-shadow:0 3px 12px #20302829;color:var(--green)}.migration-map-icon span{width:24px;height:42px;display:grid;place-items:center;background:#557265;color:#fff;font:700 10px "Noto Serif SC",serif}.migration-map-icon small{overflow:hidden;padding-right:3px;font-size:7px;line-height:1.25;text-overflow:ellipsis}.migration-map-icon.origin{grid-template-columns:24px 1fr;border-color:var(--red)}.migration-map-icon.origin span{background:var(--red)}.migration-map-icon.selected{border-color:var(--red);box-shadow:0 0 0 2px #a33b3033,0 4px 16px #20302833}.migration-map-icon.selected span{background:var(--red)}.migration-records{display:grid;grid-template-rows:auto minmax(0,1fr);border-right:1px solid var(--line);background:var(--paper)}.migration-record-caption{padding:11px 12px;border-bottom:1px solid var(--line)}.migration-record-caption strong,.migration-record-caption small{display:block}.migration-record-caption strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.migration-record-caption small{margin-top:3px;color:var(--muted);font-size:7px;line-height:1.4}.migration-record-list{min-height:0;overflow-y:auto;scrollbar-width:none}.migration-record-list::-webkit-scrollbar{display:none}.migration-record-list button{width:100%;display:grid;grid-template-columns:26px minmax(0,1fr);gap:8px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:10px;text-align:left;cursor:pointer}.migration-record-list button.selected{background:#e7eee8;box-shadow:inset 2px 0 var(--red)}.migration-record-list button>i{width:26px;height:26px;display:grid;place-items:center;border:1px solid var(--line-strong);color:var(--jade)}.migration-record-list button svg{width:14px}.migration-record-list strong,.migration-record-list small{display:block}.migration-record-list strong{color:var(--green);font:600 9px "Noto Serif SC",serif}.migration-record-list small{margin-top:2px;color:var(--muted);font-size:7px}.migration-record-list p{display:-webkit-box;overflow:hidden;margin:5px 0 0;color:#615e55;font-size:7.5px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.migration-detail{overflow-y:auto;padding:18px;background:#f7f3e9;scrollbar-width:none}.migration-detail::-webkit-scrollbar{display:none}.migration-detail header>span{color:var(--red);font-size:7px;font-weight:700}.migration-detail h2{margin:6px 0 3px;color:var(--green);font:700 18px "Noto Serif SC",serif}.migration-detail header p{margin:0;color:var(--muted);font-size:8px}.migration-detail blockquote{margin:16px 0;padding:12px 0 12px 13px;border-left:2px solid var(--jade);color:var(--ink);font:9px/1.75 "Noto Serif SC",serif}.migration-detail dl{margin:0;border-top:1px solid var(--line)}.migration-detail dl div{display:grid;grid-template-columns:62px 1fr;gap:8px;padding:9px 0;border-bottom:1px solid var(--line)}.migration-detail dt{color:var(--muted);font-size:7px}.migration-detail dd{margin:0;color:var(--green);font-size:8px;line-height:1.45}.migration-detail>button{width:100%;min-height:34px;display:flex;align-items:center;justify-content:center;gap:6px;margin-top:14px;border:1px solid var(--line-strong);background:var(--paper);color:var(--green);font-size:8px;cursor:pointer}.migration-detail>button svg{width:14px}.migration-source-rule{display:flex;align-items:flex-start;gap:6px;margin-top:13px;color:var(--muted);font-size:7px;line-height:1.5}.migration-source-rule svg{width:13px;color:var(--jade);flex:0 0 auto}.relationship-studio{height:100%;min-height:0;display:grid;grid-template-columns:minmax(230px,.62fr) minmax(440px,1.35fr) minmax(250px,.7fr)}.studio-palette,.studio-board,.studio-inspector{min-width:0;min-height:0}.studio-palette{display:grid;grid-template-rows:auto auto minmax(0,1fr);border-right:1px solid var(--line);background:var(--paper)}.studio-palette>header,.studio-inspector>header{padding:14px;border-bottom:1px solid var(--line)}.studio-palette h2,.studio-palette p,.studio-inspector h2,.studio-inspector p{margin:0}.studio-palette h2,.studio-inspector h2{color:var(--green);font:700 13px "Noto Serif SC",serif}.studio-palette p,.studio-inspector p{margin-top:4px;color:var(--muted);font-size:7.5px;line-height:1.45}.studio-palette>label{height:34px;display:flex;align-items:center;gap:7px;margin:10px 11px;border:1px solid var(--line-strong);padding:0 8px}.studio-palette>label svg{width:14px;color:var(--jade)}.studio-palette>label input{min-width:0;flex:1;border:0;outline:0;background:transparent;font-size:8.5px}.studio-palette>div{min-height:0;overflow-y:auto;padding:0 10px 10px;scrollbar-width:none}.studio-palette>div::-webkit-scrollbar{display:none}.studio-candidate{position:relative;z-index:2;width:100%;min-height:43px;display:grid;grid-template-columns:15px 27px minmax(0,1fr);align-items:center;gap:7px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:6px 5px;text-align:left;cursor:grab;touch-action:none}.studio-candidate.selected{background:#e7eee8}.studio-candidate.dragging{z-index:100;border:1px solid var(--jade);background:var(--paper);box-shadow:0 12px 24px #1f31292e}.studio-candidate>svg{width:13px;color:#9a988f}.studio-candidate>i{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;font:600 9px "Noto Serif SC",serif;font-style:normal}.studio-candidate strong,.studio-candidate small{display:block}.studio-candidate strong{color:var(--green);font:600 9px "Noto Serif SC",serif}.studio-candidate small{margin-top:2px;color:var(--muted);font-size:7px}.studio-board{overflow-y:auto;padding:18px;background-color:#f2eee4;background-image:linear-gradient(rgba(74,100,88,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(74,100,88,.045) 1px,transparent 1px);background-size:24px 24px;scrollbar-width:none}.studio-board::-webkit-scrollbar{display:none}.studio-subject{display:flex;align-items:center;gap:15px;max-width:620px;margin:0 auto 17px;padding:12px 14px;border:1px solid var(--line-strong);background:#fffdf8eb}.studio-subject>button{min-width:210px;display:grid;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:8px;border:0;background:transparent;text-align:left;cursor:pointer}.studio-subject button>i{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;font:700 13px "Noto Serif SC",serif;font-style:normal}.studio-subject strong,.studio-subject small{display:block}.studio-subject strong{color:var(--green);font:700 12px "Noto Serif SC",serif}.studio-subject small{margin-top:3px;color:var(--muted);font-size:7.5px}.studio-subject button svg{width:15px;color:var(--jade)}.studio-subject>p{margin:0;padding-left:15px;border-left:1px solid var(--line);color:var(--muted);font-size:7.5px;line-height:1.55}.studio-lanes{max-width:620px;display:grid;gap:11px;margin:0 auto}.studio-lane{border:1px solid var(--line-strong);background:#fffdf8f0;transition:border .16s ease,background .16s ease}.studio-lane.over{border-color:var(--red);background:#fbf0e8}.studio-lane>header{min-height:42px;display:flex;align-items:center;justify-content:space-between;padding:8px 11px;border-bottom:1px solid var(--line)}.studio-lane>header strong,.studio-lane>header small{display:block}.studio-lane>header strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.studio-lane>header small{margin-top:2px;color:var(--muted);font-size:7px}.studio-lane>header b{min-width:24px;height:22px;display:grid;place-items:center;background:#e4ebe5;color:var(--green);font-size:8px}.studio-existing{min-height:54px;display:flex;align-items:center;gap:8px;overflow-x:auto;padding:8px 10px;scrollbar-width:none}.studio-existing::-webkit-scrollbar{display:none}.studio-existing>span{min-width:108px;display:grid;grid-template-columns:26px 1fr;gap:1px 6px;align-items:center;padding:6px 7px;border-right:1px solid var(--line)}.studio-existing>span i{grid-row:span 2;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#e4ebe5;color:var(--green);font:600 8px "Noto Serif SC",serif;font-style:normal}.studio-existing strong{color:var(--green);font-size:8px}.studio-existing small{color:var(--muted);font-size:7px}.studio-existing em{color:var(--muted);font-size:7.5px;font-style:normal}.studio-dropzone{width:calc(100% - 18px);min-height:34px;display:flex;align-items:center;justify-content:center;gap:6px;margin:0 9px 9px;border:1px dashed #8fa197;background:#edf1ec;color:var(--green);font-size:8px;cursor:pointer}.studio-dropzone.pending{border-style:solid;border-color:var(--red);background:#fbf0e8;color:#7b3027}.studio-dropzone svg{width:14px}.studio-inspector{overflow-y:auto;border-left:1px solid var(--line);background:var(--paper);scrollbar-width:none}.studio-inspector::-webkit-scrollbar{display:none}.studio-inspector>label{display:grid;gap:6px;margin:13px}.studio-inspector>label>span{color:var(--green);font-size:8px;font-weight:600}.studio-inspector select,.studio-inspector textarea{width:100%;border:1px solid var(--line-strong);border-radius:0;outline:0;background:#fffdf8;padding:8px;color:var(--ink);font-size:8.5px}.studio-inspector select{min-height:34px}.studio-inspector textarea{min-height:104px;resize:vertical;line-height:1.55}.studio-inspector>.solid-btn{margin:0 13px}.studio-pending{display:flex;align-items:center;gap:8px;margin:13px;padding:10px;border-left:2px solid var(--red);background:#fbf0e8}.studio-pending>svg{width:17px;color:var(--red)}.studio-pending strong,.studio-pending small{display:block}.studio-pending strong{color:#743b31;font:600 9px "Noto Serif SC",serif}.studio-pending small{margin-top:3px;color:#8a675d;font-size:7px}.studio-inspector-empty{min-height:220px;display:grid;justify-items:center;align-content:center;gap:7px;padding:22px;text-align:center}.studio-inspector-empty svg{width:28px;color:var(--jade)}.studio-inspector-empty strong{color:var(--green);font:600 11px "Noto Serif SC",serif}.studio-inspector-empty span{color:var(--muted);font-size:7.5px;line-height:1.5}.studio-notice{display:flex;align-items:flex-start;gap:6px;margin:13px;padding:9px;border-left:2px solid var(--jade);background:#edf1ec;color:var(--green);font-size:7.5px;line-height:1.5}.studio-notice svg{width:13px;flex:0 0 auto}.capability-page{height:100%;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);background:var(--surface)}.capability-head{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 24px;border-bottom:1px solid var(--line);background:var(--paper)}.capability-head h1,.capability-head p{margin:0}.capability-head h1{color:var(--green);font:700 22px "Noto Serif SC",serif}.capability-head p{max-width:720px;margin-top:5px;color:var(--muted);font-size:8px;line-height:1.55}.capability-head>span{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid var(--line-strong);color:var(--muted);font-size:7.5px}.capability-head>span.configured{border-color:var(--jade);background:#edf1ec;color:var(--green)}.capability-head>span svg{width:14px}.capability-tabs{min-height:43px;display:flex;padding-left:24px;border-bottom:1px solid var(--line);background:#f7f3e9}.capability-tabs button{min-width:126px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-right:1px solid var(--line);border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:8.5px;cursor:pointer}.capability-tabs button.active{border-bottom-color:var(--red);background:var(--paper);color:var(--green);font-weight:700}.capability-tabs svg{width:15px}.capability-body{min-height:0;overflow-y:auto;padding:18px 24px 48px;scrollbar-width:none}.capability-body::-webkit-scrollbar{display:none}.service-grid,.ai-workspace,.dna-workspace,.extension-workspace{max-width:1120px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 auto}.capability-section{border:1px solid var(--line);background:#fffdf8cc;padding:15px}.capability-section>header{display:flex;align-items:flex-start;gap:9px;padding-bottom:13px;border-bottom:1px solid var(--line)}.capability-section>header>svg{width:19px;color:var(--jade);flex:0 0 auto}.capability-section h2,.capability-section p{margin:0}.capability-section h2{color:var(--green);font:700 12px "Noto Serif SC",serif}.capability-section p{margin-top:4px;color:var(--muted);font-size:7.5px;line-height:1.5}.capability-section>label,.dna-form>label,.ai-form>label{display:grid;gap:5px;margin-top:12px}.capability-section>label>span,.dna-form>label>span,.ai-form>label>span{color:var(--green);font-size:8px;font-weight:600}.capability-section input,.capability-section select,.capability-section textarea{width:100%;min-height:34px;border:1px solid var(--line-strong);border-radius:0;outline:0;background:var(--paper);padding:7px 9px;color:var(--ink);font-size:8.5px}.capability-section textarea{min-height:84px;resize:vertical;line-height:1.5}.service-actions{display:flex;gap:8px;margin-top:13px}.service-health{display:flex;align-items:center;gap:7px;margin-top:12px;padding:9px;border-left:2px solid var(--jade);background:#edf1ec}.service-health>svg{width:14px;color:var(--jade)}.service-health strong,.service-health small{display:block}.service-health strong{color:var(--green);font-size:8.5px}.service-health small{margin-top:2px;color:var(--muted);font-size:7px}.service-operations>button{width:100%;min-height:58px;display:grid;grid-template-columns:25px minmax(0,1fr);align-items:center;gap:8px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:9px 5px;text-align:left;cursor:pointer}.service-operations>button:disabled{opacity:.45;cursor:default}.service-operations>button>svg{width:18px;color:var(--jade)}.service-operations strong,.service-operations small{display:block}.service-operations strong{color:var(--green);font:600 9px "Noto Serif SC",serif}.service-operations small{margin-top:3px;color:var(--muted);font-size:7px;line-height:1.4}.service-boundary{grid-column:1 / -1;display:flex;align-items:flex-start;gap:8px;padding:12px 14px;border-left:2px solid #a87354;background:#fbf0e8;color:#755449;font-size:8px;line-height:1.55}.service-boundary svg{width:16px;flex:0 0 auto}.ai-file{min-height:63px;display:grid!important;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:2px 8px!important;border:1px dashed var(--line-strong);background:#f8f5ed;padding:9px!important;cursor:pointer}.ai-file input{position:absolute;width:1px;height:1px;opacity:0}.ai-file>svg{grid-row:span 2;width:20px;color:var(--jade)}.ai-file strong,.ai-file small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-file strong{color:var(--green);font-size:8.5px}.ai-file small{margin-top:3px;color:var(--muted);font-size:7px}.ai-form>.solid-btn{margin-top:13px}.ai-rule{border-left:1px solid var(--line);background:#f7f3e9;padding:20px}.ai-rule h2{margin:0 0 14px;color:var(--green);font:700 14px "Noto Serif SC",serif}.ai-rule ol{margin:0;padding:0;list-style:none;counter-reset:ai-step}.ai-rule li{position:relative;display:grid;gap:3px;min-height:62px;padding:4px 0 16px 42px;counter-increment:ai-step}.ai-rule li:before{content:counter(ai-step);position:absolute;left:0;top:0;width:27px;height:27px;display:grid;place-items:center;border:1px solid var(--jade);border-radius:50%;color:var(--green);font:700 9px "Noto Serif SC",serif}.ai-rule li:not(:last-child):after{content:"";position:absolute;left:13px;top:29px;bottom:0;width:1px;background:var(--line-strong)}.ai-rule strong{color:var(--green);font-size:9px}.ai-rule span{color:var(--muted);font-size:7.5px;line-height:1.45}.dna-pair{display:grid;grid-template-columns:1fr 1fr;gap:9px}.dna-pair label{display:grid;gap:5px;margin-top:12px}.dna-pair span{color:var(--green);font-size:8px;font-weight:600}.dna-consent{display:flex!important;grid-template-columns:14px 1fr;align-items:flex-start;gap:8px!important;padding:9px;border-left:2px solid #a87354;background:#fbf0e8}.dna-consent input{width:14px;min-height:14px;height:14px;margin:1px 0 0;accent-color:var(--red)}.dna-consent span{color:#755449!important;font-size:7.5px!important;line-height:1.45}.dna-import>select{margin-top:12px}.dna-summary{display:grid;grid-template-columns:repeat(3,1fr);margin-top:13px;border:1px solid var(--line)}.dna-summary span{padding:9px;border-right:1px solid var(--line)}.dna-summary span:last-child{border-right:0}.dna-summary strong,.dna-summary small{display:block}.dna-summary strong{color:var(--green);font:700 14px "Noto Serif SC",serif}.dna-summary small{margin-top:2px;color:var(--muted);font-size:7px}.dna-match-list{margin-top:12px;border-top:1px solid var(--line)}.dna-match-list>div{min-height:43px;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;border-bottom:1px solid var(--line)}.dna-match-list i{color:var(--red);font:700 10px "Noto Serif SC",serif;font-style:normal}.dna-match-list strong,.dna-match-list small{display:block}.dna-match-list strong{color:var(--green);font-size:8.5px}.dna-match-list small{margin-top:2px;color:var(--muted);font-size:7px}.extension-api>button{margin-top:13px}.extension-api pre{margin:13px 0 0;padding:13px;overflow-x:auto;background:#173e34;color:#e4eee7;font:8px/1.7 Consolas,monospace}.extension-list{margin-top:13px;border-top:1px solid var(--line)}.extension-list>div{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line)}.extension-list strong,.extension-list small{display:block}.extension-list strong{color:var(--green);font-size:8.5px}.extension-list small{margin-top:3px;color:var(--muted);font-size:7px}.extension-list label{display:flex;align-items:center;gap:6px}.extension-list label input{width:14px;min-height:14px;height:14px;accent-color:var(--green)}.extension-list label i{color:var(--muted);font-size:7px;font-style:normal}.extension-list>p{padding:18px 0;text-align:center}.capability-message{position:fixed;z-index:90;right:22px;bottom:22px;max-width:520px;display:flex;align-items:flex-start;gap:7px;padding:10px 12px;border-left:2px solid var(--jade);background:#edf1ec;box-shadow:0 8px 28px #1f302829;color:var(--green);font-size:8px;line-height:1.5}.capability-message.error{border-color:var(--red);background:#fbf0e8;color:#7b3027}.capability-message svg{width:14px;flex:0 0 auto}.dna-review{grid-column:1 / -1;padding:0;overflow:hidden}.dna-review>header{padding:15px}.dna-review-layout{min-height:590px;display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.55fr)}.dna-review-queue{min-width:0;border-right:1px solid var(--line);background:#f8f5ed}.dna-review-filters{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:7px;padding:10px;border-bottom:1px solid var(--line)}.dna-review-filters label{min-width:0;height:34px;display:flex;align-items:center;gap:6px;border:1px solid var(--line-strong);background:var(--paper);padding:0 8px}.dna-review-filters label svg{width:14px;color:var(--jade);flex:0 0 auto}.dna-review-filters label input,.dna-review-filters select{min-width:0;min-height:32px;border:0;background:transparent;padding:0}.dna-review-filters select{border:1px solid var(--line-strong);background:var(--paper);padding:0 7px}.dna-review-list{max-height:536px;overflow-y:auto;padding:0 9px 10px;scrollbar-width:none}.dna-review-list::-webkit-scrollbar{display:none}.dna-review-list>button{width:100%;min-height:52px;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:8px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:7px 5px;text-align:left;cursor:pointer}.dna-review-list>button.active{background:#e6ece6}.dna-review-list>button>i{color:var(--red);font:700 10px "Noto Serif SC",serif;font-style:normal;text-align:center}.dna-review-list strong,.dna-review-list small{display:block}.dna-review-list strong{overflow:hidden;color:var(--green);font-size:8.5px;text-overflow:ellipsis;white-space:nowrap}.dna-review-list small{margin-top:3px;overflow:hidden;color:var(--muted);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.dna-review-list>p{padding:24px 8px;text-align:center}.dna-review-detail{min-width:0;padding:14px}.dna-review-subject{display:grid;grid-template-columns:1fr 1fr auto;align-items:stretch;border:1px solid var(--line);background:var(--paper)}.dna-review-subject>span{min-width:0;display:grid;align-content:center;gap:3px;padding:10px 12px;border-right:1px solid var(--line)}.dna-review-subject small,.dna-review-subject strong,.dna-review-subject em{display:block}.dna-review-subject small{color:var(--muted);font-size:7px}.dna-review-subject strong{overflow:hidden;color:var(--green);font:700 10px "Noto Serif SC",serif;text-overflow:ellipsis;white-space:nowrap}.dna-review-subject em{overflow:hidden;color:var(--muted);font-size:7px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.dna-review-subject .dna-review-status{min-width:108px;place-items:center;border-right:0;background:#f7f3e9;color:var(--muted);font-size:7.5px}.dna-review-subject .dna-review-status.linked{background:#e6eee8;color:var(--green)}.dna-review-subject .dna-review-status.dismissed{background:#f1efea;color:#777169}.dna-candidate-search{margin-top:12px}.dna-candidate-search>label{height:36px;display:flex;align-items:center;gap:7px;border:1px solid var(--line-strong);background:var(--paper);padding:0 9px}.dna-candidate-search>label svg{width:15px;color:var(--jade)}.dna-candidate-search>label input{min-width:0;min-height:34px;flex:1;border:0;background:transparent;padding:0}.dna-candidate-list{min-height:64px;max-height:142px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:6px;overflow-y:auto;padding-top:7px;scrollbar-width:none}.dna-candidate-list::-webkit-scrollbar{display:none}.dna-candidate-list>button{min-width:0;min-height:49px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:7px;border:1px solid var(--line);background:var(--paper);padding:6px 7px;text-align:left;cursor:pointer}.dna-candidate-list>button.active{border-color:var(--jade);background:#e6eee8}.dna-candidate-list>button>i{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;font:600 9px "Noto Serif SC",serif;font-style:normal}.dna-candidate-list strong,.dna-candidate-list small{display:block}.dna-candidate-list strong{overflow:hidden;color:var(--green);font-size:8.5px;text-overflow:ellipsis;white-space:nowrap}.dna-candidate-list small{margin-top:2px;overflow:hidden;color:var(--muted);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.dna-candidate-list em{color:var(--red);font-size:7px;font-style:normal}.dna-candidate-list>p{grid-column:1 / -1;padding:15px 0;text-align:center}.dna-path-evidence{min-height:108px;margin-top:12px;border:1px solid var(--line);background:#f8f5ed}.dna-path-evidence>header{min-height:46px;display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--line)}.dna-path-evidence>header>svg{width:16px;color:var(--jade)}.dna-path-evidence>header span{min-width:0;flex:1}.dna-path-evidence strong,.dna-path-evidence small{display:block}.dna-path-evidence strong{color:var(--green);font-size:8.5px}.dna-path-evidence small{margin-top:2px;color:var(--muted);font-size:7px}.dna-path-evidence header button{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--line-strong);background:var(--paper);color:var(--green);cursor:pointer}.dna-path-evidence header button svg{width:14px}.dna-path-evidence>p{padding:12px}.dna-path-evidence .dna-path-missing{border-left:2px solid #a87354;background:#fbf0e8;color:#755449}.dna-path-strip{display:grid;gap:5px;padding:11px 12px}.dna-path-strip strong{color:var(--green)}.dna-path-strip span{overflow-x:auto;color:var(--muted);font-size:7.5px;line-height:1.45;white-space:nowrap;scrollbar-width:none}.dna-review-note{display:grid;gap:5px;margin-top:12px}.dna-review-note>span{color:var(--green);font-size:8px;font-weight:600}.dna-review-note textarea{min-height:74px}.dna-review-error{margin-top:8px!important;padding:8px 10px;border-left:2px solid var(--red);background:#fbf0e8;color:#7b3027!important}.dna-review-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.dna-review-rule{display:flex;align-items:flex-start;gap:6px;margin-top:10px!important;color:var(--muted)}.dna-review-rule svg{width:13px;flex:0 0 auto;color:var(--jade)}.dna-review-empty{min-height:400px;display:grid;place-items:center;align-content:center;gap:8px;color:var(--muted)}.dna-review-empty svg{width:28px;color:var(--jade)}.backup-export-section{flex-wrap:wrap}.backup-password{min-width:190px;display:grid;gap:4px}.backup-password span,.backup-unlock label span{color:var(--green);font-size:7.5px;font-weight:600}.backup-password input,.backup-unlock input{width:100%;min-height:31px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);padding:0 8px;color:var(--ink);font-size:8px}.backup-unlock{display:grid;grid-template-columns:1fr auto;align-items:end;gap:9px;margin-top:12px;padding:11px;border:1px solid var(--line);background:#f8f5ed}.backup-unlock label{display:grid;gap:5px}.invitation-qr-backdrop{position:fixed;z-index:170;inset:0;display:grid;place-items:center;padding:18px;background:#16231d85}.invitation-qr-dialog{width:min(330px,100%);border:1px solid var(--line-strong);background:var(--paper);padding:14px;box-shadow:0 18px 50px #121f1847}.invitation-qr-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}.invitation-qr-dialog strong,.invitation-qr-dialog small{display:block}.invitation-qr-dialog strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.invitation-qr-dialog small{margin-top:3px;color:var(--muted);font-size:7px}.invitation-qr-dialog header button{border:0;background:transparent;color:var(--muted);font-size:7.5px;cursor:pointer}.invitation-qr-dialog img{width:min(250px,100%);display:block;margin:14px auto;border:1px solid var(--line)}.invitation-qr-dialog>a{min-height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--green);color:var(--green);font-size:8px;text-decoration:none}@media(max-width:1100px){.migration-layout{grid-template-columns:minmax(340px,1.25fr) minmax(260px,.8fr)}.migration-detail{grid-column:1 / -1;display:grid;grid-template-columns:minmax(190px,.65fr) minmax(280px,1.35fr);gap:0 22px;border-top:1px solid var(--line)}.migration-detail blockquote{margin-top:0}.migration-detail dl,.migration-detail>button,.migration-source-rule{grid-column:2}.relationship-studio{grid-template-columns:minmax(220px,.58fr) minmax(430px,1.2fr)}.studio-inspector{grid-column:1 / -1;display:grid;grid-template-columns:230px minmax(220px,1fr) minmax(240px,1fr);gap:0 10px;border-top:1px solid var(--line);border-left:0}.studio-inspector>header{grid-row:span 4}.studio-pending,.studio-inspector-empty{grid-column:2}.studio-inspector>label,.studio-inspector>.solid-btn,.studio-inspector>.action-readiness,.studio-notice{grid-column:3}.studio-inspector>.solid-btn{align-self:start;margin-top:13px}}@media(max-width:800px){.genealogy-explore-page,.capability-page{height:auto;min-height:calc(100dvh - 121px);padding-bottom:64px}.explore-head{align-items:flex-start;flex-direction:column;gap:10px;padding:13px 14px}.explore-head nav{width:100%}.explore-head nav button{min-width:0;flex:1}.explore-body{min-height:600px}.fan-workspace{min-height:680px}.fan-toolbar{flex-wrap:wrap;padding:9px 11px}.explore-person-search{min-width:100%;flex-basis:100%}.fan-depth{flex:1}.fan-summary{gap:14px;overflow-x:auto;padding:8px 12px;scrollbar-width:none}.fan-summary>span:first-child{min-width:125px}.fan-summary button{min-width:90px;margin-left:0}.fan-scroll-canvas{min-height:430px}.fan-stage{margin-left:0}.fan-legend{overflow-x:auto}.fan-legend small{min-width:230px;margin-left:0}.migration-workspace{min-height:900px}.migration-toolbar{flex-wrap:wrap;padding:9px 11px}.migration-toolbar>label{min-width:100%;flex-basis:100%}.migration-toolbar>span{flex-basis:100%}.migration-layout{display:grid;grid-template-columns:100%;grid-template-rows:420px 320px auto}.migration-map-panel,.migration-records{border-right:0;border-bottom:1px solid var(--line)}.migration-detail{grid-column:auto;display:block;min-height:330px}.migration-detail dl,.migration-detail>button,.migration-source-rule{grid-column:auto}.relationship-studio{min-height:1050px;display:grid;grid-template-columns:100%;grid-template-rows:300px auto auto}.studio-palette{border-right:0;border-bottom:1px solid var(--line)}.studio-board{overflow:visible}.studio-subject{align-items:flex-start;flex-direction:column}.studio-subject>p{padding:10px 0 0;border-top:1px solid var(--line);border-left:0}.studio-inspector{grid-column:auto;display:block}.studio-inspector>header,.studio-pending,.studio-inspector-empty,.studio-inspector>label,.studio-inspector>.solid-btn,.studio-inspector>.action-readiness,.studio-notice{grid-column:auto}.studio-inspector>.solid-btn{width:calc(100% - 26px);margin:0 13px}.capability-head{align-items:flex-start;flex-direction:column;gap:10px;padding:14px}.capability-tabs{overflow-x:auto;padding-left:0;scrollbar-width:none}.capability-tabs button{min-width:118px}.capability-body{padding:13px 13px 84px}.service-grid,.ai-workspace,.dna-workspace,.extension-workspace{grid-template-columns:1fr}.service-boundary{grid-column:auto}.dna-pair{grid-template-columns:1fr}.dna-review-layout{display:block;min-height:0}.dna-review-queue{border-right:0;border-bottom:1px solid var(--line)}.dna-review-list{max-height:245px}.dna-review-detail{padding:11px}.dna-review-subject{grid-template-columns:1fr 1fr}.dna-review-subject .dna-review-status{grid-column:1 / -1;min-height:34px;border-top:1px solid var(--line)}.dna-candidate-list{grid-template-columns:1fr 1fr;max-height:194px}.dna-review-actions,.ai-review-actions{display:grid;grid-template-columns:1fr 1fr}.dna-review-actions .action-readiness,.ai-review-actions .action-readiness{grid-column:1 / -1}.dna-review-actions button,.ai-review-actions button{justify-content:center}.capability-message{left:13px;right:13px;bottom:72px}.backup-password{width:100%}.backup-unlock{grid-template-columns:1fr}.backup-unlock button{width:100%;justify-content:center}}.dna-source-evidence,.dna-review-history{margin-top:12px;border:1px solid var(--line);background:#f8f5ed}.dna-source-evidence>header,.dna-review-history>header{min-height:46px;display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--line)}.dna-source-evidence>header>svg,.dna-review-history>header>svg{width:16px;color:var(--jade);flex:0 0 auto}.dna-source-evidence>header span,.dna-review-history>header span{min-width:0;flex:1}.dna-source-evidence strong,.dna-source-evidence small,.dna-review-history strong,.dna-review-history small{display:block}.dna-source-evidence>header strong,.dna-review-history>header strong{color:var(--green);font-size:8.5px}.dna-source-evidence>header small,.dna-review-history>header small{margin-top:2px;color:var(--muted);font-size:7px}.dna-source-evidence>header em{flex:0 0 auto;color:var(--jade);font-size:7px;font-style:normal}.dna-evidence-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:9px}.dna-evidence-list article{min-width:0;display:flex;align-items:flex-start;gap:7px;border:1px solid var(--line);background:var(--paper);padding:8px}.dna-evidence-list article.manual{border-left:2px solid var(--jade)}.dna-evidence-list article>span{width:19px;height:19px;display:grid;place-items:center;border:1px solid var(--line);color:var(--jade);flex:0 0 auto}.dna-evidence-list article>span svg{width:11px}.dna-evidence-list article>div{min-width:0}.dna-evidence-list article strong{color:var(--green);font-size:7.5px}.dna-evidence-list article small,.dna-evidence-list article p{overflow-wrap:anywhere;color:var(--muted);font-size:7px;line-height:1.45}.dna-evidence-list article small{margin-top:2px}.dna-evidence-list article p{margin:3px 0 0}.dna-evidence-editor{padding:0 9px 9px}.dna-evidence-editor>.outline-btn{min-height:30px;margin-bottom:7px}.dna-evidence-input{display:grid;grid-template-columns:minmax(112px,.8fr) minmax(130px,1fr) minmax(140px,1.15fr) 30px;gap:6px;align-items:center;margin-top:6px}.dna-evidence-input select,.dna-evidence-input input{min-width:0;min-height:30px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);padding:0 7px;color:var(--ink);font-size:7.5px}.dna-evidence-input button{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--line-strong);background:var(--paper);color:var(--red);cursor:pointer}.dna-evidence-input button svg{width:13px}.dna-review-history ol{display:grid;gap:0;margin:0;padding:0;list-style:none}.dna-review-history li{display:grid;grid-template-columns:minmax(80px,.45fr) minmax(150px,.8fr) minmax(0,1.75fr);align-items:start;gap:8px;padding:8px 10px;border-bottom:1px solid var(--line)}.dna-review-history li:last-child{border-bottom:0}.dna-review-history li strong{color:var(--green);font-size:7.5px}.dna-review-history li span,.dna-review-history li small{min-width:0;overflow-wrap:anywhere;color:var(--muted);font-size:7px;line-height:1.45}@media(max-width:800px){.dna-evidence-list{grid-template-columns:1fr}.dna-evidence-input{grid-template-columns:1fr 1fr 30px}.dna-evidence-input input:nth-of-type(2){grid-column:1 / 3}.dna-evidence-input button{grid-column:3;grid-row:1}.dna-review-history li{grid-template-columns:1fr;gap:3px}}.review-decision-form,.review-decision-history{margin-top:18px;border:1px solid var(--line);background:#f8f5ed;padding:12px}.review-decision-form h3,.review-decision-history h3{margin:0 0 9px;color:var(--green);font:600 11px "Noto Serif SC",serif}.review-decision-form label{display:grid;gap:5px;margin-top:9px}.review-decision-form label>span{color:var(--green);font-size:8px;font-weight:600}.review-decision-form textarea{width:100%;min-height:58px;border:1px solid var(--line-strong);border-radius:0;outline:0;background:var(--paper);padding:8px;color:var(--ink);font-size:8.5px;line-height:1.5;resize:vertical}.review-decision-form textarea:focus{border-color:var(--jade)}.review-decision-notice{margin:9px 0 0;padding:8px;border-left:2px solid var(--jade);background:#edf1ec;color:var(--green);font-size:7.5px;line-height:1.45}.review-decision-history{padding:0}.review-decision-history h3{padding:11px 12px;margin:0;border-bottom:1px solid var(--line)}.review-decision-history ol{display:grid;gap:0;margin:0;padding:0;list-style:none}.review-decision-history li{display:grid;grid-template-columns:minmax(80px,.45fr) minmax(150px,.8fr) minmax(0,1.75fr);align-items:start;gap:8px;padding:9px 12px;border-bottom:1px solid var(--line)}.review-decision-history li:last-child{border-bottom:0}.review-decision-history li strong{color:var(--green);font-size:8px}.review-decision-history li span,.review-decision-history li small{min-width:0;overflow-wrap:anywhere;color:var(--muted);font-size:7.5px;line-height:1.45}@media(max-width:800px){.review-decision-history li{grid-template-columns:1fr;gap:3px}.review-decision-form,.review-decision-history{margin-bottom:12px}}.ai-review-workspace{grid-column:1 / -1;padding:0;overflow:hidden}.ai-review-workspace>header{padding:15px}.ai-review-layout{min-height:560px;display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.55fr)}.ai-job-queue{min-width:0;border-right:1px solid var(--line);background:#f8f5ed}.ai-job-filters{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:7px;padding:10px;border-bottom:1px solid var(--line)}.ai-job-filters label{min-width:0;height:34px;display:flex;align-items:center;gap:6px;border:1px solid var(--line-strong);background:var(--paper);padding:0 8px}.ai-job-filters label svg{width:14px;color:var(--jade);flex:0 0 auto}.ai-job-filters input,.ai-job-filters select{min-width:0;min-height:32px;border:0;background:transparent;color:var(--ink);font-size:8px}.ai-job-filters input{flex:1;outline:0}.ai-job-filters select{border:1px solid var(--line-strong);background:var(--paper);padding:0 7px}.ai-job-list{max-height:496px;overflow-y:auto;padding:0 9px 10px;scrollbar-width:none}.ai-job-list::-webkit-scrollbar{display:none}.ai-job-list>button{width:100%;min-height:58px;display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:7px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:8px 5px;text-align:left;cursor:pointer}.ai-job-list>button.active{background:#e6ece6}.ai-job-list>button>span:nth-child(2){min-width:0}.ai-job-list strong,.ai-job-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-job-list strong{color:var(--green);font-size:8.5px}.ai-job-list small{margin-top:3px;color:var(--muted);font-size:7px}.ai-job-list em{color:var(--jade);font-size:7px;font-style:normal;white-space:nowrap}.ai-job-status{width:20px;height:20px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:50%;color:var(--muted)}.ai-job-status svg{width:12px}.ai-job-status.succeeded{border-color:var(--jade);color:var(--jade)}.ai-job-status.failed{border-color:var(--red);color:var(--red)}.ai-job-status.running{border-color:#a76d45;color:#a76d45}.ai-job-status.running svg{animation:view-data-spin 1.2s linear infinite}.ai-job-list>p{margin:0;padding:28px 10px;color:var(--muted);font-size:8px;line-height:1.5;text-align:center}.ai-review-detail{min-width:0;padding:14px}.ai-review-summary{display:grid;grid-template-columns:1fr 1fr auto;align-items:stretch;border:1px solid var(--line);background:var(--paper)}.ai-review-summary>span{min-width:0;display:grid;align-content:center;gap:3px;padding:10px 12px;border-right:1px solid var(--line)}.ai-review-summary small,.ai-review-summary strong,.ai-review-summary em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-review-summary small{color:var(--muted);font-size:7px}.ai-review-summary strong{color:var(--green);font:700 10px "Noto Serif SC",serif}.ai-review-summary em{color:var(--muted);font-size:7px;font-style:normal}.ai-review-summary .ai-review-state{min-width:105px;display:flex;align-items:center;justify-content:center;gap:5px;border-right:0;background:#f7f3e9;color:var(--muted);font-size:7.5px}.ai-review-state svg{width:13px}.ai-review-state.succeeded{background:#e6eee8;color:var(--green)}.ai-review-state.failed{background:#fbf0e8;color:var(--red)}.ai-review-state.running svg{animation:view-data-spin 1.2s linear infinite}.ai-review-toolbar{min-height:35px;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:7.5px}.ai-review-toolbar>span{margin-right:auto}.ai-review-toolbar button{min-height:29px;display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line-strong);background:var(--paper);padding:0 8px;color:var(--green);font-size:7.5px;cursor:pointer}.ai-review-toolbar button:disabled{opacity:.45;cursor:default}.ai-review-toolbar button svg{width:12px}.ai-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:5px}.ai-compare-grid>section{min-width:0;border:1px solid var(--line);background:var(--paper)}.ai-compare-grid>section>header{min-height:36px;display:flex;align-items:center;gap:6px;padding:0 9px;border-bottom:1px solid var(--line);color:var(--green)}.ai-compare-grid>section>header svg{width:14px;color:var(--jade)}.ai-compare-grid>section>header strong{font-size:8.5px}.ai-source-file{display:grid;gap:2px;margin:9px;padding:8px;border-left:2px solid var(--jade);background:#edf1ec}.ai-source-file strong{overflow:hidden;color:var(--green);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.ai-source-file small{color:var(--muted);font-size:7px}.ai-compare-grid textarea{width:calc(100% - 18px);min-height:170px;margin:9px;border:1px solid var(--line-strong);border-radius:0;outline:0;background:#fbfaf6;padding:8px;color:var(--ink);font-size:8.5px;line-height:1.55;resize:vertical}.ai-compare-grid textarea:disabled{background:#f1efea;color:var(--muted)}.ai-result-error{margin:9px!important;padding:8px;border-left:2px solid var(--red);background:#fbf0e8;color:#7b3027!important;font-size:8px!important}.ai-result-waiting{min-height:60px;display:flex;align-items:center;gap:7px;margin:9px;padding:10px;border-left:2px solid #a76d45;background:#fbf3e8;color:#755449;font-size:8px;line-height:1.45}.ai-result-waiting svg{width:16px;flex:0 0 auto}.ai-review-source{display:grid;gap:5px;margin-top:11px}.ai-review-source>span{color:var(--green);font-size:8px;font-weight:600}.ai-review-source textarea{width:100%;min-height:64px;border:1px solid var(--line-strong);border-radius:0;outline:0;background:var(--paper);padding:8px;color:var(--ink);font-size:8.5px;line-height:1.5;resize:vertical}.ai-review-source textarea:disabled{background:#f1efea;color:var(--muted)}.ai-review-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.ai-review-message,.ai-review-submitted{display:flex;align-items:flex-start;gap:6px;margin:9px 0 0;padding:8px 10px;border-left:2px solid var(--jade);background:#edf1ec;color:var(--green);font-size:8px;line-height:1.5}.ai-review-message.error{border-color:var(--red);background:#fbf0e8;color:#7b3027}.ai-review-message svg,.ai-review-submitted svg{width:13px;flex:0 0 auto}.ai-review-submitted{border-color:var(--jade)}.ai-review-empty{min-height:400px;display:grid;place-items:center;align-content:center;gap:8px;padding:24px;color:var(--muted);text-align:center}.ai-review-empty svg{width:28px;color:var(--jade)}.ai-review-empty strong{color:var(--green);font:600 13px "Noto Serif SC",serif}.ai-review-empty span{max-width:320px;font-size:8px;line-height:1.5}@media(max-width:800px){.ai-review-layout{display:block;min-height:0}.ai-job-queue{border-right:0;border-bottom:1px solid var(--line)}.ai-job-list{max-height:245px}.ai-review-detail{padding:11px}.ai-review-summary{grid-template-columns:1fr 1fr}.ai-review-summary .ai-review-state{grid-column:1 / -1;min-height:34px;border-top:1px solid var(--line)}.ai-review-toolbar{flex-wrap:wrap;min-height:70px;padding:6px 0}.ai-review-toolbar>span{flex-basis:100%}.ai-review-toolbar button{flex:1;justify-content:center}.ai-compare-grid{grid-template-columns:1fr}.ai-review-actions{display:grid;grid-template-columns:1fr 1fr}.ai-review-actions button{justify-content:center}}.whole-genealogy-review{margin-top:5px;border:1px solid var(--line);background:var(--paper)}.whole-review-head{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;border-bottom:1px solid var(--line)}.whole-review-head>span{min-width:0;display:grid;grid-template-columns:20px minmax(0,1fr);gap:2px 7px}.whole-review-head>span>svg{grid-row:span 2;width:18px;color:var(--jade)}.whole-review-head strong,.whole-review-head small{display:block}.whole-review-head strong{color:var(--green);font:700 10px "Noto Serif SC",serif}.whole-review-head small{overflow:hidden;color:var(--muted);font-size:7.5px;text-overflow:ellipsis;white-space:nowrap}.whole-review-counts{display:flex;flex:0 0 auto;border:1px solid var(--line)}.whole-review-counts>span{min-width:57px;padding:6px 8px;border-right:1px solid var(--line);text-align:center}.whole-review-counts>span:last-child{border-right:0}.whole-review-counts strong,.whole-review-counts small{display:block}.whole-review-counts strong{color:var(--green);font:700 12px "Noto Serif SC",serif}.whole-review-counts small{margin-top:2px;color:var(--muted);font-size:7px}.whole-review-branches{display:flex;align-items:flex-start;gap:8px;padding:8px 11px;border-bottom:1px solid var(--line);background:#f8f5ed}.whole-review-branches>span{flex:0 0 auto;padding-top:3px;color:var(--muted);font-size:7.5px}.whole-review-branches>div{display:flex;flex-wrap:wrap;gap:4px}.whole-review-branches em{padding:3px 6px;border-left:2px solid var(--jade);background:#e8eee8;color:var(--green);font-size:7px;font-style:normal}.whole-review-status{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}.whole-review-status button{min-height:45px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}.whole-review-status button:last-child{border-right:0}.whole-review-status button.active{background:#e8eee8;color:var(--green)}.whole-review-status strong,.whole-review-status span{display:block}.whole-review-status strong{font:700 12px "Noto Serif SC",serif}.whole-review-status span{margin-top:2px;font-size:7px}.whole-review-tools{min-height:43px;display:flex;align-items:center;gap:10px;padding:7px 10px;border-bottom:1px solid var(--line)}.whole-review-tools label{min-width:0;height:30px;display:flex;align-items:center;gap:6px;flex:1;border:1px solid var(--line-strong);background:#fbfaf6;padding:0 8px}.whole-review-tools label svg{width:13px;color:var(--jade)}.whole-review-tools input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:8px}.whole-review-tools>span{flex:0 0 auto;color:var(--muted);font-size:7px}.whole-review-list{max-height:360px;overflow:auto;overscroll-behavior:contain;scrollbar-width:none}.whole-review-list::-webkit-scrollbar{display:none}.whole-review-list article{display:grid;grid-template-columns:62px minmax(170px,1fr) minmax(180px,.9fr);align-items:start;gap:9px;min-height:68px;padding:9px 10px;border-bottom:1px solid var(--line)}.whole-review-list article:last-child{border-bottom:0}.whole-review-list article.warning{box-shadow:inset 2px 0 #a76d45}.whole-review-list article.error{box-shadow:inset 2px 0 0 var(--red);background:#fbf0e8}.whole-review-type{display:flex;align-items:center;gap:4px;color:var(--jade);font-size:7.5px}.whole-review-type svg{width:13px}.whole-review-list article>div{min-width:0}.whole-review-list article>div>strong,.whole-review-list article>div>small{display:block}.whole-review-list article>div>strong{color:var(--green);font:600 9px "Noto Serif SC",serif}.whole-review-list article>div>small{margin-top:3px;color:var(--muted);font-size:7px}.whole-review-list article p{display:-webkit-box;overflow:hidden;margin:4px 0 0;color:var(--muted);font-size:7px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.whole-review-issues{display:grid;gap:4px}.whole-review-issues small{display:flex!important;align-items:flex-start;gap:4px;margin:0!important;color:#80513c!important;line-height:1.4}.whole-review-issues small.clean{color:var(--green)!important}.whole-review-issues svg{width:11px;flex:0 0 auto}.whole-review-empty{margin:0;padding:30px;color:var(--muted);font-size:8px;text-align:center}.whole-review-blocked,.whole-review-confirm{display:flex;align-items:flex-start;gap:7px;margin:0;padding:9px 11px;border-top:1px solid var(--line);font-size:7.5px;line-height:1.5}.whole-review-blocked{background:#fbf0e8;color:#7b3027}.whole-review-blocked svg{width:13px;flex:0 0 auto}.whole-review-confirm{background:#fbf3e8;color:#755449;cursor:pointer}.whole-review-confirm input{width:13px;height:13px;margin:0;accent-color:var(--jade)}.whole-genealogy-review>footer{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border-top:1px solid var(--line)}.whole-genealogy-review>footer>span{color:var(--muted);font-size:7.5px}.whole-genealogy-review>footer button{flex:0 0 auto}@media(max-width:800px){.whole-review-head{align-items:flex-start;flex-direction:column}.whole-review-counts{width:100%}.whole-review-counts>span{min-width:0;flex:1}.whole-review-tools{align-items:stretch;flex-direction:column}.whole-review-tools>span{text-align:right}.whole-review-list{max-height:520px;touch-action:pan-x pan-y}.whole-review-list article{min-width:650px}.whole-genealogy-review>footer{align-items:stretch;flex-direction:column}.whole-genealogy-review>footer button{width:100%;justify-content:center}.canvas-head-actions{min-width:0;gap:8px}.canvas-head-actions .canvas-legend{display:none}.android-download-control.compact .android-download-link{min-width:38px;padding:0 8px}.android-download-control.compact .android-download-link span,.windows-download-link.compact span{display:none}.windows-download-link.compact{min-width:38px;padding:0 8px}.android-qr-popover{position:fixed;top:50%;right:auto;left:50%;z-index:120;transform:translate(-50%,-50%)}.android-qr-popover:before{display:none}}.platform-admin-center{height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;padding:26px 26px 48px;color:var(--ink);background:#f3f1eb}.platform-admin-center::-webkit-scrollbar{width:10px}.platform-admin-center::-webkit-scrollbar-track{background:transparent}.platform-admin-center::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:8px;background:var(--line-strong);background-clip:padding-box}.platform-admin-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;max-width:1120px;margin:0 auto 22px;padding-bottom:18px;border-bottom:1px solid var(--line-strong)}.platform-admin-header span{color:var(--red);font-size:10px;font-weight:700;letter-spacing:0}.platform-admin-header h1{margin:6px 0 5px;color:var(--green);font:600 25px "Noto Serif SC",serif}.platform-admin-header p{margin:0;color:var(--muted);font-size:12px;line-height:1.65}.platform-admin-header>svg{width:36px;height:36px;color:var(--jade)}.platform-admin-actions{display:flex;flex-wrap:wrap;gap:9px;max-width:1120px;margin:0 auto 20px}.platform-admin-actions button{min-height:35px}.platform-admin-actions button svg:first-child{width:15px}.platform-admin-actions button svg:last-child{width:12px;margin-left:2px}.platform-admin-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:1120px;margin:0 auto 20px}.platform-admin-stats>button{min-width:0;display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:0;background:var(--paper);padding:14px;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.platform-admin-stats>button:hover{border-color:var(--jade);background:#faf8f2}.platform-admin-stats>button.active{border-color:var(--jade);background:#f6f3e9;box-shadow:inset 0 -3px 0 var(--jade)}.platform-admin-stats>button:focus-visible{outline:2px solid var(--red);outline-offset:2px}.platform-admin-stats>button>svg{width:21px;flex:0 0 auto;color:var(--jade)}.platform-admin-stats>button>span{min-width:0}.platform-admin-stats small,.platform-admin-stats strong,.platform-admin-stats em{display:block}.platform-admin-stats small{color:var(--muted);font-size:10px}.platform-admin-stats strong{margin-top:4px;color:var(--green);font:700 22px "Noto Serif SC",serif}.platform-admin-stats em{margin-top:4px;overflow:hidden;color:var(--muted);font-size:9px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.platform-admin-panel{max-width:1120px;margin:0 auto 20px;border:1px solid var(--line);background:var(--paper)}.platform-admin-panel .platform-admin-section-head{border-bottom:1px solid var(--line)}.platform-code-panel{display:grid;grid-template-columns:1fr 1fr}.platform-code-panel-group{min-width:0}.platform-code-panel-group+.platform-code-panel-group{border-left:1px solid var(--line)}.platform-code-panel-group h3{margin:0;padding:12px 15px;border-bottom:1px solid var(--line);color:var(--green);font:600 12px "Noto Serif SC",serif}.platform-subscription-row{min-height:66px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:11px 18px;border-top:1px solid #e6e1d6}.platform-subscription-row:first-child{border-top:0}.platform-subscription-row>div,.platform-subscription-row>span{min-width:0}.platform-subscription-row strong,.platform-subscription-row span,.platform-subscription-row small{display:block}.platform-subscription-row strong{color:var(--green);font-size:12px}.platform-subscription-row div>span{margin-top:4px;overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.platform-subscription-row b{color:var(--green);font-size:11px}.platform-subscription-row small{margin-top:3px;color:var(--muted);font-size:9px}.platform-subscription-row button{min-height:32px}.platform-admin-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:20px;max-width:1120px;margin:0 auto}.platform-code-form,.platform-code-ledger{border:1px solid var(--line);background:var(--paper)}.platform-code-form{display:grid;align-content:start;gap:14px;padding:18px}.platform-code-form h2,.platform-ledger-title h2{display:flex;align-items:center;gap:8px;margin:0;color:var(--green);font:600 16px "Noto Serif SC",serif}.platform-code-form h2 svg{width:18px;color:var(--red)}.platform-code-form label{display:grid;gap:5px}.platform-code-form label>span{color:var(--green);font-size:11px;font-weight:600}.platform-code-form input,.platform-code-form select{width:100%;height:36px;border:1px solid var(--line-strong);border-radius:0;background:#fffdf8;padding:0 9px;color:var(--ink);font-size:12px}.platform-code-form input:disabled{color:var(--muted);background:#efede7}.platform-code-numbers{display:grid;grid-template-columns:1fr 1fr;gap:10px}.platform-code-policy{margin:-3px 0 0;color:var(--muted);font-size:10px;line-height:1.55}.platform-code-ledger{min-width:0}.platform-ledger-title{min-height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--line)}.platform-ledger-title>div{display:flex;align-items:baseline;gap:9px}.platform-ledger-title span{color:var(--muted);font-size:11px}.platform-ledger-title button,.platform-code-row>button{width:31px;height:31px;display:grid;place-items:center;border:1px solid var(--line);background:transparent;color:var(--green);cursor:pointer}.platform-ledger-title button svg,.platform-code-row>button svg{width:14px}.platform-latest-code{display:grid;grid-template-columns:1fr auto;gap:4px 12px;margin:15px;padding:13px;border-left:3px solid var(--red);background:#f7f0e8}.platform-latest-code span,.platform-latest-code small{color:var(--muted);font-size:10px}.platform-latest-code strong{min-width:0;overflow-wrap:anywhere;color:var(--red);font:600 14px ui-monospace,monospace}.platform-latest-code button{grid-column:2;grid-row:1 / 4;align-self:center;min-height:34px;display:flex;align-items:center;gap:6px;border:1px solid var(--red);background:transparent;color:var(--red);cursor:pointer}.platform-latest-code button svg{width:14px}.platform-code-row{min-height:62px;display:grid;grid-template-columns:minmax(0,1fr) 92px 52px 31px;align-items:center;gap:9px;padding:9px 15px;border-top:1px solid #e6e1d6}.platform-code-row>span{min-width:0}.platform-code-row strong,.platform-code-row small{display:block}.platform-code-row strong{color:var(--ink);font-size:12px}.platform-code-row small,.platform-code-row time{margin-top:4px;color:var(--muted);font-size:10px}.platform-code-row em{color:var(--jade);font-size:10px;font-style:normal}.platform-code-row.revoked,.platform-code-row.expired,.platform-code-row.used{opacity:.58}.platform-code-empty{padding:40px 18px;color:var(--muted);text-align:center;font-size:12px}.platform-admin-orders{max-width:1120px;margin:20px auto 0;border:1px solid var(--line);background:var(--paper)}.platform-admin-section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 18px;border-bottom:1px solid var(--line)}.platform-admin-section-head>div{min-width:0}.platform-admin-section-head h2{display:flex;align-items:center;gap:8px;margin:0;color:var(--green);font:600 16px "Noto Serif SC",serif}.platform-admin-section-head h2 svg{width:18px;color:var(--red)}.platform-admin-section-head p{margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.platform-order-row{display:grid;grid-template-columns:minmax(0,1fr) 120px auto;align-items:center;gap:12px;padding:12px 18px;border-top:1px solid #e6e1d6}.platform-order-row.actionable{background:#fbf7ee}.platform-order-main{min-width:0}.platform-order-main strong,.platform-order-main span,.platform-order-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.platform-order-main strong{color:var(--green);font-size:12px}.platform-order-main span{margin-top:4px;color:var(--ink);font-size:10px}.platform-order-main small{margin-top:3px;color:var(--muted);font-size:9px}.platform-order-meta{display:grid;justify-items:end;gap:4px}.platform-order-meta b{color:var(--green);font-size:11px}.platform-order-meta em{color:var(--jade);font-size:10px;font-style:normal}.platform-quote-input{grid-column:1 / 3;display:grid;grid-template-columns:auto minmax(140px,220px);align-items:center;gap:9px}.platform-quote-input>span{color:var(--green);font-size:10px;font-weight:600}.platform-quote-input>div{display:grid;grid-template-columns:minmax(0,1fr) 25px;align-items:center;border:1px solid var(--line-strong);background:#fffdf8}.platform-quote-input input{width:100%;height:30px;border:0;background:transparent;padding:0 8px;color:var(--ink);font-size:10px;outline:0}.platform-quote-input small{color:var(--muted);font-size:9px;text-align:center}.platform-order-activate{min-height:32px;justify-content:center;white-space:nowrap}.platform-payment-evidence{grid-column:1 / -1;display:grid;grid-template-columns:150px minmax(180px,.8fr) minmax(260px,1.4fr);gap:10px;padding-top:4px}.platform-payment-evidence label{display:grid;gap:5px}.platform-payment-evidence span{color:var(--green);font-size:9px;font-weight:600}.platform-payment-evidence input,.platform-payment-evidence select{width:100%;min-height:33px;border:1px solid var(--line-strong);border-radius:0;background:#fffdf8;padding:0 8px;color:var(--ink);font-size:10px}.platform-payment-record{grid-column:1 / -1;padding:8px 10px;border-left:2px solid var(--jade);background:#edf1ec}.platform-payment-record span,.platform-payment-record small{display:block}.platform-payment-record span{color:var(--green);font-size:10px;font-weight:600}.platform-payment-record small{margin-top:3px;color:var(--muted);font-size:9px}.platform-code-redemption{margin-top:7px!important;padding:7px 8px;border-left:2px solid var(--jade);background:#edf1ec;white-space:normal;line-height:1.5}.platform-code-redemption b{display:inline;color:var(--green);font-size:inherit}.platform-admin-empty{min-height:110px;display:grid;place-items:center;align-content:center;gap:7px;color:var(--muted);font-size:11px}.platform-admin-empty svg{width:22px;color:var(--line-strong)}.platform-account-list,.platform-recovery-list{display:grid}.platform-account-row,.platform-recovery-row{border-top:1px solid #e6e1d6;padding:14px 18px}.platform-account-row:first-child,.platform-recovery-row:first-child{border-top:0}.platform-account-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.platform-account-heading span,.platform-account-heading strong,.platform-account-heading small{display:block}.platform-account-heading strong{color:var(--green);font:600 14px "Noto Serif SC",serif}.platform-account-heading small{margin-top:3px;color:var(--muted);font-size:10px}.platform-account-heading em{flex:0 0 auto;color:var(--jade);font-size:10px;font-style:normal}.platform-account-row dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:12px 0;background:var(--line)}.platform-account-row dl>div{min-width:0;background:#faf8f2;padding:9px 10px}.platform-account-row dt{color:var(--muted);font-size:9px}.platform-account-row dd{margin:4px 0 0;overflow-wrap:anywhere;color:var(--ink);font-size:10px}.platform-account-memberships{display:flex;flex-wrap:wrap;gap:7px}.platform-account-memberships>span{min-width:min(260px,100%);display:block;border-left:2px solid var(--jade);background:#edf1ec;padding:8px 10px}.platform-account-memberships strong,.platform-account-memberships small{display:block}.platform-account-memberships strong{color:var(--green);font-size:10px}.platform-account-memberships small{margin-top:3px;color:var(--muted);font-size:9px}.platform-recovery-panel{min-width:0}.platform-reset-code{margin:15px 18px}.platform-recovery-row{min-height:82px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px}.platform-recovery-row>span{min-width:0}.platform-recovery-row strong,.platform-recovery-row small{display:block}.platform-recovery-row strong{color:var(--green);font-size:12px}.platform-recovery-row small{margin-top:3px;color:var(--muted);font-size:9px}.platform-recovery-row>em{color:var(--jade);font-size:10px;font-style:normal}.platform-recovery-row>button{white-space:nowrap}.platform-recovery-row.approved{opacity:.72}.platform-admin-error{max-width:1120px;margin:14px auto 0;color:var(--red);font-size:12px}.platform-admin-denied{display:grid;place-items:center;align-content:center;text-align:center}.platform-admin-denied>svg{width:38px;height:38px;color:var(--red)}.platform-admin-denied h1{margin:12px 0 5px;color:var(--green)}.platform-admin-denied p{color:var(--muted)}.account-authorization-code{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.account-subscription-actions{grid-template-columns:minmax(0,1fr) auto auto}.account-authorization-code label{display:grid;gap:5px}.account-authorization-code label span{color:var(--green);font-size:10px;font-weight:600}.account-authorization-code input{width:100%;height:34px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);padding:0 9px;color:var(--ink);font:11px ui-monospace,monospace}.account-identity-designation{margin-top:12px;padding:12px;border:1px solid var(--line);background:#f7f4eb}.account-identity-designation>div:first-child strong,.account-identity-designation>div:first-child small{display:block}.account-identity-designation>div:first-child strong{color:var(--green);font-size:10px}.account-identity-designation>div:first-child small{margin-top:4px;color:var(--muted);font-size:8px;line-height:1.55}.account-identity-designation .account-authorization-code{margin-top:9px;padding-top:9px;border-top-color:#e1dacb}@media(max-width:760px){.platform-admin-center{height:auto;min-height:calc(100dvh - 121px);overflow-y:visible;padding:16px 16px 82px}.platform-admin-header{gap:12px}.platform-admin-header h1{font-size:22px}.platform-admin-header p{font-size:10px}.platform-admin-header>svg{width:28px}.platform-admin-actions{display:grid;grid-template-columns:1fr 1fr}.platform-admin-actions button{justify-content:center}.platform-admin-stats{grid-template-columns:1fr 1fr;gap:8px}.platform-admin-stats>button{padding:11px}.platform-admin-stats strong{font-size:18px}.platform-admin-layout,.platform-code-panel{grid-template-columns:1fr}.platform-code-panel-group+.platform-code-panel-group{border-top:1px solid var(--line);border-left:0}.platform-subscription-row{grid-template-columns:minmax(0,1fr) auto}.platform-subscription-row>button{grid-column:1 / -1;justify-content:center}.platform-code-row{grid-template-columns:minmax(0,1fr) 58px 31px}.platform-code-row time{display:none}.platform-order-row{grid-template-columns:minmax(0,1fr) auto}.platform-order-meta{justify-items:end}.platform-order-activate{grid-column:1 / -1;width:100%}.platform-quote-input{grid-column:1 / -1;grid-template-columns:auto minmax(0,1fr)}.platform-payment-evidence{grid-template-columns:1fr}.platform-admin-section-head{align-items:flex-start;flex-direction:column}.platform-admin-section-head>button{width:100%;justify-content:center}.platform-account-row dl{grid-template-columns:1fr 1fr}.platform-recovery-row{grid-template-columns:minmax(0,1fr) auto}.platform-recovery-row>button,.platform-recovery-row>small{grid-column:1 / -1;width:100%;justify-content:center}.account-subscription-actions{grid-template-columns:1fr;align-items:stretch}.account-subscription-actions button{justify-content:center}.billing-order-dialog-body dl{grid-template-columns:1fr}.billing-order-dialog-body dl>div,.billing-order-dialog-body dl>div:nth-child(odd){border-right:0;border-bottom:1px solid var(--line)}.billing-order-dialog-body dl>div:last-child{border-bottom:0}}.pedigree-scroll{scrollbar-width:thin;scrollbar-color:var(--line-strong) var(--paper)}.pedigree-scroll::-webkit-scrollbar{width:10px;height:10px;display:block}.pedigree-scroll::-webkit-scrollbar-track{background:var(--paper)}.pedigree-scroll::-webkit-scrollbar-thumb{border:2px solid var(--paper);background:var(--line-strong)}@media(max-width:800px){.pedigree-scroll{scrollbar-width:thin;-ms-overflow-style:auto}}@media(max-width:800px){.pedigree-view{height:auto;min-height:0;overflow:visible}.pedigree-view .canvas-panel{height:calc(100dvh - 60px);min-height:0;flex:0 0 auto}.pedigree-view .pedigree-scroll{height:auto;min-height:0;max-height:none;flex:1 1 auto}.pedigree-view .inspector{min-height:0}.pedigree-scroll,.kinship-scroll,.tree-pan-surface{scrollbar-width:none;-ms-overflow-style:none;cursor:grab;touch-action:none}.pedigree-scroll:active,.kinship-scroll:active,.tree-pan-surface:active,.pointer-pan-active{cursor:grabbing}.pedigree-scroll::-webkit-scrollbar,.kinship-scroll::-webkit-scrollbar,.tree-pan-surface::-webkit-scrollbar{width:0;height:0;display:none}}.pointer-pan-active{-webkit-user-select:none;user-select:none}@media(max-width:800px){.migration-record-list,.migration-detail,.studio-board,.studio-inspector,.ai-job-list,.dna-review-list,.dna-candidate-list,.whole-review-list,.review-list,.review-detail,.review-categories,.event-categories,.event-list,.event-detail,.family-archive-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.migration-record-list,.migration-detail,.studio-board,.studio-inspector,.ai-job-list,.dna-review-list,.dna-candidate-list,.whole-review-list,.review-list,.review-detail,.event-categories,.event-list,.event-detail{touch-action:pan-y}.review-categories,.family-archive-scroll{touch-action:pan-x pan-y}}.release-workflow{margin-top:18px;border:1px solid var(--line);background:#fffdf8bd}.release-workflow-empty{margin:18px;color:var(--muted);font-size:10px}.release-workflow-list{padding:0 18px}.release-workflow-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-top:1px solid var(--line)}.release-workflow-main{min-width:0;display:grid;gap:4px}.release-workflow-title{display:flex;align-items:center;gap:8px;min-width:0}.release-workflow-title>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font:600 11px "Noto Serif SC",serif}.release-workflow-main small{color:var(--muted);font-size:8px;line-height:1.45}.release-status{display:inline-flex;align-items:center;gap:3px;flex:0 0 auto;color:var(--jade);font-size:8px;white-space:nowrap}.release-status svg{width:13px;height:13px}.release-status.status-withdrawn{color:var(--red)}.release-workflow-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex:0 0 auto}.release-workflow-actions .outline-btn{min-height:30px;padding:0 9px}.release-workflow-actions .outline-btn svg{width:14px;height:14px}.release-workflow-actions .outline-btn.danger{color:var(--red);border-color:#9c4a396b}.release-workflow-actions .icon-btn{width:30px;height:30px;display:inline-grid;place-items:center;border:1px solid var(--line-strong);background:transparent;color:var(--green);cursor:pointer}.release-workflow-actions .icon-btn:hover{background:#6e8d7b14}.release-workflow-actions .icon-btn svg{width:15px;height:15px}@media(max-width:760px){.release-workflow-row{align-items:flex-start;flex-direction:column;gap:10px}.release-workflow-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.release-workflow-actions .outline-btn{flex:1 1 auto;justify-content:center}}.directory-person-card-head .directory-avatar{width:37px;height:45px;flex:0 0 37px;background:#e7e8e1;color:#6d7770;font:inherit}.directory-detail-empty,.directory-contact-empty{color:var(--muted);opacity:.76}.directory-registration-sync{display:grid;gap:10px;padding:12px;border:1px solid rgba(163,112,54,.34);background:#f7eeda9e}.directory-registration-sync>div:first-child{display:flex;align-items:flex-start;gap:9px;color:var(--green)}.directory-registration-sync>div:first-child span{display:grid;gap:3px}.directory-registration-sync>div:first-child small{color:var(--muted);line-height:1.55}.directory-registration-sync-fields{display:grid;grid-template-columns:minmax(140px,1fr) minmax(190px,1.4fr) auto;gap:8px}.directory-registration-sync-fields input{min-width:0}.directory-registration-notice{margin:0;color:var(--green);font-size:9px}@media(max-width:700px){.directory-registration-sync-fields{grid-template-columns:1fr}}.directory-basic-facts{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:9px}.directory-basic-facts span{display:inline-flex;align-items:center;gap:4px;color:var(--green);font-size:8px}.directory-basic-facts svg{color:var(--jade)}.directory-wechat-qr{display:grid;grid-template-columns:72px 1fr;align-items:center;gap:9px;margin-top:10px;padding:8px;border:1px solid var(--line);background:#fffdf8}.directory-wechat-qr img{width:72px;height:72px;object-fit:contain}.directory-wechat-qr span{display:inline-flex;align-items:center;gap:5px;color:var(--green);font-size:8px}.directory-qr-editor{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);background:#fffdf899}.directory-qr-editor>div{min-width:0;flex:1}.directory-qr-editor strong,.directory-qr-editor small{display:block}.directory-qr-editor strong{color:var(--green);font-size:8.5px}.directory-qr-editor small{margin-top:3px}.directory-qr-editor label,.directory-qr-editor button{min-height:31px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 9px;border:1px solid var(--line-strong);background:transparent;color:var(--green);font-size:8px;cursor:pointer}.directory-qr-editor input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.living-directory-load-more{display:flex;justify-content:center;padding:0 28px 30px}.living-directory-load-more button{min-width:190px}.directory-request-dialog{width:min(620px,100%);max-height:min(760px,calc(100dvh - 30px));display:flex;flex-direction:column}.directory-request-dialog>header{display:flex;justify-content:space-between;gap:15px;padding:18px 21px 14px;border-bottom:1px solid var(--line)}.directory-request-dialog>header h2{margin:7px 0 0;color:var(--green);font:700 21px "Noto Serif SC",serif}.directory-request-dialog>header p{margin:4px 0 0;color:var(--muted);font-size:8px}.directory-request-dialog>header button{width:29px;height:29px;display:grid;place-items:center;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}.directory-request-tabs{display:flex;flex:0 0 auto;border-bottom:1px solid var(--line);background:#f7f3e9}.directory-request-tabs button{min-height:38px;flex:1;border:0;border-right:1px solid var(--line);border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:8px;cursor:pointer}.directory-request-tabs button:last-child{border-right:0}.directory-request-tabs button.active{border-bottom-color:var(--red);background:var(--paper);color:var(--green);font-weight:700}.directory-request-list{min-height:180px;overflow-y:auto;padding:12px 20px 20px}.directory-request-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:13px 0;border-bottom:1px solid var(--line)}.directory-request-list article strong,.directory-request-list article small{display:block}.directory-request-list article strong{color:var(--green);font:600 11px "Noto Serif SC",serif}.directory-request-list article small{margin-top:3px;color:var(--muted);font-size:7px}.directory-request-list article p{margin:7px 0 0;color:var(--ink);font-size:8.5px;line-height:1.55}.directory-request-list article footer{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:6px}.directory-request-list article footer button{min-height:29px;font-size:8px}.directory-request-status{align-self:start;padding:4px 7px;background:#f2eee5;color:var(--muted);font-size:7px}.directory-request-status.accepted{background:#e3ede5;color:var(--green)}.directory-request-status.rejected{background:var(--red-soft);color:var(--red)}.directory-request-empty{margin:0;padding:55px 20px;color:var(--muted);font-size:9px;text-align:center}@media(max-width:760px){.living-directory-load-more{padding:0 14px 84px}.living-directory-load-more button{width:100%}.directory-request-dialog{max-height:calc(100dvh - 18px)}.directory-request-list{padding:8px 16px 18px}.directory-request-dialog>header{padding:16px}}.identity-designation-panel{max-width:1120px;margin:0 auto 20px;border:1px solid var(--line);background:var(--paper);padding:18px}.identity-designation-panel.compact{max-width:none;margin:0 0 16px;background:#fffdf8bd}.identity-designation-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:13px;border-bottom:1px solid var(--line)}.identity-designation-head h2{margin:5px 0 4px;color:var(--green);font:600 16px "Noto Serif SC",serif}.identity-designation-head p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}.identity-designation-note{display:flex;align-items:flex-start;gap:8px;margin:13px 0;padding:10px 11px;color:var(--muted);background:#f0f4ef;font-size:9px;line-height:1.55}.identity-designation-note svg{width:15px;flex:0 0 auto;color:var(--jade)}.identity-designation-form{display:grid;gap:10px}.identity-designation-form label{display:grid;gap:4px;min-width:0}.identity-designation-form label>span{color:var(--muted);font-size:9px}.identity-designation-form select,.identity-designation-form input,.identity-designation-form textarea{width:100%;border:1px solid var(--line-strong);background:#fffdf8;color:var(--ink);padding:8px 9px;font:inherit;font-size:11px}.identity-designation-form textarea{min-height:58px;resize:vertical}.identity-designation-mode{display:flex;gap:7px}.identity-designation-mode button{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);background:transparent;color:var(--muted);padding:7px 10px;font:inherit;font-size:10px;cursor:pointer}.identity-designation-mode button.active{border-color:var(--jade);background:#edf3ed;color:var(--green)}.identity-designation-mode svg,.identity-designation-person-search button svg{width:14px}.identity-designation-person-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.identity-designation-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.identity-designation-inline-help{margin:0;padding:8px 10px;color:var(--muted);background:#f8f5ec;font-size:9px;line-height:1.5}.identity-designation-list{margin-top:16px;border-top:1px solid var(--line)}.identity-designation-list-head{display:flex;justify-content:space-between;align-items:center;padding:10px 0 7px;color:var(--green);font-size:11px}.identity-designation-list-head span{color:var(--muted);font-size:9px}.identity-designation-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #e5dfd3}.identity-designation-row>span{min-width:0}.identity-designation-row strong,.identity-designation-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.identity-designation-row strong{color:var(--ink);font-size:10px}.identity-designation-row small{margin-top:3px;color:var(--muted);font-size:8px}.identity-designation-row em{color:var(--jade);font-size:9px;font-style:normal;white-space:nowrap}.identity-designation-row.pending em{color:#a9782c}.identity-designation-row.revoked{opacity:.65}.identity-designation-empty{margin:0;padding:16px 0 5px;color:var(--muted);font-size:9px}.identity-designation-panel .solid-btn,.identity-designation-panel .outline-btn{justify-content:center}.identity-designation-error,.identity-designation-success{margin:11px 0 0;padding:9px 10px;font-size:9px;line-height:1.55}.identity-designation-error{border-left:2px solid var(--red);background:var(--red-soft);color:var(--red)}.identity-designation-success{border-left:2px solid var(--jade);background:#edf1ec;color:var(--green)}@media(max-width:760px){.identity-designation-panel{padding:14px}.identity-designation-head{flex-direction:column}.identity-designation-head>button{width:100%}.identity-designation-grid{grid-template-columns:1fr}.identity-designation-row{grid-template-columns:minmax(0,1fr) auto}.identity-designation-row>button{grid-column:1 / -1;justify-self:start}}button:disabled,select:disabled,input:disabled,textarea:disabled{cursor:not-allowed;opacity:.48}.identity-chip{height:36px;min-width:68px;max-width:96px;display:grid;align-content:center;justify-items:center;border:1px solid var(--line);background:var(--paper);color:var(--green);cursor:pointer;padding:0 7px}.identity-chip span,.identity-chip small{display:block;line-height:1.15}.identity-chip span{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700}.identity-chip small{margin-top:2px;color:var(--muted);font-size:8px}.permission-inline-error{padding:9px 11px;border-left:2px solid var(--red);background:var(--red-soft);color:var(--red);font-size:10px}.current-identity-section{border-top:3px solid var(--green)}.identity-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(220px,1.4fr);gap:12px;align-items:stretch}.identity-form>label,.identity-scope{display:grid;gap:6px}.identity-form>label>span,.identity-scope>span{color:var(--muted);font-size:9px}.identity-form select{width:100%;height:36px;border:1px solid var(--line);background:var(--surface);padding:0 9px;color:var(--green);font-size:11px}.identity-scope{align-content:center;padding:8px 10px;border:1px solid var(--line);background:#f3efe6}.identity-scope strong{color:var(--green);font:600 11px "Noto Serif SC",serif}.identity-summary{display:flex;align-items:center;gap:10px;padding:9px 12px;background:#edf1ec;color:var(--green)}.identity-summary svg{width:19px;flex:0 0 auto}.identity-summary span,.identity-summary strong,.identity-summary small{display:block}.identity-summary strong{font:600 11px "Noto Serif SC",serif}.identity-summary small{margin-top:3px;color:var(--muted);font-size:8px;line-height:1.35}.role-row.active{background:#edf1ec;box-shadow:inset 3px 0 0 var(--green)}.proof-export-dialog{width:min(760px,calc(100vw - 32px))}.proof-dialog-body{padding:20px 22px 22px;display:grid;gap:16px}.proof-options{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,1.5fr);gap:12px}.proof-options>label:not(.proof-toggle){display:grid;gap:6px}.proof-options>label>span{color:var(--muted);font-size:9px}.proof-options select{height:38px;padding:0 10px;border:1px solid var(--line);background:var(--surface);color:var(--green)}.proof-toggle{display:flex;align-items:center;gap:10px;padding:8px 11px;border:1px solid var(--line);background:#f5f2e9}.proof-toggle input{width:16px;height:16px;accent-color:var(--green)}.proof-toggle strong,.proof-toggle small{display:block}.proof-toggle strong{color:var(--green);font-size:10px}.proof-toggle small{margin-top:4px;color:var(--muted);font-size:8px}.proof-preview-card{min-height:126px;display:flex;align-items:center;gap:18px;padding:20px;border:1px solid var(--line-strong);background:#fbfaf5;box-shadow:inset 0 0 0 5px #f0ece2}.proof-preview-mark{width:62px;height:72px;display:grid;place-items:center;flex:0 0 auto;background:var(--red);color:#fff;font:700 30px "Noto Serif SC",serif}.proof-preview-card span{color:var(--muted);font:600 9px "Noto Serif SC",serif}.proof-preview-card h3{margin:6px 0;color:var(--green);font:700 19px "Noto Serif SC",serif;letter-spacing:0}.proof-preview-card p{margin:0;color:var(--muted);font-size:9px}.proof-template-features{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.proof-template-features>div{display:flex;gap:8px;min-width:0;padding:11px;border:1px solid var(--line)}.proof-template-features svg{width:17px;flex:0 0 auto;color:var(--jade)}.proof-template-features span,.proof-template-features strong,.proof-template-features small{display:block}.proof-template-features strong{color:var(--green);font-size:9px}.proof-template-features small{margin-top:3px;color:var(--muted);font-size:7.5px;line-height:1.35}.proof-print-root{display:none}@media(max-width:800px){.identity-chip{display:none}.identity-form,.proof-options,.proof-template-features{grid-template-columns:1fr}.proof-preview-card{align-items:flex-start}.proof-export-dialog footer .dialog-review-note{display:none}.mobile-bottom-nav{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}}@page{size:A4 portrait;margin:17mm 12mm 16mm}@media print{html,body,#root{min-width:0;min-height:0;background:#fff!important;overflow:visible!important}body *{visibility:hidden!important}.proof-dialog-backdrop,.proof-export-dialog,.proof-print-root,.proof-print-root *{visibility:visible!important}.proof-dialog-backdrop{position:static!important;display:block!important;padding:0!important;background:#fff!important}.proof-export-dialog{position:static!important;width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;overflow:visible!important;border:0!important;box-shadow:none!important;background:#fff!important}.proof-export-dialog>header,.proof-export-dialog>footer,.proof-dialog-body{display:none!important}.proof-print-root{display:block!important;position:static;width:auto;color:#171916;background:#fff;font-family:"Noto Serif SC",SimSun,serif;font-size:9pt;line-height:1.45}.proof-print-header,.proof-print-footer{position:fixed;left:0;right:0;z-index:2;display:flex;justify-content:space-between;color:#5c625d;font-size:7.5pt}.proof-print-header{top:-11mm;padding-bottom:2.5mm;border-bottom:.25mm solid #aeb4ae}.proof-print-header b{color:#173f35;font-weight:600}.proof-print-footer{bottom:-10mm;padding-top:2.5mm;border-top:.25mm solid #aeb4ae}.proof-page-counter:after{content:"第 " counter(page) " 页"}.proof-cover{min-height:245mm;display:grid;align-content:center;justify-items:center;text-align:center}.proof-cover-seal{width:27mm;height:32mm;display:grid;place-items:center;margin-bottom:12mm;border:.8mm double #9e3f32;color:#9e3f32;font-size:28pt;font-weight:700}.proof-kicker{margin:0 0 4mm;color:#58685f;font-size:10pt;letter-spacing:0}.proof-cover h1{margin:0;color:#173f35;font-size:31pt;font-weight:700;letter-spacing:0}.proof-cover h2{margin:4mm 0 0;color:#3c4942;font-size:14pt;font-weight:500;letter-spacing:0}.proof-cover-rule{width:45mm;margin:12mm 0;border-top:.6mm solid #9e3f32}.proof-cover dl{width:102mm;margin:0;border-top:.25mm solid #aeb4ae}.proof-cover dl div{display:grid;grid-template-columns:30mm 1fr;padding:3mm 0;border-bottom:.25mm solid #d3d7d3;text-align:left}.proof-cover dt{color:#6a706b}.proof-cover dd{margin:0;color:#202823}.proof-cover-note{max-width:120mm;margin:13mm 0 0;color:#6b4c45;font-size:8pt;line-height:1.7}.proof-page-break{break-after:page;page-break-after:always}.proof-section-title{margin:0 0 7mm;padding-bottom:4mm;border-bottom:.6mm double #173f35}.proof-section-title span{color:#9e3f32;font-size:8pt}.proof-section-title h2{margin:1.5mm 0 1mm;color:#173f35;font-size:18pt;letter-spacing:0}.proof-section-title p{margin:0;color:#626862;font-size:8pt;line-height:1.6}.proof-summary{min-height:245mm}.proof-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:7mm;border:.25mm solid #aeb4ae}.proof-summary-grid div{padding:5mm 4mm;border-right:.25mm solid #cdd1cd}.proof-summary-grid div:last-child{border-right:0}.proof-summary-grid span,.proof-summary-grid strong,.proof-summary-grid small{display:block}.proof-summary-grid span{color:#686e69;font-size:7.5pt}.proof-summary-grid strong{margin:2mm 0;color:#173f35;font-size:17pt}.proof-summary-grid small{color:#7b807b;font-size:7pt}.proof-privacy-note{margin-bottom:7mm;padding:4mm;border-left:1mm solid #9e3f32;background:#f6f3ee}.proof-privacy-note strong{color:#75352c}.proof-privacy-note p{margin:1.5mm 0 0;color:#595f5a;font-size:8pt}.proof-check-table,.proof-people-table,.proof-issue-section table{width:100%;border-collapse:collapse;table-layout:fixed}.proof-check-table th,.proof-check-table td,.proof-people-table th,.proof-people-table td,.proof-issue-section th,.proof-issue-section td{padding:2.2mm 1.8mm;border:.2mm solid #aeb4ae;vertical-align:top;overflow-wrap:anywhere}.proof-check-table th,.proof-people-table th,.proof-issue-section th{background:#e9eee9;color:#173f35;font-weight:600;text-align:left}.proof-check-table th:nth-child(1){width:28%}.proof-check-table th:nth-child(2){width:21%}.proof-signature{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr;gap:3mm;align-items:end;margin-top:15mm}.proof-signature i{height:6mm;border-bottom:.25mm solid #6d726e}.proof-branch-section{break-before:page;page-break-before:always}.proof-generation{margin:0 0 7mm}.proof-generation h3,.proof-issue-section h3{display:flex;justify-content:space-between;margin:0;padding:2.5mm 3mm;background:#173f35;color:#fff;font-size:11pt;font-weight:600}.proof-generation h3 span,.proof-issue-section h3 span{font-size:8pt;font-weight:400}.proof-people-table thead,.proof-issue-section thead{display:table-header-group}.proof-people-table tr,.proof-issue-section tr{break-inside:avoid;page-break-inside:avoid}.proof-people-table td{font-size:7.5pt}.proof-people-table th:nth-child(1){width:12%}.proof-people-table th:nth-child(2){width:9%}.proof-people-table th:nth-child(3){width:18%}.proof-people-table th:nth-child(4),.proof-people-table th:nth-child(5){width:15%}.proof-people-table th:nth-child(6){width:13%}.proof-people-table th:nth-child(7),.proof-people-table th:nth-child(8){width:9%}.proof-issues{break-before:page;page-break-before:always}.proof-issue-section{margin-bottom:8mm}.proof-issue-section th,.proof-issue-section td{font-size:7pt}.proof-issue-section th:nth-child(1){width:13%}.proof-issue-section th:nth-child(2){width:12%}.proof-issue-section th:nth-child(3){width:14%}.proof-issue-section th:nth-child(4),.proof-issue-section th:nth-child(5){width:23%}.proof-issue-section th:nth-child(6){width:15%}.proof-handwrite{height:12mm}.proof-empty{padding:10mm;border:.25mm solid #aeb4ae;text-align:center;color:#676d68}}.edition-page{height:100%;overflow-y:auto;background:#f2efe7;scrollbar-width:none}.edition-page::-webkit-scrollbar{display:none}.edition-head{min-height:106px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:23px 30px 19px;border-bottom:1px solid var(--line);background:var(--paper)}.edition-head h1{margin:5px 0;color:var(--green);font:700 27px "Noto Serif SC",serif}.edition-head p{margin:0;color:var(--muted);font-size:9px}.edition-head-actions{max-width:620px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;flex:0 0 auto}.edition-status-strip{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:8px 30px;border-bottom:1px solid #d9d4c9;background:#e9eee9;color:#52615a;font-size:8px}.edition-status-strip>div{display:flex;align-items:center;gap:7px;min-width:0}.edition-status-strip svg{width:14px;flex:0 0 auto;color:var(--jade)}.edition-status-strip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edition-status-strip strong{margin-right:8px;color:var(--green);font-weight:700}.edition-layout{min-height:calc(100% - 148px);display:grid;grid-template-columns:225px minmax(560px,1fr) 230px}.edition-toc{min-width:0;border-right:1px solid var(--line);background:#f9f7f1}.edition-toc-head{display:flex;align-items:center;justify-content:space-between;padding:16px 17px 10px;color:var(--green);font:600 11px "Noto Serif SC",serif}.edition-toc-head button{display:none;border:0;background:transparent;color:var(--muted);font-size:22px}.edition-toc-volume{padding:5px 0 9px}.edition-toc-volume h2{margin:0;padding:6px 17px;color:#8d493c;font:600 9px "Noto Serif SC",serif}.edition-toc-volume button{width:100%;min-height:34px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;padding:6px 16px 6px 18px;border:0;background:transparent;color:#4d5650;text-align:left;cursor:pointer}.edition-toc-volume button:hover{background:#edf1ec}.edition-toc-volume button.active{background:#e3ebe4;box-shadow:inset 3px 0 0 var(--green);color:var(--green)}.edition-toc-volume button span{min-width:0;font:500 8.5px "Noto Serif SC",serif;line-height:1.35}.edition-toc-volume button small{color:var(--muted);font-size:7px;white-space:nowrap}.edition-reading{min-width:0;padding:21px 26px 50px}.edition-mobile-toc{display:none}.edition-reading-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.edition-volume-label{color:#8d493c;font-size:8px;font-weight:700}.edition-reading-toolbar h2{margin:4px 0;color:var(--green);font:700 19px "Noto Serif SC",serif}.edition-reading-toolbar small{color:var(--muted);font-size:7.5px}.edition-mode-switch{display:flex;align-items:center;flex:0 0 auto}.edition-mode-switch>button{height:31px;border:1px solid var(--line-strong);background:transparent;padding:0 12px;color:var(--muted);font-size:8px;cursor:pointer}.edition-mode-switch>button+button{border-left:0}.edition-mode-switch>button.active{background:var(--green);color:#fff}.edition-search{width:190px;height:32px;display:flex;align-items:center;gap:6px;border-bottom:1px solid var(--line-strong)}.edition-search svg{width:14px;color:var(--jade)}.edition-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:8px}.edition-paper{min-height:720px;max-width:760px;margin:0 auto;padding:45px clamp(42px,7vw,78px) 70px;border:1px solid #d5d0c4;background:#fffef9;box-shadow:0 9px 26px #39342a14}.edition-paper>header{display:flex;justify-content:space-between;gap:20px;padding-bottom:12px;border-bottom:1px solid #d9d3c7;color:var(--muted);font-size:7.5px}.edition-paper>header span{color:#8d493c;font-weight:700}.edition-paper>header small{overflow-wrap:anywhere;text-align:right}.edition-prose{padding-top:28px;color:#292b28;font:400 14px/2.05 "Noto Serif SC",SimSun,serif}.edition-block{margin:0 0 14px;text-align:justify;text-indent:2em;overflow-wrap:anywhere}.edition-block-title{margin:9px 0 30px;color:var(--green);font-size:25px;font-weight:700;line-height:1.35;text-align:center;text-indent:0}.edition-block-heading{margin:28px 0 13px;color:var(--green);font-size:18px;font-weight:700;line-height:1.5;text-indent:0}.edition-block-subheading{margin:22px 0 10px;color:#42564b;font-size:16px;font-weight:600;line-height:1.55;text-indent:0}.edition-block-note{padding-left:1em;border-left:2px solid #a74e40;color:#626660;font-size:12px;text-indent:0}.edition-block-list{padding-left:2em;text-indent:-2em}.edition-block mark{padding:0 1px;background:#efdca6;color:inherit}.edition-book-reader{width:100%;max-width:860px;margin:0 auto}.edition-book-reader.is-wide{max-width:980px}.edition-book-stage{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;gap:10px;perspective:1600px}.edition-book-leaf{min-width:0;transform-origin:center left}.edition-book-leaf.turn-forward{animation:edition-page-forward .22s ease-out}.edition-book-leaf.turn-backward{transform-origin:center right;animation:edition-page-backward .22s ease-out}.edition-page-turn{width:34px;height:54px;display:grid;place-items:center;border:1px solid #c7c0b4;background:#fffef9eb;color:var(--green);cursor:pointer;box-shadow:0 5px 16px #39342a14}.edition-page-turn:hover:not(:disabled){border-color:var(--jade);background:#fff}.edition-page-turn:disabled{opacity:.28;cursor:default}.edition-page-turn svg{width:17px}.edition-page-hotspot{display:none}.edition-book-page{position:relative;width:100%;display:flex;flex-direction:column;overflow:hidden}.edition-book-page:after{content:"";position:absolute;inset:0 0 0 auto;width:7px;background:linear-gradient(90deg,#51483a00,#51483a14);pointer-events:none}.edition-book-page .edition-prose{flex:1}.edition-book-page-foot{min-height:29px;display:flex;align-items:end;justify-content:space-between;gap:18px;margin-top:30px;padding-top:10px;border-top:1px solid #e0dbd1;color:#777d78;font-size:7px}.edition-book-page-foot strong{color:var(--green);font:600 10px "Noto Serif SC",serif}.edition-book-pager{min-height:43px;display:flex;align-items:center;justify-content:center;gap:13px;max-width:760px;margin:13px auto 0;padding:6px 10px;border-top:1px solid #d3cdc2;border-bottom:1px solid #d3cdc2;background:#f9f7f1cc}.edition-book-pager .outline-btn{min-height:29px}.edition-book-pager label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:8px}.edition-book-pager select{min-width:112px;height:28px;border:1px solid var(--line-strong);background:var(--paper);padding:0 8px;color:var(--green);font-size:8px;text-align:center}.edition-block[data-reader-continuation]:before{content:"续";float:left;margin:3px 7px 0 0;color:#9b4d3d;font-size:7px;font-weight:700;text-indent:0}@keyframes edition-page-forward{0%{opacity:.45;transform:translate(12px) rotateY(-2deg)}to{opacity:1;transform:translate(0) rotateY(0)}}@keyframes edition-page-backward{0%{opacity:.45;transform:translate(-12px) rotateY(2deg)}to{opacity:1;transform:translate(0) rotateY(0)}}.edition-info-rail{padding:18px 17px 40px;border-left:1px solid var(--line);background:#ece9e1}.edition-info-block{padding:13px 0 15px;border-bottom:1px solid #d2cec4}.edition-info-block>span,.edition-info-block>strong{display:block}.edition-info-block>span{color:#8d493c;font-size:7.5px;font-weight:700}.edition-info-block>strong{margin-top:6px;color:var(--green);font:600 10px "Noto Serif SC",serif}.edition-info-block p{margin:7px 0 0;color:var(--muted);font-size:8px;line-height:1.65}.edition-loading,.edition-error,.edition-empty{min-height:320px;display:grid;align-content:center;justify-items:center;gap:10px;color:var(--muted);text-align:center}.edition-loading svg{width:27px;color:var(--jade);animation:spin 1.1s linear infinite}.edition-error svg{width:32px;color:#9a5140}.edition-error h1{margin:0;color:var(--green);font:600 18px "Noto Serif SC",serif}.edition-error p,.edition-empty{font-size:9px}.edition-lineage-reader{max-width:900px;margin:0 auto}.edition-branch-tabs{min-height:35px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:8px;border-bottom:1px solid var(--line)}.edition-branch-tabs>div{display:flex;align-self:stretch}.edition-branch-tabs span{display:inline-flex;align-items:center;padding:0 10px;color:var(--muted);font-size:8px}.edition-branch-tabs span.active{border-bottom:2px solid var(--red);color:var(--green);font-weight:700}.edition-lineage-jump{display:flex;align-items:center;gap:7px;padding-bottom:4px}.edition-lineage-jump>span{color:var(--muted);font-size:7.5px}.edition-lineage-jump select{max-width:145px;height:26px;border:1px solid var(--line);background:var(--paper);padding:0 7px;color:var(--green);font-size:8px}.edition-lineage-page{min-height:690px;padding:31px 35px 24px;border:1px solid #d1cabc;background:#fffef9;box-shadow:0 9px 26px #39342a14}.edition-lineage-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:16px;border-bottom:2px double var(--green)}.edition-section-kicker{color:#9b4d3d;font-size:8px;font-weight:700}.edition-lineage-page-head h2{margin:5px 0;color:var(--green);font:700 22px "Noto Serif SC",serif}.edition-lineage-page-head p{margin:0;color:var(--muted);font-size:8px;line-height:1.5}.edition-page-meta{display:flex;align-items:baseline;color:var(--muted)}.edition-page-meta strong{color:var(--green);font:700 24px "Noto Serif SC",serif}.edition-page-meta span{font-size:8px}.edition-lineage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:18px 0}.edition-family-unit{min-width:0;break-inside:avoid;border:1px solid #cfc8bb;background:#fbfaf5}.edition-family-unit.is-continuation{border-top-color:#9b4d3d}.edition-family-head{display:grid;grid-template-columns:27px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 10px;border-bottom:1px solid #ddd7cc}.edition-family-seal{width:27px;height:30px;display:grid;place-items:center;background:var(--green);color:#fff;font:700 13px "Noto Serif SC",serif}.edition-family-head>div{min-width:0}.edition-person-link{max-width:100%;display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;padding:0;color:var(--green);font:700 12px "Noto Serif SC",serif;text-align:left;cursor:pointer;overflow-wrap:anywhere}.edition-person-link svg{width:11px;flex:0 0 auto;color:var(--jade)}.edition-person-link:disabled{opacity:1;cursor:default}.edition-family-head small{display:block;margin-top:3px;color:var(--muted);font-size:6.8px;line-height:1.4;overflow-wrap:anywhere}.edition-family-head em{color:#9b4d3d;font-size:7px;font-style:normal;white-space:nowrap}.edition-spouse-line{min-height:28px;display:flex;align-items:center;gap:8px;padding:5px 10px;border-bottom:1px dotted #d8d1c4;color:#4a514c;font:500 8.5px "Noto Serif SC",serif;overflow-wrap:anywhere}.edition-spouse-line>span,.edition-children-label{color:#9b4d3d;font-size:7px;font-weight:700}.edition-children-line{min-height:44px;display:grid;grid-template-columns:16px minmax(0,1fr);align-items:start;gap:6px;padding:8px 10px 9px}.edition-children-label{padding-top:4px}.edition-children-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-left:1px solid #b7b0a5}.edition-children-list button{min-width:0;min-height:27px;border:0;border-left:1px solid #d9d3c9;background:transparent;padding:4px 2px;color:#303c35;font:600 8px "Noto Serif SC",serif;cursor:pointer;overflow-wrap:anywhere}.edition-children-list button:disabled{opacity:1;cursor:default}.edition-empty-child{padding:4px 0;color:var(--muted);font-size:7.5px}.edition-lineage-page-foot{display:flex;justify-content:space-between;gap:12px;padding-top:9px;border-top:1px solid #d9d3c7;color:var(--muted);font-size:7px}.edition-lineage-page-foot span{display:flex;align-items:center;gap:5px}.edition-lineage-page-foot svg{width:11px;color:var(--jade)}.edition-page-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:15px}.edition-page-nav>span{color:var(--muted);font-size:8px}.edition-family-contributions{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.edition-family-contributions b{padding:2px 4px;border:1px solid #d7d0c3;color:#7b574a;font-size:6.5px;font-weight:600}.edition-family-contributions b:first-child{border-color:#91a99a;color:var(--green)}.edition-contributions{max-width:760px;margin:22px auto 0;padding:18px;border:1px solid #d2cbc0;background:#f7f4ec}.edition-contributions>header{display:flex;align-items:end;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid #d7d1c5}.edition-contributions>header span{color:#8d493c;font-size:7.5px;font-weight:700}.edition-contributions>header h3{margin:4px 0 0;color:var(--green);font:600 13px "Noto Serif SC",serif}.edition-contributions>header .outline-btn{min-height:29px;font-size:7.5px}.edition-contributions>div{display:grid;gap:9px;margin-top:13px}.edition-contribution-item{padding:11px 12px;border-left:3px solid #a9a9a2;background:#fffdf7}.edition-contribution-item.accepted{border-left-color:var(--green)}.edition-contribution-item>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.edition-contribution-item>div span,.edition-contribution-item>div em{color:#7b574a;font-size:7px;font-style:normal}.edition-contribution-item.accepted>div span{color:var(--green);font-weight:700}.edition-contribution-item h4{margin:6px 0 3px;color:var(--green);font:600 10px "Noto Serif SC",serif}.edition-contribution-item p{margin:0;color:#515852;font-size:8px;line-height:1.6;white-space:pre-wrap}.edition-contribution-item small{display:block;margin-top:6px;color:var(--muted);font-size:7px}.edition-contribution-item small button{border:0;background:transparent;padding:0;color:var(--green);font:inherit;font-weight:700;cursor:pointer}.edition-contribution-item .edition-oral-history-summary{margin-top:3px;color:#7b574a}.edition-block[data-corrected=true]{position:relative;padding-left:10px;border-left:2px solid var(--jade);background:#f2f5ef}.edition-print-dialog{width:min(650px,calc(100vw - 32px))}.edition-print-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:20px 22px 24px}.edition-print-options>.edition-print-rule-note{grid-column:1 / -1}.edition-print-options label{display:grid;gap:6px}.edition-print-options label span{color:var(--muted);font-size:8px}.edition-print-options select{min-height:39px;border:1px solid var(--line-strong);background:var(--paper);padding:0 10px;color:var(--green);font-size:9px}.edition-print-rule-note{display:grid;grid-template-columns:23px minmax(0,1fr);grid-template-rows:auto auto;gap:3px 7px;padding:9px 11px;border-left:2px solid var(--green);background:#edf1ec}.edition-print-rule-note svg{width:18px;grid-row:1 / 3;color:var(--jade)}.edition-print-rule-note strong{color:var(--green);font-size:9px}.edition-print-rule-note small{color:var(--muted);font-size:7.5px;line-height:1.45}.edition-print-root{display:none}@media(max-width:1180px){.edition-layout{grid-template-columns:205px minmax(520px,1fr)}.edition-info-rail{display:none}}@media(max-width:800px){.edition-page{height:calc(100dvh - 60px);min-height:0;padding-bottom:61px;overflow:hidden;display:flex;flex-direction:column}.edition-head{min-height:0;display:block;padding:17px 14px}.edition-head h1{font-size:23px}.edition-head-actions{display:flex;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;margin-top:10px;padding-bottom:2px;scrollbar-width:none}.edition-head-actions::-webkit-scrollbar{display:none}.edition-head-actions button{flex:0 0 auto}.edition-head-actions button{min-width:0;justify-content:center}.edition-status-strip{display:block;padding:9px 14px}.edition-status-strip>div+div{margin-top:7px}.edition-layout{display:block;flex:1 1 auto;min-height:0;overflow:hidden}.edition-toc{position:fixed;inset:0 10% 0 0;z-index:80;overflow-y:auto;border-right:1px solid var(--line-strong);box-shadow:9px 0 28px #1b251f2e;transform:translate(-105%);transition:transform .2s ease}.edition-toc.is-open{transform:translate(0)}.edition-toc-head button{display:block}.edition-reading{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:10px 12px 0}.edition-mobile-toc{display:block;flex:0 0 auto;width:100%;min-height:29px;margin-bottom:7px;border:1px solid var(--line);background:#f8f5ed;color:var(--green);font-size:8px}.edition-reading-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:8px}.edition-reading-toolbar>div:first-child{min-width:0;flex:1}.edition-reading-toolbar h2{margin:2px 0;font-size:16px}.edition-reading-toolbar small{display:none}.edition-mode-switch{margin-top:0;flex:0 0 auto}.edition-mode-switch>button{flex:1}.edition-search{width:100%}.edition-paper{min-height:0;height:100%;padding:16px 16px 12px;overflow:hidden}.edition-paper>header{display:block}.edition-paper>header small{display:block;margin-top:5px;text-align:left}.edition-prose{overflow:hidden;padding-top:11px;font-size:10px;line-height:1.55}.edition-block{margin-bottom:7px}.edition-block-title{margin:5px 0 13px;font-size:17px}.edition-block-heading{margin:12px 0 7px;font-size:13px}.edition-block-subheading{margin:10px 0 6px;font-size:12px}.edition-lineage-page{min-width:690px;min-height:720px;padding:28px}.edition-branch-tabs{min-width:690px}.edition-lineage-reader{overflow:auto;touch-action:pan-x pan-y;scrollbar-width:none}.edition-lineage-reader::-webkit-scrollbar{display:none}.edition-book-reader:not(.is-wide){height:auto;min-height:300px;flex:1 1 auto}.edition-book-reader:not(.is-wide) .edition-book-stage{position:relative;display:block;height:100%;min-height:0;overflow:hidden;touch-action:manipulation}.edition-book-reader:not(.is-wide) .edition-book-leaf{height:100%;min-height:0}.edition-book-reader:not(.is-wide) .edition-book-page{height:100%;min-height:0}.edition-book-stage{display:block}.edition-page-turn{display:none}.edition-page-hotspot{position:absolute;top:0;bottom:0;z-index:8;display:block;width:22%;border:0;background:transparent;cursor:pointer}.edition-page-hotspot.previous{left:0}.edition-page-hotspot.next{right:0}.edition-page-hotspot:disabled{cursor:default}.edition-book-pager{display:none}.edition-book-page-foot{margin-top:auto}.edition-contributions{margin-top:16px;padding:14px}.edition-contributions>header{align-items:start}.edition-print-options{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.edition-book-leaf.turn-forward,.edition-book-leaf.turn-backward{animation:none}}@media print{body *{visibility:hidden!important}.edition-dialog-backdrop,.edition-print-dialog,.edition-print-root,.edition-print-root *{visibility:visible!important}.edition-dialog-backdrop{position:static!important;display:block!important;padding:0!important;background:#fff!important}.edition-print-dialog{position:static!important;width:auto!important;max-width:none!important;max-height:none!important;overflow:visible!important;border:0!important;box-shadow:none!important}.edition-print-dialog>header,.edition-print-dialog>footer,.edition-print-options{display:none!important}.edition-print-root{display:block!important;color:#171916;background:#fff;font-family:"Noto Serif SC",SimSun,serif;font-size:9pt;line-height:1.55}.edition-print-header,.edition-print-footer{position:fixed;left:0;right:0;z-index:5;display:flex;justify-content:space-between;color:#606761;font-size:7pt}.edition-print-header{top:-11mm;padding-bottom:2mm;border-bottom:.2mm solid #aeb4ae}.edition-print-footer{bottom:-10mm;padding-top:2mm;border-top:.2mm solid #aeb4ae}.edition-print-page-counter:after{content:"第 " counter(page) " 页"}.edition-print-sheet,.edition-lineage-print-page{break-after:page;page-break-after:always}.edition-print-cover{min-height:245mm;display:grid;align-content:center;justify-items:center;text-align:center}.edition-print-seal{width:27mm;height:32mm;display:grid;place-items:center;margin-bottom:10mm;border:.8mm double #9e3f32;color:#9e3f32;font-size:28pt;font-weight:700}.edition-print-cover>p:first-of-type{margin:0 0 3mm;color:#58685f;font-size:10pt}.edition-print-cover h1{margin:0;color:#173f35;font-size:30pt}.edition-print-cover h2{margin:4mm 0 0;color:#3c4942;font-size:15pt;font-weight:500}.edition-print-rule{width:44mm;margin:11mm 0;border-top:.6mm solid #9e3f32}.edition-print-cover dl{width:120mm;margin:0;border-top:.2mm solid #aeb4ae}.edition-print-cover dl div{display:grid;grid-template-columns:30mm 1fr;padding:3mm 0;border-bottom:.2mm solid #d3d7d3;text-align:left}.edition-print-cover dt{color:#686e69}.edition-print-cover dd{margin:0;overflow-wrap:anywhere}.edition-print-warning{max-width:125mm;margin:12mm 0 0!important;color:#765047!important;font-size:8pt!important;line-height:1.7}.edition-print-section-title{margin-bottom:8mm;padding-bottom:4mm;border-bottom:.6mm double #173f35}.edition-print-section-title span{color:#9e3f32;font-size:8pt}.edition-print-section-title h2{margin:1.5mm 0;color:#173f35;font-size:20pt}.edition-print-section-title p{margin:0;color:#676d68;font-size:7pt}.edition-print-prose-body{columns:2;column-gap:9mm;column-rule:.2mm solid #d7d2c8;text-align:justify}.edition-print-block{margin:0 0 3.5mm;orphans:3;widows:3;text-indent:2em;overflow-wrap:anywhere}.edition-print-block-title,.edition-print-block-heading,.edition-print-block-subheading{break-after:avoid;page-break-after:avoid;color:#173f35;font-weight:700;text-indent:0;column-span:all}.edition-print-block-title{margin:0 0 8mm;font-size:20pt;text-align:center}.edition-print-block-heading{margin:6mm 0 3mm;font-size:13pt}.edition-print-block-subheading{margin:4mm 0 2mm;font-size:11pt}.edition-lineage-print-page{min-height:245mm;padding:0;border:0;box-shadow:none}.edition-lineage-print-page .edition-lineage-page-head{padding-bottom:4mm}.edition-lineage-print-page .edition-lineage-page-head h2{font-size:18pt}.edition-lineage-print-page .edition-lineage-grid{gap:3mm;padding:5mm 0}.edition-lineage-print-page .edition-family-unit{break-inside:avoid;page-break-inside:avoid}.edition-lineage-print-page .edition-family-head{padding:2mm}.edition-lineage-print-page .edition-person-link{font-size:9pt}.edition-lineage-print-page .edition-spouse-line,.edition-lineage-print-page .edition-children-line{padding:1.5mm 2mm}.edition-lineage-print-page .edition-children-list button{font-size:7pt}.edition-lineage-print-page .edition-page-nav{display:none!important}}.edition-print-size-a4{page:edition-a4}.edition-print-size-a3{page:edition-a3}.edition-print-size-a3 .edition-lineage-print-page .edition-lineage-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:3mm}.edition-print-size-a3 .edition-lineage-print-page .edition-family-head{padding:1.8mm 2mm}.edition-print-size-a3 .edition-lineage-print-page .edition-person-link{font-size:8.5pt}.edition-print-size-a3 .edition-lineage-print-page .edition-children-list{grid-template-columns:repeat(6,minmax(0,1fr))}@page edition-a4{size:A4 portrait;margin:16mm 14mm 17mm}@page edition-a4:left{margin-left:22mm;margin-right:14mm}@page edition-a4:right{margin-left:14mm;margin-right:22mm}@page edition-a3{size:A3 landscape;margin:14mm 16mm 15mm}
