@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9cc5c0547f229dea-s.00b2_ptq3xnpy.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b0947914c9718a1e-s.0l.9lak812di~.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d0b60be57f16ee32-s.0m2lc_66fsc~9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1f9e983605289f29-s.0~7_67muh398v.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/01e4147cff8141ee-s.p.10ked.7w885.g.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9cc5c0547f229dea-s.00b2_ptq3xnpy.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b0947914c9718a1e-s.0l.9lak812di~.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/d0b60be57f16ee32-s.0m2lc_66fsc~9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1f9e983605289f29-s.0~7_67muh398v.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/01e4147cff8141ee-s.p.10ked.7w885.g.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9cc5c0547f229dea-s.00b2_ptq3xnpy.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b0947914c9718a1e-s.0l.9lak812di~.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/d0b60be57f16ee32-s.0m2lc_66fsc~9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1f9e983605289f29-s.0~7_67muh398v.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/01e4147cff8141ee-s.p.10ked.7w885.g.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond Fallback;src:local(Times New Roman);ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.0%;size-adjust:96.98%}.cormorant_garamond_161d69ee-module__PxaOBq__className{font-family:Cormorant Garamond,Cormorant Garamond Fallback;font-style:normal}.cormorant_garamond_161d69ee-module__PxaOBq__variable{--font-playfair:"Cormorant Garamond", "Cormorant Garamond Fallback"}
@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/c3cb240f9c892514-s.163v2i5cux7-c.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/c3cb240f9c892514-s.163v2i5cux7-c.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/c3cb240f9c892514-s.163v2i5cux7-c.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/c3cb240f9c892514-s.163v2i5cux7-c.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Fallback;src:local(Arial);ascent-override:94.9%;descent-override:29.66%;line-gap-override:0.0%;size-adjust:104.53%}.dm_sans_b70ae62b-module__oClGjG__className{font-family:DM Sans,DM Sans Fallback;font-style:normal}.dm_sans_b70ae62b-module__oClGjG__variable{--font-dm-sans:"DM Sans", "DM Sans Fallback"}
@font-face{font-family:Amiri;font-style:normal;font-weight:400;font-display:swap;src:url(../media/05d29f0ed5b0e698-s.p.0ipr5zwy0u.~f.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Amiri;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d48a75a69535be63-s.0u~._b8uwv-zo.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Amiri;font-style:normal;font-weight:400;font-display:swap;src:url(../media/648474ecaeaf4c9a-s.0~rf1n5_6ke06.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Amiri;font-style:normal;font-weight:700;font-display:swap;src:url(../media/291696193ea1e96b-s.p.0mmds2ktxtq7_.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Amiri;font-style:normal;font-weight:700;font-display:swap;src:url(../media/966a9c3087fc8ac2-s.0e4ck~b8hcazj.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Amiri;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1062333f2bd32cfe-s.0l7ssxdh8f0nb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Amiri Fallback;src:local(Times New Roman);ascent-override:112.47%;descent-override:63.44%;line-gap-override:0.0%;size-adjust:99.94%}.amiri_48042462-module__nZKxbq__className{font-family:Amiri,Amiri Fallback;font-style:normal}.amiri_48042462-module__nZKxbq__variable{--font-amiri:"Amiri", "Amiri Fallback"}
@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--container-md:28rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--tracking-wider:.05em;--leading-relaxed:1.625;--radius-md:.375rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-dm-sans);--default-mono-font-family:var(--font-mono);--font-display:var(--font-playfair);--font-arabic:var(--font-amiri)}}@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{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.z-10{z-index:10}.-mt-1{margin-top:calc(var(--spacing) * -1)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-\[100dvh\]{height:100dvh}.h-full{height:100%}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-full{min-height:100%}.w-full{width:100%}.max-w-\[440px\]{max-width:440px}.max-w-\[620px\]{max-width:620px}.max-w-md{max-width:var(--container-md)}.flex-1{flex:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.resize-none{resize:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.rounded{border-radius:.25rem}.rounded-\[8px\]{border-radius:8px}.rounded-\[12px\]{border-radius:12px}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-\[color\:var\(--line\)\]{border-color:var(--line)}.bg-\[var\(--bg-soft\)\]{background-color:var(--bg-soft)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-10{padding:calc(var(--spacing) * 10)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-7{padding-inline:calc(var(--spacing) * 7)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-6{padding-block:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pb-5{padding-bottom:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-left{text-align:left}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.tracking-\[0\.08em\]{--tw-tracking:.08em;letter-spacing:.08em}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-\[color\:var\(--accent\)\]{color:var(--accent)}.text-\[color\:var\(--ink-mute\)\]{color:var(--ink-mute)}.text-\[color\:var\(--ink-soft\)\]{color:var(--ink-soft)}.text-\[var\(--ink-mute\)\]{color:var(--ink-mute)}.text-\[var\(--ink-soft\)\]{color:var(--ink-soft)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.hover\:text-\[color\:var\(--accent-soft\)\]:hover{color:var(--accent-soft)}.hover\:text-\[color\:var\(--ink-soft\)\]:hover{color:var(--ink-soft)}}@media (min-width:40rem){.sm\:block{display:block}.sm\:inline{display:inline}.sm\:p-10{padding:calc(var(--spacing) * 10)}}}:root,[data-theme=sage]{--bg:#d9e3cd;--bg-soft:#cedabf;--bg-card:#e7efdd;--ink:#23311f;--ink-soft:#4c5c44;--ink-mute:#7e8c74;--line:#bdcbad;--line-soft:#cdd9bf;--accent:#3f7b4f;--accent-soft:#6fa277;--accent-deep:#2c5b39;--gold:#b07a2e;--leaf-bg:#e7efdd;--leaf-bg-active:#f1f6ea;--leaf-ring-active:#3f7b4f;--leaf-ring-current:#b07a2e;--leaf-line:#23311f57;--motif-opacity:.03;--motif-stroke:%2323310F;--card-bg:#2e6a4e;--card-bg2:#25583e;--card-line:#1e4a34;--card-ink:#ecf4e4;--card-ink-mute:#aecbb4;--panel-shadow:0 24px 60px -20px #283c1e47;--leaf-shadow:0 1px 0 #00000008, 0 10px 22px -12px #283c1e40;--radius-card:12px;--radius-leaf:14px;--radius-button:8px}[data-theme=royal]{--bg:#13241a;--bg-soft:#1a3024;--bg-card:#1e382a;--ink:#eef3e5;--ink-soft:#b7c9ac;--ink-mute:#7c9276;--line:#2e4a39;--line-soft:#233a2c;--accent:#7fb36a;--accent-soft:#a8d294;--accent-deep:#547f44;--gold:#e3a24f;--leaf-bg:#1e382a;--leaf-bg-active:#28472f;--leaf-ring-active:#a8d294;--leaf-ring-current:#e8a94c;--leaf-line:#a8d2946b;--motif-opacity:.05;--motif-stroke:%23A8D294;--panel-shadow:0 30px 80px -16px #0009;--leaf-shadow:0 1px 0 #a8d2941f, 0 12px 26px -12px #0000008c;--radius-card:12px;--radius-leaf:14px;--radius-button:8px}[data-theme=heritage]{--bg:#f0e8d6;--bg-soft:#e8dfc8;--bg-card:#fbf6e9;--ink:#2a2419;--ink-soft:#6b5e45;--ink-mute:#9c8b6e;--line:#c9bc9c;--line-soft:#d8cdb0;--accent:#b85c3c;--accent-soft:#d27a5a;--accent-deep:#8e4128;--gold:#b8923c;--leaf-bg:#fbf6e9;--leaf-bg-active:#f5edd4;--leaf-ring-active:#b85c3c;--leaf-ring-current:#1f5f4a;--leaf-line:#b85c3c59;--motif-opacity:.06;--motif-stroke:%232A2419}[data-theme=modern]{--bg:#fbfaf7;--bg-soft:#f2f0ea;--bg-card:#fff;--ink:#181818;--ink-soft:#555;--ink-mute:#888;--line:#e5e1d8;--line-soft:#efece3;--accent:#1f5f4a;--accent-soft:#4a8c75;--accent-deep:#143f31;--gold:#c9a86a;--leaf-bg:#fff;--leaf-bg-active:#f4f2eb;--leaf-ring-active:#1f5f4a;--leaf-ring-current:#b85c3c;--leaf-line:#1f5f4a4d;--motif-opacity:.04;--motif-stroke:%23181800}html,body{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-dm-sans), system-ui, -apple-system, sans-serif;-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.5}.serif{font-family:var(--font-playfair), Georgia, serif}.arabic{font-family:var(--font-amiri), serif;direction:rtl}h1,h2,h3{font-family:var(--font-playfair), Georgia, serif;letter-spacing:-.01em;margin:0;font-weight:500}.motif-bg{pointer-events:none;z-index:0;opacity:var(--motif-opacity);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='%23A8D294' stroke-width='1'><path d='M60 10 L80 30 L60 50 L40 30 Z'/><path d='M60 70 L80 90 L60 110 L40 90 Z'/><path d='M10 40 L30 60 L10 80'/><path d='M110 40 L90 60 L110 80'/><circle cx='60' cy='60' r='8'/></g></svg>");background-size:240px 240px;position:fixed;inset:0}.tab-button{color:var(--ink-mute);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;margin-bottom:-1px;padding:12px 16px;font-family:inherit;font-size:14px;font-weight:500;transition:color .12s,border-color .12s}.tab-button:hover{color:var(--ink-soft)}.tab-button[data-active=true]{color:var(--ink);border-bottom-color:var(--accent)}.form-input{background:var(--bg-soft);border:1px solid var(--line);width:100%;color:var(--ink);border-radius:8px;outline:none;padding:10px 12px;font-family:inherit;font-size:14px;line-height:1.4;transition:border-color .12s}.form-input::placeholder{color:var(--ink-mute)}.form-input:focus{border-color:var(--accent)}textarea.form-input{min-height:96px}.btn-primary{background:var(--accent);color:var(--bg);letter-spacing:.01em;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:12px 18px;font-size:14px;font-weight:600;transition:background .12s,transform 80ms;display:inline-flex}.btn-primary:hover{background:var(--accent-soft)}.btn-primary:active{transform:translateY(1px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{color:var(--ink);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.btn-ghost:hover{background:var(--bg-soft);border-color:var(--accent)}.logo-mark{background:var(--accent);width:36px;height:36px;color:var(--bg);font-family:var(--font-amiri), serif;border-radius:999px;justify-content:center;align-items:center;padding-bottom:2px;font-size:22px;line-height:1;display:inline-flex}.tree-canvas-wrap{cursor:grab;background:linear-gradient(180deg, var(--sky-top,var(--bg)) 0%, var(--bg) 46%, var(--bg) 100%);flex:1;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.tree-canvas-wrap{background:linear-gradient(180deg, var(--sky-top,color-mix(in srgb, var(--bg) 86%, #fff)) 0%, var(--bg) 46%, color-mix(in srgb, var(--bg) 82%, var(--ground,var(--gold))) 100%)}}.tree-canvas-wrap{touch-action:none}.tree-canvas-wrap.dragging{cursor:grabbing}.tree-canvas{transform-origin:0 0;will-change:transform;position:absolute;inset:0}.leaf{transform-origin:50%;-webkit-user-select:none;user-select:none;cursor:pointer;z-index:2;transition:transform .14s,box-shadow .14s,border-color .14s,background .14s;position:absolute;transform:translate(-50%,-50%)}.leaf:hover{z-index:6;transform:translate(-50%,-50%)scale(1.045)}.leaf.current-user:before{content:"✦ YOU";white-space:nowrap;background:var(--leaf-ring-current);color:#fff;letter-spacing:.1em;z-index:3;border-radius:10px;padding:2px 9px;font-size:10px;font-weight:600;position:absolute;top:-11px;left:50%;transform:translate(-50%);box-shadow:0 2px 6px -1px #00000059}[data-theme=royal] .leaf.current-user:before{color:#13241a}.leaf-card{background:linear-gradient(168deg, var(--card-bg,var(--leaf-bg)), var(--card-bg2,var(--leaf-bg)));width:204px;height:92px}@supports (color:color-mix(in lab, red, red)){.leaf-card{background:linear-gradient(168deg, var(--card-bg,var(--leaf-bg)), var(--card-bg2,color-mix(in srgb, var(--leaf-bg) 82%, var(--bg-soft))))}}.leaf-card{border:1px solid var(--card-line,var(--line));box-shadow:var(--leaf-shadow);border-radius:16px;align-items:center;gap:12px;padding:11px 14px;display:flex}.leaf-card.selected{border-color:var(--leaf-ring-active);background:var(--leaf-bg-active);z-index:4;box-shadow:0 0 0 4px var(--leaf-ring-active), var(--leaf-shadow)}@supports (color:color-mix(in lab, red, red)){.leaf-card.selected{box-shadow:0 0 0 4px color-mix(in srgb, var(--leaf-ring-active) 25%, transparent), var(--leaf-shadow)}}.leaf-card.current-user{border-color:var(--leaf-ring-current);background:var(--leaf-bg-active);z-index:3;box-shadow:0 0 0 5px var(--leaf-ring-current), var(--leaf-shadow);border-width:2px}@supports (color:color-mix(in lab, red, red)){.leaf-card.current-user{box-shadow:0 0 0 5px color-mix(in srgb, var(--leaf-ring-current) 26%, transparent), var(--leaf-shadow)}}.leaf-card:not(.selected):not(.current-user) .leaf-name{color:var(--card-ink,var(--ink))}.leaf-card:not(.selected):not(.current-user) .leaf-arabic,.leaf-card:not(.selected):not(.current-user) .leaf-dates{color:var(--card-ink-mute,var(--ink-mute))}.leaf-leaf{background:linear-gradient(150deg, var(--leaf-bg), var(--leaf-bg));width:212px;height:96px}@supports (color:color-mix(in lab, red, red)){.leaf-leaf{background:linear-gradient(150deg, color-mix(in srgb, var(--leaf-bg) 86%, var(--accent)), var(--leaf-bg))}}.leaf-leaf{border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.leaf-leaf{border:1px solid color-mix(in srgb, var(--accent) 30%, var(--line))}}.leaf-leaf{box-shadow:var(--leaf-shadow);border-radius:8px 46px;align-items:center;gap:12px;padding:12px 18px 12px 16px;display:flex;overflow:hidden}.leaf-leaf:after{content:"";border-right:1px solid var(--accent-soft);width:0;position:absolute;top:14px;bottom:14px;right:14px}@supports (color:color-mix(in lab, red, red)){.leaf-leaf:after{border-right:1px solid color-mix(in srgb, var(--accent-soft) 40%, transparent)}}.leaf-leaf:after{transform-origin:100% 0;pointer-events:none;transform:rotate(28deg)}.leaf-leaf.selected{border-color:var(--leaf-ring-active);z-index:4;box-shadow:0 0 0 4px var(--leaf-ring-active), var(--leaf-shadow)}@supports (color:color-mix(in lab, red, red)){.leaf-leaf.selected{box-shadow:0 0 0 4px color-mix(in srgb, var(--leaf-ring-active) 25%, transparent), var(--leaf-shadow)}}.leaf-leaf.current-user{border-color:var(--leaf-ring-current);z-index:3;box-shadow:0 0 0 5px var(--leaf-ring-current), var(--leaf-shadow);border-width:2px}@supports (color:color-mix(in lab, red, red)){.leaf-leaf.current-user{box-shadow:0 0 0 5px color-mix(in srgb, var(--leaf-ring-current) 26%, transparent), var(--leaf-shadow)}}.leaf-medallion{flex-direction:column;align-items:center;gap:9px;width:158px;display:flex}.medallion-portrait{background:var(--bg-soft);border:2px solid var(--line);width:78px;height:78px;font-family:var(--font-display);color:var(--ink-soft);box-shadow:var(--leaf-shadow);background-position:50%;background-size:cover;border-radius:50%;justify-content:center;align-items:center;font-size:27px;display:flex;position:relative}.medallion-portrait:after{content:"";border:1px solid var(--accent-soft);border-radius:50%;position:absolute;inset:-6px}@supports (color:color-mix(in lab, red, red)){.medallion-portrait:after{border:1px solid color-mix(in srgb, var(--accent-soft) 30%, transparent)}}.leaf-medallion .medallion-portrait.female{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.leaf-medallion .medallion-portrait.female{background-color:color-mix(in srgb, var(--accent) 15%, var(--bg-soft))}}.leaf-medallion .medallion-portrait.male{background-color:var(--gold)}@supports (color:color-mix(in lab, red, red)){.leaf-medallion .medallion-portrait.male{background-color:color-mix(in srgb, var(--gold) 15%, var(--bg-soft))}}.medallion-plate{text-align:center;max-width:158px}.medallion-plate .leaf-name{white-space:normal;text-align:center;font-size:16px}.medallion-plate .leaf-arabic{text-align:center;direction:rtl}.medallion-plate .leaf-dates{text-align:center}.leaf-medallion.selected .medallion-portrait{border-color:var(--leaf-ring-active);box-shadow:0 0 0 4px var(--leaf-ring-active), var(--leaf-shadow)}@supports (color:color-mix(in lab, red, red)){.leaf-medallion.selected .medallion-portrait{box-shadow:0 0 0 4px color-mix(in srgb, var(--leaf-ring-active) 25%, transparent), var(--leaf-shadow)}}.leaf-medallion.current-user .medallion-portrait{border-color:var(--leaf-ring-current);box-shadow:0 0 0 5px var(--leaf-ring-current), var(--leaf-shadow)}@supports (color:color-mix(in lab, red, red)){.leaf-medallion.current-user .medallion-portrait{box-shadow:0 0 0 5px color-mix(in srgb, var(--leaf-ring-current) 30%, transparent), var(--leaf-shadow)}}.leaf-medallion.current-user:before{top:-22px}.leaf-minimal{background:var(--bg-card);border-radius:40px;align-items:center;gap:11px;padding:7px 14px 7px 8px;display:flex}@supports (color:color-mix(in lab, red, red)){.leaf-minimal{background:color-mix(in srgb, var(--bg-card) 55%, transparent)}}.leaf-minimal{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border:1px solid #0000}.leaf-minimal .leaf-portrait{width:44px;height:44px;font-size:15px}.leaf-minimal .leaf-name{font-size:16px}.leaf-minimal.selected{background:var(--leaf-bg-active);border-color:var(--leaf-ring-active);z-index:4;box-shadow:0 0 0 3px var(--leaf-ring-active)}@supports (color:color-mix(in lab, red, red)){.leaf-minimal.selected{box-shadow:0 0 0 3px color-mix(in srgb, var(--leaf-ring-active) 22%, transparent)}}.leaf-minimal.current-user{background:var(--leaf-bg-active);border-color:var(--leaf-ring-current);z-index:3;box-shadow:0 0 0 4px var(--leaf-ring-current)}@supports (color:color-mix(in lab, red, red)){.leaf-minimal.current-user{box-shadow:0 0 0 4px color-mix(in srgb, var(--leaf-ring-current) 26%, transparent)}}.leaf-portrait{background:var(--bg-soft);border:1.5px solid var(--line);width:56px;height:56px;font-family:var(--font-display);color:var(--ink-soft);background-position:50%;background-size:cover;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;display:flex}.leaf-portrait.female{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.leaf-portrait.female{background-color:color-mix(in srgb, var(--accent) 15%, var(--bg-soft))}}.leaf-portrait.male{background-color:var(--gold)}@supports (color:color-mix(in lab, red, red)){.leaf-portrait.male{background-color:color-mix(in srgb, var(--gold) 15%, var(--bg-soft))}}.leaf-info{flex:1;min-width:0}.leaf-name{font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:500;line-height:1.1;overflow:hidden}.leaf-arabic{font-family:var(--font-arabic);color:var(--ink-mute);text-align:right;direction:rtl;margin-top:2px;font-size:13px;line-height:1.2}.leaf-dates{color:var(--ink-mute);letter-spacing:.02em;margin-top:3px;font-size:11px}.leaf.deceased .leaf-portrait{filter:grayscale(.5);opacity:.85}.tree-edges{pointer-events:none;z-index:1;position:absolute;inset:0;overflow:visible}.tree-edges path{fill:none;stroke:var(--leaf-line);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.tree-edges path.thin{stroke-width:1.2px;stroke:var(--leaf-line)}@supports (color:color-mix(in lab, red, red)){.tree-edges path.thin{stroke:color-mix(in srgb, var(--leaf-line) 75%, transparent)}}.tree-edges path.curve{stroke-width:2px}.tree-edges path.branch-fill{stroke:none;fill:url(#branchGrad)}.tree-edges path.marriage{stroke-dasharray:0;stroke-width:2px}.tree-edges path.marriage.divorced{stroke-dasharray:4 4;stroke:var(--ink-mute)}.tree-edges circle.union{fill:var(--bg);stroke:var(--accent-soft);stroke-width:1.5px}.minimap{background:var(--bg-card);border:1px solid var(--line);z-index:20;width:220px;height:140px;box-shadow:var(--panel-shadow);cursor:pointer;border-radius:10px;position:absolute;bottom:20px;right:20px;overflow:hidden}.minimap-content{width:100%;height:100%;position:relative}.minimap-dot{background:var(--ink-soft);border-radius:50%;width:4px;height:4px;position:absolute}.minimap-dot.current{background:var(--leaf-ring-current);width:6px;height:6px}.minimap-viewport{border:1.5px solid var(--accent);background:var(--accent);position:absolute}@supports (color:color-mix(in lab, red, red)){.minimap-viewport{background:color-mix(in srgb, var(--accent) 8%, transparent)}}.minimap-viewport{pointer-events:none}.minimap-label{color:var(--ink-mute);letter-spacing:.08em;text-transform:uppercase;z-index:1;font-size:10px;position:absolute;top:6px;left:8px}.zoom-controls{background:var(--bg-card);border:1px solid var(--line);z-index:20;box-shadow:var(--panel-shadow);border-radius:8px;flex-direction:column;display:flex;position:absolute;bottom:20px;left:20px;overflow:hidden}.zoom-controls button{border-bottom:1px solid var(--line);width:36px;height:36px;color:var(--ink-soft);cursor:pointer;justify-content:center;align-items:center;display:flex}.zoom-controls button:last-of-type{border-bottom:none}.zoom-controls button:hover{background:var(--bg-soft);color:var(--ink)}.zoom-level{text-align:center;color:var(--ink-mute);border-top:1px solid var(--line);background:var(--bg-soft);padding:4px;font-size:11px}.btn-icon{border:1px solid var(--line);background:var(--bg-card);width:36px;height:36px;color:var(--ink-soft);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0;display:flex}.btn-icon:hover{background:var(--bg-soft);color:var(--ink)}.side-panel{background:var(--bg-card);border-left:1px solid var(--line);z-index:50;width:460px;max-width:100vw;height:100dvh;box-shadow:var(--panel-shadow);flex-direction:column;transition:transform .28s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;top:0;right:0;transform:translate(100%)}.side-panel.open{transform:translate(0)}.side-panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:22px 28px;display:flex}.side-panel-title{font-family:var(--font-display);letter-spacing:-.01em;font-size:22px}.side-panel-body{flex:1;padding:28px;overflow-y:auto}.profile-header{align-items:center;gap:16px;margin-bottom:24px;display:flex}.profile-portrait{background:var(--bg-soft);border:1.5px solid var(--line);width:84px;height:84px;font-family:var(--font-display);color:var(--ink-soft);background-position:50%;background-size:cover;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:32px;display:flex}.profile-portrait.female{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.profile-portrait.female{background-color:color-mix(in srgb, var(--accent) 15%, var(--bg-soft))}}.profile-portrait.male{background-color:var(--gold)}@supports (color:color-mix(in lab, red, red)){.profile-portrait.male{background-color:color-mix(in srgb, var(--gold) 15%, var(--bg-soft))}}.profile-name{font-family:var(--font-display);letter-spacing:-.015em;font-size:30px;line-height:1.05}.profile-arabic{font-family:var(--font-arabic);color:var(--ink-soft);direction:rtl;margin-top:4px;font-size:22px}.profile-relation{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-top:6px;font-size:11px;font-weight:500;display:inline-block}.profile-section{margin-bottom:26px}.profile-section-title{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:8px;font-size:11px;font-weight:500}.profile-facts{grid-template-columns:1fr 1fr;gap:14px 22px;display:grid}.profile-fact-label{color:var(--ink-mute);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.profile-fact-value{color:var(--ink);margin-top:2px;font-size:14px}.profile-bio{color:var(--ink);font-size:15px;line-height:1.65;font-family:var(--font-display);white-space:pre-wrap}.memory-card{background:var(--bg);border-left:2px solid var(--accent-soft);border-radius:6px;margin-bottom:10px;padding:14px 16px;font-size:14px;line-height:1.55}.memory-meta{color:var(--ink-mute);letter-spacing:.04em;margin-top:6px;font-size:11px}.related-list{flex-direction:column;gap:8px;display:flex}.related-item{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:8px;transition:background .12s;display:flex}.related-item:hover{background:var(--bg-soft)}.related-item .leaf-portrait{width:40px;height:40px;font-size:14px}.related-item-info{font-size:13px}.related-item-rel{color:var(--ink-mute);font-size:11px}.inbox-tabs{border-bottom:1px solid var(--line);background:var(--bg);padding:0 28px;display:flex}.inbox-tab{color:var(--ink-mute);cursor:pointer;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:14px 18px;font-size:13px;font-weight:500;display:flex}.inbox-tab.active{color:var(--ink);border-color:var(--accent)}.count-badge{background:var(--accent);color:#fff;text-align:center;border-radius:10px;min-width:18px;padding:2px 7px;font-size:10px;font-weight:600;display:inline-block}[data-theme=royal] .count-badge{color:#13241a}.request-card{background:var(--bg);border:1px solid var(--line);border-radius:10px;margin-bottom:12px;padding:18px}.request-card-header{justify-content:space-between;align-items:start;margin-bottom:12px;display:flex}.request-type-pill{letter-spacing:.05em;text-transform:uppercase;background:var(--accent);border-radius:12px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.request-type-pill{background:color-mix(in srgb, var(--accent) 15%, transparent)}}.request-type-pill{color:var(--accent)}.request-type-pill.edit{background:var(--gold)}@supports (color:color-mix(in lab, red, red)){.request-type-pill.edit{background:color-mix(in srgb, var(--gold) 18%, transparent)}}.request-type-pill.edit{color:var(--gold)}.request-type-pill.move{color:#4a90e2;background:#4a90e22e}.request-type-pill.photo,.request-type-pill.memory{color:#7c3aed;background:#7c3aed2e}.request-type-pill.flag{color:#c73838;background:#c738382e}.request-by{color:var(--ink-mute);font-size:12px}.request-by b{color:var(--ink);font-weight:500}.request-preview{background:var(--bg-card);border-radius:8px;margin:10px 0;padding:12px 14px;font-size:13px}.request-preview-row{justify-content:space-between;padding:4px 0;display:flex}.request-preview-row span:first-child{color:var(--ink-mute);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.request-actions{gap:8px;margin-top:12px;display:flex}.btn-approve,.btn-reject{cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:600;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.btn-approve{color:#fff;background:#1f8a5b}.btn-approve:hover{background:#16734a}.btn-reject{border-color:var(--line);color:var(--ink-soft);background:0 0}.btn-reject:hover{color:#c73838;border-color:#c73838}.btn-approve:disabled,.btn-reject:disabled{opacity:.6;cursor:not-allowed}.status-pill{border-radius:20px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:500;display:inline-flex}.status-pill.pending{background:var(--gold)}@supports (color:color-mix(in lab, red, red)){.status-pill.pending{background:color-mix(in srgb, var(--gold) 18%, transparent)}}.status-pill.pending{color:var(--gold)}.status-pill.approved{color:var(--leaf-ring-current);background:#6fb89a2e}.status-pill.rejected{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.status-pill.rejected{background:color-mix(in srgb, var(--accent) 18%, transparent)}}.status-pill.rejected{color:var(--accent)}.empty{text-align:center;color:var(--ink-mute);padding:60px 20px}.empty-icon{opacity:.4;font-size:48px;font-family:var(--font-display);margin-bottom:12px}.field-row{gap:12px;display:flex}.field-row>*{flex:1}.field-group{margin-bottom:18px}.label{color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px;font-size:12px;font-weight:500;display:block}.input,.textarea,.select{background:var(--bg-card);border:1px solid var(--line);width:100%;color:var(--ink);border-radius:8px;padding:11px 14px;font-family:inherit;font-size:14px;transition:border-color .15s}.input:focus,.textarea:focus,.select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent);outline:none}@supports (color:color-mix(in lab, red, red)){.input:focus,.textarea:focus,.select:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}}.textarea{resize:vertical;min-height:80px;line-height:1.5}.notice{background:var(--bg-soft);border-left:3px solid var(--accent);color:var(--ink-soft);border-radius:10px;margin-bottom:20px;padding:14px 16px;font-size:14px}.notice.error{color:#c73838;border-color:#c73838}.backdrop{z-index:40;opacity:0;pointer-events:none;background:#00000080;transition:opacity .25s;position:fixed;inset:0}.backdrop.visible{opacity:1;pointer-events:auto}.modal{background:var(--bg-card);box-shadow:var(--panel-shadow);z-index:60;opacity:0;pointer-events:none;border-radius:14px;flex-direction:column;width:540px;max-width:calc(100vw - 40px);max-height:calc(100vh - 80px);transition:opacity .2s,transform .2s;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)scale(.98)}.modal.open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)scale(1)}.modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:22px 28px;display:flex}.modal-title{font-family:var(--font-display);letter-spacing:-.01em;font-size:24px}.modal-body{flex:1;padding:24px 28px;overflow-y:auto}.modal-footer{border-top:1px solid var(--line);background:var(--bg);justify-content:flex-end;gap:10px;padding:18px 28px;display:flex}.tree-toolbar{z-index:30;flex-wrap:wrap;align-items:flex-start;gap:10px;max-width:calc(100% - 32px);display:flex;position:absolute;top:16px;left:16px}.search-box{width:280px;max-width:70vw;position:relative}.search-box .input{box-shadow:var(--panel-shadow);padding-left:36px;padding-right:36px}.search-box .search-icon{color:var(--ink-mute);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-results{background:var(--bg-card);border:1px solid var(--line);box-shadow:var(--panel-shadow);z-index:100;border-radius:10px;max-height:320px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.search-result-item{cursor:pointer;border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.search-result-item:hover{background:var(--bg-soft)}.search-result-item:last-child{border-bottom:none}.search-result-name{font-weight:500}.search-result-meta{color:var(--ink-mute);font-size:12px}.gen-filter{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.gen-chip{border:1px solid var(--line);cursor:pointer;background:var(--bg-card);color:var(--ink-soft);box-shadow:var(--panel-shadow);border-radius:14px;padding:6px 12px;font-size:12px}.gen-chip.active{background:var(--accent);border-color:var(--accent)}[data-theme=royal] .gen-chip.active{color:#13241a}@media (max-width:640px){.side-panel{border-left:none;border-top:1px solid var(--line);border-radius:16px 16px 0 0;width:100%;height:85dvh;inset:auto 0 0;transform:translateY(100%)}.side-panel.open{transform:translateY(0)}.side-panel-body{padding-bottom:calc(28px + env(safe-area-inset-bottom))}.modal{width:calc(100vw - 24px)}.app-header{flex-wrap:wrap;row-gap:10px}.header-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;width:100%}.header-actions .btn-ghost,.header-actions .btn-primary{padding:8px 11px;font-size:12px}.tree-toolbar{gap:8px;top:10px;left:10px;right:10px}.search-box{width:100%;max-width:none}.profile-name{font-size:24px}}.announce-banner{z-index:30;flex-direction:column;gap:8px;padding:10px 16px 0;display:flex;position:relative}.announce-card{border:1px solid var(--accent);background:var(--bg-soft);border-radius:10px;padding:12px 14px;box-shadow:0 4px 16px #0000002e}.announce-row{align-items:flex-start;gap:12px;display:flex}.announce-icon{background:var(--accent);width:30px;height:30px;color:var(--bg);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex}.announce-main{flex:1;min-width:0}.announce-head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.announce-title{font-family:var(--font-display);color:var(--ink);font-size:18px}.announce-date{color:var(--ink-mute);font-size:12px}.announce-body{color:var(--ink-soft);white-space:pre-wrap;overflow-wrap:anywhere;margin-top:4px;font-size:14px;line-height:1.55}.announce-actions{gap:8px;margin-top:10px;display:flex}.announce-close{flex-shrink:0}@media (max-width:640px){.announce-banner{top:calc(env(safe-area-inset-top) + 8px);z-index:80;pointer-events:none;padding:0;position:fixed;left:8px;right:8px}.announce-card{pointer-events:auto;max-height:60dvh;overflow-y:auto;box-shadow:0 12px 34px #00000073}}.landing{z-index:1;min-height:100dvh;display:flex;position:relative}.landing-hero{border-right:1px solid var(--line);background:var(--bg);flex-direction:column;flex:1.1;justify-content:space-between;padding:64px 72px;display:flex;position:relative;overflow:hidden}.landing-card{background:var(--bg-card);flex-direction:column;justify-content:center;width:480px;padding:56px;display:flex;position:relative}.landing-logo{font-family:var(--font-display);letter-spacing:-.01em;align-items:center;gap:14px;font-size:22px;display:flex}.landing-logo-mark{border:1.5px solid var(--accent);width:36px;height:36px;color:var(--accent);font-family:var(--font-arabic);border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex}.landing-hero h1{letter-spacing:-.025em;margin-bottom:10px;font-size:72px;line-height:.96}.landing-hero .arabic-title{font-family:var(--font-arabic);color:var(--accent-soft);direction:rtl;margin-top:6px;margin-bottom:4px;font-size:40px}.landing-hero p.lead{max-width:520px;color:var(--ink-soft);font-size:17px;line-height:1.6}.hero-tree{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero-tree svg.tree-art{opacity:.6;width:clamp(560px,64vw,860px);height:auto;position:absolute;bottom:-12px;left:50%;transform:translate(-48%)}.hero-scrim{z-index:0;pointer-events:none;background:radial-gradient(120% 80% at 30% 24%, var(--bg) 0%, transparent 55%), linear-gradient(180deg, transparent 30%, var(--bg) 96%);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.hero-scrim{background:radial-gradient(120% 80% at 30% 24%, color-mix(in srgb, var(--bg) 55%, transparent) 0%, transparent 55%), linear-gradient(180deg, transparent 30%, color-mix(in srgb, var(--bg) 82%, transparent) 96%)}}.landing-logo,.hero-main,.hero-foot{z-index:2;position:relative}.hero-main{max-width:560px}.hero-foot{color:var(--ink-mute);letter-spacing:.08em;text-transform:uppercase;font-size:12px}.botanical-divider{max-width:360px;color:var(--accent-soft);align-items:center;gap:14px;margin:8px 0 22px;display:flex}.botanical-divider .rule{background:linear-gradient(90deg, transparent, var(--accent-soft));flex:1;height:1px}@supports (color:color-mix(in lab, red, red)){.botanical-divider .rule{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--accent-soft) 70%, transparent))}}.botanical-divider .rule.right{background:linear-gradient(90deg, var(--accent-soft), transparent)}@supports (color:color-mix(in lab, red, red)){.botanical-divider .rule.right{background:linear-gradient(90deg, color-mix(in srgb, var(--accent-soft) 70%, transparent), transparent)}}.hero-principles{gap:30px;max-width:560px;margin-top:34px;display:flex}.principle{flex:1;align-items:flex-start;gap:12px;display:flex}.principle-icon{width:34px;height:34px;color:var(--accent-soft);border:1px solid var(--accent-soft);flex-shrink:0;justify-content:center;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){.principle-icon{border:1px solid color-mix(in srgb, var(--accent-soft) 35%, transparent)}}.principle-icon{background:var(--accent);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.principle-icon{background:color-mix(in srgb, var(--accent) 8%, transparent)}}.principle-label{font-family:var(--font-display);color:var(--ink);font-size:19px;line-height:1.1}.principle-cap{color:var(--ink-mute);margin-top:3px;font-size:12.5px;line-height:1.4}@keyframes leafFloat{0%{transform:translateY(0)rotate(0)}50%{transform:translateY(16px)rotate(10deg)}to{transform:translateY(0)rotate(0)}}.float-leaf{z-index:1;color:var(--accent-soft);opacity:.4;animation:leafFloat var(--dur,9s) ease-in-out infinite;animation-delay:var(--delay,0s);pointer-events:none;position:absolute}.card-eyebrow{color:var(--accent-soft);flex-direction:column;align-items:center;gap:10px;margin-bottom:26px;display:flex}.card-eyebrow .eyebrow-label{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);font-size:11px}.tabs{border-bottom:1px solid var(--line);margin-bottom:28px;display:flex}.tab{color:var(--ink-mute);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;margin-right:28px;padding:12px 0;font-family:inherit;font-size:14px;font-weight:500}.tab.active{color:var(--ink);border-bottom-color:var(--accent)}@media (max-width:900px){.landing{flex-direction:column}.landing-hero{padding:calc(36px + env(safe-area-inset-top)) 28px 34px;border-right:none;border-bottom:1px solid var(--line);flex:none;gap:26px}.landing-hero h1{font-size:48px}.landing-hero .arabic-title{font-size:30px}.hero-principles{flex-direction:column;gap:16px;margin-top:28px}.landing-card{width:100%;padding:36px 28px calc(36px + env(safe-area-inset-bottom));flex:1 0 auto;justify-content:flex-start}}@media (max-width:600px){.landing-hero{padding-left:22px;padding-right:22px}.landing-hero h1{font-size:40px}.landing-hero .arabic-title{font-size:26px}.landing-hero p.lead{font-size:15px}.hero-tree svg.tree-art{opacity:.32;width:460px}.landing-card{padding-left:22px;padding-right:22px}}[data-os=ios] .form-input,[data-os=ios] .input,[data-os=ios] .textarea,[data-os=ios] .select{font-size:16px}[data-device=mobile] .leaf:hover,[data-device=tablet] .leaf:hover{transform:translate(-50%,-50%)}.app-header{padding-top:max(12px, env(safe-area-inset-top));padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right))}.tree-canvas{z-index:1}.tree-backdrop{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.bd-sun{background:radial-gradient(ellipse at center, var(--gold) 0%, var(--gold) 38%, transparent 64%);width:90%;height:80%;position:absolute;top:-22%;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab, red, red)){.bd-sun{background:radial-gradient(ellipse at center, color-mix(in srgb, var(--gold) 26%, transparent) 0%, color-mix(in srgb, var(--gold) 8%, transparent) 38%, transparent 64%)}}.bd-sun{opacity:.55}.bd-vignette{background:radial-gradient(135% 115% at 50% 40%, transparent 52%, var(--ink) 100%);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.bd-vignette{background:radial-gradient(135% 115% at 50% 40%, transparent 52%, color-mix(in srgb, var(--ink) 9%, transparent) 100%)}}.bd-leaf{color:var(--accent-soft);opacity:.16;animation:bdDrift var(--d,26s) linear var(--delay,0s) infinite;will-change:transform;position:absolute;top:-6%}@keyframes bdDrift{0%{transform:translateY(-8vh)translate(0)rotate(0)}50%{transform:translateY(45vh)translate(34px)rotate(160deg)}to{transform:translateY(112vh)translate(-10px)rotate(330deg)}}@media (prefers-reduced-motion:reduce){.bd-leaf{opacity:.1;animation:none}}.tree-grow-layer{position:absolute;inset:0}.content-ground{z-index:0;pointer-events:none;background:linear-gradient(180deg, transparent 0%, var(--ground,var(--bg)) 4%, var(--ground,var(--bg)) 24%, var(--ground,var(--bg)) 100%);position:absolute}@supports (color:color-mix(in lab, red, red)){.content-ground{background:linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--ground,color-mix(in srgb, var(--bg) 52%, var(--gold))) 34%, transparent) 4%, color-mix(in srgb, var(--ground,color-mix(in srgb, var(--bg) 52%, var(--gold))) 60%, transparent) 24%, color-mix(in srgb, var(--ground,color-mix(in srgb, var(--bg) 46%, var(--gold))) 74%, transparent) 100%)}}.content-ground-line{background:linear-gradient(90deg, transparent, var(--ground,var(--gold)) 50%, transparent);height:2px;position:absolute;top:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.content-ground-line{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--ground,var(--gold)) 70%, #fff) 50%, transparent)}}.content-ground-line{opacity:.5}.content-ground.grow-pre{opacity:0}.content-ground.grow-sprout{animation:.8s forwards groundFade}@keyframes groundFade{0%{opacity:0}to{opacity:1}}.distant-grove{z-index:0;pointer-events:none;position:absolute}.distant-grove span{background:radial-gradient(ellipse at 50% 28%, var(--accent) 0%, var(--accent-deep) 82%);border-radius:50% 50% 46% 46%/64% 64% 38% 38%;position:absolute;bottom:0}@supports (color:color-mix(in lab, red, red)){.distant-grove span{background:radial-gradient(ellipse at 50% 28%, color-mix(in srgb, var(--accent) 52%, var(--bg)) 0%, color-mix(in srgb, var(--accent-deep) 42%, var(--bg)) 82%)}}.distant-grove span{filter:blur(2px)}.distant-grove.grow-pre{opacity:0}.distant-grove.grow-sprout{animation:1s forwards groundFade}.tree-edges ellipse.tree-ground{fill:#30240f1f;transform-box:fill-box;transform-origin:50%}.tree-edges ellipse.tree-ground.grow-pre{opacity:0;scale:.3}.tree-edges ellipse.tree-ground.grow-sprout{animation:.55s forwards groundSpread}@keyframes groundSpread{0%{opacity:0;scale:.3}to{opacity:1;scale:1}}.tree-edges g.tree-base{transform-box:fill-box;transform-origin:bottom}.tree-edges g.tree-base.grow-pre{scale:1 0}.tree-edges g.tree-base.grow-sprout{animation:.66s cubic-bezier(.34,.82,.36,1) forwards trunkGrow}.tree-edges .trunk-root{fill:#41331e}.tree-edges .trunk-root2{fill:#4c3c24}.tree-edges .trunk-body{fill:url(#trunkGrad2)}.tree-edges .bark-seam{fill:none;stroke:#20160952;stroke-width:1.1px;stroke-linecap:round}.tree-edges .bark-hi{fill:none;stroke:#ceb4846b;stroke-width:1.4px;stroke-linecap:round}.tree-edges path.branch-limb{fill:none;stroke:url(#barkGrad);stroke-width:var(--bw,3);stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:100;stroke-dashoffset:0}.tree-edges path.branch-limb.hl{stroke:#b0986866;stroke-width:calc(var(--bw,3) * .42)}.tree-edges circle.branch-knot{fill:#e9be73;stroke:#b98a3c;stroke-width:1.2px;transform-box:fill-box;transform-origin:50%}.leaf-branch{z-index:3}.leaf-branch .branch-leaf-body{transform-origin:top;animation:leafSway var(--sway-dur,6.5s) ease-in-out var(--sway-delay,0s) infinite;will-change:rotate, scale;background:linear-gradient(152deg,#79b85b 0%,#5e9540 100%);border:1.5px solid #4c8233;border-radius:3px 22px 5px 20px;align-items:center;gap:9px;padding:6px 16px 7px 7px;display:flex;position:relative;rotate:none;scale:1;box-shadow:inset 0 1px #ffffff38,inset 0 -2px 5px #142d0c2e,0 7px 16px -9px #0f230a8c}.leaf-branch .branch-leaf-body:before{content:"";transform-origin:100% 0;pointer-events:none;background:linear-gradient(#0000,#fff6,#0000);width:1px;position:absolute;top:9px;bottom:9px;right:13px;transform:rotate(26deg)}.branch-portrait{width:34px;height:34px;font-family:var(--font-display);color:#f2f8ec;background:#142d0f47 50%/cover;border:1.5px solid #ffffff73;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.branch-name{font-family:var(--font-display);color:#163214;white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.005em;max-width:200px;font-size:16px;font-weight:600;line-height:1.05;overflow:hidden}.leaf-branch.selected .branch-leaf-body{background:linear-gradient(152deg,#8fcb6c 0%,#6fa94b 100%);border-color:#2c4f1a;box-shadow:0 0 0 4px #e9be738c,inset 0 1px #ffffff40,0 8px 18px -8px #0f230a99}.leaf-branch.current-user .branch-leaf-body{background:linear-gradient(152deg,#9ad173 0%,#79b051 100%);border-color:#2c4f1a;box-shadow:0 0 0 4px #e9be73a6,inset 0 1px #ffffff4d,0 8px 20px -8px #0f230a99}.leaf-branch.current-user .branch-leaf-body:after{content:"";background:radial-gradient(circle at 60% 40%,#ffe6b0,#f2b45c 70%);border-radius:50% 50% 50% 0;width:16px;height:16px;position:absolute;top:-7px;left:-7px;transform:rotate(-30deg);box-shadow:0 0 0 2px #ffffff80,0 2px 5px #00000040}.leaf-branch.current-user:before{top:-16px}.leaf-branch.deceased .branch-leaf-body{background:linear-gradient(152deg,#d29448 0%,#b06e2a 100%);border-color:#8e591e;animation-name:leafSwayFall}.leaf-branch.deceased .branch-name{color:#40260e}.leaf-branch.deceased .branch-portrait{filter:none;opacity:1;background:#3c1e054d;border-color:#fff0dc66}.branch-limb.grow-pre{stroke-dashoffset:100px}.branch-knot.grow-pre{scale:0}.leaf-branch.grow-pre .branch-leaf-body,.leaf.grow-pre.leaf-card,.leaf.grow-pre.leaf-leaf,.leaf.grow-pre.leaf-medallion,.leaf.grow-pre.leaf-minimal{opacity:0;scale:0}.branch-limb.grow-sprout{animation:.6s forwards limbDraw}.branch-knot.grow-sprout{animation:.42s cubic-bezier(.3,1.25,.5,1) .28s both knotPop}.leaf-branch.grow-sprout .branch-leaf-body{animation:leafSway var(--sway-dur,6.5s) ease-in-out var(--sway-delay,0s) infinite, sprout .55s cubic-bezier(.25,1.2,.45,1) .28s both}.leaf-branch.deceased.grow-sprout .branch-leaf-body{animation:leafSwayFall var(--sway-dur,7s) ease-in-out var(--sway-delay,0s) infinite, sprout .55s cubic-bezier(.25,1.2,.45,1) .28s both}.leaf.grow-sprout.leaf-card,.leaf.grow-sprout.leaf-leaf,.leaf.grow-sprout.leaf-medallion,.leaf.grow-sprout.leaf-minimal{animation:.55s cubic-bezier(.25,1.2,.45,1) .24s both sprout}@keyframes trunkGrow{0%{scale:1 0}to{scale:1}}@keyframes limbDraw{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0}}@keyframes knotPop{0%{scale:0}to{scale:1}}@keyframes sprout{0%{opacity:0;scale:0}65%{opacity:1;scale:1.05}to{opacity:1;scale:1}}@keyframes leafSway{0%,to{rotate:-1.5deg}50%{rotate:1.6deg}}@keyframes leafSwayFall{0%,to{rotate:2.2deg}50%{rotate:6.4deg}}@media (prefers-reduced-motion:reduce){.leaf-branch .branch-leaf-body,.tree-edges g.tree-base.grow-sprout,.branch-limb.grow-sprout,.branch-knot.grow-sprout,.leaf-branch.grow-sprout .branch-leaf-body,.leaf.grow-sprout.leaf-card,.leaf.grow-sprout.leaf-leaf,.leaf.grow-sprout.leaf-medallion,.leaf.grow-sprout.leaf-minimal{animation:none}}.grow-btn{background:var(--bg-card);color:var(--ink);border:1px solid var(--accent);box-shadow:var(--panel-shadow);font-family:var(--font-dm-sans), system-ui, sans-serif;letter-spacing:.01em;z-index:21;cursor:pointer;border-radius:22px;align-items:center;gap:8px;padding:9px 15px 9px 12px;font-size:13px;font-weight:600;transition:background .15s,transform .15s;display:flex;position:absolute;bottom:170px;left:20px}.grow-btn:hover{background:var(--bg-soft);transform:translateY(-1px)}.grow-btn svg{color:var(--accent);flex-shrink:0}.grow-btn.growing{opacity:.65;pointer-events:none}.grow-btn .grow-spark{transform-origin:50%;animation:.9s ease-in-out infinite growSpark}@keyframes growSpark{0%,to{transform:scale(1)}50%{transform:scale(1.22)}}.welcome-backdrop{z-index:110;opacity:0;pointer-events:none;background:#0000008c;transition:opacity .25s;position:fixed;inset:0}.welcome-backdrop.visible{opacity:1;pointer-events:auto}.welcome-modal{background:var(--bg-card);border:1px solid var(--line);width:560px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 64px);box-shadow:var(--panel-shadow);z-index:120;opacity:0;pointer-events:none;border-radius:16px;flex-direction:column;transition:opacity .22s,transform .22s;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)scale(.98)}.welcome-modal.open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)scale(1)}.welcome-head{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:22px 24px;display:flex}.welcome-emblem{background:var(--accent);width:46px;height:46px;color:var(--bg);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:24px;display:flex}.welcome-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);font-size:23px;line-height:1.1}.welcome-sub{color:var(--ink-mute);margin-top:3px;font-size:13px}.welcome-close{flex-shrink:0;margin-left:auto}.welcome-body{flex-direction:column;gap:16px;padding:18px 24px;display:flex;overflow-y:auto}.welcome-feature{align-items:flex-start;gap:14px;display:flex}.welcome-feature-icon{background:var(--bg-soft);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:18px;display:flex}.welcome-feature-title{color:var(--ink);margin-bottom:2px;font-weight:600}.welcome-feature-body{color:var(--ink-soft);font-size:14px;line-height:1.45}.welcome-foot{padding:16px 24px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--line);justify-content:flex-end;display:flex}.welcome-foot .btn-primary{justify-content:center;width:100%}@media (max-width:640px){.welcome-modal{width:calc(100vw - 24px);max-height:calc(100dvh - 32px)}.welcome-head{padding:18px}.welcome-body{padding:16px 18px}.welcome-title{font-size:20px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
