:root{
  --paper:#fbfaf7; --surface:#fff; --ink:#222638; --muted:#636a7c; --line:#dcd9e8;
  --purple:#6f52c7; --purple-dark:#5135a6; --lavender:#eee9ff; --mint:#e5f6ee;
  --danger:#a43f37; --danger-bg:#fff2f1; --success:#27745b; --success-bg:#effaf4;
  --warn:#795b15; --warn-bg:#fff9e8; --radius:18px; --shadow:0 14px 34px rgba(48,41,82,.09);
  --max:1120px; --font-size:16px;
}
*{box-sizing:border-box}html{font-size:var(--font-size);scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.skip-link{position:fixed;top:-5rem;left:1rem;background:var(--ink);color:#fff;padding:.7rem .9rem;border-radius:.7rem;z-index:100}.skip-link:focus{top:1rem}button,input,textarea,select{font:inherit}button{color:inherit}.hidden{display:none!important}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(111,82,199,.34);outline-offset:3px}.announcement{background:#282d42;color:#fff;text-align:center;padding:.46rem 1rem;font-size:.83rem}.announcement strong{color:#dacdff}.nav-shell{position:sticky;top:0;z-index:10;background:rgba(251,250,247,.94);border-bottom:1px solid rgba(34,38,56,.08);backdrop-filter:blur(14px)}.nav{max-width:var(--max);margin:auto;min-height:4.5rem;padding:.68rem 1rem;display:flex;align-items:center;gap:.8rem;justify-content:space-between}.brand{border:0;background:none;padding:0;display:flex;align-items:center;gap:.58rem;font-weight:850;letter-spacing:-.04em;font-size:1.48rem;cursor:pointer}.brand-mark{width:2.1rem;height:2.1rem;border-radius:.75rem;background:var(--purple);color:white;display:grid;place-items:center;font-size:1.5rem;line-height:1;box-shadow:0 6px 15px rgba(111,82,199,.22)}.nav-links,.nav-right{display:flex;align-items:center;gap:.28rem}.nav-link,.icon-button,.account-button,.lang-select{border:1px solid transparent;background:transparent;border-radius:.7rem;cursor:pointer;min-height:2.35rem}.nav-link{padding:.45rem .66rem;color:var(--muted)}.nav-link:hover,.nav-link.active{background:var(--lavender);color:var(--purple-dark)}.icon-button{width:2.35rem;font-size:1rem}.icon-button:hover,.account-button:hover{background:#f1eff8}.account-button{padding:.22rem .55rem .22rem .25rem;display:flex;align-items:center;gap:.45rem}.avatar{width:2rem;height:2rem;border-radius:.7rem;background:var(--purple);color:#fff;font-weight:850;display:grid;place-items:center;overflow:hidden;flex:0 0 auto}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.large{width:5.2rem;height:5.2rem;border-radius:1.3rem;font-size:1.65rem}.avatar.card{width:3.2rem;height:3.2rem;border-radius:1rem;font-size:1.1rem}.lang-select{background:white;border-color:var(--line);padding:0 .45rem;font-weight:750;color:var(--ink)}.mobile-toggle{display:none}.mobile-nav{display:none;border-top:1px solid var(--line);padding:.6rem 1rem .85rem;background:var(--paper)}.mobile-nav.open{display:grid;gap:.35rem}.mobile-nav .nav-link{width:100%;text-align:left}.page{min-height:calc(100vh - 5rem)}.container{max-width:var(--max);margin:auto;padding:0 1rem}.section{padding:3.8rem 0}.section-title{font-size:clamp(2rem,4.3vw,3.4rem);line-height:1.05;letter-spacing:-.06em;margin:.35rem 0 0}.eyebrow{color:var(--purple);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;font-weight:850}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 5px 16px rgba(48,41,82,.035)}.hero{overflow:hidden;position:relative}.hero:before,.hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none;opacity:.8}.hero:before{width:29rem;height:29rem;background:#e9e3ff;left:-15rem;top:-16rem}.hero:after{width:15rem;height:15rem;background:#def3e9;right:3%;top:6rem}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center;min-height:34rem}.hero h1{font-size:clamp(2.9rem,6vw,4.8rem);line-height:.99;letter-spacing:-.07em;margin:1rem 0}.hero h1 em{font-style:normal;color:var(--purple)}.hero p{max-width:38rem;color:var(--muted);font-size:1.1rem;line-height:1.65}.hero-actions,.row-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.45rem}.btn{border:0;border-radius:999px;padding:.72rem 1rem;background:var(--purple);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 7px 16px rgba(111,82,199,.18)}.btn:hover{background:var(--purple-dark)}.btn.secondary{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none}.btn.ghost{background:transparent;color:var(--purple);box-shadow:none}.btn.danger{background:var(--danger-bg);color:var(--danger);box-shadow:none;border:1px solid #f4c9c5}.btn.small{font-size:.85rem;padding:.55rem .75rem}.btn:disabled{opacity:.55;cursor:not-allowed}.trust{margin-top:1.25rem;display:flex;gap:1rem;flex-wrap:wrap;color:var(--muted);font-size:.86rem}.trust span:before{content:"•";color:#3ea07a;margin-right:.45rem}.hero-preview{padding:1rem;transform:rotate(.7deg);max-width:25rem;margin:auto;box-shadow:var(--shadow)}.preview-art{height:11rem;border-radius:1rem;background:linear-gradient(135deg,#7258c8 0 54%,#f4e3be 54%);position:relative;overflow:hidden}.preview-art:after{content:"";position:absolute;width:7rem;height:7rem;border-radius:50%;background:#fff9e9;right:-1.8rem;bottom:-2.2rem}.preview-person{position:absolute;width:7.3rem;height:7.3rem;border-radius:50% 50% 38% 38%;background:#d8926e;left:38%;bottom:-2.2rem;box-shadow:0 -1.6rem 0 1rem #2c2438}.preview-copy{padding:.9rem .1rem .1rem}.preview-copy h3{margin:0;font-size:1.25rem}.preview-copy p{font-size:.86rem;margin:.2rem 0 .65rem}.pill{display:inline-flex;align-items:center;gap:.25rem;padding:.32rem .55rem;background:#f1edff;color:#604ea2;border-radius:99px;font-size:.75rem;font-weight:750}.pill.mint{background:var(--mint);color:#287054}.pill.gray{background:#f0f1f5;color:#5b6172}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.8rem}.feature{padding:1.15rem}.feature h3{margin:.2rem 0 .35rem;font-size:1rem}.feature p{margin:0;color:var(--muted);font-size:.9rem}.auth-wrap{display:grid;place-items:center;min-height:calc(100vh - 6rem);padding:2rem 1rem}.auth-card{width:min(100%,31rem);padding:1.55rem}.auth-card h1{margin:.1rem 0 .35rem;letter-spacing:-.04em}.form-grid{display:grid;gap:1rem}.field{display:grid;gap:.35rem}.field label{font-size:.87rem;font-weight:760}.input,.textarea,.select{width:100%;border:1px solid var(--line);border-radius:.75rem;background:#fff;color:var(--ink);padding:.72rem .78rem}.textarea{min-height:7.3rem;resize:vertical}.input:focus,.textarea:focus,.select:focus{border-color:var(--purple)}.password-row{display:grid;grid-template-columns:1fr auto;align-items:stretch}.password-row .input{border-radius:.75rem 0 0 .75rem}.password-row button{border:1px solid var(--line);border-left:0;background:#faf9fd;border-radius:0 .75rem .75rem 0;padding:0 .75rem;cursor:pointer;font-size:.83rem;font-weight:750}.form-hint{font-size:.79rem;color:var(--muted);margin:0}.notice{border-radius:.8rem;padding:.8rem .9rem;font-size:.88rem;line-height:1.45}.notice.info{background:#f7f5ff;border:1px solid #ddd5ff;color:#554b75}.notice.warning{background:var(--warn-bg);border:1px solid #eaddae;color:var(--warn)}.notice.success{background:var(--success-bg);border:1px solid #c5e7d5;color:var(--success)}.notice.error{background:var(--danger-bg);border:1px solid #f1c9c5;color:var(--danger)}.check-row{display:flex;align-items:flex-start;gap:.5rem;font-size:.88rem;color:var(--muted)}.setup{padding:1rem}.choice-grid{display:flex;flex-wrap:wrap;gap:.45rem}.choice{position:relative}.choice input{position:absolute;opacity:0;pointer-events:none}.choice span{display:block;border:1px solid var(--line);border-radius:99px;background:#fff;padding:.43rem .62rem;font-size:.82rem;cursor:pointer}.choice input:checked+span{border-color:#b5a6eb;background:var(--lavender);color:var(--purple-dark);font-weight:760}.custom-row{display:flex;gap:.55rem}.layout{display:grid;grid-template-columns:17rem minmax(0,1fr);gap:1.2rem;padding:1.6rem 0 3rem}.sidebar{padding:1rem;height:max-content;position:sticky;top:5.3rem}.side-link{width:100%;border:0;background:transparent;text-align:left;border-radius:.7rem;padding:.62rem .65rem;cursor:pointer;color:var(--muted)}.side-link:hover,.side-link.active{background:var(--lavender);color:var(--purple-dark)}.content-card{padding:1.25rem}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.page-heading h1{margin:.15rem 0;font-size:2rem;letter-spacing:-.05em}.filters{padding:1rem;margin-bottom:1rem}.filters-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.filter-group{display:grid;gap:.35rem}.filter-group label{font-size:.8rem;font-weight:780;color:var(--muted)}.filter-inline{display:flex;gap:.45rem}.filter-inline .input{min-width:0}.results{display:grid;gap:.85rem}.profile-card{display:grid;grid-template-columns:auto 1fr auto;gap:.85rem;align-items:center;padding:1rem;cursor:pointer}.profile-card:hover{border-color:#bdb1ea}.profile-card h3{margin:0;font-size:1.05rem}.profile-card p{margin:.12rem 0;color:var(--muted);font-size:.86rem}.tag-row{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.45rem}.profile-hero{display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center;padding:1.3rem}.profile-hero h1{margin:0;font-size:2rem;letter-spacing:-.05em}.profile-hero p{margin:.15rem 0;color:var(--muted)}.profile-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:1rem;margin-top:1rem}.profile-section{padding:1.15rem}.profile-section h2{font-size:1.05rem;margin:0 0 .65rem}.profile-section p{margin:0;color:var(--ink-soft)}.empty{padding:1.8rem;text-align:center;color:var(--muted)}.dialog-backdrop{position:fixed;inset:0;background:rgba(25,27,38,.45);z-index:40;display:grid;place-items:center;padding:1rem}.dialog{background:#fff;border-radius:1.1rem;box-shadow:var(--shadow);width:min(100%,34rem);max-height:90vh;overflow:auto;padding:1.2rem}.dialog h2{margin:.1rem 0 .55rem}.dialog-actions{display:flex;gap:.6rem;justify-content:flex-end;flex-wrap:wrap;margin-top:1rem}.message-layout{display:grid;grid-template-columns:16rem minmax(0,1fr);height:calc(100vh - 9rem);min-height:34rem}.thread-list{border-right:1px solid var(--line);overflow:auto}.thread{width:100%;display:flex;gap:.65rem;text-align:left;border:0;background:#fff;padding:.8rem;cursor:pointer;border-bottom:1px solid #f0eef4}.thread:hover,.thread.active{background:#f8f6ff}.thread strong,.thread small{display:block}.thread small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat{display:grid;grid-template-rows:auto 1fr auto;min-width:0}.chat-head{padding:1rem;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:.5rem;align-items:center}.chat-body{padding:1rem;overflow:auto;background:#fcfbfe}.bubble{max-width:min(75%,34rem);padding:.65rem .75rem;border-radius:1rem 1rem 1rem .25rem;background:#fff;border:1px solid var(--line);margin-bottom:.6rem}.bubble.mine{margin-left:auto;background:var(--lavender);border-color:#ddd3ff;border-radius:1rem 1rem .25rem 1rem}.bubble small{display:block;margin-top:.25rem;color:var(--muted);font-size:.7rem}.composer{display:flex;gap:.6rem;padding:.75rem;border-top:1px solid var(--line)}.composer .input{flex:1}.request-card{padding:1rem;margin-top:.8rem}.request-card h3{margin:0}.request-card p{margin:.4rem 0;color:var(--muted)}.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.setting-card{padding:1rem}.setting-card h3{margin:.1rem 0 .5rem}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:.8rem;padding:.72rem 0;border-top:1px solid #eeecf3}.setting-row:first-of-type{border-top:0}.switch{position:relative;width:2.8rem;height:1.6rem;flex:0 0 auto}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;inset:0;border-radius:99px;background:#c9c8d0;cursor:pointer}.slider:before{content:"";position:absolute;width:1.16rem;height:1.16rem;left:.22rem;top:.22rem;border-radius:50%;background:#fff;transition:.18s}.switch input:checked+.slider{background:var(--purple)}.switch input:checked+.slider:before{transform:translateX(1.18rem)}.safety-list{display:grid;gap:.8rem}.safety-item{padding:1rem}.safety-item h3{margin:0 0 .35rem}.safety-item p{margin:0;color:var(--muted);font-size:.9rem}.toast{position:fixed;bottom:1rem;left:50%;transform:translate(-50%,130%);z-index:60;min-width:min(90vw,23rem);background:#282d42;color:#fff;padding:.8rem 1rem;border-radius:.85rem;box-shadow:var(--shadow);transition:.24s}.toast.show{transform:translate(-50%,0)}
body.calm .hero:before,body.calm .hero:after{display:none}body.calm .hero-preview{transform:none;box-shadow:none}body.calm *{animation:none!important;transition:none!important}body.large-text{--font-size:18px}body.high-contrast{--ink:#111;--muted:#353535;--line:#6c6c6c}
@media(max-width:800px){.nav-links{display:none}.mobile-toggle{display:block}.nav-right .account-button span{display:none}.hero-grid,.profile-grid{grid-template-columns:1fr}.hero-preview{margin-top:1rem}.feature-grid{grid-template-columns:1fr}.layout{grid-template-columns:1fr}.sidebar{position:static;display:flex;gap:.25rem;overflow:auto;padding:.55rem}.side-link{width:auto;white-space:nowrap}.filters-grid,.settings-grid{grid-template-columns:1fr 1fr}.message-layout{grid-template-columns:1fr;height:auto}.thread-list{border-right:0;border-bottom:1px solid var(--line);max-height:13rem}.chat{min-height:31rem}.profile-hero{grid-template-columns:auto 1fr}.profile-hero>.btn{grid-column:1/-1}.section{padding:2.7rem 0}.hero-grid{min-height:auto;padding:3rem 0}.profile-card{grid-template-columns:auto 1fr}.profile-card .btn{grid-column:1/-1;justify-self:start}}
@media(max-width:520px){.nav{padding:.58rem .75rem}.brand{font-size:1.25rem}.announcement{font-size:.75rem}.container{padding:0 .75rem}.filters-grid{grid-template-columns:1fr}.filter-inline{display:grid;grid-template-columns:1fr 1fr}.profile-hero{padding:1rem}.profile-card{padding:.8rem}.message-layout{margin:0 -.75rem;border-radius:0}.chat-head{padding:.75rem}.composer{padding:.6rem}.composer .btn{padding:.55rem .72rem}.custom-row{flex-direction:column}.custom-row .btn{width:100%}.page-heading{display:block}.page-heading .btn{margin-top:.6rem}}
