:root{--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-serif:"Source Serif 4", Georgia, "Times New Roman", serif;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--primary:#5c1f2b;--primary-hover:#4a1922;--primary-active:#3a1219;--primary-soft:#f4ebed;--on-primary:#fbfaf8;--amber:#c4783a;--amber-soft:#f8ecdf;--teal:#2f6b5e;--teal-soft:#e5f0ec;--danger:#b5432f;--danger-hover:#9a3624;--danger-soft:#f8e9e5;--crisis:#8c3a1f;--crisis-soft:#f5e6de;--tone-plum:#7a3b52;--tone-ochre:#b8893f;--tone-sage:#5e7f73;--tone-slate:#5f6b7a;--ink:#1a1a1f;--ink-2:#4a4a55;--ink-3:#8a8a96;--paper:#fbfaf8;--paper-2:#f2f0ec;--surface:#fff;--line:#e2ded7;--line-strong:#cfc9bf;--text-xs:.75rem;--lh-xs:1.125rem;--text-sm:.875rem;--lh-sm:1.375rem;--text-base:1rem;--lh-base:1.6;--text-md:1.125rem;--lh-md:1.6;--text-lg:1.25rem;--lh-lg:1.4;--text-xl:1.5rem;--lh-xl:1.3;--text-2xl:1.75rem;--lh-2xl:1.25;--text-3xl:2rem;--lh-3xl:1.2;--text-display:clamp(2.25rem, 1.75rem + 2.4vw, 3rem);--lh-display:1.08;--tracking-display:-.022em;--tracking-heading:-.012em;--tracking-label:.04em;--measure-lede:52ch;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:2rem;--space-8:2.5rem;--space-9:3rem;--space-10:3.5rem;--space-11:4rem;--space-12:5rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:9999px;--shadow-1:0 1px 2px #1a1a1f0d;--shadow-2:0 2px 8px #1a1a1f12;--shadow-3:0 8px 24px #1a1a1f1a;--shadow-lift:0 1px 2px #5c1f2b0d, 0 8px 24px -6px #5c1f2b24;--header-height:56px;--nav-height:64px;--content-max-width:640px;--content-max-width-wide:960px;--content-width:var(--content-max-width);--content-padding:var(--space-4);--shell-border:1px solid var(--line);--tap-target:44px;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease;--ease-out:cubic-bezier(.22, 1, .36, 1);--duration-enter:.42s;--z-base:0;--z-raised:10;--z-sticky:100;--z-dropdown:200;--z-overlay:300;--z-modal:400;--z-toast:500;--z-quick-exit:1000;--focus-ring:2px solid var(--primary);--focus-offset:2px;--focus-halo:0 0 0 4px #5c1f2b1f}@media (width>=640px){:root{--content-padding:var(--space-6)}}@media (width>=1024px){:root{--content-width:var(--content-max-width-wide);--content-padding:var(--space-7)}}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html,body,#root{width:100%;max-width:100%}#root{flex-direction:column;min-height:100dvh;display:flex}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-height) + var(--space-4));background-color:var(--paper)}body{overscroll-behavior-y:none;background-color:var(--paper);min-height:100dvh;color:var(--ink);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--lh-base);font-feature-settings:"cv11", "ss01";text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-wrap:break-word}img,picture,video,canvas,svg{max-width:100%;display:block}img{height:auto}input,button,textarea,select{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;background:0 0;border:0}ul[role=list],ol[role=list]{list-style:none}table{border-collapse:collapse;border-spacing:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-optical-sizing:auto;color:var(--ink);text-wrap:balance;font-weight:500;line-height:1.2}h1{font-size:var(--text-3xl);line-height:var(--lh-3xl);letter-spacing:var(--tracking-heading)}h2{font-size:var(--text-xl);line-height:var(--lh-xl);letter-spacing:var(--tracking-heading)}h3{font-size:var(--text-lg);line-height:var(--lh-lg);letter-spacing:-.006em}h4{font-size:var(--text-md)}h5,h6{font-size:var(--text-base);font-weight:600}p{color:var(--ink-2);line-height:var(--lh-base);text-wrap:pretty}.prose{max-width:68ch;font-family:var(--font-serif);font-size:var(--text-base);color:var(--ink);line-height:1.65}.prose>*+*{margin-top:var(--space-4)}.prose p{color:inherit;white-space:pre-line}a{color:var(--primary);text-underline-offset:.2em;transition:color var(--transition-fast);text-decoration:underline;text-decoration-thickness:1px}a:visited{color:var(--primary)}strong,b{font-weight:600}small{font-size:var(--text-sm)}hr{border:0;border-top:1px solid var(--line)}code,kbd,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}code{background:var(--paper-2);border-radius:var(--radius-sm);padding:.1em .35em}::selection{background:var(--primary);color:var(--on-primary)}::placeholder{color:var(--ink-3);opacity:1}@media (hover:hover){a:hover{color:var(--primary-hover);text-decoration-thickness:2px}}.text-xs{font-size:var(--text-xs);line-height:var(--lh-xs)}.text-sm{font-size:var(--text-sm);line-height:var(--lh-sm)}.text-lg{font-size:var(--text-lg);line-height:var(--lh-lg)}.text-muted{color:var(--ink-2)}.text-center{text-align:center}.font-serif{font-family:var(--font-serif)}.font-sans{font-family:var(--font-sans)}.display{font-size:var(--text-display);line-height:var(--lh-display);letter-spacing:var(--tracking-display)}.eyebrow{font-family:var(--font-sans);font-size:var(--text-sm);line-height:var(--lh-sm);letter-spacing:.01em;color:var(--primary);font-weight:600}.lede{max-width:var(--measure-lede);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);text-wrap:pretty;line-height:1.55}.tabular{font-variant-numeric:tabular-nums}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@keyframes rise{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:none}}.reveal{animation:rise var(--duration-enter) var(--ease-out) both}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:var(--space-2) var(--space-5);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-base);text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast) var(--ease-out);border:1px solid #0000;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.btn:visited{color:inherit}.btn:active:not(:disabled):not([aria-disabled=true]){transform:scale(.98)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-primary{background-color:var(--primary);color:var(--on-primary);box-shadow:inset 0 1px 0 #ffffff1a, var(--shadow-1)}.btn-primary:visited{color:var(--on-primary)}.btn-primary:active{background-color:var(--primary-active)}.btn-secondary{color:var(--primary);border-color:var(--primary);background-color:#0000}.btn-secondary:visited{color:var(--primary)}.btn-secondary:active{background-color:var(--primary-soft)}.btn-danger{background-color:var(--danger);color:#fff}.btn-danger:visited{color:#fff}.btn-danger:active{background-color:var(--danger-hover)}.btn-ghost{color:var(--ink-2);background-color:#0000}.btn-ghost:visited{color:var(--ink-2)}.btn-ghost:active{background-color:var(--paper-2)}@media (hover:hover){.btn-primary:hover{background-color:var(--primary-hover);color:var(--on-primary)}.btn-secondary:hover{background-color:var(--primary-soft);color:var(--primary-hover)}.btn-danger:hover{background-color:var(--danger-hover);color:#fff}.btn-ghost:hover{background-color:var(--paper-2);color:var(--ink)}}.field{gap:var(--space-2);flex-direction:column;display:flex}.label{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink);font-weight:500}.field-hint,.field-error{font-size:var(--text-sm);line-height:var(--lh-sm)}.field-hint{color:var(--ink-2)}.field-error{color:var(--danger)}.input,.textarea,.select{width:100%;min-height:var(--tap-target);padding:var(--space-2) var(--space-3);background-color:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-base);border:1px solid var(--line-strong);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);line-height:1.4}.textarea{min-height:8rem;padding-top:var(--space-3);padding-bottom:var(--space-3);resize:vertical;line-height:1.6}.select{appearance:none;padding-right:var(--space-9);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234A4A55' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;background-size:16px 16px}.input:focus,.textarea:focus,.select:focus{border-color:var(--primary);box-shadow:var(--focus-halo)}.input:disabled,.textarea:disabled,.select:disabled{background-color:var(--paper-2);color:var(--ink-2);cursor:not-allowed}.input[aria-invalid=true],.textarea[aria-invalid=true],.select[aria-invalid=true],.input.is-error,.textarea.is-error,.select.is-error{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger)}input[type=checkbox],input[type=radio]{width:1.25rem;height:1.25rem;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.card{background-color:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-1)}.card-quiet{background-color:var(--paper-2);box-shadow:none;border-color:#0000}.card-crisis{background-color:var(--crisis-soft);border-color:var(--crisis)}.card-interactive{transition:box-shadow var(--transition-base) var(--ease-out), border-color var(--transition-base) var(--ease-out)}@media (hover:hover){.card-interactive:hover{border-color:var(--line-strong);box-shadow:var(--shadow-lift)}}.badge{align-items:center;gap:var(--space-1);padding:2px var(--space-2);background-color:var(--paper-2);color:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:500;line-height:var(--lh-xs);white-space:nowrap;display:inline-flex}.badge-primary{background-color:var(--primary-soft);color:var(--primary);border-color:#0000}.badge-verified{background-color:var(--teal-soft);color:var(--teal);border-color:#0000}.badge-ad{background-color:var(--amber-soft);color:var(--ink);border-color:var(--amber)}.badge-danger{background-color:var(--danger-soft);color:var(--danger);border-color:#0000}.badge-crisis{background-color:var(--crisis-soft);color:var(--crisis);border-color:#0000}.divider{background-color:var(--line);border:0;width:100%;height:1px}.stack{gap:var(--stack-gap,var(--space-4));flex-direction:column;display:flex}.cluster{align-items:center;gap:var(--cluster-gap,var(--space-2));flex-wrap:wrap;display:flex}:focus-visible,.input:focus-visible,.textarea:focus-visible,.select:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.btn-primary:focus-visible{outline-color:var(--primary);box-shadow:inset 0 1px 0 #ffffff1a, 0 0 0 2px var(--paper)}body.hide-on-quick-exit{filter:blur(20px);pointer-events:none;-webkit-user-select:none;user-select:none;transition:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{animation:none}.btn:active:not(:disabled):not([aria-disabled=true]){transform:none}}@media print{nav,header,button,.btn,.no-print{display:none!important}html,body{font-family:var(--font-serif);font-size:12pt;line-height:1.5;color:#000!important;background:#fff!important}*{box-shadow:none!important;text-shadow:none!important}.card,.card-quiet{break-inside:avoid;border-color:#999;background:0 0!important}.badge-crisis,.badge-danger,.badge-verified{-webkit-print-color-adjust:exact;print-color-adjust:exact}p{color:#000;orphans:3;widows:3}h1,h2,h3{break-after:avoid}a,a:visited{color:#000;text-decoration:underline}a[href^=http]:after{content:" (" attr(href) ")";word-break:break-all;font-size:.85em}}.loader-container{--bubble-dark:var(--primary-active);--bubble-base:var(--primary);--bubble-mid:color-mix(in srgb, var(--primary) 78%, var(--primary-soft));--bubble-light:color-mix(in srgb, var(--primary) 58%, var(--primary-soft));--bubble-accent:color-mix(in srgb, var(--primary) 38%, var(--primary-soft));--bubble-size:52px;--bubble-gap:10px;justify-content:center;align-items:center;gap:var(--space-8);width:100%;min-height:100dvh;padding:var(--space-11) var(--space-9);background:var(--surface);isolation:isolate;flex-direction:column;display:flex;position:relative;overflow:hidden}.loader-container.full-screen{z-index:var(--z-quick-exit);animation:loader-fade-in var(--duration-enter) var(--ease-out) both;padding:0;position:fixed;inset:0}.loader-container:before,.loader-container:after{content:"";z-index:-1;filter:blur(80px);opacity:.12;pointer-events:none;border-radius:50%;width:46vmax;height:46vmax;position:absolute}.loader-container:before{background:radial-gradient(circle, var(--bubble-light), transparent 70%);animation:9s ease-in-out infinite alternate loader-drift-a;top:-18vmax;left:-14vmax}.loader-container:after{background:radial-gradient(circle, var(--bubble-base), transparent 70%);animation:11s ease-in-out infinite alternate loader-drift-b;bottom:-20vmax;right:-16vmax}.loader-worm{justify-content:center;align-items:center;gap:var(--bubble-gap);padding:var(--space-7) var(--space-3) var(--space-8);display:flex;position:relative}.loader-worm:after{content:"";background:radial-gradient(ellipse at center, color-mix(in srgb, var(--primary) 22%, transparent) 0%, color-mix(in srgb, var(--primary) 8%, transparent) 45%, transparent 72%);filter:blur(4px);z-index:-1;width:78%;height:14px;animation:1.6s ease-in-out infinite loader-floor-breathe;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.loader-dot{width:var(--bubble-size);height:var(--bubble-size);color:var(--on-primary);font-family:var(--font-sans);letter-spacing:.02em;-webkit-user-select:none;user-select:none;text-shadow:0 1px 2px #00000059;will-change:transform, box-shadow;backface-visibility:hidden;background:radial-gradient(circle at 30% 24%, #ffffff61 0%, #fff0 38%), radial-gradient(circle at 70% 85%, color-mix(in srgb, var(--bubble-accent) 35%, transparent) 0%, transparent 50%), linear-gradient(145deg, var(--bubble-light) 0%, var(--bubble-mid) 45%, var(--bubble-dark) 100%);border-radius:50%;place-items:center;font-size:22px;font-weight:700;line-height:1;display:grid;position:relative}.loader-dot:before{content:"";pointer-events:none;background:linear-gradient(#ffffffa6 0%,#fff0 100%);border-radius:50%;width:46%;height:28%;animation:2.4s ease-in-out infinite loader-gloss;position:absolute;top:8%;left:14%;transform:rotate(-24deg)}.loader-dot:after{content:"";border:2px solid var(--bubble-light);opacity:0;pointer-events:none;border-radius:50%;animation:1.8s cubic-bezier(.2,.6,.3,1) infinite loader-ripple;position:absolute;inset:0}.loader-dot:first-child:before,.loader-dot:first-child:after{animation-delay:0s}.loader-dot:nth-child(2):before,.loader-dot:nth-child(2):after{animation-delay:.15s}.loader-dot:nth-child(3):before,.loader-dot:nth-child(3):after{animation-delay:.3s}.loader-dot:nth-child(4):before,.loader-dot:nth-child(4):after{animation-delay:.45s}.loader-dot:nth-child(5):before,.loader-dot:nth-child(5):after{animation-delay:.6s}.loader-dot:nth-child(6):before,.loader-dot:nth-child(6):after{animation-delay:.75s}.loader-text{font-family:var(--font-sans);letter-spacing:.08em;color:var(--primary);background:linear-gradient(100deg, var(--primary) 0%, var(--primary) 40%, var(--bubble-accent) 50%, var(--primary) 60%, var(--primary) 100%);-webkit-text-fill-color:transparent;background-size:250% 100%;-webkit-background-clip:text;background-clip:text;margin:0;font-size:.95rem;font-weight:500;animation:2.4s linear infinite loader-text-shimmer,2.4s ease-in-out infinite loader-text-float}.loader-text:after{content:"";text-align:left;-webkit-text-fill-color:var(--primary);width:1.2em;animation:1.4s step-end infinite loader-ellipsis;display:inline-block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes loader-fade-in{0%{opacity:0}to{opacity:1}}@keyframes loader-ripple{0%{opacity:0;transform:scale(.9)}15%{opacity:.55}to{opacity:0;transform:scale(1.9)}}@keyframes loader-gloss{0%,to{opacity:.9;transform:rotate(-24deg)translate(0)}50%{opacity:.45;transform:rotate(-18deg)translate(3px,2px)}}@keyframes loader-floor-breathe{0%,to{opacity:.9;transform:translate(-50%)scaleX(1)}50%{opacity:.5;transform:translate(-50%)scaleX(.82)}}@keyframes loader-text-shimmer{0%{background-position:150% 0}to{background-position:-100% 0}}@keyframes loader-text-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes loader-ellipsis{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}@keyframes loader-drift-a{0%{transform:translate(0)scale(1)}to{transform:translate(10vmax,8vmax)scale(1.15)}}@keyframes loader-drift-b{0%{transform:translate(0)scale(1)}to{transform:translate(-9vmax,-7vmax)scale(1.2)}}@media (width<=480px){.loader-container{--bubble-size:40px;--bubble-gap:7px;gap:var(--space-7)}.loader-dot{font-size:17px}}@media (prefers-reduced-motion:reduce){.loader-container:before,.loader-container:after,.loader-worm:after,.loader-dot:before,.loader-dot:after,.loader-text,.loader-text:after{animation:none}.loader-text{-webkit-text-fill-color:var(--primary);background:0 0}.loader-text:after{content:"..."}}.app-shell{--foil-linear:linear-gradient(115deg, #e8a0b4 0%, #f2c27b 25%, #7fc4ad 50%, #8da2e0 75%, #c98ae0 100%);--dock-gap:var(--space-3);--dock-offset:calc(var(--nav-height) + var(--dock-gap) * 2 + env(safe-area-inset-bottom,0px));width:100%;max-width:var(--content-width);background-color:var(--paper);flex-direction:column;flex:1;margin-inline:auto;display:flex;position:relative;overflow-x:clip}@media (width>=640px){#root{background-color:var(--paper-2)}.app-shell{border-inline:var(--shell-border)}}.app-header{z-index:var(--z-sticky);justify-content:space-between;align-items:center;gap:var(--space-4);height:var(--header-height);padding-inline:var(--content-padding);-webkit-backdrop-filter:blur(16px)saturate(1.6);backdrop-filter:blur(16px)saturate(1.6);background:#fbfaf8c7;display:flex;position:sticky;top:0}.app-header:after{content:"";background:var(--foil-linear);opacity:.55;pointer-events:none;height:1px;position:absolute;bottom:0;left:0;right:0}@supports (animation-timeline:scroll()){.app-header:after{opacity:0;animation:linear both header-line;animation-timeline:scroll(root);animation-range:0 80px}@keyframes header-line{to{opacity:.85}}}.brand{min-height:var(--tap-target);color:var(--primary);align-items:center;text-decoration:none;display:inline-flex}.brand:visited{color:var(--primary)}.brand-logo{width:auto;height:32px;display:block}.brand-mark{font-family:var(--font-serif);font-size:var(--text-2xl);line-height:1}.app-header-actions{align-items:center;gap:var(--space-2);display:flex}.header-bell{width:var(--tap-target);height:var(--tap-target);color:var(--ink-2);border-radius:var(--radius-full);transition:background-color var(--transition-fast), color var(--transition-fast), transform var(--transition-base) var(--ease-out);place-items:center;text-decoration:none;display:grid;position:relative}.header-bell:visited{color:var(--ink-2)}.header-bell:active{transform:scale(.94)}.header-bell.has-count{color:var(--ink)}.header-bell.is-active{color:var(--primary);background-color:var(--primary-soft)}@media (hover:hover){.header-bell:hover{background-color:var(--paper-2);color:var(--ink)}.header-bell.is-active:hover{background-color:var(--primary-soft);color:var(--primary)}}.header-bell-count,.nav-badge{font-variant-numeric:tabular-nums;min-width:18px;height:18px;color:var(--ink);background-color:var(--amber);border-radius:var(--radius-full);box-shadow:0 0 0 2px var(--paper);place-items:center;padding-inline:5px;font-size:.6875rem;font-weight:700;line-height:1;display:grid}.header-bell-count{position:absolute;top:4px;right:2px}.header-avatar{border-radius:var(--radius-full);background:var(--foil-linear);width:40px;height:40px;transition:transform var(--transition-base) var(--ease-out), box-shadow var(--transition-base) var(--ease-out);place-items:center;padding:2px;display:grid}.header-avatar:active{transform:scale(.94)}@media (hover:hover){.header-avatar:hover{transform:scale(1.06);box-shadow:0 4px 14px -4px #5c1f2b66}}.header-avatar-inner{width:100%;height:100%;color:var(--ink-2);background-color:var(--surface);border:2px solid var(--paper);border-radius:var(--radius-full);place-items:center;display:grid;overflow:hidden}.header-avatar-inner img{object-fit:cover;width:100%;height:100%}.app-content{min-width:0;padding-bottom:var(--dock-offset);flex-direction:column;flex:1;display:flex}.app-nav{inset-inline:0;bottom:calc(var(--dock-gap) + env(safe-area-inset-bottom,0px));z-index:var(--z-sticky);justify-content:space-between;align-items:stretch;gap:var(--space-1);width:min(calc(100% - var(--dock-gap) * 2), 30rem);height:var(--nav-height);padding:var(--space-1);isolation:isolate;margin-inline:auto;display:flex;position:fixed}.app-nav:before{content:"";z-index:1;pointer-events:none;border:1px solid var(--line);-webkit-backdrop-filter:blur(18px)saturate(1.6);backdrop-filter:blur(18px)saturate(1.6);background:#fffc;border-radius:22px;position:absolute;inset:0;box-shadow:inset 0 1px #ffffffe6,0 12px 32px -8px #1a1a1f38}.nav-item{z-index:2;min-width:0;min-height:var(--tap-target);padding:var(--space-1) var(--space-1);color:var(--ink-2);border-radius:var(--radius-lg);-webkit-tap-highlight-color:transparent;transition:color var(--transition-fast);flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:2px;text-decoration:none;display:flex;position:relative}.nav-item:visited{color:var(--ink-2)}.nav-icon-wrap{border-radius:var(--radius-full);width:44px;height:28px;transition:background-color var(--transition-base) var(--ease-out), color var(--transition-base) var(--ease-out), box-shadow var(--transition-base) var(--ease-out), transform var(--transition-base) var(--ease-out);place-items:center;display:grid;position:relative}.nav-label{max-width:100%;font-size:var(--text-xs);white-space:nowrap;text-overflow:ellipsis;font-weight:500;line-height:1;overflow:hidden}.nav-item:active .nav-icon-wrap{transform:scale(.92)}.nav-item.is-active,.nav-item.is-active:visited{color:var(--primary)}.nav-item.is-active .nav-label{font-weight:700}.nav-item.is-active .nav-icon-wrap{color:var(--on-primary);background-color:var(--primary);transform:translateY(-1px);box-shadow:inset 0 1px #ffffff2e,0 6px 14px -4px #5c1f2b8c}@media (hover:hover){.nav-item:not(.is-active):hover{color:var(--ink)}.nav-item:not(.is-active):hover .nav-icon-wrap{background-color:var(--paper-2)}}.nav-badge{box-shadow:0 0 0 2px var(--surface);position:absolute;top:-6px;right:-2px}.menu-wrap{flex:1 1 0;min-width:0;display:flex}.menu-wrap>.nav-item{flex:1 1 0}.menu-backdrop{z-index:0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);cursor:default;width:100%;height:100%;animation:menu-fade var(--transition-base) ease both;background:#1a1a1f52;position:fixed;inset:0}.menu-panel{inset-inline:0;bottom:calc(var(--nav-height) + var(--dock-gap) * 2 + env(safe-area-inset-bottom,0px));z-index:3;gap:var(--space-5);width:min(calc(100% - var(--dock-gap) * 2), 30rem);max-height:calc(100dvh - var(--header-height) - var(--dock-offset) - var(--space-6));padding:var(--space-4);overscroll-behavior:contain;border:1px solid var(--line);box-shadow:var(--shadow-3), 0 0 0 1px #fff9 inset;-webkit-backdrop-filter:blur(22px)saturate(1.5);backdrop-filter:blur(22px)saturate(1.5);transform-origin:50% 100%;animation:menu-rise .32s var(--ease-out) both;background:#ffffffeb;border-radius:22px;flex-direction:column;margin-inline:auto;display:flex;position:fixed;overflow-y:auto}@keyframes menu-fade{0%{opacity:0}}@keyframes menu-rise{0%{opacity:0;transform:translateY(14px)scale(.97)}}.menu-group{gap:var(--space-2);flex-direction:column;display:flex}.menu-heading{padding-inline:var(--space-1);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);letter-spacing:0;color:var(--ink-2)}.menu-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;display:grid}.menu-tile{--tone:var(--primary);--tone-bg:var(--primary-soft);align-items:center;gap:var(--space-3);min-height:52px;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-2);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);transition:border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out), transform var(--transition-base) var(--ease-out);text-decoration:none;display:flex}.menu-tile:visited{color:var(--ink)}.menu-tile:active{transform:scale(.98)}.menu-tile[data-tone=plum]{--tone:var(--tone-plum);--tone-bg:#7a3b521a}.menu-tile[data-tone=amber]{--tone:#9a5a22;--tone-bg:var(--amber-soft)}.menu-tile[data-tone=teal]{--tone:var(--teal);--tone-bg:var(--teal-soft)}.menu-tile[data-tone=crisis]{--tone:var(--crisis);--tone-bg:var(--crisis-soft)}.menu-tile-icon{width:36px;height:36px;color:var(--tone);background-color:var(--tone-bg);border-radius:var(--radius-sm);transition:background-color var(--transition-base) var(--ease-out), color var(--transition-base) var(--ease-out), transform var(--transition-base) var(--ease-out);flex:none;place-items:center;display:grid}.menu-tile-label{min-width:0;font-size:var(--text-sm);text-wrap:balance;font-weight:500;line-height:1.25}@media (hover:hover){.menu-tile:hover{border-color:var(--line-strong);box-shadow:var(--shadow-lift);transform:translateY(-1px)}.menu-tile:hover .menu-tile-icon{transform:rotate(-6deg)scale(1.06)}}.menu-tile.is-active{border-color:var(--tone);background-color:var(--tone-bg)}.menu-tile.is-active .menu-tile-icon{color:#fff;background-color:var(--tone)}.menu-tile.is-active .menu-tile-label{font-weight:600}.menu-tile[data-tone=crisis]{background-color:var(--crisis-soft);border-color:#8c3a1f59}.menu-tile[data-tone=crisis] .menu-tile-icon{color:#fff;background-color:var(--crisis)}.menu-support{--support-a:color-mix(in srgb, var(--primary) 80%, #fff);--support-b:var(--primary);--support-c:color-mix(in srgb, var(--primary) 68%, #000);isolation:isolate;align-items:center;gap:var(--space-3);min-height:64px;padding:var(--space-3) var(--space-4) var(--space-3) var(--space-3);color:#fff;border-radius:var(--radius-md);background:linear-gradient(135deg, var(--support-a) 0%, var(--support-b) 45%, var(--support-c) 100%) padding-box, var(--foil-linear) border-box;box-shadow:0 10px 24px -12px color-mix(in srgb, var(--primary) 70%, transparent);-webkit-tap-highlight-color:transparent;transition:transform var(--transition-base) var(--ease-out), box-shadow var(--transition-base) var(--ease-out);border:1px solid #0000;text-decoration:none;display:flex;position:relative;overflow:hidden}.menu-support:visited{color:#fff}.menu-support:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(90% 140% at 100% 0,#ffffff38,#0000 55%);position:absolute;inset:0}.menu-support:after{content:"";z-index:-1;pointer-events:none;width:40%;animation:support-sheen .9s var(--ease-out) .45s 1 both;background:linear-gradient(105deg,#0000,#ffffff59,#0000);position:absolute;top:0;bottom:0;left:0;transform:translate(-120%)skew(-12deg)}@keyframes support-sheen{to{transform:translate(340%)skew(-12deg)}}.menu-support-icon{border-radius:var(--radius-full);background:#ffffff29;flex:none;place-items:center;width:40px;height:40px;display:grid;box-shadow:inset 0 0 0 1px #ffffff47}.menu-support-icon svg{filter:drop-shadow(0 0 6px #ffffff73);animation:2.6s ease-in-out 1s infinite support-beat}@keyframes support-beat{0%,70%,to{transform:scale(1)}14%{transform:scale(1.18)}28%{transform:scale(1)}42%{transform:scale(1.12)}}.menu-support-text{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.menu-support-title{font-family:var(--font-serif);font-size:1.0625rem;font-weight:600;line-height:1.2}.menu-support-sub{font-size:var(--text-xs);opacity:.88;line-height:1.3}.menu-support-arrow{opacity:.8;transition:transform var(--transition-base) var(--ease-out);flex:none}.menu-support:active{transform:scale(.985)}@media (hover:hover){.menu-support:hover{box-shadow:0 14px 30px -12px color-mix(in srgb, var(--primary) 80%, transparent);transform:translateY(-1px)}.menu-support:hover .menu-support-arrow{transform:translate(3px)}}.menu-support:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.menu-support.is-active{box-shadow:0 0 0 2px var(--paper), 0 0 0 4px var(--primary)}.app-shell--chat .app-header,.app-shell--chat .app-nav{display:none}.app-shell--chat .app-content{min-height:100dvh;padding-bottom:0}@media (width>=640px){.menu-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.menu-panel{width:min(calc(100% - var(--dock-gap) * 2), 34rem)}}@media (width>=1024px){.app-content{padding-bottom:0}.app-header{background:#fbfaf8d1}.app-nav{inset-block:0 auto;z-index:calc(var(--z-sticky) + 1);justify-content:center;gap:var(--space-1);width:min(var(--content-width), 100%);height:var(--header-height);pointer-events:none;padding:0 9.5rem;top:10px;bottom:auto}.app-nav>*,.app-nav .menu-wrap,.app-nav .menu-panel,.app-nav .menu-backdrop{pointer-events:auto}.app-nav:before{display:none}.nav-item{gap:var(--space-2);height:40px;min-height:40px;padding:0 var(--space-4);border-radius:var(--radius-full);transition:color var(--transition-fast), background-color var(--transition-fast);flex-direction:row;flex:none}.nav-icon-wrap,.nav-item.is-active .nav-icon-wrap{width:auto;height:auto;box-shadow:none;color:inherit;background:0 0;transform:none}.nav-label{font-size:var(--text-sm);line-height:var(--lh-sm)}.nav-item.is-active{color:var(--primary);background-color:var(--primary-soft)}.nav-item.is-active .nav-icon-wrap{color:var(--primary)}@media (hover:hover){.nav-item:not(.is-active):hover{background-color:var(--paper-2)}.nav-item:not(.is-active):hover .nav-icon-wrap{background:0 0}}.nav-badge{box-shadow:0 0 0 2px var(--paper);top:-8px;right:-10px}.menu-wrap{flex:none;position:relative}.menu-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0}.menu-panel{inset-inline:auto 0;top:calc(100% + var(--space-2));width:34rem;max-width:92vw;max-height:calc(100dvh - var(--header-height) - var(--space-6));transform-origin:100% 0;margin-inline:0;animation-name:menu-drop;position:absolute;bottom:auto}@keyframes menu-drop{0%{opacity:0;transform:translateY(-8px)scale(.98)}}}@media (prefers-reduced-motion:reduce){.menu-panel,.menu-backdrop,.menu-support:after,.menu-support-icon svg,.app-header:after{animation:none!important}.app-header:after{opacity:.55}}@property --su-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.su-page{--su-foil:#e8a0b4, #f2c27b, #7fc4ad, #8da2e0, #c98ae0;isolation:isolate;min-height:100dvh;padding:max(var(--space-6), env(safe-area-inset-top)) var(--content-padding) max(var(--space-6), env(safe-area-inset-bottom));color:var(--ink);background:var(--paper);place-items:center;display:grid;position:relative;overflow-x:clip}.su-sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.su-bg{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.su-blob{aspect-ratio:1;border-radius:50%;width:min(46rem,130vw);animation:22s ease-in-out infinite alternate su-drift;position:absolute}.su-blob--plum{background:radial-gradient(circle,#5c1f2b4d,#0000 62%);top:-22%;left:-18%}.su-blob--teal{background:radial-gradient(circle,#2f6b5e42,#0000 62%);animation-duration:28s;animation-delay:-6s;bottom:-26%;right:-22%}.su-blob--amber{background:radial-gradient(circle,#c4783a33,#0000 62%);width:min(30rem,90vw);animation-duration:34s;animation-delay:-12s;top:28%;right:8%}@keyframes su-drift{to{transform:translate(5%,7%)scale(1.1)}}.su-grid{background-image:linear-gradient(90deg,#1a1a1f0d 1px,#0000 1px),linear-gradient(#1a1a1f0d 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 42%,#000,#0000 78%);mask-image:radial-gradient(70% 60% at 50% 42%,#000,#0000 78%)}.su-shell{width:100%;max-width:30rem;display:grid}.su-card,.su-aside{grid-area:1/1}@media (width>=1024px){.su-shell{align-items:center;gap:var(--space-10,5rem);grid-template-columns:minmax(0,1fr) 28rem;max-width:66rem}.su-shell--single{grid-template-columns:minmax(0,30rem);justify-content:center}.su-card{grid-column:2}.su-aside,.su-shell--single .su-card{grid-column:1}}.su-card{min-width:0;padding:var(--space-6) var(--space-5);background:color-mix(in srgb, var(--surface) 80%, transparent);border-radius:calc(var(--radius-lg) + 6px);-webkit-backdrop-filter:blur(22px)saturate(1.5);backdrop-filter:blur(22px)saturate(1.5);animation:su-rise .7s var(--ease-out) both;flex-direction:column;display:flex;position:relative;box-shadow:0 34px 70px -34px #5c1f2b80,0 2px 6px #1a1a1f0a,inset 0 1px #fffc}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.su-card{background:var(--surface)}}@media (width>=640px){.su-card{padding:var(--space-8) var(--space-7)}}.su-card:before{content:"";border-radius:inherit;pointer-events:none;background:conic-gradient(from var(--su-angle), var(--su-foil), #e8a0b4);-webkit-mask-composite:xor;padding:1.5px;animation:12s linear infinite su-spin;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}@keyframes su-spin{to{--su-angle:360deg}}@keyframes su-rise{0%{opacity:0;transform:translateY(18px)}}.su-card-logo{width:50%;height:4rem;margin-bottom:var(--space-5);display:block}@media (width>=1024px){.su-shell:not(.su-shell--single) .su-card-logo{display:none}}.su-title{letter-spacing:-.03em;font-size:clamp(2rem,1.5rem + 2vw,2.5rem);font-weight:500;line-height:1.08}.su-subtitle{margin-top:var(--space-2);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.5}@media (width>=1024px){.su-shell:not(.su-shell--single) .su-subtitle{display:none}.su-title{margin-bottom:var(--space-1)}}.su-alert{margin-top:var(--space-5);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--ink);background:var(--danger-soft);border-left:3px solid var(--danger);border-radius:var(--radius-md);animation:su-fade .3s var(--ease-out) both;line-height:1.5}@keyframes su-fade{0%{opacity:0;transform:translateY(-4px)}}.su-form{gap:var(--space-4);margin-top:var(--space-6);flex-direction:column;display:flex}.su-form>*{animation:su-rise .6s var(--ease-out) both}.su-form>:first-child{animation-delay:90ms}.su-form>:nth-child(2){animation-delay:.14s}.su-form>:nth-child(3){animation-delay:.19s}.su-form>:nth-child(4){animation-delay:.24s}.su-field{gap:var(--space-2);flex-direction:column;display:flex}.su-field label{font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);color:var(--ink)}.su-field input{width:100%;min-height:52px;padding:0 var(--space-4);font-family:var(--font-sans);color:var(--ink);background:color-mix(in srgb, var(--surface) 92%, transparent);border:1px solid var(--line-strong);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out), background-color var(--transition-fast);outline:2px solid #0000;font-size:1rem}.su-field input:focus{background:var(--surface);border-color:var(--primary);box-shadow:var(--focus-halo)}.su-field input[aria-invalid=true]{border-color:var(--danger)}.su-field input[aria-invalid=true]:focus{box-shadow:0 0 0 3px var(--danger-soft)}.su-field input:-webkit-autofill{-webkit-text-fill-color:var(--ink);-webkit-box-shadow:0 0 0 100px var(--surface) inset}.su-field input::-ms-reveal{display:none}.su-error{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--danger)}.su-hint{align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:500;line-height:var(--lh-xs);color:var(--ink-2);display:inline-flex}.su-hint:before{content:"";background:var(--amber);border-radius:var(--radius-full);width:8px;height:8px;box-shadow:0 0 0 3px var(--amber-soft)}.su-input-wrap{position:relative}.su-input-wrap input{padding-right:3.5rem}.su-toggle{width:var(--tap-target);height:var(--tap-target);color:var(--ink-2);border-radius:var(--radius-sm);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), color var(--transition-fast);place-items:center;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.su-toggle[aria-pressed=true]{color:var(--primary)}.su-toggle:active{background:var(--paper-2)}@media (hover:hover){.su-toggle:hover{color:var(--ink);background:var(--paper-2)}.su-toggle[aria-pressed=true]:hover{color:var(--primary)}}.su-toggle:focus-visible{outline:var(--focus-ring);outline-offset:-2px}.su-strength{--su-fill:var(--danger);opacity:0;transition:grid-template-rows .4s var(--ease-out), opacity .25s ease;grid-template-rows:0fr;display:grid}.su-strength[data-active=true]{opacity:1;grid-template-rows:1fr}.su-strength[data-level="2"]{--su-fill:var(--amber)}.su-strength[data-level="3"]{--su-fill:var(--teal)}.su-strength[data-level="4"]{--su-fill:linear-gradient(90deg, var(--su-foil), var(--su-foil))}.su-strength-inner{gap:var(--space-3);min-height:0;padding-top:var(--space-1);flex-direction:column;display:flex;overflow:hidden}.su-strength-top{align-items:center;gap:var(--space-3);display:flex}.su-meter{flex:1;grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.su-meter-seg{background:var(--paper-2);border-radius:var(--radius-full);height:6px;position:relative;overflow:hidden}.su-meter-seg:after{content:"";background:var(--su-fill);border-radius:inherit;transform-origin:0;transition:transform .45s var(--ease-out), background-color .3s;background-size:400% 100%;position:absolute;inset:0;transform:scaleX(0)}.su-meter-seg:nth-child(2):after{transition-delay:60ms}.su-meter-seg:nth-child(3):after{transition-delay:.12s}.su-meter-seg:nth-child(4):after{transition-delay:.18s}.su-strength[data-level="1"] .su-meter-seg:nth-child(-n+1):after,.su-strength[data-level="2"] .su-meter-seg:nth-child(-n+2):after,.su-strength[data-level="3"] .su-meter-seg:nth-child(-n+3):after,.su-strength[data-level="4"] .su-meter-seg:nth-child(-n+4):after{transform:scaleX(1)}.su-strength[data-level="4"] .su-meter-seg:after{animation:3s linear infinite su-shimmer}@keyframes su-shimmer{to{background-position:400% 0}}.su-strength-label{min-width:5.5rem;font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);text-align:right;color:var(--ink)}.su-rules{gap:var(--space-2);list-style:none;display:grid}.su-rule{align-items:center;gap:var(--space-2);font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ink-2);transition:color var(--transition-fast);display:flex}.su-rule-icon{color:#0000;border:1.5px solid var(--line-strong);border-radius:var(--radius-full);width:16px;height:16px;transition:background-color var(--transition-base) var(--ease-out), border-color var(--transition-base) var(--ease-out), color var(--transition-base), transform var(--transition-base) var(--ease-out);flex:none;place-items:center;display:grid}.su-rule.is-met{color:var(--ink)}.su-rule.is-met .su-rule-icon{color:var(--on-primary);background:var(--teal);border-color:var(--teal);transform:scale(1.08)}.su-consent{background:color-mix(in srgb, var(--paper) 70%, transparent);border:1px solid var(--line);border-radius:var(--radius-lg);min-width:0;margin:0;padding:0;overflow:hidden}.su-consent-row+.su-consent-row{border-top:1px solid var(--line)}.su-check{align-items:start;gap:var(--space-3);padding:var(--space-4);font-size:var(--text-sm);color:var(--ink-2);cursor:pointer;-webkit-tap-highlight-color:transparent;grid-template-columns:auto minmax(0,1fr);line-height:1.5;display:grid}.su-check a{color:var(--primary);text-underline-offset:2px;font-weight:500}.su-check input{appearance:none;background:var(--surface);border:1.5px solid var(--line-strong);cursor:pointer;width:22px;height:22px;min-height:0;transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out);border-radius:7px;place-items:center;margin:1px 0 0;padding:0;display:grid}.su-check input:after{content:"";border-bottom:2.5px solid var(--on-primary);border-left:2.5px solid var(--on-primary);width:10px;height:6px;transition:transform .2s var(--ease-out);transform:translateY(-1px)rotate(-45deg)scale(0)}.su-check input:checked{background:var(--primary);border-color:var(--primary)}.su-check input:checked:after{transform:translateY(-1px)rotate(-45deg)scale(1)}.su-check input[aria-invalid=true]{border-color:var(--danger)}.su-check input:focus-visible{outline:var(--focus-ring);outline-offset:2px}.su-check:has(input:checked){color:var(--ink)}.su-error--row{padding:0 var(--space-4) var(--space-4) calc(var(--space-4) + 22px + var(--space-3));margin-top:calc(var(--space-2) * -1)}.su-submit,.su-google,.su-secondary{justify-content:center;align-items:center;gap:var(--space-2);width:100%;font-family:var(--font-sans);font-size:var(--text-base);text-align:center;border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;line-height:1.2;text-decoration:none;display:inline-flex}.su-submit{min-height:54px;padding-inline:var(--space-5);color:var(--on-primary);background:var(--primary);transition:background-color var(--transition-fast), transform var(--transition-fast) var(--ease-out), box-shadow var(--transition-base) var(--ease-out);font-weight:600;position:relative;overflow:hidden;box-shadow:0 12px 24px -14px #5c1f2bb3,inset 0 1px #ffffff24}.su-submit:visited{color:var(--on-primary)}.su-submit:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 35%,#ffffff38 50%,#0000 65%);position:absolute;inset:0;transform:translate(-120%)}.su-submit svg{transition:transform var(--transition-base) var(--ease-out);flex:none}.su-submit:active:not(:disabled){background:var(--primary-active);transform:scale(.985)}@media (hover:hover){.su-submit:hover:not(:disabled){background:var(--primary-hover);color:var(--on-primary)}.su-submit:hover:not(:disabled) svg{transform:translate(3px)}.su-submit:hover:not(:disabled):after{transition:transform .8s var(--ease-out);transform:translate(120%)}}.su-submit:focus-visible,.su-google:focus-visible,.su-secondary:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.su-submit:disabled,.su-google:disabled,.su-secondary:disabled{opacity:.6;cursor:progress}.su-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite su-turn}@keyframes su-turn{to{transform:rotate(360deg)}}.su-google,.su-secondary{min-height:52px;padding-inline:var(--space-5);color:var(--ink);background:color-mix(in srgb, var(--surface) 92%, transparent);border:1px solid var(--line-strong);transition:background-color var(--transition-fast), border-color var(--transition-fast);font-weight:500}.su-google:active:not(:disabled),.su-secondary:active:not(:disabled){background:var(--paper-2)}@media (hover:hover){.su-google:hover:not(:disabled),.su-secondary:hover:not(:disabled){background:var(--surface);border-color:var(--ink-3)}}.su-divider{align-items:center;gap:var(--space-4);margin-block:var(--space-5);font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ink-2);display:flex}.su-divider:before,.su-divider:after{content:"";background:var(--line);flex:1;height:1px}.su-footer{margin-top:var(--space-6);font-size:var(--text-sm);line-height:var(--lh-sm);text-align:center;color:var(--ink-2)}.su-footer a{color:var(--primary);text-underline-offset:3px;font-weight:600}.su-footer--back a{align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding-inline:var(--space-3);border-radius:var(--radius-full);transition:background-color var(--transition-fast);text-decoration:none;display:inline-flex}.su-footer--back svg{transition:transform var(--transition-base) var(--ease-out)}@media (hover:hover){.su-footer--back a:hover{background:var(--primary-soft)}.su-footer--back a:hover svg{transform:translate(-3px)}}.su-footer--back a:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.su-link-btn{min-height:var(--tap-target);padding-inline:var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--primary);border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast);font-weight:600}.su-link-btn:active{background:var(--primary-soft)}@media (hover:hover){.su-link-btn:hover{background:var(--primary-soft)}}.su-link-btn:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.su-card--center{text-align:center;align-items:center}.su-mail{width:4.5rem;height:4.5rem;margin-bottom:var(--space-5);color:var(--primary);background:var(--primary-soft);border-radius:50%;place-items:center;display:grid;position:relative}.su-mail:before,.su-mail:after{content:"";border:1.5px solid var(--primary);opacity:0;animation:su-ping 2.8s var(--ease-out) infinite;border-radius:50%;position:absolute;inset:0}.su-mail:after{animation-delay:1.4s}@keyframes su-ping{0%{opacity:.45;transform:scale(1)}to{opacity:0;transform:scale(1.9)}}.su-lede{max-width:34ch;margin-top:var(--space-3);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.55}.su-email{max-width:100%;margin-top:var(--space-3);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);color:var(--ink);background:var(--paper-2);border-radius:var(--radius-full);overflow-wrap:anywhere}.su-actions{gap:var(--space-3);width:100%;margin-top:var(--space-6);flex-direction:column;display:flex}.su-status{margin-top:var(--space-4);font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2)}.su-status--error{color:var(--danger)}.su-aside{display:none}@media (width>=1024px){.su-aside{align-items:flex-start;gap:var(--space-7);padding-right:var(--space-6);animation:su-rise .9s var(--ease-out) .1s both;flex-direction:column;display:flex}}.su-aside-logo{width:auto;height:2.5rem;display:block}.su-orb{aspect-ratio:1;perspective:800px;align-self:center;width:min(100%,18rem);position:relative}.su-orb-core{background:radial-gradient(circle at 32% 28%, #fffffff2, #ffffff1f 38%, transparent 56%), conic-gradient(from var(--su-angle), var(--su-foil), #e8a0b4);border-radius:50%;animation:14s linear infinite su-spin;position:absolute;inset:18%;box-shadow:inset -16px -20px 40px #5c1f2b47,0 36px 60px -22px #5c1f2b80}.su-orb-ring{border:1px solid #5c1f2b47;border-radius:50%;animation:18s linear infinite su-orbit;position:absolute;inset:2%;transform:rotateX(72deg)rotate(0)}.su-orb-ring:after{content:"";background:var(--primary);width:9px;height:9px;box-shadow:0 0 0 4px var(--primary-soft);border-radius:50%;margin-left:-4px;position:absolute;top:-5px;left:50%}.su-orb-ring--front{border-color:#2f6b5e57;animation-duration:26s;animation-direction:reverse;inset:-8%}.su-orb-ring--front:after{background:var(--teal);box-shadow:0 0 0 4px var(--teal-soft)}@keyframes su-orbit{0%{transform:rotateX(72deg)rotate(0)}to{transform:rotateX(72deg)rotate(360deg)}}.su-aside-title{max-width:18ch;font-family:var(--font-serif);letter-spacing:-.03em;text-wrap:balance;font-size:clamp(2.25rem,1.2rem + 2.4vw,3.25rem);font-weight:500;line-height:1.08}.su-chips{gap:var(--space-2);flex-wrap:wrap;list-style:none;display:flex}.su-chip{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--ink);background:color-mix(in srgb, var(--surface) 70%, transparent);border:1px solid var(--line);border-radius:var(--radius-full);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-weight:500;line-height:1.2;display:inline-flex}.su-chip svg{color:var(--primary)}@media (width<=359px){.su-card{padding:var(--space-5) var(--space-4)}.su-check{padding:var(--space-3)}.su-error--row{padding-left:calc(var(--space-3) + 22px + var(--space-3))}}@media (prefers-reduced-motion:reduce){.su-card,.su-aside,.su-form>*,.su-alert,.su-blob,.su-card:before,.su-orb-core,.su-orb-ring,.su-mail:before,.su-mail:after,.su-strength[data-level="4"] .su-meter-seg:after{animation:none}.su-mail:before,.su-mail:after{display:none}.su-submit:active:not(:disabled){transform:none}.su-submit:after{display:none}.su-meter-seg:after,.su-strength{transition:none}}@property --ob-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.onboarding-page{--ob-foil:#e8a0b4, #f2c27b, #7fc4ad, #8da2e0, #c98ae0;isolation:isolate;width:100%;max-width:40rem;min-height:100dvh;padding-inline:var(--content-padding);color:var(--ink);flex-direction:column;margin-inline:auto;display:flex;position:relative}.onboarding-page:before,.onboarding-page:after{content:"";z-index:-1;pointer-events:none;position:fixed}.onboarding-page:before{background:radial-gradient(46rem 30rem at 8% 0,#5c1f2b33,#0000 65%),radial-gradient(40rem 28rem at 100% 100%,#2f6b5e2e,#0000 65%),radial-gradient(28rem 20rem at 92% 22%,#c4783a24,#0000 65%),radial-gradient(26rem 18rem at 4% 82%,#c98ae01f,#0000 65%);animation:26s ease-in-out infinite alternate ob-drift;inset:-10%}.onboarding-page:after{background-image:linear-gradient(90deg,#1a1a1f0b 1px,#0000 1px),linear-gradient(#1a1a1f0b 1px,#0000 1px);background-size:44px 44px;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 35%,#000,#0000 78%);mask-image:radial-gradient(70% 60% at 50% 35%,#000,#0000 78%)}@keyframes ob-drift{to{transform:translate(2%,3%)scale(1.06)}}.onboarding-page .onboarding-progress{z-index:10;margin-inline:calc(var(--content-padding) * -1);padding:max(var(--space-4), env(safe-area-inset-top)) var(--content-padding) var(--space-3);background:color-mix(in srgb, var(--paper) 78%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.2);backdrop-filter:blur(14px)saturate(1.2);gap:6px;display:flex;position:sticky;top:0}.onboarding-page .progress-dot{background:var(--paper-2);border-radius:var(--radius-full);flex:1;height:5px;position:relative;overflow:hidden}.onboarding-page .progress-dot:after{content:"";background:var(--primary);border-radius:inherit;transform-origin:0;transition:transform .55s var(--ease-out);position:absolute;inset:0;transform:scaleX(0)}.onboarding-page .progress-dot.active:after{transform:scaleX(1)}.onboarding-page .progress-dot.active:not(:has(~.progress-dot.active)){box-shadow:0 0 10px #8da2e099}.onboarding-page .progress-dot.active:not(:has(~.progress-dot.active)):after{background:linear-gradient(90deg, var(--ob-foil), var(--ob-foil));background-size:400% 100%;animation:3.5s linear infinite ob-shimmer}@keyframes ob-shimmer{to{background-position:400% 0}}.onboarding-page .onboarding-content{padding:var(--space-6) 0 var(--space-8);flex:1;position:relative}@media (width>=640px){.onboarding-page{padding-top:var(--space-6)}.onboarding-page .onboarding-progress{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;margin-inline:0;padding-inline:0;position:static}.onboarding-page .onboarding-content{margin-top:var(--space-4);padding:var(--space-8) var(--space-7);background:color-mix(in srgb, var(--surface) 80%, transparent);border-radius:calc(var(--radius-lg) + 6px);-webkit-backdrop-filter:blur(22px)saturate(1.5);backdrop-filter:blur(22px)saturate(1.5);flex:0 auto;box-shadow:0 34px 70px -34px #5c1f2b73,0 2px 6px #1a1a1f0a,inset 0 1px #fffc}.onboarding-page .onboarding-content:before{content:"";border-radius:inherit;pointer-events:none;background:conic-gradient(from var(--ob-angle), var(--ob-foil), #e8a0b4);-webkit-mask-composite:xor;padding:1.5px;animation:14s linear infinite ob-spin;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}}@keyframes ob-spin{to{--ob-angle:360deg}}.onboarding-page .onboarding-step{gap:var(--space-5);flex-direction:column;display:flex}.onboarding-page .onboarding-step>*{animation:ob-rise .55s var(--ease-out) both}.onboarding-page .onboarding-step>:first-child{animation-delay:0s}.onboarding-page .onboarding-step>:nth-child(2){animation-delay:50ms}.onboarding-page .onboarding-step>:nth-child(3){animation-delay:.1s}.onboarding-page .onboarding-step>:nth-child(4){animation-delay:.15s}.onboarding-page .onboarding-step>:nth-child(5){animation-delay:.2s}.onboarding-page .onboarding-step>:nth-child(n+6){animation-delay:.25s}@keyframes ob-rise{0%{opacity:0;transform:translateY(14px)}}.onboarding-page .onboarding-step h1{letter-spacing:-.03em;text-wrap:balance;font-size:clamp(2rem,1.4rem + 2.6vw,2.875rem);font-weight:500;line-height:1.06}.onboarding-page .onboarding-step:has(.safety-card) h1{color:var(--primary);background:linear-gradient(110deg, var(--primary) 10%, var(--tone-plum) 45%, var(--teal) 95%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.onboarding-page .onboarding-subtitle{max-width:46ch;font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.55}.onboarding-page .onboarding-step h1+.onboarding-subtitle{margin-top:calc(var(--space-3) * -1);margin-bottom:var(--space-2)}.onboarding-page .onboarding-field{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.onboarding-page .onboarding-field>label{align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);color:var(--ink);flex-wrap:wrap;display:flex}.onboarding-page .ob-required{padding:1px var(--space-2);font-size:var(--text-xs);font-weight:600;line-height:var(--lh-xs);color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-full)}.onboarding-page .onboarding-field input[type=text],.onboarding-page .onboarding-field input[type=date],.onboarding-page .onboarding-field select,.onboarding-page .onboarding-field textarea{width:100%;min-height:52px;padding:0 var(--space-4);font-family:var(--font-sans);color:var(--ink);background-color:color-mix(in srgb, var(--surface) 92%, transparent);border:1px solid var(--line-strong);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out), background-color var(--transition-fast);outline:2px solid #0000;font-size:1rem;line-height:1.4}.onboarding-page .onboarding-field input::placeholder,.onboarding-page .onboarding-field textarea::placeholder{color:var(--ink-3)}.onboarding-page .onboarding-field input:focus,.onboarding-page .onboarding-field select:focus,.onboarding-page .onboarding-field textarea:focus{background-color:var(--surface);border-color:var(--primary);box-shadow:var(--focus-halo)}.onboarding-page .onboarding-field input:disabled{color:var(--ink-3);cursor:not-allowed;background-color:var(--paper-2)}.onboarding-page .onboarding-field input[type=date]{appearance:none;text-align:left;display:block}.onboarding-page .onboarding-field input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6}.onboarding-page .onboarding-field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B6B73' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;padding-right:2.75rem}.onboarding-page .onboarding-field textarea{min-height:7.5rem;padding:var(--space-3) var(--space-4);font-family:var(--font-serif);resize:vertical;line-height:1.55}.onboarding-page .ob-field-hint{font-size:var(--text-sm);color:var(--ink-2);line-height:1.45}.onboarding-page .ob-field-hint--warn,.onboarding-page .ob-toggle-warning{padding:var(--space-3) var(--space-4);color:var(--ink);background:var(--amber-soft);border-left:3px solid var(--amber);border-radius:var(--radius-md);animation:ob-fade .3s var(--ease-out) both}.onboarding-page .ob-toggle-warning{font-size:var(--text-sm);line-height:1.5}@keyframes ob-fade{0%{opacity:0;transform:translateY(-4px)}}.onboarding-page .ob-copy-note{padding:var(--space-4);font-size:var(--text-sm);color:var(--ink-2);background:color-mix(in srgb, var(--paper-2) 80%, transparent);border-left:3px solid var(--primary);border-radius:var(--radius-md);line-height:1.55}.onboarding-page .ob-dob-group{gap:var(--space-2);grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,1.1fr);display:grid}.onboarding-page .ob-dob-group .ob-select{min-height:52px;padding:0 var(--space-3);font-family:var(--font-sans);color:var(--ink);background-color:color-mix(in srgb, var(--surface) 92%, transparent);border:1px solid var(--line-strong);border-radius:var(--radius-md);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236B6B73' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-2) center;padding-right:var(--space-6);transition:border-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out), background-color var(--transition-fast);outline:2px solid #0000;font-size:1rem;line-height:1.4}.onboarding-page .ob-dob-group .ob-select:focus{background-color:var(--surface);border-color:var(--primary);box-shadow:var(--focus-halo)}.onboarding-page .ob-dob-group .ob-select:disabled{color:var(--ink-3);cursor:not-allowed;background-color:var(--paper-2)}@media (width<=359px){.onboarding-page .ob-dob-group{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr);gap:6px}.onboarding-page .ob-dob-group .ob-select{padding-inline:var(--space-2);padding-right:var(--space-5);background-position:right 6px center;font-size:.9375rem}}.onboarding-page .chip-group{gap:var(--space-2);flex-wrap:wrap;display:flex}.onboarding-page .chip{min-height:44px;padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink-2);background:color-mix(in srgb, var(--surface) 92%, transparent);border:1.5px solid var(--line-strong);border-radius:var(--radius-full);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), transform var(--transition-fast) var(--ease-out);align-items:center;font-weight:500;line-height:1.2;display:inline-flex}.onboarding-page .chip:before{content:"";opacity:0;width:0;height:6px;transition:width var(--transition-base) var(--ease-out), margin-right var(--transition-base) var(--ease-out), opacity var(--transition-fast);border-bottom:2px solid;border-left:2px solid;flex:none;margin-right:0;transform:translateY(-1px)rotate(-45deg)}.onboarding-page .chip.selected{color:var(--primary);background:var(--primary-soft);border-color:var(--primary)}.onboarding-page .chip.selected:before{width:10px;margin-right:var(--space-2);opacity:1}.onboarding-page .chip:active{transform:scale(.97)}@media (hover:hover){.onboarding-page .chip:not(.selected):hover{color:var(--ink);background:var(--surface);border-color:var(--ink-3)}}.onboarding-page .chip:focus-visible{outline:var(--focus-ring);outline-offset:2px}.onboarding-page .ob-combobox,.onboarding-page .ob-combobox-input-wrap{position:relative}.onboarding-page .ob-combobox-input{padding-right:2.75rem}.onboarding-page .ob-combobox-chevron{top:50%;right:var(--space-4);color:var(--ink-3);pointer-events:none;transition:transform var(--transition-base) var(--ease-out), color var(--transition-fast);position:absolute;transform:translateY(-50%)}.onboarding-page .ob-combobox-input[aria-expanded=true]+.ob-combobox-chevron{color:var(--primary);transform:translateY(-50%)rotate(180deg)}.onboarding-page .ob-combobox-list{z-index:30;overscroll-behavior:contain;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);max-height:15rem;box-shadow:var(--shadow-3);animation:ob-fade .2s var(--ease-out) both;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.onboarding-page .ob-combobox-list>li{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--text-base);color:var(--ink);border-radius:var(--radius-md);cursor:pointer;line-height:1.3;display:flex}.onboarding-page .ob-combobox-list>li.is-highlighted{background:var(--primary-soft)}.onboarding-page .ob-combobox-list>li svg{color:var(--primary);flex:none}.onboarding-page .ob-combobox-list>.ob-combobox-status{font-size:var(--text-sm);color:var(--ink-2);cursor:default}.onboarding-page .ob-combobox-list>.ob-combobox-status--error{color:var(--danger)}.onboarding-page .toggle-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-4) var(--space-4) var(--space-5);background:color-mix(in srgb, var(--surface) 90%, transparent);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);display:flex}.onboarding-page .toggle-info{min-width:0}.onboarding-page .toggle-info h3{font-family:var(--font-sans);font-size:var(--text-base);font-weight:600;line-height:1.3}.onboarding-page .toggle-info p{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--ink-2);line-height:1.5}.onboarding-page .toggle-switch{cursor:pointer;flex:none;width:56px;height:44px;position:relative}.onboarding-page .toggle-switch input{z-index:1;cursor:pointer;opacity:0;width:100%;height:100%;margin:0;position:absolute;inset:0}.onboarding-page .toggle-slider{background:var(--line-strong);border-radius:var(--radius-full);width:52px;height:30px;transition:background-color var(--transition-base) var(--ease-out), box-shadow var(--transition-base) var(--ease-out);position:absolute;top:50%;left:2px;transform:translateY(-50%)}.onboarding-page .toggle-slider:before{content:"";width:24px;height:24px;transition:transform var(--transition-base) var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #1a1a1f4d}.onboarding-page .toggle-switch input:checked+.toggle-slider{background:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.onboarding-page .toggle-switch input:checked+.toggle-slider:before{transform:translate(22px)}.onboarding-page .toggle-switch input:focus-visible+.toggle-slider{outline:var(--focus-ring);outline-offset:3px}.onboarding-page .ob-fieldset{border:0;min-width:0;margin:0;padding:0}.onboarding-page .ob-fieldset-legend{margin-bottom:var(--space-3);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);color:var(--ink);padding:0}.onboarding-page .ob-radio-group{gap:var(--space-3);display:grid}.onboarding-page .ob-radio{align-items:start;gap:var(--space-3);padding:var(--space-4);background:color-mix(in srgb, var(--surface) 90%, transparent);border:1.5px solid var(--line);border-radius:var(--radius-lg);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out);grid-template-columns:auto minmax(0,1fr);display:grid}@media (hover:hover){.onboarding-page .ob-radio:not(.is-selected):hover{border-color:var(--line-strong)}}.onboarding-page .ob-radio.is-selected{background:color-mix(in srgb, var(--primary-soft) 55%, var(--surface));border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.onboarding-page .ob-radio:has(input:focus-visible){outline:var(--focus-ring);outline-offset:3px}.onboarding-page .ob-radio input{appearance:none;background:var(--surface);border:1.5px solid var(--line-strong);cursor:pointer;width:22px;height:22px;transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out);border-radius:50%;margin:1px 0 0}.onboarding-page .ob-radio input:checked{background:var(--primary);border-color:var(--primary);box-shadow:inset 0 0 0 4.5px var(--surface)}.onboarding-page .ob-radio-text{flex-direction:column;gap:2px;min-width:0;display:flex}.onboarding-page .ob-radio-title{font-size:var(--text-base);font-weight:600;line-height:1.3}.onboarding-page .ob-radio-hint{font-size:var(--text-sm);color:var(--ink-2);line-height:1.5}.onboarding-page .onboarding-step:has(.safety-card){counter-reset:ob-safety}.onboarding-page .safety-card{padding:var(--space-5) var(--space-5) var(--space-5) calc(var(--space-5) + 2.75rem);background:color-mix(in srgb, var(--surface) 90%, transparent);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);counter-increment:ob-safety;position:relative}.onboarding-page .safety-card:before{content:counter(ob-safety, decimal-leading-zero);top:var(--space-5);left:var(--space-5);font-family:var(--font-serif);font-size:var(--text-lg);letter-spacing:.02em;color:var(--primary);font-variant-numeric:tabular-nums;font-weight:500;line-height:1.2;position:absolute}.onboarding-page .safety-card h3{font-family:var(--font-serif);font-size:var(--text-md);letter-spacing:var(--tracking-heading);font-weight:500;line-height:1.3}.onboarding-page .safety-card p{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--ink-2);line-height:1.6}.onboarding-page .safety-card:last-child{background:var(--crisis-soft,#f5ded3);border-color:color-mix(in srgb, var(--crisis,#8c3a1f) 30%, transparent)}.onboarding-page .safety-card:last-child:before{color:var(--crisis,#8c3a1f)}.onboarding-page .safety-card:last-child p{color:var(--ink)}.onboarding-page .onboarding-nav{z-index:10;gap:var(--space-3);margin-inline:calc(var(--content-padding) * -1);padding:var(--space-3) var(--content-padding) calc(var(--space-3) + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--paper) 82%, transparent);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(14px)saturate(1.2);backdrop-filter:blur(14px)saturate(1.2);display:flex;position:sticky;bottom:0}@media (width>=640px){.onboarding-page .onboarding-nav{margin-inline:0;margin-bottom:var(--space-6);padding:var(--space-4) 0 0;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-top:0}}.onboarding-page .btn-primary,.onboarding-page .btn-secondary{min-height:54px;padding-inline:var(--space-6);font-family:var(--font-sans);font-size:var(--text-base);border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;line-height:1.2;display:inline-flex}.onboarding-page .btn-primary{color:var(--on-primary);background:var(--primary);transition:background-color var(--transition-fast), transform var(--transition-fast) var(--ease-out), opacity var(--transition-fast);flex:1;font-weight:600;position:relative;overflow:hidden;box-shadow:0 12px 24px -14px #5c1f2bb3,inset 0 1px #ffffff24}.onboarding-page .btn-primary:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 35%,#ffffff38 50%,#0000 65%);position:absolute;inset:0;transform:translate(-120%)}.onboarding-page .btn-primary:active:not(:disabled){background:var(--primary-active);transform:scale(.985)}@media (hover:hover){.onboarding-page .btn-primary:hover:not(:disabled){background:var(--primary-hover)}.onboarding-page .btn-primary:hover:not(:disabled):after{transition:transform .8s var(--ease-out);transform:translate(120%)}}.onboarding-page .btn-secondary{color:var(--ink);background:color-mix(in srgb, var(--surface) 92%, transparent);border:1px solid var(--line-strong);transition:background-color var(--transition-fast), border-color var(--transition-fast);flex:none;font-weight:500}.onboarding-page .btn-secondary:active:not(:disabled){background:var(--paper-2)}@media (hover:hover){.onboarding-page .btn-secondary:hover:not(:disabled){background:var(--surface);border-color:var(--ink-3)}}.onboarding-page .btn-primary:focus-visible,.onboarding-page .btn-secondary:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.onboarding-page .btn-primary:disabled{cursor:not-allowed;opacity:.45;box-shadow:none}.onboarding-page .btn-secondary:disabled{cursor:progress;opacity:.5}@media (width<=359px){.onboarding-page .toggle-row{flex-direction:column;align-items:flex-start}.onboarding-page .btn-primary,.onboarding-page .btn-secondary{padding-inline:var(--space-4)}}@media (prefers-reduced-motion:reduce){.onboarding-page:before,.onboarding-page .onboarding-content:before,.onboarding-page .onboarding-step>*,.onboarding-page .ob-field-hint--warn,.onboarding-page .ob-toggle-warning,.onboarding-page .ob-combobox-list{animation:none}.onboarding-page .progress-dot.active:not(:has(~.progress-dot.active)):after{animation:none}.onboarding-page .progress-dot:after{transition:none}.onboarding-page .btn-primary:after{display:none}.onboarding-page .btn-primary:active:not(:disabled),.onboarding-page .chip:active{transform:none}}.modal-backdrop{z-index:100;background:#00000080;justify-content:center;align-items:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--paper);border-radius:16px 16px 0 0;width:100%;max-width:500px;max-height:90vh;padding:24px;animation:.3s slideUp;overflow-y:auto}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h2{margin:0;font-size:1.2rem}.modal-close{color:var(--ink-2);cursor:pointer;background:0 0;border:none;padding:4px}.modal-subtitle{color:var(--ink-2);margin-bottom:20px;font-size:.85rem}.reason-list{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.reason-option{border:1px solid var(--line);cursor:pointer;background:var(--paper);text-align:left;width:100%;font-family:var(--font-sans);color:var(--ink);border-radius:8px;align-items:center;gap:12px;padding:12px 16px;font-size:.9rem;transition:all .15s;display:flex}.reason-option:hover{border-color:var(--primary)}.reason-option.selected{border-color:var(--primary);background:var(--primary-soft);font-weight:500}.report-details{border:1px solid var(--line);width:100%;font-family:var(--font-sans);resize:vertical;background:var(--paper-2);border-radius:8px;min-height:80px;margin-bottom:16px;padding:12px;font-size:.9rem}.report-details:focus{border-color:var(--primary);outline:none}.modal-actions{gap:12px;margin-top:8px;display:flex}.btn-report-submit{background:var(--danger);color:#fff;cursor:pointer;border:none;border-radius:10px;flex:1;padding:14px;font-size:1rem;font-weight:600}.btn-report-submit:disabled{opacity:.5;cursor:not-allowed}.btn-report-cancel{border:1px solid var(--line);color:var(--ink-2);cursor:pointer;background:0 0;border-radius:10px;flex:1;padding:14px;font-size:1rem;font-weight:500}.modal-success{text-align:center;padding:24px 0}.modal-success h3{color:var(--success);margin-bottom:8px}.modal-success p{color:var(--ink-2);font-size:.9rem}.mf-figure{--media-max-h:min(68dvh, 540px);margin:0}@media (width>=1024px){.mf-figure{--media-max-h:min(72vh, 680px)}}.mf{isolation:isolate;background-color:var(--ink);border-radius:var(--radius-md);justify-content:center;display:flex;position:relative;overflow:hidden}.mf-bg{z-index:-1;filter:blur(28px)saturate(1.25);opacity:.6;background-position:50%;background-size:cover;position:absolute;inset:-32px;transform:scale(1.1)}.mf.is-loading{background:linear-gradient(90deg, var(--paper-2) 25%, var(--line) 50%, var(--paper-2) 75%) 0 0 / 200% 100%;min-height:12rem;animation:1.6s ease-in-out infinite mf-shimmer}.mf.is-loading .mf-img{opacity:0}@keyframes mf-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.mf-open{cursor:zoom-in;justify-content:center;width:100%;padding:0;display:flex;position:relative}.mf-img{width:auto;max-width:100%;height:auto;max-height:var(--media-max-h);transition:opacity var(--transition-slow);display:block}.mf-pill{right:var(--space-3);bottom:var(--space-3);align-items:center;gap:var(--space-2);padding:6px var(--space-3);color:#fff;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;line-height:var(--lh-xs);pointer-events:none;transition:background-color var(--transition-fast), transform var(--transition-fast);background-color:#1a1a1fb8;display:inline-flex;position:absolute}.mf-count{top:var(--space-3);right:var(--space-3);padding:2px var(--space-2);color:#fff;border-radius:var(--radius-full);font-size:var(--text-xs);font-variant-numeric:tabular-nums;pointer-events:none;background-color:#1a1a1fb8;font-weight:600;position:absolute}@media (hover:hover){.mf-open:hover .mf-pill{background-color:var(--primary);transform:translateY(-2px)}}.mf-failed{align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);color:var(--ink-2);font-size:var(--text-sm);flex-direction:column;display:flex}.mf:has(.mf-failed){background-color:var(--paper-2)}.mf-caption{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--ink-2);line-height:1.5}.iv{z-index:var(--z-modal);animation:iv-fade var(--transition-base) both;background-color:#121216f5;position:fixed;inset:0}@keyframes iv-fade{0%{opacity:0}to{opacity:1}}.iv-bar{top:calc(var(--header-offset,56px) + var(--space-2));right:var(--space-3);z-index:2;gap:var(--space-2);display:flex;position:absolute}.iv-btn{color:#fff;border-radius:var(--radius-full);width:48px;height:48px;transition:background-color var(--transition-fast);background-color:#ffffff24;justify-content:center;align-items:center;display:inline-flex}@media (hover:hover){.iv-btn:hover{background-color:#ffffff42}}.iv-btn[aria-pressed=true]{color:var(--ink);background-color:#fff}.iv-stage{inset:calc(var(--header-offset,56px) + 64px) 0 72px 0;padding:var(--space-3);touch-action:pan-y;display:flex;position:absolute;overflow:hidden}.iv-stage.is-zoomed{touch-action:auto;overscroll-behavior:contain;overflow:auto}.iv-img{border-radius:var(--radius-md);width:auto;max-width:100%;height:auto;max-height:100%;box-shadow:var(--shadow-3);cursor:zoom-in;-webkit-user-select:none;user-select:none;opacity:0;transition:opacity var(--transition-base);margin:auto;display:block}.iv-img.is-loaded{opacity:1}.iv-stage.is-zoomed .iv-img{cursor:zoom-out;flex-shrink:0;width:200%;max-width:none;max-height:none}.iv-failed{align-items:center;gap:var(--space-2);color:#fffc;flex-direction:column;margin:auto;display:flex}.iv-failed p{color:inherit;margin:0}.iv-nav{z-index:2;margin-top:-24px;position:absolute;top:50%}.iv-prev{left:var(--space-3)}.iv-next{right:var(--space-3)}.iv-foot{left:0;right:0;bottom:var(--space-4);align-items:center;gap:var(--space-1);padding:0 var(--space-5);pointer-events:none;flex-direction:column;display:flex;position:absolute}.iv-caption,.iv-count{text-align:center;font-size:var(--text-sm);color:#ffffffd9;margin:0;line-height:1.4}.iv-count{font-variant-numeric:tabular-nums;color:#ffffffb3}@media (width<=599px){.iv-nav{top:auto;bottom:var(--space-3);margin-top:0}.iv-prev{left:calc(50% - 96px)}.iv-next{right:calc(50% - 96px)}.iv-foot{bottom:var(--space-10)}.iv-stage{bottom:120px}}@property --pc-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.pc{--pc-pad:var(--space-4);--pc-foil:#e8a0b4, #f2c27b, #7fc4ad, #8da2e0, #c98ae0;isolation:isolate;background:radial-gradient(ellipse 90% 55% at 0 0, #5c1f2b0d, transparent 70%), var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-1);transition:transform .35s var(--ease-out), border-color var(--transition-base) var(--ease-out), box-shadow .35s var(--ease-out);flex-direction:column;display:flex;position:relative}@media (width>=640px){.pc{--pc-pad:var(--space-5)}}.pc:has(.pc-prompt-context){background:radial-gradient(ellipse 80% 50% at 0 0, #5c1f2b12, transparent 70%), radial-gradient(ellipse 60% 40% at 100% 0, #c4783a0f, transparent 70%), var(--surface)}.pc:after{content:"";z-index:1;border-radius:inherit;pointer-events:none;opacity:0;background:conic-gradient(from var(--pc-angle), var(--pc-foil), #e8a0b4);-webkit-mask-composite:xor;padding:1px;transition:opacity .4s;position:absolute;inset:-1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}@media (hover:hover){.pc:hover{box-shadow:var(--shadow-lift);border-color:#0000;transform:translateY(-2px)}.pc:hover:after{opacity:.95;animation:7s linear infinite pc-spin}}@keyframes pc-spin{to{--pc-angle:360deg}}.pc--own:before{content:"";top:var(--space-4);bottom:var(--space-4);background:linear-gradient(to bottom, var(--primary), var(--tone-plum));border-radius:0 var(--radius-full) var(--radius-full) 0;width:3px;position:absolute;left:0}.pc-head{align-items:flex-start;gap:var(--space-3);padding:var(--pc-pad) var(--pc-pad) 0;display:flex}a.pc-avatar,a.pc-name{color:inherit;text-decoration:none;transition:opacity .15s}@media (hover:hover){a.pc-avatar:hover,a.pc-name:hover{opacity:.8;text-decoration:underline}}.pc-avatar{width:44px;height:44px;font-family:var(--font-serif);font-size:var(--text-md);color:var(--primary);background:var(--primary-soft);border-radius:50%;flex:none;place-items:center;font-weight:500;line-height:1;display:grid;position:relative}.pc-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block;position:absolute;inset:0}.pc--own .pc-avatar:after{content:"";pointer-events:none;background:conic-gradient(from 200deg, var(--pc-foil), #e8a0b4);-webkit-mask-composite:xor;border-radius:50%;padding:2px;position:absolute;inset:-3px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.pc-avatar--anon{color:var(--ink-2);background:var(--paper-2);border:1.5px dashed var(--line-strong)}.pc-who{flex-direction:column;flex:1;gap:1px;min-width:0;padding-top:2px;display:flex}.pc-name-row{align-items:center;gap:var(--space-2);min-width:0;display:flex}.pc-name{min-width:0;font-size:var(--text-base);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;line-height:1.25;overflow:hidden}.pc--anon .pc-name{font-family:var(--font-serif);color:var(--ink-2);font-style:italic;font-weight:500}.pc-you{letter-spacing:.05em;text-transform:uppercase;color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-full);flex:none;padding:0 7px;font-size:.6875rem;font-weight:600;line-height:1.55}.pc-meta{align-items:center;column-gap:var(--space-2);font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ink-2);flex-wrap:wrap;display:flex}.pc-meta>span+time:before{content:"";width:3px;height:3px;margin-right:var(--space-2);vertical-align:middle;background:var(--ink-3);border-radius:var(--radius-full);display:inline-block}.pc-tag{max-width:42%;padding:3px var(--space-3);font-size:var(--text-xs);font-weight:600;line-height:var(--lh-xs);color:var(--primary);text-overflow:ellipsis;white-space:nowrap;background:var(--primary-soft);border-radius:var(--radius-full);flex:0 auto;align-items:center;gap:6px;margin-left:auto;display:inline-flex;overflow:hidden}.pc-tag:before{content:"";background:var(--tone-plum);border-radius:50%;flex:none;width:6px;height:6px}.pc-clickable-area,.pc-clickable-area:visited,.pc-clickable-area:hover{gap:var(--space-3);padding:var(--space-3) var(--pc-pad) var(--space-4);color:inherit;-webkit-tap-highlight-color:transparent;flex-direction:column;text-decoration:none;display:flex}.pc-clickable-area:focus-visible{outline:var(--focus-ring);outline-offset:-3px}.pc-prompt-context{padding:var(--space-3) var(--space-4);background:linear-gradient(120deg, var(--primary-soft), transparent 85%);border:1px solid color-mix(in srgb, var(--primary) 14%, transparent);border-left:3px solid var(--primary);border-radius:4px var(--radius-md) var(--radius-md) 4px;flex-direction:column;gap:2px;display:flex}.pc-prompt-label{letter-spacing:.08em;text-transform:uppercase;color:var(--primary);font-size:.6875rem;font-weight:600;line-height:1.4}.pc-prompt-question{font-family:var(--font-serif);font-size:var(--text-base);color:var(--ink);overflow-wrap:anywhere;font-style:italic;line-height:1.45}.pc-body{max-width:68ch;font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink);white-space:pre-line;overflow-wrap:anywhere;line-height:1.65}.pc-body--quote{isolation:isolate;letter-spacing:var(--tracking-heading);text-wrap:balance;font-size:clamp(1.25rem,1.05rem + 1vw,1.5rem);line-height:1.4;position:relative}.pc-body--quote:before{content:"“";z-index:-1;color:var(--primary);opacity:.1;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:4.5em;line-height:1;position:absolute;top:-.32em;left:-.12em}.pc-media{border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}.pc-actions{align-items:center;gap:var(--space-1);margin-inline:var(--pc-pad);padding:var(--space-2) 0;border-top:1px solid var(--line);display:flex;position:relative}.pc-react,.pc-reply,.pc-delete{align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:0 var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--ink-2);border-radius:var(--radius-full);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), color var(--transition-fast), transform var(--transition-fast) var(--ease-out);background:0 0;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.pc-reply:visited{color:var(--ink-2)}.pc-react svg,.pc-reply svg,.pc-delete svg{flex:none}.pc-react:active,.pc-reply:active,.pc-delete:active{background:var(--paper-2);transform:scale(.96)}.pc-react.is-active{color:var(--primary);background:var(--primary-soft)}.pc-react.is-active svg{animation:pc-pop .42s var(--ease-out)}@keyframes pc-pop{0%{transform:scale(.7)}45%{transform:scale(1.35)rotate(-8deg)}to{transform:scale(1)}}.pc-react.is-active .pc-count{animation:pc-count .3s var(--ease-out)}@keyframes pc-count{0%{opacity:0;transform:translateY(7px)}}.pc-delete{width:var(--tap-target);color:var(--ink-3);justify-content:center;margin-left:auto;padding:0}@media (hover:hover){.pc-react:hover,.pc-reply:hover{color:var(--ink);background:var(--paper-2)}.pc-react.is-active:hover{color:var(--primary-hover);background:var(--primary-soft)}.pc-delete:hover{color:var(--danger);background:var(--danger-soft)}}.pc-react:focus-visible,.pc-reply:focus-visible,.pc-delete:focus-visible{outline:var(--focus-ring);outline-offset:0}.pc-menu-wrap{margin-left:auto;position:relative}.pc-menu-btn{border-radius:var(--radius-full);width:36px;height:36px;color:var(--ink-3);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:background-color .15s,color .15s;display:flex}.pc-menu-btn:hover{background-color:var(--paper-2);color:var(--ink)}.pc-menu-dropdown{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);width:180px;box-shadow:var(--shadow-3);padding:var(--space-1) 0;z-index:50;animation:pc-menu-in .15s var(--ease-out);flex-direction:column;display:flex;position:absolute;bottom:calc(100% + 4px);right:0}@keyframes pc-menu-in{0%{opacity:0;transform:translateY(4px)}}.pc-menu-dropdown button{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:none;font-weight:500;display:flex}.pc-menu-dropdown button:hover{background-color:var(--paper-2)}.pc-menu-dropdown button.text-danger{color:var(--danger)}.pc-menu-dropdown button.text-danger:hover{background-color:var(--danger-soft)}.pc-confirm{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--pc-pad);font-size:var(--text-sm);font-weight:500;line-height:var(--lh-sm);color:var(--ink);background:var(--danger-soft);border-top:1px solid color-mix(in srgb, var(--danger) 22%, transparent);border-radius:0 0 calc(var(--radius-lg) - 1px) calc(var(--radius-lg) - 1px);animation:pc-confirm-in var(--duration-enter) var(--ease-out) both;flex-wrap:wrap;display:flex}@keyframes pc-confirm-in{0%{opacity:0;transform:translateY(-6px)}}.pc-confirm-actions{gap:var(--space-2);display:flex}.pc-confirm-yes,.pc-confirm-no{min-height:var(--tap-target);padding:0 var(--space-5);font-family:var(--font-sans);font-size:var(--text-sm);border-radius:var(--radius-full);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), border-color var(--transition-fast);border:1px solid #0000;font-weight:600;line-height:1.2}.pc-confirm-yes{color:#fff;background:var(--danger)}.pc-confirm-no{color:var(--ink);background:var(--surface);border-color:var(--line-strong)}.pc-confirm-yes:active:not(:disabled){background:var(--danger-hover)}.pc-confirm-no:active:not(:disabled){background:var(--paper-2)}@media (hover:hover){.pc-confirm-yes:hover:not(:disabled){background:var(--danger-hover)}.pc-confirm-no:hover:not(:disabled){background:var(--paper-2)}}.pc-confirm-yes:disabled,.pc-confirm-no:disabled{cursor:progress;opacity:.6}.pc-confirm-yes:focus-visible,.pc-confirm-no:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}@media (width<=479px){.pc-confirm-actions{width:100%}.pc-confirm-yes,.pc-confirm-no{flex:1}}.pc--comment{--pc-pad:var(--space-4);background:var(--surface);border-radius:var(--radius-md);box-shadow:none}.pc--comment:after{display:none}@media (hover:hover){.pc--comment:hover{border-color:var(--line-strong);box-shadow:var(--shadow-1);transform:none}}.pc--comment.pc--own:before{top:var(--space-3);bottom:var(--space-3)}.pc--comment .pc-head{padding:var(--pc-pad) var(--pc-pad) 0;gap:var(--space-3)}.pc--comment .pc-clickable-area{gap:var(--space-2);padding:var(--space-2) var(--pc-pad) var(--space-3)}.pc--comment .pc-avatar{width:36px;height:36px;font-size:var(--text-base)}.pc--comment .pc-name{font-size:var(--text-sm)}.pc--comment .pc-body{font-size:var(--text-base);line-height:1.6}.pc--comment .pc-body--quote{font-size:var(--text-md);letter-spacing:0;line-height:1.5}.pc--comment .pc-body--quote:before{display:none}.pc--comment .pc-actions{margin-inline:calc(var(--pc-pad) - var(--space-3));padding:0 0 var(--space-1);border-top:0;gap:0}.pc--comment .pc-reply,.pc--comment .pc-delete{min-height:40px;padding-inline:var(--space-3)}.pc--comment .pc-delete{width:40px;padding:0}.pc--comment .pc-confirm{border-radius:0 0 calc(var(--radius-md) - 1px) calc(var(--radius-md) - 1px)}@media (prefers-reduced-motion:reduce){.pc,.pc:hover{transition:none;transform:none}.pc:hover:after,.pc-react.is-active svg,.pc-react.is-active .pc-count,.pc-confirm,.pc-menu-dropdown{animation:none}.pc-react:active,.pc-reply:active,.pc-delete:active{transform:none}}.promo{gap:var(--space-4);padding:var(--space-4);isolation:isolate;background-color:var(--amber-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);background-image:repeating-linear-gradient(135deg,#c4783a12 0 1px,#0000 1px 10px);border:1px solid #c4783a73;flex-direction:column;display:flex;position:relative;overflow:hidden}.promo-top{align-items:center;gap:var(--space-3);display:flex}.promo-advertiser{min-width:0;font-size:var(--text-sm);color:var(--ink);overflow-wrap:anywhere;font-weight:600}.promo-media .mf{box-shadow:var(--shadow-2);border:1px solid #1a1a1f1f}.promo-copy{gap:var(--space-2);flex-direction:column;display:flex}.promo-title{font-size:var(--text-xl);line-height:var(--lh-xl);letter-spacing:-.01em}.promo-body{font-size:var(--text-base);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.6}.promo-cta,.promo-cta:visited{align-items:center;gap:var(--space-3);min-height:52px;padding:0 var(--space-4);background-color:var(--ink);color:var(--paper);border-radius:var(--radius-md);transition:background-color var(--transition-fast), transform var(--transition-fast);text-decoration:none;display:flex}.promo-cta-label{font-size:var(--text-base);font-weight:600}.promo-cta-host{text-align:right;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-xs);color:#fbfaf8b3;flex:1;overflow:hidden}.promo-cta svg{transition:transform var(--transition-fast);flex-shrink:0}.promo-cta:active{transform:scale(.99)}@media (hover:hover){.promo-cta:hover{background-color:var(--primary);color:var(--on-primary);text-decoration:none}.promo-cta:hover svg{transform:translate(2px,-2px)}}.daily-prompt{isolation:isolate;align-items:flex-start;gap:var(--space-3);padding:var(--space-6) var(--space-5) var(--space-5);background:radial-gradient(ellipse 80% 70% at 0 0, #5c1f2b14, transparent 70%), radial-gradient(ellipse 50% 60% at 100% 100%, #c4783a12, transparent 70%), var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);flex-direction:column;display:flex;position:relative;overflow:hidden}.dp-mark{top:-.25em;right:var(--space-4);z-index:-1;font-family:var(--font-serif);color:var(--primary);opacity:.07;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:9rem;font-weight:500;line-height:1;position:absolute}.dp-label{align-items:center;gap:var(--space-2);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);color:var(--primary);display:inline-flex}.dp-dot{background:var(--primary);border-radius:var(--radius-full);width:8px;height:8px;box-shadow:0 0 0 3px var(--primary-soft)}.dp-question{max-width:24ch;font-family:var(--font-serif);letter-spacing:var(--tracking-display);color:var(--ink);text-wrap:balance;overflow-wrap:anywhere;font-size:clamp(1.5rem,1.1rem + 2vw,2.25rem);font-weight:500;line-height:1.2}@media (width>=640px){.daily-prompt{padding:var(--space-7) var(--space-7) var(--space-6)}.dp-question{max-width:30ch}.dp-mark{right:var(--space-6);font-size:12rem}}.dp-actions{align-items:stretch;gap:var(--space-2);width:100%;margin-top:var(--space-3);flex-direction:column;display:flex}@media (width>=480px){.dp-actions{align-items:center;gap:var(--space-4);flex-flow:wrap;width:auto}}.dp-cta{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:var(--space-2) var(--space-5);font-family:var(--font-sans);font-size:var(--text-base);color:var(--on-primary);background:var(--primary);border-radius:var(--radius-md);box-shadow:inset 0 1px 0 #ffffff1a, var(--shadow-1);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), transform var(--transition-fast) var(--ease-out);font-weight:500;line-height:1.2;display:inline-flex}.dp-cta svg{transition:transform var(--transition-base) var(--ease-out);flex:none}.dp-cta:active{background:var(--primary-active);transform:scale(.98)}@media (hover:hover){.dp-cta:hover{background:var(--primary-hover)}.dp-cta:hover svg{transform:translate(3px)}}.dp-cta:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset);box-shadow:inset 0 1px 0 #ffffff1a, 0 0 0 2px var(--surface)}.dp-preview-link{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:var(--space-2) var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;line-height:var(--lh-sm);color:var(--ink-2);text-align:left;border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), color var(--transition-fast);display:inline-flex}.dp-preview-link svg{flex:none}.dp-preview-link:active{background:var(--paper-2)}@media (hover:hover){.dp-preview-link:hover{color:var(--primary);background:var(--primary-soft)}}.dp-preview-link:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}@media (prefers-reduced-motion:reduce){.dp-cta:active,.dp-cta:hover svg{transform:none}}.feed-page{--feed-width:40rem;--feed-gap:var(--space-5);--feed-float-bottom:var(--nav-height);gap:var(--feed-gap);width:100%;max-width:var(--feed-width);padding:var(--space-5) var(--content-padding) 7rem;color:var(--ink);flex-direction:column;flex:1;margin-inline:auto;display:flex;position:relative}@media (width>=1024px){.feed-page{--feed-float-bottom:0px;padding-top:var(--space-7)}}.feed-head{justify-content:space-between;align-items:flex-end;gap:var(--space-3) var(--space-4);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.feed-head-text{flex-direction:column;min-width:0;display:flex}.feed-back{align-self:flex-start;align-items:center;gap:var(--space-2);min-height:var(--tap-target);margin-left:calc(var(--space-3) * -1);padding-inline:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink-2);border-radius:var(--radius-full);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), color var(--transition-fast);font-weight:500;display:inline-flex}.feed-back:active{background:var(--paper-2)}@media (hover:hover){.feed-back:hover{color:var(--ink);background:var(--paper-2)}}.feed-back:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.feed-title{letter-spacing:-.03em;overflow-wrap:anywhere;font-size:clamp(2rem,1.4rem + 3vw,3rem);font-weight:500;line-height:1.05}.feed-sub{margin-top:var(--space-1);font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2)}.feed-browse,.feed-browse:visited{min-height:var(--tap-target);padding-inline:var(--space-4);font-size:var(--text-sm);color:var(--ink-2);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-full);-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.feed-browse:active{background:var(--paper-2)}@media (hover:hover){.feed-browse:hover{color:var(--primary);background:var(--primary-soft);border-color:#0000}}.segmented{background:var(--paper-2);border-radius:var(--radius-md);grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.segmented button{min-height:40px;padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink-2);border-radius:calc(var(--radius-md) - 3px);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-base) var(--ease-out), color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out);font-weight:500;line-height:1.2}.segmented button.is-active{color:var(--primary);background:var(--surface);box-shadow:var(--shadow-2);font-weight:600}@media (hover:hover){.segmented button:not(.is-active):hover{color:var(--ink)}}.segmented button:focus-visible{outline:var(--focus-ring);outline-offset:0}.feed-newpill-wrap{top:calc(var(--header-height) + var(--space-3));z-index:var(--z-raised);height:0;margin-block:calc(var(--feed-gap) * -1);pointer-events:none;justify-content:center;display:flex;position:sticky}.feed-newpill{align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding-inline:var(--space-5);font-size:var(--text-sm);color:var(--on-primary);background:var(--primary);border-radius:var(--radius-full);box-shadow:var(--shadow-3);cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent;animation:feed-pill-in var(--duration-enter) var(--ease-out) both;transition:background-color var(--transition-fast);font-weight:600;display:inline-flex}.feed-newpill:active{background:var(--primary-active)}@media (hover:hover){.feed-newpill:hover{background:var(--primary-hover)}}.feed-newpill:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}@keyframes feed-pill-in{0%{opacity:0;transform:translateY(-10px)scale(.96)}}.feed-list{gap:var(--space-4);flex-direction:column;display:flex}.feed-item{min-width:0}.feed-item--enter{animation:feed-in .5s var(--ease-out) both;animation-delay:calc(var(--i,0) * 50ms)}@keyframes feed-in{0%{opacity:0;transform:translateY(12px)}}.skeleton-card{gap:var(--space-3);padding:var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;display:flex}@keyframes feed-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.feed-state{align-items:center;gap:var(--space-3);max-width:28rem;margin:var(--space-6) auto;padding:var(--space-9) var(--space-6);text-align:center;background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);flex-direction:column;display:flex}.feed-state h2{font-size:var(--text-xl);line-height:var(--lh-xl)}.feed-state p{max-width:32ch;font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.5}.feed-state .btn{margin-top:var(--space-2)}.feed-inject-card,.feed-inject-card:visited{--feed-tone:var(--tone-plum);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);-webkit-tap-highlight-color:transparent;transition:border-color var(--transition-base) var(--ease-out), box-shadow var(--transition-base) var(--ease-out);text-decoration:none;display:flex;position:relative;overflow:hidden}@media (hover:hover){.feed-inject-card:hover{color:var(--ink);border-color:var(--line-strong);box-shadow:var(--shadow-lift)}}.feed-inject-card:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.feed-inject-body{align-items:flex-start;gap:var(--space-2);min-width:0;padding:var(--space-5);flex-direction:column;flex:1;display:flex}.feed-inject-card .eyebrow{align-items:center;gap:var(--space-2);color:var(--primary);display:inline-flex}.feed-inject-card .eyebrow:before{content:"";background:var(--feed-tone);border-radius:var(--radius-full);flex:none;width:8px;height:8px}.feed-inject-title{font-size:var(--text-lg);line-height:var(--lh-lg);letter-spacing:var(--tracking-heading);overflow-wrap:anywhere}.feed-inject-excerpt{font-size:var(--text-sm);color:var(--ink-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.55;display:-webkit-box;overflow:hidden}.feed-inject-meta{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2)}.feed-inject-cta{margin-top:var(--space-1);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);color:var(--primary)}.feed-guide-card{--feed-tone:var(--tone-plum)}.feed-inject-media{background:var(--paper-2);flex:0 0 6.5rem}.feed-inject-media img{object-fit:cover;width:100%;height:100%}@media (width>=480px){.feed-inject-media{flex-basis:9rem}}.feed-event-card{--feed-tone:var(--amber);align-items:center;gap:var(--space-4);padding:var(--space-4)}.feed-event-card .feed-inject-body{padding:0}.feed-event-date{aspect-ratio:1;background:var(--amber-soft);border:1px solid var(--amber);border-radius:var(--radius-md);flex-direction:column;flex:none;justify-content:center;align-items:center;width:4rem;display:flex}.feed-event-month{font-size:var(--text-xs);color:var(--ink-2);font-weight:600;line-height:1}.feed-event-day{font-family:var(--font-serif);font-size:var(--text-2xl);color:var(--ink);font-variant-numeric:tabular-nums;font-weight:500;line-height:1.1}.feed-story-card,.feed-story-card:visited{--feed-tone:var(--teal);min-height:18rem;color:var(--on-primary);background:linear-gradient(150deg, var(--primary) 0%, var(--tone-plum) 100%);border-color:#0000;flex-direction:column;justify-content:flex-end}.feed-story-bg{transition:transform .6s var(--ease-out);background-position:50%;background-size:cover;position:absolute;inset:0}@media (hover:hover){.feed-story-card:hover{color:var(--on-primary)}.feed-story-card:hover .feed-story-bg{transform:scale(1.03)}}.feed-story-overlay{align-items:flex-start;gap:var(--space-2);padding:var(--space-9) var(--space-5) var(--space-5);background:linear-gradient(#0000 0%,#1a1a1f99 45%,#1a1a1fe6 100%);flex-direction:column;display:flex;position:relative}.feed-story-card .eyebrow,.feed-story-card .feed-inject-title,.feed-story-card .feed-inject-cta{color:var(--on-primary)}.feed-story-card .eyebrow:before{background:var(--on-primary)}.feed-story-card .feed-inject-title{font-size:var(--text-xl);line-height:var(--lh-xl)}.feed-story-card .feed-inject-meta{color:#fbfaf8d1}.feed-story-card .feed-inject-cta{margin-top:var(--space-3)}.feed-more{min-width:12rem;margin-top:var(--space-2);align-self:center}.feed-end{align-items:center;gap:var(--space-4);margin-top:var(--space-4);font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2);display:flex}.feed-end:before,.feed-end:after{content:"";background:var(--line);flex:1;height:1px}.feed-notice{top:calc(var(--header-height) + var(--space-3));z-index:var(--z-toast);max-width:min(calc(100vw - var(--space-6)), 28rem);padding:var(--space-3) var(--space-5);font-size:var(--text-sm);font-weight:500;line-height:var(--lh-sm);text-align:center;color:var(--on-primary);background:var(--ink);border-radius:var(--radius-md);box-shadow:var(--shadow-3);animation:feed-notice-in var(--duration-enter) var(--ease-out) both;position:fixed;left:50%;transform:translate(-50%)}@keyframes feed-notice-in{0%{opacity:0;transform:translate(-50%,-8px)}}.fab-create-post{right:max(var(--content-padding), calc(50vw - var(--feed-width) / 2 + var(--content-padding)));bottom:calc(var(--feed-float-bottom) + var(--space-4) + env(safe-area-inset-bottom,0px));z-index:var(--z-raised);align-items:center;gap:var(--space-2);min-height:52px;padding-inline:var(--space-5);font-family:var(--font-sans);font-size:var(--text-base);color:var(--on-primary);background:var(--primary);border-radius:var(--radius-full);box-shadow:var(--shadow-3), inset 0 1px 0 #ffffff1a;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), transform var(--transition-fast) var(--ease-out), box-shadow var(--transition-base) var(--ease-out);font-weight:600;line-height:1;display:inline-flex;position:fixed}.fab-create-post svg{transition:transform var(--transition-base) var(--ease-out);flex:none}.fab-create-post:active{background:var(--primary-active);transform:scale(.97)}@media (hover:hover){.fab-create-post:hover{background:var(--primary-hover)}.fab-create-post:hover svg{transform:rotate(90deg)}}.fab-create-post:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset);box-shadow:var(--shadow-3), 0 0 0 2px var(--paper)}@media (prefers-reduced-motion:reduce){.feed-item--enter,.feed-newpill,.feed-notice{animation:none}.skeleton-line{background:var(--paper-2);animation:none}.feed-story-card:hover .feed-story-bg,.fab-create-post:hover svg,.fab-create-post:active{transform:none}}@property --cp-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.create-post-page{--cp-width:42rem;--cp-float-bottom:var(--nav-height);--cp-foil:#e8a0b4, #f2c27b, #7fc4ad, #8da2e0, #c98ae0;isolation:isolate;gap:var(--space-5);width:100%;max-width:var(--cp-width);padding:var(--space-5) var(--content-padding) calc(var(--cp-float-bottom) + var(--space-3));color:var(--ink);flex-direction:column;flex:1;margin-inline:auto;display:flex;position:relative}@media (width>=1024px){.create-post-page{--cp-float-bottom:0px;padding-top:var(--space-8)}}.create-post-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(46rem 24rem at 50% -5rem,#5c1f2b21,#0000 70%),radial-gradient(26rem 18rem at 100% 38%,#2f6b5e14,#0000 70%),radial-gradient(24rem 16rem at 0 70%,#c4783a14,#0000 70%);position:fixed;inset:0}.create-post-page .sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.create-post-page .create-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);animation:cp-rise .55s var(--ease-out) both;display:flex}.create-post-page .create-head-copy{min-width:0}.create-post-page .create-head h1{letter-spacing:-.035em;text-wrap:balance;font-size:clamp(2.25rem,1.5rem + 3.4vw,3.25rem);font-weight:500;line-height:1.04}.create-post-page .create-subtitle{max-width:40ch;margin-top:var(--space-3);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.55}.create-post-page .create-cancel{min-height:var(--tap-target);padding-inline:var(--space-5);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink-2);background:color-mix(in srgb, var(--surface) 80%, transparent);border:1px solid var(--line);border-radius:var(--radius-full);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);flex:none;font-weight:500}.create-post-page .create-cancel:active{background:var(--paper-2)}@media (hover:hover){.create-post-page .create-cancel:hover{color:var(--ink);background:var(--surface);border-color:var(--line-strong)}}.create-post-page .create-cancel:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}@keyframes cp-rise{0%{opacity:0;transform:translateY(14px)}}.create-post-page .discard-bar{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--danger-soft);border-left:3px solid var(--danger);border-radius:4px var(--radius-md) var(--radius-md) 4px;animation:cp-drop .3s var(--ease-out) both;flex-wrap:wrap;display:flex}@keyframes cp-drop{0%{opacity:0;transform:translateY(-8px)}}.create-post-page .discard-text{font-size:var(--text-sm);color:var(--ink);flex:14rem;font-weight:500;line-height:1.45}.create-post-page .discard-actions{gap:var(--space-2);display:flex}.create-post-page .discard-yes,.create-post-page .discard-no{min-height:var(--tap-target);padding-inline:var(--space-5);font-family:var(--font-sans);font-size:var(--text-sm);border-radius:var(--radius-full);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), border-color var(--transition-fast);border:1px solid #0000;font-weight:600;line-height:1.2}.create-post-page .discard-yes{color:#fff;background:var(--danger)}.create-post-page .discard-no{color:var(--ink);background:var(--surface);border-color:var(--line-strong)}.create-post-page .discard-yes:active{background:var(--danger-hover)}.create-post-page .discard-no:active{background:var(--paper-2)}@media (hover:hover){.create-post-page .discard-yes:hover{background:var(--danger-hover)}.create-post-page .discard-no:hover{background:var(--paper-2)}}.create-post-page .discard-yes:focus-visible,.create-post-page .discard-no:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}@media (width<=479px){.create-post-page .discard-actions{width:100%}.create-post-page .discard-yes,.create-post-page .discard-no{flex:1}}.create-post-page .create-form{gap:var(--space-5);flex-direction:column;flex:1;display:flex}.create-post-page .create-form>*{animation:cp-rise .55s var(--ease-out) both}.create-post-page .create-form>:first-child{animation-delay:60ms}.create-post-page .create-form>:nth-child(2){animation-delay:.11s}.create-post-page .create-form>:nth-child(3){animation-delay:.16s}.create-post-page .create-form>:nth-child(4){animation-delay:.21s}.create-post-page .create-form>:nth-child(n+5){animation-delay:.26s}.create-post-page .prompt-context-banner{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-2) var(--space-3) var(--space-4);background:linear-gradient(120deg, var(--primary-soft), transparent 90%);border:1px solid color-mix(in srgb, var(--primary) 14%, transparent);border-left:3px solid var(--primary);border-radius:4px var(--radius-md) var(--radius-md) 4px;display:flex}.create-post-page .prompt-context-text{flex-direction:column;gap:2px;min-width:0;display:flex}.create-post-page .prompt-context-text span{letter-spacing:.08em;text-transform:uppercase;color:var(--primary);font-size:.6875rem;font-weight:600;line-height:1.4}.create-post-page .prompt-context-text p{font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink);overflow-wrap:anywhere;font-style:italic;line-height:1.45}.create-post-page .prompt-context-remove{width:var(--tap-target);height:var(--tap-target);margin-block:calc(var(--space-2) * -1);color:var(--ink-2);border-radius:var(--radius-full);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), color var(--transition-fast);flex:none;place-items:center;display:grid}.create-post-page .prompt-context-remove:active{background:#5c1f2b1a}@media (hover:hover){.create-post-page .prompt-context-remove:hover{color:var(--primary);background:#5c1f2b14}}.create-post-page .prompt-context-remove:focus-visible{outline:var(--focus-ring);outline-offset:-2px}.create-post-page .compose{background:color-mix(in srgb, var(--surface) 84%, transparent);border:1px solid var(--line);border-radius:calc(var(--radius-lg) + 4px);-webkit-backdrop-filter:blur(18px)saturate(1.4);backdrop-filter:blur(18px)saturate(1.4);transition:border-color var(--transition-fast), box-shadow .35s var(--ease-out);flex-direction:column;display:flex;position:relative;box-shadow:0 30px 60px -34px #5c1f2b73,0 2px 6px #1a1a1f0a,inset 0 1px #fffc}.create-post-page .compose:before{content:"";z-index:1;border-radius:inherit;pointer-events:none;opacity:0;background:conic-gradient(from var(--cp-angle), var(--cp-foil), #e8a0b4);-webkit-mask-composite:xor;padding:1.5px;transition:opacity .4s;position:absolute;inset:-1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.create-post-page .compose:focus-within{border-color:#0000;box-shadow:0 30px 60px -30px #5c1f2b80,0 0 0 5px #5c1f2b12}.create-post-page .compose:focus-within:before{opacity:1;animation:6s linear infinite cp-spin}@keyframes cp-spin{to{--cp-angle:360deg}}.create-post-page .post-textarea{width:100%;min-height:11rem;padding:var(--space-5) var(--space-5) var(--space-3);font-family:var(--font-serif);color:var(--ink);border-radius:inherit;resize:none;overflow-wrap:anywhere;background:0 0;border:0;outline:0;font-size:clamp(1.0625rem,1rem + .3vw,1.1875rem);line-height:1.65;display:block}.create-post-page .post-textarea::placeholder{color:var(--ink-3);font-style:italic}.create-post-page .compose-foot{justify-content:space-between;align-items:center;gap:var(--space-3);margin-inline:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--line);display:flex}.create-post-page .compose-preview-btn{align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding-inline:var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink-2);border-radius:var(--radius-full);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), color var(--transition-fast);font-weight:500;display:inline-flex}.create-post-page .compose-preview-btn[aria-pressed=true]{color:var(--primary);background:var(--primary-soft)}.create-post-page .compose-preview-btn:active{background:var(--paper-2)}@media (hover:hover){.create-post-page .compose-preview-btn:hover:not([aria-pressed=true]){color:var(--ink);background:var(--paper-2)}}.create-post-page .compose-preview-btn:focus-visible{outline:var(--focus-ring);outline-offset:0}.create-post-page .char-count{padding-right:var(--space-3);font-size:var(--text-sm);line-height:var(--lh-sm);font-variant-numeric:tabular-nums;color:var(--ink-2)}.create-post-page .char-count.is-low{color:var(--danger);font-weight:600}.create-post-page .post-preview{align-items:flex-start;gap:var(--space-2);margin:0 var(--space-3) var(--space-3);padding:var(--space-4);background:var(--paper);border:1px dashed var(--line-strong);border-radius:var(--radius-md);animation:cp-drop .3s var(--ease-out) both;flex-direction:column;display:flex}.create-post-page .post-preview-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);font-size:.6875rem;font-weight:600;line-height:1.4}.create-post-page .post-preview-head{align-items:baseline;gap:0 var(--space-3);flex-wrap:wrap;display:flex}.create-post-page .post-preview-author{font-size:var(--text-base);color:var(--ink);font-weight:600}.create-post-page .post-preview-province{font-size:var(--text-xs);color:var(--ink-2)}.create-post-page .post-preview-tag{padding:3px var(--space-3);font-size:var(--text-xs);font-weight:600;line-height:var(--lh-xs);color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-full);align-items:center;gap:6px;display:inline-flex}.create-post-page .post-preview-tag:before{content:"";background:var(--tone-plum);border-radius:50%;width:6px;height:6px}.create-post-page .post-preview-body{font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink);white-space:pre-line;overflow-wrap:anywhere;line-height:1.65}.create-post-page .post-preview-empty{font-family:var(--font-serif);font-size:var(--text-base);color:var(--ink-2);font-style:italic}.create-post-page .notice{align-items:start;gap:var(--space-3);padding:var(--space-4);border-left:3px solid var(--line-strong);border-radius:4px var(--radius-md) var(--radius-md) 4px;animation:cp-drop .3s var(--ease-out) both;grid-template-columns:auto minmax(0,1fr);display:grid}.create-post-page .notice svg{margin-top:1px}.create-post-page .notice p{font-size:var(--text-sm);color:var(--ink);line-height:1.6}.create-post-page .notice a{color:var(--primary);text-underline-offset:3px;font-weight:600}.create-post-page .notice--support{background:var(--teal-soft);border-left-color:var(--teal)}.create-post-page .notice--support svg{color:var(--teal)}.create-post-page .notice--warn{background:var(--amber-soft);border-left-color:var(--amber)}.create-post-page .notice--warn svg{color:var(--ink)}.create-post-page .topic{border:0;min-width:0;margin:0;padding:0}.create-post-page .topic legend{margin-bottom:var(--space-3);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);color:var(--ink);padding:0}.create-post-page .topic-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.create-post-page .chip{cursor:pointer;-webkit-tap-highlight-color:transparent;display:inline-flex;position:relative}.create-post-page .chip input{z-index:1;cursor:pointer;opacity:0;width:100%;height:100%;margin:0;position:absolute;inset:0}.create-post-page .chip span{min-height:44px;padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--ink-2);background:color-mix(in srgb, var(--surface) 90%, transparent);border:1.5px solid var(--line-strong);border-radius:var(--radius-full);transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), transform var(--transition-fast) var(--ease-out);align-items:center;font-weight:500;line-height:1.2;display:inline-flex}.create-post-page .chip span:before{content:"";opacity:0;width:0;height:6px;transition:width var(--transition-base) var(--ease-out), margin-right var(--transition-base) var(--ease-out), opacity var(--transition-fast);border-bottom:2px solid;border-left:2px solid;flex:none;transform:translateY(-1px)rotate(-45deg)}.create-post-page .chip input:checked+span{color:var(--primary);background:var(--primary-soft);border-color:var(--primary)}.create-post-page .chip input:checked+span:before{width:10px;margin-right:var(--space-2);opacity:1}.create-post-page .chip:active span{transform:scale(.97)}@media (hover:hover){.create-post-page .chip input:not(:checked):hover+span{color:var(--ink);background:var(--surface);border-color:var(--ink-3)}}.create-post-page .chip input:focus-visible+span{outline:var(--focus-ring);outline-offset:2px}.create-post-page .options{background:color-mix(in srgb, var(--surface) 88%, transparent);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);overflow:hidden}.create-post-page .option-row{justify-content:space-between;align-items:center;gap:var(--space-4);min-height:64px;padding:var(--space-4) var(--space-5);display:flex}.create-post-page .option-row+.option-row{border-top:1px solid var(--line)}.create-post-page label.option-row{cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast)}.create-post-page label.option-row:active{background:var(--paper-2)}@media (hover:hover){.create-post-page label.option-row:hover{background:var(--paper)}}.create-post-page .option-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.create-post-page .option-title{font-size:var(--text-base);color:var(--ink);font-weight:600;line-height:1.3}.create-post-page .option-hint{font-size:var(--text-sm);color:var(--ink-2);line-height:1.5}.create-post-page .select{width:100%;max-width:13rem;min-height:48px;padding:0 2.5rem 0 var(--space-4);font-family:var(--font-sans);color:var(--ink);background-color:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);cursor:pointer;appearance:none;transition:border-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B6B73' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .875rem center;background-repeat:no-repeat;outline:2px solid #0000;flex:none;font-size:1rem}.create-post-page .select:focus{border-color:var(--primary);box-shadow:var(--focus-halo)}@media (width<=479px){.create-post-page .option-row:has(.select){align-items:stretch;gap:var(--space-3);flex-direction:column}.create-post-page .select{max-width:none}}.create-post-page .switch{background:var(--line-strong);border-radius:var(--radius-full);cursor:pointer;appearance:none;width:52px;height:30px;transition:background-color var(--transition-base) var(--ease-out), box-shadow var(--transition-base) var(--ease-out);flex:none;margin:0;position:relative}.create-post-page .switch:before{content:"";width:24px;height:24px;transition:transform var(--transition-base) var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #1a1a1f4d}.create-post-page .switch:checked{background:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.create-post-page .switch:checked:before{transform:translate(22px)}.create-post-page .switch:focus-visible{outline:var(--focus-ring);outline-offset:3px}.create-post-page .create-actions{bottom:calc(var(--cp-float-bottom) + var(--space-3) + env(safe-area-inset-bottom,0px));z-index:var(--z-raised);gap:var(--space-2);padding:var(--space-3);background:color-mix(in srgb, var(--surface) 84%, transparent);border:1px solid var(--line);border-radius:calc(var(--radius-lg) + 4px);box-shadow:var(--shadow-3);-webkit-backdrop-filter:blur(18px)saturate(1.4);backdrop-filter:blur(18px)saturate(1.4);flex-direction:column;margin-top:auto;display:flex;position:sticky}.create-post-page .post-error{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--ink);background:var(--danger-soft);border-left:3px solid var(--danger);border-radius:4px var(--radius-md) var(--radius-md) 4px;animation:cp-drop .3s var(--ease-out) both;line-height:1.5;display:flex}.create-post-page .post-error svg{color:var(--danger);flex:none;margin-top:1px}.create-post-page .create-actions-row{align-items:center;gap:var(--space-3) var(--space-4);grid-template-columns:minmax(0,1fr) auto;display:grid}.create-post-page .create-status{align-items:flex-start;gap:var(--space-2);padding-left:var(--space-2);font-size:var(--text-sm);color:var(--ink-2);line-height:1.4;display:flex}.create-post-page .create-status:before{content:"";background:var(--teal);width:8px;height:8px;box-shadow:0 0 0 3px var(--teal-soft);transition:background-color var(--transition-base), box-shadow var(--transition-base);border-radius:50%;flex:none;margin-top:.4em}.create-post-page .create-status[data-state=blocked]:before{background:var(--ink-3);box-shadow:0 0 0 3px var(--paper-2)}.create-post-page .create-shortcut{display:none}@media (hover:hover) and (width>=640px){.create-post-page .create-shortcut{grid-area:1/2;gap:4px;display:inline-flex}.create-post-page .create-actions-row{grid-template-columns:minmax(0,1fr) auto auto}}.create-post-page .create-shortcut kbd{font-family:var(--font-sans);color:var(--ink-2);background:var(--paper-2);border:1px solid var(--line-strong);box-shadow:0 1px 0 var(--line-strong);border-radius:6px;padding:2px 7px;font-size:.6875rem;font-weight:600;line-height:1.5}.create-post-page .create-submit.btn{min-height:54px;padding-inline:var(--space-7);font-family:var(--font-sans);font-size:var(--text-base);color:var(--on-primary);background:var(--primary);border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), transform var(--transition-fast) var(--ease-out), opacity var(--transition-fast);border:0;justify-content:center;align-items:center;font-weight:600;line-height:1.2;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 12px 24px -14px #5c1f2bb3,inset 0 1px #ffffff24}.create-post-page .create-submit.btn:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 35%,#ffffff38 50%,#0000 65%);position:absolute;inset:0;transform:translate(-120%)}.create-post-page .create-submit.btn:active:not(:disabled){background:var(--primary-active);transform:scale(.985)}@media (hover:hover){.create-post-page .create-submit.btn:hover:not(:disabled){background:var(--primary-hover)}.create-post-page .create-submit.btn:hover:not(:disabled):after{transition:transform .8s var(--ease-out);transform:translate(120%)}}.create-post-page .create-submit.btn:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.create-post-page .create-submit.btn:disabled{cursor:not-allowed;opacity:.45;box-shadow:none}@media (width<=479px){.create-post-page .create-actions-row{grid-template-columns:minmax(0,1fr)}.create-post-page .create-submit.btn{width:100%}}@media (prefers-reduced-motion:reduce){.create-post-page .create-head,.create-post-page .create-form>*,.create-post-page .discard-bar,.create-post-page .post-preview,.create-post-page .notice,.create-post-page .post-error,.create-post-page .compose:focus-within:before{animation:none}.create-post-page .create-submit.btn:after{display:none}.create-post-page .create-submit.btn:active:not(:disabled),.create-post-page .chip:active span{transform:none}}.post-detail-page{--pd-width:42rem;--pd-composer-bottom:var(--nav-height);--pd-foil:#e8a0b4, #f2c27b, #7fc4ad, #8da2e0, #c98ae0;isolation:isolate;gap:var(--space-5);width:100%;max-width:var(--pd-width);padding:var(--space-4) var(--content-padding) calc(var(--pd-composer-bottom) + var(--space-3));color:var(--ink);flex-direction:column;flex:1;margin-inline:auto;display:flex;position:relative}@media (width>=1024px){.post-detail-page{--pd-composer-bottom:0px;padding-top:var(--space-6)}}.post-detail-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(46rem 22rem at 50% -4rem,#5c1f2b1c,#0000 70%),radial-gradient(26rem 18rem at 100% 34%,#2f6b5e12,#0000 70%),radial-gradient(24rem 16rem at 0 64%,#c4783a12,#0000 70%);position:fixed;inset:0}.post-detail-page .sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.post-detail-page .back-btn{align-self:flex-start;align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding-inline:var(--space-3) var(--space-5);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink-2);background:color-mix(in srgb, var(--surface) 80%, transparent);border:1px solid var(--line);border-radius:var(--radius-full);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);font-weight:500;display:inline-flex}.post-detail-page .back-btn svg{transition:transform var(--transition-base) var(--ease-out)}.post-detail-page .back-btn:active{background:var(--paper-2)}@media (hover:hover){.post-detail-page .back-btn:hover{color:var(--ink);background:var(--surface);border-color:var(--line-strong)}.post-detail-page .back-btn:hover svg{transform:translate(-3px)}}.post-detail-page .back-btn:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.main-post-container{animation:pd-in .5s var(--ease-out) both}@keyframes pd-in{0%{opacity:0;transform:translateY(12px)}}.post-detail-page .main-post-container .pc{--pc-pad:var(--space-5);box-shadow:var(--shadow-2)}@media (width>=640px){.post-detail-page .main-post-container .pc{--pc-pad:var(--space-6)}}.post-detail-page .main-post-container .pc:after{opacity:.9;animation:12s linear infinite pd-spin}.post-detail-page .main-post-container .pc:hover{box-shadow:var(--shadow-2);border-color:#0000;transform:none}@keyframes pd-spin{to{--pc-angle:360deg}}.post-detail-page .main-post-container .pc-avatar{width:52px;height:52px;font-size:var(--text-lg)}.post-detail-page .main-post-container .pc-name{font-size:var(--text-md)}.post-detail-page .main-post-container .pc-body{font-size:clamp(1.0625rem,1rem + .35vw,1.1875rem);line-height:1.72}.post-detail-page .main-post-container .pc-body--quote{font-size:clamp(1.5rem,1.15rem + 1.6vw,2rem);line-height:1.32}.comments-section{gap:var(--space-4);padding-top:var(--space-6);flex-direction:column;display:flex;position:relative}.comments-section:before{content:"";background:linear-gradient(90deg, transparent, var(--line-strong) 20%, var(--line-strong) 80%, transparent);height:1px;position:absolute;top:0;left:0;right:0}.comments-title{align-items:center;gap:var(--space-3);font-size:var(--text-xl);line-height:var(--lh-xl);letter-spacing:var(--tracking-heading);display:flex}.comments-count{min-width:1.75rem;padding:2px var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);text-align:center;font-variant-numeric:tabular-nums;color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-full)}.no-comments{align-items:center;gap:var(--space-1);padding:var(--space-8) var(--space-5) var(--space-7);text-align:center;background:color-mix(in srgb, var(--surface) 70%, transparent);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);flex-direction:column;display:flex}.no-comments:before{content:"";width:3rem;height:3rem;margin-bottom:var(--space-3);background:radial-gradient(circle at 30% 28%, #fffffff2, #ffffff1a 40%, transparent 56%), conic-gradient(from 200deg, var(--pd-foil), #e8a0b4);border-radius:50%;box-shadow:0 16px 26px -12px #5c1f2b73}.no-comments p{font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink);line-height:1.5}.no-comments .no-comments-hint{font-size:var(--text-sm);color:var(--ink-2)}.comment-list{gap:var(--space-5);flex-direction:column;list-style:none;display:flex}.thread-item{gap:var(--space-3);animation:pd-in .5s var(--ease-out) both;flex-direction:column;display:flex}.comment-list>.thread-item:nth-child(2){animation-delay:50ms}.comment-list>.thread-item:nth-child(3){animation-delay:.1s}.comment-list>.thread-item:nth-child(4){animation-delay:.15s}.comment-list>.thread-item:nth-child(5){animation-delay:.2s}.comment-list>.thread-item:nth-child(n+6){animation-delay:.25s}.thread-level-1>.pc{width:100%}.thread-level-2{gap:var(--space-3);margin-left:calc(var(--space-4) + 17px);padding-left:var(--space-4);flex-direction:column;display:flex;position:relative}.thread-level-2:before{content:"";top:calc(var(--space-3) * -1);background:linear-gradient(to bottom, var(--line-strong), var(--line));border-radius:var(--radius-full);width:2px;position:absolute;bottom:1.25rem;left:0}@media (width>=640px){.thread-level-2{padding-left:var(--space-5)}}.composer{bottom:calc(var(--pd-composer-bottom) + var(--space-3) + env(safe-area-inset-bottom,0px));z-index:var(--z-raised);gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-2);background:color-mix(in srgb, var(--surface) 82%, transparent);border:1px solid var(--line);border-radius:calc(var(--radius-lg) + 4px);box-shadow:var(--shadow-3);-webkit-backdrop-filter:blur(18px)saturate(1.4);backdrop-filter:blur(18px)saturate(1.4);flex-direction:column;margin-top:auto;display:flex;position:sticky}.composer-replying-to{justify-content:space-between;align-items:center;gap:var(--space-3);padding:2px 2px 2px var(--space-4);font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2);background:var(--primary-soft);border-left:3px solid var(--primary);border-radius:4px var(--radius-md) var(--radius-md) 4px;animation:pd-fade .25s var(--ease-out) both;display:flex}.composer-replying-to strong{color:var(--primary)}.composer-replying-to button{min-height:40px;padding-inline:var(--space-4);font-size:var(--text-sm);color:var(--primary);border-radius:var(--radius-full);cursor:pointer;transition:background-color var(--transition-fast);font-weight:600}@media (hover:hover){.composer-replying-to button:hover{background:#5c1f2b14}}.composer-replying-to button:focus-visible{outline:var(--focus-ring);outline-offset:0}@keyframes pd-fade{0%{opacity:0;transform:translateY(-4px)}}.composer-error{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink);background:var(--danger-soft);border-left:3px solid var(--danger);border-radius:4px var(--radius-md) var(--radius-md) 4px}.composer-box{align-items:flex-end;gap:var(--space-2);padding:3px 3px 3px var(--space-4);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-lg);transition:border-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out);display:flex;position:relative}.composer-box:before{content:"";border-radius:inherit;pointer-events:none;opacity:0;background:conic-gradient(from var(--pc-angle), var(--pd-foil), #e8a0b4);-webkit-mask-composite:xor;padding:1.5px;transition:opacity .35s;position:absolute;inset:-1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.composer-box:focus-within{border-color:#0000;box-shadow:0 0 0 4px #5c1f2b14}.composer-box:focus-within:before{opacity:1;animation:6s linear infinite pd-spin}.composer-input{min-width:0;min-height:var(--tap-target);max-height:132px;font-family:var(--font-sans);color:var(--ink);resize:none;background:0 0;border:0;outline:0;flex:1;padding:11px 0;font-size:1rem;line-height:1.45}.composer-input::placeholder{color:var(--ink-3)}.composer-send{width:var(--tap-target);height:var(--tap-target);color:var(--on-primary);background:var(--primary);border-radius:calc(var(--radius-lg) - 3px);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out), transform var(--transition-fast) var(--ease-out);flex:none;place-items:center;display:grid;box-shadow:0 10px 18px -10px #5c1f2bcc}.composer-send svg{transition:transform var(--transition-base) var(--ease-out)}.composer-send:active:not(:disabled){background:var(--primary-active);transform:scale(.94)}@media (hover:hover){.composer-send:hover:not(:disabled){background:var(--primary-hover)}.composer-send:hover:not(:disabled) svg{transform:translate(2px,-2px)}}.composer-send:disabled{color:var(--ink-3);cursor:not-allowed;background:var(--paper-2);box-shadow:none}.composer-send:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.composer-meta{justify-content:space-between;align-items:center;gap:var(--space-3);padding-inline:var(--space-3);font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ink-2);display:flex}@media (hover:none){.composer-hint{display:none}}.composer-count{font-variant-numeric:tabular-nums;margin-left:auto}.composer-count.is-low{color:var(--danger);font-weight:600}.pd-notice{top:calc(var(--header-height) + var(--space-3));z-index:var(--z-toast);max-width:min(calc(100vw - var(--space-6)), 28rem);padding:var(--space-3) var(--space-5);font-size:var(--text-sm);font-weight:500;line-height:var(--lh-sm);text-align:center;color:var(--on-primary);background:var(--ink);border-radius:var(--radius-md);box-shadow:var(--shadow-3);animation:pd-notice-in var(--duration-enter) var(--ease-out) both;position:fixed;left:50%;transform:translate(-50%)}@keyframes pd-notice-in{0%{opacity:0;transform:translate(-50%,-8px)}}.pd-skeleton{gap:var(--space-4);flex-direction:column;display:flex}.pd-skeleton-card,.pd-skeleton-comment{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.pd-skeleton-card{gap:var(--space-3);padding:var(--space-5);flex-direction:column;display:flex}.pd-skeleton-head{align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.pd-skeleton-comment{gap:var(--space-3);margin-left:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);display:flex}.pd-skeleton-avatar{background:var(--paper-2);border-radius:50%;flex:none;width:44px;height:44px}.pd-skeleton-avatar--sm{width:36px;height:36px}.pd-skeleton-lines{gap:var(--space-2);flex-direction:column;flex:1;display:flex}.skeleton-line{background:linear-gradient(90deg, var(--paper-2) 0%, var(--paper) 50%, var(--paper-2) 100%);border-radius:var(--radius-sm);background-size:200% 100%;width:100%;height:.875rem;animation:1.4s ease-in-out infinite pd-shimmer}.skeleton-line--short{width:35%}.skeleton-line--medium{width:65%}@keyframes pd-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.main-post-container,.thread-item,.composer-replying-to,.pd-notice,.post-detail-page .main-post-container .pc:after,.composer-box:focus-within:before{animation:none}.skeleton-line{background:var(--paper-2);animation:none}.composer-send:active:not(:disabled),.post-detail-page .back-btn:hover svg,.composer-send:hover:not(:disabled) svg{transform:none}}.provinces-page{--foil-linear:linear-gradient(115deg, #e8a0b4 0%, #f2c27b 25%, #7fc4ad 50%, #8da2e0 75%, #c98ae0 100%);isolation:isolate;width:100%;padding:var(--space-8) var(--content-padding) var(--space-12);color:var(--ink);flex-direction:column;flex:1;display:flex;position:relative}.provinces-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(42rem 18rem at 50% -3rem,#5c1f2b21,#0000 70%),radial-gradient(26rem 14rem at 88% 8rem,#2f6b5e1c,#0000 70%),radial-gradient(22rem 12rem at 8% 12rem,#c4783a1a,#0000 70%);height:28rem;position:absolute;inset:0 -100vmax auto}.provinces-page>h1{letter-spacing:-.035em;text-wrap:balance;font-size:clamp(2.75rem,1.6rem + 5.5vw,5rem);font-weight:500;line-height:.98}.provinces-subtitle{max-width:var(--measure-lede);margin-top:var(--space-3);margin-bottom:var(--space-8);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.55}.province-list{gap:var(--space-3);grid-template-columns:1fr;list-style:none;display:grid}@media (width>=640px){.province-list{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.province-list{grid-template-columns:repeat(3,minmax(0,1fr))}}.province-list>li{animation:province-in .5s var(--ease-out) both;animation-delay:calc(var(--i,0) * 45ms)}@keyframes province-in{0%{opacity:0;transform:translateY(14px)}}.province-card{--tone:var(--tone-slate);justify-content:space-between;align-items:center;gap:var(--space-4);min-height:84px;padding:var(--space-4) var(--space-5);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);-webkit-tap-highlight-color:transparent;transition:border-color var(--transition-base) var(--ease-out), box-shadow var(--transition-base) var(--ease-out), transform var(--transition-base) var(--ease-out);text-decoration:none;display:flex;position:relative;overflow:hidden}.province-card:visited{color:var(--ink)}.province-card:before{content:"";top:var(--space-4);bottom:var(--space-4);background:var(--tone);border-radius:0 var(--radius-full) var(--radius-full) 0;opacity:.7;width:3px;transition:top var(--transition-base) var(--ease-out), bottom var(--transition-base) var(--ease-out);position:absolute;left:0}.province-list>li:nth-child(4n+1) .province-card{--tone:var(--tone-plum)}.province-list>li:nth-child(4n+2) .province-card{--tone:var(--tone-ochre)}.province-list>li:nth-child(4n+3) .province-card{--tone:var(--tone-sage)}.province-list>li:nth-child(4n+4) .province-card{--tone:var(--tone-slate)}.province-card:active{transform:scale(.985)}@media (hover:hover){.province-card:hover{color:var(--ink);border-color:var(--line-strong);box-shadow:var(--shadow-lift);transform:translateY(-3px)}.province-card:hover:before{top:0;bottom:0}.province-card:hover .province-arrow{color:var(--primary);transform:translate(4px)}}.province-main{align-items:center;gap:var(--space-4);min-width:0;display:flex}.province-index{min-width:2.2ch;font-family:var(--font-serif);font-size:var(--text-2xl);font-variant-numeric:tabular-nums;color:var(--ink-3);transition:color var(--transition-base);flex:none;font-weight:500;line-height:1}@media (hover:hover){.province-card:hover .province-index{color:var(--tone)}}.province-text{align-items:flex-start;gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.province-name{font-family:var(--font-serif);font-size:var(--text-lg);letter-spacing:var(--tracking-heading);text-wrap:balance;font-weight:500;line-height:1.2}.province-arrow{color:var(--ink-3);transition:transform var(--transition-base) var(--ease-out), color var(--transition-base);flex:none}.mine-badge{padding:2px var(--space-3);font-size:var(--text-xs);font-weight:600;line-height:var(--lh-xs);color:var(--on-primary);background:var(--primary);border-radius:var(--radius-full);align-items:center;display:inline-flex}.province-card.is-mine{background:linear-gradient(var(--surface), var(--surface)) padding-box, var(--foil-linear) border-box;border-width:2px;border-color:#0000;min-height:104px;box-shadow:0 16px 36px -18px #5c1f2b73}.province-card.is-mine:before{display:none}.province-card.is-mine .province-index{color:var(--primary)}.province-card.is-mine .province-name{font-size:var(--text-xl);line-height:var(--lh-xl)}.province-card.is-mine .province-arrow{color:var(--primary)}@media (width>=640px){.province-list>li.is-mine-item{grid-column:1/-1}}.province-card:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}@media (prefers-reduced-motion:reduce){.province-list>li{animation:none!important}.province-card:hover,.province-card:hover .province-arrow{transform:none}}.safety-page{isolation:isolate;gap:var(--space-9);width:100%;padding:var(--space-7) var(--content-padding) var(--space-12);color:var(--ink);flex-direction:column;flex:1;display:flex;position:relative}.safety-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(40rem 18rem at 50% -2rem,#2f6b5e1f,#0000 70%),radial-gradient(26rem 14rem at 88% 8rem,#5c1f2b12,#0000 70%);height:26rem;position:absolute;inset:0 -100vmax auto}.safety-page>h1{letter-spacing:-.03em;text-wrap:balance;font-size:clamp(2.25rem,1.5rem + 3.6vw,3.75rem);font-weight:500;line-height:1.04}.safety-intro{max-width:var(--measure-lede);margin-top:calc(var(--space-9) * -1 + var(--space-4));font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.55}.safety-section-title{margin-bottom:var(--space-4);font-size:var(--text-xl);line-height:var(--lh-xl);letter-spacing:var(--tracking-heading)}.safety-urgent{padding:var(--space-5);background:var(--crisis-soft);border-radius:var(--radius-lg);border:1px solid #8c3a1f66}.safety-urgent-title{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);font-family:var(--font-sans);font-size:var(--text-base);font-weight:600;line-height:var(--lh-sm);letter-spacing:0;color:var(--crisis);display:flex}.safety-urgent-list{gap:var(--space-2);grid-template-columns:1fr;list-style:none;display:grid}.safety-urgent-line{min-height:64px;padding:var(--space-3) var(--space-4);color:var(--ink);background:var(--surface);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out), transform var(--transition-base) var(--ease-out);border:1px solid #8c3a1f40;flex-direction:column;justify-content:center;gap:2px;text-decoration:none;display:flex}.safety-urgent-line:visited{color:var(--ink)}.safety-urgent-line:active{transform:scale(.98)}@media (hover:hover){.safety-urgent-line:hover{color:var(--ink);border-color:var(--crisis);transform:translateY(-1px);box-shadow:0 8px 20px -10px #8c3a1f73}}.safety-urgent-number{font-family:var(--font-serif);font-size:var(--text-xl);letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--crisis);font-weight:600;line-height:1.15}.safety-urgent-label{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2)}.safety-urgent-more{margin-top:var(--space-4);padding-block:var(--space-2);font-size:var(--text-sm);color:var(--crisis);font-weight:600;display:inline-block}.safety-urgent-more:visited{color:var(--crisis)}@media (hover:hover){.safety-urgent-more:hover{color:var(--crisis)}}.safety-feature-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);list-style:none}.safety-feature-list>li{align-items:flex-start;gap:var(--space-4);padding:var(--space-5);display:flex}.safety-feature-list>li+li{border-top:1px solid var(--line)}.safety-feature-icon{box-sizing:content-box;padding:var(--space-2);color:var(--teal);background:var(--teal-soft);border-radius:var(--radius-sm);flex:none}.safety-feature-list strong{font-size:var(--text-base);color:var(--ink);font-weight:600;line-height:1.4;display:block}.safety-feature-list p{margin-top:var(--space-1);max-width:60ch;font-size:var(--text-sm);color:var(--ink-2);line-height:1.65}.safety-limits-list{gap:var(--space-3);padding:var(--space-5);background:var(--paper-2);border-radius:var(--radius-lg);flex-direction:column;list-style:none;display:flex}.safety-limits-list>li{max-width:62ch;padding-left:var(--space-5);font-size:var(--text-sm);color:var(--ink-2);line-height:1.65;position:relative}.safety-limits-list>li:before{content:"";background:var(--ink-3);border-radius:var(--radius-full);width:10px;height:2px;position:absolute;top:.8em;left:0}.safety-grid{gap:var(--space-3);grid-template-columns:1fr;display:grid}.safety-card-link{justify-content:space-between;align-items:center;gap:var(--space-4);min-height:72px;padding:var(--space-4) var(--space-5);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);transition:border-color var(--transition-base) var(--ease-out), box-shadow var(--transition-base) var(--ease-out), transform var(--transition-base) var(--ease-out);text-decoration:none;display:flex}.safety-card-link:visited{color:var(--ink)}.safety-card-link:active{transform:scale(.99)}.safety-card-link svg{flex:none}.safety-card-info h3{font-family:var(--font-sans);font-size:var(--text-base);letter-spacing:0;color:var(--ink);font-weight:600;line-height:1.35}.safety-card-info p{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2);margin-top:2px}@media (hover:hover){.safety-card-link:hover{color:var(--ink);border-color:var(--line-strong);box-shadow:var(--shadow-lift);transform:translateY(-2px)}}.safety-card-link.crisis{background:var(--crisis-soft);border-color:#8c3a1f66}.safety-card-link.crisis svg,.safety-card-link.crisis h3{color:var(--crisis)}@media (hover:hover){.safety-card-link.crisis:hover{border-color:var(--crisis)}}@media (width>=640px){.safety-urgent{padding:var(--space-6)}.safety-urgent-list,.safety-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.safety-card-link.crisis{grid-column:1/-1}}@media (width>=1024px){.safety-page{gap:var(--space-10)}}@media print{.safety-page:before{display:none}}.crisis-page{isolation:isolate;gap:var(--space-5);width:100%;padding:var(--space-8) var(--content-padding) var(--space-12);color:var(--ink);flex-direction:column;flex:1;display:flex;position:relative}.crisis-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(40rem 16rem at 50% -2rem,#2f6b5e1f,#0000 70%),radial-gradient(24rem 12rem at 90% 6rem,#5c1f2b12,#0000 70%);height:24rem;position:absolute;inset:0 -100vmax auto}@media (width>=1024px){.crisis-page>*{max-width:44rem}}.crisis-page>h1{letter-spacing:-.035em;text-wrap:balance;font-size:clamp(2.5rem,1.6rem + 4.4vw,4.25rem);font-weight:500;line-height:1.02}.crisis-intro{max-width:var(--measure-lede);margin-top:calc(var(--space-2) * -1);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.6}.crisis-emergency{gap:var(--space-4);padding:var(--space-5);background:var(--crisis-soft);border:1px solid var(--crisis);border-radius:var(--radius-lg);flex-direction:column;display:flex}.crisis-emergency h2{font-family:var(--font-sans);font-size:var(--text-base);letter-spacing:0;color:var(--crisis);font-weight:600;line-height:1.35}.crisis-emergency-lines{gap:var(--space-3);grid-template-columns:1fr 1fr;list-style:none;display:grid}.crisis-emergency-line{min-height:72px;padding:var(--space-3) var(--space-4);color:var(--ink);background:var(--surface);border-radius:var(--radius-md);transition:border-color var(--transition-fast), background-color var(--transition-fast);border:1px solid #8c3a1f59;flex-direction:column;justify-content:center;gap:2px;text-decoration:none;display:flex}.crisis-emergency-line:visited{color:var(--ink)}@media (hover:hover){.crisis-emergency-line:hover{color:var(--ink);border-color:var(--crisis);background:var(--paper)}}.crisis-emergency-number{font-family:var(--font-serif);font-size:var(--text-2xl);font-variant-numeric:tabular-nums;color:var(--crisis);font-weight:600;line-height:1.1}.crisis-emergency-label{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2)}.crisis-list{gap:var(--space-4);flex-direction:column;list-style:none;display:flex}.crisis-contact{gap:var(--space-3);padding:var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);flex-direction:column;display:flex}.crisis-contact-head{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.crisis-contact h2{font-size:var(--text-lg);letter-spacing:var(--tracking-heading);text-wrap:balance;font-weight:500;line-height:1.25}.crisis-badge{padding:2px var(--space-3);font-size:var(--text-xs);font-weight:700;line-height:var(--lh-xs);letter-spacing:.02em;color:var(--teal);background:var(--teal-soft);border-radius:var(--radius-full)}.crisis-contact p{max-width:60ch;font-size:var(--text-base);color:var(--ink-2);line-height:1.65}.crisis-actions{gap:var(--space-2);margin-top:var(--space-1);flex-direction:column;display:flex}.crisis-call{justify-content:center;align-items:center;gap:var(--space-3);min-height:52px;padding:0 var(--space-5);font-size:var(--text-md);font-variant-numeric:tabular-nums;color:var(--on-primary);background:var(--primary);border-radius:var(--radius-md);-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), transform var(--transition-base) var(--ease-out);font-weight:600;text-decoration:none;display:inline-flex;box-shadow:inset 0 1px #ffffff1f}.crisis-call:visited{color:var(--on-primary)}.crisis-call:active{transform:scale(.985)}@media (hover:hover){.crisis-call:hover{color:var(--on-primary);background:var(--primary-hover);text-decoration:none}}.crisis-site{min-height:var(--tap-target);padding-inline:var(--space-1);font-size:var(--text-sm);color:var(--primary);align-self:flex-start;align-items:center;font-weight:600;display:inline-flex}@media (width>=640px){.crisis-actions{align-items:center;gap:var(--space-4);flex-direction:row}.crisis-call{min-width:14rem}}.crisis-page a:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}@media (width<=359px){.crisis-emergency-lines{grid-template-columns:1fr}}.profile-page{--foil-linear:linear-gradient(115deg, #e8a0b4 0%, #f2c27b 25%, #7fc4ad 50%, #8da2e0 75%, #c98ae0 100%);isolation:isolate;gap:var(--space-6);width:100%;padding:var(--space-8) var(--content-padding) var(--space-12);color:var(--ink);flex-direction:column;flex:1;display:flex;position:relative}.profile-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(42rem 18rem at 50% -3rem,#5c1f2b21,#0000 70%),radial-gradient(26rem 14rem at 90% 8rem,#2f6b5e1a,#0000 70%),radial-gradient(22rem 12rem at 6% 14rem,#c4783a1a,#0000 70%);height:28rem;position:absolute;inset:0 -100vmax auto}.profile-page>h1{letter-spacing:-.035em;font-size:clamp(2.5rem,1.5rem + 5vw,4.5rem);font-weight:500;line-height:1}.profile-page>:not(h1){animation:profile-in .5s var(--ease-out) both}.profile-page>:nth-child(3){animation-delay:60ms}.profile-page>:nth-child(4){animation-delay:.11s}.profile-page>:nth-child(5){animation-delay:.16s}.profile-page>:nth-child(6){animation-delay:.21s}.profile-page>:nth-child(n+7){animation-delay:.26s}@keyframes profile-in{0%{opacity:0;transform:translateY(14px)}}.profile-card{align-items:flex-start;gap:var(--space-2);padding:var(--space-6);border-radius:var(--radius-lg);background:radial-gradient(ellipse 100% 60% at 0 0, #5c1f2b12, transparent 70%) padding-box, linear-gradient(var(--surface), var(--surface)) padding-box, var(--foil-linear) border-box;border:2px solid #0000;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 40px -22px #5c1f2b73}.profile-name{font-family:var(--font-serif);font-size:var(--text-3xl);letter-spacing:-.025em;color:var(--ink);text-wrap:balance;font-weight:500;line-height:1.1}.profile-pronouns{font-size:var(--text-sm);font-weight:500;line-height:var(--lh-sm);color:var(--ink-2)}.profile-province{align-items:center;gap:var(--space-2);margin-top:var(--space-1);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);color:var(--ink);display:inline-flex}.profile-province:before{content:"";background:var(--teal);border-radius:var(--radius-full);width:8px;height:8px;box-shadow:0 0 0 3px var(--teal-soft)}.profile-bio{max-width:52ch;margin-top:var(--space-3);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);white-space:pre-line;overflow-wrap:anywhere;line-height:1.6}.profile-labels{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;list-style:none;display:flex}.profile-label{padding:3px var(--space-3);font-size:var(--text-sm);font-weight:500;line-height:var(--lh-sm);color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-full)}.profile-edit-btn{margin-top:var(--space-5);align-self:stretch}@media (width>=480px){.profile-edit-btn{align-self:flex-start}}.settings-section{gap:var(--space-2);flex-direction:column;display:flex}.settings-heading{padding-inline:var(--space-2);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);letter-spacing:0;color:var(--ink-2)}.settings-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);list-style:none;overflow:hidden}.settings-list>li+li{border-top:1px solid var(--line)}.settings-item{justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;min-height:56px;padding:var(--space-3) var(--space-5);font-family:var(--font-sans);font-size:var(--text-base);text-align:left;color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;font-weight:500;line-height:1.3;text-decoration:none;display:flex}.settings-item:visited{color:var(--ink)}.settings-item:active{background:var(--paper-2)}.settings-item-label{align-items:center;gap:var(--space-4);min-width:0;display:flex}.settings-item-label svg{box-sizing:content-box;padding:var(--space-2);color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-sm);transition:background-color var(--transition-base) var(--ease-out), color var(--transition-base) var(--ease-out), transform var(--transition-base) var(--ease-out);flex:none}.settings-chevron{color:var(--ink-3);transition:transform var(--transition-base) var(--ease-out), color var(--transition-base);flex:none}@media (hover:hover){.settings-item:hover{color:var(--ink);background:var(--paper)}.settings-item:hover .settings-chevron{color:var(--primary);transform:translate(3px)}.settings-item:hover .settings-item-label svg{color:var(--on-primary);background:var(--primary);transform:rotate(-6deg)}}.settings-item:focus-visible{outline:var(--focus-ring);outline-offset:-2px}.settings-item:disabled{opacity:.55;cursor:progress}.profile-empty{align-items:center;gap:var(--space-4);max-width:28rem;margin:var(--space-6) auto;padding:var(--space-9) var(--space-6);text-align:center;background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);flex-direction:column;display:flex}.profile-empty-text{font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.5}.profile-page>.field-error{padding:var(--space-3) var(--space-4);background:var(--danger-soft);border-radius:var(--radius-md)}@media (width>=1024px){.profile-page{column-gap:var(--space-8);row-gap:var(--space-6);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-content:start;display:grid}.profile-page>h1{grid-column:1/-1}.profile-page>.profile-card{top:calc(var(--header-height) + var(--space-5));grid-area:2/1/span 6;align-self:start;position:sticky}.profile-page>.settings-section,.profile-page>.field-error{grid-column:2}.profile-page>.profile-empty{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.profile-page>:not(h1){animation:none!important}.settings-item:hover .settings-chevron,.settings-item:hover .settings-item-label svg{transform:none}}.edit-profile-page{--foil-linear:linear-gradient(115deg, #e8a0b4 0%, #f2c27b 25%, #7fc4ad 50%, #8da2e0 75%, #c98ae0 100%);isolation:isolate;gap:var(--space-5);width:100%;padding:var(--space-6) var(--content-padding) var(--space-9);color:var(--ink);flex-direction:column;flex:1;display:flex;position:relative}.edit-profile-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(40rem 16rem at 50% -2rem,#5c1f2b1f,#0000 70%),radial-gradient(24rem 12rem at 90% 6rem,#2f6b5e17,#0000 70%);height:26rem;position:absolute;inset:0 -100vmax auto}@media (width>=1024px){.edit-profile-page>*{max-width:40rem}}.edit-head{align-items:flex-start;gap:var(--space-4);padding-bottom:var(--space-2);flex-direction:column;display:flex}.edit-head .back-btn{align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:var(--space-2) var(--space-4) var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-full);box-shadow:var(--shadow-1);transition:background-color var(--transition-fast), transform var(--transition-base) var(--ease-out);font-weight:500;display:inline-flex}.edit-head .back-btn svg{transition:transform var(--transition-base) var(--ease-out)}.edit-head .back-btn:active{transform:scale(.97)}@media (hover:hover){.edit-head .back-btn:hover{background:var(--paper-2)}.edit-head .back-btn:hover svg{transform:translate(-3px)}}.edit-head h1{letter-spacing:-.03em;font-size:clamp(2.25rem,1.5rem + 3.6vw,3.5rem);font-weight:500;line-height:1.05}.edit-error{top:calc(var(--header-height) + var(--space-2));z-index:var(--z-raised);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--ink);background:var(--danger-soft);border:1px solid var(--danger);border-radius:var(--radius-md);box-shadow:var(--shadow-2);border-left-width:4px;font-weight:500;line-height:1.5;position:sticky}.edit-field-error{font-size:var(--text-sm);font-weight:500;line-height:var(--lh-sm);color:var(--danger)}.edit-section{gap:var(--space-5);padding:var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);flex-direction:column;display:flex}@media (width>=640px){.edit-section{padding:var(--space-6)}}.edit-section-title{font-size:var(--text-xl);line-height:var(--lh-xl);letter-spacing:var(--tracking-heading)}.edit-section-hint{max-width:56ch;margin-top:calc(var(--space-3) * -1);font-size:var(--text-sm);color:var(--ink-2);line-height:1.6}@supports (animation-timeline:view()){.edit-section{animation:linear both edit-rise;animation-timeline:view();animation-range:entry entry 35%}@keyframes edit-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}}.edit-field{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.edit-field>label{font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);color:var(--ink)}.edit-field :is(input:not([type=checkbox]):not([type=radio]),select,textarea){width:100%;min-height:48px;padding:var(--space-3) var(--space-4);font-family:var(--font-sans);color:var(--ink);background-color:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);font-size:1rem;line-height:1.4}.edit-field textarea{resize:vertical;min-height:6.5rem;line-height:1.6}.edit-field select{appearance:none;padding-right:var(--space-9);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234A4A55' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4) center;background-size:16px 16px}.edit-field :is(input,select,textarea):focus{border-color:var(--primary);box-shadow:var(--focus-halo);outline:none}.edit-field :is(input,select,textarea):focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.edit-field-meta{font-size:var(--text-sm);line-height:var(--lh-sm);font-variant-numeric:tabular-nums;color:var(--ink-2)}.edit-dropzone{justify-content:center;align-items:center;gap:var(--space-2);min-height:11rem;padding:var(--space-6);font-size:var(--text-sm);text-align:center;color:var(--primary);cursor:pointer;background:var(--paper);border:2px dashed var(--line-strong);border-radius:var(--radius-lg);transition:background-color var(--transition-base) var(--ease-out), border-color var(--transition-base) var(--ease-out);flex-direction:column;font-weight:600;display:flex}.edit-dropzone small{font-size:var(--text-xs);color:var(--ink-2);font-weight:400}.edit-dropzone svg{box-sizing:content-box;padding:var(--space-3);background:var(--primary-soft);border-radius:var(--radius-full);transition:transform var(--transition-base) var(--ease-out)}@media (hover:hover){.edit-dropzone:hover{background:var(--primary-soft);border-color:var(--primary)}.edit-dropzone:hover svg{transform:translateY(-3px)}}:is(.edit-dropzone:has(input:focus-visible),.edit-thumb-add:has(input:focus-visible)){outline:var(--focus-ring);outline-offset:var(--focus-offset)}:is(.edit-dropzone:has(input:disabled),.edit-thumb-add:has(input:disabled)){opacity:.6;cursor:progress}.edit-thumbs{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;display:grid}.edit-thumb{aspect-ratio:4/5;background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-1);position:relative;overflow:hidden}.edit-thumb-image{position:absolute;inset:0}.edit-thumb-image img{object-fit:contain;width:100%;height:100%}.edit-thumb-badge{left:var(--space-2);bottom:var(--space-2);padding:1px var(--space-2);font-size:var(--text-xs);font-weight:600;line-height:var(--lh-xs);color:var(--on-primary);background:var(--primary);border-radius:var(--radius-full);pointer-events:none;position:absolute}.edit-thumb-remove{top:var(--space-2);right:var(--space-2);color:#fff;border-radius:var(--radius-full);width:28px;height:28px;transition:background-color var(--transition-fast), transform var(--transition-base) var(--ease-out);background:#1a1a1fc7;place-items:center;display:grid;position:absolute;box-shadow:0 0 0 2px #ffffffe6}.edit-thumb-remove:before{content:"";position:absolute;inset:-9px}@media (hover:hover){.edit-thumb-remove:hover{background:var(--danger);transform:scale(1.1)}}.edit-thumb-cover-btn{min-height:36px;padding:0 var(--space-2);font-size:var(--text-xs);color:var(--primary);border-top:1px solid var(--line);transition:background-color var(--transition-fast);background:#ffffffeb;font-weight:600;line-height:1.2;position:absolute;inset:auto 0 0}@media (hover:hover){.edit-thumb-cover-btn:hover{background:var(--primary-soft)}}.edit-thumb-add{justify-content:center;align-items:center;gap:var(--space-1);aspect-ratio:4/5;width:100%;font-size:var(--text-xs);color:var(--primary);cursor:pointer;background:var(--paper);border:2px dashed var(--line-strong);border-radius:var(--radius-md);transition:background-color var(--transition-base) var(--ease-out), border-color var(--transition-base) var(--ease-out);flex-direction:column;font-weight:600;display:flex}@media (hover:hover){.edit-thumb-add:hover{background:var(--primary-soft);border-color:var(--primary)}}.edit-thumb :is(button):focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.edit-radio-group{gap:var(--space-3);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.edit-radio-legend{margin-bottom:var(--space-1);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);color:var(--ink);padding:0}.edit-radio-options{gap:var(--space-2);flex-direction:column;display:flex}.edit-radio-option{align-items:center;gap:var(--space-3);padding:var(--space-4);cursor:pointer;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out);display:flex;position:relative}.edit-radio-option input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.edit-radio-icon{width:36px;height:36px;color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-sm);transition:background-color var(--transition-base) var(--ease-out), color var(--transition-base) var(--ease-out);flex:none;place-items:center;display:grid}.edit-radio-text{flex-direction:column;gap:2px;min-width:0;display:flex}.edit-radio-title{font-size:var(--text-base);color:var(--ink);font-weight:600;line-height:1.35}.edit-radio-hint{font-size:var(--text-sm);color:var(--ink-2);line-height:1.5}.edit-radio-option:after{content:"";background:var(--surface);border:2px solid var(--line-strong);border-radius:var(--radius-full);width:20px;height:20px;transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);flex:none;margin-left:auto}@media (hover:hover){.edit-radio-option:not(.is-selected):hover{border-color:var(--primary)}}.edit-radio-option.is-selected{background:var(--primary-soft);border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.edit-radio-option.is-selected .edit-radio-icon{color:var(--on-primary);background:var(--primary)}.edit-radio-option.is-selected:after{background:var(--primary);border-color:var(--primary);box-shadow:inset 0 0 0 3px var(--primary-soft)}.edit-radio-option:has(input:focus-visible){outline:var(--focus-ring);outline-offset:var(--focus-offset)}.edit-actions{bottom:var(--dock-offset,var(--space-4));z-index:var(--z-raised);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(16px)saturate(1.5);backdrop-filter:blur(16px)saturate(1.5);background:#ffffffd1;position:sticky;box-shadow:0 12px 32px -12px #1a1a1f4d}.edit-save{width:100%}@media (width>=1024px){.edit-actions{bottom:var(--space-4)}}@media (prefers-reduced-motion:reduce){.edit-section{animation:none!important}}.edit-field-select-trigger{width:100%;padding:var(--space-3) var(--space-4);background-color:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);font-size:var(--text-base);font-family:var(--font-sans);cursor:pointer;transition:border-color var(--transition-fast);text-align:left;justify-content:space-between;align-items:center;display:flex}.edit-field-select-trigger:hover,.edit-field-select-trigger:focus{border-color:var(--primary);outline:none}.edit-searchable-dropdown{z-index:50;background-color:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-3);flex-direction:column;max-height:250px;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden}.edit-searchable-search{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--line);background-color:var(--paper-2);align-items:center;gap:var(--space-2);display:flex}.edit-searchable-search input{padding:var(--space-1) 0;font-size:var(--text-sm);background:0 0;border:none;outline:none;flex:1}.edit-searchable-list{padding:var(--space-1) 0;margin:0;list-style:none;overflow-y:auto}.edit-searchable-item{width:100%;padding:var(--space-2) var(--space-4);font-size:var(--text-sm);text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:none;justify-content:space-between;align-items:center;display:flex}.edit-searchable-item:hover{background-color:var(--paper-2)}.edit-searchable-item.is-selected{background-color:var(--primary-soft);color:var(--primary);font-weight:500}.edit-searchable-empty{padding:var(--space-4);text-align:center;font-size:var(--text-sm);color:var(--ink-3)}.privacy-page{--foil-linear:linear-gradient(115deg, #e8a0b4 0%, #f2c27b 25%, #7fc4ad 50%, #8da2e0 75%, #c98ae0 100%);isolation:isolate;gap:var(--space-5);width:100%;padding:var(--space-6) var(--content-padding) var(--space-9);color:var(--ink);flex-direction:column;flex:1;display:flex;position:relative}.privacy-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(40rem 16rem at 50% -2rem,#5c1f2b1f,#0000 70%),radial-gradient(24rem 12rem at 90% 6rem,#2f6b5e17,#0000 70%);height:24rem;position:absolute;inset:0 -100vmax auto}@media (width>=1024px){.privacy-page>*{max-width:40rem}}.privacy-head{align-items:flex-start;gap:var(--space-4);padding-bottom:var(--space-2);flex-direction:column;display:flex}.privacy-head .back-btn{align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:var(--space-2) var(--space-4) var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-full);box-shadow:var(--shadow-1);transition:background-color var(--transition-fast), transform var(--transition-base) var(--ease-out);font-weight:500;display:inline-flex}.privacy-head .back-btn svg{transition:transform var(--transition-base) var(--ease-out)}.privacy-head .back-btn:active{transform:scale(.97)}@media (hover:hover){.privacy-head .back-btn:hover{background:var(--paper-2)}.privacy-head .back-btn:hover svg{transform:translate(-3px)}}.privacy-head h1{letter-spacing:-.03em;text-wrap:balance;font-size:clamp(2.25rem,1.5rem + 3.6vw,3.5rem);font-weight:500;line-height:1.05}.privacy-intro{max-width:var(--measure-lede);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.55}.privacy-page>:not(.privacy-head){animation:privacy-in .5s var(--ease-out) both}.privacy-page>:nth-child(3){animation-delay:60ms}.privacy-page>:nth-child(4){animation-delay:.11s}.privacy-page>:nth-child(5){animation-delay:.16s}.privacy-page>:nth-child(6){animation-delay:.21s}@keyframes privacy-in{0%{opacity:0;transform:translateY(14px)}}.privacy-error{top:calc(var(--header-height) + var(--space-2));z-index:var(--z-raised);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--ink);background:var(--danger-soft);border:1px solid var(--danger);border-radius:var(--radius-md);box-shadow:var(--shadow-2);border-left-width:4px;font-weight:500;line-height:1.5;position:sticky}.privacy-toggle{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);display:flex}.privacy-toggle-info{min-width:0}.privacy-toggle-info h2{font-family:var(--font-sans);font-size:var(--text-base);letter-spacing:0;color:var(--ink);font-weight:600;line-height:1.35}.privacy-toggle-info p{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--ink-2);line-height:1.55}.privacy-switch{width:56px;height:var(--tap-target);cursor:pointer;flex:none;display:block;position:relative}.privacy-switch input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.privacy-slider{background:var(--line-strong);border-radius:var(--radius-full);width:52px;height:30px;transition:background-color var(--transition-base) var(--ease-out);position:absolute;top:50%;left:2px;transform:translateY(-50%)}.privacy-slider:after{content:"";border-radius:var(--radius-full);width:24px;height:24px;transition:transform .35s var(--ease-out);background:#fff;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #1a1a1f4d}.privacy-switch input:checked+.privacy-slider{background:var(--primary)}.privacy-switch input:checked+.privacy-slider:after{transform:translate(22px)}.privacy-switch input:focus-visible+.privacy-slider{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.privacy-note{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--ink);background:var(--amber-soft);border-left:3px solid var(--amber);border-radius:2px var(--radius-md) var(--radius-md) 2px;line-height:1.55}.privacy-fieldset{gap:var(--space-3);min-width:0;padding:var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);flex-direction:column;margin:0;display:flex}.privacy-legend{float:left;width:100%;margin-bottom:var(--space-1);font-size:var(--text-base);color:var(--ink);padding:0;font-weight:600;line-height:1.35}.privacy-legend+*{clear:both}.privacy-options{gap:var(--space-2);flex-direction:column;display:flex}.privacy-option{align-items:center;gap:var(--space-3);padding:var(--space-4);cursor:pointer;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out);display:flex;position:relative}.privacy-option input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.privacy-option-icon{width:36px;height:36px;color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-sm);transition:background-color var(--transition-base) var(--ease-out), color var(--transition-base) var(--ease-out);flex:none;place-items:center;display:grid}.privacy-option-text{flex-direction:column;gap:2px;min-width:0;display:flex}.privacy-option-title{font-size:var(--text-base);color:var(--ink);font-weight:600;line-height:1.35}.privacy-option-hint{font-size:var(--text-sm);color:var(--ink-2);line-height:1.5}.privacy-option:after{content:"";background:var(--surface);border:2px solid var(--line-strong);border-radius:var(--radius-full);width:20px;height:20px;transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);flex:none;margin-left:auto}@media (hover:hover){.privacy-option:not(.is-selected):hover{border-color:var(--primary)}}.privacy-option.is-selected{background:var(--primary-soft);border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.privacy-option.is-selected .privacy-option-icon{color:var(--on-primary);background:var(--primary)}.privacy-option.is-selected:after{background:var(--primary);border-color:var(--primary);box-shadow:inset 0 0 0 3px var(--primary-soft)}.privacy-option:has(input:focus-visible){outline:var(--focus-ring);outline-offset:var(--focus-offset)}.privacy-actions{bottom:var(--dock-offset,var(--space-4));z-index:var(--z-raised);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(16px)saturate(1.5);backdrop-filter:blur(16px)saturate(1.5);background:#ffffffd1;position:sticky;box-shadow:0 12px 32px -12px #1a1a1f4d}.privacy-actions .btn{width:100%;font-weight:600}@media (width>=1024px){.privacy-actions{bottom:var(--space-4)}}@media (prefers-reduced-motion:reduce){.privacy-page>:not(.privacy-head){animation:none!important}}.account-page{--foil-linear:linear-gradient(115deg, #e8a0b4 0%, #f2c27b 25%, #7fc4ad 50%, #8da2e0 75%, #c98ae0 100%);isolation:isolate;gap:var(--space-6);width:100%;padding:var(--space-6) var(--content-padding) var(--space-12);color:var(--ink);flex-direction:column;flex:1;display:flex;position:relative}.account-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(40rem 16rem at 50% -2rem,#5c1f2b1f,#0000 70%),radial-gradient(24rem 12rem at 90% 6rem,#2f6b5e17,#0000 70%);height:24rem;position:absolute;inset:0 -100vmax auto}@media (width>=1024px){.account-page>*{max-width:40rem}}.account-head{align-items:flex-start;gap:var(--space-4);flex-direction:column;display:flex}.account-head .back-btn{align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:var(--space-2) var(--space-4) var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-full);box-shadow:var(--shadow-1);transition:background-color var(--transition-fast), transform var(--transition-base) var(--ease-out);font-weight:500;display:inline-flex}.account-head .back-btn svg{transition:transform var(--transition-base) var(--ease-out)}.account-head .back-btn:active{transform:scale(.97)}@media (hover:hover){.account-head .back-btn:hover{background:var(--paper-2)}.account-head .back-btn:hover svg{transform:translate(-3px)}}.account-head h1{letter-spacing:-.03em;text-wrap:balance;font-size:clamp(2.25rem,1.5rem + 3.6vw,3.5rem);font-weight:500;line-height:1.05}.account-intro{max-width:var(--measure-lede);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.55}.account-page>:not(.account-head){animation:account-in .5s var(--ease-out) both}.account-page>:nth-child(3){animation-delay:80ms}@keyframes account-in{0%{opacity:0;transform:translateY(14px)}}.account-card{gap:var(--space-1);padding:var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);flex-direction:column;display:flex}.account-card h2{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);letter-spacing:0;color:var(--ink-2)}.account-email{font-family:var(--font-serif);font-size:var(--text-lg);color:var(--ink);overflow-wrap:anywhere;line-height:1.4}.account-danger{gap:var(--space-5);padding:var(--space-5);background:var(--danger-soft);border:1px solid var(--danger);border-radius:var(--radius-lg);flex-direction:column;display:flex}.account-danger-head{align-items:flex-start;gap:var(--space-4);display:flex}.account-danger-icon{width:40px;height:40px;color:var(--danger);background:var(--surface);border-radius:var(--radius-md);flex:none;place-items:center;display:grid}.account-danger-head h2{font-family:var(--font-sans);font-size:var(--text-base);letter-spacing:0;color:var(--danger);font-weight:600;line-height:1.35}.account-danger-head p{margin-top:var(--space-1);max-width:52ch;font-size:var(--text-sm);color:var(--ink);line-height:1.6}.account-confirm{gap:var(--space-3);animation:account-in .35s var(--ease-out) both;flex-direction:column;display:flex}.account-confirm label{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink)}.account-confirm label strong{letter-spacing:.04em;font-weight:700}.account-confirm .input{letter-spacing:.06em;border-color:var(--danger);min-height:48px;font-size:1rem}.account-confirm .input:focus{border-color:var(--danger);box-shadow:0 0 0 4px #b5432f29}.account-confirm .input:focus-visible{outline-color:var(--danger)}.account-confirm-actions{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.account-confirm-actions .btn{min-width:0;padding-inline:var(--space-3);font-weight:600}.account-error{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--ink);background:var(--surface);border:1px solid var(--danger);border-radius:var(--radius-md);border-left-width:4px;font-weight:500;line-height:1.5}.account-danger>.btn{width:100%;font-weight:600}@media (prefers-reduced-motion:reduce){.account-page>:not(.account-head),.account-confirm{animation:none!important}}.resources-page h1{margin-bottom:8px;font-size:1.5rem}.resources-subtitle{color:var(--ink-2);margin-bottom:20px;font-size:.9rem}.category-tabs{scrollbar-width:none;gap:6px;margin-bottom:16px;padding-bottom:12px;display:flex;overflow-x:auto}.category-tabs::-webkit-scrollbar{display:none}.category-tab{border:1px solid var(--line);background:var(--paper);color:var(--ink-2);white-space:nowrap;cursor:pointer;font-size:.8rem;font-weight:500;font-family:var(--font-sans);border-radius:20px;padding:8px 14px;transition:all .15s}.category-tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}.province-filter{scrollbar-width:none;gap:6px;margin-bottom:16px;padding-bottom:12px;display:flex;overflow-x:auto}.province-filter::-webkit-scrollbar{display:none}.province-pill{border:1px solid var(--line);color:var(--ink-3);cursor:pointer;white-space:nowrap;font-size:.75rem;font-family:var(--font-sans);background:0 0;border-radius:16px;padding:6px 12px}.province-pill.active{background:var(--paper-2);color:var(--ink);border-color:var(--ink-3)}.resource-card{background:var(--paper);border:1px solid var(--line);cursor:pointer;border-radius:10px;margin-bottom:10px;padding:16px;transition:border-color .15s}.resource-card:hover{border-color:var(--primary)}.resource-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:6px;display:flex}.resource-name{color:var(--ink);font-size:.95rem;font-weight:600;line-height:1.3}.verified-badge{color:var(--success);background:#e6efec;border-radius:4px;flex-shrink:0;align-items:center;gap:3px;padding:2px 6px;font-size:.65rem;font-weight:600;display:inline-flex}.resource-category{text-transform:uppercase;letter-spacing:.05em;color:var(--primary);margin-bottom:6px;font-size:.7rem;font-weight:600}.resource-description{color:var(--ink-2);margin-bottom:8px;font-size:.85rem;line-height:1.4}.resource-meta{color:var(--ink-3);font-size:.75rem}.no-resources{text-align:center;color:var(--ink-3);padding:48px 24px;font-size:.9rem}.resource-detail-page{padding-bottom:32px}.resource-detail-card{background:var(--paper);border:1px solid var(--line);border-radius:12px;margin-bottom:16px;padding:24px}.resource-detail-category{text-transform:uppercase;letter-spacing:.05em;color:var(--primary);margin-bottom:8px;font-size:.7rem;font-weight:600}.resource-detail-name{font-family:var(--font-serif);color:var(--ink);margin-bottom:12px;font-size:1.5rem;font-weight:600;line-height:1.2}.resource-detail-verified{color:var(--success);background:#e6efec;border-radius:6px;align-items:center;gap:4px;margin-bottom:16px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.resource-detail-description{color:var(--ink-2);margin-bottom:24px;font-size:.95rem;line-height:1.6}.contact-row{border-top:1px solid var(--line);align-items:flex-start;gap:12px;padding:12px 0;display:flex}.contact-row:last-child{border-bottom:none}.contact-label{color:var(--ink-3);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;font-size:.75rem}.contact-value{color:var(--ink);font-size:.9rem;font-weight:500;text-decoration:none}.contact-value:hover{color:var(--primary)}.detail-actions{gap:12px;margin-top:16px;display:flex}.btn-save{background:var(--paper);border:1px solid var(--line);color:var(--ink);cursor:pointer;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:.9rem;font-weight:500;transition:all .15s;display:flex}.btn-save.saved{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.btn-save:hover{border-color:var(--primary)}.last-verified{color:var(--ink-3);text-align:center;margin-top:16px;font-size:.75rem}.stories-page{isolation:isolate;width:100%;max-width:var(--content-width);padding:var(--space-5) var(--content-padding) var(--space-12);color:var(--ink);flex-direction:column;flex:1;margin-inline:auto;display:flex;position:relative}.stories-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(42rem 16rem at 50% -3rem,#5c1f2b1f,#0000 70%),radial-gradient(24rem 12rem at 92% 6rem,#2f6b5e17,#0000 70%),radial-gradient(22rem 12rem at 4% 12rem,#b8893f1a,#0000 70%);height:26rem;position:absolute;inset:0 -100vmax auto}.stories-header{align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-5);flex-direction:column;display:flex}.stories-header .back-btn{align-items:center;gap:var(--space-2);min-height:var(--tap-target);margin-left:calc(var(--space-3) * -1);padding-inline:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink-2);border-radius:var(--radius-full);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), color var(--transition-fast);font-weight:500;display:inline-flex}.stories-header .back-btn:active{background:var(--paper-2)}@media (hover:hover){.stories-header .back-btn:hover{color:var(--ink);background:var(--paper-2)}}.stories-header .back-btn:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.stories-header h1{letter-spacing:-.035em;font-size:clamp(2.5rem,1.5rem + 5vw,4.5rem);font-weight:500;line-height:1}.stories-subtitle{max-width:var(--measure-lede);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.55}.stories-count{font-size:var(--text-sm);font-weight:500;line-height:var(--lh-sm);color:var(--ink-2);font-variant-numeric:tabular-nums}.stories-filters{top:var(--header-height);z-index:var(--z-raised);margin-inline:calc(var(--content-padding) * -1);margin-bottom:var(--space-7);padding:var(--space-2) var(--content-padding) var(--space-3);background:color-mix(in srgb, var(--paper) 86%, transparent);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px)saturate(1.2);backdrop-filter:blur(14px)saturate(1.2);flex-direction:column;gap:2px;display:flex;position:sticky}.filter-row{align-items:center;gap:var(--space-3);min-width:0;display:flex}.filter-label{font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);color:var(--ink-2);flex:0 0 3.5rem}.filter-pills{gap:var(--space-2);scrollbar-width:none;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;flex:1;min-width:0;margin-block:-2px;padding-block:2px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 1.5rem),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 1.5rem),#0000)}.filter-pills::-webkit-scrollbar{display:none}@media (width>=1024px){.filter-pills{flex-wrap:wrap;overflow:visible;-webkit-mask-image:none;mask-image:none}}.stories-filters .pill{min-height:36px;padding:var(--space-1) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);white-space:nowrap;color:var(--ink-2);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-full);cursor:pointer;scroll-snap-align:start;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);flex:none;font-weight:500;line-height:1.2;position:relative}.stories-filters .pill:before{content:"";position:absolute;inset:-4px 0}.stories-filters .pill:active{background:var(--paper-2)}.stories-filters .pill.is-active,.stories-filters .pill.is-active:active{color:var(--on-primary);background:var(--primary);border-color:var(--primary)}@media (hover:hover){.stories-filters .pill:not(.is-active):hover{color:var(--ink);background:var(--paper-2)}.stories-filters .pill.is-active:hover{background:var(--primary-hover)}}.stories-filters .pill:focus-visible{outline:var(--focus-ring);outline-offset:2px}.filters-progress{display:none}@supports (animation-timeline:scroll()){.filters-progress{pointer-events:none;background:linear-gradient(90deg, var(--primary), var(--tone-plum));transform-origin:0;height:2px;animation:linear both stories-progress;animation-timeline:scroll(root);display:block;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}}@keyframes stories-progress{to{transform:scaleX(1)}}.stories-loading{place-items:center;min-height:40vh;display:grid}.stories-empty{align-items:center;gap:var(--space-3);max-width:28rem;margin:var(--space-6) auto;padding:var(--space-9) var(--space-6);text-align:center;color:var(--ink-3);background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);flex-direction:column;display:flex}.stories-empty p{max-width:30ch;font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.5}.stories-empty .btn{margin-top:var(--space-2)}.stories-grid{gap:var(--space-8) var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=640px){.stories-grid{gap:var(--space-9) var(--space-6);grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1024px){.stories-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.stories-grid>.book{animation:book-in .55s var(--ease-out) backwards;animation-delay:calc(var(--d,0) * 45ms)}.stories-grid>.book:nth-child(2){--d:1}.stories-grid>.book:nth-child(3){--d:2}.stories-grid>.book:nth-child(4){--d:3}.stories-grid>.book:nth-child(5){--d:4}.stories-grid>.book:nth-child(6){--d:5}.stories-grid>.book:nth-child(7){--d:6}.stories-grid>.book:nth-child(n+8){--d:7}@keyframes book-in{0%{opacity:0;transform:translateY(14px)}}.book,.book:visited,.book:hover{--depth:1.4rem;--tilt:20deg;--open:-112deg;--book-radius:3px 10px 10px 3px;--book-a:#2a2a33;--book-b:#4a4a55;color:var(--ink);perspective:1100px;-webkit-tap-highlight-color:transparent;text-decoration:none;display:block;position:relative}.book[data-theme=Coming\ Out]{--book-a:#3e4856;--book-b:#5f6b7a}.book[data-theme=Chosen\ Family]{--book-a:#1f4a41;--book-b:#2f6b5e}.book[data-theme=Love]{--book-a:#5c1f2b;--book-b:#7a3b52}.book[data-theme="Culture & Faith"]{--book-a:#6e4e1c;--book-b:#8f6b2b}.book[data-theme=Queer\ Joy]{--book-a:#6a3a8c;--book-b:#8e3f6a}.book:focus-visible{outline:var(--focus-ring);outline-offset:8px;border-radius:var(--radius-md)}.book-3d{aspect-ratio:2/3;width:100%;transform-style:preserve-3d;rotate:y var(--tilt);transition:rotate .7s var(--ease-out), translate .8s var(--ease-out);position:relative;translate:0}.book-spine,.book-edge,.book-top,.book-back{backface-visibility:visible;position:absolute}.book-back{background:color-mix(in srgb, var(--book-a) 70%, #000);border-radius:var(--book-radius);transform:translateZ(calc(var(--depth) * -1));inset:0}.book-spine{width:var(--depth);padding-block:var(--space-3);background:linear-gradient(to right, color-mix(in srgb, var(--book-a) 78%, #000), color-mix(in srgb, var(--book-a) 92%, #000));transform-origin:0;transform:translateZ(calc(var(--depth) * -1)) rotateY(-90deg);justify-content:center;align-items:center;display:flex;top:0;bottom:0;left:0;overflow:hidden}.book-spine-title{max-height:100%;font-family:var(--font-serif);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;color:var(--on-primary);writing-mode:vertical-rl;font-size:.6875rem;font-weight:500;line-height:1;overflow:hidden;transform:rotate(180deg)}.book-edge{width:var(--depth);background:repeating-linear-gradient(90deg, var(--paper) 0 2px, var(--line) 2px 3px);transform-origin:100%;transform:translateZ(calc(var(--depth) * -1)) rotateY(90deg);top:0;bottom:0;right:0}.book-top{height:var(--depth);background:repeating-linear-gradient(0deg, var(--paper) 0 2px, var(--line) 2px 3px);transform-origin:top;transform:translateZ(calc(var(--depth) * -1)) rotateX(90deg);top:0;left:0;right:0}.book-inside{gap:var(--space-2);min-height:0;padding:var(--space-4) var(--space-4) var(--space-4) var(--space-5);background:var(--paper);border-radius:2px 8px 8px 2px;flex-direction:column;display:flex;position:absolute;inset:2px 2px 2px 0;overflow:hidden;transform:translateZ(-2px);box-shadow:inset 10px 0 12px -10px #1a1a1f40}.book-inside-title{font-size:var(--text-md);letter-spacing:var(--tracking-heading);overflow-wrap:anywhere;line-height:1.25}.story-card-excerpt{font-family:var(--font-serif);font-size:var(--text-sm);color:var(--ink-2);-webkit-line-clamp:6;-webkit-box-orient:vertical;line-height:1.55;display:-webkit-box;overflow:hidden}.story-card-meta{gap:0 var(--space-2);font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ink-2);flex-wrap:wrap;margin-top:auto;display:flex}.book-read{align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);color:var(--primary);display:inline-flex}.book-cover{transform-style:preserve-3d;transform-origin:0;transition:rotate .85s var(--ease-out);position:absolute;inset:0;rotate:y 0deg}.book-cover-front,.book-cover-inner{border-radius:var(--book-radius);backface-visibility:hidden;position:absolute;inset:0}.book-cover-front{justify-content:space-between;gap:var(--space-2);padding:var(--space-3) var(--space-3) var(--space-3) calc(var(--space-3) + 6px);color:var(--on-primary);background:linear-gradient(155deg, var(--book-b) 0%, var(--book-a) 100%);flex-direction:column;display:flex;overflow:hidden;box-shadow:inset 7px 0 8px -5px #00000061,inset 1px 0 #ffffff24,inset 0 1px #ffffff1a}.book-cover-inner{background:var(--paper-2);transform:rotateY(180deg);box-shadow:inset -8px 0 10px -8px #1a1a1f33}.story-card-image{z-index:0;position:absolute;inset:0}.story-card-image img{object-fit:cover;width:100%;height:100%}.book.has-image .book-cover-front:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(#1a1a1f26 0%,#1a1a1f73 50%,#1a1a1fe6 100%);position:absolute;inset:0}.book-glyph{z-index:0;font-family:var(--font-serif);color:var(--on-primary);opacity:.16;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:clamp(4.5rem,3rem + 6vw,7.5rem);font-weight:500;line-height:1;position:absolute;top:12%;left:50%;transform:translate(-50%)}.story-card-tags,.book-cover-text{z-index:2;position:relative}.story-card-tags{flex-wrap:wrap;gap:4px;display:flex}.story-tag{padding:2px var(--space-2);font-size:var(--text-xs);font-weight:500;line-height:var(--lh-xs);color:var(--on-primary);border-radius:var(--radius-full);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1a1a1f66;border:1px solid #ffffff38}.book-cover-text{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.story-card-title{font-size:var(--text-md);letter-spacing:var(--tracking-heading);color:var(--on-primary);overflow-wrap:anywhere;-webkit-line-clamp:4;-webkit-box-orient:vertical;font-weight:500;line-height:1.15;display:-webkit-box;overflow:hidden}.book-blurb{font-family:var(--font-serif);font-size:var(--text-xs);color:#fbfaf8d1;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.45;display:none;overflow:hidden}.book-author{margin-top:var(--space-1);font-size:var(--text-xs);font-weight:500;line-height:var(--lh-xs);color:#fbfaf8e0}@media (width>=640px){.book-cover-front{gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-4) calc(var(--space-4) + 8px)}.story-card-title{font-size:var(--text-lg);line-height:1.12}.book-blurb{display:-webkit-box}}.book-cover-front:after{content:"";z-index:3;pointer-events:none;opacity:0;background:radial-gradient(circle at var(--mx,50%) var(--my,30%), #fff6, transparent 42%), linear-gradient(115deg, #e8a0b4, #f2c27b, #7fc4ad, #8da2e0, #c98ae0);background-size:auto,220% 100%;background-position:0 0, var(--mx,50%) 0;mix-blend-mode:soft-light;transition:opacity .3s;position:absolute;inset:0}.book-shadow{pointer-events:none;filter:blur(5px);height:.9rem;transition:transform .8s var(--ease-out), opacity .4s ease;background:radial-gradient(#1a1a1f4d,#0000 70%);position:absolute;bottom:-.9rem;left:10%;right:6%}.book:active .book-3d{rotate:y 0deg;scale:.98}@media (hover:hover) and (pointer:fine){.book:hover,.book:focus-visible{z-index:3}.book:hover .book-3d{transition-delay:0s,.28s;translate:12%;rotate:y 4deg}.book:hover .book-cover{rotate:y var(--open);transition-delay:.28s}.book:hover .book-cover-front:after{opacity:.75}.book:hover .book-shadow{opacity:.8;transform:translate(12%)scaleX(1.12)}.book:focus-visible .book-3d{translate:12%;rotate:y 4deg}.book:focus-visible .book-cover{rotate:y var(--open)}}@media (hover:none){.book:active .book-cover-front:after{opacity:.6}}@media (prefers-reduced-motion:reduce){.stories-grid>.book{animation:none}.book-3d,.book:active .book-3d{transition:none;translate:none;rotate:none;scale:none}.book-spine,.book-edge,.book-top,.book-back,.book-cover-inner{display:none}.book-cover{transition:opacity var(--transition-base);rotate:none}.book-cover-front:after,.book-shadow{display:none}@media (hover:hover) and (pointer:fine){.book:hover .book-3d,.book:focus-visible .book-3d{translate:none;rotate:none}.book:hover .book-cover,.book:focus-visible .book-cover{opacity:0;transition-delay:0s;rotate:none}}}.story-reader{--accent:#7a2a3a;--foil-linear:linear-gradient(115deg, #e8a0b4 0%, #f2c27b 25%, #7fc4ad 50%, #8da2e0 75%, #c98ae0 100%);isolation:isolate;width:100%;padding:var(--space-6) var(--content-padding) var(--space-12);color:var(--ink);flex-direction:column;flex:1;display:flex;position:relative}.story-reader[data-theme=Coming\ Out]{--accent:#a4506f}.story-reader[data-theme=Chosen\ Family]{--accent:#4f9482}.story-reader[data-theme=Love]{--accent:#b8404f}.story-reader[data-theme="Culture & Faith"]{--accent:#cf9f4f}.story-reader[data-theme=Queer\ Joy]{--accent:#d98a48}.story-reader:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(ellipse 40rem 20rem at 50% -2rem, color-mix(in srgb, var(--accent) 22%, transparent), transparent 70%), radial-gradient(ellipse 24rem 16rem at 85% 12rem, color-mix(in srgb, var(--accent) 10%, transparent), transparent 70%);height:34rem;position:absolute;inset:0 -100vmax auto}.read-progress{display:none}@supports (animation-timeline:scroll()){.read-progress{top:var(--header-height);z-index:calc(var(--z-sticky) - 1);width:min(100%, var(--content-width));background:var(--foil-linear);transform-origin:0;height:3px;margin-inline:auto;animation:linear both read-grow;animation-timeline:scroll(root);display:block;position:fixed;inset-inline:0;transform:scaleX(0)}@keyframes read-grow{to{transform:scaleX(1)}}}.story-reader .back-btn{align-self:flex-start;align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:var(--space-2) var(--space-4) var(--space-2) var(--space-3);color:var(--ink);font-size:var(--text-sm);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-full);box-shadow:var(--shadow-1);transition:background-color var(--transition-fast), transform var(--transition-base) var(--ease-out);font-weight:500;display:inline-flex}.story-reader .back-btn svg{transition:transform var(--transition-base) var(--ease-out)}.story-reader .back-btn:active{transform:scale(.97)}@media (hover:hover){.story-reader .back-btn:hover{background:var(--paper-2)}.story-reader .back-btn:hover svg{transform:translate(-3px)}}.story-cover-frame{margin-top:var(--space-6);background:var(--foil-linear);border-radius:calc(var(--radius-lg) + 4px);box-shadow:0 24px 48px -20px color-mix(in srgb, var(--accent) 55%, transparent);transform-origin:50% 100%;animation:cover-in .9s var(--ease-out) both;padding:2px}@keyframes cover-in{0%{opacity:0;transform:perspective(1000px)rotateX(12deg)translateY(28px)scale(.97)}}.story-cover{aspect-ratio:16/10;object-fit:cover;background:var(--paper-2);border-radius:calc(var(--radius-lg) + 2px);width:100%}.story-header{align-items:flex-start;gap:var(--space-4);max-width:44rem;margin:var(--space-8) auto var(--space-8) 0;flex-direction:column;display:flex}.story-reader .story-card-tags{gap:var(--space-2);flex-wrap:wrap;display:flex}.story-reader .story-tag{align-items:center;gap:var(--space-2);padding:2px var(--space-3);font-size:var(--text-sm);font-weight:500;line-height:var(--lh-sm);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-full);-webkit-backdrop-filter:none;backdrop-filter:none;display:inline-flex}.story-reader .story-tag:before{content:"";background:var(--accent);border-radius:var(--radius-full);width:8px;height:8px}.story-title{letter-spacing:-.03em;text-wrap:balance;color:var(--ink);font-size:clamp(2.25rem,1.4rem + 4.2vw,4.25rem);font-weight:500;line-height:1.04}.story-meta{gap:var(--space-2) var(--space-5);font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2);flex-wrap:wrap;display:flex}.story-meta>span{align-items:center;gap:var(--space-2);display:inline-flex}.story-meta svg{color:var(--accent);flex:none}.story-content{width:100%;max-width:42rem;margin:0 var(--space-3) 0 0;padding:var(--space-6) var(--space-5) var(--space-7) var(--space-6);font-family:var(--font-serif);color:var(--ink);overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;background:linear-gradient(90deg, #1a1a1f17, transparent 28px), var(--surface);border:1px solid var(--line);border-radius:4px var(--radius-lg) var(--radius-lg) 4px;box-shadow:4px 4px 0 -1px var(--surface), 4px 4px 0 0 var(--line), 8px 8px 0 -1px var(--surface), 8px 8px 0 0 var(--line), 0 28px 40px -28px #1a1a1f40;font-size:1.1875rem;line-height:1.8;position:relative}.story-content>*+*{margin-top:var(--space-5)}.story-content>:first-child{margin-top:0}.story-content p{color:var(--ink);line-height:inherit}.story-content>p:first-child:first-letter{float:left;color:var(--primary);margin:.06em .1em 0 0;font-size:3.7em;font-weight:500;line-height:.82}.story-content h2,.story-content h3,.story-content h4{font-family:var(--font-serif);color:var(--ink);text-wrap:balance;scroll-margin-top:calc(var(--header-height) + var(--space-5));font-weight:500}.story-content h2{margin-top:var(--space-10);padding-top:var(--space-5);letter-spacing:-.02em;font-size:clamp(1.5rem,1.25rem + 1vw,1.875rem);line-height:1.2;position:relative}.story-content h2:before{content:"";background:var(--foil-linear);border-radius:var(--radius-full);width:3.5rem;height:3px;position:absolute;top:0;left:0}.story-content h3{margin-top:var(--space-8);font-size:var(--text-lg);font-weight:600;line-height:1.35}.story-content h4{margin-top:var(--space-6);font-size:var(--text-md);font-weight:600}.story-content>h2:first-child{margin-top:0;padding-top:0}.story-content>h2:first-child:before{display:none}.story-content h2+*,.story-content h3+*,.story-content h4+*{margin-top:var(--space-3)}.story-content strong{font-weight:650}.story-content em{font-style:italic}.story-content ul,.story-content ol{gap:var(--space-2);padding-left:var(--space-6);flex-direction:column;display:flex}.story-content ul{list-style:none}.story-content ul>li{position:relative}.story-content ul>li:before{content:"";top:.78em;left:calc(var(--space-5) * -1);background:var(--accent);border-radius:var(--radius-full);width:7px;height:7px;position:absolute}.story-content ol{list-style:decimal}.story-content ol>li::marker{font-family:var(--font-sans);color:var(--accent);font-size:.85em;font-weight:600}.story-content li>p{margin:0}.story-content li>ul,.story-content li>ol{margin-top:var(--space-2)}.story-content hr{height:2px;margin-block:var(--space-9);background:linear-gradient(90deg, transparent, var(--line-strong) 20%, var(--line-strong) 80%, transparent);border:0}.story-content blockquote{padding:var(--space-3) var(--space-5);color:var(--ink-2);background:var(--paper);border-left:3px solid var(--accent);border-radius:2px var(--radius-md) var(--radius-md) 2px;font-style:italic}.story-content blockquote p{color:inherit}.story-content a{color:var(--primary);text-underline-offset:.22em;text-decoration:underline;text-decoration-thickness:1px}@media (hover:hover){.story-content a:hover{text-decoration-thickness:2px}}.story-content img{border-radius:var(--radius-md)}.story-reader[data-format=Poetry] .story-content{-webkit-hyphens:none;hyphens:none;max-width:34rem;font-size:1.25rem;line-height:1.95}.story-reader[data-format=Poetry] .story-content p{white-space:pre-line}.story-reader[data-format=Poetry] .story-content>p:first-child:first-letter{float:none;font-size:inherit;line-height:inherit;color:inherit;margin:0}.story-footer{align-items:flex-start;gap:var(--space-5);max-width:42rem;margin-top:var(--space-9);padding-top:var(--space-7);flex-direction:column;display:flex;position:relative}.story-footer:before{content:"";background:var(--foil-linear);border-radius:var(--radius-full);width:6rem;height:2px;position:absolute;top:0;left:0}.story-loading{flex:1;place-items:center;min-height:50vh;display:grid}.story-reader--empty .story-missing{align-items:flex-start;gap:var(--space-3);max-width:28rem;margin-top:var(--space-9);padding:var(--space-7) var(--space-6);background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);flex-direction:column;display:flex}.story-missing svg{color:var(--primary)}.story-missing h1{font-size:var(--text-2xl);line-height:var(--lh-2xl)}@media (width>=640px){.story-content{padding:var(--space-8) var(--space-8) var(--space-8) var(--space-9);margin-right:var(--space-4)}}@media (width>=1024px){.story-cover-frame{max-width:100%}}@media (prefers-reduced-motion:reduce){.story-cover-frame,.read-progress{animation:none!important}.read-progress{transform:scaleX(0)}}.events-page{--foil-linear:linear-gradient(115deg, #e8a0b4 0%, #f2c27b 25%, #7fc4ad 50%, #8da2e0 75%, #c98ae0 100%);isolation:isolate;width:100%;padding:var(--space-6) var(--content-padding) var(--space-12);color:var(--ink);flex-direction:column;flex:1;display:flex;position:relative}.events-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(42rem 20rem at 50% -3rem,#5c1f2b21,#0000 70%),radial-gradient(28rem 16rem at 88% 9rem,#c4783a21,#0000 70%),radial-gradient(24rem 14rem at 10% 14rem,#2f6b5e17,#0000 70%);height:30rem;position:absolute;inset:0 -100vmax auto}.events-header{gap:var(--space-3);padding-block:var(--space-4) var(--space-7);flex-direction:column;display:flex}.events-header h1{letter-spacing:-.035em;font-size:clamp(3rem,1.8rem + 6vw,5.5rem);font-weight:500;line-height:.96}.events-subtitle{max-width:var(--measure-lede);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.55}.events-views{margin-bottom:var(--space-4)}.events-views .segment>span{min-height:44px;font-size:var(--text-base)}.events-filters{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);-webkit-backdrop-filter:blur(16px)saturate(1.5);backdrop-filter:blur(16px)saturate(1.5);background:#ffffffc7;flex-direction:column;display:flex}.events-filter-grid{gap:var(--space-3);grid-template-columns:1fr;display:grid}@media (width>=480px){.events-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.events-filter-grid--single{grid-template-columns:minmax(0,1fr)}}.events-filters .select{text-overflow:ellipsis}.segmented{border:0;min-width:0;margin:0;padding:0}.segmented-track{scrollbar-width:none;background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-full);gap:2px;max-width:100%;padding:4px;display:flex;overflow-x:auto}.segmented-track::-webkit-scrollbar{display:none}.segment{cursor:pointer;flex:1 1 0;position:relative}.segment>span{min-height:36px;padding:0 var(--space-4);font-size:var(--text-sm);white-space:nowrap;color:var(--ink-2);border-radius:var(--radius-full);transition:color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out);background:linear-gradient(#0000,#0000) padding-box padding-box,border-box;border:1px solid #0000;place-items:center;font-weight:500;line-height:1.2;display:grid}@media (hover:hover){.segment:hover>span{color:var(--ink)}}.segment input:checked+span{color:var(--on-primary);background:linear-gradient(var(--primary), var(--primary)) padding-box, var(--foil-linear) border-box;font-weight:600;box-shadow:0 4px 12px -4px #5c1f2b80}.segment:has(input:focus-visible)>span{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.segmented--compact .segmented-track{display:inline-flex}.segmented--compact .segment{flex:none}.segmented--compact .segment>span{min-height:32px;padding:0 var(--space-3)}.events-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);margin-block:var(--space-6) var(--space-5);flex-wrap:wrap;display:flex}.events-count{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-full);display:inline-flex}.events-count:before{content:"";background:var(--teal);border-radius:var(--radius-full);width:8px;height:8px;box-shadow:0 0 0 3px var(--teal-soft)}.events-results{transition:opacity var(--transition-base)}.events-results.is-updating{opacity:.55;pointer-events:none}.event-list{gap:var(--space-4);grid-template-columns:1fr;list-style:none;display:grid}.event-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);min-height:9rem;box-shadow:var(--shadow-1);transition:border-color var(--transition-base) var(--ease-out), box-shadow var(--transition-base) var(--ease-out), transform var(--transition-base) var(--ease-out);align-items:stretch;display:flex;position:relative;overflow:hidden}.event-card:before{content:"";z-index:2;background:var(--foil-linear);opacity:0;height:2px;transition:opacity var(--transition-base);pointer-events:none;position:absolute;inset:0 0 auto}@media (hover:hover){.event-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-lift);transform:translateY(-3px)}.event-card:hover:before{opacity:1}}.event-card:has(.event-title-link:focus-visible){outline:var(--focus-ring);outline-offset:var(--focus-offset)}.event-card:has(.event-title-link:focus-visible):before{opacity:1}.event-card:active{transform:scale(.99)}.event-poster{isolation:isolate;aspect-ratio:4/5;background-color:var(--paper-2);flex:0 0 34%;align-self:flex-start;max-width:9.5rem;position:relative;overflow:hidden}.event-poster:before{content:"";z-index:-2;background:var(--poster) center / cover no-repeat;filter:blur(18px)saturate(1.25);opacity:.95;position:absolute;inset:-24px;transform:scale(1.12)}.event-poster:after{content:"";z-index:-1;background:#1a1a1f14;position:absolute;inset:0}.event-image{object-fit:contain;object-position:center;width:100%;height:100%;display:block}.event-body{gap:var(--space-2);min-width:0;padding:var(--space-4);flex-direction:column;flex:1;display:flex;position:relative}.event-top{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.event-type{--tone:var(--ink-3);align-items:center;gap:var(--space-2);padding:2px var(--space-3);font-size:var(--text-xs);font-weight:600;line-height:var(--lh-xs);color:var(--ink);background:color-mix(in srgb, var(--tone) 12%, var(--surface));border:1px solid color-mix(in srgb, var(--tone) 30%, transparent);border-radius:var(--radius-full);display:inline-flex}.event-type:before{content:"";background:var(--tone);border-radius:var(--radius-full);width:7px;height:7px}.event-type--social{--tone:var(--tone-plum)}.event-type--support{--tone:var(--tone-sage)}.event-type--activism{--tone:var(--primary)}.event-type--party{--tone:var(--tone-ochre)}.event-type--workshop{--tone:var(--tone-slate)}.event-going{align-items:center;gap:var(--space-1);padding:2px var(--space-2);font-size:var(--text-xs);font-weight:600;line-height:var(--lh-xs);color:var(--teal);background:var(--teal-soft);border-radius:var(--radius-full);display:inline-flex}.event-hosting{padding:2px var(--space-2);font-size:var(--text-xs);font-weight:600;line-height:var(--lh-xs);color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-full);align-items:center;display:inline-flex}.event-title{font-family:var(--font-serif);font-size:var(--text-lg);letter-spacing:var(--tracking-heading);text-wrap:balance;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-weight:500;line-height:1.22;display:-webkit-box;overflow:hidden}.event-title-link{color:var(--ink);text-decoration:none}.event-title-link:visited{color:var(--ink)}.event-title-link:after{content:"";z-index:1;position:absolute;inset:0}.event-title-link:focus-visible{outline:none}@media (hover:hover){.event-title-link:hover{color:var(--primary);text-decoration:none}}.event-meta{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2)}.event-meta time{color:var(--ink);font-weight:500}.event-signals{gap:var(--space-1) var(--space-2);padding-top:var(--space-1);flex-wrap:wrap;margin-top:auto;list-style:none;display:flex}.signal{align-items:center;gap:var(--space-1);padding:2px var(--space-2);font-size:var(--text-xs);font-weight:500;line-height:var(--lh-xs);color:var(--ink-2);background:var(--paper-2);border-radius:var(--radius-full);display:inline-flex}.signal svg{color:var(--ink-2);flex:none}.events-empty{align-items:center;gap:var(--space-4);max-width:28rem;margin:var(--space-7) auto;padding:var(--space-9) var(--space-6);text-align:center;background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);flex-direction:column;display:flex}.events-empty-text{font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.5}.fab{right:max(var(--space-4), calc((100vw - var(--content-width)) / 2 + var(--space-4)));bottom:calc(var(--dock-offset,5.5rem) + var(--space-2));z-index:calc(var(--z-sticky) - 1);width:56px;height:56px;color:var(--on-primary);background:var(--foil-linear);border-radius:var(--radius-full);transition:transform var(--transition-base) var(--ease-out), box-shadow var(--transition-base) var(--ease-out);place-items:center;padding:2px;text-decoration:none;display:grid;position:fixed;box-shadow:0 12px 28px -8px #5c1f2b8c}.fab:visited{color:var(--on-primary)}.fab svg{box-sizing:content-box;background:var(--primary);border-radius:var(--radius-full);width:24px;height:24px;transition:transform var(--transition-base) var(--ease-out);padding:14px}.fab:active{transform:scale(.94)}@media (hover:hover){.fab:hover{color:var(--on-primary);transform:translateY(-2px);box-shadow:0 16px 32px -8px #5c1f2b99}.fab:hover svg{transform:rotate(90deg)}}@media (width<=359px){.event-poster{flex-basis:30%}.event-body{padding:var(--space-3)}}@media (width>=640px){.event-list{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr))}.event-card{flex-direction:column;min-height:0}.event-poster{flex:none;align-self:stretch;width:100%;max-width:none}.event-poster:before{filter:blur(24px)saturate(1.25)}.event-body{padding:var(--space-5)}.event-title{font-size:var(--text-xl);line-height:var(--lh-xl)}}@media (width>=1024px){.event-list{grid-template-columns:repeat(3,minmax(0,1fr))}.fab{bottom:var(--space-6)}}@supports (animation-timeline:view()){.event-list>li{animation:linear both event-rise;animation-timeline:view();animation-range:entry entry 45%}@keyframes event-rise{0%{opacity:0;transform:translateY(32px)scale(.97)}to{opacity:1;transform:none}}}@media (prefers-reduced-motion:reduce){.event-list>li{animation:none!important}.event-card:hover,.fab:hover,.fab:hover svg{transform:none}}.ed-page{gap:var(--space-5);padding-bottom:var(--space-12);flex-direction:column;display:flex}.ed-back{margin-left:calc(var(--space-3) * -1);align-self:flex-start}.ed-image{aspect-ratio:16/9;object-fit:cover;background-color:var(--paper-2);border-radius:var(--radius-lg);width:100%}.ed-header{gap:var(--space-3);flex-direction:column;display:flex}.ed-top{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ed-title{font-size:var(--text-2xl);line-height:var(--lh-2xl)}.ed-type,.ed-going,.ed-hosting{align-items:center;gap:var(--space-1);padding:calc(var(--space-1) / 2) var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);line-height:var(--lh-xs);white-space:nowrap;border:1px solid #0000;font-weight:500;display:inline-flex}.ed-type--social{background-color:var(--primary-soft);color:var(--primary)}.ed-type--support{background-color:var(--teal-soft);color:var(--teal)}.ed-type--party{background-color:var(--amber-soft);border-color:var(--amber);color:var(--ink)}.ed-type--activism{background-color:var(--paper-2);border-color:var(--line-strong);color:var(--ink)}.ed-type--workshop{background-color:var(--paper);border-color:var(--line-strong);color:var(--ink-2)}.ed-type--other{background-color:var(--paper-2);border-color:var(--line);color:var(--ink-2)}.ed-going{background-color:var(--teal-soft);color:var(--teal);font-weight:600}.ed-hosting{background-color:var(--primary-soft);color:var(--primary);font-weight:600}.ed-meta{gap:var(--space-2);flex-direction:column;list-style:none;display:flex}.ed-meta-row{align-items:flex-start;gap:var(--space-2);font-size:var(--text-base);line-height:var(--lh-sm);color:var(--ink-2);display:flex}.ed-meta-row svg{margin-top:var(--space-1);flex-shrink:0}.ed-signals{gap:var(--space-2);flex-wrap:wrap;list-style:none;display:flex}.ed-signal{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);background-color:var(--paper-2);border-radius:var(--radius-full);font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2);font-weight:500;display:inline-flex}.ed-signal svg{flex-shrink:0}.ed-description{max-width:68ch}.ed-notes{gap:var(--space-4);padding:var(--space-4);background-color:var(--paper-2);border-radius:var(--radius-lg);flex-direction:column;display:flex}.ed-note dt{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink);font-weight:600}.ed-note dd{font-size:var(--text-base);line-height:var(--lh-base);color:var(--ink-2);white-space:pre-line}.ed-tags{gap:var(--space-1) var(--space-2);flex-wrap:wrap;list-style:none;display:flex}.ed-tag{padding:0 var(--space-2);border:1px solid var(--line);border-radius:var(--radius-full);font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ink-2)}.ed-section-title{font-size:var(--text-md);line-height:var(--lh-md)}.ed-location{gap:var(--space-2);padding:var(--space-4);background-color:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius-lg);flex-direction:column;display:flex}.ed-location-text{font-family:var(--font-serif);font-size:var(--text-md);line-height:var(--lh-md);color:var(--ink);white-space:pre-line}.ed-location--hidden{align-items:center;gap:var(--space-3);background-color:var(--paper-2);color:var(--ink-2);border-color:#0000;flex-direction:row}.ed-location--hidden svg{flex-shrink:0}.ed-rsvp{gap:var(--space-2);flex-direction:column;display:flex}.ed-rsvp .btn{width:100%}.ed-attendees{gap:var(--space-3);flex-direction:column;display:flex}.ed-attendee-list{border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;list-style:none;display:flex}.ed-attendee{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding:var(--space-3) var(--space-4);color:var(--ink);display:flex}.ed-attendee+.ed-attendee{border-top:1px solid var(--line)}.ed-pronouns{font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ink-2)}.ed-empty{align-items:center;gap:var(--space-5);padding:var(--space-9) var(--space-5);background-color:var(--paper-2);border-radius:var(--radius-lg);text-align:center;flex-direction:column;display:flex}.ed-empty-text{max-width:32ch;font-family:var(--font-serif);font-size:var(--text-lg);line-height:var(--lh-lg);color:var(--ink)}@media (width>=40rem){.ed-title{font-size:var(--text-3xl);line-height:var(--lh-3xl)}.ed-rsvp .btn{align-self:flex-start;width:auto;min-width:12rem}}.ev-page{--foil-linear:linear-gradient(115deg, #e8a0b4 0%, #f2c27b 25%, #7fc4ad 50%, #8da2e0 75%, #c98ae0 100%);isolation:isolate;width:100%;padding:var(--space-6) var(--content-padding) var(--space-12);color:var(--ink);flex-direction:column;flex:1;display:flex;position:relative}.ev-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(40rem 16rem at 50% -2rem,#5c1f2b1f,#0000 70%),radial-gradient(24rem 12rem at 88% 6rem,#c4783a1c,#0000 70%);height:24rem;position:absolute;inset:0 -100vmax auto}@media (width>=1024px){.ev-page>*{max-width:40rem}}.ev-head{justify-content:space-between;align-items:center;gap:var(--space-4);padding-block:var(--space-2) var(--space-5);display:flex}.ev-head h1{letter-spacing:-.03em;font-size:clamp(2rem,1.4rem + 3vw,3rem);font-weight:500;line-height:1.05}.ev-cancel{min-height:var(--tap-target);padding:0 var(--space-4);font-size:var(--text-sm);color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-full);transition:background-color var(--transition-fast), color var(--transition-fast);flex:none;font-weight:500}@media (hover:hover){.ev-cancel:hover{background:var(--paper-2);color:var(--ink)}}.ev-progress{padding-bottom:var(--space-4);margin-bottom:var(--space-6);position:relative}.ev-progress-label{justify-content:space-between;align-items:baseline;gap:var(--space-2);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);font-variant-numeric:tabular-nums;color:var(--ink);flex-wrap:wrap;display:flex}.ev-progress-label span{color:var(--ink-2);font-weight:500}.ev-progress:before,.ev-progress:after{content:"";border-radius:var(--radius-full);height:4px;position:absolute;bottom:0;left:0;right:0}.ev-progress:before{background:var(--line)}.ev-progress:after{background:var(--foil-linear);transform-origin:0;transform:scaleX(var(--progress,.3333));transition:transform .6s var(--ease-out)}.ev-form{gap:var(--space-6);flex-direction:column;display:flex}.ev-step-title{font-size:var(--text-xl);line-height:var(--lh-xl);letter-spacing:var(--tracking-heading)}.ev-step-title:focus{outline:none}.ev-form>:not(.ev-actions){animation:ev-in .45s var(--ease-out) both}.ev-form>:nth-child(2){animation-delay:40ms}.ev-form>:nth-child(3){animation-delay:80ms}.ev-form>:nth-child(4){animation-delay:.12s}.ev-form>:nth-child(5){animation-delay:.16s}.ev-form>:nth-child(6){animation-delay:.2s}.ev-form>:nth-child(n+7){animation-delay:.24s}@keyframes ev-in{0%{opacity:0;transform:translateY(12px)}}.ev-field,.ev-fieldset{gap:var(--space-2);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.ev-label{align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);color:var(--ink);flex-wrap:wrap;padding:0;display:flex}.ev-optional{padding:1px var(--space-2);font-size:var(--text-xs);font-weight:500;line-height:var(--lh-xs);color:var(--ink-2);background:var(--paper-2);border-radius:var(--radius-full)}.ev-hint{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2)}.ev-error{align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);font-weight:500;line-height:var(--lh-sm);color:var(--danger);display:flex}:is(.ev-field:has(.ev-error) .input,.ev-field:has(.ev-error) .textarea,.ev-field:has(.ev-error) .select){border-color:var(--danger);box-shadow:0 0 0 1px var(--danger)}.ev-textarea-short{min-height:5.5rem}.ev-pair{gap:var(--space-6);grid-template-columns:1fr;display:grid}@media (width>=480px){.ev-pair{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}}.ev-prefix{align-items:stretch;display:flex}.ev-prefix>span{min-width:var(--tap-target);color:var(--ink-2);background:var(--paper-2);border:1px solid var(--line-strong);border-radius:var(--radius-md) 0 0 var(--radius-md);border-right:0;place-items:center;font-weight:600;display:grid}.ev-prefix .input{border-radius:0 var(--radius-md) var(--radius-md) 0}.ev-seg-group{scrollbar-width:none;background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-full);gap:2px;padding:4px;display:flex;overflow-x:auto}.ev-seg-group::-webkit-scrollbar{display:none}.ev-seg{cursor:pointer;flex:1 1 0;position:relative}.ev-seg input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.ev-seg span{min-height:36px;padding:0 var(--space-3);font-size:var(--text-sm);white-space:nowrap;color:var(--ink-2);border-radius:var(--radius-full);transition:color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out);border:1px solid #0000;place-items:center;font-weight:500;line-height:1.2;display:grid}.ev-seg input:checked+span{color:var(--on-primary);background:linear-gradient(var(--primary), var(--primary)) padding-box, var(--foil-linear) border-box;font-weight:600;box-shadow:0 4px 12px -4px #5c1f2b80}.ev-seg input:focus-visible+span{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.ev-dropzone{justify-content:center;align-items:center;gap:var(--space-2);min-height:11rem;padding:var(--space-6);font-size:var(--text-sm);color:var(--primary);text-align:center;cursor:pointer;background:var(--surface);border:2px dashed var(--line-strong);border-radius:var(--radius-lg);transition:background-color var(--transition-base) var(--ease-out), border-color var(--transition-base) var(--ease-out), transform var(--transition-base) var(--ease-out);flex-direction:column;font-weight:600;display:flex}.ev-dropzone svg{box-sizing:content-box;padding:var(--space-3);background:var(--primary-soft);border-radius:var(--radius-full);transition:transform var(--transition-base) var(--ease-out)}@media (hover:hover){.ev-dropzone:hover{background:var(--primary-soft);border-color:var(--primary)}.ev-dropzone:hover svg{transform:translateY(-3px)}}:is(.ev-dropzone:has(input:focus-visible),.ev-thumb-add:has(input:focus-visible)){outline:var(--focus-ring);outline-offset:var(--focus-offset)}.ev-dropzone:has(input:disabled){opacity:.6;cursor:progress}.ev-thumbs{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;display:grid}.ev-thumb{aspect-ratio:4/5;background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-1);position:relative;overflow:hidden}.ev-thumb-open{cursor:zoom-in;width:100%;height:100%;padding:0;display:block}.ev-thumb-open img{object-fit:contain;width:100%;height:100%}.ev-thumb-badge{left:var(--space-2);bottom:var(--space-2);padding:1px var(--space-2);font-size:var(--text-xs);font-weight:600;line-height:var(--lh-xs);color:var(--on-primary);background:var(--primary);border-radius:var(--radius-full);pointer-events:none;position:absolute}.ev-thumb-remove{width:var(--tap-target);height:var(--tap-target);place-items:center;display:grid;position:absolute;top:0;right:0}.ev-thumb-x{color:#fff;border-radius:var(--radius-full);width:24px;height:24px;transition:background-color var(--transition-fast), transform var(--transition-base) var(--ease-out);background:#1a1a1fc7;place-items:center;display:grid;box-shadow:0 0 0 2px #ffffffe6}@media (hover:hover){.ev-thumb-remove:hover .ev-thumb-x{background:var(--danger);transform:scale(1.1)}}.ev-thumb-add{aspect-ratio:4/5;width:100%;color:var(--primary);cursor:pointer;background:var(--surface);border:2px dashed var(--line-strong);border-radius:var(--radius-md);transition:background-color var(--transition-base) var(--ease-out), border-color var(--transition-base) var(--ease-out);place-items:center;display:grid}@media (hover:hover){.ev-thumb-add:hover{background:var(--primary-soft);border-color:var(--primary)}}.ev-notice{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);font-size:var(--text-sm);color:var(--ink);border-radius:var(--radius-md);line-height:1.55;display:flex}.ev-notice svg{flex:none;margin-top:1px}.ev-notice--warn{background:var(--amber-soft);border:1px solid var(--amber)}.ev-notice--warn svg{color:#9a5a22}.ev-coc{gap:var(--space-3);padding:var(--space-5);background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:4px var(--radius-lg) var(--radius-lg) 4px;box-shadow:var(--shadow-1);flex-direction:column;display:flex}.ev-coc-head{align-items:center;gap:var(--space-2);color:var(--teal);display:flex}.ev-coc-head h3{font-family:var(--font-sans);font-size:var(--text-base);letter-spacing:0;color:var(--ink);font-weight:600}.ev-coc p{font-size:var(--text-sm);color:var(--ink-2);line-height:1.6}.ev-coc-check{align-items:center;gap:var(--space-3);min-height:var(--tap-target);font-size:var(--text-base);color:var(--ink);cursor:pointer;font-weight:500;display:flex}.ev-submit-error{padding:var(--space-3) var(--space-4);background:var(--danger-soft);border-radius:var(--radius-md)}.ev-actions{gap:var(--space-3);margin-top:var(--space-2);padding-top:var(--space-5);border-top:1px solid var(--line);display:flex}.ev-next{flex:1}.ev-lightbox{z-index:var(--z-modal);padding:var(--space-6) var(--space-4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:ev-fade var(--transition-base) ease both;background:#150810eb;place-items:center;display:grid;position:fixed;inset:0}@keyframes ev-fade{0%{opacity:0}}.ev-lightbox-img{object-fit:contain;border-radius:var(--radius-md);max-width:100%;max-height:86dvh;box-shadow:0 24px 64px -16px #000000b3}.ev-lightbox-close,.ev-lightbox-nav{color:#fff;border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:48px;height:48px;transition:background-color var(--transition-fast), transform var(--transition-base) var(--ease-out);background:#ffffff24;border:1px solid #ffffff40;place-items:center;display:grid;position:absolute}.ev-lightbox-close{top:var(--space-4);right:var(--space-4)}.ev-lightbox-nav{margin-top:-24px;top:50%}.ev-lightbox-prev{left:var(--space-3)}.ev-lightbox-next{right:var(--space-3)}.ev-lightbox-close:active,.ev-lightbox-nav:active{transform:scale(.94)}@media (hover:hover){.ev-lightbox-close:hover,.ev-lightbox-nav:hover{background:#ffffff42}}.ev-lightbox :focus-visible{outline-offset:2px;outline:2px solid #fff}@media (prefers-reduced-motion:reduce){.ev-form>:not(.ev-actions),.ev-lightbox{animation:none!important}}.discover-page{--foil-linear:linear-gradient(115deg, #e8a0b4 0%, #f2c27b 25%, #7fc4ad 50%, #8da2e0 75%, #c98ae0 100%);isolation:isolate;width:100%;padding:var(--space-6) var(--content-padding) var(--space-12);color:var(--ink);flex-direction:column;flex:1;display:flex;position:relative}.discover-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(42rem 20rem at 50% -3rem,#5c1f2b21,#0000 70%),radial-gradient(28rem 16rem at 90% 9rem,#c4783a1f,#0000 70%),radial-gradient(24rem 14rem at 8% 14rem,#2f6b5e17,#0000 70%);height:30rem;position:absolute;inset:0 -100vmax auto}.discover-page>h1,.discover-header h1{letter-spacing:-.035em;font-size:clamp(3rem,1.8rem + 6vw,5.5rem);font-weight:500;line-height:.96}.discover-header{gap:var(--space-3);padding-block:var(--space-4) var(--space-7);flex-direction:column;display:flex}.discover-subtitle{max-width:var(--measure-lede);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.55}.discover-filters{top:calc(var(--header-height) + var(--space-2));z-index:var(--z-raised);margin-bottom:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);-webkit-backdrop-filter:blur(16px)saturate(1.5);backdrop-filter:blur(16px)saturate(1.5);background:#fffc;position:sticky}.discover-filters-toggle{align-items:center;gap:var(--space-2);width:100%;min-height:52px;padding:0 var(--space-5);font-size:var(--text-base);color:var(--ink);text-align:left;border-radius:var(--radius-lg);-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast);font-weight:600;display:flex}.discover-filters-toggle svg{color:var(--primary)}.discover-filters.is-open .discover-filters-toggle{border-bottom:1px solid var(--line);border-radius:var(--radius-lg) var(--radius-lg) 0 0}@media (hover:hover){.discover-filters-toggle:hover{background:var(--paper)}}.discover-filters-toggle:focus-visible{outline:var(--focus-ring);outline-offset:-2px}.discover-filters-body{max-height:min(60dvh,32rem);padding:var(--space-2) var(--space-5) var(--space-3);overscroll-behavior:contain;animation:dc-open .28s var(--ease-out) both;flex-direction:column;gap:0;display:flex;overflow-y:auto}@keyframes dc-open{0%{opacity:0;transform:translateY(-6px)}}.discover-filter-group{gap:var(--space-2);padding-block:var(--space-4);flex-direction:column;display:flex}.discover-filter-group+.discover-filter-group{border-top:1px solid var(--line)}.discover-filter-label{font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);color:var(--ink)}.discover-clear-filters{align-items:center;gap:var(--space-2);min-height:var(--tap-target);margin-block:var(--space-3) var(--space-1);padding:0 var(--space-4);font-size:var(--text-sm);color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-full);-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), color var(--transition-fast);align-self:flex-start;font-weight:600;display:inline-flex}@media (hover:hover){.discover-clear-filters:hover{background:color-mix(in srgb, var(--primary) 18%, var(--surface));color:var(--primary-hover)}}.discover-clear-filters:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.discover-page .chip-group{gap:var(--space-2);flex-wrap:wrap;display:flex}.discover-page .chip{min-height:40px;padding:0 var(--space-4);font-size:var(--text-sm);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-full);-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), transform var(--transition-base) var(--ease-out), box-shadow var(--transition-base) var(--ease-out);font-weight:500}.discover-page .chip:active{transform:scale(.95)}@media (hover:hover){.discover-page .chip:not(.selected):hover{background:var(--primary-soft);border-color:var(--primary)}}.discover-page .chip.selected{color:var(--on-primary);background:linear-gradient(var(--primary), var(--primary)) padding-box, var(--foil-linear) border-box;border-color:#0000;font-weight:600;box-shadow:0 4px 12px -4px #5c1f2b80}.discover-page .chip:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.discover-filters .input{border-radius:var(--radius-md);min-height:48px;font-size:1rem}.discover-filter-hint{padding:var(--space-2) 0;font-size:var(--text-sm);color:var(--ink-2);margin:0;line-height:1.5}.discover-error{margin-bottom:var(--space-5);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--ink);background:var(--danger-soft);border:1px solid var(--danger);border-radius:var(--radius-md);border-left-width:4px;font-weight:500;line-height:1.5}.discover-count{align-self:flex-start;align-items:center;gap:var(--space-2);margin-bottom:var(--space-5);padding:var(--space-1) var(--space-3);font-size:var(--text-sm);line-height:var(--lh-sm);font-variant-numeric:tabular-nums;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-full);display:inline-flex}.discover-count:before{content:"";background:var(--teal);border-radius:var(--radius-full);width:8px;height:8px;box-shadow:0 0 0 3px var(--teal-soft)}.discover-empty{align-items:center;gap:var(--space-4);max-width:30rem;margin:var(--space-6) auto;padding:var(--space-9) var(--space-6);text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);flex-direction:column;display:flex}.discover-empty--soft{border-style:dashed;border-color:var(--line-strong);box-shadow:none}.discover-empty svg{flex:none}.discover-empty h1{font-size:var(--text-3xl);letter-spacing:-.02em}.discover-empty h2{font-size:var(--text-xl);line-height:var(--lh-xl);letter-spacing:var(--tracking-heading)}.discover-empty p{max-width:44ch;font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.55}.discover-gate-checklist{gap:var(--space-2);text-align:left;flex-direction:column;width:100%;padding:0;list-style:none;display:flex}.discover-gate-checklist li{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);transition:background-color var(--transition-base), border-color var(--transition-base);line-height:1.5;display:flex}.discover-gate-checklist li svg{box-sizing:content-box;color:var(--ink-3);background:var(--surface);border:1.5px solid var(--line-strong);border-radius:var(--radius-full);transition:background-color var(--transition-base) var(--ease-out), border-color var(--transition-base) var(--ease-out), color var(--transition-base), transform var(--transition-base) var(--ease-out);flex:none;margin-top:1px;padding:2px}.discover-gate-checklist li.is-done{background:var(--teal-soft);border-color:#0000}.discover-gate-checklist li.is-done svg{color:var(--on-primary);background:var(--teal);border-color:var(--teal);transform:scale(1.04)}.discover-section-title{align-items:center;gap:var(--space-3);margin:var(--space-8) 0 var(--space-4);padding-top:var(--space-1);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);letter-spacing:.02em;text-transform:uppercase;color:var(--ink-2);display:flex;position:relative}.discover-section-title:before{content:"";background:var(--foil-linear);border-radius:var(--radius-full);flex:none;width:2rem;height:2px}.discover-section-title:first-child{margin-top:0}.discover-elsewhere .dc-card{opacity:.88;transition:opacity var(--transition-base) var(--ease-out), border-color var(--transition-base) var(--ease-out), box-shadow var(--transition-base) var(--ease-out), transform var(--transition-base) var(--ease-out)}.discover-elsewhere .dc-card:focus-within{opacity:1}@media (hover:hover){.discover-elsewhere .dc-card:hover{opacity:1}}.discover-grid{gap:var(--space-5);grid-template-columns:1fr;display:grid}@media (width>=640px){.discover-grid{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.discover-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.dc-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);transition:border-color var(--transition-base) var(--ease-out), box-shadow var(--transition-base) var(--ease-out), transform var(--transition-base) var(--ease-out), opacity var(--transition-base) var(--ease-out);flex-direction:column;display:flex;position:relative;overflow:hidden}.dc-card:before{content:"";z-index:2;background:var(--foil-linear);opacity:0;height:2px;transition:opacity var(--transition-base);pointer-events:none;position:absolute;inset:0 0 auto}@media (hover:hover){.dc-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-lift);transform:translateY(-3px)}.dc-card:hover:before{opacity:1}}.dc-card-image{aspect-ratio:4/5;object-fit:cover;object-position:50% 22%;background:var(--paper-2);width:100%;display:block}.dc-card-image-wrap{position:relative}.dc-card-image-wrap:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #1a1a1f0f}.dc-card-image-wrap:before{content:"";pointer-events:none;background:linear-gradient(to bottom, transparent 0%, color-mix(in srgb, var(--surface) 55%, transparent) 60%, var(--surface) 100%);height:40%;position:absolute;inset:auto 0 0}.dc-card-body{gap:var(--space-3);padding:var(--space-5);flex-direction:column;flex:1;display:flex}.dc-header{gap:var(--space-1);flex-direction:column;display:flex}.dc-name-row{align-items:baseline;gap:var(--space-2);display:flex}.dc-name{font-family:var(--font-serif);font-size:var(--text-lg);font-weight:500;line-height:var(--lh-lg);letter-spacing:var(--tracking-heading);overflow-wrap:anywhere;color:var(--ink)}.dc-age{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink-2);font-weight:500}.dc-verified{color:var(--teal);flex:none;align-self:center;place-items:center;display:inline-grid}.dc-meta{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2);flex-wrap:wrap;align-items:center;display:flex}.dc-location{align-items:center;gap:var(--space-1);display:inline-flex}.dc-location svg{color:var(--primary)}.dc-intentions,.dc-interests{gap:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.dc-intention{align-items:center;gap:var(--space-1);padding:2px var(--space-3);font-size:var(--text-xs);font-weight:600;line-height:var(--lh-xs);color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-full);display:inline-flex}.dc-intention:before{content:"";background:var(--tone-plum);border-radius:50%;width:5px;height:5px}.dc-interest{padding:2px var(--space-3);font-size:var(--text-xs);font-weight:500;line-height:var(--lh-xs);color:var(--ink-2);background:var(--paper-2);border-radius:var(--radius-full)}.dc-bio{font-family:var(--font-serif);font-size:var(--text-sm);color:var(--ink-2);white-space:pre-line;overflow-wrap:anywhere;line-height:1.6}.dc-languages{align-items:center;gap:var(--space-1) var(--space-2);font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ink-2);flex-wrap:wrap;display:flex}.dc-language+.dc-language:before{content:"·";margin-right:var(--space-2)}.dc-actions{gap:var(--space-2);padding-top:var(--space-2);grid-template-columns:1fr 1fr;margin-top:auto;display:grid}.dc-btn{min-width:0;padding-inline:var(--space-3);font-size:var(--text-sm);font-weight:600}.dc-btn.btn-primary{border:1px solid #0000;position:relative}@media (hover:hover){.dc-btn.btn-primary:hover{background:linear-gradient(var(--primary-hover), var(--primary-hover)) padding-box, var(--foil-linear) border-box}}.discover-more{margin-top:var(--space-8);justify-content:center;display:flex}@keyframes dc-fade{0%{opacity:0}}@keyframes dc-sheet{0%{opacity:0;transform:translateY(32px)}}@media (width>=640px){.connect-overlay{padding:var(--space-6);align-items:center}.connect-modal{border-radius:22px}}@media (hover:hover){.connect-close:hover{background:var(--paper-2);color:var(--ink)}}@media (hover:hover){.connect-option:hover:not(:disabled){background:var(--primary-soft);border-color:var(--primary);box-shadow:var(--shadow-lift);transform:translateY(-1px)}.connect-option:hover:not(:disabled) .connect-option-icon{color:var(--on-primary);background:var(--primary)}}.connect-option:disabled{opacity:.55;cursor:progress}.connect-modal :focus-visible,.connect-close:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}@supports (animation-timeline:view()){.discover-grid>.dc-card{animation:linear both dc-rise;animation-timeline:view();animation-range:entry entry 45%}@keyframes dc-rise{0%{opacity:0;transform:translateY(32px)scale(.97)}to{opacity:1;transform:none}}}@media (prefers-reduced-motion:reduce){.discover-grid>.dc-card,.discover-filters-body,.connect-overlay,.connect-modal{animation:none!important}.dc-card:hover,.connect-option:hover:not(:disabled){transform:none}}.dc-btn--pending{justify-content:center;align-items:center;gap:var(--space-2);display:flex;background-color:var(--amber-soft)!important;color:var(--amber-ink)!important;border:1px solid var(--amber)!important}.dc-btn--pending .dc-cancel-icon{opacity:.5;transition:opacity var(--transition-fast), transform var(--transition-fast)}.dc-btn--pending:hover:not(:disabled) .dc-cancel-icon{opacity:1;color:var(--danger);transform:scale(1.1)}.dc-btn--pending:hover:not(:disabled){background-color:var(--amber-soft)!important}.dprof-page{--foil-linear:linear-gradient(115deg, #e8a0b4 0%, #f2c27b 25%, #7fc4ad 50%, #8da2e0 75%, #c98ae0 100%);isolation:isolate;gap:var(--space-5);width:100%;padding:var(--space-6) var(--content-padding) var(--space-9);color:var(--ink);flex-direction:column;flex:1;display:flex;position:relative}.dprof-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(42rem 20rem at 50% -3rem,#5c1f2b21,#0000 70%),radial-gradient(26rem 14rem at 90% 8rem,#c4783a1c,#0000 70%),radial-gradient(22rem 12rem at 6% 16rem,#2f6b5e17,#0000 70%);height:30rem;position:absolute;inset:0 -100vmax auto}@media (width>=1024px){.dprof-page>*{max-width:44rem}}.dprof-page .back-btn{align-self:flex-start;align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:var(--space-2) var(--space-4) var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-full);box-shadow:var(--shadow-1);transition:background-color var(--transition-fast), transform var(--transition-base) var(--ease-out);font-weight:500;display:inline-flex}.dprof-page .back-btn svg{transition:transform var(--transition-base) var(--ease-out)}.dprof-page .back-btn:active{transform:scale(.97)}@media (hover:hover){.dprof-page .back-btn:hover{background:var(--paper-2)}.dprof-page .back-btn:hover svg{transform:translate(-3px)}}.dprof-error{top:calc(var(--header-height) + var(--space-2));z-index:var(--z-raised);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--ink);background:var(--danger-soft);border:1px solid var(--danger);border-radius:var(--radius-md);box-shadow:var(--shadow-2);border-left-width:4px;font-weight:500;line-height:1.5;position:sticky}.dprof-header{gap:var(--space-5);animation:dprof-in .55s var(--ease-out) both;flex-direction:column;display:flex}@keyframes dprof-in{0%{opacity:0;transform:translateY(14px)}}.dprof-photo-slot{background:var(--paper-2);border-radius:var(--radius-lg);background:linear-gradient(var(--paper-2), var(--paper-2)) padding-box, var(--foil-linear) border-box;border:2px solid #0000;position:relative;overflow:hidden;box-shadow:0 24px 44px -24px #5c1f2b80}img.dprof-photo{object-fit:contain;width:100%;max-height:min(78dvh,40rem);display:block}.dprof-photo--empty,.dprof-photo--hidden,.dprof-photo--locked{justify-content:center;align-items:center;gap:var(--space-3);aspect-ratio:4/5;max-height:min(78dvh,40rem);padding:var(--space-6);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);text-align:center;color:var(--ink-2);flex-direction:column;display:flex}.dprof-photo--empty svg,.dprof-photo--hidden svg,.dprof-photo--locked svg{box-sizing:content-box;padding:var(--space-4);color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-full)}.dprof-photo--locked{background:radial-gradient(ellipse 80% 60% at 50% 0, #5c1f2b1a, transparent 70%), var(--paper-2);color:var(--ink)}.dprof-photo-request{min-height:var(--tap-target);padding:0 var(--space-5);font-size:var(--text-sm);color:var(--on-primary);background:var(--primary);border-radius:var(--radius-full);transition:background-color var(--transition-fast), transform var(--transition-base) var(--ease-out);font-weight:600;box-shadow:inset 0 1px #ffffff24,0 8px 18px -8px #5c1f2b8c}.dprof-photo-request:active{transform:scale(.97)}@media (hover:hover){.dprof-photo-request:hover:not(:disabled){background:var(--primary-hover)}}.dprof-photo-request:disabled{opacity:.55;cursor:progress}.dprof-photo-pending{align-items:center;gap:var(--space-1);padding:4px var(--space-3);font-size:var(--text-xs);font-weight:600;line-height:var(--lh-xs);color:var(--ink);background:var(--amber-soft);border:1px solid var(--amber);border-radius:var(--radius-full);display:inline-flex}.dprof-photo-request-error{font-size:var(--text-sm);font-weight:500;line-height:var(--lh-sm);color:var(--danger)}.dprof-identity{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.dprof-name-row{align-items:center;gap:var(--space-3);display:flex}.dprof-name{letter-spacing:-.03em;overflow-wrap:anywhere;text-wrap:balance;font-size:clamp(2.25rem,1.5rem + 3.5vw,3.5rem);font-weight:500;line-height:1.04}.dprof-age{color:var(--ink-2);font-weight:400}.dprof-verified{color:var(--teal);flex:none;place-items:center;display:inline-grid}.dprof-meta{font-size:var(--text-base);color:var(--ink-2);flex-wrap:wrap;align-items:center;line-height:1.4;display:flex}.dprof-location{align-items:center;gap:var(--space-1);display:inline-flex}.dprof-location svg{color:var(--primary)}@media (width>=640px){.dprof-header{align-items:end;gap:var(--space-6);grid-template-columns:minmax(0,16rem) minmax(0,1fr);display:grid}}.dprof-section{gap:var(--space-4);padding:var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);flex-direction:column;display:flex}@media (width>=640px){.dprof-section{padding:var(--space-6)}}.dprof-section-title{align-items:center;gap:var(--space-2);font-size:var(--text-lg);line-height:var(--lh-lg);letter-spacing:var(--tracking-heading);display:flex}.dprof-section-icon{color:var(--primary);place-items:center;display:inline-grid}.dprof-subsection{gap:var(--space-2);flex-direction:column;display:flex}.dprof-subsection+.dprof-subsection{margin-top:var(--space-2)}.dprof-subtitle{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;line-height:var(--lh-sm);letter-spacing:0;color:var(--ink-2)}.dprof-pills{gap:var(--space-2);flex-wrap:wrap;display:flex}.dprof-pill{padding:4px var(--space-4);font-size:var(--text-sm);font-weight:500;line-height:var(--lh-sm);color:var(--ink);background:var(--paper-2);border-radius:var(--radius-full)}.dprof-pill--primary{color:var(--primary);background:var(--primary-soft);font-weight:600}.dprof-pill--outlined{border:1px solid var(--line-strong);background:0 0}.dprof-bio,.dprof-freetext{max-width:62ch;font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink);white-space:pre-line;overflow-wrap:anywhere;line-height:1.7}.dprof-freetext{font-size:var(--text-base);color:var(--ink-2)}.dprof-gallery{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.dprof-gallery-img{object-fit:contain;background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-md);width:100%;height:auto;max-height:28rem}@supports (animation-timeline:view()){.dprof-section{animation:linear both dprof-rise;animation-timeline:view();animation-range:entry entry 35%}@keyframes dprof-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}}.dprof-notice{align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);font-size:var(--text-sm);color:var(--ink);background:var(--primary-soft);border-radius:var(--radius-md);line-height:1.6;display:flex}.dprof-notice svg{color:var(--primary);flex:none;margin-top:2px}.dprof-actions{bottom:var(--dock-offset,var(--space-4));z-index:var(--z-raised);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(16px)saturate(1.5);backdrop-filter:blur(16px)saturate(1.5);background:#ffffffd1;flex-direction:column;display:flex;position:sticky;box-shadow:0 12px 32px -12px #1a1a1f4d}.dprof-actions .btn{width:100%}@media (width>=1024px){.dprof-actions{bottom:var(--space-4)}}.dprof-safety{gap:var(--space-2);flex-wrap:wrap;display:flex}.dprof-safety-btn{align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:0 var(--space-4);font-size:var(--text-sm);color:var(--ink-2);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-full);transition:background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);font-weight:600;display:inline-flex}@media (hover:hover){.dprof-safety-btn:hover{background:var(--paper-2);color:var(--ink)}.dprof-safety-btn--danger:hover{background:var(--danger-soft);color:var(--danger);border-color:var(--danger)}}.dprof-safety-btn--danger{color:var(--danger)}.dprof-safety-note{align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);font-size:var(--text-sm);color:var(--ink-2);background:var(--paper-2);border-radius:var(--radius-md);line-height:1.6;display:flex}.dprof-safety-note svg{color:var(--ink-2);flex:none;margin-top:3px}.dprof-not-found{align-items:center;gap:var(--space-3);max-width:30rem;margin:var(--space-6) auto;padding:var(--space-9) var(--space-6);text-align:center;background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);flex-direction:column;display:flex}.dprof-not-found h2{font-size:var(--text-xl);line-height:var(--lh-xl)}.dprof-not-found p{font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.55}.connect-overlay{z-index:var(--z-modal);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:dprof-fade var(--transition-base) ease both;background:#1508108c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@keyframes dprof-fade{0%{opacity:0}}.connect-modal{gap:var(--space-5);width:100%;max-width:28rem;max-height:90dvh;padding:var(--space-5) var(--space-5) calc(var(--space-5) + env(safe-area-inset-bottom,0px));background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-3);animation:dprof-sheet .4s var(--ease-out) both;border-radius:22px 22px 0 0;flex-direction:column;display:flex;overflow-y:auto}@keyframes dprof-sheet{0%{opacity:0;transform:translateY(32px)}}@media (width>=640px){.connect-overlay{padding:var(--space-6);align-items:center}.connect-modal{border-radius:22px}}.connect-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.connect-title{font-size:var(--text-xl);line-height:var(--lh-xl);letter-spacing:var(--tracking-heading);text-wrap:balance}.connect-close{width:var(--tap-target);height:var(--tap-target);margin:calc(var(--space-2) * -1) calc(var(--space-2) * -1) 0 0;color:var(--ink-2);border-radius:var(--radius-full);transition:background-color var(--transition-fast), color var(--transition-fast);flex:none;place-items:center;display:grid}@media (hover:hover){.connect-close:hover{background:var(--paper-2);color:var(--ink)}}.connect-options{gap:var(--space-3);flex-direction:column;display:flex}.connect-option{align-items:center;gap:var(--space-4);width:100%;min-height:72px;padding:var(--space-4);text-align:left;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);transition:background-color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-base) var(--ease-out);display:flex}.connect-option:active{transform:scale(.985)}@media (hover:hover){.connect-option:hover{background:var(--primary-soft);border-color:var(--primary)}.connect-option:hover .connect-option-icon{color:var(--on-primary);background:var(--primary)}}.connect-option-icon{width:44px;height:44px;color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-md);transition:background-color var(--transition-base) var(--ease-out), color var(--transition-base) var(--ease-out);flex:none;place-items:center;display:grid}.connect-option-text{flex-direction:column;gap:2px;min-width:0;display:flex}.connect-option-title{font-size:var(--text-base);color:var(--ink);font-weight:600;line-height:1.35}.connect-option-hint{font-size:var(--text-sm);color:var(--ink-2);line-height:1.5}.dprof-page :is(button,a):focus-visible,.connect-modal :is(button):focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}@media (prefers-reduced-motion:reduce){.dprof-header,.dprof-section,.connect-overlay,.connect-modal{animation:none!important}}.matches-page{gap:var(--space-4);padding-bottom:var(--space-6);flex-direction:column;max-width:640px;margin-inline:auto;display:flex}.matches-head{gap:var(--space-1);flex-direction:column;display:flex}.matches-head h1{font-family:var(--font-serif);font-size:var(--text-2xl);line-height:var(--lh-2xl);letter-spacing:-.01em;color:var(--ink);margin:0}.matches-subtitle{font-size:var(--text-sm);color:var(--ink-2);max-width:52ch;margin:0;line-height:1.55}.matches-connections-link{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-md);text-align:left;color:var(--ink);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast);font-family:inherit;display:flex}.matches-connections-link:hover{background:var(--primary-soft);border-color:var(--primary)}.matches-connections-link:focus-visible{outline:var(--focus-ring);outline-offset:2px}.matches-connections-link>svg:first-child{color:var(--primary);flex-shrink:0}.matches-connections-link>span{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.matches-connections-link strong{font-size:var(--text-sm);color:var(--ink);font-weight:600}.matches-connections-link small{font-size:var(--text-xs);color:var(--ink-2);line-height:1.4}.matches-connections-link>svg:last-child{color:var(--ink-3);flex-shrink:0}.matches-error{padding:var(--space-3) var(--space-4);background:var(--danger-soft);color:var(--danger);border-left:3px solid var(--danger);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500}.matches-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.match-row{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);text-align:left;color:inherit;cursor:pointer;transition:border-color var(--transition-fast), background-color var(--transition-fast);font-family:inherit;display:flex}.match-row:hover{border-color:var(--line-strong);background:var(--paper-2)}.match-row:focus-visible{outline:var(--focus-ring);outline-offset:2px}.match-avatar{background:var(--primary-soft);width:44px;height:44px;color:var(--primary);border-radius:var(--radius-full);font-family:var(--font-serif);font-size:var(--text-lg);flex-shrink:0;place-items:center;font-style:italic;font-weight:600;display:grid}.match-identity{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.match-name{font-family:var(--font-serif);font-size:var(--text-base);color:var(--ink);font-weight:600;line-height:1.3}.match-meta{font-size:var(--text-xs);color:var(--ink-2);align-items:center;line-height:1.4;display:inline-flex}.match-chat-icon{color:var(--ink-3);transition:color var(--transition-fast);flex-shrink:0}.match-row:hover .match-chat-icon{color:var(--primary)}.matches-empty{align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center;background:var(--paper);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);color:var(--ink-3);flex-direction:column;display:flex}.matches-empty h2{font-family:var(--font-serif);font-size:var(--text-lg);color:var(--ink);margin:0}.matches-empty p{font-size:var(--text-sm);color:var(--ink-2);max-width:40ch;margin:0;line-height:1.55}.matches-empty .btn{margin-top:var(--space-2);min-height:44px;padding-inline:var(--space-5)}@media (width>=640px){.match-avatar{width:48px;height:48px}}@media (prefers-reduced-motion:reduce){.matches-connections-link,.match-row,.match-chat-icon{transition:none}}.user-avatar{background:var(--primary-soft);color:var(--primary);font-family:var(--font-sans);-webkit-user-select:none;user-select:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.user-avatar-img{object-fit:cover;width:100%;height:100%}.user-avatar-initial{line-height:1}.chat-page{--chat-presence:#5e8c6a;--chat-read-blue:#5bc0f0;--chat-radius:18px;--chat-tail:5px;--chat-bubble-max:min(80%, 34rem);--chat-offset:var(--app-chrome,0px);--chat-jump-size:40px;--chat-jump-gap:var(--space-3);width:100%;max-width:var(--content-width);height:calc(100vh - var(--chat-offset));height:calc(100dvh - var(--chat-offset));background-color:var(--paper);flex-direction:column;margin:0 auto;display:flex;position:relative}.chat-menu-wrap{margin-left:auto;position:relative}.chat-more-btn{width:40px;height:40px;color:var(--ink-2);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background-color .2s;display:flex}.chat-more-btn:hover{background-color:var(--paper-2);color:var(--ink)}.chat-dropdown{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);width:180px;box-shadow:var(--shadow-3);padding:var(--space-2) 0;z-index:50;flex-direction:column;display:flex;position:absolute;top:calc(100% + 8px);right:0}.chat-dropdown button{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:none;display:flex}.chat-dropdown button:hover{background-color:var(--paper-2)}.chat-dropdown button.text-danger{color:var(--danger)}.chat-dropdown button.text-danger:hover{background-color:var(--danger-soft)}.chat-header{z-index:var(--z-sticky);align-items:center;gap:var(--space-3);min-height:var(--header-height);padding:calc(var(--space-2) + env(safe-area-inset-top,0px)) var(--content-padding) var(--space-2) var(--space-2);background-color:var(--paper);border-bottom:1px solid var(--line);flex-shrink:0;display:flex;position:sticky;top:0}.chat-back{width:var(--tap-target);height:var(--tap-target);margin-right:calc(-1 * var(--space-1));border-radius:var(--radius-full);color:var(--ink-2);-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), color var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.chat-back:active{background-color:var(--paper-2)}@media (hover:hover){.chat-back:hover{background-color:var(--paper-2);color:var(--ink)}}.chat-avatar-wrap{flex-shrink:0;width:40px;height:40px;position:relative}.chat-avatar{border-radius:var(--radius-full);background-color:var(--primary-soft);width:100%;height:100%;color:var(--primary-active);font-family:var(--font-serif);font-size:var(--text-md);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-weight:500;line-height:1;display:flex}.chat-online-dot{box-sizing:content-box;border:2.5px solid var(--paper);border-radius:var(--radius-full);background-color:var(--chat-presence);width:11px;height:11px;position:absolute;bottom:-1px;right:-1px;transform:translate(2px,2px)}.chat-header-text{flex-direction:column;min-width:0;display:flex}.chat-name{text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink);font-weight:500;line-height:1.25;overflow:hidden}.chat-status{min-height:var(--lh-xs);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ink-2);display:block;overflow:hidden}.chat-status.is-typing{color:var(--primary);font-style:italic}.chat-list{min-height:0;padding:0 var(--space-3) var(--space-4);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow-anchor:none;flex-direction:column;flex:1;display:flex;overflow-y:auto}@media (width>=640px){.chat-list{padding-inline:var(--space-5)}}.chat-older{padding:var(--space-3) 0;text-align:center;font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ink-2)}.chat-empty{padding:var(--space-9) var(--space-4);text-align:center;flex:1;justify-content:center;align-items:center;display:flex}.chat-empty p{font-family:var(--font-serif);font-size:var(--text-md);line-height:var(--lh-md);color:var(--ink-2)}.chat-day{flex-direction:column;display:flex}.chat-day-separator{z-index:var(--z-raised);padding:var(--space-3) 0 var(--space-2);pointer-events:none;justify-content:center;display:flex;position:sticky;top:0}.chat-day-separator>span{padding:var(--space-1) var(--space-3);background-color:var(--paper);border:1px solid var(--line);border-radius:var(--radius-full);box-shadow:var(--shadow-1);font-size:var(--text-xs);font-weight:500;line-height:var(--lh-xs);color:var(--ink-2);white-space:nowrap}.chat-msg{flex-direction:column;width:100%;margin-top:2px;display:flex;position:relative}.chat-msg--first-in-group{margin-top:var(--space-3)}.chat-day-separator+.chat-msg--first-in-group{margin-top:var(--space-1)}.chat-msg--mine{align-items:flex-end}.chat-msg--theirs{align-items:flex-start}.chat-bubble{max-width:var(--chat-bubble-max);padding:var(--space-2) var(--space-3);border-radius:var(--chat-radius);font-size:var(--text-base);-webkit-touch-callout:none;transition:opacity var(--transition-base);border:1px solid #0000;line-height:1.45;display:flow-root}.chat-msg--mine .chat-bubble{background-color:var(--primary);border-color:var(--primary);color:var(--on-primary)}.chat-msg--theirs .chat-bubble{border-color:var(--line);color:var(--ink);background-color:#fff}.chat-msg--mine.chat-msg--first-in-group .chat-bubble{border-top-right-radius:var(--chat-tail)}.chat-msg--theirs.chat-msg--first-in-group .chat-bubble{border-top-left-radius:var(--chat-tail)}.chat-text{white-space:pre-wrap;overflow-wrap:anywhere}.chat-bubble .chat-link,.chat-bubble .chat-link:visited{color:inherit;text-underline-offset:.2em;text-decoration:underline;text-decoration-thickness:1px}@media (hover:hover){.chat-bubble .chat-link:hover{color:inherit;text-decoration-thickness:2px}}.chat-text--deleted{font-style:italic}.chat-bubble:has(.chat-text--deleted){border:1px dashed var(--line-strong);color:var(--ink-2);background-color:#0000}.chat-msg--pending .chat-bubble{opacity:.72}.chat-msg--failed .chat-bubble{background-color:var(--danger-soft);border-color:var(--danger);color:var(--ink)}.chat-meta{float:right;margin:5px 0 -4px var(--space-3);font-size:var(--text-xs);line-height:var(--lh-xs);font-variant-numeric:tabular-nums;white-space:nowrap;-webkit-user-select:none;user-select:none;align-items:center;gap:3px;display:inline-flex}.chat-msg--mine .chat-meta{color:#fbfaf8b8}:is(.chat-msg--theirs .chat-meta,.chat-msg--failed .chat-meta,.chat-bubble:has(.chat-text--deleted) .chat-meta){color:var(--ink-2)}.chat-tick{align-items:center;display:inline-flex}.chat-tick--sending,.chat-tick--sent{color:#fbfaf8b8}.chat-tick--read{color:var(--chat-read-blue)}.chat-tick--failed{color:var(--danger)}.chat-failed{justify-content:flex-end;align-items:center;gap:var(--space-1) var(--space-3);margin-top:var(--space-1);font-size:var(--text-xs);line-height:var(--lh-xs);flex-wrap:wrap;display:flex}.chat-failed-text{align-items:center;gap:var(--space-1);color:var(--danger);font-weight:500;display:inline-flex}.chat-failed-btn{align-items:center;gap:var(--space-1);min-height:var(--tap-target);margin-block:calc(-1 * var(--space-3));padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--primary);font-size:var(--text-xs);-webkit-tap-highlight-color:transparent;font-weight:600;display:inline-flex}@media (hover:hover){.chat-failed-btn:hover{background-color:var(--primary-soft)}}.chat-menu-backdrop{z-index:var(--z-overlay);background:0 0;position:fixed;inset:0}.chat-menu{z-index:calc(var(--z-overlay) + 1);min-width:12rem;margin-top:var(--space-1);padding:var(--space-1);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-2);background-color:#fff;flex-direction:column;animation:.12s ease-out chat-menu-in;display:flex;position:absolute;top:100%}.chat-menu--mine{transform-origin:100% 0;right:0}.chat-menu--theirs{transform-origin:0 0;left:0}.chat-menu button{align-items:center;gap:var(--space-3);min-height:var(--tap-target);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--ink);font-size:var(--text-sm);line-height:var(--lh-sm);text-align:left;-webkit-tap-highlight-color:transparent;display:flex}.chat-menu button:active{background-color:var(--paper-2)}@media (hover:hover){.chat-menu button:hover{background-color:var(--paper-2)}}.chat-menu .text-danger{color:var(--danger)}@keyframes chat-menu-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.chat-typing{margin-top:var(--space-3);padding:13px var(--space-3);border:1px solid var(--line);border-radius:var(--chat-radius);border-top-left-radius:var(--chat-tail);background-color:#fff;align-self:flex-start;align-items:center;gap:4px;display:inline-flex}.chat-typing>span{border-radius:var(--radius-full);background-color:var(--ink-3);width:6px;height:6px;animation:1.3s ease-in-out infinite chat-typing-bounce}.chat-typing>span:nth-child(2){animation-delay:.16s}.chat-typing>span:nth-child(3){animation-delay:.32s}@keyframes chat-typing-bounce{0%,60%,to{opacity:.55;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.chat-jump{z-index:var(--z-raised);width:var(--chat-jump-size);height:var(--chat-jump-size);margin:calc(-1 * (var(--chat-jump-size) + var(--chat-jump-gap))) var(--space-4) var(--chat-jump-gap) 0;border:1px solid var(--line);border-radius:var(--radius-full);box-shadow:var(--shadow-2);color:var(--ink-2);-webkit-tap-highlight-color:transparent;animation:chat-jump-in var(--transition-base);background-color:#fff;flex-shrink:0;justify-content:center;align-self:flex-end;align-items:center;display:flex;position:relative}.chat-jump:active{background-color:var(--paper-2)}@media (hover:hover){.chat-jump:hover{background-color:var(--paper-2);color:var(--ink)}}.chat-jump-count{min-width:1.25rem;height:1.25rem;padding:0 var(--space-1);border-radius:var(--radius-full);background-color:var(--primary);color:var(--on-primary);font-size:var(--text-xs);text-align:center;font-variant-numeric:tabular-nums;font-weight:600;line-height:1.25rem;position:absolute;top:-8px;right:-4px}@keyframes chat-jump-in{0%{opacity:0}to{opacity:1}}.chat-composer{align-items:flex-end;gap:var(--space-2);padding:var(--space-2) max(var(--space-3), env(safe-area-inset-right,0px)) calc(var(--space-2) + env(safe-area-inset-bottom,0px)) max(var(--space-3), env(safe-area-inset-left,0px));background-color:var(--paper);border-top:1px solid var(--line);flex-shrink:0;display:flex}.chat-input{min-width:0;min-height:var(--tap-target);max-height:140px;padding:10px var(--space-4);background-color:var(--paper-2);color:var(--ink);font-size:var(--text-base);border:1px solid var(--line);resize:none;transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:22px;flex:1;line-height:1.4;overflow-y:auto}.chat-input:focus,.chat-input:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);background-color:#fff;outline:none}.chat-count{font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ink-2);font-variant-numeric:tabular-nums;flex-shrink:0;align-self:flex-end;padding-bottom:12px}.chat-send{width:var(--tap-target);height:var(--tap-target);border-radius:var(--radius-full);background-color:var(--primary);color:var(--on-primary);-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), opacity var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.chat-send:active{background-color:var(--primary-active)}@media (hover:hover){.chat-send:hover:not(:disabled){background-color:var(--primary-hover)}}.chat-send:disabled{opacity:.4;cursor:not-allowed}.chat-error{padding:var(--space-11) var(--space-4);text-align:center;font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2)}.cn-page{gap:var(--space-4);padding-bottom:var(--space-8);flex-direction:column;max-width:640px;margin-inline:auto;display:flex}.cn-head{gap:var(--space-1);flex-direction:column;display:flex}.cn-head .back-btn{color:var(--ink-2);font-family:inherit;font-size:var(--text-sm);cursor:pointer;margin-bottom:var(--space-2);transition:color var(--transition-fast);background:0 0;border:none;align-self:flex-start;align-items:center;gap:6px;padding:0;font-weight:500;display:inline-flex}.cn-head .back-btn:hover{color:var(--ink)}.cn-head h1{font-family:var(--font-serif);font-size:var(--text-2xl);line-height:var(--lh-2xl);letter-spacing:-.01em;color:var(--ink);margin:0}.cn-subtitle{font-size:var(--text-sm);color:var(--ink-2);max-width:52ch;margin:0;line-height:1.55}.cn-error{padding:var(--space-3) var(--space-4);background:var(--danger-soft);color:var(--danger);border-left:3px solid var(--danger);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500}.cn-tabs{gap:var(--space-1);padding:var(--space-1);background:var(--paper-2);border-radius:var(--radius-md);display:flex}.cn-tab{justify-content:center;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-2);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);color:var(--ink-2);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);white-space:nowrap;background:0 0;border:none;flex:1;font-weight:500;display:inline-flex}.cn-tab:hover{color:var(--ink)}.cn-tab.is-active{background:var(--paper);color:var(--ink);box-shadow:var(--shadow-1);font-weight:600}.cn-tab:focus-visible{outline:var(--focus-ring);outline-offset:-2px}.cn-tab-count{background:var(--primary);min-width:20px;height:20px;color:var(--on-primary);border-radius:var(--radius-full);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.cn-tab:not(.is-active) .cn-tab-count{background:var(--ink-3)}.cn-list{gap:var(--space-2);flex-direction:column;display:flex}.cn-card{gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);transition:border-color var(--transition-fast);flex-direction:column;display:flex}.cn-card:hover{border-color:var(--line-strong)}.cn-card-main{align-items:center;gap:var(--space-3);display:flex}.cn-avatar{background:var(--primary-soft);width:44px;height:44px;color:var(--primary);border-radius:var(--radius-full);font-family:var(--font-serif);font-size:var(--text-lg);flex-shrink:0;place-items:center;font-style:italic;font-weight:600;display:grid}.cn-identity{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.cn-name{font-family:var(--font-serif);font-size:var(--text-base);color:var(--ink);font-weight:600;line-height:1.3}.cn-age{color:var(--ink-2);font-weight:400}.cn-meta{font-size:var(--text-xs);color:var(--ink-2);align-items:center;gap:2px;line-height:1.4;display:flex}.cn-meta svg{color:var(--ink-3);flex-shrink:0}.cn-actions{gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--line);display:flex}.cn-action-btn{min-height:36px;padding:0 var(--space-3);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);justify-content:center;align-items:center;gap:5px;font-weight:500;display:inline-flex}.cn-action-btn:disabled{opacity:.55;cursor:not-allowed}.cn-action-primary{background:var(--primary);color:var(--on-primary);border:1px solid var(--primary)}.cn-action-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.cn-action-ghost{color:var(--ink-2);border:1px solid var(--line-strong);background:0 0}.cn-action-ghost:hover{color:var(--ink);border-color:var(--ink-3);background:var(--paper-2)}.cn-action-danger{color:var(--danger);border:1px solid var(--line-strong);background:0 0}.cn-action-danger:hover{border-color:var(--danger);background:var(--danger-soft)}.cn-action-btn:focus-visible{outline:var(--focus-ring);outline-offset:2px}.cn-actions .cn-action-btn:not(.cn-action-ghost){flex:1}.cn-empty{align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center;background:var(--paper);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);color:var(--ink-3);flex-direction:column;display:flex}.cn-empty h2{font-family:var(--font-serif);font-size:var(--text-lg);color:var(--ink);margin:0}.cn-empty p{font-size:var(--text-sm);color:var(--ink-2);max-width:40ch;margin:0;line-height:1.55}.cn-empty .btn{margin-top:var(--space-2);min-height:44px;padding-inline:var(--space-5)}@media (width>=640px){.cn-avatar{width:48px;height:48px}}@media (prefers-reduced-motion:reduce){.cn-head .back-btn,.cn-tab,.cn-card,.cn-action-btn{transition:none}}.req-page{gap:var(--space-4);padding-bottom:var(--space-8);flex-direction:column;max-width:640px;margin-inline:auto;display:flex}.req-head{gap:var(--space-1);flex-direction:column;display:flex}.back-btn{color:var(--ink-2);font-family:inherit;font-size:var(--text-sm);cursor:pointer;margin-bottom:var(--space-2);transition:color var(--transition-fast);background:0 0;border:none;align-self:flex-start;align-items:center;gap:6px;padding:0;font-weight:500;display:inline-flex}.back-btn:hover{color:var(--ink)}.req-head h1{font-family:var(--font-serif);font-size:var(--text-2xl);line-height:var(--lh-2xl);letter-spacing:-.01em;color:var(--ink);margin:0}.req-subtitle{font-size:var(--text-sm);color:var(--ink-2);max-width:52ch;margin:0;line-height:1.55}.req-error{padding:var(--space-3) var(--space-4);background:var(--danger-soft);color:var(--danger);border-left:3px solid var(--danger);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500}.req-tabs{gap:var(--space-1);padding:var(--space-1);background:var(--paper-2);border-radius:var(--radius-md);display:flex}.req-tab{justify-content:center;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-3);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);color:var(--ink-2);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:none;flex:1;font-weight:500;display:inline-flex}.req-tab:hover{color:var(--ink)}.req-tab.is-active{background:var(--paper);color:var(--ink);box-shadow:var(--shadow-1);font-weight:600}.req-tab:focus-visible{outline:var(--focus-ring);outline-offset:-2px}.req-tab-count{background:var(--primary);min-width:20px;height:20px;color:var(--on-primary);border-radius:var(--radius-full);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.req-tab:not(.is-active) .req-tab-count{background:var(--ink-3)}.req-list{gap:var(--space-3);flex-direction:column;display:flex}.req-card{gap:var(--space-3);padding:var(--space-4);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);transition:border-color var(--transition-fast);flex-direction:column;display:flex}.req-card:hover{border-color:var(--line-strong)}.req-card-header{align-items:center;gap:var(--space-3);display:flex}.req-avatar{background:var(--paper-2);width:44px;height:44px;color:var(--ink-3);border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.req-avatar-img{object-fit:cover;width:100%;height:100%}.req-identity{flex-direction:column;gap:2px;min-width:0;display:flex}.req-name{font-family:var(--font-serif);font-size:var(--text-base);color:var(--ink);font-weight:600}.req-meta{font-size:var(--text-xs);color:var(--ink-2);align-items:center;gap:4px;display:inline-flex}.req-actions{gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--line);display:flex}.req-actions--single{justify-content:flex-end}.req-btn{min-height:40px;font-size:var(--text-sm);flex:1;gap:6px}.req-btn:disabled{opacity:.6;cursor:not-allowed}.req-revoke{padding:var(--space-2) var(--space-3);border:1px solid var(--line-strong);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-xs);color:var(--ink-2);cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast), background-color var(--transition-fast);background:0 0;font-weight:500}.req-revoke:hover{color:var(--danger);border-color:var(--danger);background:var(--danger-soft)}.req-revoke:focus-visible{outline:var(--focus-ring);outline-offset:2px}.req-empty{align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center;background:var(--paper);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);color:var(--ink-3);flex-direction:column;display:flex}.req-empty h2{font-family:var(--font-serif);font-size:var(--text-lg);color:var(--ink);margin:0}.req-empty p{font-size:var(--text-sm);color:var(--ink-2);max-width:40ch;margin:0;line-height:1.55}.req-note{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);background:var(--amber-soft,#f8ecdf);border:1px solid var(--amber,#c4783a);border-radius:var(--radius-md);display:flex}.req-note svg{color:var(--ink-2);flex-shrink:0;margin-top:2px}.req-note p{font-size:var(--text-xs);color:var(--ink);margin:0;line-height:1.55}@media (prefers-reduced-motion:reduce){.back-btn,.req-tab,.req-card,.req-revoke{transition:none}}.notif-page{gap:var(--space-4);padding-bottom:var(--space-8);flex-direction:column;max-width:640px;margin-inline:auto;display:flex}.notif-head{gap:var(--space-1);flex-direction:column;display:flex}.notif-head .back-btn{color:var(--ink-2);font-family:inherit;font-size:var(--text-sm);cursor:pointer;margin-bottom:var(--space-2);transition:color var(--transition-fast);background:0 0;border:none;align-self:flex-start;align-items:center;gap:6px;padding:0;font-weight:500;display:inline-flex}.notif-head .back-btn:hover{color:var(--ink)}.notif-head h1{font-family:var(--font-serif);font-size:var(--text-2xl);line-height:var(--lh-2xl);letter-spacing:-.01em;color:var(--ink);margin:0}.notif-subtitle{font-size:var(--text-sm);color:var(--ink-2);max-width:52ch;margin:0;line-height:1.55}.notif-error{padding:var(--space-3) var(--space-4);background:var(--danger-soft);color:var(--danger);border-left:3px solid var(--danger);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500}.notif-section{gap:var(--space-2);flex-direction:column;display:flex}.notif-section-head{justify-content:space-between;align-items:center;gap:var(--space-2);padding:0 var(--space-1);display:flex}.notif-section-title{font-family:var(--font-sans);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);align-items:center;gap:6px;margin:0;font-weight:600;display:inline-flex}.notif-section-title svg{color:var(--ink-3)}.notif-section-count{background:var(--primary);min-width:18px;height:18px;color:var(--on-primary);border-radius:var(--radius-full);font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:0;justify-content:center;align-items:center;padding:0 6px;font-size:10px;font-weight:700;display:inline-flex}.notif-section-count--soft{background:var(--teal,#2f6b5e)}.notif-section-link{border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-xs);color:var(--primary);cursor:pointer;transition:background-color var(--transition-fast);background:0 0;border:none;align-items:center;gap:3px;padding:4px 8px;font-weight:500;display:inline-flex}.notif-section-link:hover{background:var(--primary-soft)}.notif-section-link:focus-visible{outline:var(--focus-ring);outline-offset:2px}.notif-list{gap:var(--space-2);flex-direction:column;display:flex}.notif-card{gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);transition:border-color var(--transition-fast);flex-direction:column;display:flex}.notif-card:hover{border-color:var(--line-strong)}.notif-card--info{background:var(--paper-2);border-style:dashed}.notif-card-main{align-items:flex-start;gap:var(--space-3);display:flex}.notif-avatar{background:var(--primary-soft);width:40px;height:40px;color:var(--primary);border-radius:var(--radius-full);font-family:var(--font-serif);font-size:var(--text-base);flex-shrink:0;place-items:center;font-style:italic;font-weight:600;display:grid}.notif-avatar--amber{background:var(--amber-soft,#f8ecdf);color:var(--amber,#c4783a)}.notif-avatar--success{color:var(--teal,#2f6b5e);background:#e6efec}.notif-identity{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.notif-title{font-size:var(--text-sm);color:var(--ink);line-height:1.4}.notif-title strong{font-weight:600}.notif-meta{font-size:var(--text-xs);color:var(--ink-2);align-items:center;gap:2px;display:inline-flex}.notif-meta svg{color:var(--ink-3);flex-shrink:0}.notif-actions{gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--line);display:flex}.notif-card--info .notif-actions{border-top-color:#0000;padding-top:0}.notif-btn{min-height:36px;padding:0 var(--space-3);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;gap:5px;font-weight:500;display:inline-flex}.notif-btn:disabled{opacity:.55;cursor:not-allowed}.notif-btn-primary{background:var(--primary);color:var(--on-primary);border:1px solid var(--primary);flex:1}.notif-btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.notif-btn-ghost{color:var(--ink-2);border:1px solid var(--line-strong);background:0 0}.notif-btn-ghost:hover{color:var(--ink);border-color:var(--ink-3);background:var(--paper-2)}.notif-btn:focus-visible{outline:var(--focus-ring);outline-offset:2px}.notif-empty{align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center;background:var(--paper);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);color:var(--ink-3);flex-direction:column;display:flex}.notif-empty h2{font-family:var(--font-serif);font-size:var(--text-lg);color:var(--ink);margin:0}.notif-empty p{font-size:var(--text-sm);color:var(--ink-2);max-width:40ch;margin:0;line-height:1.55}.notif-empty .btn{margin-top:var(--space-2);min-height:44px;padding-inline:var(--space-5)}@media (width>=640px){.notif-avatar{width:44px;height:44px}}@media (prefers-reduced-motion:reduce){.notif-head .back-btn,.notif-section-link,.notif-card,.notif-btn{transition:none}}.notif-card--clickable{cursor:pointer;text-align:left;width:100%;font-family:inherit;transition:background-color .15s,border-color .15s}.notif-card--clickable:hover{background-color:var(--paper-2);border-color:var(--line-strong)}.notif-avatar-wrap{flex-shrink:0;display:flex;position:relative}.notif-badge{color:#fff;border:2px solid var(--surface);border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;display:flex;position:absolute;bottom:-2px;right:-2px}.notif-badge--heart{background-color:var(--primary)}.notif-badge--comment{background-color:var(--teal)}.notif-preview{font-size:var(--text-sm);color:var(--ink-2);-webkit-line-clamp:1;-webkit-box-orient:vertical;margin:4px 0 0;font-style:italic;display:-webkit-box;overflow:hidden}.adv-page{gap:var(--space-5);max-width:600px;padding:var(--space-4) var(--content-padding,1.25rem) var(--space-7);flex-direction:column;margin-inline:auto;display:flex}.adv-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.adv-back{min-height:var(--tap-target);color:var(--ink-2);border-radius:var(--radius-full);transition:background-color var(--transition-fast), color var(--transition-fast);align-self:flex-start;align-items:center;gap:6px;margin-left:-.5rem;padding:0 .85rem 0 .6rem;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-flex}.adv-back:visited{color:var(--ink-2)}@media (hover:hover){.adv-back:hover{color:var(--primary);background-color:var(--primary-soft)}}.adv-back:focus-visible,.adv-contact:focus-visible,.adv-donate:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.adv-head{align-items:center;gap:var(--space-3);display:flex}.adv-head-icon{width:48px;height:48px;color:var(--primary);border-radius:var(--radius-md);background:linear-gradient(var(--primary-soft), var(--primary-soft)) padding-box, var(--foil-linear) border-box;border:2px solid #0000;flex:none;place-items:center;display:grid}.adv-head h1{font-family:var(--font-serif);letter-spacing:-.01em;text-wrap:balance;margin:0;font-size:clamp(1.6rem,1.3rem + 1.4vw,2rem);font-weight:600;line-height:1.1}.adv-intro{color:var(--ink-2);text-wrap:pretty;margin:0;font-size:.95rem;line-height:1.65}.adv-card{padding:var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:20px;position:relative;overflow:hidden;box-shadow:0 1px 2px #1a1a1f0a,0 18px 36px -28px #1a1a1f4d}.adv-card h2{font-family:var(--font-serif);letter-spacing:-.005em;margin:0;font-size:1.25rem;font-weight:600;line-height:1.2}.adv-card--ads:before{content:"";background:var(--foil-linear);opacity:.8;height:2px;position:absolute;inset:0 0 auto}.adv-pill{margin-bottom:var(--space-3);color:#7a4a14;font-size:var(--text-xs);background:var(--amber-soft);border-radius:var(--radius-full);align-items:center;gap:6px;padding:4px 10px;font-weight:600;line-height:1.2;display:inline-flex}.adv-pill-dot{background:var(--amber);border-radius:50%;width:6px;height:6px}.adv-muted{margin:var(--space-2) 0 0;color:var(--ink-2);text-wrap:pretty;font-size:.9rem;line-height:1.6}.adv-muted--sm{font-size:.85rem}.adv-divider{height:1px;margin:var(--space-5) 0 var(--space-4);background:var(--line);border:0}.adv-subheading{font-family:var(--font-sans);letter-spacing:0;color:var(--ink);margin:0;font-size:.95rem;font-weight:600;line-height:1.3}.adv-contacts{gap:var(--space-2);margin:var(--space-4) 0 0;padding:0;list-style:none;display:grid}.adv-contact{--tone:var(--primary);--tone-bg:var(--primary-soft);align-items:center;gap:var(--space-3);min-height:68px;padding:var(--space-3) var(--space-4) var(--space-3) var(--space-3);color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);-webkit-tap-highlight-color:transparent;transition:border-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out), transform var(--transition-base) var(--ease-out);text-decoration:none;display:flex}.adv-contact:visited{color:var(--ink)}.adv-contact--whatsapp{--tone:var(--teal);--tone-bg:var(--teal-soft)}.adv-contact-icon{width:40px;height:40px;color:var(--tone);background:var(--tone-bg);border-radius:var(--radius-sm);flex:none;place-items:center;display:grid}.adv-contact-text{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.adv-contact-label{color:var(--ink-2);font-size:var(--text-xs);font-weight:500;line-height:1.2}.adv-contact-number{letter-spacing:.02em;font-variant-numeric:tabular-nums;font-size:1.0625rem;font-weight:600;line-height:1.2}.adv-contact-arrow{color:var(--ink-3,var(--ink-2));transition:transform var(--transition-base) var(--ease-out);flex:none}.adv-contact:active{transform:scale(.985)}@media (hover:hover){.adv-contact:hover{border-color:var(--tone);box-shadow:var(--shadow-lift);transform:translateY(-1px)}.adv-contact:hover .adv-contact-arrow{transform:translate(3px)}}.adv-card--donate{background:var(--primary-soft);border-color:color-mix(in srgb, var(--primary) 35%, transparent);box-shadow:0 18px 36px -28px color-mix(in srgb, var(--primary) 60%, transparent)}.adv-donate-head{margin-bottom:var(--space-2);color:var(--primary);align-items:center;gap:10px;display:flex}.adv-card--donate h2{color:var(--primary)}.adv-donate-intro{margin:0 0 var(--space-4);color:var(--ink);text-wrap:pretty;font-size:.9rem;line-height:1.6}.adv-reasons{gap:var(--space-3);margin:0 0 var(--space-5);flex-direction:column;padding:0;list-style:none;display:flex}.adv-reason{align-items:flex-start;gap:10px;display:flex}.adv-reason-icon{width:32px;height:32px;color:var(--primary);border-radius:var(--radius-sm);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--primary) 18%, transparent);background:#ffffffb3;flex:none;place-items:center;display:grid}.adv-reason-title{margin:0;font-size:.9rem;font-weight:600;line-height:1.35}.adv-reason-text{color:var(--ink-2);margin:2px 0 0;font-size:.85rem;line-height:1.5}.adv-donate{width:100%;min-height:52px;color:var(--on-primary);background:var(--primary);border-radius:var(--radius-md);box-shadow:inset 0 1px 0 #ffffff2e, 0 10px 22px -10px color-mix(in srgb, var(--primary) 75%, transparent);-webkit-tap-highlight-color:transparent;transition:transform var(--transition-base) var(--ease-out), box-shadow var(--transition-base) var(--ease-out);justify-content:center;align-items:center;gap:8px;padding:14px 20px;font-size:.95rem;font-weight:600;text-decoration:none;display:flex}.adv-donate:visited{color:var(--on-primary)}.adv-donate:active{transform:scale(.985)}.adv-donate-arrow{transition:transform var(--transition-base) var(--ease-out)}@media (hover:hover){.adv-donate:hover{box-shadow:inset 0 1px 0 #ffffff2e, 0 14px 28px -10px color-mix(in srgb, var(--primary) 85%, transparent);transform:translateY(-1px)}.adv-donate:hover .adv-donate-arrow{transform:translate(3px)}}.adv-note{color:var(--ink-3,var(--ink-2));text-align:center;text-wrap:balance;margin:0;font-size:.8rem;line-height:1.6}.adv-note--inside{margin-top:var(--space-3);color:var(--ink-2);font-size:.75rem}@keyframes adv-rise{0%{opacity:0;transform:translateY(10px)}}.adv-page>*{animation:adv-rise .45s var(--ease-out) both}.adv-page>:nth-child(3){animation-delay:60ms}.adv-page>:nth-child(4){animation-delay:.12s}.adv-page>:nth-child(5){animation-delay:.18s}@media (prefers-reduced-motion:reduce){.adv-page>*{animation:none}}.msg-page{--msg-presence:#5e8c6a;--msg-card-bg:#fff;--msg-row-hover:var(--paper);--msg-unread-bg:#faf4f5;--msg-unread-hover:#f6edef;--msg-avatar-size:44px;--msg-row-gap:var(--space-3);--msg-row-pad-x:var(--space-4);width:100%;max-width:var(--content-width);padding:var(--space-2) var(--space-2) var(--space-4);margin:0 auto}.msg-head{margin-bottom:var(--space-5)}.msg-subtitle{margin-top:var(--space-1);font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2)}.msg-search{margin-bottom:var(--space-3);align-items:center;display:flex;position:relative}.msg-search>svg{left:var(--space-4);color:var(--ink-3);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.msg-search-input{width:100%;min-height:var(--tap-target);padding:var(--space-2) var(--space-4) var(--space-2) calc(var(--space-4) + 16px + var(--space-2));background-color:var(--paper-2);color:var(--ink);font-size:var(--text-base);border-radius:var(--radius-full);appearance:none;transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);border:1px solid #0000;line-height:1.4}.msg-search-input::-webkit-search-cancel-button{appearance:none}.msg-search-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);background-color:#fff}.msg-tabs{gap:var(--space-2);margin-bottom:var(--space-4);display:flex}.msg-tab{align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:var(--space-1) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-full);color:var(--ink-2);font-size:var(--text-sm);-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);background-color:#0000;font-weight:500;line-height:1.2;display:inline-flex}.msg-tab.is-active{background-color:var(--primary-soft);color:var(--primary);border-color:#0000}.msg-tab-count{min-width:1.25rem;padding:0 var(--space-2);border-radius:var(--radius-full);background-color:var(--paper-2);color:var(--ink-2);font-size:var(--text-xs);text-align:center;font-variant-numeric:tabular-nums;font-weight:500;line-height:1.25rem}.msg-tab.is-active .msg-tab-count{background-color:var(--primary);color:var(--on-primary)}@media (hover:hover){.msg-tab:not(.is-active):hover{background-color:var(--paper-2);color:var(--ink)}}.msg-list{background-color:var(--msg-card-bg);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);list-style:none;overflow:hidden}.msg-list>li{position:relative}.msg-list>li+li:before{content:"";top:0;right:0;left:calc(var(--msg-row-pad-x) + var(--msg-avatar-size) + var(--msg-row-gap));background-color:var(--line);pointer-events:none;height:1px;position:absolute}.msg-row{--row-bg:var(--msg-card-bg);align-items:center;gap:var(--msg-row-gap);width:100%;min-height:calc(var(--tap-target) + var(--space-5));padding:var(--space-3) var(--msg-row-pad-x);background-color:var(--row-bg);color:inherit;text-align:left;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast);display:flex}.msg-row--unread{--row-bg:var(--msg-unread-bg)}.msg-row:active{--row-bg:var(--paper-2)}.msg-row--unread:active{--row-bg:var(--msg-unread-hover)}@media (hover:hover){.msg-row:hover{--row-bg:var(--msg-row-hover)}.msg-row--unread:hover{--row-bg:var(--msg-unread-hover)}}.msg-row:focus-visible{outline-offset:-2px}.msg-avatar-wrap{width:var(--msg-avatar-size);height:var(--msg-avatar-size);flex-shrink:0;position:relative}.msg-avatar{border-radius:var(--radius-full);background-color:var(--primary-soft);width:100%;height:100%;color:var(--primary-active);font-family:var(--font-serif);font-size:var(--text-lg);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-weight:500;line-height:1;display:flex}.msg-online-dot{border-radius:var(--radius-full);background-color:var(--msg-presence);border:2.5px solid var(--row-bg);box-sizing:content-box;width:12px;height:12px;position:absolute;bottom:-1px;right:-1px;transform:translate(2px,2px)}.msg-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.msg-body-top,.msg-body-bottom{justify-content:space-between;align-items:baseline;gap:var(--space-3);min-width:0;display:flex}.msg-body-bottom{align-items:center}.msg-name{align-items:baseline;gap:var(--space-2);min-width:0;display:flex}.msg-name-text{text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink);font-weight:500;line-height:1.3;overflow:hidden}.msg-row--unread .msg-name-text{font-weight:700}.msg-lastseen,.msg-time{font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ink-2);font-variant-numeric:tabular-nums;flex-shrink:0}.msg-row--unread .msg-time{color:var(--primary);font-weight:500}.msg-preview{align-items:center;gap:var(--space-2);flex:1;min-width:0;display:flex}.msg-kind-icon{color:var(--ink-3);flex-shrink:0;display:inline-flex}.msg-preview-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ink-2);overflow:hidden}.msg-row--unread .msg-preview-text{color:var(--ink)}.msg-unread-badge{min-width:1.25rem;height:1.25rem;padding:0 var(--space-2);border-radius:var(--radius-full);background-color:var(--primary);color:var(--on-primary);font-size:var(--text-xs);text-align:center;font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:600;line-height:1.25rem}.msg-unread-badge--muted{background-color:var(--ink-2)}.msg-load-more{margin:var(--space-5) auto 0;display:flex}.msg-empty{align-items:center;gap:var(--space-2);padding:var(--space-11) var(--space-4);text-align:center;flex-direction:column;display:flex}.msg-empty>svg{color:var(--ink-3);margin-bottom:var(--space-2)}.msg-empty h2{font-size:var(--text-lg)}.msg-empty p{max-width:32ch;font-size:var(--text-sm);line-height:var(--lh-sm)}.msg-empty .btn{margin-top:var(--space-4)}.msg-empty--error>svg{color:var(--danger)}@media (width>=1024px){.msg-page{--msg-avatar-size:48px;--msg-row-pad-x:var(--space-5);padding-top:var(--space-7)}.msg-row{padding-block:var(--space-4)}}.support-page{--sp-max:68rem;min-height:100dvh;padding:max(var(--space-5), env(safe-area-inset-top)) var(--content-padding) max(var(--space-9,4rem), env(safe-area-inset-bottom));color:var(--ink);background:var(--paper);position:relative}.support-page>:not(.support-sr){max-width:var(--sp-max);margin-inline:auto}.support-page h1,.support-page h2,.support-page h3{letter-spacing:-.02em;text-wrap:balance;margin:0;font-weight:500}.support-page p{margin:0}.support-page ul{margin:0;padding:0;list-style:none}.support-sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.support-page [id]{scroll-margin-top:var(--space-5)}.back-btn{align-items:center;gap:var(--space-2);min-height:var(--tap-target);margin-left:calc(var(--space-3) * -1);padding:0 var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink-2);border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color var(--transition-fast), background-color var(--transition-fast);background:0 0;border:0;font-weight:500;display:inline-flex}.back-btn:active{background:var(--paper-2)}@media (hover:hover){.back-btn:hover{color:var(--ink);background:var(--paper-2)}}.back-btn:focus-visible,.hero-cta:focus-visible,.hero-link:focus-visible,.copy-btn:focus-visible,.bank-card__button:focus-visible,.bank-card__ghost:focus-visible,.way:focus-visible,.btn:focus-visible,.faq-item summary:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.support-hero{padding-block:var(--space-7) var(--space-8);text-align:center;flex-direction:column;align-items:center;display:flex}.support-hero__icon{width:4rem;height:4rem;margin-bottom:var(--space-5);color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 8px color-mix(in srgb, var(--primary-soft) 45%, transparent);border-radius:50%;place-items:center;display:grid}.support-hero h1{letter-spacing:-.035em;font-size:clamp(2.25rem,1.6rem + 3vw,3.5rem);line-height:1.05}.support-hero__lead{max-width:36rem;margin-top:var(--space-4);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.6}.support-hero__actions{justify-content:center;align-items:center;gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.hero-cta{justify-content:center;align-items:center;gap:var(--space-2);min-height:52px;padding-inline:var(--space-6);font-family:var(--font-sans);font-size:var(--text-base);color:var(--on-primary);background:var(--primary);border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), transform var(--transition-fast) var(--ease-out);border:0;font-weight:600;display:inline-flex;box-shadow:0 12px 24px -14px #5c1f2bb3,inset 0 1px #ffffff24}.hero-cta:active{background:var(--primary-active);transform:scale(.985)}@media (hover:hover){.hero-cta:hover{background:var(--primary-hover)}}.hero-link{min-height:var(--tap-target);padding:0 var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--primary);border-radius:var(--radius-md);text-underline-offset:3px;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;font-weight:600;text-decoration:underline}.support-hero__pills{justify-content:center;gap:var(--space-2);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.support-hero__pills li{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:600;line-height:var(--lh-xs);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-full);display:inline-flex}.support-hero__pills svg{color:var(--teal)}.support-layout{gap:var(--space-7);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=1024px){.support-layout{column-gap:var(--space-9,4rem);row-gap:var(--space-8);grid-template-columns:minmax(0,1fr) 26rem;align-items:start}.support-layout>.support-block{grid-column:1}.support-layout>.support-donate{top:var(--space-5);grid-area:1/2/span 5;position:sticky}}.support-block{min-width:0}.support-block h2{font-size:clamp(1.5rem,1.25rem + 1vw,1.875rem);line-height:1.15}.support-block>p{max-width:62ch;margin-top:var(--space-3);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);line-height:1.65}.support-callout{margin:var(--space-5) 0 0;padding:var(--space-4) var(--space-5);background:var(--primary-soft);border-left:3px solid var(--primary);border-radius:var(--radius-md)}.support-callout p{font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink);font-weight:500;line-height:1.4}.support-page .support-block>.support-closing{margin-top:var(--space-5);color:var(--ink)}.support-donate{min-width:0}.bank-card{padding:var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;display:flex;box-shadow:0 30px 60px -36px #5c1f2b73,0 2px 6px #1a1a1f0a}@media (width>=640px){.bank-card{padding:var(--space-6)}}.bank-card h2{font-size:var(--text-xl,1.5rem);line-height:1.15}.bank-card__sub{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--ink-2);line-height:1.5}.bank-list{margin:var(--space-5) 0 0;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow:hidden}.bank-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);display:flex}.bank-row+.bank-row{border-top:1px solid var(--line)}.bank-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.bank-label{font-size:var(--text-xs);font-weight:500;line-height:var(--lh-xs);color:var(--ink-2)}.bank-label label{cursor:pointer}.bank-value{font-size:var(--text-base);color:var(--ink);overflow-wrap:anywhere;margin:0;font-weight:600;line-height:1.3}.bank-value--lg{letter-spacing:.04em;font-variant-numeric:tabular-nums;font-size:1.25rem}.reference-input{width:100%;min-height:40px;padding:0 var(--space-3);font-family:var(--font-sans);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out);outline:2px solid #0000;margin:2px 0 0;font-size:1rem;font-weight:600}.reference-input:focus{border-color:var(--primary);box-shadow:var(--focus-halo)}.copy-btn{width:var(--tap-target);height:var(--tap-target);color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast);flex:none;place-items:center;display:grid}.copy-btn:active{background:var(--paper-2)}@media (hover:hover){.copy-btn:hover{color:var(--ink);border-color:var(--line-strong)}}.copy-btn.is-copied{color:var(--on-primary);background:var(--teal);border-color:var(--teal)}.copy-btn.is-failed{color:var(--danger);background:var(--danger-soft);border-color:var(--danger)}.bank-help{margin-top:var(--space-3);font-size:var(--text-xs);color:var(--ink-2);line-height:1.5}.bank-card__button,.bank-card__ghost{justify-content:center;align-items:center;gap:var(--space-2);width:100%;font-family:var(--font-sans);font-size:var(--text-base);border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast) var(--ease-out);line-height:1.2;display:inline-flex}.bank-card__button{min-height:52px;margin-top:var(--space-5);padding-inline:var(--space-5);color:var(--on-primary);background:var(--primary);border:0;font-weight:600;box-shadow:0 12px 24px -14px #5c1f2bb3,inset 0 1px #ffffff24}.bank-card__button:active{background:var(--primary-active);transform:scale(.985)}@media (hover:hover){.bank-card__button:hover{background:var(--primary-hover)}}.bank-card__button.is-copied{background:var(--teal)}.bank-card__button.is-failed{background:var(--danger)}.bank-card__ghost{min-height:48px;margin-top:var(--space-3);padding-inline:var(--space-5);color:var(--ink);border:1px solid var(--line-strong);background:0 0;font-weight:500}.bank-card__ghost:active{background:var(--paper-2)}@media (hover:hover){.bank-card__ghost:hover{background:var(--paper-2);border-color:var(--ink-3)}}.bank-safety{align-items:flex-start;gap:var(--space-2);margin-top:var(--space-4);padding:var(--space-3) var(--space-4);font-size:var(--text-xs);color:var(--ink);background:var(--amber-soft);border-radius:var(--radius-md);line-height:1.5;display:flex}.bank-safety svg{color:var(--amber);flex:none;margin-top:1px}.bank-note{margin-top:var(--space-4);font-size:var(--text-xs);text-align:center;color:var(--ink-2);line-height:1.5}.thanks{margin-top:var(--space-5);text-align:center;flex-direction:column;align-items:center;display:flex}.thanks__icon{width:3.5rem;height:3.5rem;margin-bottom:var(--space-3);color:var(--primary);background:var(--primary-soft);animation:sp-pop .5s var(--ease-out) both;border-radius:50%;place-items:center;display:grid}.thanks h3{font-family:var(--font-serif);outline:none;font-size:1.5rem}.thanks p{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--ink-2);line-height:1.6}.thanks__actions{width:100%;margin-top:var(--space-2);flex-direction:column;display:flex}@keyframes sp-pop{0%{opacity:0;transform:scale(.6)}}.costs{gap:var(--space-3);margin-top:var(--space-5);display:grid}.cost{align-items:flex-start;gap:var(--space-4);padding:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);display:flex}.cost__icon{width:2.5rem;height:2.5rem;color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-md);flex:none;place-items:center;display:grid}.cost h3{font-size:var(--text-base);letter-spacing:0;font-weight:600}.cost p{font-size:var(--text-sm);color:var(--ink-2);margin-top:2px;line-height:1.55}.ways{gap:var(--space-3);margin-top:var(--space-5);display:grid}@media (width>=640px){.ways{grid-template-columns:1fr 1fr}}.way{align-items:center;gap:var(--space-4);width:100%;min-height:72px;padding:var(--space-4);font-family:var(--font-sans);text-align:left;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color var(--transition-fast), background-color var(--transition-fast);display:flex}.way:active{background:var(--paper-2)}@media (hover:hover){.way:hover{border-color:var(--line-strong);background:var(--paper)}}.way__icon{width:2.5rem;height:2.5rem;color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-md);transition:background-color var(--transition-fast), color var(--transition-fast);flex:none;place-items:center;display:grid}.way.is-copied .way__icon{color:var(--on-primary);background:var(--teal)}.way.is-failed .way__icon{color:var(--danger);background:var(--danger-soft)}.way__text{flex-direction:column;gap:2px;min-width:0;display:flex}.way__title{font-size:var(--text-base);font-weight:600;line-height:1.25}.way__sub{font-size:var(--text-sm);color:var(--ink-2);line-height:1.4}.faq{margin-top:var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;display:flex;overflow:hidden}.faq-item+.faq-item{border-top:1px solid var(--line)}.faq-item summary{justify-content:space-between;align-items:center;gap:var(--space-4);min-height:56px;padding:var(--space-3) var(--space-4);font-size:var(--text-base);color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;font-weight:600;line-height:1.35;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary svg{color:var(--ink-2);transition:transform var(--transition-base) var(--ease-out);flex:none}.faq-item[open] summary svg{transform:rotate(180deg)}@media (hover:hover){.faq-item summary:hover{background:var(--paper)}}.support-page .faq-item p{padding:0 var(--space-4) var(--space-4);font-size:var(--text-sm);color:var(--ink-2);line-height:1.65}.request-form{gap:var(--space-3);margin-top:var(--space-5);flex-direction:column;display:flex}.request-error{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--ink);background:var(--danger-soft);border-left:3px solid var(--danger);border-radius:var(--radius-md);line-height:1.5}.request-input-wrap{position:relative}.request-icon{top:var(--space-4);left:var(--space-4);color:var(--ink-3);pointer-events:none;position:absolute}.support-page .textarea{width:100%;min-height:120px;padding:var(--space-4) var(--space-4) var(--space-4) calc(var(--space-4) + 20px + var(--space-3));font-family:var(--font-sans);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);resize:vertical;transition:border-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out);outline:2px solid #0000;font-size:1rem;line-height:1.55;display:block}.support-page .textarea::placeholder{color:var(--ink-3)}.support-page .textarea:focus{border-color:var(--primary);box-shadow:var(--focus-halo)}.request-actions{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.request-meta{align-items:center;gap:var(--space-3);font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ink-2);display:flex}.request-count{font-variant-numeric:tabular-nums}.request-count.is-near{color:var(--danger);font-weight:600}.request-hint{display:none}@media (hover:hover) and (pointer:fine){.request-hint{display:inline}}.support-page .btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:48px;padding-inline:var(--space-5);font-family:var(--font-sans);font-size:var(--text-base);border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast) var(--ease-out);font-weight:600;line-height:1.2;display:inline-flex}.support-page .btn-primary{color:var(--on-primary);background:var(--primary);border:0}.support-page .btn-primary:active:not(:disabled){background:var(--primary-active);transform:scale(.985)}@media (hover:hover){.support-page .btn-primary:hover:not(:disabled){background:var(--primary-hover)}}.support-page .btn-secondary{color:var(--ink);background:var(--surface);border:1px solid var(--line-strong)}.support-page .btn-secondary:active{background:var(--paper-2)}@media (hover:hover){.support-page .btn-secondary:hover{border-color:var(--ink-3)}}.support-page .btn:disabled{opacity:.55;cursor:not-allowed}.request-success{margin-top:var(--space-5);padding:var(--space-6) var(--space-5);text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;align-items:center;display:flex}.request-success__icon{width:3.5rem;height:3.5rem;margin-bottom:var(--space-3);color:var(--on-primary);background:var(--teal);animation:sp-pop .5s var(--ease-out) both;border-radius:50%;place-items:center;display:grid}.request-success h3{font-family:var(--font-serif);outline:none;font-size:1.5rem}.support-page .request-success p{max-width:34ch;margin-top:var(--space-2);margin-bottom:var(--space-5);font-size:var(--text-sm);color:var(--ink-2);line-height:1.6}@media (width<=359px){.bank-card{padding:var(--space-4)}.bank-row{padding-left:var(--space-3)}.bank-value--lg{font-size:1.125rem}}@media (prefers-reduced-motion:reduce){.thanks__icon,.request-success__icon{animation:none}.hero-cta:active,.bank-card__button:active,.support-page .btn-primary:active:not(:disabled){transform:none}.faq-item summary svg{transition:none}}.admin{--ad-sidebar-w:16.5rem;--ad-topbar-h:3.5rem;--ad-content-w:80rem;--ad-gutter:var(--content-padding);--ad-bg:var(--paper);--ad-surface:var(--surface);--ad-surface-2:var(--paper-2);--ad-line:var(--line);--ad-line-strong:var(--line-strong);--ad-text:var(--ink);--ad-text-2:var(--ink-2);--ad-text-3:var(--ink-3);--ad-side-bg:#1a1a1f;--ad-side-glow:#7a3b5261;--ad-side-text:#fbfaf8b8;--ad-side-text-strong:#fff;--ad-side-muted:#fbfaf873;--ad-side-line:#ffffff17;--ad-side-hover:#ffffff0f;--ad-side-active:#ffffff1c;--ad-foil:#e8a0b4, #f2c27b, #7fc4ad, #8da2e0, #c98ae0;min-height:100dvh;color:var(--ad-text);background:var(--ad-bg);grid-template-columns:minmax(0,1fr);display:grid;position:relative}@media (width>=1024px){.admin{grid-template-columns:var(--ad-sidebar-w) minmax(0, 1fr);--ad-gutter:var(--space-8)}}.admin *,.admin :before,.admin :after{box-sizing:border-box}.admin :focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.admin h1,.admin h2,.admin h3{color:var(--ad-text)}.admin ::selection{background:var(--primary-soft)}.admin-sidebar,.admin-scroll{scrollbar-width:thin;scrollbar-color:var(--ad-line-strong) transparent}.admin-sidebar{z-index:calc(var(--z-sticky,100) + 10);gap:var(--space-5);width:min(var(--ad-sidebar-w), 86vw);padding:max(var(--space-5), env(safe-area-inset-top)) var(--space-4) max(var(--space-4), env(safe-area-inset-bottom));overscroll-behavior:contain;color:var(--ad-side-text);background:radial-gradient(ellipse 22rem 16rem at 0 0, var(--ad-side-glow), transparent 70%), radial-gradient(ellipse 16rem 12rem at 100% 100%, #2f6b5e38, transparent 70%), var(--ad-side-bg);transition:transform .35s var(--ease-out);flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto;transform:translate(-100%)}.admin[data-nav-open=true] .admin-sidebar{transform:none;box-shadow:24px 0 60px -20px #00000080}@media (width>=1024px){.admin-sidebar{z-index:auto;width:auto;height:100dvh;padding-block:var(--space-5) var(--space-4);transition:none;position:sticky;top:0;transform:none}.admin[data-nav-open=true] .admin-sidebar{box-shadow:none}}.admin-sidebar:after{content:"";pointer-events:none;background:linear-gradient(#0000,#c98ae080,#7fc4ad80,#0000);width:1px;position:absolute;inset:0 0 0 auto}.admin-brand{align-items:center;gap:var(--space-3);padding:var(--space-1) var(--space-2);display:flex}.admin-brand-logo{width:auto;height:2rem;display:block}.admin-brand-tag{padding:2px var(--space-3);letter-spacing:.08em;text-transform:uppercase;color:var(--ad-side-text-strong);border:1px solid var(--ad-side-line);border-radius:var(--radius-full);background:#ffffff1a;font-size:.6875rem;font-weight:600;line-height:1.5}.admin-nav{flex-direction:column;flex:1;gap:2px;display:flex}.admin-nav-label{margin:var(--space-5) var(--space-3) var(--space-2);letter-spacing:.1em;text-transform:uppercase;color:var(--ad-side-muted);font-size:.6875rem;font-weight:600;line-height:1.4}.admin-nav-label:first-child{margin-top:var(--space-2)}.admin-nav-link{align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--ad-side-text);border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), color var(--transition-fast);font-weight:500;line-height:1.3;text-decoration:none;display:flex;position:relative}.admin-nav-link:visited{color:var(--ad-side-text)}.admin-nav-link svg{color:var(--ad-side-muted);transition:color var(--transition-fast);flex:none}.admin-nav-link>span:first-of-type{flex:1;min-width:0}.admin-nav-link:active{background:var(--ad-side-active)}@media (hover:hover){.admin-nav-link:hover{color:var(--ad-side-text-strong);background:var(--ad-side-hover)}.admin-nav-link:hover svg{color:var(--ad-side-text)}}.admin-nav-link.is-active,.admin-nav-link[aria-current=page],.admin-nav-link.is-active:visited{color:var(--ad-side-text-strong);background:var(--ad-side-active)}.admin-nav-link.is-active svg,.admin-nav-link[aria-current=page] svg{color:#fff}.admin-nav-link.is-active:before,.admin-nav-link[aria-current=page]:before{content:"";top:10px;bottom:10px;left:calc(var(--space-4) * -1);border-radius:0 var(--radius-full) var(--radius-full) 0;background:linear-gradient(#e8a0b4,#c98ae0,#8da2e0);width:3px;position:absolute}.admin-nav-link:focus-visible{outline-offset:-2px;outline:2px solid #ffffffd9}.admin-nav-count{min-width:1.5rem;padding:1px var(--space-2);text-align:center;font-variant-numeric:tabular-nums;color:#fff;background:var(--primary);border-radius:var(--radius-full);flex:none;font-size:.6875rem;font-weight:600;line-height:1.5}.admin-sidebar-foot{padding-top:var(--space-4);font-size:var(--text-sm);color:var(--ad-side-text);border-top:1px solid var(--ad-side-line);line-height:1.45}.admin-scrim{z-index:calc(var(--z-sticky,100) + 5);pointer-events:none;opacity:0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1a1a1f8c;transition:opacity .3s;position:fixed;inset:0}.admin[data-nav-open=true] .admin-scrim{pointer-events:auto;opacity:1}@media (width>=1024px){.admin-scrim{display:none}}.admin-main{flex-direction:column;min-width:0;min-height:100dvh;display:flex}.admin-topbar{z-index:var(--z-raised);align-items:center;gap:var(--space-3);min-height:var(--ad-topbar-h);padding:max(var(--space-2), env(safe-area-inset-top)) var(--ad-gutter) var(--space-2);background:color-mix(in srgb, var(--ad-bg) 84%, transparent);border-bottom:1px solid var(--ad-line);-webkit-backdrop-filter:blur(14px)saturate(1.3);backdrop-filter:blur(14px)saturate(1.3);display:flex;position:sticky;top:0}.admin-menu-btn{width:var(--tap-target);height:var(--tap-target);margin-left:calc(var(--space-2) * -1);color:var(--ad-text);border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast);flex:none;place-items:center;display:grid}.admin-menu-btn:active{background:var(--ad-surface-2)}@media (hover:hover){.admin-menu-btn:hover{background:var(--ad-surface-2)}}@media (width>=1024px){.admin-menu-btn{display:none}}.admin-topbar-title{min-width:0;font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;line-height:1.3;overflow:hidden}.admin-topbar-actions{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.admin-content{gap:var(--space-6);width:100%;max-width:var(--ad-content-w);padding:var(--space-6) var(--ad-gutter) var(--space-12);animation:admin-rise .5s var(--ease-out) both;flex-direction:column;flex:1;margin-inline:auto;display:flex}@keyframes admin-rise{0%{opacity:0;transform:translateY(10px)}}.admin-page-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4) var(--space-6);flex-wrap:wrap;display:flex}.admin-page-head-copy{min-width:0;max-width:46rem}.admin-page-head h1{letter-spacing:-.03em;font-size:clamp(1.75rem,1.3rem + 1.8vw,2.5rem);font-weight:500;line-height:1.08}.admin-page-head p{margin-top:var(--space-2);font-size:var(--text-base);color:var(--ad-text-2);line-height:1.55}.admin-page-head-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-stack{gap:var(--gap,var(--space-4));flex-direction:column;display:flex}.admin-cluster{align-items:center;gap:var(--gap,var(--space-3));flex-wrap:wrap;display:flex}.admin-grid{grid-template-columns:repeat(auto-fit, minmax(min(100%, var(--min,17rem)), 1fr));gap:var(--gap,var(--space-4));display:grid}.admin-split{gap:var(--space-5);align-items:start;display:grid}@media (width>=1024px){.admin-split{grid-template-columns:minmax(0,1fr) 22rem}}.admin-card{background:var(--ad-surface);border:1px solid var(--ad-line);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-1)}.admin-card-head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--ad-line);flex-wrap:wrap;display:flex}.admin-card-head h2,.admin-card-head h3{font-family:var(--font-sans);font-size:var(--text-base);letter-spacing:0;font-weight:600;line-height:1.3}.admin-card-head p{font-size:var(--text-sm);color:var(--ad-text-2);line-height:1.45}.admin-card-body{padding:var(--space-5)}.admin-card-foot{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--ad-surface-2);border-top:1px solid var(--ad-line);border-radius:0 0 calc(var(--radius-lg) - 1px) calc(var(--radius-lg) - 1px);flex-wrap:wrap;display:flex}.admin-card--flat{box-shadow:none}.admin-card--accent{border-color:color-mix(in srgb, var(--primary) 30%, var(--ad-line));box-shadow:0 0 0 3px var(--primary-soft), var(--shadow-1)}.admin-card--link{color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color var(--transition-base) var(--ease-out), box-shadow .3s var(--ease-out), transform .3s var(--ease-out);text-decoration:none;display:block}@media (hover:hover){.admin-card--link:hover{border-color:var(--ad-line-strong);box-shadow:var(--shadow-lift);transform:translateY(-2px)}}.admin-toolbar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.admin-toolbar-spacer{flex:1}.admin-btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);white-space:nowrap;color:var(--ad-text);background:var(--ad-surface);border:1px solid var(--ad-line-strong);border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), transform var(--transition-fast) var(--ease-out);font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.admin-btn svg{flex:none}.admin-btn:visited{color:var(--ad-text)}.admin-btn:active:not(:disabled){background:var(--ad-surface-2);transform:scale(.98)}@media (hover:hover){.admin-btn:hover:not(:disabled){background:var(--ad-surface-2);border-color:var(--ad-text-3)}}.admin-btn:disabled{cursor:not-allowed;opacity:.5}.admin-btn--primary,.admin-btn--primary:visited{color:var(--on-primary);background:var(--primary);border-color:var(--primary);box-shadow:inset 0 1px #ffffff24}.admin-btn--primary:active:not(:disabled){background:var(--primary-active);border-color:var(--primary-active)}@media (hover:hover){.admin-btn--primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}}.admin-btn--ghost{background:0 0;border-color:#0000}.admin-btn--danger,.admin-btn--danger:visited{color:#fff;background:var(--danger);border-color:var(--danger)}.admin-btn--danger:active:not(:disabled){background:var(--danger-hover);border-color:var(--danger-hover)}@media (hover:hover){.admin-btn--danger:hover:not(:disabled){background:var(--danger-hover);border-color:var(--danger-hover)}}.admin-btn--sm{min-height:32px;padding:0 var(--space-3);font-size:var(--text-xs)}.admin-btn--icon{width:40px;padding:0}.admin-btn--icon.admin-btn--sm{width:32px}.admin-badge{padding:2px var(--space-3);font-size:var(--text-xs);font-weight:600;line-height:var(--lh-xs);white-space:nowrap;color:var(--ad-text);background:var(--ad-surface-2);border-radius:var(--radius-full);align-items:center;gap:6px;display:inline-flex}.admin-badge:before{content:"";background:var(--ad-text-3);border-radius:50%;flex:none;width:6px;height:6px}.admin-badge--success{background:var(--teal-soft)}.admin-badge--success:before{background:var(--teal)}.admin-badge--warning{background:var(--amber-soft)}.admin-badge--warning:before{background:var(--amber)}.admin-badge--danger{background:var(--danger-soft)}.admin-badge--danger:before{background:var(--danger)}.admin-badge--info{background:var(--primary-soft);color:var(--primary)}.admin-badge--info:before{background:var(--primary)}.admin-empty{align-items:center;gap:var(--space-2);padding:var(--space-9) var(--space-5);text-align:center;background:var(--ad-surface);border:1px dashed var(--ad-line-strong);border-radius:var(--radius-lg);flex-direction:column;display:flex}.admin-empty h2,.admin-empty h3{font-size:var(--text-lg);line-height:var(--lh-lg)}.admin-empty p{max-width:40ch;font-size:var(--text-sm);color:var(--ad-text-2);line-height:1.55}.admin-empty .admin-btn{margin-top:var(--space-3)}.admin-muted{color:var(--ad-text-2)}.admin-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--ad-text-2);font-size:.6875rem;font-weight:600;line-height:1.4}@media (prefers-reduced-motion:reduce){.admin-btn:active:not(:disabled),.admin-card--link:hover{transform:none}}@property --adm-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.admin-shell,.admin-gate{--ad-content-w:80rem;--ad-gutter:var(--content-padding);--ad-bg:var(--paper);--ad-surface:var(--surface);--ad-surface-2:var(--paper-2);--ad-line:var(--line);--ad-line-strong:var(--line-strong);--ad-text:var(--ink);--ad-text-2:var(--ink-2);--ad-text-3:var(--ink-3);--ad-bar-bg:#1a1a1f;--ad-bar-glow:#7a3b526b;--ad-bar-text:#fbfaf8bd;--ad-bar-text-strong:#fff;--ad-bar-muted:#fbfaf880;--ad-bar-line:#ffffff1f;--ad-bar-hover:#ffffff12;--ad-bar-active:#ffffff1f;--ad-foil:#e8a0b4, #f2c27b, #7fc4ad, #8da2e0, #c98ae0;color:var(--ad-text)}@media (width>=1024px){.admin-shell{--ad-gutter:var(--space-8)}}.admin-shell *,.admin-shell :before,.admin-shell :after,.admin-gate *,.admin-gate :before,.admin-gate :after{box-sizing:border-box}.admin-shell :focus-visible,.admin-gate :focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.admin-shell ::selection{background:var(--primary-soft)}.admin-hide-sm{display:none}@media (width>=640px){.admin-hide-sm{display:inline}}.admin-shell{background:radial-gradient(ellipse 60rem 18rem at 50% -8rem, #5c1f2b12, transparent 70%), var(--ad-bg);flex-direction:column;min-height:100dvh;display:flex}.admin-skip{top:var(--space-3);left:var(--space-3);z-index:calc(var(--z-toast,300) + 1);padding:var(--space-3) var(--space-5);font-size:var(--text-sm);color:var(--on-primary);background:var(--primary);border-radius:var(--radius-md);transition:transform var(--transition-base) var(--ease-out);font-weight:600;text-decoration:none;position:fixed;transform:translateY(-200%)}.admin-skip:focus-visible{transform:translateY(0)}.admin-header{z-index:var(--z-sticky,100);align-items:center;column-gap:var(--space-4);padding:max(var(--space-3), env(safe-area-inset-top)) var(--ad-gutter) 0;color:var(--ad-bar-text);background:radial-gradient(ellipse 26rem 10rem at 0 0, var(--ad-bar-glow), transparent 70%), radial-gradient(ellipse 22rem 9rem at 100% 100%, #2f6b5e38, transparent 70%), var(--ad-bar-bg);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand right""tabs tabs";display:grid;position:sticky;top:0}.admin-header:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#c98ae073,#7fc4ad73,#0000);height:1px;position:absolute;bottom:0;left:0;right:0}@media (width>=768px){.admin-header{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand tabs right";min-height:4rem;padding-bottom:0}}.admin-brand{align-items:center;gap:var(--space-3);min-height:44px;color:var(--ad-bar-text-strong);border-radius:var(--radius-md);grid-area:brand;text-decoration:none;display:inline-flex}.admin-brand:visited{color:var(--ad-bar-text-strong)}.admin-brand:focus-visible{outline-offset:4px;outline:2px solid #ffffffd9}.admin-brand-name{font-family:var(--font-serif);font-size:var(--text-xl);letter-spacing:-.02em;font-weight:500;line-height:1}.admin-brand-tag{padding:2px var(--space-3);letter-spacing:.08em;text-transform:uppercase;color:var(--ad-bar-text-strong);background:var(--ad-bar-active);border:1px solid var(--ad-bar-line);border-radius:var(--radius-full);font-size:.6875rem;font-weight:600;line-height:1.5}.admin-tabs{margin-inline:calc(var(--ad-gutter) * -1);padding-inline:calc(var(--ad-gutter) - var(--space-3));scrollbar-width:none;-webkit-overflow-scrolling:touch;grid-area:tabs;align-self:stretch;align-items:stretch;gap:2px;display:flex;overflow-x:auto}.admin-tabs::-webkit-scrollbar{display:none}@media (width>=768px){.admin-tabs{padding-inline:var(--space-4) 0;margin-inline:0;overflow:visible}}.admin-tab{align-items:center;gap:var(--space-2);min-height:48px;padding-inline:var(--space-4);font-size:var(--text-sm);white-space:nowrap;color:var(--ad-bar-text);border-radius:var(--radius-md) var(--radius-md) 0 0;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), color var(--transition-fast);flex:none;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex;position:relative}.admin-tab:visited{color:var(--ad-bar-text)}.admin-tab svg{color:var(--ad-bar-muted);transition:color var(--transition-fast);flex:none}.admin-tab:active{background:var(--ad-bar-active)}@media (hover:hover){.admin-tab:hover{color:var(--ad-bar-text-strong);background:var(--ad-bar-hover)}.admin-tab:hover svg{color:var(--ad-bar-text)}}.admin-tab.is-active,.admin-tab.is-active:visited,.admin-tab[aria-current=page]{color:var(--ad-bar-text-strong);background:var(--ad-bar-active)}.admin-tab.is-active svg,.admin-tab[aria-current=page] svg{color:#fff}.admin-tab.is-active:after,.admin-tab[aria-current=page]:after{content:"";right:var(--space-3);bottom:0;left:var(--space-3);border-radius:var(--radius-full) var(--radius-full) 0 0;height:3px;animation:adm-tab-in .35s var(--ease-out) both;background:linear-gradient(90deg,#e8a0b4,#f2c27b,#7fc4ad,#8da2e0,#c98ae0);position:absolute}@keyframes adm-tab-in{0%{opacity:0;transform:scaleX(0)}}.admin-tab:focus-visible{outline-offset:-3px;outline:2px solid #ffffffd9}.admin-header-right{align-items:center;gap:var(--space-2);grid-area:right;min-width:0;display:flex}.admin-header-account{align-items:center;gap:var(--space-2);min-width:0;margin-right:var(--space-2);display:none}@media (width>=900px){.admin-header-account{display:inline-flex}}.admin-avatar{width:30px;height:30px;font-family:var(--font-serif);font-size:var(--text-sm);color:#fff;background:linear-gradient(135deg, var(--primary), var(--tone-plum));box-shadow:0 0 0 2px var(--ad-bar-bg), 0 0 0 3px #c98ae099;border-radius:50%;flex:none;place-items:center;font-weight:500;line-height:1;display:grid}.admin-header-email{max-width:15rem;font-size:var(--text-sm);color:var(--ad-bar-text);text-overflow:ellipsis;white-space:nowrap;line-height:1.3;overflow:hidden}.admin-header .admin-back,.admin-header .admin-signout{justify-content:center;align-items:center;gap:var(--space-2);min-width:44px;min-height:40px;padding-inline:var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ad-bar-text);background:var(--ad-bar-hover);border:1px solid var(--ad-bar-line);border-radius:var(--radius-full);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.admin-header .admin-back:visited{color:var(--ad-bar-text)}@media (width>=640px){.admin-header .admin-back,.admin-header .admin-signout{padding-inline:var(--space-4)}}.admin-header .admin-back:active,.admin-header .admin-signout:active{background:var(--ad-bar-active)}@media (hover:hover){.admin-header .admin-back:hover,.admin-header .admin-signout:hover{color:#fff;background:var(--ad-bar-active);border-color:#ffffff47}}.admin-header .admin-back:focus-visible,.admin-header .admin-signout:focus-visible{outline-offset:2px;outline:2px solid #ffffffd9}.admin-header .admin-signout:disabled{cursor:progress;opacity:.6}.admin-main{gap:var(--space-6);width:100%;max-width:var(--ad-content-w);padding:var(--space-6) var(--ad-gutter) var(--space-12);animation:adm-rise .5s var(--ease-out) both;outline:0;flex-direction:column;flex:1;margin-inline:auto;display:flex}@keyframes adm-rise{0%{opacity:0;transform:translateY(10px)}}.admin-gate{isolation:isolate;min-height:100dvh;padding:max(var(--space-6), env(safe-area-inset-top)) var(--content-padding) max(var(--space-6), env(safe-area-inset-bottom));background:radial-gradient(ellipse 44rem 22rem at 50% -4rem, #5c1f2b24, transparent 70%), radial-gradient(ellipse 26rem 18rem at 100% 100%, #2f6b5e1a, transparent 70%), var(--ad-bg);place-items:center;display:grid;position:relative}.admin-gate-card{width:100%;max-width:28rem;padding:var(--space-8) var(--space-6) var(--space-6);text-align:center;background:color-mix(in srgb, var(--surface) 84%, transparent);border-radius:calc(var(--radius-lg) + 6px);-webkit-backdrop-filter:blur(20px)saturate(1.4);backdrop-filter:blur(20px)saturate(1.4);animation:adm-rise .6s var(--ease-out) both;flex-direction:column;align-items:center;display:flex;position:relative;box-shadow:0 34px 70px -34px #5c1f2b80,0 2px 6px #1a1a1f0a,inset 0 1px #fffc}.admin-gate-card:before{content:"";border-radius:inherit;pointer-events:none;background:conic-gradient(from var(--adm-angle), var(--ad-foil), #e8a0b4);-webkit-mask-composite:xor;padding:1.5px;animation:12s linear infinite adm-spin;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}@keyframes adm-spin{to{--adm-angle:360deg}}.admin-gate-icon{width:4rem;height:4rem;margin-bottom:var(--space-5);color:var(--danger);background:var(--danger-soft);border-radius:50%;place-items:center;display:grid;position:relative}.admin-gate-icon:before,.admin-gate-icon:after{content:"";border:1.5px solid var(--danger);opacity:0;animation:adm-ping 3s var(--ease-out) infinite;border-radius:50%;position:absolute;inset:0}.admin-gate-icon:after{animation-delay:1.5s}@keyframes adm-ping{0%{opacity:.4;transform:scale(1)}to{opacity:0;transform:scale(1.8)}}.admin-gate-card h1{letter-spacing:-.03em;font-size:clamp(1.75rem,1.4rem + 1.4vw,2.25rem);font-weight:500;line-height:1.1}.admin-gate-card p{max-width:34ch;margin-top:var(--space-3);font-family:var(--font-serif);font-size:var(--text-md);color:var(--ad-text-2);line-height:1.55}.admin-gate-card p strong{max-width:100%;margin-top:var(--space-2);padding:2px var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ad-text);background:var(--ad-surface-2);border-radius:var(--radius-full);overflow-wrap:anywhere;font-weight:600;display:inline-block}.admin-gate-actions{gap:var(--space-2);width:100%;margin-top:var(--space-6);flex-direction:column;display:flex}.admin-gate .admin-back,.admin-gate .admin-back:visited{justify-content:center;align-items:center;gap:var(--space-2);min-height:52px;padding-inline:var(--space-5);font-family:var(--font-sans);font-size:var(--text-base);color:var(--on-primary);background:var(--primary);border-radius:var(--radius-md);-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), transform var(--transition-fast) var(--ease-out);font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex;box-shadow:0 12px 24px -14px #5c1f2bb3,inset 0 1px #ffffff24}.admin-gate .admin-back:active{background:var(--primary-active);transform:scale(.985)}@media (hover:hover){.admin-gate .admin-back:hover{background:var(--primary-hover);color:var(--on-primary)}}.admin-gate .admin-signout{min-height:var(--tap-target);padding-inline:var(--space-5);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--primary);border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast);font-weight:600}.admin-gate .admin-signout:active{background:var(--primary-soft)}@media (hover:hover){.admin-gate .admin-signout:hover{background:var(--primary-soft)}}.admin-gate .admin-signout:disabled{cursor:progress;opacity:.6}@media (prefers-reduced-motion:reduce){.admin-main,.admin-gate-card,.admin-gate-card:before,.admin-gate-icon:before,.admin-gate-icon:after,.admin-tab.is-active:after,.admin-tab[aria-current=page]:after{animation:none}.admin-gate-icon:before,.admin-gate-icon:after{display:none}.admin-gate .admin-back:active{transform:none}}.admin-content{gap:var(--space-5);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}@media (width>=1024px){.admin-content{gap:var(--space-5) var(--space-6);grid-template-columns:23rem minmax(0,1fr)}.admin-content>.admin-stats-row{grid-column:1/-1}}@media (width<=1023px){.admin-content[data-view=detail] .admin-list,.admin-content[data-view=detail] .admin-stats-row,.admin-content[data-view=list] .admin-detail{display:none}}.admin-sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.admin-mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.8125rem}.admin-stats-row{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=720px){.admin-stats-row{grid-template-columns:repeat(4,minmax(0,1fr))}}.admin-stat-card{--stat-bg:var(--primary-soft);--stat-fg:var(--primary);align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-4);background:var(--ad-surface);border:1px solid var(--ad-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);display:flex}.admin-stat-card--active{--stat-bg:var(--teal-soft);--stat-fg:var(--teal)}.admin-stat-card--suspended{--stat-bg:var(--amber-soft);--stat-fg:var(--ink)}.admin-stat-card--banned{--stat-bg:var(--danger-soft);--stat-fg:var(--danger)}.admin-stat-icon{width:40px;height:40px;color:var(--stat-fg);background:var(--stat-bg);border-radius:var(--radius-md);flex:none;place-items:center;display:grid}.admin-stat-text{flex-direction:column;min-width:0;display:flex}.admin-stat-value{font-family:var(--font-serif);font-size:var(--text-2xl);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:500;line-height:1.1}.admin-stat-label{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--ad-text-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-list{background:var(--ad-surface);border:1px solid var(--ad-line);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-1);flex-direction:column;display:flex;overflow:hidden}@media (width>=1024px){.admin-list{top:calc(4rem + var(--space-4));max-height:calc(100dvh - 4rem - var(--space-8));position:sticky}}.admin-list-toolbar{gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--ad-line);flex-direction:column;flex:none;display:flex}.admin-search-wrap{width:100%;position:relative}.admin-search-icon{top:50%;left:var(--space-4);color:var(--ad-text-3);pointer-events:none;position:absolute;transform:translateY(-50%)}.admin-search{width:100%;min-height:44px;font-family:var(--font-sans);color:var(--ad-text);background:var(--ad-surface-2);border-radius:var(--radius-md);appearance:none;transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out);border:1px solid #0000;outline:2px solid #0000;padding:0 2.5rem;font-size:1rem}.admin-search::placeholder{color:var(--ad-text-3)}.admin-search::-webkit-search-cancel-button{display:none}.admin-search:focus{background:var(--ad-surface);border-color:var(--primary);box-shadow:var(--focus-halo)}.admin-search-clear{width:36px;height:36px;color:var(--ad-text-2);border-radius:var(--radius-sm);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), color var(--transition-fast);place-items:center;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.admin-search-clear:active{background:var(--ad-line)}@media (hover:hover){.admin-search-clear:hover{color:var(--ad-text);background:var(--ad-line)}}.admin-filter-tabs{background:var(--ad-surface-2);border-radius:var(--radius-md);grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:3px;display:grid}.admin-filter-tab{min-height:36px;padding:0 var(--space-1);font-family:var(--font-sans);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;color:var(--ad-text-2);border-radius:calc(var(--radius-md) - 3px);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-base) var(--ease-out), color var(--transition-fast), box-shadow var(--transition-base) var(--ease-out);font-weight:500;line-height:1.2;overflow:hidden}.admin-filter-tab.is-active{color:var(--primary);background:var(--ad-surface);box-shadow:var(--shadow-2);font-weight:600}@media (hover:hover){.admin-filter-tab:not(.is-active):hover{color:var(--ad-text)}}.admin-filter-tab:focus-visible{outline:var(--focus-ring);outline-offset:0}.admin-list-count{padding-inline:var(--space-1);font-size:var(--text-xs);line-height:var(--lh-xs);font-variant-numeric:tabular-nums;color:var(--ad-text-2)}.admin-list-rows{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--ad-line-strong) transparent;flex:1;min-height:0;overflow-y:auto}.admin-list-loading{padding:var(--space-8) var(--space-5);place-items:center;display:grid}.admin-list .admin-empty{padding:var(--space-8) var(--space-5);background:0 0;border:0;border-radius:0}.admin-row{align-items:start;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);text-align:left;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast);background:0 0;grid-template-columns:auto minmax(0,1fr);display:grid;position:relative}.admin-row+.admin-row{border-top:1px solid var(--ad-line)}.admin-row:active{background:var(--ad-surface-2)}@media (hover:hover){.admin-row:hover{background:var(--paper)}}.admin-row.is-selected,.admin-row.is-selected:hover{background:color-mix(in srgb, var(--primary-soft) 70%, var(--ad-surface))}.admin-row.is-selected:before{content:"";background:linear-gradient(to bottom, var(--primary), var(--tone-plum));border-radius:0 var(--radius-full) var(--radius-full) 0;width:3px;position:absolute;top:10px;bottom:10px;left:0}.admin-row:focus-visible{outline:var(--focus-ring);outline-offset:-3px}.admin-row-avatar{width:40px;height:40px;font-family:var(--font-serif);font-size:var(--text-md);color:var(--primary);background:var(--primary-soft);border-radius:50%;place-items:center;font-weight:500;line-height:1;display:grid}.admin-row[data-state=suspended] .admin-row-avatar{color:var(--ink);background:var(--amber-soft)}.admin-row[data-state=banned] .admin-row-avatar{color:var(--danger);background:var(--danger-soft)}.admin-row-body{flex-direction:column;gap:2px;min-width:0;display:flex}.admin-row-top{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.admin-row-title{min-width:0;font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;color:var(--ad-text);font-weight:600;line-height:1.3;overflow:hidden}.admin-row-meta{font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ad-text-2);flex:none}.admin-row-sub{font-size:var(--text-sm);color:var(--ad-text-2);line-height:1.4}.admin-row-badges{gap:var(--space-1);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.admin-detail{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.admin-detail-back{align-self:flex-start;align-items:center;gap:var(--space-2);min-height:var(--tap-target);margin-left:calc(var(--space-3) * -1);padding-inline:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ad-text-2);border-radius:var(--radius-full);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), color var(--transition-fast);font-weight:500;display:inline-flex}.admin-detail-back:active{background:var(--ad-surface-2)}@media (hover:hover){.admin-detail-back:hover{color:var(--ad-text);background:var(--ad-surface-2)}}@media (width>=1024px){.admin-detail-back{display:none}}.admin-detail-loading{place-items:center;min-height:12rem;display:grid}.admin-error{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--ad-text);background:var(--danger-soft);border-left:3px solid var(--danger);border-radius:4px var(--radius-md) var(--radius-md) 4px;line-height:1.5}.admin-detail>.admin-card:not(:has(>.admin-card-body)){padding:var(--space-5)}.admin-card-title{margin-bottom:var(--space-4);font-family:var(--font-sans);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ad-text-2);font-weight:600;line-height:1.4}.admin-card-title--spaced{margin-top:var(--space-5);margin-bottom:var(--space-2)}.admin-body{font-size:var(--text-base);color:var(--ad-text);white-space:pre-line;overflow-wrap:anywhere;line-height:1.65}.admin-body--mono{padding:var(--space-3) var(--space-4);background:var(--ad-surface-2);border-radius:var(--radius-md);font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.8125rem;line-height:1.6}.admin-inline{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.admin-dl{gap:0 var(--space-4);margin:var(--space-4) 0 0;grid-template-columns:minmax(6.5rem,9rem) minmax(0,1fr);display:grid}.admin-card-title+.admin-dl,.admin-card>.admin-dl:first-child{margin-top:0}.admin-dl dt,.admin-dl dd{padding-block:var(--space-2);font-size:var(--text-sm);border-top:1px solid var(--ad-line);line-height:1.5}.admin-dl dt:first-of-type,.admin-dl dt:first-of-type+dd{border-top:0}.admin-dl dt{color:var(--ad-text-2);font-weight:500}.admin-dl dd{color:var(--ad-text);overflow-wrap:anywhere;margin:0}@media (width<=479px){.admin-dl{grid-template-columns:minmax(0,1fr)}.admin-dl dt{font-size:var(--text-xs);border-top:1px solid var(--ad-line);padding-bottom:0}.admin-dl dd{border-top:0;padding-top:2px}.admin-dl dt:first-of-type{border-top:0}}.admin-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-btn--warn,.admin-btn--warn:visited{color:var(--ink);background:var(--amber-soft);border-color:color-mix(in srgb, var(--amber) 55%, transparent)}.admin-btn--warn:active:not(:disabled){background:color-mix(in srgb, var(--amber) 28%, var(--amber-soft))}@media (hover:hover){.admin-btn--warn:hover:not(:disabled){background:color-mix(in srgb, var(--amber) 22%, var(--amber-soft));border-color:var(--amber)}}@media (width<=479px){.admin-actions .admin-btn{flex:1 1 calc(50% - var(--space-2))}}.admin-log{flex-direction:column;margin:0;list-style:none;display:flex}.admin-log-item{padding:0 0 var(--space-4) var(--space-6);position:relative}.admin-log-item:last-child{padding-bottom:0}.admin-log-item:before{content:"";background:var(--primary);width:10px;height:10px;box-shadow:0 0 0 3px var(--primary-soft);border-radius:50%;position:absolute;top:5px;left:0}.admin-log-item:after{content:"";background:var(--ad-line);border-radius:var(--radius-full);width:2px;position:absolute;top:22px;bottom:0;left:4px}.admin-log-item:last-child:after{display:none}.admin-log-action{font-size:var(--text-sm);text-transform:capitalize;color:var(--ad-text);font-weight:600;line-height:1.4}.admin-log-meta{font-size:var(--text-sm);color:var(--ad-text);overflow-wrap:anywhere;flex-direction:column;gap:2px;margin-top:2px;line-height:1.5;display:flex}.admin-log-time{font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--ad-text-2)}.admin-badge--warn{background:var(--amber-soft)}.admin-badge--warn:before{background:var(--amber)}.admin-badge--resolved{background:var(--teal-soft)}.admin-badge--resolved:before{background:var(--teal)}@media (prefers-reduced-motion:reduce){.admin-filter-tab,.admin-row,.admin-search{transition:none}}.suspended-page{isolation:isolate;min-height:100dvh;padding:max(var(--space-6), env(safe-area-inset-top)) var(--content-padding) max(var(--space-6), env(safe-area-inset-bottom));text-align:center;color:var(--ink);background:var(--paper);flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex;position:relative}.suspended-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(40rem 22rem at 50% 0,#5c1f2b14,#0000 70%),radial-gradient(24rem 14rem at 90% 90%,#2f6b5e0f,#0000 70%);position:absolute;inset:0}.suspended-card{align-items:center;gap:var(--space-4);width:100%;max-width:30rem;padding:var(--space-7) var(--space-6);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);flex-direction:column;display:flex}.suspended-icon{width:4rem;height:4rem;margin-bottom:var(--space-2);color:var(--primary);background:var(--primary-soft);border-radius:50%;place-items:center;display:grid}.suspended-icon--banned{color:var(--crisis,#8c3a1f);background:var(--crisis-soft,#f5ded3)}.suspended-title{font-family:var(--font-serif);letter-spacing:-.02em;text-wrap:balance;color:var(--ink);font-size:clamp(1.75rem,1.4rem + 2vw,2.25rem);font-weight:500;line-height:1.1}.suspended-body{max-width:44ch;font-family:var(--font-serif);font-size:var(--text-md);color:var(--ink-2);text-wrap:pretty;line-height:1.6}.suspended-meta{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);line-height:var(--lh-sm);font-variant-numeric:tabular-nums;color:var(--ink);background:var(--paper-2);border-radius:var(--radius-full);display:inline-flex}.suspended-meta strong{color:var(--primary);font-weight:600}.suspended-appeal{max-width:44ch;font-size:var(--text-sm);color:var(--ink-2);line-height:1.6}.suspended-appeal a{color:var(--primary);text-underline-offset:3px;font-weight:600}.suspended-actions{width:100%;max-width:20rem;margin-top:var(--space-2);flex-direction:column;display:flex}.suspended-logout{justify-content:center;align-items:center;gap:var(--space-2);min-height:52px;padding:0 var(--space-5);font-family:var(--font-sans);font-size:var(--text-base);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--transition-fast), border-color var(--transition-fast);font-weight:600;display:inline-flex}.suspended-logout:active{background:var(--paper-2)}@media (hover:hover){.suspended-logout:hover{background:var(--paper-2);border-color:var(--ink-3)}}.suspended-logout:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.suspended-error{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--ink);background:var(--danger-soft);border-left:3px solid var(--danger);border-radius:4px var(--radius-md) var(--radius-md) 4px;line-height:1.5}@media (prefers-reduced-motion:reduce){.suspended-logout{transition:none}}
