@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-opsz-italic-DxWqP7Ku.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-opsz-italic-CGbN9UgK.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-opsz-italic-lSdLDfvT.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-opsz-normal-Czevyj-6.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-opsz-normal-CJcjJNj7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-opsz-normal-DihXLNYH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Quicksand Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/quicksand-vietnamese-wght-normal-ei70gACF.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Quicksand Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/quicksand-latin-ext-wght-normal-CrJ75Ewg.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Quicksand Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/quicksand-latin-wght-normal-Buj9m_3d.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--cream:#fff7ef;--cream-deep:#ffe8d4;--paper:#fff;--navy:#1a2b4a;--navy-soft:#3d4f71;--navy-muted:#6b7a96;--coral:#ff6b4a;--coral-deep:#e8502f;--mint:#a8e6cf;--mint-deep:#7dd3bd;--yellow:#ffd166;--lavender:#d8cbff;--rule:#f2e3d0;--shadow-sm:0 2px 8px #1a2b4a0f;--shadow-md:0 8px 24px #1a2b4a14;--shadow-lg:0 20px 48px #1a2b4a1f;--max-w:68rem;--radius:1.25rem;--radius-pill:999px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Quicksand Variable,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{background:var(--cream);min-height:100%;color:var(--navy);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;line-height:1.6}body{background-image:radial-gradient(80% 50% at 15% -10%,#ff6b4a14,#0000 60%),radial-gradient(70% 40% at 110% 30%,#7dd3bd1f,#0000 60%);background-attachment:fixed}h1,h2,h3{letter-spacing:-.01em;color:var(--navy);font-family:Fraunces Variable,Georgia,Times New Roman,serif;font-weight:600}a{color:var(--coral-deep);font-weight:600;text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px}.page{flex-direction:column;min-height:100vh;display:flex}.container{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 1.5rem}.site-header{-webkit-backdrop-filter:blur(10px);z-index:10;border-bottom:1px solid var(--rule);background:#fff7efd9;position:sticky;top:0}.nav{justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.5rem;display:flex}.brand{color:var(--navy);letter-spacing:-.01em;align-items:center;gap:.55rem;font-family:Fraunces Variable,Georgia,serif;font-size:1.15rem;font-weight:600;display:inline-flex}.brand:hover{text-decoration:none}.brand-mark{background:linear-gradient(135deg, var(--coral), var(--yellow));width:2rem;height:2rem;color:var(--paper);box-shadow:var(--shadow-sm);border-radius:50%;place-items:center;font-size:1rem;line-height:1;display:inline-grid}.site-header nav{align-items:center;gap:1.5rem;font-size:.98rem;font-weight:600;display:flex}.site-header nav a{color:var(--navy-muted);padding:.25rem 0;position:relative}.site-header nav a:hover{color:var(--navy);text-decoration:none}.site-header nav a.active{color:var(--coral-deep)}.site-header nav a.active:after{content:"";background:var(--coral);border-radius:2px;height:3px;position:absolute;bottom:-2px;left:0;right:0}.language-switcher{font:inherit;color:var(--navy);background-color:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-pill);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='12'%20height='8'%20viewBox='0%200%2012%208'%20fill='none'%3E%3Cpath%20d='M1%201.5%206%206.5%2011%201.5'%20stroke='%236b7a96'%20stroke-width='1.75'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .85rem center;background-repeat:no-repeat;outline:none;padding-block:.5rem;padding-inline:.95rem 2.4rem;font-weight:600;transition:border-color .15s,box-shadow .15s}.language-switcher:hover{border-color:var(--navy-muted)}.language-switcher:focus-visible{border-color:var(--coral);box-shadow:0 0 0 3px #ff6b4a2e}.language-switcher option{color:var(--navy)}[dir=rtl] .language-switcher{background-position:.85rem}[dir=rtl] .cta-row,[dir=rtl] .cta.play-badge{flex-direction:row-reverse}.header-lang{color:var(--navy-muted);background-color:#fff9;padding-block:.4rem;font-size:.95rem}.header-lang:hover{color:var(--navy)}.site-main{flex:1;padding:2.5rem 0 4rem}.site-footer{background:var(--navy);color:#c7d1e3;padding:2rem 0;font-size:.92rem}.site-footer a{color:#c7d1e3;font-weight:500}.site-footer a:hover{color:var(--paper)}.footer-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.footer-row nav{gap:1.5rem;display:flex}.home{position:relative}.home .hero{text-align:start;padding:3.5rem 0 2rem;position:relative;overflow:visible}.hero-blob{z-index:0;pointer-events:none;filter:blur(.5px);position:absolute}.hero-blob.one{opacity:.9;width:22rem;top:-2rem;right:-3rem}.hero-blob.two{opacity:.7;width:18rem;bottom:-4rem;left:-5rem}.home .hero h1{z-index:1;max-width:18ch;margin:0 0 1.25rem;font-size:clamp(2.4rem,5.5vw,3.8rem);line-height:1.08;position:relative}.home .hero h1 em{color:var(--coral-deep);background:linear-gradient(#0000 60%,#ffd16680 60%);padding:0 .15em;font-style:italic;font-weight:500}.home .hero .lede{z-index:1;color:var(--navy-soft);max-width:48ch;margin:0 0 2rem;font-size:1.2rem;line-height:1.55;position:relative}.cta-row{z-index:1;flex-wrap:wrap;gap:.85rem;display:flex;position:relative}.cta{border-radius:var(--radius-pill);border:2px solid #0000;align-items:center;gap:.5rem;padding:.95rem 1.6rem;font-size:1rem;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex}.cta:hover{text-decoration:none;transform:translateY(-2px)}.cta.play-badge{background:var(--coral);color:var(--paper);box-shadow:0 6px 0 var(--coral-deep), var(--shadow-md)}.cta.play-badge:hover{box-shadow:0 8px 0 var(--coral-deep), var(--shadow-lg)}.cta.play-badge:active{box-shadow:0 2px 0 var(--coral-deep), var(--shadow-sm);transform:translateY(2px)}.cta.secondary{background:var(--paper);color:var(--navy);border-color:var(--navy);box-shadow:var(--shadow-sm)}.cta.secondary:hover{background:var(--navy);color:var(--paper)}.pillars{z-index:1;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1.5rem;margin-top:4.5rem;display:grid;position:relative}.pillars article{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:1.75rem 1.6rem 1.5rem;transition:transform .2s,box-shadow .2s;position:relative}.pillars article:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)rotate(-.5deg)}.pillars article:first-child{background:var(--mint)}.pillars article:nth-child(2){background:var(--yellow)}.pillars article:nth-child(3){background:var(--lavender)}.pillar-icon{background:var(--paper);width:3.25rem;height:3.25rem;box-shadow:var(--shadow-sm);border-radius:1rem;place-items:center;margin-bottom:.9rem;font-size:1.75rem;line-height:1;display:inline-grid;transform:rotate(-4deg)}.pillars article:nth-child(2) .pillar-icon{transform:rotate(3deg)}.pillars article:nth-child(3) .pillar-icon{transform:rotate(-2deg)}.pillars h2{color:var(--navy);margin:0 0 .4rem;font-size:1.35rem}.pillars p{color:var(--navy-soft);margin:0;font-size:.98rem;line-height:1.55}.prose{max-width:44rem;padding-top:1.5rem;padding-bottom:3.5rem}.prose h1{margin:0 0 .75rem;font-size:clamp(2rem,4vw,2.8rem);line-height:1.1}.prose h2{color:var(--coral-deep);margin-top:2.5rem;margin-bottom:.5rem;font-size:1.4rem;font-style:italic;font-weight:500}.prose ul,.prose ol{padding-inline-start:1.25rem}.prose li{margin-bottom:.55rem}.prose p{color:var(--navy);font-size:1.02rem}.prose strong{color:var(--navy);font-weight:700}.prose .small{color:var(--navy-muted);margin-top:0;font-size:.92rem}.steps{counter-reset:step;margin-top:2rem;padding-inline-start:0;list-style:none}.steps li{counter-increment:step;background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:1.5rem;padding-block:1.4rem;padding-inline:4.5rem 1.5rem;position:relative}.steps li:before{content:counter(step);inset-inline-start:1.2rem;background:var(--coral);width:2.25rem;height:2.25rem;color:var(--paper);box-shadow:var(--shadow-sm);border-radius:50%;place-items:center;font-family:Fraunces Variable,Georgia,serif;font-size:1.15rem;font-weight:600;display:grid;position:absolute;top:1.1rem}.steps li:nth-child(2):before{background:var(--mint-deep)}.steps li:nth-child(3):before{background:var(--yellow);color:var(--navy)}.steps h2{color:var(--navy);margin:0 0 .25rem;font-size:1.2rem;font-style:normal;display:block}.steps p{color:var(--navy-soft);margin:0}.contact-form{flex-direction:column;gap:.6rem;margin:.5rem 0 2rem;display:flex}.contact-form label{color:var(--navy);font-size:.95rem;font-weight:600}.contact-form textarea{color:var(--navy);background:var(--paper);border:2px solid var(--rule);border-radius:var(--radius);resize:vertical;min-height:9rem;box-shadow:var(--shadow-sm);padding:.85rem 1rem;font-family:inherit;font-size:1rem;line-height:1.55;transition:border-color .15s,box-shadow .15s}.contact-form textarea:focus{border-color:var(--coral);outline:none;box-shadow:0 0 0 4px #ff6b4a2e}.contact-form button{cursor:pointer;border:none;align-self:flex-start;margin-top:.5rem;font-family:inherit}.contact-form button:disabled{opacity:.5;cursor:not-allowed;box-shadow:0 6px 0 var(--coral-deep), var(--shadow-md);transform:none}@media (width<=38rem){.nav{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem}.site-header nav{gap:1.1rem}.footer-row{flex-direction:column;align-items:flex-start}.home .hero{padding:2rem 0 1rem}.hero-blob.one{width:14rem;top:-1rem;right:-5rem}.hero-blob.two{display:none}.pillars{margin-top:3rem}}@media (prefers-reduced-motion:reduce){.cta,.pillars article{transition:none}.cta:hover,.pillars article:hover{transform:none}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-page{background:var(--cream);min-height:100vh;color:var(--navy);flex-direction:column;display:flex}.app-page--centered{justify-content:center;align-items:center;padding:1.5rem}.app-page__header{border-bottom:1px solid var(--rule);background:var(--paper);grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;padding:1rem 1.25rem;display:grid}.app-page__title{text-align:center;color:var(--navy);font-family:Fraunces Variable,Georgia,Times New Roman,serif;font-size:1.125rem;font-weight:600}.app-page__step{justify-content:center;align-items:center;gap:.35rem;display:flex}.app-page__step-dot{background:var(--rule);border-radius:50%;width:8px;height:8px;transition:width .2s,background .2s,border-radius .2s,opacity .2s}.app-page__step-dot--active{background:var(--coral);border-radius:4px;width:22px}.app-page__step-dot--done{background:var(--coral);opacity:.55}.app-page__back{color:var(--coral-deep);font:inherit;cursor:pointer;border-radius:var(--radius-pill);background:0 0;border:0;justify-self:start;padding:.4rem .6rem;font-weight:600}.app-page__back:hover{background:#ff6b4a14}.app-page__spacer{display:block}.app-page__body{flex-direction:column;flex:1;gap:1.5rem;width:100%;max-width:36rem;margin:0 auto;padding:1.25rem 1.25rem 2rem;display:flex}.app-page__footer{width:100%;padding:1rem 1.25rem calc(env(safe-area-inset-bottom,0) + 1rem);background:linear-gradient(180deg, #fff7ef00 0%, var(--cream) 35%);justify-content:center;display:flex;position:sticky;bottom:0}.app-page__cta{background:var(--coral);color:#fff;width:100%;max-width:36rem;font:inherit;border-radius:var(--radius-pill);cursor:pointer;box-shadow:var(--shadow-md);border:0;padding:.95rem 1.25rem;font-size:1.05rem;font-weight:700;transition:transform .12s,background .12s}.app-page__cta:hover:not(:disabled){background:var(--coral-deep);transform:translateY(-1px)}.app-page__cta:disabled{background:var(--rule);color:var(--navy-muted);cursor:not-allowed;box-shadow:none}.app-card{background:var(--paper);border-radius:var(--radius);width:100%;max-width:26rem;box-shadow:var(--shadow-md);border:1px solid var(--rule);flex-direction:column;gap:.85rem;padding:1.75rem 1.5rem;display:flex}.app-card__heading{text-align:center;color:var(--navy);margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:1.4rem;font-weight:600}.app-card__body{color:var(--navy-soft);text-align:center;margin:0;font-size:1rem}.app-card__phrase{text-align:center;letter-spacing:.04em;color:var(--coral-deep);-webkit-user-select:none;user-select:none;margin:.5rem 0;font-family:Fraunces Variable,Georgia,serif;font-size:1.6rem;font-weight:600}.app-card__input{font:inherit;border:1px solid var(--rule);background:var(--cream);color:var(--navy);border-radius:.85rem;outline:none;padding:.85rem 1rem;font-size:1rem}.app-card__input:focus{border-color:var(--coral);box-shadow:0 0 0 3px #ff6b4a2e}.app-card__error{color:var(--coral-deep);text-align:center;margin:0;font-size:.95rem}.app-card__cta{background:var(--coral);color:#fff;font:inherit;border-radius:var(--radius-pill);cursor:pointer;box-shadow:var(--shadow-sm);border:0;margin-top:.25rem;padding:.85rem 1.25rem;font-weight:700;transition:background .12s}.app-card__cta:hover:not(:disabled){background:var(--coral-deep)}.app-card__cta:disabled{background:var(--rule);color:var(--navy-muted);cursor:not-allowed}.app-card__link{color:var(--coral-deep);font:inherit;cursor:pointer;background:0 0;border:0;align-self:center;padding:.4rem .5rem;font-weight:600}.app-card__link:hover{text-underline-offset:3px;text-decoration:underline}.app-card__link:disabled{color:var(--navy-muted);cursor:not-allowed;text-decoration:none}.app-upgrade__benefits{color:var(--navy-soft);flex-direction:column;gap:.35rem;margin:0;padding-left:1.2rem;font-size:.95rem;display:flex}.app-upgrade__fineprint{text-align:center;color:var(--navy-muted);margin:0;font-size:.8rem}.app-loading{color:var(--navy-muted);text-align:center;font-family:Fraunces Variable,Georgia,serif;font-size:1.1rem}.app-form{flex-direction:column;gap:1.4rem;display:flex}.app-form__heading{color:var(--navy);margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:1.75rem;font-weight:600;line-height:1.2}.app-form__intro{color:var(--navy-soft);margin:0;font-size:1rem}.app-form__field{border:0;flex-direction:column;gap:.55rem;margin:0;padding:0;display:flex}.app-form__label{color:var(--navy);font-size:.95rem;font-weight:600}.app-form__input{font:inherit;border:1px solid var(--rule);background:var(--paper);color:var(--navy);border-radius:.85rem;outline:none;padding:.8rem 1rem;font-size:1rem}.app-form__input:focus{border-color:var(--coral);box-shadow:0 0 0 3px #ff6b4a2e}.app-form__help{color:var(--navy-muted);font-size:.85rem}.app-form__error{color:var(--coral-deep);margin:0;font-size:.9rem}.app-form__field--detail{gap:.4rem}.app-form__textarea{font:inherit;border:1px solid var(--rule);background:var(--paper);color:var(--navy);resize:vertical;border-radius:.85rem;outline:none;min-height:3.5rem;padding:.8rem 1rem;font-size:1rem;line-height:1.5}.app-form__textarea:focus{border-color:var(--coral);box-shadow:0 0 0 3px #ff6b4a2e}.app-form__detail-foot{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.app-form__counter{color:var(--navy-muted);font-variant-numeric:tabular-nums;flex:none;font-size:.8rem}.app-chip-row{flex-wrap:wrap;gap:.5rem;display:flex}.app-chip{font:inherit;background:var(--paper);color:var(--navy);border:1px solid var(--rule);border-radius:var(--radius-pill);text-align:center;cursor:pointer;min-width:3.25rem;padding:.65rem 1.2rem;font-size:.95rem;font-weight:600;transition:background .12s,border-color .12s,color .12s}.app-chip:hover{border-color:var(--coral)}.app-chip--selected{background:var(--coral);border-color:var(--coral);color:#fff}.app-tile-list{flex-direction:column;gap:.65rem;display:flex}.app-tile{text-align:start;font:inherit;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);cursor:pointer;align-items:flex-start;gap:.85rem;padding:.95rem 1rem;transition:border-color .12s,box-shadow .12s,background .12s,transform .12s;display:flex}.app-tile:hover{border-color:var(--coral);box-shadow:var(--shadow-md);transform:translateY(-1px)}.app-tile--selected{border-color:var(--coral);box-shadow:0 0 0 2px var(--coral), var(--shadow-sm);background:#ff6b4a0f}.app-tile__icon{flex:none;font-size:1.85rem;line-height:1}.app-tile__body{flex-direction:column;flex:1;gap:.15rem;display:flex}.app-tile__title{color:var(--navy);font-size:1rem;font-weight:700}.app-tile__desc{color:var(--navy-soft);font-size:.92rem;line-height:1.45}.app-theme-grid{flex-direction:column;gap:.65rem;display:flex}.app-theme{font:inherit;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);cursor:pointer;text-align:start;align-items:flex-start;gap:.85rem;padding:.95rem 1rem;transition:border-color .12s,box-shadow .12s,background .12s,transform .12s;display:flex}.app-theme:hover{border-color:var(--coral);box-shadow:var(--shadow-md);transform:translateY(-1px)}.app-theme--selected{border-color:var(--coral);box-shadow:0 0 0 2px var(--coral), var(--shadow-sm);background:#ff6b4a0f}.app-theme__icon{flex:none;font-size:1.85rem;line-height:1}.app-theme__label{color:var(--navy);align-self:center;font-size:1rem;font-weight:700}@media (width>=520px){.app-form__heading{font-size:2rem}.app-page__body{padding:2rem 2rem 3rem}.app-tile-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.app-tile:last-child{grid-column:1/-1}}.app-generating{flex-direction:column;align-items:center;gap:1.5rem;display:flex}.app-glow{filter:blur(4px);background:radial-gradient(circle,#ffd1668c 0%,#ff6b4a59 45%,#ff6b4a00 75%);border-radius:50%;width:9rem;height:9rem;animation:2.4s ease-in-out infinite app-glow-pulse}@keyframes app-glow-pulse{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}@media (prefers-reduced-motion:reduce){.app-glow{animation:none}}.app-generating__stage{color:var(--navy);text-align:center;margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:1.15rem}.app-reader{color:#fff;cursor:pointer;background:#000;justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.app-reader__image{object-fit:cover;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.app-reader__text-overlay{pointer-events:none;background:linear-gradient(#0000 0%,#000000b3 100%);padding:1.25rem 1.5rem 5rem;position:absolute;bottom:0;left:0;right:0}.app-reader__text{color:#fff;text-shadow:0 1px 8px #0009;margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:1.25rem;line-height:1.55}.app-reader--textonly .app-reader__text-overlay{background:0 0;justify-content:center;align-items:center;width:100%;max-width:40rem;padding:2rem 1.75rem 7rem;display:flex;position:static}.app-reader--textonly .app-reader__text{text-align:center;text-shadow:none;font-size:1.6rem;line-height:1.7}.app-reader__audio-error{z-index:5;color:#fff;box-shadow:var(--shadow-sm);background:#e8502feb;border-radius:.85rem;flex-direction:column;gap:.5rem;padding:.75rem 1rem;display:flex;position:absolute;top:1rem;left:1rem;right:1rem}.app-reader__audio-error-actions{align-self:flex-end;gap:.5rem;display:flex}.app-reader__retry,.app-reader__close{font:inherit;color:#fff;border-radius:var(--radius-pill);cursor:pointer;background:#ffffff2e;border:1px solid #ffffff59;padding:.35rem .85rem;font-weight:600}.app-reader__retry:hover,.app-reader__close:hover{background:#ffffff47}.app-reader__controls{z-index:4;padding:1rem 1.25rem calc(env(safe-area-inset-bottom,0) + 1rem);cursor:default;background:linear-gradient(#0000 0%,#0000008c 100%);flex-direction:column;gap:.6rem;display:flex;position:absolute;bottom:0;left:0;right:0}.app-reader__top-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.app-reader__link{color:#fff;font:inherit;cursor:pointer;border-radius:var(--radius-pill);background:0 0;border:0;padding:.4rem .7rem;font-weight:600;text-decoration:none}.app-reader__link:hover{background:#ffffff26;text-decoration:none}.app-reader__page-indicator{color:#ffffffd9;font-size:.95rem}.app-reader__scrub-block{flex-direction:column;gap:.4rem;display:flex}.app-reader__skip-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.app-reader__skip{color:#fff;border-radius:var(--radius-pill);font:inherit;cursor:pointer;background:#ffffff26;border:0;padding:.45rem .85rem;font-weight:600}.app-reader__skip:hover:not(:disabled){background:#ffffff47}.app-reader__skip:disabled{opacity:.45;cursor:not-allowed}.app-reader__time{font-variant-numeric:tabular-nums;color:#ffffffd9;font-size:.9rem}.app-reader__scrub{width:100%;accent-color:var(--coral)}.app-reader__nav-row{gap:.5rem;display:flex}.app-reader__nav{font:inherit;color:#fff;border-radius:var(--radius-pill);cursor:pointer;background:#ffffff2e;border:1px solid #ffffff4d;flex:1;padding:.7rem 1rem;font-weight:700}.app-reader__nav:hover:not(:disabled){background:#ffffff4d}.app-reader__nav:disabled{opacity:.4;cursor:not-allowed}.app-end{text-align:center;flex-direction:column;gap:.85rem;width:100%;max-width:28rem;padding:1.5rem;display:flex}.app-end__heading{color:var(--navy);margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:1.6rem;font-weight:600}.app-end__sub{color:var(--navy-soft);margin:0;font-size:1rem}.app-end__toast{background:var(--mint);color:var(--navy);border-radius:.85rem;margin:0;padding:.65rem 1rem;font-weight:600}.app-end__primary{background:var(--coral);color:#fff;font:inherit;border-radius:var(--radius-pill);cursor:pointer;box-shadow:var(--shadow-sm);border:0;padding:.85rem 1.25rem;font-weight:700;transition:background .12s}.app-end__primary:hover:not(:disabled){background:var(--coral-deep)}.app-end__primary:disabled{background:var(--rule);color:var(--navy-muted);cursor:not-allowed}.app-end__secondary{color:var(--coral-deep);font:inherit;border:1px solid var(--rule);border-radius:var(--radius-pill);cursor:pointer;background:0 0;padding:.7rem 1rem;font-weight:600}.app-end__secondary:hover{border-color:var(--coral);background:#ff6b4a0f}.app-library__hero{flex-direction:column;gap:.3rem;display:flex}.app-library__hero-title{color:var(--navy);margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:1.75rem;font-weight:600;line-height:1.2}.app-library__hero-sub{color:var(--navy-muted);margin:0;font-size:.95rem}.app-library__list{flex-direction:column;gap:.85rem;margin:0;padding:0;list-style:none;display:flex}.app-library__card{--card-accent:var(--lavender);background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:box-shadow .15s,transform .15s;position:relative;overflow:hidden}.app-library__card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.app-library__card--calm{--card-accent:var(--lavender)}.app-library__card--adventure{--card-accent:var(--mint)}.app-library__card--confidence{--card-accent:var(--yellow)}.app-library__card--funny{--card-accent:var(--coral)}.app-library__card--friends{--card-accent:var(--mint-deep)}.app-library__card-open{text-align:start;width:100%;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:.9rem;padding-block:.85rem;padding-inline:.85rem 3rem;display:flex}.app-library__card-cover{background:linear-gradient(135deg, var(--card-accent), var(--cream-deep));border-radius:.9rem;flex:none;place-items:center;width:4.5rem;height:4.5rem;display:grid;overflow:hidden}.app-library__card-img{object-fit:cover;width:100%;height:100%}.app-library__card-glyph{font-size:2rem;line-height:1}.app-library__card-text{flex-direction:column;gap:.25rem;min-width:0;display:flex}.app-library__card-chip{border-radius:var(--radius-pill);background:linear-gradient(0deg, #ffffffad, #ffffffad), var(--card-accent);color:var(--navy-soft);text-transform:uppercase;letter-spacing:.04em;align-self:flex-start;align-items:center;gap:.3rem;padding:.1rem .55rem;font-size:.72rem;font-weight:700;display:inline-flex}.app-library__card-title{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;font-family:Fraunces Variable,Georgia,serif;font-size:1.15rem;font-weight:600;overflow:hidden}.app-library__card-meta{color:var(--navy-muted);font-size:.88rem}.app-library__card-more{width:2.25rem;height:2.25rem;color:var(--navy-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;font-size:1.3rem;line-height:1;display:grid;position:absolute;inset-block-start:.5rem;inset-inline-end:.4rem}.app-library__card-more:hover{color:var(--navy);background:#1a2b4a0f}.app-library__status{text-align:center;color:var(--navy-muted);margin:0;font-size:.9rem}.app-library__create-row{justify-content:center;margin-block-start:1.5rem;display:flex}.app-library--empty{position:relative;overflow:hidden}.app-library--empty .app-empty{z-index:1;position:relative}.app-empty{text-align:center;flex-direction:column;align-items:center;gap:.85rem;max-width:24rem;padding:2rem 1.5rem;display:flex}.app-empty__glyph{font-size:3.25rem;line-height:1}.app-empty__heading{color:var(--navy);margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:1.4rem;font-weight:600}.app-empty__body{color:var(--navy-soft);margin:0}.app-empty__cta{background:var(--coral);color:#fff;font:inherit;border-radius:var(--radius-pill);cursor:pointer;box-shadow:var(--shadow-sm);border:0;padding:.85rem 1.5rem;font-weight:700}.app-empty__cta:hover:not(:disabled){background:var(--coral-deep)}.app-empty__cta:disabled{background:var(--rule);color:var(--navy-muted);cursor:not-allowed;box-shadow:none}.app-install-banner{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow-sm);align-items:center;gap:1rem;margin:0 0 1rem;padding:.9rem 1rem;display:flex}.app-install-banner__text{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.app-install-banner__title{color:var(--navy);font-weight:700}.app-install-banner__body{color:var(--navy-soft);font-size:.9rem}.app-install-banner__cta{background:var(--coral);color:#fff;border-radius:var(--radius-pill);font:inherit;cursor:pointer;white-space:nowrap;border:0;padding:.5rem 1rem;font-weight:700}.app-install-banner__cta:hover:not(:disabled){background:var(--coral-deep)}.app-install-banner__cta:disabled{opacity:.6;cursor:default}.app-ios-hint{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-top:1.25rem;padding:.9rem 1rem}.app-ios-hint__title{color:var(--navy);margin-bottom:.25rem;display:block}.app-ios-hint__body{color:var(--navy-soft);margin:0;font-size:.95rem}.app-toast{background:var(--navy);color:#fff;border-radius:var(--radius-pill);box-shadow:var(--shadow-md);z-index:100;padding:.7rem 1.1rem;font-weight:600;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)}.app-toast--update{align-items:center;gap:.75rem;padding:.55rem .6rem .55rem 1rem;display:inline-flex}.app-toast__text{font-weight:600}.app-toast__cta{background:var(--coral);color:#fff;border-radius:var(--radius-pill);cursor:pointer;border:0;padding:.45rem .9rem;font-weight:700}.app-toast__cta:hover:not(:disabled){background:var(--coral-deep)}.app-toast__cta:disabled{opacity:.6;cursor:default}.app-toast--dismissable{cursor:pointer;font-family:inherit;font-size:inherit;border:0}.app-dialog{border-radius:var(--radius);background:var(--paper);color:var(--navy);box-shadow:var(--shadow-lg);border:0;width:calc(100vw - 2rem);max-width:28rem;padding:0}.app-dialog::backdrop{background:#1a2b4a73}.app-dialog__body{flex-direction:column;gap:.75rem;margin:0;padding:1.5rem;display:flex}.app-dialog__title{color:var(--navy);margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:1.2rem;font-weight:600}.app-dialog__sub{color:var(--navy-soft);margin:0;font-size:.95rem}.app-dialog__input{font:inherit;border:1px solid var(--rule);background:var(--cream);color:var(--navy);resize:vertical;border-radius:.85rem;outline:none;min-height:5.5rem;padding:.75rem .9rem;font-size:1rem}.app-dialog__input:focus{border-color:var(--coral);box-shadow:0 0 0 3px #ff6b4a2e}.app-dialog__error{color:var(--coral-deep);margin:0;font-size:.9rem}.app-dialog__actions{justify-content:flex-end;gap:.5rem;margin-top:.25rem;display:flex}.app-dialog__cancel{color:var(--navy-soft);font:inherit;border:1px solid var(--rule);border-radius:var(--radius-pill);cursor:pointer;background:0 0;padding:.6rem 1rem;font-weight:600}.app-dialog__cancel:hover:not(:disabled){background:#1a2b4a0d}.app-dialog__cancel:disabled{opacity:.5;cursor:not-allowed}.app-dialog__submit{background:var(--coral);color:#fff;font:inherit;border-radius:var(--radius-pill);cursor:pointer;border:0;padding:.6rem 1.25rem;font-weight:700}.app-dialog__submit:hover:not(:disabled){background:var(--coral-deep)}.app-dialog__submit:disabled{background:var(--rule);color:var(--navy-muted);cursor:not-allowed}.app-sheet{border-end-end-radius:0;border-end-start-radius:0;width:100%;max-width:30rem;margin-block:auto 0;margin-inline:auto}.app-sheet__body{padding:1.25rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom));flex-direction:column;gap:.5rem;margin:0;display:flex}.app-sheet__title{color:var(--navy);margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:1.15rem;font-weight:600}.app-sheet__sub{color:var(--navy-muted);text-overflow:ellipsis;white-space:nowrap;margin:0 0 .35rem;font-size:.9rem;overflow:hidden}.app-sheet__action{text-align:start;width:100%;font:inherit;color:var(--navy);background:var(--cream);border:1px solid var(--rule);border-radius:var(--radius);cursor:pointer;align-items:center;gap:.6rem;padding:.85rem 1rem;font-weight:600;display:flex}.app-sheet__action:hover{background:#ff6b4a0f}.app-sheet__action--danger{color:var(--coral-deep)}.app-sheet__action--danger:hover{background:#e8502f0f}.app-sheet__cancel{color:var(--navy-soft);background:0 0;justify-content:center;margin-top:.25rem}.app-settings__section{flex-direction:column;gap:.5rem;display:flex}.app-settings__section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--navy-muted);margin:0;padding:0 .25rem;font-family:Quicksand Variable,sans-serif;font-size:.8rem;font-weight:700}.app-settings__section-body{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);overflow:hidden}.app-settings__row,.app-settings__link{text-align:start;width:100%;font:inherit;color:inherit;background:0 0;border:0;align-items:center;gap:.75rem;padding:.9rem 1.1rem;text-decoration:none;display:flex}.app-settings__row+.app-settings__row,.app-settings__row+.app-settings__link,.app-settings__link+.app-settings__link,.app-settings__link+.app-settings__row{border-top:1px solid var(--rule)}.app-settings__row--control .app-settings__row-title{flex:1}.app-settings__link{cursor:pointer;justify-content:space-between}.app-settings__link:hover{background:#ff6b4a0a;text-decoration:none}.app-settings__link--button{cursor:pointer}.app-settings__link--danger:hover{background:#e8502f0f}.app-settings__link:disabled,.app-settings__link--button:disabled{opacity:.5;cursor:not-allowed}.app-settings__row-text{flex-direction:column;flex:1;gap:.2rem;display:flex}.app-settings__row-title{color:var(--navy);font-size:1rem;font-weight:600}.app-settings__row-title--link{color:var(--navy)}.app-settings__row-title--danger{color:var(--coral-deep)}.app-settings__row-body{color:var(--navy-soft);font-size:.9rem;line-height:1.45}.app-settings__chevron{color:var(--navy-muted);flex:none;font-size:1.4rem;line-height:1}[dir=rtl] .app-settings__chevron{transform:scaleX(-1)}.app-settings__hero{text-align:center;flex-direction:column;align-items:center;gap:.35rem;padding:.5rem 0 .25rem;display:flex}.app-settings__hero-mark{background:linear-gradient(135deg, var(--coral), var(--yellow));width:3.25rem;height:3.25rem;box-shadow:var(--shadow-md);border-radius:50%;place-items:center;font-size:1.6rem;display:inline-grid}.app-settings__hero-title{color:var(--navy);margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:1.5rem;font-weight:600}.app-settings__hero-tagline{color:var(--navy-soft);margin:0;font-size:.95rem}.app-settings__hero-name{color:var(--coral-deep);margin:0;font-size:.95rem;font-weight:600}.app-settings__row-icon{background:var(--cream);border-radius:.7rem;flex:none;place-items:center;width:2rem;height:2rem;font-size:1.1rem;line-height:1;display:grid}.app-settings__toggle{border:1.5px solid var(--indigo);border-radius:.85rem;flex:none;gap:0;display:flex;overflow:hidden}.app-settings__toggle-btn{color:var(--indigo);cursor:pointer;background:0 0;border:none;flex:auto;padding:.45rem .9rem;font-size:.9rem;font-weight:500;transition:background .15s,color .15s}.app-settings__toggle-btn--active{background:var(--indigo);color:#fff}.app-settings__lang-toggle{flex:none;gap:.25rem;display:flex}.app-settings__lang-btn{color:var(--navy-muted);cursor:pointer;background:0 0;border:none;border-radius:.4rem;padding:.2rem .4rem;font-family:inherit;font-size:.9rem;font-weight:400}.app-settings__lang-btn--active{color:var(--navy);font-weight:700}.app-settings__version{text-align:center;color:var(--navy-muted);margin:.5rem 0 0;font-size:.85rem}.app-login{background:var(--cream);min-height:100dvh;padding:2rem 1.5rem calc(env(safe-area-inset-bottom,0px) + 2rem);background-image:radial-gradient(80% 50% at 15% -10%,#ff6b4a1a,#0000 60%),radial-gradient(70% 40% at 110% 30%,#7dd3bd26,#0000 60%);flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;display:flex;position:relative;overflow:hidden}.app-login__bg{pointer-events:none;position:absolute;inset:0;overflow:hidden}.app-login__blob{pointer-events:none;position:absolute}.app-login__blob--one{opacity:.65;width:58%;max-width:30rem;animation:14s ease-in-out infinite app-login-drift;top:-8%;right:-12%}.app-login__blob--two{opacity:.55;width:52%;max-width:26rem;animation:18s ease-in-out infinite reverse app-login-drift;bottom:-12%;left:-16%}.app-login__blob--three{opacity:.45;width:36%;max-width:18rem;animation:22s ease-in-out 5s infinite app-login-drift;top:28%;left:2%}@keyframes app-login-drift{0%,to{transform:translate(0)scale(1)rotate(0)}33%{transform:translate(2%,3%)scale(1.05)rotate(2deg)}66%{transform:translate(-2%,-2%)scale(.96)rotate(-1.5deg)}}.app-login__star{opacity:0;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:1rem;animation:4s ease-in-out infinite app-login-twinkle;position:absolute}@keyframes app-login-twinkle{0%,to{opacity:0;transform:scale(.5)rotate(0)}50%{opacity:.75;transform:scale(1.25)rotate(22deg)}}.app-login__main{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:1.25rem;width:100%;max-width:28rem;display:flex;position:relative}.app-login__brand{align-items:center;gap:.65rem;display:inline-flex}.app-login__brand-mark{background:linear-gradient(135deg, var(--coral), var(--yellow));width:3rem;height:3rem;box-shadow:var(--shadow-md);border-radius:50%;place-items:center;font-size:1.45rem;display:inline-grid}.app-login__brand-name{color:var(--navy);letter-spacing:-.01em;font-family:Fraunces Variable,Georgia,serif;font-size:1.2rem;font-weight:600}.app-login__headline{color:var(--navy);letter-spacing:-.02em;margin:0;font-size:clamp(2.2rem,6vw,3.4rem);line-height:1.1}.app-login .app-login__main .app-login__headline em{color:var(--coral-deep);background:linear-gradient(#0000 60%,#ffd16680 60%);padding:0 .15em;font-style:italic;font-weight:500}.app-login__sub{color:var(--navy-soft);max-width:28ch;margin:0;font-size:1.1rem;line-height:1.55}.app-login__signin{flex-direction:column;align-items:stretch;gap:.75rem;width:100%;margin-top:.25rem;display:flex}.app-login__loading{color:var(--navy-muted);text-align:center;margin:0;font-size:1rem}.app-login__signin>div{flex-direction:column;align-items:stretch;width:100%;display:flex}.app-login__signin>div>div:first-child{width:100%}.app-login__features{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.app-login__feature{border-radius:var(--radius-pill);color:var(--navy);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(6px);background:#ffffffbf;padding:.35rem .9rem;font-size:.9rem;font-weight:600}.app-login__ios-hint{z-index:1;width:100%;max-width:28rem;margin-top:0;position:relative}@media (width>=48rem){.app-login__blob--one{width:46%}.app-login__blob--two{width:42%}.app-login__blob--three{width:28%}.app-login__main{-webkit-backdrop-filter:blur(24px);max-width:34rem;box-shadow:var(--shadow-lg), 0 0 0 1px #f2e3d099;background:#ffffff9e;border-radius:2rem;gap:1.5rem;padding:3rem 3.5rem}.app-login__headline{font-size:clamp(2.8rem,4vw,3.6rem)}.app-login__ios-hint{max-width:34rem}}@media (prefers-reduced-motion:reduce){.app-login__blob,.app-login__star{animation:none}.app-login__blob--one{opacity:.5}.app-login__blob--two{opacity:.4}.app-login__blob--three{opacity:.35}.app-login__star{opacity:.25}}.app-topbar-spacer{flex-shrink:0;height:3.5rem}.app-tabbar{z-index:20;-webkit-backdrop-filter:blur(12px);border-block-end:1px solid var(--rule);background:#fff7efeb;justify-content:space-around;align-items:center;gap:.25rem;padding-block:.5rem;padding-inline:.5rem;display:flex;position:fixed;inset-block-start:0;inset-inline:0}.app-tabbar__item{color:var(--navy-muted);font:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;align-items:center;gap:.15rem;padding-block:.3rem;text-decoration:none;transition:color .15s;display:flex}.app-tabbar__item:not(.app-tabbar__item--active):hover{color:var(--navy-soft)}.app-tabbar__item--active{color:var(--coral-deep)}.app-tabbar__icon{font-size:1.5rem;line-height:1}.app-tabbar__label{letter-spacing:.01em;font-size:.7rem;font-weight:700}.app-decor{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.app-decor__blob{pointer-events:none;position:absolute}.app-decor__blob--one{opacity:.65;width:58%;max-width:30rem;animation:14s ease-in-out infinite app-decor-drift;inset-block-start:-8%;inset-inline-end:-12%}.app-decor__blob--two{opacity:.55;width:52%;max-width:26rem;animation:18s ease-in-out infinite reverse app-decor-drift;inset-block-end:-12%;inset-inline-start:-16%}.app-decor__blob--three{opacity:.45;width:36%;max-width:18rem;animation:22s ease-in-out 5s infinite app-decor-drift;inset-block-start:28%;inset-inline-start:2%}@keyframes app-decor-drift{0%,to{transform:translate(0)scale(1)rotate(0)}33%{transform:translate(2%,3%)scale(1.05)rotate(2deg)}66%{transform:translate(-2%,-2%)scale(.96)rotate(-1.5deg)}}.app-decor__star{opacity:0;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:1rem;animation-name:app-decor-twinkle;animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute}@keyframes app-decor-twinkle{0%,to{opacity:0;transform:scale(.5)rotate(0)}50%{opacity:.75;transform:scale(1.25)rotate(22deg)}}.app-generating-page{position:relative;overflow:hidden}.app-generating-page .app-generating{z-index:1;position:relative}@media (prefers-reduced-motion:reduce){.app-decor__blob,.app-decor__star{animation:none}.app-decor__star{opacity:.25}.app-tabbar__item{transition:none}}
