@font-face{font-family:Caveat;src:url(/fonts/Caveat-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Caveat;src:url(/fonts/Caveat-Medium.ttf) format("truetype");font-weight:500;font-display:swap}@font-face{font-family:Caveat;src:url(/fonts/Caveat-Bold.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter_18pt-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter_18pt-Bold.ttf) format("truetype");font-weight:700;font-display:swap}:root{color-scheme:light;--color-bg: #f7f1e3;--color-text: #1a1a1a;--color-accent: #f4c430;--color-accent-soft: #fdf6e0;--color-line: #bfd7ed;--color-white: #ffffff;--color-muted: #6b6b6b;--color-success: #3b6d11;--color-error: #a32d2d;--color-paper: #f5eddc;--color-paper-edge: rgba(176, 140, 80, .08);--color-paper-margin: #e7a1a1;--color-envelope-inside: #eef3f8;--font-heading: "Caveat", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--text-hero: 5rem;--text-h1: 4rem;--text-card-title: 2.25rem;--text-h2: 1.25rem;--text-subheading: 1.05rem;--text-body: 1rem;--text-small: .85rem;--content-width: 640px}*{box-sizing:border-box}.logo{width:100%;max-width:220px;height:auto}.logo-small{width:100%;max-width:110px;height:auto}.service-logo-link{margin-bottom:-1.75rem}.service-heading{margin:0}.top-banner{display:flex;align-items:center;justify-content:flex-end;gap:1rem;padding:1rem 1.5rem;border-bottom:2px solid var(--color-accent)}.banner-actions{display:flex;align-items:center;gap:.75rem}.banner-link{font-family:var(--font-body);font-weight:700;font-size:.9rem;color:var(--color-text);text-decoration:none;padding:.5rem 1.25rem;border:2px solid var(--color-accent);border-radius:999px;transition:border-color .15s ease}.banner-link:hover,.banner-link:focus-visible{border-color:var(--color-accent)}.banner-button{font-family:var(--font-body);font-weight:700;font-size:.9rem;color:var(--color-text);text-decoration:none;padding:.5rem 1.25rem;border-radius:999px;background:var(--color-accent);transition:opacity .15s ease}.banner-button:hover,.banner-button:focus-visible{opacity:.85}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-weight:400;line-height:1.6}h1{font-family:var(--font-heading);font-weight:700;margin:0;font-size:var(--text-h1)}h2{font-family:var(--font-body);font-weight:700;margin:0;font-size:var(--text-h2)}.page{position:relative;display:flex;flex-direction:column;align-items:center;gap:2rem;padding:3rem 1.5rem;text-align:center}.service-page{padding-top:5rem}.hero{display:flex;flex-direction:column;align-items:center;gap:1rem}.tagline{font-family:var(--font-heading);font-size:var(--text-hero);line-height:1.1;font-weight:700;margin:0}.problem-statement{font-family:var(--font-body);font-weight:400;max-width:var(--content-width);font-size:var(--text-body);margin:0;text-align:left}.info-link{display:inline-block;font-family:var(--font-body);font-size:.95rem;font-weight:700;color:var(--color-text);text-decoration:none;border-bottom:2px solid var(--color-accent);padding-bottom:2px;transition:opacity .15s ease}.info-link:hover,.info-link:focus-visible{opacity:.7}.map-section{width:100%;display:flex;justify-content:center}.map-image{width:100%;max-width:380px;height:auto;border-radius:12px}.account-choice-links{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.account-choice-link{font-family:var(--font-body);font-weight:400;font-size:var(--text-body);text-transform:uppercase;letter-spacing:.03em;color:var(--color-text);text-decoration:none;padding:.4rem .8rem;border:2px solid var(--color-line);border-radius:4px;transition:background .15s ease,border-color .15s ease}.account-choice-link:hover,.account-choice-link:focus-visible{background:var(--color-accent);border-color:var(--color-accent)}.auth-form{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:320px;text-align:left}.auth-form label{font-weight:700;font-size:.9rem}.auth-form input,.auth-form select,.auth-form textarea{font-family:var(--font-body);font-weight:400;font-size:var(--text-body);padding:.6rem .75rem;border:2px solid var(--color-line);border-radius:8px;background:var(--color-white);color:var(--color-text)}.auth-form input::placeholder,.auth-form textarea::placeholder{color:var(--color-muted)}.auth-form input:focus-visible,.auth-form select:focus-visible,.auth-form textarea:focus-visible{outline:none;border-color:var(--color-accent)}.auth-form textarea{resize:vertical;min-height:7rem}.textarea-count{position:relative;display:flex}.textarea-count textarea{flex:1;padding-bottom:1.75rem}.textarea-count-number{position:absolute;right:1.75rem;bottom:.5rem;pointer-events:none}.auth-form button{font-family:var(--font-body);font-weight:400;font-size:var(--text-body);text-transform:uppercase;letter-spacing:.03em;padding:.4rem .8rem;border:none;border-radius:4px;background:var(--color-accent);color:var(--color-text);cursor:pointer;margin-top:.5rem}.auth-form button:hover{opacity:.85}.auth-form button:disabled{opacity:.6;cursor:default}.auth-form .button-secondary{background:transparent;border:2px solid var(--color-line);margin-top:0}button.banner-button{border:none;cursor:pointer}.form-error{color:#b3261e;font-size:.9rem;margin:0}.profile-intro{max-width:320px;margin:0}.profile-details{display:grid;grid-template-columns:auto 1fr;gap:.5rem 1.5rem;width:100%;max-width:320px;margin:0;text-align:left}.profile-details dt{font-weight:700;font-size:.9rem}.profile-details dd{margin:0}.profile-interests{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:320px;text-align:left}.soft-box{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:320px;padding:.75rem 1rem;border-radius:8px;background:var(--color-accent-soft);text-align:left}.soft-box-wide{max-width:none}.soft-box-text{margin:0;white-space:pre-line;overflow-wrap:anywhere}span.tag{cursor:default}span.tag:hover{opacity:1;border-color:var(--color-line)}span.tag-selected:hover{border-color:var(--color-accent)}.home-link{position:absolute;top:1.5rem;left:1.5rem;font-family:var(--font-body);font-weight:700;font-size:.95rem;color:var(--color-text);text-decoration:none}.home-link:hover,.home-link:focus-visible{opacity:.7}@media (min-width: 768px){.map-image{max-width:720px}}.primary-button{font-family:var(--font-body);font-weight:400;font-size:var(--text-body);text-transform:uppercase;letter-spacing:.03em;padding:.4rem .8rem;border:none;border-radius:4px;background:var(--color-accent);color:var(--color-text);cursor:pointer}.primary-button:hover{opacity:.85}.style-section{width:100%;max-width:var(--content-width);text-align:left}.swatch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem}.swatch-color{width:100%;aspect-ratio:1;border-radius:8px;border:2px solid var(--color-line)}.swatch-label{font-weight:700;margin:.5rem 0 0}.swatch-code{font-size:var(--text-small);color:var(--color-text);margin:0;opacity:.7}.card{background:var(--color-white);border:2px solid var(--color-line);border-radius:4px;padding:1.5rem;max-width:320px}.card-wide{width:100%;max-width:480px;margin:0 auto;padding:1rem;box-shadow:0 6px 0 var(--color-line)}.card-wide h1{line-height:1.1}.card-interactive{transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.card-interactive:hover,.card-interactive:focus-within{transform:translateY(-3px);border-color:var(--color-accent);box-shadow:0 6px 0 var(--color-accent)}@media (prefers-reduced-motion: reduce){.card-interactive{transition:none}.card-interactive:hover,.card-interactive:focus-within{transform:none}}.card-avatar{width:64px;height:64px;border-radius:50%;background:var(--color-line);object-fit:cover;margin-bottom:1rem}.card-title{font-family:var(--font-heading);font-size:var(--text-card-title);font-weight:700;margin:0 0 .25rem}.card-subheading{font-family:var(--font-body);font-size:var(--text-subheading);font-weight:700;margin:0 0 .5rem}.card-text{font-family:var(--font-body);font-weight:400;font-size:var(--text-body);margin:0}.hint-text{font-family:var(--font-body);font-weight:400;font-size:var(--text-small);color:var(--color-muted);margin:0}.status-success{color:var(--color-success);font-weight:700;font-size:var(--text-small)}.status-error{color:var(--color-error);font-weight:700;font-size:var(--text-small)}.tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none}.tag{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-body);font-weight:400;font-size:var(--text-small);padding:.3rem .8rem;border:2px solid var(--color-line);border-radius:999px;background:transparent;color:var(--color-text);cursor:pointer}.tag:hover,.tag:focus-visible{border-color:var(--color-accent)}.tag-selected{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-text)}.tag-selected:hover,.tag-selected:focus-visible{opacity:.85}.demo-banner{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.35rem 1rem;background:var(--color-line);font-size:var(--text-small);text-align:center}.text-button{font-family:var(--font-body);font-size:var(--text-small);font-weight:700;color:var(--color-text);background:none;border:none;border-bottom:2px solid var(--color-accent);padding:0 0 1px;cursor:pointer}.text-button:hover,.text-button:focus-visible{opacity:.7}.secondary-button{font-family:var(--font-body);font-weight:400;font-size:var(--text-body);text-transform:uppercase;letter-spacing:.03em;padding:.4rem .8rem;border:2px solid var(--color-line);border-radius:4px;background:transparent;color:var(--color-text);cursor:pointer}.secondary-button:hover,.secondary-button:focus-visible{border-color:var(--color-accent);background:var(--color-accent)}.button-small{padding:.1rem .4rem;font-size:var(--text-small)}.round-button{width:2.25rem;height:2.25rem;padding:0;border-radius:50%;transition:transform .15s ease,box-shadow .15s ease}.round-button{background-image:url(/assets/plus-C8ZsEOZ8.png);background-repeat:no-repeat;background-position:center;background-size:55%}.round-button:hover,.round-button:focus-visible{opacity:1;transform:translateY(-2px);box-shadow:0 3px 0 var(--color-line)}@media (prefers-reduced-motion: reduce){.round-button{transition:none}.round-button:hover,.round-button:focus-visible{transform:none}}.tag-static{cursor:default}.tag-static:hover{border-color:var(--color-line)}.tag-static.tag-selected:hover{border-color:var(--color-accent);opacity:1}.auth-form .tag{font-size:var(--text-small);text-transform:none;letter-spacing:0;padding:.3rem .8rem;margin-top:0;border:2px solid var(--color-line);border-radius:999px;background:transparent}.auth-form .tag-selected{border-color:var(--color-accent);background:var(--color-accent)}.demo-profile-form{max-width:480px}.demo-fieldset{display:flex;flex-direction:column;gap:.5rem;border:none;margin:0;padding:0}.demo-fieldset legend{font-weight:700;font-size:.9rem;padding:0;margin-bottom:.25rem}.status-pill{display:inline-block;font-size:var(--text-small);font-weight:700;padding:.15rem .6rem;border-radius:999px;background:var(--color-bg);border:2px solid var(--color-line)}.status-pill-success{color:var(--color-success);border-color:var(--color-success)}.status-pill-error{color:var(--color-error);border-color:var(--color-error)}.status-pill-owner{color:var(--color-white);background:var(--color-text);border-color:var(--color-text)}.card-avatar-initials{display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.25rem}.demo-card{display:flex;flex-direction:column;gap:.75rem;max-width:none;text-align:left}.demo-card .card-title,.demo-card .card-subheading,.demo-card .card-avatar{margin:0}.demo-card .card-title{line-height:1.1}.card-actions{display:flex;align-items:center;gap:.75rem;margin-top:auto;padding-top:.25rem}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;width:100%}.card-grid-compact{--card-height: 340px;grid-template-columns:repeat(auto-fit,minmax(260px,300px));grid-auto-rows:1fr;justify-content:center}.card-grid-compact>.list-card{min-height:var(--card-height)}@media (min-width: 768px){.card-grid-compact{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));justify-content:stretch}.card-grid-compact>.card{max-width:none}}.person-card{display:flex;flex-direction:column;gap:.5rem}.person-card .card-avatar{margin-bottom:0}.person-card-interests{position:relative}.person-card-interests>.tags{flex-wrap:nowrap}.person-card-interests>.tags>li{flex-shrink:0}.person-card-interests.is-tight>.tags>li:first-child{flex-shrink:1;min-width:0}.person-card-interests.is-tight>.tags .tag-static{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person-card-interests-all{position:absolute;top:calc(100% + .35rem);left:0;right:0;z-index:3;max-height:12rem;overflow-y:auto;padding:.6rem;background:var(--color-white);border:2px solid var(--color-line);border-radius:4px;box-shadow:2px 3px 0 var(--color-line)}.person-card:has(.person-card-interests.is-open){position:relative;z-index:3}.person-card>.person-card-interests{margin-top:auto}.person-card>.person-card-interests+.card-actions{margin-top:0}.person-card-link+.person-card-interests{padding-top:.5rem}.person-card .card-actions{justify-content:space-between}.person-card .card-actions>.primary-button,.person-card .card-actions>.secondary-button{width:min-content;padding-inline:.9rem}.person-card .card-actions>.text-button{margin-right:.4rem}.shared-count{color:var(--color-text);font-weight:700;border-bottom:2px solid var(--color-accent)}.person-card-link{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.5rem 1rem;text-decoration:none;color:inherit}.person-card-link .card-avatar{align-self:start}.person-card-link .card-title{margin:0;line-height:1.05}.person-card-link .card-subheading{grid-column:1 / -1;margin:0}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;padding:.15rem 1.5rem;border-bottom:2px solid var(--color-accent)}.app-brand{font-family:var(--font-heading);font-size:2rem;font-weight:700;line-height:1;color:var(--color-text);text-decoration:none}.app-brand-logo{display:block;height:76px;width:auto}.app-nav{display:flex;align-self:flex-end;justify-content:center;gap:.25rem;overflow-x:auto;order:3;width:100%}.app-nav-link{display:inline-flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:.15rem;font-weight:700;font-size:clamp(.72rem,3.2vw,.8rem);color:var(--color-text);text-decoration:none;padding:.3rem clamp(.2rem,1.8vw,.9rem) .1rem;border-radius:12px;white-space:nowrap}.nav-icon{height:clamp(28px,8.5vw,34px);width:auto;transition:transform .15s ease,filter .15s ease}.app-nav-link-locked{opacity:.4;cursor:not-allowed}.app-nav-link:not(.active):not(.app-nav-link-locked):hover .nav-icon,.app-nav-link:not(.active):focus-visible .nav-icon{transform:scale(1.15);filter:drop-shadow(1px 0 0 var(--color-accent)) drop-shadow(-1px 0 0 var(--color-accent)) drop-shadow(0 1px 0 var(--color-accent)) drop-shadow(0 -1px 0 var(--color-accent))}.app-nav-link.active .nav-icon{transform:scale(1.15)}.app-nav-link.active .app-nav-label{background:linear-gradient(transparent 58%,var(--color-accent) 58%,var(--color-accent) 88%,transparent 88%);padding:0 .15em}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .3rem;border-radius:999px;background:var(--color-text);color:var(--color-white);font-size:.75rem}.app-user{display:flex;align-items:center;gap:1rem;margin-left:auto}.content-stack{display:flex;flex-direction:column;align-items:center;gap:2rem;text-align:center}.back-row{width:100%;max-width:480px;text-align:left}.lined-paper{--line-gap: 1.6rem;--paper-margin: 3.4rem;--line-offset: 0px;background-color:var(--color-paper);background-image:radial-gradient(ellipse at center,transparent 60%,var(--color-paper-edge) 100%),linear-gradient(90deg,transparent calc(var(--paper-margin) - 1px),var(--color-paper-margin) calc(var(--paper-margin) - 1px),var(--color-paper-margin) calc(var(--paper-margin) + 1px),transparent calc(var(--paper-margin) + 1px)),repeating-linear-gradient(to bottom,transparent 0 calc(var(--line-gap) - 1px),var(--color-line) calc(var(--line-gap) - 1px) var(--line-gap));background-position:0 0,0 0,0 var(--line-offset)}.envelopes{--envelope-reach: calc(.056*(min(100vw - 3rem, 992px) - 5rem)) ;list-style:none;margin:0;padding:calc(var(--envelope-reach) - .25rem) 0 0;width:100%;display:grid;--envelope-gap: 1.25rem;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:calc(var(--envelope-reach) + 1.1rem) var(--envelope-gap)}.envelopes li{position:relative}.envelopes li:hover,.envelopes li:focus-within{z-index:1}.envelope{position:relative;display:block;aspect-ratio:10 / 7;border:2px solid var(--color-line);border-radius:6px;box-shadow:0 6px 0 var(--color-line);background:var(--color-white);color:var(--color-text);text-decoration:none;perspective:700px;container-type:inline-size}.envelope-inside,.envelope-letter,.envelope-front,.envelope-flap,.envelope-seal{position:absolute}.envelope-inside{top:0;right:0;bottom:0;left:0;z-index:1;border-radius:4px;background:var(--color-envelope-inside)}.envelope-letter{--line-gap: .9rem;--paper-margin: 14%;--line-offset: .6rem;left:8%;right:8%;top:7%;bottom:6%;z-index:2;border:1px solid var(--color-line);border-radius:3px;transition:transform .3s ease}.envelope-front{top:0;right:0;bottom:0;left:0;z-index:3;border-radius:4px;background:var(--color-white);clip-path:polygon(0 0,50% 40%,100% 0,100% 100%,0 100%)}.envelope-address{position:absolute;left:6%;right:6%;bottom:6%;display:flex;flex-direction:column;align-items:center;gap:.15rem;line-height:1}.envelope-addressee{display:flex;align-items:center;justify-content:center;gap:2.5cqi;max-width:100%}.envelope .envelope-avatar{width:clamp(1.15rem,12cqi,2rem);height:clamp(1.15rem,12cqi,2rem);font-size:clamp(.55rem,6cqi,1rem)}.envelope-name{min-width:0;max-width:100%;font-family:var(--font-heading);font-weight:700;font-size:13.5cqi;padding:.1em .2em;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.envelope-when{font-size:clamp(.5rem,4.9cqi,.7rem);color:var(--color-muted)}.envelope-flap{left:0;right:0;top:0;height:44%;z-index:4;background:var(--color-line);clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top;transition:transform .35s ease .25s,z-index 0s .25s,background .15s ease}.envelope-flap:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-white);clip-path:polygon(2px 0,calc(100% - 2px) 0,50% calc(100% - 3px))}.envelope:hover .envelope-flap,.envelope:focus-visible .envelope-flap{background:var(--color-accent)}.envelope-seal{left:50%;top:44%;width:clamp(1.35rem,16cqi,2.3rem);height:clamp(1.35rem,16cqi,2.3rem);translate:-50% -55%;z-index:5;display:grid;place-items:center;border-radius:50%;background:var(--color-accent);box-shadow:0 0 0 3px var(--color-white),0 2px 0 3px var(--color-line);font-size:clamp(.38rem,4.3cqi,.62rem);font-weight:700;letter-spacing:.02em;text-transform:uppercase;transition:transform .2s ease}@container (max-width: 130px){.envelope-when{display:none}.envelope-seal{width:1.1rem;height:1.1rem;font-size:.32rem}}@media (hover: hover) and (min-width: 768px){.envelope:not(.envelope-new):hover .envelope-flap,.envelope:not(.envelope-new):focus-visible .envelope-flap{transform:rotateX(140deg);z-index:1;transition:transform .35s ease,z-index 0s .17s,background .15s ease}.envelope:not(.envelope-new):hover .envelope-flap:after,.envelope:not(.envelope-new):focus-visible .envelope-flap:after{background:var(--color-envelope-inside);transition:background 0s .17s}.envelope:not(.envelope-new):hover .envelope-letter,.envelope:not(.envelope-new):focus-visible .envelope-letter{transform:translateY(-19%);transition:transform .45s cubic-bezier(.34,1.6,.6,1) .22s}.envelope-new:hover .envelope-seal,.envelope-new:focus-visible .envelope-seal{transform:scale(1.12)}}.conversation-page .back-row,.notepad{width:100%;max-width:640px}.notepad{--notepad-top: calc(3.6rem + var(--line-gap));--line-offset: calc(var(--notepad-top) - .28rem);position:relative;--notepad-right: 1.2rem;--notepad-indent: .8rem;padding:var(--notepad-top) var(--notepad-right) var(--line-gap) calc(var(--paper-margin) + var(--notepad-indent));border:2px solid var(--color-line);border-radius:4px;box-shadow:0 6px 0 var(--color-line);line-height:var(--line-gap);text-align:left}.notepad p{margin:0}.notepad .hint-text{line-height:inherit}.notepad-title{position:absolute;top:.9rem;left:calc(var(--paper-margin) + .8rem);right:1.2rem;margin:0;display:flex;align-items:center;gap:.6rem;font-family:var(--font-heading);font-weight:700;font-size:2.6rem;line-height:1}.notepad-title-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notepad-title-link,.notepad-person-link{display:flex;align-items:center;min-width:0;color:inherit;text-decoration:none}.notepad-title-link{gap:.6rem}.notepad-person-link{display:inline-flex;gap:.4rem}.notepad-title-link:hover .notepad-title-name,.notepad-title-link:focus-visible .notepad-title-name,.notepad-person-link:hover strong,.notepad-person-link:focus-visible strong{text-decoration:underline;text-decoration-color:var(--color-accent);text-decoration-thickness:3px;text-underline-offset:3px}.notepad-title-link:focus-visible,.notepad-person-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:4px}.notepad .notepad-title-avatar{width:2.4rem;height:2.4rem;font-family:var(--font-body);font-size:1rem}.notepad-message p:first-child{display:flex;align-items:center;gap:.4rem;height:var(--line-gap)}.notepad .notepad-message-avatar{width:1.3rem;height:1.3rem;font-size:.65rem}.notepad-message .highlight{line-height:1.05}.notepad-messages{list-style:none;margin:0 calc(-1 * var(--notepad-right)) 0 calc(1px - var(--notepad-indent));padding:0 var(--notepad-right) 0 calc(var(--notepad-indent) - 1px);display:flex;flex-direction:column;gap:var(--line-gap);max-height:calc(15 * var(--line-gap));overflow-y:auto;overscroll-behavior:contain;background-color:var(--color-paper);background-image:repeating-linear-gradient(to bottom,transparent 0 calc(var(--line-gap) - 1px),var(--color-line) calc(var(--line-gap) - 1px) var(--line-gap));background-position:0 -.28rem;background-attachment:local;scrollbar-width:thin;scrollbar-color:var(--color-line) transparent}.notepad-messages::-webkit-scrollbar{width:6px}.notepad-messages::-webkit-scrollbar-thumb{background:var(--color-line);border-radius:3px}.notepad-message{overflow-wrap:anywhere}.notepad-reply{margin-top:var(--line-gap);height:var(--line-gap);display:flex;align-items:center;gap:.75rem}.notepad-reply input{flex:1;min-width:0;height:var(--line-gap);padding:0;border:0;background:transparent;font:inherit;line-height:var(--line-gap);color:var(--color-text)}.notepad-reply input::placeholder{color:var(--color-muted);font-family:var(--font-heading);font-size:1.2rem}.notepad-reply input:focus{outline:none;background:color-mix(in srgb,var(--color-accent) 16%,transparent)}.notepad-reply button{height:calc(var(--line-gap) - 2px);line-height:1}@media (max-width: 767px){.envelopes{--envelope-gap: .75rem;grid-template-columns:repeat(auto-fit,calc((100% - 2 * var(--envelope-gap)) / 3));justify-content:center;gap:1.4rem var(--envelope-gap);padding-top:.25rem}.conversation-page{flex:1}.conversation-page .notepad{margin-top:auto}.notepad{--paper-margin: 2.2rem;--notepad-right: .8rem;--notepad-indent: .6rem}.notepad-title{left:calc(var(--paper-margin) + .6rem);right:.8rem;font-size:2.2rem}}@media (prefers-reduced-motion: reduce){.envelope-flap,.envelope-letter,.envelope-seal{transition:none}}.app-main{flex:1;display:flex;flex-direction:column;gap:2.5rem;width:100%;max-width:1040px;margin:0 auto;padding:2rem 1.5rem 4rem}.app-section{display:flex;flex-direction:column;gap:1rem}.app-title{font-size:3rem;line-height:1.1}.section-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem}.filter-tabs{display:flex;flex-wrap:wrap;gap:.5rem}.demo-create-form{max-width:480px}.coming-soon{align-items:flex-start}@media (min-width: 900px){.app-nav{order:0;flex:1}}.profile-image{display:flex;flex-direction:column;align-items:center;gap:.75rem}.profile-avatar{width:128px;height:128px;border-radius:50%;object-fit:cover;border:2px solid var(--color-line);background:var(--color-white)}.profile-avatar-empty{display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:3.5rem;font-weight:700;background:var(--color-line)}.is-disabled{opacity:.6;pointer-events:none}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.profile-image label:focus-within{outline:2px solid var(--color-accent);outline-offset:2px}.page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.page-header .app-title{margin:0}.app-section-centered{gap:.75rem}.app-section-centered .page-header{justify-content:flex-start;gap:1.5rem}.app-section-centered .card-grid{width:100%}.app-section-centered .card-grid,.app-section-centered>.hint-text{margin-top:1.5rem}.app-section-centered .filter-select-row{width:100%}@media (max-width: 767px){.app-section>.app-title{text-align:center}.app-section .page-header,.app-section .filter-tabs{justify-content:center}.app-section-centered{align-items:center}.app-section-centered>.hint-text,.app-section-centered>.status-error{text-align:center}}.group-layout{display:flex;flex-direction:column;gap:1.5rem;width:100%}@media (min-width: 768px){.group-layout{flex-direction:row;align-items:flex-start}.group-layout>.sheet{flex:0 1 480px}.group-layout>.notepad{flex:1 1 0;min-width:0}}.sheet{width:100%;max-width:480px;text-align:left}.filter-select-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.filter-select-row select,.filter-select-row input{font-family:var(--font-body);font-size:var(--text-small);padding:.4rem .5rem;border:2px solid var(--color-line);border-radius:8px;background:var(--color-white);color:var(--color-text);width:100%}.filter-age-range{display:grid;grid-template-columns:auto 1fr 1fr;align-items:center;gap:.5rem;font-size:var(--text-small)}.filter-age-range input{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.filter-age-range input::-webkit-outer-spin-button,.filter-age-range input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.filter-select-row-compact{max-width:300px}.search-row{display:flex;gap:.5rem;width:100%;max-width:300px}.filter-search{flex:1;min-width:0;font-family:var(--font-body);font-size:var(--text-small);padding:.4rem .5rem;border:2px solid var(--color-line);border-radius:8px;background:var(--color-white);color:var(--color-text);width:100%}.sort-menu{position:relative}.sort-menu-button{display:grid;place-items:center;width:2.1rem;height:100%;min-height:2rem;padding:0;border:2px solid var(--color-line);border-radius:8px;background:var(--color-white);color:var(--color-text);cursor:pointer}.sort-menu-button:hover,.sort-menu-button:focus-visible,.sort-menu-button-open{border-color:var(--color-accent)}.sort-menu-list{position:absolute;right:0;top:calc(100% + .25rem);z-index:10;min-width:11rem;padding:.4rem;border:2px solid var(--color-line);border-radius:8px;background:var(--color-white);box-shadow:0 4px 12px #00000014}.sort-menu-group+.sort-menu-group{margin-top:.3rem;padding-top:.3rem;border-top:1px solid var(--color-line)}.sort-menu-heading{display:block;padding:.15rem .5rem;font-size:var(--text-small);color:var(--color-muted)}.sort-menu-item{display:block;width:100%;padding:.3rem .5rem;border:none;border-radius:6px;background:none;color:var(--color-text);font-family:var(--font-body);font-size:var(--text-small);text-align:left;cursor:pointer}.sort-menu-item:hover,.sort-menu-item:focus-visible{background:var(--color-accent-soft)}.sort-menu-item-selected{background:var(--color-accent);font-weight:600}.sort-menu-item-selected:hover,.sort-menu-item-selected:focus-visible{background:var(--color-accent)}.list-card{display:flex;flex-direction:column;gap:.75rem}.list-card-link{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;padding:0;border:none;background:none;color:inherit;text-align:left;cursor:pointer}.list-card-link .card-title,.list-card-link .card-subheading{margin:0;line-height:1.1}.list-card-link .card-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.list-card-description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;width:100%}.title-row .card-title{min-width:0}.title-row .status-pill{flex-shrink:0;margin-top:.35rem}.detail-view{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.detail-view .card-title,.detail-view .card-subheading{margin:0;line-height:1.1}.detail-view-section{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;margin-top:1rem}.form-wide{max-width:none}.form-compact{gap:.6rem}.form-compact label{font-size:var(--text-small)}.form-compact input,.form-compact select,.form-compact textarea{font-size:var(--text-small);padding:.3rem .5rem}.form-compact .field-large,.form-compact .textarea-count textarea{font-size:var(--text-body);padding:.55rem .75rem}.form-compact .textarea-count textarea{padding-bottom:1.75rem}.form-compact button{font-size:var(--text-small);padding:.3rem .7rem;margin-top:0}.form-field{display:flex;flex-direction:column;gap:.25rem;min-width:0}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.5rem}.location-picker{display:flex;flex-direction:column;gap:.4rem}.location-picker-label{margin:0;font-weight:600}.location-picker-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.location-picker-results{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;margin:0;padding:0;list-style:none}.location-picker-map{width:100%;height:240px;border:1.5px solid var(--color-text);border-radius:8px;overflow:hidden;background:var(--color-accent-soft)}.form-actions{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.person-list{width:100%;margin-top:.5rem}.person-list ul{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.person-list-item{display:flex;align-items:center;gap:.75rem;color:var(--color-text);text-decoration:none;font-weight:700}.person-list-item:hover span:not(.hint-text):not(.person-list-avatar){text-decoration:underline}.person-list-marker .person-list-item>span:first-child{padding:0 .15em;margin:0 -.15em}.person-list-marker .person-list-item:hover span:not(.hint-text):not(.person-list-avatar),.person-list-marker .person-list-item:focus-visible span:not(.hint-text):not(.person-list-avatar){text-decoration:none;background:linear-gradient(transparent 58%,var(--color-accent) 58%,var(--color-accent) 88%,transparent 88%)}.person-list-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-line);object-fit:cover;flex-shrink:0}.person-list-compact{margin-top:1rem}.person-list-compact>div+div{margin-top:.75rem}.person-list-compact ul{gap:.25rem}.person-list-compact .person-list-item{gap:.5rem;font-size:var(--text-small)}.person-list-compact .person-list-avatar{width:24px;height:24px}.person-list-compact .card-avatar-initials{font-size:.75rem}.modal{width:min(92vw,420px);max-width:none;max-height:85vh;padding:0;text-align:left}.modal::backdrop{background:#1a1a1a73}.modal-content{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem;max-height:calc(85vh - 4px);box-sizing:border-box}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.modal-scroll{overflow-y:auto;min-height:0}label.person-list-item{cursor:pointer}.hub{display:flex;flex-direction:column;gap:2.5rem;width:100%;max-width:960px;margin:0 auto}.hub-hero{display:flex;flex-direction:column;gap:.75rem}.hub-title{font-family:var(--font-heading);font-size:clamp(3rem,9vw,var(--text-hero));line-height:1.05;margin:0}.highlight{background:linear-gradient(transparent 58%,var(--color-accent) 58%,var(--color-accent) 88%,transparent 88%);padding:0 .15em}.hub-lead{font-size:1.25rem;line-height:1.5;max-width:36rem;margin:0}.hub-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem}.hub-card{display:flex;flex-direction:column;gap:.75rem;padding:1.75rem;background:var(--color-white);border:2px solid var(--color-line);border-radius:8px;color:var(--color-text);text-decoration:none}.hub-card:focus-visible{outline:none}.hub-card-title{font-family:var(--font-heading);font-size:var(--text-card-title);line-height:1.1;margin:0}.hub-card-text{margin:0;flex-grow:1}.hub-card-action{align-self:flex-start}.profile-layout{display:flex;flex-direction:column;gap:2.5rem}@media (min-width: 900px){.profile-layout{flex-direction:row;align-items:flex-start;justify-content:center;gap:2rem}.profile-layout>.card-wide{margin:0}}.explorer{display:flex;flex-direction:column;gap:1.25rem;width:100%;text-align:left}.explorer h2,.explorer .card-title{margin:0}.explorer .explorer-heading{margin:0 0 .5rem;font-size:var(--text-subheading)}.explorer .explorer-search{width:100%;box-sizing:border-box;font-family:var(--font-body);font-size:var(--text-body);padding:.7rem .85rem;border:2px solid var(--color-line);border-radius:8px;background:var(--color-white);color:var(--color-text)}.explorer .explorer-search::placeholder{color:var(--color-muted)}.explorer .explorer-search:focus-visible{outline:none;border-color:var(--color-accent)}.explorer .explorer-box{display:flex;flex-direction:column;gap:.5rem;padding:.75rem 1rem;border:2px solid var(--color-line);border-radius:4px}.explorer .explorer-panel{flex-basis:100%}.explorer .explorer-rows{margin:0;padding:0;list-style:none}.explorer .explorer-row{display:flex;align-items:center;gap:.75rem;padding:.35rem 0;border-bottom:2px solid var(--color-bg)}.explorer .explorer-row:last-child{border-bottom:none}.explorer .explorer-name{flex:1;display:flex;flex-direction:column;min-height:44px;justify-content:center;font-size:var(--text-body)}.explorer .explorer-drill{flex:1;display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 .25rem;border:none;border-radius:4px;background:none;color:var(--color-text);font-family:var(--font-body);font-size:var(--text-body);text-transform:none;letter-spacing:normal;text-align:left;cursor:pointer}.explorer .explorer-drill:hover,.explorer .explorer-drill:focus-visible{background:var(--color-bg);outline:none;opacity:1}.explorer .explorer-add{flex:none;width:44px;height:44px;padding:0;border:2px solid var(--color-line);border-radius:999px;background:var(--color-white);color:var(--color-text);font-family:var(--font-body);font-size:1.3rem;line-height:1;text-transform:none;cursor:pointer}.explorer .explorer-add:hover,.explorer .explorer-add:focus-visible{border-color:var(--color-accent);outline:none;opacity:1}.explorer .explorer-add-on{border-color:var(--color-accent);background:var(--color-accent);font-size:1.05rem;font-weight:700}.explorer .tag{text-transform:none;letter-spacing:normal}.explorer .explorer-area-open{border-color:var(--color-accent);font-weight:700}.explorer .explorer-arrow{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--color-text);transition:transform .15s ease}.explorer .explorer-toggle{display:inline-flex;align-items:center;gap:.5rem;align-self:flex-start}.explorer .explorer-area-open .explorer-arrow,.explorer .explorer-toggle-open .explorer-arrow{transform:rotate(180deg)}@media (prefers-reduced-motion: reduce){.explorer .explorer-arrow{transition:none}}.explorer .explorer-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-size:var(--text-small)}.explorer .explorer-crumb{display:inline-flex;align-items:center;gap:.35rem}.explorer .explorer-crumb button{padding:0 0 1px;border:none;border-bottom:2px solid var(--color-accent);border-radius:0;background:none;color:var(--color-text);font-family:var(--font-body);font-size:var(--text-small);font-weight:700;text-transform:none;letter-spacing:normal;cursor:pointer}.explorer .explorer-crumb-current{font-weight:700}
