@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.gap-4{gap:calc(var(--spacing) * 4)}.border{border-style:var(--tw-border-style);border-width:1px}@media (min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}}:root{--neutral-0:#fffaf3;--neutral-25:#fbf4e8;--neutral-50:#f5efe4;--neutral-100:#eee2cf;--neutral-200:#e2d1b8;--neutral-300:#d1b895;--neutral-500:#8b7253;--neutral-700:#5a402e;--neutral-900:#3f2b1f;--background:#f5efe4;--foreground:#3f2b1f;--surface:#fffaf3f0;--surface-strong:#fffaf3;--surface-muted:#f7eddf;--surface-elevated:#fbf3e8;--panel-border:#d9c6aa;--border-subtle:#8b725347;--panel-shadow:0 18px 48px #4e311c1a;--panel-shadow-soft:0 8px 24px #4e311c14;--brand:#7b1f1f;--brand-deep:#5a2b1d;--brand-muted:#8b7253;--brand-weak-border:#7b1f1f2e;--brand-medium-border:#7b1f1f57;--brand-strong-border:#7b1f1f80;--brand-focus-ring:#7b1f1f14;--text-primary:#3f2b1f;--text-secondary:#6f563f;--text-muted:#8b7253;--text-disabled:#8e8e8e;--text-disabled-hover:#6f6f6f;--success:#1f8a5b;--success-bg:#e8f7ef;--info:#1d6fa5;--info-bg:#f6ead9;--warning:#a15c05;--warning-border:#a15c0547;--warning-bg:#fff4de;--danger:#c23d3d;--danger-bg:#fdeeee;--heritage-surface:#fffaf3f0;--heritage-border:#ead8bd;--heritage-muted:#8b7253;--heritage-stamp-ink:#9d2f25;--heritage-stamp-wash-top:#a6362733;--heritage-stamp-wash-bottom:#a6362714;--heritage-stamp-outline:#9d2f259e;--heritage-stamp-shadow-top:#9d2f2547;--heritage-stamp-shadow-drop:#7e281f33;--heritage-stamp-shadow-inset:#9d2f252e;--heritage-stamp-text-shadow:#7e281f59;--shell-surface:#fffaf3e6;--shell-surface-strong:#fffaf3f5;--shell-surface-muted:#f7eddfeb;--shell-sider-bg:var(--shell-surface);--shell-header-bg:var(--shell-surface);--shell-menu-item-bg:transparent;--shell-menu-item-hover-bg:var(--shell-surface-muted);--shell-menu-item-selected-bg:var(--shell-surface-muted);--shell-menu-item-color:var(--text-secondary);--shell-menu-item-selected-color:var(--brand);--shell-card-grad-top:#fffaf3fa;--shell-card-grad-bottom:#f7eddfeb;--shell-card-bg:linear-gradient(180deg, var(--shell-card-grad-top), var(--shell-card-grad-bottom)), var(--surface);--shell-stat-card-bg:var(--shell-card-bg);--shell-map-grad-top:#fffaf3f2;--shell-map-grad-bottom:#f7eddfe6;--shell-status-grad-top:#fffaf3f5;--shell-status-grad-bottom:#f7eddfe6;--surface-alpha-98:#fffaf3fa;--surface-alpha-97:#fffaf3f7;--surface-alpha-96:#fffaf3f5;--surface-alpha-95:#fffaf3f2;--surface-alpha-94:#fffaf3f0;--surface-alpha-90:#fffaf3e6;--surface-alpha-88:#fffaf3e0;--surface-cool-244:#f7eddfeb;--surface-cool-243:#f7eddfe6;--surface-cool-242-94:#f8f0e5f0;--surface-cool-242-86:#f8f0e5db;--surface-cool-241-93:#f7eddfed;--surface-cool-241-90:#f7eddfe6;--surface-cool-241-88:#f7eddfe0;--surface-cool-241-84:#f7eddfd6;--surface-cool-238:#f1e4d1f0;--brand-info-blend-start:#7b1f1f1f;--brand-info-blend-end:#8b72531f;--brand-surface-blend-start:#7b1f1f1a;--brand-surface-blend-end:#fffaf3f5;--info-surface-blend-start:#8b72531a;--danger-surface-blend-start:#c23d3d14;--info-surface-border:#8b725342;--danger-surface-border:#c23d3d3d;--neutral-overlay-soft:#8b725324;--surface-inset-glow:#fffaf3a6;--summary-divider-start:#7b1f1f3d;--summary-divider-end:#66758b6b;--font-sans:"Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--font-serif:"Noto Serif SC", "Noto Serif CJK SC", "Source Han Serif SC", "SimSun", "宋体", serif;--font-brush:"Ma Shan Zheng", "STXingkai", "华文行楷", "FZKai-Z03", cursive}html,body{background:radial-gradient(circle at top right, #8b725329, transparent 36%), radial-gradient(circle at bottom left, #7b1f1f1a, transparent 40%), linear-gradient(180deg, var(--neutral-25) 0%, var(--background) 100%);color:var(--text-primary);font-family:var(--font-sans);min-height:100%;margin:0}*{box-sizing:border-box}a{color:inherit;text-decoration:none}.app-layout{--app-sider-width:200px;background:var(--background);height:100vh;min-height:100vh;overflow:hidden}.app-sider{z-index:100;border-right:1px solid var(--panel-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);height:100vh;inset:0 auto 0 0;overflow:hidden;background:var(--shell-sider-bg)!important;position:fixed!important}.app-sider .ant-layout-sider-children{background:var(--shell-sider-bg);height:100%;overflow:hidden auto}.app-sider .ant-menu,.app-nav-drawer .ant-menu{color:var(--shell-menu-item-color);background:var(--shell-sider-bg)!important;border-inline-end:0!important}.app-sider .ant-menu-inline,.app-nav-drawer .ant-menu-inline{padding-inline:8px}.app-sider .ant-menu-item,.app-nav-drawer .ant-menu-item{color:var(--shell-menu-item-color)!important;background:var(--shell-menu-item-bg)!important}.app-sider .ant-menu-item:hover,.app-nav-drawer .ant-menu-item:hover{color:var(--shell-menu-item-selected-color)!important;background:var(--shell-menu-item-hover-bg)!important}.app-sider .ant-menu-item-selected,.app-nav-drawer .ant-menu-item-selected{color:var(--shell-menu-item-selected-color)!important;background:var(--shell-menu-item-selected-bg)!important}.app-sider .ant-menu-item-selected:after,.app-nav-drawer .ant-menu-item-selected:after{border-inline-end-color:var(--brand)!important}.app-sider .ant-menu-item .ant-menu-item-icon,.app-nav-drawer .ant-menu-item .ant-menu-item-icon{color:inherit!important}.app-main-layout{margin-left:var(--app-sider-width);width:calc(100% - var(--app-sider-width));height:100vh;overflow:hidden}.app-main-layout-mobile{width:100%;margin-left:0}.app-brand{align-items:center;padding:20px 16px 18px;display:flex}.app-brand-drawer{padding:0 0 18px}.brand-main{flex-wrap:nowrap;align-items:center;gap:12px;min-width:0;display:inline-flex}.brand-title{white-space:nowrap;letter-spacing:.02em;color:var(--brand)!important;margin:0!important;line-height:1.2!important}.brand-stamp{width:34px;height:34px;color:var(--heritage-stamp-ink);font-family:var(--font-serif);text-align:center;border:3px solid var(--heritage-stamp-ink);background:linear-gradient(180deg, var(--heritage-stamp-wash-top), var(--heritage-stamp-wash-bottom));box-shadow:0 1px 0 var(--heritage-stamp-shadow-top), 0 2px 4px var(--heritage-stamp-shadow-drop), inset 0 0 0 1px var(--heritage-stamp-shadow-inset);text-shadow:0 0 .5px var(--heritage-stamp-text-shadow);border-radius:2px;flex:none;justify-content:center;align-items:center;font-size:10px;font-weight:700;line-height:1.08;display:flex;position:relative;transform:rotate(-2.5deg)}.brand-stamp:after{content:"";border:1px solid var(--heritage-stamp-outline);pointer-events:none;border-radius:1px;position:absolute;inset:3px}.app-header{border-bottom:1px solid var(--panel-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;min-height:72px;display:flex;background:var(--shell-header-bg)!important;height:auto!important;padding:14px 20px!important;line-height:normal!important}.header-main{flex:420px;align-items:center;gap:12px;min-width:0;display:flex}.header-title-block{align-items:center;min-width:0;display:flex}.header-breadcrumb{color:var(--brand-muted);white-space:nowrap;align-items:center;gap:6px;font-size:13px;line-height:1.3;display:flex}.header-user{cursor:pointer;align-items:center;min-width:0;padding:4px 0}.header-user-meta{flex-direction:column;min-width:0;line-height:1.25;display:flex}.header-username{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-weight:600;overflow:hidden}.header-user-role{font-size:12px;line-height:1.2}.family-switcher{width:min(260px,100%)}.tenant-card-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.tenant-card{box-shadow:var(--panel-shadow-soft);border:1px solid var(--panel-border)!important;background:var(--shell-card-bg)!important;border-radius:18px!important}.tenant-card-body{flex-direction:column;gap:18px;display:flex}.tenant-card-main{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.tenant-card-title{color:var(--brand-deep)!important;margin:0!important}.tenant-card-stats{border-top:1px dashed var(--border-subtle);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:14px;display:grid}.app-content{flex:auto;min-height:0;padding:20px;overflow:hidden auto}.cemetery-map-canvas,.cemetery-map-preview-canvas{border:1px solid var(--panel-border);background:linear-gradient(180deg, var(--shell-map-grad-top), var(--shell-map-grad-bottom)), var(--surface);border-radius:16px;width:100%;min-height:240px;overflow:hidden}.cemetery-map-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.cemetery-picker-status{border:1px solid var(--panel-border);background:linear-gradient(180deg, var(--shell-status-grad-top), var(--shell-status-grad-bottom)), var(--surface);border-radius:14px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.cemetery-picker-status-main{flex-direction:column;gap:8px;display:flex}.cemetery-search-item{cursor:default}.cemetery-search-item-active{background:var(--info-bg)}.cemetery-search-item-active .ant-list-item-meta-title{color:var(--info)}.cemetery-search-list{border-radius:14px;margin-top:10px;overflow:hidden}.cemetery-preview-card{height:fit-content}.member-overview-base-grid{grid-template-columns:minmax(0,1.55fr) minmax(280px,.95fr);align-items:start;gap:20px;display:grid}.member-overview-base-descriptions{min-width:0}.page-center{justify-content:center;align-items:center;min-height:60vh;display:flex}.page-stack{flex-direction:column;gap:16px;display:flex}.soft-panel{box-shadow:var(--panel-shadow-soft);border:1px solid var(--panel-border)!important;background:var(--shell-card-bg)!important;border-radius:20px!important}.soft-panel .ant-card-head{border-bottom-color:var(--panel-border)!important;background:0 0!important}.soft-panel .ant-card-body{position:relative}.soft-panel .ant-table,.soft-panel .ant-table-container,.soft-panel .ant-table-content,.soft-panel .ant-table-body,.soft-panel .ant-table-tbody>tr>td,.soft-panel .ant-list,.soft-panel .ant-list-items,.soft-panel .ant-list-item{background:0 0!important}.soft-panel .ant-table-thead>tr>th{border-bottom-color:var(--panel-border)!important;background:var(--surface-muted)!important;color:var(--text-primary)!important}.soft-panel .ant-table-tbody>tr>td,.soft-panel .ant-list-item{color:var(--text-primary);border-bottom-color:#d9c6aa94!important}.soft-panel .ant-table-tbody>tr:hover>td{background:#f7eddfad!important}.soft-panel .ant-empty-description,.soft-panel .ant-list-item-meta-description,.soft-panel .ant-table-cell .ant-typography-secondary{color:var(--text-muted)!important}.soft-panel .ant-descriptions-view,.soft-panel .ant-descriptions-item-label,.soft-panel .ant-descriptions-item-content{border-color:var(--panel-border)!important;background:0 0!important}.soft-panel .ant-descriptions-item-label{color:var(--text-muted)!important}.soft-panel .ant-tabs-nav:before{border-bottom-color:var(--panel-border)!important}.page-hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.page-hero-copy{flex-direction:column;flex:360px;gap:6px;min-width:0;display:flex}.page-eyebrow{letter-spacing:.08em;color:var(--brand-muted);text-transform:uppercase;font-size:12px}.page-hero-title{color:var(--brand-deep)!important;margin:0!important}.page-hero-desc{line-height:1.7;color:var(--text-secondary)!important;margin:0!important}.page-hero-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.member-hero-loading{align-items:center;gap:16px;display:flex}.member-hero-loading-copy{flex-direction:column;gap:10px;display:flex}.member-hero-loading-title{max-width:100%;width:220px!important}.member-hero-loading-desc{max-width:100%;width:280px!important}.member-overview-pills{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.member-overview-pill{border:1px solid var(--brand-weak-border);background:var(--surface-muted);min-height:32px;color:var(--text-secondary);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-size:13px;line-height:1.2;transition:border-color .2s,background-color .2s,transform .2s;display:inline-flex}.member-overview-pill:hover{border-color:var(--brand-medium-border);background:var(--surface-alpha-98);transform:translateY(-1px)}.filter-panel{flex-direction:column;gap:16px;display:flex}.filter-panel-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.filter-panel-title{color:var(--brand-deep)!important;margin:0!important}.filter-panel-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.filter-grid-compact{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-grid.members-filter-grid{grid-template-columns:minmax(260px,1fr) minmax(112px,136px) minmax(136px,160px) max-content;align-items:center}.members-filter-actions{flex-wrap:nowrap;justify-content:flex-end}.filter-advanced{border-top:1px dashed var(--border-subtle);padding-top:12px}.filter-chip-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.results-hint{color:var(--brand-muted)!important}.mobile-list{flex-direction:column;gap:12px;display:flex}.mobile-list-card{border:1px solid var(--panel-border);background:var(--shell-card-bg);box-shadow:var(--panel-shadow-soft);border-radius:18px}.mobile-list-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.mobile-list-title{color:var(--brand-deep);font-size:16px;font-weight:700}.member-name-deceased,.mobile-list-title a.member-name-deceased{color:var(--text-disabled)}.member-name-deceased:hover,.mobile-list-title a.member-name-deceased:hover{color:var(--text-disabled-hover)}.mobile-list-meta{flex-direction:column;gap:8px;display:flex}.mobile-list-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.mobile-list-label{color:var(--text-muted);flex:none}.mobile-list-value{text-align:right;min-width:0}.mobile-list-actions{margin-top:4px}.mobile-list-actions>*{flex:calc(50% - 8px)}.sticky-toolbar{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0}.sticky-toolbar-inner{border:1px solid var(--panel-border);background:var(--shell-card-bg);box-shadow:var(--panel-shadow-soft);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.sticky-toolbar-context{flex-direction:column;gap:4px;display:flex}.sticky-toolbar-actions{justify-content:flex-end}.section-stack{flex-direction:column;gap:16px;display:flex}.section-summary-card{border:1px dashed var(--border-subtle);background:var(--surface-muted);border-radius:18px}.stat-card{box-shadow:var(--panel-shadow-soft);border:1px solid var(--panel-border)!important;background:var(--shell-stat-card-bg)!important}.stat-card .ant-card-body{align-items:center;min-height:112px;display:flex}.stat-card .ant-statistic-title{color:var(--text-muted)!important}.stat-card .ant-statistic-content{color:var(--text-primary)!important}.stat-card .ant-statistic-content-prefix{color:var(--brand-deep)}.graph-panel{border-radius:inherit;background:linear-gradient(135deg, var(--surface-alpha-98) 0%, var(--surface-cool-238) 100%);height:72vh;min-height:560px;overflow:hidden}.graph-canvas-shell{border:1px solid var(--panel-border);background:var(--shell-card-bg);height:72vh;min-height:560px;box-shadow:var(--panel-shadow-soft);border-radius:20px;position:relative;overflow:hidden}:is(.graph-canvas-shell:fullscreen,.graph-canvas-shell:fullscreen,.graph-canvas-shell.is-fullscreen){background:linear-gradient(135deg, var(--surface-alpha-98) 0%, var(--surface-cool-238) 100%);border:0;border-radius:0;width:100vw;height:100vh;min-height:100vh;padding:0}:is(.graph-canvas-shell:fullscreen .graph-panel,.graph-canvas-shell:fullscreen .graph-panel,.graph-canvas-shell.is-fullscreen .graph-panel){border-radius:0;width:100%;height:100%;min-height:0}.graph-canvas-toolbar{z-index:3;border:1px solid var(--panel-border);background:var(--surface-alpha-90);box-shadow:var(--panel-shadow-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:6px;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.graph-canvas-toolbar .ant-btn{width:34px;height:34px;padding:0}.graph-canvas-legend{z-index:3;border:1px solid var(--panel-border);background:var(--surface-alpha-88);max-width:min(720px,100% - 84px);box-shadow:var(--panel-shadow-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:8px;flex-wrap:wrap;gap:10px 12px;padding:8px 10px;display:flex;position:absolute;bottom:12px;left:12px}.graph-node-tooltip{min-width:160px;max-width:260px;color:var(--text-primary);padding:10px 12px}.graph-node-tooltip-name{color:var(--brand);font-size:15px;font-weight:700;line-height:1.35}.graph-node-tooltip-meta{color:var(--text-secondary);margin-top:4px;font-size:13px;line-height:1.5}.graph-node-tooltip-tags{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.graph-node-tooltip-tags span{background:var(--warning-bg);color:var(--warning);border-radius:999px;padding:2px 7px;font-size:12px;font-weight:600}.graph-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.graph-toolbar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.graph-legend{flex-wrap:wrap;gap:12px;display:flex}.graph-legend-item{color:var(--text-secondary);align-items:center;gap:8px;display:inline-flex}.graph-legend-dot,.graph-legend-line{flex:none}.graph-legend-dot{border-radius:999px;width:12px;height:12px}.graph-legend-line{border-radius:999px;width:18px;height:3px}.graph-summary-card{background:var(--shell-card-bg);box-shadow:inset 0 1px 0 var(--surface-inset-glow)}.graph-summary-title{color:var(--text-primary)!important}.graph-summary-name{color:var(--brand);font-size:24px;line-height:1.2}.graph-summary-meta{font-size:15px;color:var(--text-secondary)!important}.graph-summary-stat{font-size:15px;font-weight:600;color:var(--brand)!important}.graph-summary-divider{background:linear-gradient(90deg, var(--summary-divider-start), var(--summary-divider-end));width:100%;height:1px}.member-select .ant-select-selector{min-height:40px}.member-select .ant-select-selection-item{font-weight:500}.member-select-option-line{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:4px;min-width:0;display:flex;overflow:hidden}.member-select-option-name{color:var(--text-primary);flex:none;font-weight:600}.member-select-option-native{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.kinship-member-side{border:1px solid var(--panel-border);border-radius:12px;flex-direction:column;gap:8px;padding:10px;display:flex}.kinship-member-side-title{font-size:13px;font-weight:600;line-height:1.25}.kinship-member-side-left{background:linear-gradient(135deg, var(--info-surface-blend-start), var(--surface-alpha-96));border-color:var(--info-surface-border)}.kinship-member-side-left .kinship-member-side-title{color:var(--info)}.kinship-member-side-right{background:linear-gradient(135deg, var(--danger-surface-blend-start), var(--surface-alpha-96));border-color:var(--danger-surface-border)}.kinship-member-side-right .kinship-member-side-title{color:var(--danger)}.kinship-preset-row{flex-wrap:wrap;gap:8px;display:flex}.changelog-empty{padding:28px 0}.changelog-timeline{margin-top:4px}.changelog-timeline-dot{color:var(--brand);font-size:14px}.changelog-entry-card{background:var(--shell-card-bg);border:1px solid var(--panel-border)}.changelog-entry-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.changelog-entry-version{color:var(--brand-deep);font-size:17px;line-height:1.25}.changelog-entry-summary{color:var(--text-secondary);line-height:1.6}.changelog-entry-changes ul{margin:8px 0 0 18px;padding:0}.changelog-entry-changes li{color:var(--text-secondary);word-break:break-word;line-height:1.6}.changelog-change-item{align-items:flex-start;gap:8px;margin-left:-18px;list-style:none;display:flex}.changelog-change-item+.changelog-change-item{margin-top:6px}.changelog-change-tag{text-align:center;flex:none;min-width:88px;margin-right:0!important}.member-photo-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;display:grid}.member-photo-card{border:1px solid var(--panel-border);background:var(--shell-card-bg);border-radius:16px;flex-direction:column;gap:10px;min-width:0;padding:12px;display:flex}.member-detail-tabs .ant-tabs-nav{margin-bottom:8px!important}.member-detail-tabs .ant-tabs-nav-wrap{overflow-x:auto}.member-asset-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.member-asset-toolbar-actions{justify-content:flex-end}.member-asset-body{flex-direction:column;gap:8px;min-width:0;display:flex}.member-parent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.member-parent-card{border:1px solid var(--panel-border);background:var(--surface-muted);border-radius:12px;align-items:center;gap:8px;min-width:0;padding:10px 12px;display:flex}.member-parent-card a{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.member-asset-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.member-asset-subtitle{line-height:1.5;display:block}.member-asset-description{line-height:1.65;color:var(--text-secondary)!important;margin:0!important}.member-asset-list-desc{flex-direction:column;gap:8px;display:flex}.member-asset-inline-note{border:1px solid var(--panel-border);background:var(--surface-muted);border-radius:12px;padding:12px 14px}.member-request-asset-item,.member-request-asset-meta{flex-direction:column;gap:6px;display:flex}.import-batch-drawer .ant-drawer-header{border-bottom-color:var(--panel-border)!important}.import-batch-drawer .ant-drawer-body{background:var(--background);padding:14px!important}.import-batch-drawer-list .ant-list-items{flex-direction:column;gap:12px;display:flex}.import-batch-record-list-item{border:0!important;margin:0!important;padding:0!important}.import-batch-record-card{box-shadow:var(--panel-shadow-soft);border:1px solid var(--panel-border)!important;background:var(--shell-card-bg)!important;border-radius:16px!important}.import-batch-record-card .ant-card-body{flex-direction:column;gap:10px;display:flex;padding:14px 14px 12px!important}.import-batch-record-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.import-batch-record-member{font-size:15px;line-height:1.45;color:var(--brand-deep)!important}.import-batch-record-meta{flex-direction:column;gap:4px;display:flex}.import-batch-record-meta-line{line-height:1.6;margin:0!important}.import-batch-record-warning{border:1px solid var(--warning-border);background:var(--warning-bg);border-radius:10px;padding:8px 10px}.import-batch-record-actions{width:100%;margin-top:2px}.member-event-item{flex-direction:column;gap:8px;padding-bottom:8px;display:flex}.member-event-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.member-event-desc{line-height:1.65;color:var(--text-secondary)!important;margin:0!important}.asset-library-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.asset-library-tag-wall{flex-wrap:wrap;gap:8px;display:flex}.asset-library-filter-tag{cursor:pointer;margin-inline-end:0!important}.asset-library-card{height:100%;overflow:hidden;border:1px solid var(--panel-border)!important;background:var(--shell-card-bg)!important;border-radius:18px!important}.asset-library-card-selected{box-shadow:0 0 0 2px var(--brand-focus-ring);border-color:var(--brand-strong-border)!important}.asset-library-card .ant-card-body{flex-direction:column;gap:12px;min-height:320px;display:flex}.asset-library-cover{background:linear-gradient(135deg, var(--brand-info-blend-start), var(--brand-info-blend-end));height:220px;overflow:hidden}.asset-library-cover .ant-image,.asset-library-cover .ant-image-img{width:100%;height:220px}.asset-library-cover-doc{justify-content:center;align-items:flex-start;gap:18px;padding:26px 28px;display:flex}.asset-library-cover-doc .ant-avatar{flex:none}.asset-library-doc-info{flex-direction:column;align-items:flex-start;gap:12px;min-width:0;display:flex}.asset-library-doc-name{word-break:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.55;display:-webkit-box;overflow:hidden;color:var(--text-primary)!important}.asset-library-doc-size{background:var(--neutral-overlay-soft);border-radius:999px;align-items:center;width:fit-content;padding:4px 9px;font-size:12px;line-height:1.4;display:inline-flex;color:var(--text-muted)!important}.asset-library-card-body{flex-direction:column;flex:auto;gap:10px;display:flex}.asset-library-select{justify-content:flex-end;display:flex}.asset-library-title{color:var(--text-primary)!important;margin:0!important;line-height:1.4!important}.asset-library-subline{line-height:1.55;display:block}.asset-library-description{line-height:1.7;color:var(--text-secondary)!important;margin:0!important}.asset-library-meta-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;display:flex}.asset-library-admin-actions{margin-top:4px}.asset-library-pagination{justify-content:center;margin-top:20px;display:flex}.asset-library-pagination-actions{justify-content:center}.asset-library-compact .asset-library-card .ant-card-body{gap:10px;min-height:260px}.asset-library-compact .asset-library-cover,.asset-library-compact .asset-library-cover .ant-image,.asset-library-compact .asset-library-cover .ant-image-img{height:180px}.asset-library-compact .asset-library-cover-doc{gap:14px;padding:22px 24px}.asset-library-compact .asset-library-doc-info{gap:10px}.asset-library-compact .asset-library-cover-doc .ant-avatar{min-width:60px;width:60px!important;height:60px!important;font-size:26px!important}.asset-library-compact .asset-library-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.login-page{isolation:isolate;background-color:#f5ead8;background-image:linear-gradient(#fffaf194,#f5e8cf5c),url(/background.png);background-position:50%,bottom;background-repeat:no-repeat,no-repeat;background-size:cover,cover;justify-content:center;align-items:center;height:100svh;min-height:0;padding:clamp(14px,4vh,56px) clamp(18px,5vw,76px);display:flex;position:relative;overflow:hidden}.login-page:before{z-index:-3;pointer-events:none;content:"";background-image:radial-gradient(circle at 12% 78%,#8162401a 0 1px,#0000 1.6px),radial-gradient(circle at 82% 18%,#81624014 0 1px,#0000 1.8px),linear-gradient(90deg,#774c2509 1px,#0000 1px),linear-gradient(0deg,#774c2506 1px,#0000 1px);background-size:34px 34px,42px 42px,180px 180px,180px 180px;position:absolute;inset:0}.login-page:after{z-index:-2;pointer-events:none;content:"";opacity:.9;background:radial-gradient(at 8% 100%,#9b7c4e2e,#0000 36%),radial-gradient(at 88% 94%,#705b4129,#0000 44%),linear-gradient(#0000 0%,#d6be972e 100%);height:42%;position:absolute;inset:auto 0 0}.login-bg-scene{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.login-mountain{opacity:.34;filter:blur(.2px);width:44vw;min-width:420px;height:72vh;position:absolute;bottom:0}.login-mountain:before,.login-mountain:after{content:"";clip-path:polygon(0 100%,20% 48%,34% 62%,51% 18%,69% 57%,82% 36%,100% 100%);background:linear-gradient(145deg,#5c564b57,#8b775814 42%,#0000 68%);position:absolute}.login-mountain:before{inset:12% 0 0}.login-mountain:after{opacity:.72;inset:28% 8% 0 14%;transform:scaleX(-1)}.login-mountain-left{left:-7vw}.login-mountain-right{right:-9vw;transform:scaleX(-1)}.login-pavilion{opacity:.28;width:92px;height:58px;position:absolute}.login-pavilion:before{content:"";border-bottom:4px solid #634c356b;border-radius:50% 50% 0 0;height:18px;position:absolute;inset:8px 0 auto;transform:skew(-12deg)}.login-pavilion:after{content:"";border:2px solid #634c3557;border-top:0;position:absolute;inset:28px 18px 0}.login-pavilion-left{bottom:18vh;left:7vw}.login-pavilion-right{bottom:25vh;right:7vw;transform:scale(1.05)}.login-birds{color:#5745315c;letter-spacing:9px;font-family:Georgia,serif;font-size:24px;position:absolute;transform:rotate(-10deg)}.login-birds-one{top:14%;right:10%}.login-birds-two{font-size:18px;top:23%;right:7%}.login-card{z-index:1;-webkit-backdrop-filter:blur(10px)saturate(1.08);backdrop-filter:blur(10px)saturate(1.08);isolation:isolate;background:#fffaf057;border:1px solid #fff6e59e;border-radius:22px;grid-template-columns:minmax(0,.98fr) minmax(470px,1.02fr);width:min(1400px,100%);min-width:0;height:min(760px,100%);min-height:0;animation:.68s cubic-bezier(.22,1,.36,1) both login-card-enter;display:grid;position:relative;overflow:hidden;box-shadow:0 34px 92px #58351a33,0 12px 34px #78522e1f,inset 0 1px #ffffff61}.login-card:before{z-index:2;pointer-events:none;content:"";mix-blend-mode:screen;background:linear-gradient(120deg,#ffffff2e,#0000 28% 72%,#ffffff14),radial-gradient(circle at 50% 0,#fff8e62e,#0000 38%);position:absolute;inset:0}.login-card:after{z-index:2;pointer-events:none;content:"";border:1px solid #fff4dc29;border-radius:16px;position:absolute;inset:14px}.login-hero{color:#fff7ef;-webkit-backdrop-filter:blur(2px)saturate(1.06);backdrop-filter:blur(2px)saturate(1.06);background:linear-gradient(90deg,#34140f3d,#0000 30%,#34140f1f),radial-gradient(circle at 82% 72%,#e8a7561f,#0000 28%),radial-gradient(circle at 12% 8%,#df8f5c21,#0000 25%),linear-gradient(145deg,#7d261ebd 0%,#8f3328a8 48%,#5b1d18c2 100%);flex-direction:column;justify-content:space-between;gap:clamp(18px,3vh,36px);min-width:0;height:100%;min-height:0;padding:clamp(24px,min(4vw,4vh),64px);animation:.9s cubic-bezier(.22,1,.36,1) .12s both login-panel-drift;display:flex;position:relative;overflow:hidden}.login-hero:before{z-index:0;content:"";mix-blend-mode:screen;opacity:.55;background:linear-gradient(135deg,#ffffff0b 1px,#0000 1px) 0 0/18px 18px,radial-gradient(circle at 32% 22%,#ffdda317,#0000 26%);position:absolute;inset:0}.login-hero:after{z-index:0;content:"";clip-path:polygon(0 72%,17% 58%,31% 64%,46% 43%,64% 53%,78% 22%,100% 52%,100% 100%,0 100%);opacity:.8;background:radial-gradient(at 50% 100%,#311e1261,#0000 63%),linear-gradient(#fcd69a29,#2a160f80);width:70%;height:48%;position:absolute;bottom:-9%;right:-14%}.login-hero-copy,.login-feature-list{z-index:2;position:relative}.login-hero-copy{max-width:570px;animation:.72s cubic-bezier(.22,1,.36,1) .12s both login-content-enter}.login-hero-seal{opacity:.34;border:1px solid #3c16122e;border-radius:4px;width:180px;height:230px;position:absolute;top:18%;right:8%}.login-hero-seal:before,.login-hero-seal:after{content:"";border:1px solid #2b110f38;position:absolute;inset:20px}.login-hero-seal:after{border-color:#2b110f24;inset:42px}.login-hero-script{z-index:1;color:#2a0c083d;font-family:var(--font-serif);writing-mode:vertical-rl;grid-template-columns:repeat(2,auto);gap:16px 24px;font-size:30px;display:grid;position:absolute;top:17%;right:16%}.login-title{color:#f7dfb6;max-width:560px;font-family:var(--font-brush);letter-spacing:.1em;text-shadow:0 1px #fff0c63d,0 3px #5423132e,0 12px 28px #1908054d;margin:clamp(18px,3vh,28px) 0 clamp(10px,2vh,18px);font-size:clamp(46px,min(5.1vw,7vh),76px);font-weight:700;line-height:1.12}.login-title-line{white-space:nowrap;width:6.6em;display:block}.login-hero-desc{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:linear-gradient(90deg,#4e1d1457,#8f412d24 72%,#0000),#ffe7b70a;border-left:3px solid #f2ca84b8;flex-direction:column;gap:clamp(8px,1.3vh,12px);max-width:620px;padding:clamp(12px,2vh,16px) clamp(14px,2vw,20px);display:flex;box-shadow:inset 0 1px #ffebc014;color:#fff7e9e6!important;margin:0!important}.login-hero-quote{color:#ffe3aa;font-family:var(--font-serif);letter-spacing:.06em;text-shadow:0 2px 8px #2d0e093d;margin-bottom:2px;font-size:clamp(17px,min(1.8vw,2.5vh),22px);font-weight:800;line-height:1.35;display:block}.login-hero-text{color:#fff7e9e6;font-family:var(--font-sans);letter-spacing:.03em;font-size:clamp(13px,min(1.15vw,1.9vh),16px);font-weight:500;line-height:1.75;display:block}.login-feature-list{flex-direction:column;gap:clamp(12px,2vh,18px);max-width:530px;display:flex}.login-feature-card{animation:.68s cubic-bezier(.22,1,.36,1) both login-content-enter}.login-feature-card:first-child{animation-delay:.26s}.login-feature-card:nth-child(2){animation-delay:.38s}.login-feature-card{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:linear-gradient(90deg,#431f1466,#9d653142),#7a3d1f57;border:1px solid #ddab5b94;grid-template-columns:72px 1fr;align-items:center;gap:18px;min-height:clamp(84px,11vh,104px);padding:clamp(12px,2vh,18px) 24px;display:grid;position:relative;box-shadow:inset 0 1px #ffe1ac38,0 12px 34px #230d0829}.login-feature-card>div{min-width:0}.login-feature-card:before,.login-feature-card:after{content:"";border-style:solid;border-color:#e2b366c7;width:16px;height:16px;position:absolute}.login-feature-card:before{border-width:2px 0 0 2px;top:-1px;left:-1px}.login-feature-card:after{border-width:0 2px 2px 0;bottom:-1px;right:-1px}.login-feature-icon{color:#f6d294;background:#401b123d;border:1px solid #f6d294bd;border-radius:999px;justify-content:center;align-items:center;width:56px;height:56px;font-size:30px;display:inline-flex}.login-feature-title{font-family:var(--font-sans);margin-bottom:6px;font-size:18px;font-weight:700;display:block;color:#fff3dd!important}.login-feature-desc{font-family:var(--font-sans);line-height:1.62;color:#fff1d7d1!important;margin:0!important}.login-book{z-index:1;aspect-ratio:16/10;filter:sepia(.28)saturate(.82)contrast(.78)brightness(.94);mix-blend-mode:normal;transform-origin:48% 100%;opacity:.52;-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;background:linear-gradient(115deg,#782f2333,#bc5c4214 38%,#3d191224),url(/book.png) 50%/cover no-repeat;width:min(820px,122%);animation:.82s cubic-bezier(.22,1,.36,1) .48s both login-book-enter;position:absolute;bottom:-84px;left:-34px;right:auto;overflow:hidden;transform:rotate(-3deg);box-shadow:0 28px 64px #220d0824,inset 0 1px #ffe3ab33;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#00000057 8%,#000 24% 76%,#0000006b 88%,#0000 100%),linear-gradient(#0000 0%,#00000057 12%,#000 34% 78%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#00000057 8%,#000 24% 76%,#0000006b 88%,#0000 100%),linear-gradient(#0000 0%,#00000057 12%,#000 34% 78%,#0000 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.login-book:before{content:"";pointer-events:none;background:radial-gradient(at 50% 48%,#0000 0 32%,#84372857 66%,#5b1f18bd 100%),linear-gradient(#993d2d29,#3e16106b);position:absolute;inset:0}.login-form-panel{-webkit-backdrop-filter:blur(5px)saturate(1.02);backdrop-filter:blur(5px)saturate(1.02);background:radial-gradient(circle at 86% 13%,#e8cca61f,#0000 22%),linear-gradient(#fffdf794,#f9f0e070);justify-content:center;align-items:center;min-width:0;height:100%;min-height:0;padding:clamp(24px,min(4vw,4vh),58px);animation:.9s cubic-bezier(.22,1,.36,1) .22s both login-panel-drift;display:flex;position:relative}.login-form-panel:before{z-index:0;pointer-events:none;content:"";opacity:.72;background:radial-gradient(at 88% 10%,#0000 0 18%,#d8ab6f24 18.5% 19%,#0000 19.5%),radial-gradient(at 94% 13%,#0000 0 16%,#d8ab6f1c 16.5% 17%,#0000 17.5%),linear-gradient(135deg,#a97a451f 1px,#0000 1px) 0 0/58px 58px;position:absolute;inset:0}.login-cloud-art{z-index:0;pointer-events:none;opacity:.72;filter:sepia(.22)saturate(.8)contrast(.92)brightness(.96);transform-origin:88% 12%;-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;background:linear-gradient(118deg,#d8aa6733,#d8aa670f 38%,#64422924),url(/xiangyun.jpg) 50%/cover no-repeat;width:min(360px,46%);height:min(212px,31%);display:block;position:absolute;top:clamp(10px,2.2vh,28px);right:clamp(-20px,-1.2vw,2px);transform:rotate(2deg);-webkit-mask-image:linear-gradient(90deg,#0000 0%,#00000057 12%,#000 30% 82%,#00000075 92%,#0000 100%),linear-gradient(#0000 0%,#0000004d 16%,#000 34% 78%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#00000057 12%,#000 30% 82%,#00000075 92%,#0000 100%),linear-gradient(#0000 0%,#0000004d 16%,#000 34% 78%,#0000 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.login-form-frame{z-index:1;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:radial-gradient(circle at 88% 30%,#97764e14,#0000 23%),linear-gradient(#fffcf675,#fff8ee47);border:1px solid #d6b07785;width:min(500px,100%);padding:clamp(22px,min(4vw,3.8vh),46px) clamp(24px,4vw,44px);animation:.72s cubic-bezier(.22,1,.36,1) .18s both login-content-enter;position:relative;box-shadow:0 18px 48px #5c371c1a,inset 0 1px #fff6}.login-form-frame:before,.login-form-frame:after{content:"";background:linear-gradient(90deg,#0000,#bd7e488a,#0000);width:70%;height:1px;position:absolute;left:50%;transform:translate(-50%)}.login-form-frame:before{top:18px}.login-form-frame:after{bottom:18px}.login-corner{--silk-gold:#d4a84b;--silk-gold-mid:#c4984bb8;--silk-gold-soft:#c4984b59;--silk-gold-dim:#b4873a2e;z-index:2;pointer-events:none;width:56px;height:56px;position:absolute}.login-corner:before,.login-corner:after{content:"";position:absolute}.login-corner:before{border-top:1.5px solid var(--silk-gold-mid);border-left:1.5px solid var(--silk-gold-mid);box-shadow:inset 1.5px 1.5px 0 var(--silk-gold-dim);border-radius:1px 0 0;inset:4px}.login-corner:after{background:linear-gradient(var(--silk-gold-soft) 0 0) 0 0 / 22px 1px no-repeat, linear-gradient(var(--silk-gold-soft) 0 0) 0 0 / 1px 22px no-repeat, linear-gradient(135deg, transparent 47%, var(--silk-gold-mid) 47%, var(--silk-gold-mid) 53%, transparent 53%) 8px 8px / 14px 14px no-repeat, linear-gradient(45deg, transparent 47%, var(--silk-gold-soft) 47%, var(--silk-gold-soft) 53%, transparent 53%) 8px 8px / 14px 14px no-repeat, linear-gradient(var(--silk-gold-soft) 0 0) 9px 16px / 12px 1px no-repeat, linear-gradient(var(--silk-gold-soft) 0 0) 16px 9px / 1px 12px no-repeat, linear-gradient(var(--silk-gold-mid) 0 0) 17px 17px / 8px 1px no-repeat, linear-gradient(var(--silk-gold-mid) 0 0) 17px 17px / 1px 8px no-repeat, radial-gradient(circle at 19px 7px, var(--silk-gold) 1.8px, transparent 2.5px), radial-gradient(circle at 7px 19px, var(--silk-gold) 1.8px, transparent 2.5px), radial-gradient(circle at 23px 23px, var(--silk-gold) 2px, transparent 2.8px), radial-gradient(circle at 15px 15px, var(--silk-gold) 1.5px, transparent 2px);inset:10px}.login-corner-tl{top:0;left:0}.login-corner-tr{top:0;right:0;transform:scaleX(-1)}.login-corner-bl{bottom:0;left:0;transform:scaleY(-1)}.login-corner-br{bottom:0;right:0;transform:scale(-1)}.login-form-heading{text-align:center;flex-direction:column;align-items:center;margin-bottom:clamp(18px,3vh,28px);display:flex}.login-form-heading h2{color:#2f1b14;font-family:var(--font-brush);letter-spacing:.22em;margin:0;font-size:clamp(32px,min(4vw,5vh),44px);font-weight:800}.login-heading-rule{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 28' fill='none' stroke='%23a54c36' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M32 14c6-8 14-8 20 0c-6 8-14 8-20 0Z'/%3E%3Cpath d='M68 14c6-8 14-8 20 0c-6 8-14 8-20 0Z'/%3E%3Cpath d='M60 8l6 6-6 6-6-6 6-6Z'/%3E%3Cpath d='M56 22l4-4 4 4'/%3E%3Cpath d='M56 6l4 4 4-4'/%3E%3C/svg%3E") 50%/78px 16px no-repeat;width:min(420px,90%);height:18px;margin:clamp(14px,2vh,20px) 0 clamp(12px,2vh,18px);position:relative}.login-heading-rule:before,.login-heading-rule:after{content:"";background:linear-gradient(90deg,#a54c360a,#a54c364d);height:1px;position:absolute;top:50%;transform:translateY(-50%)}.login-heading-rule:before{width:calc(50% - 44px);left:0}.login-heading-rule:after{background:linear-gradient(90deg,#a54c364d,#a54c360a);width:calc(50% - 44px);right:0}.login-form-subtitle{font-family:var(--font-sans);line-height:1.7;color:#8f7c68!important}.login-demo-box{background:radial-gradient(circle at 88% 46%,#775c3929,#0000 28%),linear-gradient(135deg,#fceed9f5,#f7e6ccc2);border:1px solid #e2c499f5;border-radius:9px;grid-template-columns:36px 1fr;gap:12px;margin-bottom:clamp(16px,2.4vh,24px);padding:clamp(16px,2.4vh,20px) 24px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff9e}.login-demo-box:after{content:none}.login-demo-icon{color:#9a2d27;justify-content:center;align-items:center;width:32px;height:32px;font-size:28px;display:inline-flex}.login-demo-title{font-family:var(--font-sans);margin-bottom:6px;font-size:17px;font-weight:700;display:block;color:#43261b!important}.login-demo-box p{z-index:1;color:#6a4735;font-family:var(--font-sans);margin:4px 0 0;font-size:15px;line-height:1.45;position:relative}.login-form .ant-form-item{margin-bottom:clamp(14px,2vh,18px)}.login-form .ant-form-item-label>label{color:#714d35;font-weight:600;font-family:var(--font-sans)}.login-page :where(.ant-input-affix-wrapper){background:#fffcf7d6;border-color:#dab88bf5;border-radius:8px;height:clamp(46px,6vh,50px);padding:0 16px;box-shadow:inset 0 1px 2px #643d200a}.login-page :where(.ant-input-affix-wrapper:hover),.login-page :where(.ant-input-affix-wrapper-focused){border-color:#972a2594;box-shadow:0 0 0 3px #972a2517}.login-page :where(.ant-input-prefix){color:#7b4e35;margin-inline-end:12px;font-size:18px}.login-page :where(.ant-input){color:#3f2a1d;background:0 0}.login-form-options{color:#6d4b35;justify-content:space-between;align-items:center;gap:12px;margin:-2px 0 clamp(14px,2vh,18px);display:flex}.login-forgot-button{color:#6d4b35;font:inherit;font-family:var(--font-sans);cursor:pointer;background:0 0;border:0;padding:0}.login-forgot-button:hover{color:#9a2d27}.login-btn-knot-wrap{margin:4px 0;line-height:0;position:relative}.login-btn-knot{z-index:3;pointer-events:none;--knot-red:#d4a017;--knot-gold:#eecb77e6;--knot-gold-light:#eecb7780;width:28px;height:28px;position:absolute}.login-btn-knot:before{content:"";border-top:2px solid var(--knot-gold);border-left:2px solid var(--knot-gold);border-radius:2px 0 0;position:absolute;inset:0}.login-btn-knot:after{content:"";background:linear-gradient(var(--knot-gold-light) 0 0) 0 0 / 12px 1.5px no-repeat, linear-gradient(var(--knot-gold-light) 0 0) 0 0 / 1.5px 12px no-repeat, linear-gradient(var(--knot-gold) 0 0) 8px 8px / 7px 1.5px no-repeat, linear-gradient(var(--knot-gold) 0 0) 8px 8px / 1.5px 7px no-repeat, radial-gradient(circle at 14px 4px, var(--knot-red) 2px, transparent 2.5px), radial-gradient(circle at 4px 14px, var(--knot-red) 2px, transparent 2.5px), radial-gradient(circle at 12px 12px, var(--knot-gold) 1.5px, transparent 2px);position:absolute;inset:4px}.login-btn-knot-tl{top:2px;left:2px}.login-btn-knot-tr{top:2px;right:2px;transform:scaleX(-1)}.login-btn-knot-bl{bottom:2px;left:2px;transform:scaleY(-1)}.login-btn-knot-br{bottom:2px;right:2px;transform:scale(-1)}.login-btn-knot-wrap .ant-btn-primary{height:clamp(48px,6vh,52px);font-family:var(--font-sans);letter-spacing:.18em;background:linear-gradient(90deg,#ffffff0f,#0000 20% 80%,#ffffff0f),linear-gradient(#c43d36 0%,#952620 60%,#7d1f19 100%);border-color:#8f2724;border-radius:4px;font-size:19px;font-weight:700;transition:all .25s;position:relative;box-shadow:inset 0 1px #ffe4c147,inset 0 -1px #0000001f,0 12px 28px #78251f42}.login-btn-knot-wrap .ant-btn-primary:hover,.login-btn-knot-wrap .ant-btn-primary:focus-visible{transform:translateY(-1px);background:linear-gradient(90deg,#ffffff1a,#0000 20% 80%,#ffffff1a),linear-gradient(#d64a42 0%,#a42d27 60%,#8b221c 100%)!important;border-color:#a7312c!important;box-shadow:inset 0 1px #ffe4c157,inset 0 -1px #00000024,0 16px 36px #78251f57!important}.login-btn-knot-wrap .ant-btn-primary:active{transform:translateY(0);box-shadow:inset 0 1px #ffe4c138,inset 0 -1px #0000001a,0 6px 14px #78251f2e!important}.login-form-footer{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:clamp(18px,3vh,28px);display:grid}.login-form-footer span:first-child,.login-form-footer span:last-child{background:linear-gradient(90deg,#0000,#c98f539e);height:1px}.login-form-footer span:last-child{background:linear-gradient(90deg,#c98f539e,#0000)}.login-form-footer .ant-typography{white-space:nowrap;font-size:14px;color:#b66c43!important}.login-stamp{color:#a64637;width:38px;height:38px;font-family:var(--font-serif);text-align:center;border:2px solid #a44637d1;justify-content:center;align-items:center;margin:clamp(12px,2vh,18px) auto 0;font-size:13px;line-height:1.15;animation:.56s cubic-bezier(.22,1,.36,1) .62s both login-stamp-enter;display:flex}.family-badge{color:#f6d59c;letter-spacing:.06em;background:#4e1c123d;border:1px solid #e6b565c2;border-radius:999px;align-items:center;gap:10px;padding:8px 22px;font-weight:700;display:inline-flex;box-shadow:inset 0 1px #ffe7b12e}.invite-page{place-items:center;min-height:100vh;padding:18px;display:grid}.invite-card{width:min(520px,100%);box-shadow:var(--panel-shadow);background:#fffaf3f5!important;border:1px solid #ead8bdeb!important;border-radius:20px!important}.invite-header{flex-direction:column;gap:6px;margin-bottom:18px;display:flex}.invite-header h2{color:var(--brand-deep)!important;margin:0!important}.invite-header .ant-typography{margin-bottom:0}.invite-form{margin-top:18px}@keyframes login-card-enter{0%{opacity:0;transform:translateY(22px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes login-panel-drift{0%{opacity:.68;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes login-content-enter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes login-book-enter{0%{opacity:0;transform:translateY(22px)rotate(-5deg)scale(.96)}to{opacity:.52;transform:translateY(0)rotate(-3deg)scale(1)}}@keyframes login-stamp-enter{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.login-card,.login-hero,.login-form-panel,.login-hero-copy,.login-feature-card,.login-book,.login-form-frame,.login-stamp{animation:none}}@media (max-width:1199px){.filter-grid,.filter-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.graph-panel{min-height:0}.graph-canvas-shell{min-height:500px}}@media (max-width:960px){.app-header{align-items:flex-start;padding:12px!important}.header-main{flex-basis:100%}.header-subtitle{white-space:normal}.header-user{margin-left:auto}.family-switcher{flex:220px}.header-user-meta{display:none}.app-content{padding:14px}.login-page{height:auto;min-height:100svh;overflow-y:auto}.page-hero{gap:16px}.page-hero-actions{justify-content:stretch;width:100%}.page-hero-actions>*{flex:auto}.member-hero-loading{align-items:flex-start;width:100%}.member-hero-loading-copy{flex:auto;min-width:0}.member-overview-pills{gap:6px}.member-detail-tabs .ant-tabs-nav-list,.filter-panel-meta{justify-content:space-between;width:100%}.filter-grid.members-filter-grid{grid-template-columns:minmax(220px,1fr) minmax(112px,136px) minmax(136px,160px)}.members-filter-actions{grid-column:1/-1;justify-content:flex-end}.sticky-toolbar-inner{align-items:stretch}.sticky-toolbar-actions{justify-content:stretch;width:100%}.sticky-toolbar-actions>*{flex:calc(50% - 8px)}.changelog-entry-card .ant-card-body{padding:14px 12px}.login-card{grid-template-columns:1fr;width:min(720px,100%);height:auto;min-height:0}.login-hero,.login-form-panel{padding:32px 24px}.login-hero{height:auto;min-height:560px}.login-form-panel{height:auto;min-height:auto}.graph-panel{min-height:0}.graph-canvas-shell{min-height:460px}.member-asset-toolbar-actions{justify-content:stretch;width:100%}.asset-library-card .ant-card-body{min-height:auto}.import-batch-record-actions>*{flex:calc(50% - 8px)}.mobile-stack{flex-direction:column;display:flex}}@media (max-width:767px){.filter-grid,.filter-grid-compact,.filter-grid.members-filter-grid{grid-template-columns:1fr}.members-filter-actions{flex-wrap:wrap;grid-column:auto;justify-content:stretch}.members-filter-actions .ant-btn{flex:calc(50% - 4px)}.sticky-toolbar{top:0}.graph-panel{height:62vh;min-height:0}.graph-canvas-shell{height:62vh;min-height:380px}.graph-canvas-toolbar{flex-direction:row;top:auto;bottom:8px;right:8px;transform:none}.graph-canvas-toolbar .ant-btn{flex:none}.graph-canvas-legend{gap:8px;max-width:none;bottom:58px;left:8px;right:8px}.member-photo-grid{grid-template-columns:1fr}.member-photo-card .ant-image,.member-photo-card .ant-image-img{width:100%!important;height:auto!important}.member-parent-grid{grid-template-columns:1fr}.member-overview-pill{flex:calc(50% - 6px)}.filter-panel-meta{align-items:stretch}.filter-panel-meta .ant-segmented,.filter-panel-meta .ant-btn,.filter-panel-meta .ant-tag{justify-content:center;width:100%}.mobile-list-actions>*,.import-batch-record-actions>*,.sticky-toolbar-actions>*{flex-basis:100%}.asset-library-pagination-actions{width:100%}.asset-library-pagination-actions>*{flex:100%}.login-page{align-items:flex-start;padding:12px}.login-card{border-radius:18px;max-width:calc(100vw - 24px)}.login-card:after{border-radius:12px;inset:8px}.login-form-panel{order:1;padding:24px 18px}.login-hero{order:2;display:none}.login-title{letter-spacing:.06em;word-break:break-all;overflow-wrap:anywhere;max-width:100%;margin:22px 0 14px;font-size:38px;line-height:1.18}.login-title-line{width:6.36em}.login-hero-desc{font-size:16px;line-height:1.7}.family-badge{white-space:normal;max-width:100%;padding:7px 14px;font-size:13px}.login-feature-list{gap:12px}.login-feature-card{grid-template-columns:48px 1fr;gap:12px;min-height:86px;padding:14px 16px}.login-feature-icon{width:42px;height:42px;font-size:22px}.login-feature-title{font-size:16px}.login-feature-desc{font-size:13px;line-height:1.55}.login-book{opacity:.5;width:360px;height:210px;bottom:-42px;right:-150px}.login-book-page{width:154px;height:164px}.login-book-page-left{right:146px}.login-book-page-right{right:18px}.login-hero-seal{width:150px;height:198px;right:-42px}.login-hero-script{opacity:.72;font-size:24px;right:18px}.login-form-frame{padding:30px 18px 26px}.login-form-heading{margin-bottom:22px}.login-form-heading h2{font-size:34px}.login-demo-box{grid-template-columns:28px 1fr;padding:16px}.login-demo-box p{font-size:13px}.login-form-options{align-items:flex-start}.login-form-footer{text-align:center;grid-template-columns:1fr;gap:8px}.login-form-footer span:first-child,.login-form-footer span:last-child{display:none}.invite-page{align-items:stretch;padding:10px}.invite-card{margin:auto 0}.cemetery-map-canvas,.cemetery-map-preview-canvas{min-height:220px}.cemetery-map-meta-grid,.cemetery-picker-status,.member-overview-base-grid{grid-template-columns:1fr}.cemetery-picker-status{flex-direction:column}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
