@charset "UTF-8";@font-face{font-family:Fraunces;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/fraunces-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/fraunces-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: radial-gradient(circle at 12% -8%, rgb(99 125 255 / .09), transparent 34%), radial-gradient(circle at 105% 105%, rgb(240 181 69 / .11), transparent 30%), linear-gradient(180deg, #f4f5f9, #e7eaf2);--surface-0: rgb(255 255 255 / .94);--surface-1: #eceef6;--surface-solid: #ffffff;--border: rgb(37 51 94 / .14);--text-strong: #171d2e;--text-muted: #565f75;--accent: #2d3d80;--accent-hover: #263468;--accent-ink: #ffffff;--accent-soft: rgb(45 61 128 / .1);--gold: #eab038;--gold-ink: #241a04;--canvas-bg: #07090f;--canvas-card: linear-gradient(160deg, #1b2233 0%, #10141f 70%);--canvas-card-solid: #141a28;--canvas-border: rgb(139 151 177 / .2);--canvas-text: #f3f6fc;--canvas-muted: #9aa5ba;--canvas-chip: rgb(255 255 255 / .07);--canvas-gold: #f0b545;--canvas-glow: 0 24px 60px rgb(13 20 40 / .38), 0 0 0 1px rgb(240 181 69 / .18);--edge: rgb(45 61 128 / .32);--dot: rgb(45 61 128 / .14);--success: #1e6b4f;--success-soft: #e2f3ea;--error: #a02c2c;--error-soft: #fbe7e7;--warning: #8a5a12;--warning-soft: #f8edd7;--font-display: "Fraunces", Georgia, serif;--font-body: "Inter", "Segoe UI", system-ui, sans-serif;--radius-s: .65rem;--radius-m: 1rem;--radius-l: 1.25rem;--radius-pill: 999px;--shadow-1: 0 2px 8px rgb(24 34 66 / .06);--shadow-2: 0 14px 38px rgb(24 34 66 / .1);--shadow-3: 0 24px 60px rgb(24 34 66 / .16);--ease: cubic-bezier(.2, .7, .3, 1);--dur-fast: .14s;--dur-med: .2s;--dur-slow: .32s;--shell-border: var(--border);--surface-shadow: var(--shadow-2);--accent-strong: var(--accent)}*,*:before,*:after{box-sizing:border-box}html,body{min-height:100%}html{background:var(--bg)}body{margin:0;min-width:0;color:var(--text-strong);font-family:var(--font-body);font-size:.95rem;line-height:1.5;background:var(--bg)}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:2px}.card,.feature-card{padding:clamp(.9rem,2.5vw,1.4rem);border:1px solid var(--border);border-radius:var(--radius-l);background:var(--surface-0);box-shadow:var(--shadow-2)}.card--interactive{transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.card--interactive:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));box-shadow:var(--shadow-3);transform:translateY(-1px)}.feature-card--full{grid-column:1/-1}.feature-card h1,.feature-card h2{margin:0 0 .75rem;font-family:var(--font-display)}.feature-card__eyebrow,.shell-dialog__eyebrow{margin:0 0 .75rem;color:var(--accent);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.feature-card__header{display:grid;gap:1rem;margin-bottom:1rem}.feature-form,.auth-social,.auth-social__buttons,.media-card__editor,.people-form__life-grid{display:grid;gap:.85rem}.auth-social{margin-bottom:1rem}.auth-social__title,.auth-social__divider,.media-card__description{margin:0;color:var(--text-muted)}.auth-social__title{font-weight:600}.auth-social__divider{display:flex;align-items:center;gap:.75rem;font-size:.9rem}.auth-social__divider:before,.auth-social__divider:after{content:"";flex:1 1 auto;height:1px;background:color-mix(in srgb,var(--border) 78%,transparent)}.btn,.primary-action,.secondary-action,.social-provider-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.7rem 1.1rem;border:1px solid transparent;border-radius:var(--radius-pill);font:inherit;font-weight:700;line-height:1.2;text-decoration:none;cursor:pointer;transition:transform var(--dur-fast) var(--ease),background-color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.btn--primary,.primary-action{color:var(--accent-ink);background:var(--accent);box-shadow:var(--shadow-1)}.btn--gold{color:var(--gold-ink);background:var(--gold)}.btn--ghost,.secondary-action,.social-provider-button{border-color:var(--border);color:var(--accent);background:var(--surface-solid)}.btn--danger{color:var(--accent-ink);background:var(--error)}.btn:hover:not(:disabled),.primary-action:hover:not(:disabled),.secondary-action:hover:not(:disabled),.social-provider-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-2)}.btn--primary:hover:not(:disabled),.primary-action:hover:not(:disabled){background:var(--accent-hover)}.btn:active:not(:disabled),.primary-action:active:not(:disabled),.secondary-action:active:not(:disabled),.social-provider-button:active:not(:disabled){transform:translateY(0)}.btn:disabled,.primary-action:disabled,.secondary-action:disabled,.social-provider-button:disabled{cursor:wait;opacity:.65}.field{display:grid;gap:.45rem;align-content:start;color:var(--text-muted);font-size:.8rem;font-weight:600}.field span{color:inherit}.field input,.field select,.field textarea{width:100%;min-height:2.75rem;align-self:start;padding:.75rem .9rem;border:1px solid var(--border);border-radius:var(--radius-s);color:var(--text-strong);background:var(--surface-solid);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.field textarea{min-height:9rem;resize:vertical}.form-supporting-grid,.media-card__header{display:grid;gap:.6rem}.form-supporting-grid__row,.people-form__death-row{display:grid;gap:.75rem}.form-inline-toggle{display:inline-flex;align-items:center;gap:.65rem;min-height:2.75rem;color:var(--text-strong);font-weight:600}.form-inline-toggle input{margin:0}.feedback{margin:0;padding:.85rem 1rem;border-radius:var(--radius-m);font-weight:600;word-break:break-word}.feedback--error{color:var(--error);background:var(--error-soft)}.feedback--success{color:var(--success);background:var(--success-soft)}.feedback--mono{font-family:ui-monospace,Cascadia Code,SFMono-Regular,monospace}.status-chip{margin:1rem 0 0;padding:.8rem .9rem;border-radius:var(--radius-m);font-weight:600}.status-chip--warning{color:var(--warning);background:var(--warning-soft)}.empty-state{padding:1rem;border:1.5px dashed var(--border);border-radius:var(--radius-m);color:var(--text-muted)}.feature-layout-split,.feature-layout-admin{display:grid;gap:1.25rem}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.media-card__header{align-items:start}.media-card__title-group{display:grid;gap:.25rem}.media-card__description{line-height:1.55}.people-form__deceased-toggle{min-height:auto;padding:0}.people-form__life-grid,.people-form__partial-date-hint,.tree-column__section-heading--spaced{grid-column:1/-1}.tree-column__section-heading--spaced{margin-top:1.35rem}@media(min-width:720px){.feature-card__header,.form-supporting-grid__row,.people-form__death-row,.media-card__header{grid-template-columns:minmax(0,1fr) auto}}@media(min-width:1080px){body{font-size:1rem}.feature-layout-split{grid-template-columns:minmax(0,1fr) minmax(20rem,.95fr)}.feature-layout-admin{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
