:root{
  color-scheme:light;
  --paper:#F8F2EA;
  --cream:#FFF8F1;
  --ink:#392438;
  --plum:#4A2F5A;
  --muted:#766575;
  --line:#E9DCE7;
  --peach:#F6C7AF;
  --rose:#EBB8DD;
  --lavender:#C6B3FF;
  --violet:#7B61FF;
  --shadow:0 12px 40px rgba(67,40,73,.075);
  --serif:Georgia,'Times New Roman',serif;
  --sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif
}
*{box-sizing:border-box}
html{min-height:100%;background:var(--paper);scroll-behavior:smooth}
body{
  min-height:100dvh;margin:0;color:var(--ink);
  font-family:var(--sans);font-size:15px;line-height:1.55;
  background:
    radial-gradient(ellipse 440px 340px at 85% 0%,rgba(206,171,255,.24),transparent 80%),
    radial-gradient(ellipse 420px 270px at 4% 22%,rgba(254,199,171,.21),transparent 80%),
    var(--paper);
  -webkit-font-smoothing:antialiased
}
button{font:inherit;cursor:pointer}
button:focus-visible{outline:3px solid #7B61FF;outline-offset:4px}
.app-shell{
  position:relative;width:100%;max-width:630px;min-height:100dvh;
  margin:auto;padding:0 22px calc(120px + env(safe-area-inset-bottom))
}
.topbar{
  height:74px;display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid rgba(124,93,117,.12);gap:8px
}
.brand{display:flex;align-items:center;gap:8px;white-space:nowrap;letter-spacing:.13em;font-size:11px;font-weight:500;color:var(--plum)}
.brand strong{font-family:var(--serif);font-size:18px;letter-spacing:0;font-weight:400;margin-left:3px}
.brand-icon{width:28px;height:34px;object-fit:contain}
.prototype-chip{
  display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid rgba(127,98,123,.24);
  border-radius:99px;background:rgba(255,255,255,.44);color:#876B84;font-size:9px;font-weight:650;letter-spacing:.12em;
  white-space:nowrap
}
.status-dot{width:5px;height:5px;background:#BE90AF;border-radius:50%}
.screen{animation:fadeUp .28s ease both}
.screen[hidden]{display:none!important}
@keyframes fadeUp{from{opacity:.55;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
.eyebrow{font-size:10px;color:#A57996;letter-spacing:.16em;font-weight:700;margin:0 0 10px}
h1,h2,h3,p{overflow-wrap:break-word}
h1,h2,h3{margin-top:0}
h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em}
.hero{
  position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;
  padding:17px 4px 28px;min-height:385px;text-align:center;overflow:hidden
}
.hero-light{
  position:absolute;z-index:-2;inset:0;
  background:
    radial-gradient(ellipse 180px 170px at 50% 36%,rgba(255,255,245,.98) 0%,rgba(255,239,223,.53) 45%,transparent 100%),
    radial-gradient(ellipse 215px 180px at 15% 22%,rgba(236,197,228,.22),transparent 90%),
    radial-gradient(ellipse 230px 170px at 87% 57%,rgba(196,179,255,.29),transparent 95%);
}
.hero-halo{
  position:absolute;z-index:-1;top:28px;left:50%;transform:translateX(-50%);
  width:min(89%,410px);height:292px;border:1.4px solid rgba(255,255,250,.92);
  border-bottom:0;border-radius:50% 50% 0 0/65% 65% 0 0;
  box-shadow:0 -2px 19px rgba(255,251,224,.78),inset 0 2px 20px rgba(251,235,244,.17);
  pointer-events:none
}
.hero-emblem{width:170px;height:182px;object-fit:contain;display:block;margin-top:11px;filter:drop-shadow(0 5px 12px rgba(146,105,174,.13))}
.hero-wordmark{display:flex;flex-direction:column;align-items:center;gap:0;margin:1px 0 0;color:#362139}
.hero-wordmark span{font-family:var(--sans);letter-spacing:.29em;font-size:clamp(15px,4.4vw,22px);font-weight:450;line-height:1.5;margin-left:.29em}
.hero-wordmark strong{font-family:var(--serif);font-size:clamp(76px,20vw,106px);letter-spacing:.065em;line-height:.97;font-weight:400;margin-left:.065em;
  background:linear-gradient(110deg,#2D2035 12%,#573145 43%,#C17C74 61%,#3E2445 88%);
  color:transparent;-webkit-background-clip:text;background-clip:text
}
.hero-signature{
  margin:19px 0 0;letter-spacing:.12em;font-size:clamp(8px,2.15vw,10px);font-weight:550;color:#695064;
  white-space:nowrap
}
.hero-signature b{font-weight:normal;color:#C38B9C;margin:0 2px}
.hero-message{
  position:relative;border-top:1px solid rgba(127,98,123,.12);padding:25px 4px 10px;margin-top:0
}
.hero-message h2{font-size:clamp(27px,7vw,35px);line-height:1.22;margin:0 0 14px}
.hero-message>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.75;margin:0}
.date-line{display:flex;align-items:center;gap:9px;padding:23px 2px 14px;font-size:12px;color:#876A82;text-transform:capitalize}
.date-star{color:#BD83B3;font-size:22px;line-height:1}
.features{display:flex;flex-direction:column;gap:13px}
.feature-card{
  position:relative;border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.7);
  background:rgba(255,253,250,.74);box-shadow:var(--shadow)
}
.reading-card{
  padding:23px 24px 18px;
  background:
    radial-gradient(ellipse 240px 160px at 95% 8%,rgba(197,172,255,.46),transparent 82%),
    linear-gradient(122deg,#FFF7EF,#F6E7F1 59%,#EDE6FC)
}
.feature-card-top{display:flex;align-items:center;justify-content:space-between}
.feature-overline{font-size:9px;letter-spacing:.15em;font-weight:680;color:#936D8D}
.feature-glyph{color:#A67CCC;font-size:28px;line-height:1}
.feature-card h3{font-family:var(--serif);font-weight:400;letter-spacing:-.02em}
.reading-card h3{font-size:28px;line-height:1.15;margin:8px 0 8px}
.feature-card p{font-size:13px;color:#6C596A;line-height:1.6;margin:0 0 14px}
.feature-link{
  display:flex;align-items:center;justify-content:space-between;gap:9px;width:100%;
  padding:13px 0 1px;border:0;border-top:1px solid rgba(112,77,99,.17);background:transparent;
  color:#68466B;font-weight:650;font-size:12px;text-align:left
}
.feature-link span{font-size:19px;font-weight:400}
.feature-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:13px}
.mini-card{display:flex;flex-direction:column;min-height:227px;padding:17px 16px 14px}
.mini-card h3{font-size:21px;line-height:1.2;margin:10px 0 8px}
.mini-card p{font-size:12px;flex:1}
.mini-glyph{height:39px;width:39px;display:grid;place-items:center;border-radius:14px;background:#FAEDE9;color:#9E608B;font-size:22px}
.tools-card{background:linear-gradient(145deg,rgba(255,254,250,.92),rgba(225,208,255,.55))}
.tools-card .mini-glyph{background:#EDE2FF;color:#785FD3}
.story{padding:43px 4px 32px}
.story h2{font-size:clamp(28px,7.8vw,37px);line-height:1.19;margin:0 0 17px}
.story h3{font-family:var(--serif);font-size:clamp(22px,6vw,29px);line-height:1.22;font-weight:400;margin:27px 0 15px;color:#4C3052}
.story p{font-size:14px;line-height:1.77;color:var(--muted);margin:0 0 13px}
.story .story-method{color:#958391;font-size:13px;margin-top:20px}
.story-signature{margin-top:28px;padding-top:21px;border-top:1px solid var(--line);
  font-family:var(--serif);font-size:clamp(18px,5vw,25px);color:#56365A;text-align:center;line-height:1.35}
.story-signature span{color:#9672B6}
.trial-note{display:flex;align-items:start;gap:14px;padding:20px;border-radius:20px;
  background:linear-gradient(110deg,#F1E4F4,#FBE7E5 52%,#EFE5FF);border:1px solid rgba(179,145,179,.19)}
.trial-symbol{font-size:25px;color:#9566A9;line-height:1}
.trial-note strong{display:block;font-family:var(--serif);font-size:20px;font-weight:400;margin-bottom:6px}
.trial-note p{margin:0;font-size:12px;line-height:1.6;color:#786579}
.inner-header{padding:40px 3px 7px}
.inner-header h1{font-size:clamp(36px,10vw,54px);line-height:1.12;margin:0}
.inner-header h1 em{font-weight:400;color:#9B74B4}
.inner-intro{color:var(--muted);font-size:14px;line-height:1.7;max-width:450px;margin:15px 0 0}
.subpage-emblem{position:relative;margin:13px auto 7px;display:flex;justify-content:center}
.subpage-emblem::before{content:"";position:absolute;inset:9% 25%;border-radius:100%;background:radial-gradient(ellipse,rgba(210,193,255,.4),transparent 72%);z-index:-1}
.empty-state,.profile-card,.tools-feature{border-radius:23px;background:rgba(255,252,249,.8);border:1px solid #EFE3EA;box-shadow:var(--shadow);padding:28px 23px;margin-top:21px}
.empty-state{text-align:center}
.empty-glyph{font-size:34px;color:#B792C8}
.empty-state h2,.profile-card h2,.tools-feature h2{font-size:26px;margin:8px 0 10px}
.empty-state p,.profile-card p,.tools-feature p{font-size:13px;line-height:1.75;color:var(--muted);margin:0 0 16px}
.status-pill{display:inline-flex;padding:7px 11px;border-radius:99px;background:#F5E8F2;border:1px solid #E9D7E5;font-size:11px;color:#7B5A80;font-weight:600}
.info-strip{border-left:2px solid #C3A3CF;margin:22px 4px 0;padding:7px 0 7px 16px;color:var(--muted);font-size:12px;line-height:1.65}
.chat-panel{margin-top:28px;border:1px solid #E8DCE7;background:rgba(255,252,249,.87);border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}
.chat-head{padding:15px 17px;display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--line)}
.chat-head img{object-fit:contain}
.chat-head strong{display:block;font-family:var(--serif);font-size:21px;font-weight:400}
.chat-head small{display:block;font-size:11px;color:var(--muted)}
.chat-offline{margin-left:auto;padding:5px 8px;border:1px solid #E3D3E2;color:#987E97;font-size:10px;border-radius:99px;white-space:nowrap}
.chat-content{padding:25px 19px 40px;background:radial-gradient(ellipse at 85% 4%,rgba(217,188,255,.24),transparent 65%)}
.chat-bubble{background:#FAF0F6;border:1px solid #EEE1ED;padding:16px 17px;border-radius:19px 19px 19px 4px;max-width:91%;color:#5B4161}
.chat-bubble strong{font-size:12px}
.chat-bubble p{font-size:13px;line-height:1.6;margin:7px 0 0}
.chat-disabled{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:18px;color:#A38FA1;font-size:12px;background:#F8F2F5}
.privacy-hint{font-size:12px;line-height:1.65;color:var(--muted);padding:7px 3px}
.tools-feature{background:radial-gradient(ellipse at 100% 10%,rgba(193,168,255,.4),transparent 70%),linear-gradient(120deg,#FFFAF4,#F5E5F7)}
.tools-spark{font-size:38px;color:#9876C9}
.profile-icon{display:inline-grid;place-items:center;width:45px;height:45px;border-radius:50%;background:#F0E4FC;color:#9F79D8;font-size:24px}
.profile-card.smaller{background:rgba(255,253,250,.5);box-shadow:none}
.profile-card.smaller h2{font-size:22px}
.bottom-nav{
  position:fixed;z-index:25;bottom:calc(12px + env(safe-area-inset-bottom));
  left:50%;transform:translateX(-50%);width:min(calc(100% - 22px),590px);
  border:1px solid rgba(241,225,236,.94);border-radius:24px;
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;
  padding:10px 5px;background:rgba(255,250,251,.96);
  box-shadow:0 9px 35px rgba(64,38,67,.16);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)
}
.nav-item{padding:3px 0 2px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border:0;border-radius:14px;background:none;color:#877889;font-size:10px;min-width:0;min-height:46px}
.nav-item.selected{color:#865ABA;background:#F0E5FB;font-weight:700}
.nav-icon{font-family:var(--serif);font-size:24px;line-height:1.15}
@media(max-width:355px){
  .app-shell{padding-left:16px;padding-right:16px}
  .hero-emblem{width:156px;height:168px}
  .hero{min-height:370px}
  .mini-card{padding-left:12px;padding-right:12px}
  .mini-card h3{font-size:19px}
  .brand strong{font-size:16px}
  .prototype-chip{font-size:8px}
}
@media(min-width:650px){
  .app-shell{border-left:1px solid rgba(100,65,94,.08);border-right:1px solid rgba(100,65,94,.08);background:rgba(255,255,255,.1);padding-left:39px;padding-right:39px}
  .hero{min-height:408px}
}
@media(prefers-reduced-motion:reduce){.screen{animation:none}html{scroll-behavior:auto}}
