@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{--bg:#0b0b18;--bg2:#121225;--panel:#17172c;--panel2:#20203a;--text:#f8f7ff;--muted:#aba9bd;--line:rgba(255,255,255,.09);--purple:#9a80ff;--purple2:#7557ff;--cyan:#75e7db;--pink:#ff9bc6;--yellow:#ffd779;--danger:#ff6f81;--radius:26px;--shadow:0 24px 70px rgba(0,0,0,.35)}
*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 15% 0,#20204c 0,transparent 31%),radial-gradient(circle at 100% 24%,#252044 0,transparent 26%),var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;min-height:100vh}.sky{position:fixed;inset:0;pointer-events:none;overflow:hidden}.sky i{position:absolute;border-radius:999px;filter:blur(70px);opacity:.16}.sky i:nth-child(1){width:260px;height:260px;background:var(--purple);top:-100px;right:-80px}.sky i:nth-child(2){width:220px;height:220px;background:var(--cyan);bottom:10%;left:-130px}.sky i:nth-child(3){width:180px;height:180px;background:var(--pink);top:38%;right:-140px}.app-shell{width:min(100%,760px);margin:auto;min-height:100vh;position:relative;padding:0 18px 112px}.topbar{height:80px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:30;background:linear-gradient(var(--bg) 20%,rgba(11,11,24,.9) 72%,transparent);backdrop-filter:blur(10px)}button,input,textarea{font:inherit}.brand{border:0;background:none;color:inherit;text-align:left;padding:0;cursor:pointer}.brand-word,.about-logo{font:800 27px 'Manrope';letter-spacing:-1.5px}.brand-word span,.about-logo span{color:var(--purple)}.brand small{display:block;color:var(--muted);font-size:10px;letter-spacing:1.7px;text-transform:uppercase;margin-top:-2px}.top-actions{display:flex;gap:8px}.round-btn,.back{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.055);color:var(--text);cursor:pointer}.hidden{display:none!important}.screen{display:none;animation:rise .35s ease}.screen.active{display:block}@keyframes rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}h1,h2,strong{font-family:'Manrope',sans-serif}h1{font-size:clamp(34px,8vw,56px);line-height:1.02;letter-spacing:-2.2px;margin:6px 0 15px}h2{letter-spacing:-.8px}.eyebrow,.action-tag,.section-label,.step-number,.tool-list small,.support-link small,.wide-card small{font-size:10px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--purple)}.hero-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#1d1d3a,#121226);border:1px solid var(--line);border-radius:34px;padding:31px 25px 23px;box-shadow:var(--shadow)}.hero-card:after{content:'';position:absolute;width:190px;height:190px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-85px;top:-80px;box-shadow:0 0 0 34px rgba(255,255,255,.018),0 0 0 67px rgba(255,255,255,.012)}.hero-glow{position:absolute;width:170px;height:170px;background:var(--purple);filter:blur(90px);opacity:.23;right:-30px;top:20px}.hero-card h1,.hero-card p,.hero-card button,.hero-proof{position:relative;z-index:2}.lead{font-size:16px;line-height:1.55;color:#c9c7d8;max-width:530px}.btn{border:0;border-radius:16px;padding:14px 17px;font-weight:700;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;gap:10px;text-decoration:none;color:inherit}.btn-primary{background:linear-gradient(135deg,var(--purple),var(--purple2));color:white;box-shadow:0 12px 28px rgba(117,87,255,.22)}.btn-light{background:white;color:#181828}.btn-quiet{background:rgba(255,255,255,.07);border:1px solid var(--line)}.btn-large{width:100%;padding:17px 20px;font-size:15px;margin-top:7px}.btn span{margin-left:auto}.hero-proof{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:18px;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.hero-proof div{display:flex;flex-direction:column}.hero-proof strong{font-size:22px}.hero-proof span,.hero-proof p{font-size:11px;color:var(--muted);margin:0}.hero-proof p{text-align:right}.section-label{display:flex;justify-content:space-between;color:var(--muted);margin:25px 5px 11px}.home-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.action-card{min-height:190px;border:1px solid var(--line);border-radius:25px;padding:18px;text-align:left;color:var(--text);cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;position:relative;overflow:hidden}.action-check{background:linear-gradient(155deg,#2a2150,#17162c)}.action-self{background:linear-gradient(155deg,#173e42,#151f2d)}.action-card:after{content:'';position:absolute;width:100px;height:100px;border-radius:50%;background:rgba(255,255,255,.05);right:-48px;bottom:-45px}.action-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:13px;background:rgba(255,255,255,.1);font-size:19px;margin-bottom:auto}.action-tag{margin:15px 0 6px}.action-card strong{font-size:18px;line-height:1.15}.action-card p{font-size:12px;line-height:1.4;color:#bab8ca;margin:7px 0 0}.prompt-card,.wide-card,.privacy-note{border:1px solid var(--line);background:rgba(255,255,255,.045);border-radius:22px;margin-top:12px;padding:18px}.prompt-card{display:flex;justify-content:space-between;gap:20px;align-items:center}.prompt-card p{margin:5px 0 0;font:600 17px 'Manrope';line-height:1.3}.text-btn{border:0;background:none;color:var(--cyan);font-weight:700;cursor:pointer;white-space:nowrap}.wide-card{width:100%;color:var(--text);display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;text-align:left;cursor:pointer}.wide-card span:nth-child(2){display:flex;flex-direction:column;gap:2px}.wide-card strong{font-size:15px}.people-stack{display:flex}.people-stack i{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:var(--panel2);border:2px solid var(--bg);font-style:normal;font-weight:700;font-size:11px;margin-left:-7px}.people-stack i:first-child{margin:0;background:#654cc9}.people-stack i:nth-child(2){background:#217d7d}.people-stack i:nth-child(3){background:#a04c77}.page-head{display:flex;gap:14px;align-items:flex-start;margin:8px 0 22px}.page-head h1{font-size:clamp(31px,7vw,45px);margin-bottom:0}.back{flex:0 0 auto;margin-top:3px}.progress{display:flex;gap:7px;align-items:center;margin:-8px 0 17px}.progress i{height:4px;border-radius:20px;flex:1;background:rgba(255,255,255,.08)}.progress i.active{background:var(--purple)}.progress span{font-size:11px;color:var(--muted);margin-left:7px}.step{display:none}.step.active{display:block}.panel{background:linear-gradient(145deg,rgba(28,28,51,.96),rgba(19,19,37,.96));border:1px solid var(--line);border-radius:28px;padding:24px;box-shadow:var(--shadow)}.step-number{display:block;margin-bottom:14px}.panel h2{font-size:25px;margin:0 0 8px}.panel>p{color:var(--muted);line-height:1.5;margin:0 0 20px}.big-input,.add-person input,.reminder-card input{width:100%;border:1px solid var(--line);background:rgba(0,0,0,.18);color:var(--text);border-radius:17px;padding:17px;outline:none}.big-input{font-size:19px;margin-bottom:12px}.big-input:focus,.add-person input:focus,.message-box:focus{border-color:var(--purple)}.quick-people{display:flex;gap:8px;overflow-x:auto;margin:2px 0 14px;padding-bottom:4px}.quick-people button{border:1px solid var(--line);background:rgba(255,255,255,.055);color:var(--text);border-radius:999px;padding:9px 13px;white-space:nowrap;cursor:pointer}.option-list{display:flex;flex-direction:column;gap:9px}.option{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;border:1px solid var(--line);background:rgba(255,255,255,.035);color:var(--text);padding:15px;border-radius:15px;cursor:pointer}.option i{font-style:normal;opacity:0;width:24px;height:24px;border-radius:50%;background:var(--purple);display:grid;place-items:center;font-size:11px}.option.selected{border-color:rgba(154,128,255,.75);background:rgba(154,128,255,.1)}.option.selected i{opacity:1}.button-pair,.button-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:10px;margin-top:17px}.tone-row{display:flex;gap:8px;margin-bottom:14px}.tone{flex:1;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text);padding:11px;border-radius:999px;cursor:pointer}.tone.selected{background:var(--text);color:var(--bg);border-color:var(--text);font-weight:700}.message-box{width:100%;resize:vertical;border:1px solid var(--line);background:#101022;color:var(--text);padding:17px;border-radius:18px;line-height:1.55;outline:none}.message-tools{display:flex;justify-content:space-between;align-items:center;margin:8px 2px 0}.message-tools button{border:0;background:none;color:var(--cyan);cursor:pointer}.message-tools span{font-size:10px;color:var(--muted)}.button-grid{grid-template-columns:1fr 1fr 1.4fr}.complete-btn{width:100%;border:1px solid rgba(117,231,219,.3);background:rgba(117,231,219,.1);color:var(--cyan);border-radius:16px;padding:15px;margin-top:10px;font-weight:800;cursor:pointer}.complete-btn span{float:right}.complete-btn:disabled{opacity:.62}.listen-card{background:rgba(255,215,121,.08);border:1px solid rgba(255,215,121,.16);border-radius:22px;padding:18px;margin-top:12px}.listen-card span{font-size:9px;letter-spacing:1.4px;color:var(--yellow);font-weight:800}.listen-card strong{display:block;margin:5px 0}.listen-card p{font-size:13px;line-height:1.5;color:#c6c3d0;margin:0}.check-yourself{background:linear-gradient(140deg,#242046,#1a1931);border:1px solid var(--line);border-radius:25px;padding:21px}.check-yourself>p{font:700 18px 'Manrope';margin:0 0 14px}.mood-row{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.mood-row button{border:1px solid var(--line);background:rgba(255,255,255,.05);color:var(--text);padding:11px 5px;border-radius:12px;font-size:11px;cursor:pointer}.mood-row button.selected{background:var(--purple);border-color:var(--purple)}.mood-response{font-size:13px;line-height:1.5;color:#d2d0dc;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.tool-list{display:flex;flex-direction:column;gap:9px;margin-top:13px}.tool-list>button,.support-link{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;width:100%;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text);padding:15px;border-radius:20px;text-align:left;cursor:pointer}.tool-symbol{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#29264c,#1d1c35);font:700 18px 'Manrope'}.tool-list span:nth-child(2){display:flex;flex-direction:column}.tool-list strong,.support-link strong{font-size:15px;margin:1px 0}.tool-list p{margin:0;color:var(--muted);font-size:11px}.tool-panel{border:1px solid rgba(117,231,219,.16);background:linear-gradient(145deg,#132c32,#141a2a);border-radius:25px;padding:22px;margin-top:12px}.tool-panel h2{margin:0 0 7px}.tool-panel>p{color:#bfced0;line-height:1.5}.support-link{margin-top:12px;background:rgba(255,155,198,.08);border-color:rgba(255,155,198,.18)}.support-link small{color:var(--pink)}.breath-wrap{text-align:center}.breath-orb{width:150px;height:150px;margin:22px auto;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#a897ff,#684eff);box-shadow:0 0 0 18px rgba(154,128,255,.08);transition:transform 4s ease}.breath-orb.expand{transform:scale(1.22)}.breath-orb span{font-weight:800}.ground-list{display:flex;flex-direction:column;gap:10px}.ground-list label,.reset-grid button{background:rgba(255,255,255,.055);border:1px solid var(--line);border-radius:13px;padding:13px}.note-area{width:100%;min-height:170px;border:1px solid var(--line);background:rgba(0,0,0,.2);color:var(--text);border-radius:16px;padding:15px;resize:vertical}.reset-grid{display:grid;gap:8px}.reset-grid button{text-align:left;color:var(--text);cursor:pointer}.reset-grid button.selected{border-color:var(--cyan);background:rgba(117,231,219,.1)}.page-copy{color:var(--muted);line-height:1.55;margin-top:-10px}.add-person{display:grid;grid-template-columns:1fr auto;gap:8px;margin:18px 0}.people-list{display:flex;flex-direction:column;gap:9px}.person-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;background:rgba(255,255,255,.045);border:1px solid var(--line);border-radius:19px;padding:13px}.avatar{width:43px;height:43px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#5e4bc1,#29264c);font-weight:800}.person-info strong{display:block}.person-info small{color:var(--muted)}.person-actions{display:flex;gap:6px}.person-actions button{border:0;border-radius:11px;padding:9px 10px;background:rgba(255,255,255,.07);color:var(--text);cursor:pointer}.person-actions button:first-child{color:var(--cyan)}.empty-state{text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:20px;padding:30px 18px}.privacy-note{display:flex;gap:13px;align-items:flex-start}.privacy-note>span{font-size:24px;color:var(--cyan)}.privacy-note strong{display:block}.privacy-note p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.impact-hero{text-align:center;background:linear-gradient(145deg,#211f42,#15152a);border:1px solid var(--line);border-radius:29px;padding:28px 22px}.impact-hero>span{font:800 72px 'Manrope';letter-spacing:-5px}.impact-hero p{margin:0;color:#d1cfdd}.impact-line{height:7px;background:rgba(255,255,255,.07);border-radius:20px;margin:23px 0 14px;overflow:hidden}.impact-line i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--purple),var(--cyan));border-radius:inherit;transition:width .6s ease}.impact-hero small{color:var(--muted);line-height:1.45}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:10px 0}.stat-grid article{background:rgba(255,255,255,.045);border:1px solid var(--line);border-radius:18px;padding:16px;text-align:center}.stat-grid strong{display:block;font-size:25px}.stat-grid span{font-size:10px;color:var(--muted)}.reminder-card{border:1px solid var(--line);background:rgba(255,255,255,.04);border-radius:24px;padding:21px;margin-top:12px}.reminder-card h2{margin:7px 0}.reminder-card p{color:var(--muted);line-height:1.5}.reminder-card>div{display:grid;grid-template-columns:1fr auto;gap:8px}.urgent{background:linear-gradient(145deg,#ff7083,#c64761);border-radius:25px;padding:22px}.urgent strong{font-size:20px}.urgent p{margin:7px 0 16px}.support-list{display:flex;flex-direction:column;gap:9px;margin-top:12px}.support-list a{display:flex;justify-content:space-between;gap:16px;align-items:center;text-decoration:none;color:var(--text);border:1px solid var(--line);background:rgba(255,255,255,.045);border-radius:19px;padding:17px}.support-list strong{font-size:16px}.support-list p{font-size:12px;color:var(--muted);line-height:1.45;margin:4px 0 0}.support-list b{color:var(--cyan)}.trusted,.about-panel{border:1px solid var(--line);background:rgba(255,255,255,.04);border-radius:23px;padding:21px;margin-top:12px}.trusted p,.about-panel p{color:var(--muted);line-height:1.55}.source-note{font-size:10px;color:#858394;line-height:1.5;text-align:center;margin:18px}.about-panel{margin-top:0}.about-logo{font-size:42px;margin-bottom:18px}.about-panel hr{border:0;border-top:1px solid var(--line);margin:23px 0}.danger-btn{border:1px solid rgba(255,111,129,.3);background:rgba(255,111,129,.08);color:#ff98a5;border-radius:15px;padding:13px 15px;font-weight:700;cursor:pointer}.bottom-nav{position:fixed;z-index:40;bottom:12px;left:50%;transform:translateX(-50%);width:min(calc(100% - 24px),720px);height:72px;display:grid;grid-template-columns:repeat(5,1fr);background:rgba(20,20,39,.92);border:1px solid var(--line);backdrop-filter:blur(20px);border-radius:23px;padding:7px;box-shadow:0 18px 50px rgba(0,0,0,.45)}.bottom-nav button{border:0;background:none;color:#77758b;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer}.bottom-nav button span{font-size:20px}.bottom-nav button small{font-size:9px}.bottom-nav button.active{background:rgba(154,128,255,.13);color:var(--text)}.toast{position:fixed;z-index:60;left:50%;bottom:96px;transform:translate(-50%,20px);background:#f8f7ff;color:#141421;border-radius:999px;padding:11px 16px;font-weight:700;font-size:12px;opacity:0;pointer-events:none;transition:.25s;box-shadow:var(--shadow)}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:500px){.app-shell{padding-inline:13px}.home-grid{grid-template-columns:1fr 1fr}.action-card{min-height:180px;padding:15px}.hero-card{padding:27px 20px 21px}.hero-proof{grid-template-columns:auto auto 1fr;gap:12px}.button-grid{grid-template-columns:1fr 1fr}.button-grid .btn-primary{grid-column:1/-1}.mood-row{grid-template-columns:1fr 1fr}.prompt-card{align-items:flex-start;flex-direction:column}.text-btn{padding:0}.panel{padding:20px}.stat-grid article{padding:13px 5px}.reminder-card>div{grid-template-columns:1fr}.topbar{height:72px}}
@media(min-width:680px){.hero-card{padding:42px}.action-card{min-height:215px}.screen{padding-bottom:20px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* v3 useful relationship reminders */
.due-home-card,.history-card{border:1px solid rgba(255,215,121,.22);background:linear-gradient(145deg,rgba(255,215,121,.1),rgba(255,255,255,.035));border-radius:24px;padding:19px;margin:13px 0}.due-home-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.due-home-head h2,.history-card h2{margin:5px 0 0;font-size:19px}.due-home-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.due-mini{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:11px;border-radius:16px;background:rgba(10,10,25,.28);border:1px solid var(--line)}.due-mini .avatar{width:36px;height:36px;border-radius:12px}.due-mini strong{display:block;font-size:13px}.due-mini small{color:var(--muted);font-size:10px}.due-mini button{border:0;background:var(--cyan);color:#0f1b20;border-radius:10px;padding:8px 10px;font-weight:800;cursor:pointer}.advanced-add{grid-template-columns:minmax(0,1fr) auto auto}.advanced-add select{border:1px solid var(--line);background:#17172d;color:var(--text);border-radius:14px;padding:0 12px}.people-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.people-summary>div{border:1px solid var(--line);background:rgba(255,255,255,.04);border-radius:16px;padding:13px;text-align:center}.people-summary strong{display:block;font-size:23px}.people-summary span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}.people-tabs{display:flex;gap:7px;overflow:auto;margin:4px 0 12px}.people-tabs button{white-space:nowrap;border:1px solid var(--line);background:rgba(255,255,255,.035);color:var(--muted);border-radius:999px;padding:9px 13px;cursor:pointer}.people-tabs button.active{background:var(--text);color:var(--bg);border-color:var(--text);font-weight:800}.person-row.is-due{border-color:rgba(255,215,121,.45);background:rgba(255,215,121,.07)}.person-row.is-soon{border-color:rgba(154,128,255,.35)}.person-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.status-pill{display:inline-flex;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800}.status-pill.due{background:rgba(255,215,121,.14);color:var(--yellow)}.status-pill.soon{background:rgba(154,128,255,.14);color:#b9a8ff}.status-pill.ok{background:rgba(117,231,219,.12);color:var(--cyan)}.cadence-pill{font-size:9px;color:var(--muted);padding:4px 0}.person-actions{flex-wrap:wrap;justify-content:flex-end}.person-actions .more-btn{color:var(--muted)}.person-menu{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding-top:9px;border-top:1px solid var(--line)}.person-menu button{border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text);border-radius:11px;padding:9px;font-size:10px}.history-card{border-color:var(--line);background:rgba(255,255,255,.035);margin-top:14px}.recent-history{display:flex;flex-direction:column;gap:8px;margin-top:12px}.history-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.history-row:first-child{border-top:0}.history-row strong{font-size:13px}.history-row small{color:var(--muted)}.empty-small{color:var(--muted);font-size:12px;padding:8px 0}.hidden{display:none!important}
@media(max-width:560px){.advanced-add{grid-template-columns:1fr auto}.advanced-add select{grid-row:2;grid-column:1/-1;height:44px}.advanced-add .btn{grid-row:1;grid-column:2}.person-row{grid-template-columns:auto 1fr}.person-actions{grid-column:1/-1}.person-actions button{flex:1}.person-menu{grid-template-columns:1fr}.due-home-head{align-items:center}}

/* v4 clarity and polish */
:root{--surface:rgba(22,22,42,.9);--surface-strong:#17172d;--focus:0 0 0 4px rgba(154,128,255,.18)}
body{background:radial-gradient(circle at 50% -10%,rgba(102,78,201,.22),transparent 34%),linear-gradient(180deg,#0b0b18 0%,#0d0d1b 100%);overflow-x:hidden}
.app-shell{width:min(100%,780px);padding-inline:18px}
.topbar{height:76px;margin-inline:-18px;padding-inline:18px;background:rgba(11,11,24,.92);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border-bottom:1px solid rgba(255,255,255,.07);box-shadow:0 10px 30px rgba(0,0,0,.18);isolation:isolate}
.topbar:before{content:"";position:absolute;inset:0 50%;width:100vw;transform:translateX(-50%);background:inherit;border-bottom:inherit;box-shadow:inherit;z-index:-1}
.ui-icon{display:inline-block;width:1.15em;height:1.15em;background:currentColor;vertical-align:-.18em;mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}
.icon-arrow-right,.icon-chevron-right{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E")}
.icon-arrow-left{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M19 12H5M11 6l-6 6 6 6'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M19 12H5M11 6l-6 6 6 6'/%3E%3C/svg%3E")}
.icon-send{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M22 2 11 13'/%3E%3Cpath d='m22 2-7 20-4-9-9-4Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M22 2 11 13'/%3E%3Cpath d='m22 2-7 20-4-9-9-4Z'/%3E%3C/svg%3E")}
.icon-heart{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8l1.1 1.1L12 21l7.8-7.5 1.1-1.1a5.5 5.5 0 0 0-.1-7.8Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8l1.1 1.1L12 21l7.8-7.5 1.1-1.1a5.5 5.5 0 0 0-.1-7.8Z'/%3E%3C/svg%3E")}
.icon-home{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='m3 11 9-8 9 8'/%3E%3Cpath d='M5 10v10h14V10M9 20v-6h6v6'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='m3 11 9-8 9 8'/%3E%3Cpath d='M5 10v10h14V10M9 20v-6h6v6'/%3E%3C/svg%3E")}
.icon-people{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3 21v-2a6 6 0 0 1 12 0v2M16 3.5a3 3 0 0 1 0 5.8M17 14a5 5 0 0 1 4 5v2'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3 21v-2a6 6 0 0 1 12 0v2M16 3.5a3 3 0 0 1 0 5.8M17 14a5 5 0 0 1 4 5v2'/%3E%3C/svg%3E")}
.icon-impact{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 19V9M10 19V5M16 19v-7M22 19V2'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 19V9M10 19V5M16 19v-7M22 19V2'/%3E%3C/svg%3E")}
.icon-info{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v6M12 7h.01'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v6M12 7h.01'/%3E%3C/svg%3E")}
.icon-download{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M12 3v12m-5-5 5 5 5-5M5 21h14'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M12 3v12m-5-5 5 5 5-5M5 21h14'/%3E%3C/svg%3E")}
.icon-refresh,.icon-reset{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M20 6v5h-5M4 18v-5h5'/%3E%3Cpath d='M18.5 9A7 7 0 0 0 6 6.5L4 11M5.5 15A7 7 0 0 0 18 17.5l2-4.5'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M20 6v5h-5M4 18v-5h5'/%3E%3Cpath d='M18.5 9A7 7 0 0 0 6 6.5L4 11M5.5 15A7 7 0 0 0 18 17.5l2-4.5'/%3E%3C/svg%3E")}
.icon-note{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M4 4h16v16H4zM8 9h8M8 13h6'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M4 4h16v16H4zM8 9h8M8 13h6'/%3E%3C/svg%3E")}
.icon-breathe{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='12' cy='12' r='9' opacity='.55'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='12' cy='12' r='9' opacity='.55'/%3E%3C/svg%3E")}
.icon-lock{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='10' width='14' height='10' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='10' width='14' height='10' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E")}
.hero-card{border-radius:30px;padding:36px 28px 26px;background:linear-gradient(145deg,#25214c 0%,#17162d 58%,#121225 100%);box-shadow:0 24px 70px rgba(0,0,0,.35)}
.hero-card h1{max-width:560px}.lead{font-size:16px}.btn,.action-card,.wide-card,.tool-list>button,.support-link,.person-row{transition:transform .18s ease,border-color .18s ease,background .18s ease}
.btn:active,.action-card:active,.wide-card:active,.tool-list>button:active,.support-link:active{transform:scale(.985)}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none;box-shadow:var(--focus)}
.home-grid{gap:14px}.action-card{min-height:166px;border-radius:22px}.action-icon{margin-bottom:18px}.action-card p{font-size:13px}
.prompt-card{padding:17px 18px}.wide-card{padding:17px 18px}.page-head{align-items:center}.page-head h1{font-size:clamp(30px,7vw,44px)}
.simple-add{grid-template-columns:minmax(0,1fr) auto;margin-bottom:7px}.simple-add .btn{white-space:nowrap}.add-hint{margin:0 2px 18px;color:var(--muted);font-size:11px;line-height:1.45}
.people-summary{margin-top:4px}.people-tabs{background:rgba(255,255,255,.035);padding:4px;border:1px solid var(--line);border-radius:16px}.people-tabs button{flex:1;border:0;border-radius:12px;padding:10px 8px}.people-tabs button.active{background:rgba(255,255,255,.1);color:var(--text)}
.person-row{padding:15px;border-radius:20px}.person-actions button:first-child{background:var(--cyan);color:#0d2022;font-weight:800}.person-actions button:nth-child(2){background:rgba(255,255,255,.08)}
.tool-list>button,.support-link{min-height:78px}.tool-symbol{border-radius:14px}.tool-list b,.support-link b,.wide-card b{color:var(--muted);width:18px;height:18px}
.bottom-nav{bottom:10px;height:68px;border-radius:22px;background:rgba(18,18,36,.94)}.bottom-nav button span{width:21px;height:21px}.bottom-nav button small{font-size:9px;font-weight:700}
.message-tools button{display:inline-flex;align-items:center;gap:6px}.round-btn,.back{display:grid;place-items:center}.round-btn .ui-icon,.back .ui-icon{width:19px;height:19px}
@media(max-width:560px){.app-shell{padding-inline:14px}.topbar{margin-inline:-14px;padding-inline:14px}.hero-card{padding:30px 21px 22px}.home-grid{grid-template-columns:1fr}.action-card{min-height:132px}.simple-add{grid-template-columns:1fr}.simple-add .btn{width:100%}.person-row{grid-template-columns:auto 1fr}.people-tabs button{font-size:11px}.bottom-nav{width:calc(100% - 18px)}}

/* v5 campaign and mobile-fit refresh */
.campaign-card{position:relative;overflow:hidden;margin-top:14px;padding:22px;border:1px solid rgba(154,128,255,.3);border-radius:28px;background:linear-gradient(145deg,rgba(117,87,255,.24),rgba(117,231,219,.08) 75%,rgba(255,255,255,.035));box-shadow:0 20px 55px rgba(0,0,0,.22)}
.campaign-card:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:rgba(117,231,219,.13);filter:blur(45px);right:-70px;top:-80px;pointer-events:none}.campaign-card>*{position:relative;z-index:1}.campaign-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.campaign-badge{font-size:9px;font-weight:800;letter-spacing:1.4px;color:#d7ceff}.campaign-status{font-size:10px;color:var(--cyan);font-weight:700}.campaign-card h2{font-size:25px;margin:13px 0 7px}.campaign-card>p{margin:0;color:#c8c6d8;line-height:1.55;font-size:14px;max-width:590px}.campaign-days{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:17px 0}.campaign-days span{display:grid;place-items:center;min-height:43px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.055);font-size:11px;font-weight:800;letter-spacing:1px;color:var(--muted)}.campaign-days span.active{background:linear-gradient(135deg,var(--purple),var(--purple2));color:white;border-color:transparent;box-shadow:0 10px 24px rgba(117,87,255,.24)}.campaign-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.campaign-actions .btn{width:100%;min-width:0;padding-inline:12px}

html,body{max-width:100%;overflow-x:hidden}.app-shell,main,.screen,.panel,.hero-card,.campaign-card,.person-row,.reminder-card{min-width:0;max-width:100%}button,a,input,textarea,select{max-width:100%}.lead,.page-copy,.campaign-card p,.person-info,.support-list span{overflow-wrap:anywhere}.page-head>div{min-width:0}.person-row{overflow:visible}.person-info{min-width:0}.person-info strong,.person-info small{display:block;overflow-wrap:anywhere}.bottom-nav{padding-bottom:max(7px,env(safe-area-inset-bottom));bottom:max(8px,env(safe-area-inset-bottom))}.app-shell{padding-bottom:calc(112px + env(safe-area-inset-bottom));padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}.topbar{padding-top:env(safe-area-inset-top);height:calc(76px + env(safe-area-inset-top))}

@media(max-width:560px){
  .app-shell{padding-left:max(13px,env(safe-area-inset-left));padding-right:max(13px,env(safe-area-inset-right))}
  .topbar{margin-left:calc(-1 * max(13px,env(safe-area-inset-left)));margin-right:calc(-1 * max(13px,env(safe-area-inset-right)));padding-left:max(13px,env(safe-area-inset-left));padding-right:max(13px,env(safe-area-inset-right))}
  .hero-card{border-radius:27px}.hero-card h1{font-size:clamp(34px,11vw,47px)}
  .campaign-card{padding:18px;border-radius:23px}.campaign-card h2{font-size:22px}.campaign-actions{grid-template-columns:1fr}.campaign-days span{min-height:40px}
  .page-head{gap:10px}.page-head h1{font-size:clamp(29px,9.2vw,40px)}
  .panel{padding:18px;border-radius:23px}.option{padding:13px}.tone-row{gap:6px}.tone{padding:10px 6px;font-size:12px}
  .button-pair,.button-grid{grid-template-columns:1fr}.button-grid .btn-primary{grid-column:auto}.message-tools{gap:10px;align-items:flex-start}.message-tools span{text-align:right}
  .mood-row{grid-template-columns:1fr 1fr}.tool-list button,.support-link{grid-template-columns:auto minmax(0,1fr) auto}
  .advanced-add{grid-template-columns:1fr!important}.advanced-add select,.advanced-add .btn{min-height:48px;width:100%}
  .people-summary>div{padding:11px 4px}.people-summary strong{font-size:21px}.people-tabs{overflow-x:auto;scrollbar-width:none}.people-tabs::-webkit-scrollbar{display:none}.people-tabs button{flex:0 0 auto;min-width:max-content}
  .person-row{grid-template-columns:auto minmax(0,1fr)!important;gap:10px}.person-actions{grid-column:1/-1;width:100%;display:grid!important;grid-template-columns:1fr 1fr auto;justify-content:stretch}.person-actions button{width:100%;min-width:0}.person-menu{grid-template-columns:1fr!important}.cadence-pill{line-height:1.35}
  .stat-grid{gap:6px}.stat-grid article{padding:12px 4px}.stat-grid span{font-size:9px}.impact-hero>span{font-size:62px}
  .reminder-card>div{grid-template-columns:1fr}.reminder-card input,.reminder-card .btn{width:100%}
  .support-list a{align-items:flex-start}.support-list b{flex:0 0 auto}
  .bottom-nav{width:calc(100% - 12px);height:66px;border-radius:20px;padding:5px}.bottom-nav button{min-width:0;padding:4px 1px}.bottom-nav button small{font-size:8px;white-space:nowrap}.bottom-nav button span{width:19px;height:19px}
}
@media(max-width:360px){.brand small{font-size:8px;letter-spacing:1.1px}.round-btn{width:36px;height:36px}.hero-proof{gap:8px}.hero-proof p{display:none}.campaign-card{padding:16px}.campaign-days{gap:5px}.bottom-nav button small{font-size:7px}.people-summary span{font-size:8px}}


/* v6 mobile navigation, welcoming home and impact-card fixes */
.welcome-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 0;padding:10px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.035)}
.welcome-strip>div{min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;column-gap:9px;align-items:center;padding:9px;border-radius:15px}
.welcome-strip .ui-icon{grid-row:1/3;width:25px;height:25px;color:var(--cyan)}
.welcome-strip strong{font-size:12px;line-height:1.15}.welcome-strip small{font-size:9px;line-height:1.2;color:var(--muted);overflow-wrap:anywhere}
.hero-card{background:linear-gradient(145deg,#282455 0%,#191832 58%,#111124 100%)}
.hero-card h1{max-width:650px}.hero-card .lead{max-width:600px}
.bottom-nav{overflow:hidden;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}
.bottom-nav button{min-width:0;overflow:hidden;gap:4px;padding:5px 2px;line-height:1}
.bottom-nav button>.ui-icon{display:block;flex:0 0 auto;width:20px;height:20px;margin:0;vertical-align:initial}
.bottom-nav button small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;line-height:1.05;text-align:center}
.reminder-card{overflow:hidden}
.reminder-card>div{min-width:0;align-items:stretch}
.reminder-card input,.reminder-card .btn{min-width:0}
.reminder-card .btn{white-space:normal;line-height:1.25;text-align:center}
@media(max-width:560px){
  .welcome-strip{grid-template-columns:1fr;padding:7px}.welcome-strip>div{grid-template-columns:32px minmax(0,1fr);padding:7px 9px}.welcome-strip .ui-icon{width:22px;height:22px}
  .hero-card{padding:27px 19px 21px}.hero-card h1{font-size:clamp(32px,9.8vw,44px);letter-spacing:-1.8px}.hero-card .lead{font-size:14px}
  .bottom-nav{width:calc(100% - 16px);height:70px;padding:5px 4px;gap:1px}
  .bottom-nav button{border-radius:14px;padding:5px 1px}.bottom-nav button>.ui-icon{width:18px;height:18px}.bottom-nav button small{font-size:8px;white-space:normal}
  .reminder-card{padding:18px}.reminder-card h2{font-size:21px;line-height:1.15}.reminder-card p{font-size:13px;overflow-wrap:anywhere}.reminder-card>div{display:flex;flex-direction:column;gap:9px}.reminder-card input,.reminder-card .btn{display:flex;width:100%;max-width:100%}
}
@media(max-width:360px){
  .bottom-nav{width:calc(100% - 10px);padding-inline:3px}.bottom-nav button small{font-size:7px}.bottom-nav button>.ui-icon{width:17px;height:17px}
  .stat-grid{grid-template-columns:1fr}.stat-grid article{padding:12px}.impact-hero{padding:23px 16px}.impact-hero>span{font-size:54px}
}

/* v7 human-led home refresh */
.home-welcome{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);gap:24px;align-items:center;padding:38px;border:1px solid rgba(255,255,255,.1);border-radius:34px;background:radial-gradient(circle at 10% 20%,rgba(117,231,219,.16),transparent 34%),linear-gradient(145deg,#2b275b 0%,#191831 62%,#111124 100%);box-shadow:0 28px 80px rgba(0,0,0,.34);overflow:hidden}
.home-welcome:before{content:"";position:absolute;inset:auto -90px -120px auto;width:280px;height:280px;border:1px solid rgba(255,255,255,.08);border-radius:50%}.welcome-copy{position:relative;z-index:2;min-width:0}.welcome-copy h1{margin:8px 0 12px;font-size:clamp(44px,7vw,70px);line-height:.95;letter-spacing:-3.5px}.welcome-copy .lead{max-width:540px;margin:0 0 24px;color:#d3d1df;font-size:17px;line-height:1.6}.welcome-actions{display:flex;flex-wrap:wrap;gap:10px}.btn-soft{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:var(--text)}
.thought-card{position:relative;z-index:2;justify-self:end;width:min(100%,280px);padding:26px 24px 24px;border-radius:8px 8px 22px 8px;background:#f2eddd;color:#272330;transform:rotate(2.5deg);box-shadow:0 22px 45px rgba(0,0,0,.28)}.thought-card:after{content:"";position:absolute;right:-1px;bottom:-1px;border-style:solid;border-width:0 0 28px 28px;border-color:transparent transparent #cfc7b4 transparent}.thought-pin{position:absolute;top:-9px;left:50%;width:18px;height:18px;border-radius:50%;background:#7560ff;box-shadow:0 4px 8px rgba(0,0,0,.25)}.thought-card small{display:block;margin-bottom:14px;font-size:9px;font-weight:900;letter-spacing:1.4px;color:#756b78}.thought-card strong{display:block;font-family:Georgia,serif;font-size:22px;line-height:1.35;font-weight:500}.thought-signoff{display:block;margin-top:16px;text-align:right;font-size:12px;font-weight:800;color:#665b6d}
.campaign-ribbon{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center;margin-top:16px;padding:22px 24px;border-radius:24px;background:#f0bc53;color:#211b20;box-shadow:0 18px 45px rgba(0,0,0,.2)}.campaign-mark{display:flex;gap:5px;writing-mode:vertical-rl;transform:rotate(180deg)}.campaign-mark span{font-size:9px;font-weight:900;letter-spacing:1.2px}.campaign-copy h2{margin:4px 0 5px;font-size:22px;letter-spacing:-.5px}.campaign-copy p{margin:0;font-size:13px;line-height:1.45;color:#4a3b35}.campaign-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px;font-size:10px;font-weight:800}.campaign-meta span:first-child{padding:5px 8px;border-radius:999px;background:rgba(33,27,32,.12)}.campaign-actions{display:flex;flex-direction:column;align-items:stretch;gap:7px;min-width:150px}.campaign-ribbon .btn-light{background:#211b20;color:#fff;border:0}.text-link-btn{padding:8px 4px;border:0;background:transparent;color:inherit;font-weight:800;text-decoration:underline;text-underline-offset:4px}
.human-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);gap:14px}.conversation-starter,.care-card,.ways-card,.home-impact-card{border:1px solid var(--line);border-radius:28px}.conversation-starter{padding:24px;background:rgba(255,255,255,.045)}.starter-head{display:flex;gap:14px;align-items:flex-start}.starter-number{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:50%;background:var(--cyan);color:#102326;font-size:11px;font-weight:900}.starter-head small,.care-label{font-size:9px;font-weight:900;letter-spacing:1.2px;color:var(--muted)}.starter-head h2{margin:4px 0 18px;font-size:23px}.starter-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.starter-options button{min-height:50px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.04);color:var(--text);text-align:left;font-weight:700}.starter-options button:hover{border-color:rgba(117,231,219,.5);background:rgba(117,231,219,.08)}
.care-card{display:flex;flex-direction:column;justify-content:flex-end;padding:26px;background:linear-gradient(155deg,#6f56dc,#3d2e87);box-shadow:inset 0 1px rgba(255,255,255,.12)}.care-card h2{margin:8px 0 10px;font-family:Georgia,serif;font-size:27px;line-height:1.15;font-weight:500}.care-card p{margin:0 0 16px;color:#e2ddf5;font-size:13px;line-height:1.55}.care-card .text-link-btn{align-self:flex-start;padding-left:0;color:#fff}
.ways-card{margin-top:14px;padding:25px;background:rgba(255,255,255,.035)}.ways-intro{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:16px}.ways-intro h2{max-width:470px;margin:5px 0 0;font-size:24px}.ways-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.ways-list button{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;row-gap:2px;align-items:start;padding:17px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.035);color:var(--text);text-align:left}.way-icon{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(117,231,219,.12);color:var(--cyan);font-size:10px;font-weight:900}.ways-list strong{font-size:13px}.ways-list small{color:var(--muted);font-size:10px;line-height:1.35}
.home-impact-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;margin-top:14px;padding:24px;background:linear-gradient(135deg,rgba(117,231,219,.08),rgba(255,255,255,.03))}.home-impact-card h2{margin:6px 0;font-size:24px}.home-impact-card h2 strong{color:var(--cyan)}.home-impact-card p{margin:0;color:var(--muted);font-size:12px}.impact-people{display:grid;justify-items:end}.impact-people>strong{font-size:35px}.impact-people>span{color:var(--muted);font-size:10px}.impact-people button{margin-top:8px;padding:0;border:0;background:transparent;color:var(--cyan);font-size:11px;font-weight:800}.handwritten-prompt{background:#f2eddd;color:#292431;border:0;transform:rotate(-.35deg)}.handwritten-prompt .eyebrow{color:#756b78}.handwritten-prompt p{font-family:Georgia,serif;font-size:20px}.handwritten-prompt .text-btn{color:#5d4ccc}

@media(max-width:720px){.home-welcome{grid-template-columns:1fr;padding:29px 22px}.thought-card{justify-self:stretch;width:auto;transform:rotate(1deg)}.campaign-ribbon{grid-template-columns:1fr}.campaign-mark{writing-mode:initial;transform:none}.campaign-actions{min-width:0;flex-direction:row}.campaign-actions>*{flex:1}.human-grid{grid-template-columns:1fr}.ways-intro{display:block}.ways-list{grid-template-columns:1fr}.home-impact-card{grid-template-columns:1fr}.impact-people{justify-items:start}}
@media(max-width:480px){.home-welcome{padding:25px 18px;border-radius:28px}.welcome-copy h1{font-size:43px;letter-spacing:-2.5px}.welcome-actions{display:grid}.welcome-actions .btn{width:100%}.thought-card{padding:21px 19px}.thought-card strong{font-size:19px}.campaign-ribbon{padding:19px;border-radius:22px}.campaign-actions{display:grid}.starter-options{grid-template-columns:1fr}.conversation-starter,.care-card,.ways-card,.home-impact-card{padding:20px;border-radius:22px}.ways-list button{padding:14px}.home-impact-card{gap:10px}.handwritten-prompt{transform:none}.section-label{margin-top:24px}}

/* v8 final warmth and usability polish */
.page-head{margin-bottom:18px}.page-head>div{min-width:0}.page-head h1{max-width:620px}
.page-copy.warm-copy{padding:16px 18px;border:1px solid rgba(117,231,219,.12);border-radius:18px;background:rgba(117,231,219,.055);color:#d4d2df}
.panel,.check-yourself,.history-card,.reminder-card,.trusted,.about-panel{background:linear-gradient(155deg,rgba(255,255,255,.065),rgba(255,255,255,.035));box-shadow:inset 0 1px rgba(255,255,255,.055)}
.panel h2,.check-yourself p,.history-card h2,.trusted strong{color:#fff}
.message-box{background:rgba(8,8,20,.56);border-color:rgba(154,128,255,.24);line-height:1.55;min-height:154px}
.message-box:focus,.big-input:focus,.add-person input:focus,.add-person select:focus,.note-area:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 4px rgba(117,231,219,.09)}
.message-tools button{border-radius:999px;padding:9px 13px;background:rgba(117,231,219,.09);color:var(--cyan);font-weight:800}
.tone-row{padding:5px;border:1px solid var(--line);border-radius:18px;background:rgba(0,0,0,.12)}.tone{border-radius:13px}
.option{transition:.2s ease}.option:hover,.option.selected{transform:translateY(-1px)}
.tool-list>button,.support-list>a,.person-row{transition:transform .18s ease,border-color .18s ease,background .18s ease}.tool-list>button:hover,.support-list>a:hover{transform:translateY(-2px);border-color:rgba(117,231,219,.22)}
.check-yourself{border-radius:25px}.mood-row button{min-height:44px;border-radius:14px}.mood-row button:hover{background:rgba(154,128,255,.14)}
.privacy-note{background:linear-gradient(135deg,rgba(117,231,219,.07),rgba(255,255,255,.035))}
.impact-hero{background:radial-gradient(circle at 50% 0,rgba(117,231,219,.16),transparent 46%),linear-gradient(155deg,#1c1c37,#121225)}
.urgent{box-shadow:0 18px 50px rgba(255,111,129,.13)}
.support-list a b{border-radius:999px;padding:8px 12px;background:rgba(117,231,219,.1);color:var(--cyan)}
.about-panel{line-height:1.65}.about-panel p{color:#cbc9d7}
@media(max-width:560px){
 .page-head{align-items:flex-start}.page-head h1{font-size:clamp(32px,10vw,43px);letter-spacing:-1.8px}
 .panel{padding:22px 18px}.panel h2{font-size:25px}.message-box{min-height:170px;font-size:16px}
 .message-tools{align-items:center;gap:8px}.message-tools button{white-space:nowrap}.message-tools span{font-size:10px}
 .button-grid{grid-template-columns:1fr 1fr}.button-grid #smsMessageBtn{grid-column:1/-1}
 .mood-row{grid-template-columns:1fr 1fr}.tool-list>button{padding:17px 14px}
 .support-list>a{align-items:flex-start}.support-list>a b{flex:0 0 auto}
}

/* v9 restored human warmth across the full app */
.welcome-stats{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:22px;color:#c9c5d9;font-size:11px}.welcome-stats span{display:flex;align-items:baseline;gap:4px}.welcome-stats strong{color:#fff;font-size:18px}.campaign-ribbon{position:relative;padding-bottom:58px}.campaign-ribbon>.campaign-days{position:absolute;left:24px;right:24px;bottom:17px;display:flex;gap:8px}.campaign-ribbon>.campaign-days span{padding:6px 10px;border-radius:999px;background:rgba(33,27,32,.1);font-size:9px;font-weight:900}.campaign-ribbon>.campaign-days span.today{background:#211b20;color:#fff}.page-whisper{margin:-9px 0 20px;padding:14px 17px;border-left:3px solid var(--cyan);border-radius:0 15px 15px 0;background:linear-gradient(90deg,rgba(117,231,219,.1),rgba(255,255,255,.025));color:#cbc9d8;font-family:Georgia,serif;font-size:15px;line-height:1.5}.warm-page .panel,.warm-page .check-yourself,.warm-page .history-card,.warm-page .impact-hero,.warm-page .reminder-card,.warm-page .trusted,.warm-page .about-panel{box-shadow:0 18px 50px rgba(0,0,0,.2)}.warm-page .panel{background:radial-gradient(circle at 100% 0,rgba(154,128,255,.1),transparent 28%),linear-gradient(145deg,rgba(31,30,55,.98),rgba(18,18,35,.98))}.warm-page .page-head h1{font-family:Georgia,serif;font-weight:500;letter-spacing:-1.6px;line-height:1.06}.warm-page .page-head .eyebrow{color:var(--cyan)}.warm-page .option,.warm-page .tool-list>button,.warm-page .person-row,.warm-page .support-list>a{background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.025))}.warm-page .tool-list>button:nth-child(odd){border-color:rgba(117,231,219,.18)}.warm-page .check-yourself{background:linear-gradient(145deg,rgba(111,86,220,.2),rgba(255,255,255,.035))}.warm-page .privacy-note{background:#f2eddd;color:#292431;border:0;transform:rotate(-.2deg)}.warm-page .privacy-note p{color:#625b66}.warm-page .impact-hero{background:radial-gradient(circle at 50% 0,rgba(117,231,219,.16),transparent 38%),linear-gradient(145deg,#25214b,#15152a)}.warm-page .reminder-card{background:linear-gradient(135deg,#f0bc53,#e2a94a);color:#211b20;border:0}.warm-page .reminder-card .eyebrow,.warm-page .reminder-card p{color:#4d3d35}.warm-page .reminder-card input{background:rgba(255,255,255,.5);color:#211b20;border-color:rgba(33,27,32,.15)}.warm-page .reminder-card .btn{background:#211b20;color:#fff;border:0}.warm-page .trusted{background:#f2eddd;color:#292431;border:0}.warm-page .trusted p{color:#625b66}.warm-page .about-panel{background:radial-gradient(circle at 90% 10%,rgba(240,188,83,.12),transparent 32%),linear-gradient(145deg,rgba(31,30,55,.98),rgba(18,18,35,.98))}.message-box{min-height:155px;line-height:1.55}.message-tools button{padding:9px 12px;border-radius:999px;background:rgba(117,231,219,.1);color:var(--cyan)}
@media(max-width:720px){.campaign-ribbon{padding-bottom:68px}.campaign-ribbon>.campaign-days{left:19px;right:19px}.welcome-stats{gap:8px 12px}.welcome-stats span:last-child{width:100%}.page-whisper{font-size:14px}.home-impact-card h2{font-size:21px}}
@media(max-width:480px){.home-welcome{gap:20px}.thought-card{border-radius:7px 7px 18px 7px}.campaign-ribbon{padding-bottom:70px}.campaign-ribbon>.campaign-days{bottom:18px}.campaign-ribbon>.campaign-days span{flex:1;text-align:center}.welcome-stats strong{font-size:16px}.page-whisper{margin-top:-6px;padding:12px 14px}.warm-page .page-head h1{font-size:34px}.message-box{min-height:170px}}

/* v10 first-time welcome and personal touches */
body.onboarding-open{overflow:hidden}.welcome-overlay{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:18px;background:rgba(7,7,18,.82);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.welcome-overlay.hidden{display:none}.welcome-modal{position:relative;width:min(100%,560px);max-height:calc(100dvh - 36px);overflow:auto;padding:34px;border:1px solid rgba(255,255,255,.12);border-radius:32px;background:radial-gradient(circle at 90% 5%,rgba(154,128,255,.2),transparent 34%),linear-gradient(155deg,#232143,#111123 68%);box-shadow:0 32px 100px rgba(0,0,0,.55);color:#fff}.welcome-stars{position:absolute;inset:0;overflow:hidden;pointer-events:none}.welcome-stars i{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--cyan);box-shadow:0 0 18px var(--cyan);opacity:.65}.welcome-stars i:nth-child(1){top:9%;right:11%}.welcome-stars i:nth-child(2){top:22%;right:24%;width:3px;height:3px}.welcome-stars i:nth-child(3){bottom:13%;left:9%;width:4px;height:4px}.welcome-badge{display:inline-flex;align-items:baseline;gap:2px;margin-bottom:28px;font-size:22px;font-weight:950;letter-spacing:-1px}.welcome-badge>span{color:var(--cyan)}.welcome-badge small{margin-left:8px;color:#b9b5ca;font-size:9px;letter-spacing:1px;text-transform:uppercase}.onboarding-step{display:none;position:relative}.onboarding-step.active{display:block;animation:welcomeIn .35s ease both}@keyframes welcomeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.onboarding-step h1{margin:7px 0 13px;font-family:Georgia,serif;font-size:clamp(36px,8vw,54px);font-weight:500;line-height:1.02;letter-spacing:-2px}.onboarding-step>p:not(.eyebrow):not(.welcome-privacy){margin:0 0 24px;color:#d0ccdc;font-size:15px;line-height:1.65}.welcome-note{display:grid;gap:5px;margin:24px 0;padding:20px 22px;border-radius:7px 7px 20px 7px;background:#f2eddd;color:#292431;transform:rotate(-.5deg);box-shadow:0 16px 30px rgba(0,0,0,.18)}.welcome-note strong{font-family:Georgia,serif;font-size:20px}.welcome-note span{color:#655d68;font-size:12px;line-height:1.5}.onboarding-how{display:grid;gap:10px;margin:20px 0}.onboarding-how>div{display:grid;grid-template-columns:42px 1fr;gap:13px;align-items:start;padding:15px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:rgba(255,255,255,.045)}.onboarding-how b{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:rgba(117,231,219,.12);color:var(--cyan);font-size:10px}.onboarding-how span{display:grid;gap:3px}.onboarding-how strong{font-size:14px}.onboarding-how small{color:#bdb9ca;font-size:11px;line-height:1.45}.welcome-privacy{margin:17px 0 24px;color:#aaa6b9;font-size:11px;line-height:1.5}.name-label{display:block;margin:22px 0 8px;color:#d6d2e2;font-size:11px;font-weight:850;letter-spacing:.5px}.welcome-name-input{width:100%;min-height:58px;margin-bottom:14px;padding:0 17px;border:1px solid rgba(255,255,255,.14);border-radius:17px;background:rgba(4,4,13,.45);color:#fff;font:inherit;font-size:18px}.welcome-name-input:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 4px rgba(117,231,219,.1)}.onboarding-step .btn-large{width:100%;margin-top:4px}.welcome-skip{display:block;width:100%;margin-top:12px;padding:8px;border:0;background:transparent;color:#aaa6b9;font-weight:700}.profile-settings{margin:24px 0;padding:18px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.035)}.profile-settings>label{display:block;margin-bottom:9px;color:#c9c5d7;font-size:11px;font-weight:800}.profile-settings>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}.profile-settings input{min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:rgba(5,5,16,.4);color:#fff;font:inherit}
@media(max-width:520px){.welcome-overlay{padding:0;align-items:stretch}.welcome-modal{width:100%;max-height:100dvh;min-height:100dvh;padding:calc(27px + env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom));border:0;border-radius:0}.welcome-badge{margin-bottom:22px}.onboarding-step h1{font-size:39px}.onboarding-step>p:not(.eyebrow):not(.welcome-privacy){font-size:14px}.profile-settings>div{grid-template-columns:1fr}.profile-settings .btn{width:100%}}

/* v11 final clean-up and motion polish */
:root{--ease:cubic-bezier(.22,1,.36,1);--ease-soft:cubic-bezier(.4,0,.2,1)}
body{background:radial-gradient(circle at 18% -4%,rgba(117,87,255,.25),transparent 34%),radial-gradient(circle at 102% 30%,rgba(117,231,219,.12),transparent 27%),#0b0b18}
.app-shell{padding-inline:clamp(14px,4vw,22px)}
.topbar{height:76px;margin-inline:calc(clamp(14px,4vw,22px) * -1);padding-inline:clamp(14px,4vw,22px);background:linear-gradient(180deg,rgba(11,11,24,.98) 0%,rgba(11,11,24,.86) 68%,rgba(11,11,24,0) 100%);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.screen{display:none;opacity:0;transform:translateY(12px) scale(.995)}
.screen.active{display:block;animation:screenIn .48s var(--ease) both}
.screen.leaving{display:block;position:absolute;inset:76px 0 auto;pointer-events:none;animation:screenOut .22s var(--ease-soft) both}
@keyframes screenIn{from{opacity:0;transform:translateY(14px) scale(.992)}to{opacity:1;transform:none}}
@keyframes screenOut{to{opacity:0;transform:translateY(-6px) scale(.995)}}
.panel,.conversation-starter,.care-card,.ways-card,.home-impact-card,.warm-note,.person-row,.support-link,.tool-list button,.stat-grid article,.reminder-card,.impact-hero,.campaign-ribbon,.home-welcome{transition:transform .28s var(--ease),border-color .28s ease,background-color .28s ease,box-shadow .28s ease}
@media(hover:hover){.conversation-starter:hover,.ways-card:hover,.home-impact-card:hover,.warm-note:hover,.person-row:hover,.support-link:hover,.tool-list button:hover,.stat-grid article:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.16)}.btn:hover,.option:hover,.tone:hover,.starter-options button:hover,.ways-list button:hover{transform:translateY(-1px)}}
.btn,.option,.tone,.starter-options button,.ways-list button,.bottom-nav button,.round-btn,.back,.text-link-btn{transition:transform .18s var(--ease),background .22s ease,border-color .22s ease,color .22s ease,box-shadow .22s ease,opacity .22s ease}
.btn:active,.option:active,.tone:active,.starter-options button:active,.ways-list button:active,.bottom-nav button:active,.round-btn:active,.back:active{transform:scale(.97)}
.btn-primary{box-shadow:0 12px 32px rgba(117,87,255,.24)}
.btn-primary:hover{box-shadow:0 16px 38px rgba(117,87,255,.32)}
.bottom-nav{background:rgba(20,20,39,.88);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 16px 46px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.08)}
.bottom-nav button.active{background:rgba(154,128,255,.14)}
.bottom-nav button.active .ui-icon{transform:translateY(-1px)}
.bottom-nav .ui-icon{transition:transform .25s var(--ease),color .2s ease}
.home-welcome{box-shadow:0 26px 70px rgba(0,0,0,.3)}
.thought-card{transition:transform .45s var(--ease),box-shadow .35s ease}
@media(hover:hover){.thought-card:hover{transform:rotate(1deg) translateY(-4px);box-shadow:0 28px 54px rgba(0,0,0,.34)}}
.welcome-overlay{animation:overlayFade .35s ease both}.welcome-modal{animation:modalIn .55s var(--ease) both}
@keyframes overlayFade{from{opacity:0}to{opacity:1}}@keyframes modalIn{from{opacity:0;transform:translateY(22px) scale(.98)}to{opacity:1;transform:none}}
.onboarding-step.active{animation:stepIn .4s var(--ease) both}@keyframes stepIn{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
.step.active{animation:stepIn .4s var(--ease) both}
.toast{animation:toastIn .4s var(--ease) both}@keyframes toastIn{from{opacity:0;transform:translate(-50%,16px) scale(.96)}to{opacity:1;transform:translate(-50%,0) scale(1)}}
.message-box{transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.message-box:focus,.big-input:focus,.add-person input:focus,.welcome-name-input:focus{box-shadow:0 0 0 4px rgba(154,128,255,.12)}
@media(max-width:560px){.app-shell{padding-inline:12px}.topbar{margin-inline:-12px;padding-inline:14px}.home-welcome{border-radius:27px}.campaign-ribbon,.conversation-starter,.care-card,.ways-card,.home-impact-card,.panel{border-radius:23px}.screen.leaving{inset-top:76px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.screen{transform:none!important}}

/* v12 mobile reliability, warmth and useful interaction polish */
html{scroll-padding-bottom:110px}
body{overscroll-behavior-y:none}
button,a{-webkit-tap-highlight-color:transparent}

/* Toasts only appear when deliberately shown */
.toast{display:block;max-width:min(88vw,420px);width:max-content;white-space:normal;text-align:center;bottom:calc(92px + env(safe-area-inset-bottom));padding:12px 17px;border-radius:16px;opacity:0;visibility:hidden;transform:translate(-50%,14px) scale(.97);animation:none!important;transition:opacity .22s ease,transform .3s var(--ease),visibility 0s linear .3s}
.toast.show{opacity:1;visibility:visible;transform:translate(-50%,0) scale(1);transition-delay:0s;animation:toastPop .34s var(--ease) both!important}
@keyframes toastPop{from{opacity:0;transform:translate(-50%,12px) scale(.96)}to{opacity:1;transform:translate(-50%,0) scale(1)}}

/* Campaign ribbon: stable card layout at every width */
.campaign-ribbon{grid-template-columns:48px minmax(0,1fr) minmax(132px,auto);padding:22px 24px 64px;isolation:isolate;overflow:hidden}
.campaign-ribbon>*{min-width:0}
.campaign-copy{min-width:0}
.campaign-copy>span:first-child{display:inline-flex;max-width:100%;padding:6px 9px;border-radius:999px;background:rgba(33,27,32,.1);font-size:10px;font-weight:850;line-height:1.2}
.campaign-copy h2{overflow-wrap:anywhere;text-wrap:balance;line-height:1.12}
.campaign-copy p{overflow-wrap:anywhere}
.campaign-actions{width:100%;max-width:170px}
.campaign-actions .btn,.campaign-actions .text-link-btn{width:100%;min-height:43px;white-space:normal;text-align:center;line-height:1.2}
.campaign-days{min-width:0}
.campaign-ribbon>.campaign-days{left:24px;right:24px;bottom:18px;flex-wrap:wrap}
.campaign-ribbon>.campaign-days span{flex:0 0 auto;min-width:43px;text-align:center}
.campaign-ribbon>.campaign-days span.active,.campaign-ribbon>.campaign-days span.today{background:#211b20;color:#fff;box-shadow:0 5px 14px rgba(33,27,32,.18)}

/* Support call-to-action: no text/icon collision */
.support-link{grid-template-columns:minmax(0,1fr) 34px!important;gap:12px;align-items:center;overflow:hidden;text-align:left}
.support-link>span{min-width:0;display:flex!important;flex-direction:column;align-items:flex-start}
.support-link small,.support-link strong{max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.25}
.support-link>b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(255,155,198,.12);font-size:0;flex:0 0 auto}
.support-link>b:after{content:'›';font-size:24px;line-height:1;color:var(--pink);transform:translateY(-1px)}

/* Impact reminder card: true mobile-first controls */
.reminder-card{width:100%;max-width:100%;overflow:hidden}
.reminder-card>*{min-width:0;max-width:100%}
.reminder-card h2{overflow-wrap:anywhere;text-wrap:balance}
.reminder-card>div{display:grid;grid-template-columns:minmax(110px,.72fr) minmax(0,1.28fr);align-items:stretch}
.reminder-card input{min-height:50px;appearance:none;-webkit-appearance:none}
.reminder-card .btn{min-height:50px;width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.18;padding:12px 14px}

/* Friendlier, clearer tap targets */
.tool-list>button,.ways-list button,.starter-options button,.option,.person-row,.support-list a{min-height:54px}
.tool-list>button{grid-template-columns:42px minmax(0,1fr) 30px}
.tool-list>button>span:nth-child(2){min-width:0}
.tool-list p,.tool-list strong{overflow-wrap:anywhere}
.button-grid>*{min-width:0;white-space:normal;line-height:1.2}

/* Sleek motion cues */
.home-welcome:after{content:'';position:absolute;inset:-45% auto auto -30%;width:70%;height:190%;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.055),transparent 65%);transform:translateX(-130%) rotate(8deg);animation:ambientSweep 9s ease-in-out infinite;pointer-events:none}
@keyframes ambientSweep{0%,64%{transform:translateX(-130%) rotate(8deg)}82%,100%{transform:translateX(260%) rotate(8deg)}}
.thought-pin{animation:pinFloat 3.4s ease-in-out infinite}
@keyframes pinFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
.campaign-ribbon>.campaign-days span.active{animation:campaignPulse 2.2s ease-in-out infinite}
@keyframes campaignPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}
.screen.active .panel,.screen.active .warm-note,.screen.active .check-yourself,.screen.active .reminder-card,.screen.active .history-card{animation:cardSettle .48s var(--ease) both}
@keyframes cardSettle{from{opacity:.65;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Draft status inside the message generator */
.draft-status{font-size:10px;color:var(--muted);margin-left:auto;padding-left:8px}
.draft-status.saved{color:var(--cyan)}

@media(max-width:720px){
  .campaign-ribbon{grid-template-columns:1fr;padding:21px 20px 68px;gap:14px}
  .campaign-mark{display:flex;writing-mode:initial;transform:none;gap:6px;flex-wrap:wrap}
  .campaign-mark span{padding:4px 7px;border-radius:999px;background:rgba(33,27,32,.09)}
  .campaign-actions{max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
  .campaign-ribbon>.campaign-days{left:20px;right:20px}
}

@media(max-width:560px){
  .app-shell{padding-inline:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
  .home-welcome{gap:20px}
  .thought-card{margin-inline:2px}
  .campaign-copy h2{font-size:20px;margin-top:8px}
  .campaign-copy p{font-size:12.5px}
  .campaign-meta{gap:7px}
  .campaign-actions{grid-template-columns:1fr}
  .campaign-actions .text-link-btn{border:1px solid rgba(33,27,32,.18);border-radius:14px;text-decoration:none}
  .support-link{padding:15px 14px}
  .support-link strong{font-size:14px}
  .reminder-card{padding:19px 16px}
  .reminder-card>div{grid-template-columns:1fr}
  .reminder-card input,.reminder-card .btn{width:100%;max-width:100%}
  .button-grid{grid-template-columns:1fr 1fr}
  .button-grid .btn-primary{grid-column:1/-1}
  .message-tools{flex-wrap:wrap;gap:6px}
  .draft-status{width:100%;margin:0;padding:0;text-align:right}
  .tool-list>button{padding:14px 12px;gap:11px}
  .bottom-nav{height:68px}
}

@media(max-width:380px){
  .campaign-ribbon{padding-inline:16px}.campaign-ribbon>.campaign-days{left:16px;right:16px}
  .campaign-ribbon>.campaign-days span{min-width:40px;padding-inline:8px}
  .home-welcome{padding-inline:16px}.welcome-copy h1{font-size:39px}
  .support-link{grid-template-columns:minmax(0,1fr) 30px!important}.support-link>b{width:30px;height:30px}
  .mood-row{grid-template-columns:1fr 1fr}
}

@media(prefers-reduced-motion:reduce){.home-welcome:after,.thought-pin,.campaign-ribbon>.campaign-days span.active{animation:none!important}}

/* v13 — friendlier, simpler people and For Me pages */
.people-welcome-card{position:relative;overflow:hidden;margin:0 0 14px;padding:22px;border-radius:25px;background:linear-gradient(145deg,#f2eddd,#e8dfc8);color:#292431;box-shadow:0 18px 44px rgba(0,0,0,.18);transform:rotate(-.15deg)}
.people-welcome-card:after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;background:rgba(240,188,83,.32);right:-38px;top:-44px}.people-welcome-card h2{margin:5px 0 7px;font:600 24px/1.08 Georgia,serif}.people-welcome-card p{margin:0;color:#625b66;line-height:1.5;max-width:520px}.people-scribble{display:block;margin-top:15px;font:italic 13px Georgia,serif;color:#71676b}.simple-people-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;margin-bottom:14px}.simple-people-add input{min-height:52px}.friendly-summary{gap:9px}.friendly-summary>div{padding:16px 9px;background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025))}.friendly-tabs{padding:4px;background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:18px;overflow:visible}.friendly-tabs button{flex:1;border:0;background:transparent;padding:11px 8px;font-size:10px}.friendly-tabs button.active{background:#f2eddd;color:#292431;box-shadow:0 5px 15px rgba(0,0,0,.18)}
.person-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.person-actions{grid-column:1/-1;display:grid!important;grid-template-columns:1fr auto!important;width:100%;margin-top:10px}.person-actions button:nth-child(2){display:none}.person-actions .more-btn{min-width:48px}.person-meta .cadence-pill{display:none}.person-menu button{min-height:44px}.history-card{margin-top:20px}.tool-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tool-list>button{min-height:128px;grid-template-columns:38px minmax(0,1fr)!important;align-items:start}.tool-list>button>b{display:none}.tool-list>button>span:nth-child(2){align-self:center}.tool-list p{margin-top:4px}.tool-panel{animation:softOpen .35s cubic-bezier(.2,.8,.2,1)}@keyframes softOpen{from{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}.headspace-grid,.winddown-list,.tiny-plan-grid,.distraction-grid{display:grid;gap:9px;margin-top:15px}.headspace-grid button,.distraction-grid button,.winddown-list label,.tiny-plan-grid input{border:1px solid var(--line);background:rgba(255,255,255,.055);color:var(--text);border-radius:15px;padding:14px;text-align:left}.headspace-grid button,.distraction-grid button{cursor:pointer}.headspace-grid button.selected,.distraction-grid button.selected{border-color:var(--cyan);background:rgba(117,231,219,.1)}.winddown-list label{display:flex;gap:10px;align-items:center}.tiny-plan-grid input{width:100%;outline:none}.tool-result{margin:14px 0 0;padding:14px;border-radius:15px;background:rgba(117,231,219,.09);color:#d9f8f3}.message-tools{flex-wrap:wrap}.message-tools #refreshMessageBtn{min-height:42px}.message-box{background:linear-gradient(145deg,rgba(0,0,0,.22),rgba(255,255,255,.025))}
@media(max-width:560px){.simple-people-add{grid-template-columns:1fr}.simple-people-add .btn{width:100%}.friendly-tabs{display:grid;grid-template-columns:1fr}.friendly-tabs button{width:100%}.tool-list{grid-template-columns:1fr}.tool-list>button{min-height:88px}.person-actions{grid-template-columns:1fr auto!important}.people-welcome-card{padding:20px}.people-welcome-card h2{font-size:22px}}


/* v14 private mood journal */
.mood-check-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.mood-check-heading>div{min-width:0}.mood-check-heading>div>p{margin:5px 0 14px!important}.mood-history-link{flex:0 0 auto;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);color:#fff;border-radius:999px;padding:10px 13px;font-size:11px;font-weight:800;cursor:pointer}.mood-row{grid-template-columns:repeat(5,1fr)}.mood-mini-summary{display:grid;grid-template-columns:1fr auto;gap:2px 12px;margin-top:14px;padding:13px 14px;border-radius:15px;background:rgba(0,0,0,.14);border:1px solid rgba(255,255,255,.08)}.mood-mini-summary span,.mood-mini-summary small{color:#c8c5d6;font-size:11px}.mood-mini-summary strong{grid-row:1/3;grid-column:2;align-self:center;color:var(--cyan)}.mood-journal-panel{margin:14px 0 18px;padding:22px;border:1px solid var(--line);border-radius:27px;background:radial-gradient(circle at 100% 0,rgba(117,231,219,.11),transparent 30%),linear-gradient(145deg,#201e3a,#141428);box-shadow:var(--shadow);animation:softOpen .35s cubic-bezier(.2,.8,.2,1)}.mood-panel-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.mood-panel-head h2{margin:4px 0 5px;font:500 29px Georgia,serif}.mood-panel-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.mood-pattern{margin:18px 0;padding:16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid var(--line)}.mood-pattern-copy{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.mood-pattern-copy small{color:var(--muted)}.mood-bars{height:76px;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;align-items:end;margin-top:12px}.mood-bars>div{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px}.mood-bars i{display:block;width:min(24px,70%);min-height:8px;border-radius:8px 8px 3px 3px;background:linear-gradient(var(--cyan),var(--purple));transition:height .45s cubic-bezier(.2,.8,.2,1)}.mood-bars span{font-size:9px;color:var(--muted);text-align:center}.mood-list-heading{display:flex;justify-content:space-between;align-items:center;margin:18px 2px 8px}.mood-list-heading small{color:var(--muted)}.mood-history-list{display:flex;flex-direction:column;gap:8px}.mood-entry{width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;border:1px solid var(--line);background:rgba(255,255,255,.035);color:var(--text);border-radius:16px;padding:12px;text-align:left;cursor:pointer}.mood-entry.active{border-color:rgba(117,231,219,.55);background:rgba(117,231,219,.07)}.mood-entry span:nth-child(2){display:flex;flex-direction:column}.mood-entry small{color:var(--muted)}.mood-entry em{font-style:normal;font-size:10px;color:var(--cyan)}.mood-dot{width:13px;height:13px;border-radius:50%;display:inline-block;background:#999}.mood-heavy{background:#8d78dc}.mood-overwhelmed{background:#ec7b91}.mood-flat{background:#7c8ca7}.mood-okay{background:#e3b959}.mood-good{background:#70d4bd}.mood-editor{margin:18px 0;padding:18px;border-radius:20px;background:#f2eddd;color:#2b2630;box-shadow:0 12px 30px rgba(0,0,0,.18)}.mood-editor-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px}.mood-editor-title>div{display:flex;gap:10px;align-items:center}.mood-editor-title>div>div{display:flex;flex-direction:column}.mood-editor-title small{color:#726a74}.mood-editor-title>button{border:0;background:none;color:#9b4d5c;font-weight:800;cursor:pointer}.mood-field{display:block;margin-top:15px}.mood-field>span{display:block;font-weight:800;margin-bottom:8px}.mood-field input[type=range]{width:100%;accent-color:#775ee0}.mood-field>small{display:block;text-align:right;color:#716975}.mood-field textarea,.mood-field input[type=text],.mood-field input:not([type]){width:100%;border:1px solid rgba(43,38,48,.16);background:rgba(255,255,255,.58);color:#2b2630;border-radius:14px;padding:13px;outline:none}.mood-field textarea{min-height:108px;resize:vertical}.mood-tags{display:flex;flex-wrap:wrap;gap:7px}.mood-tags button{border:1px solid rgba(43,38,48,.14);background:rgba(255,255,255,.5);color:#4a434d;border-radius:999px;padding:9px 11px;cursor:pointer}.mood-tags button.selected{background:#2b2630;color:#fff;border-color:#2b2630}.mood-editor-actions{display:grid;grid-template-columns:1.2fr 1fr;gap:9px;margin-top:17px}.mood-editor .btn-quiet{color:#2b2630;border-color:rgba(43,38,48,.15);background:rgba(43,38,48,.06)}
@media(max-width:560px){.mood-check-heading{display:block}.mood-history-link{margin-bottom:12px}.mood-row{grid-template-columns:repeat(2,1fr)}.mood-row button:last-child{grid-column:1/-1}.mood-journal-panel{padding:17px 14px}.mood-panel-head h2{font-size:25px}.mood-pattern-copy{display:block}.mood-pattern-copy small{display:block;margin-top:4px}.mood-bars span{font-size:8px}.mood-entry{grid-template-columns:auto minmax(0,1fr)}.mood-entry em{grid-column:2}.mood-editor{padding:16px 13px}.mood-editor-actions{grid-template-columns:1fr}.mood-mini-summary{grid-template-columns:1fr}.mood-mini-summary strong{grid-column:1;grid-row:auto}.mood-panel-head .round-btn{width:38px;height:38px}}

/* v16 — calmer workflows and progressive disclosure */
.home-paths,.for-me-workflows{margin:16px 0 18px}
.home-paths{padding:22px;border:1px solid var(--line);border-radius:27px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025));box-shadow:0 18px 45px rgba(0,0,0,.14)}
.home-paths-head h2,.workflow-intro h2{margin:5px 0 7px;font:600 25px/1.08 Georgia,serif}
.home-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}
.home-path-grid button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;min-height:92px;padding:15px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.045);color:var(--text);text-align:left;transition:transform .25s var(--ease),background .25s ease,border-color .25s ease}
.home-path-grid button:hover{transform:translateY(-2px);background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.18)}
.home-path-grid button span:nth-child(2){min-width:0}.home-path-grid strong{display:block;font-size:14px}.home-path-grid small{display:block;margin-top:4px;color:var(--muted);line-height:1.35}.home-path-grid i{font-style:normal;font-size:25px;color:var(--pink)}
.path-number{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f2eddd;color:#292431;font-size:10px;font-weight:900}
.soft-disclosure,.people-add-flow,.workflow-group{margin:12px 0;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.035);overflow:hidden;transition:border-color .25s ease,background .25s ease,box-shadow .25s ease}
.soft-disclosure[open],.people-add-flow[open],.workflow-group[open]{border-color:rgba(255,255,255,.17);background:rgba(255,255,255,.055);box-shadow:0 18px 38px rgba(0,0,0,.13)}
.soft-disclosure>summary,.people-add-flow>summary,.workflow-group>summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;min-height:70px;padding:15px 17px;cursor:pointer}
.soft-disclosure>summary::-webkit-details-marker,.people-add-flow>summary::-webkit-details-marker,.workflow-group>summary::-webkit-details-marker{display:none}
.soft-disclosure summary span,.people-add-flow summary span{min-width:0}.soft-disclosure summary small,.people-add-flow summary small{display:block;color:var(--muted);font-size:9px;font-weight:850;letter-spacing:.13em}.soft-disclosure summary strong,.people-add-flow summary strong{display:block;margin-top:3px;font-size:14px;line-height:1.3}
.soft-disclosure summary>i,.people-add-flow summary>i,.workflow-group summary>i{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.065);font-style:normal;font-size:20px;transition:transform .3s var(--ease),background .25s ease}
.soft-disclosure[open] summary>i,.people-add-flow[open] summary>i,.workflow-group[open] summary>i{transform:rotate(45deg);background:rgba(255,155,198,.14)}
.disclosure-body{padding:0 16px 16px;animation:workflowReveal .32s var(--ease) both}
@keyframes workflowReveal{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.home-more-connect .section-label{margin-top:4px}.home-more-connect .human-grid{margin-bottom:10px}.home-impact-disclosure .home-impact-card{margin:0}
.workflow-intro{padding:4px 2px 10px}.workflow-intro p{margin:0;color:var(--muted);line-height:1.5}
.workflow-group>summary{grid-template-columns:auto minmax(0,1fr) auto}
.workflow-group summary span:nth-child(2){min-width:0}.workflow-group summary strong{display:block;font-size:15px}.workflow-group summary small{display:block;margin-top:3px;color:var(--muted);line-height:1.35}
.workflow-dot{width:13px;height:13px;border-radius:50%;box-shadow:0 0 0 6px rgba(255,255,255,.035)}.workflow-dot.calm{background:var(--cyan)}.workflow-dot.clear{background:#f0bc53}.workflow-dot.reach{background:var(--pink)}
.workflow-tools{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:0 14px 14px;animation:workflowReveal .3s var(--ease) both}
.workflow-tools>button,.workflow-tools>.support-link{margin:0;min-height:108px;border:1px solid var(--line);border-radius:19px;background:rgba(255,255,255,.04)}
.workflow-tools>button{display:grid;grid-template-columns:38px minmax(0,1fr) 24px;align-items:center;gap:10px;padding:14px;color:var(--text);text-align:left}
.workflow-tools>button span:nth-child(2){min-width:0}.workflow-tools>button small{display:block;color:var(--muted);font-size:9px;letter-spacing:.1em}.workflow-tools>button strong{display:block;margin:3px 0;font-size:13px}.workflow-tools>button p{margin:0;color:var(--muted);font-size:11px;line-height:1.35}.workflow-tools>button b{font-size:0}.workflow-tools>button b:after{content:'›';font-size:22px;color:var(--pink)}
.people-add-flow .simple-people-add{margin:0}.people-history-flow .history-card{margin:0;border:0;background:transparent;box-shadow:none;padding:0}.impact-reminder-flow .reminder-card{margin:0;border:0;background:transparent;box-shadow:none;padding:4px 0 0}
.people-summary{margin-top:14px}.friendly-tabs{margin-top:12px}.privacy-note{opacity:.84}
.campaign-ribbon{margin-bottom:14px}.campaign-copy p{max-width:620px}

@media(max-width:760px){
 .home-path-grid{grid-template-columns:1fr}.home-path-grid button{min-height:78px}
 .workflow-tools{grid-template-columns:1fr}.workflow-tools>button,.workflow-tools>.support-link{min-height:82px}
 .home-more-connect .human-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
 .home-paths{padding:18px 15px;border-radius:23px}.home-paths-head h2,.workflow-intro h2{font-size:22px}
 .home-path-grid{gap:8px;margin-top:13px}.home-path-grid button{padding:13px 12px;border-radius:17px}
 .soft-disclosure>summary,.people-add-flow>summary,.workflow-group>summary{padding:14px 13px;min-height:66px}
 .disclosure-body{padding:0 12px 12px}.workflow-tools{padding:0 11px 11px}
 .campaign-ribbon{padding-top:18px}.campaign-copy p{display:none}.campaign-meta{margin-top:7px}
 .campaign-actions .text-link-btn{display:none}.campaign-ribbon>.campaign-days{bottom:14px}
 .people-welcome-card{padding:18px}.people-welcome-card p{font-size:12px}.people-scribble{margin-top:10px}
 .friendly-summary>div{padding:12px 6px}.friendly-tabs button{padding:10px 5px;font-size:9px}
}

/* v17 first-time guided tutorial */
.onboarding-progress{display:flex;justify-content:center;gap:7px;margin-top:22px}.onboarding-progress span{width:7px;height:7px;border-radius:999px;background:rgba(255,255,255,.18);transition:width .3s ease,background .3s ease}.onboarding-progress span.active{width:25px;background:var(--cyan)}
.tutorial-preview{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center;margin:22px 0 15px;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:rgba(255,255,255,.055);box-shadow:0 18px 45px rgba(0,0,0,.16)}.tutorial-preview>div{display:grid;gap:4px;min-width:0}.tutorial-preview strong{font-size:16px}.tutorial-preview small{color:#c6c1d2;font-size:12px;line-height:1.5}.tutorial-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:rgba(117,231,219,.13);color:var(--cyan);font-size:11px;font-weight:950}.tutorial-avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#f0e8cd;color:#252037;font-family:Georgia,serif;font-size:21px;font-weight:800}.tutorial-people-preview{grid-template-columns:auto minmax(0,1fr) auto}.tutorial-pill{padding:7px 9px;border-radius:999px;background:rgba(255,211,106,.13);color:#ffe09a;font-size:9px;font-weight:900;white-space:nowrap}.tutorial-tip{margin:0 0 22px!important;padding-left:13px;border-left:2px solid var(--cyan);color:#c9c5d6!important;font-size:12px!important;line-height:1.55!important}.tutorial-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:22px 0 17px}.tutorial-tool-grid>div{display:grid;gap:6px;min-width:0;padding:16px 12px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:rgba(255,255,255,.045)}.tutorial-tool-grid span{color:var(--cyan);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.8px}.tutorial-tool-grid strong{font-size:12px;line-height:1.35}.tutorial-actions{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center}.tutorial-actions .btn{width:100%;margin:0}.welcome-back{min-height:48px;padding:0 14px;border:1px solid rgba(255,255,255,.12);border-radius:15px;background:rgba(255,255,255,.045);color:#d3cede;font:inherit;font-size:12px;font-weight:800}.tutorial-final-note{margin-top:20px}.tutorial-replay-btn{width:100%;margin:0 0 10px}
@media(max-width:520px){.tutorial-tool-grid{grid-template-columns:1fr}.tutorial-tool-grid>div{grid-template-columns:auto 1fr;align-items:center;padding:13px 15px}.tutorial-people-preview{grid-template-columns:auto minmax(0,1fr)}.tutorial-pill{grid-column:2;justify-self:start}.onboarding-progress{margin-top:18px}.tutorial-actions{position:sticky;bottom:0;padding-top:12px;background:linear-gradient(transparent,#111123 26%)}}

/* v18 contrast fixes */
.warm-page .trusted > strong{
  color:#292431;
}
.impact-reminder-flow .reminder-card,
.warm-page .impact-reminder-flow .reminder-card{
  color:var(--text);
}
.warm-page .impact-reminder-flow .reminder-card .eyebrow{
  color:var(--cyan);
}
.warm-page .impact-reminder-flow .reminder-card h2{
  color:#fff;
}
.warm-page .impact-reminder-flow .reminder-card p{
  color:#c9c7d8;
}


/* v19 — Rita, the playful 3AM capybara */
.topbar{gap:10px}.brand,.top-actions{position:relative;z-index:3;flex:0 0 auto}.rita-header-zone{position:relative;flex:1;min-width:90px;height:74px;overflow:visible}.rita-mascot{position:absolute;left:50%;bottom:5px;width:70px;height:58px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;transition:left 2.2s cubic-bezier(.22,.8,.2,1);z-index:2;filter:drop-shadow(0 9px 10px rgba(0,0,0,.24))}.rita-mascot:hover .rita-capy-wrap{transform:translateY(-3px) rotate(-2deg) scale(1.05)}.rita-mascot:focus-visible{outline:2px solid var(--cyan);outline-offset:2px;border-radius:20px}.rita-capy-wrap{display:block;width:70px;height:58px;animation:ritaHeaderBounce 2.8s ease-in-out infinite;transition:transform .25s ease}.rita-svg{display:block;width:100%;height:100%;overflow:visible}.rita-shadow{fill:rgba(0,0,0,.18)}.rita-body,.rita-head,.rita-wave-paw{fill:#a96f49}.rita-tummy,.rita-muzzle{fill:#c98d62}.rita-ear{fill:#8a573b;stroke:#d39a70;stroke-width:3}.rita-nose{fill:#3a2726}.rita-cheek{fill:#e79b82;opacity:.52}.rita-leg,.rita-wave-paw path,.rita-face path{fill:none;stroke:#392824;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}.rita-face circle{fill:#392824}.rita-face{display:none}.mood-curious .rita-face-curious,.mood-happy .rita-face-happy,.mood-proud .rita-face-proud,.mood-caring .rita-face-caring,.mood-sleepy .rita-face-sleepy,.mood-playful .rita-face-playful{display:block}.rita-face-proud path:not(:last-child),.rita-face-caring path:not(:last-child){fill:#392824;stroke:none}.rita-wave-paw{transform-box:fill-box;transform-origin:85% 100%}.rita-mascot.is-waving .rita-wave-paw,.rita-big-stage.is-waving .rita-wave-paw{animation:ritaWave .35s ease-in-out 5 alternate}.rita-mascot.is-celebrating .rita-capy-wrap{animation:ritaCelebrate .52s ease 3}.rita-mascot.is-chasing .rita-capy-wrap{animation:ritaRun .3s ease-in-out infinite alternate}.rita-mascot.is-peeking .rita-capy-wrap{animation:ritaPeek 1.8s ease both}.rita-speech{position:absolute;left:50%;bottom:54px;min-width:max-content;max-width:132px;padding:7px 10px;border-radius:13px 13px 13px 3px;background:#f4efdf;color:#2b2530;font-size:10px;font-weight:900;line-height:1.2;box-shadow:0 9px 25px rgba(0,0,0,.22);opacity:0;transform:translate(-50%,7px) scale(.92);pointer-events:none;transition:.25s ease}.rita-speech.show{opacity:1;transform:translate(-50%,0) scale(1)}.rita-zzz{position:absolute;right:-2px;top:-7px;color:#c9baff;font:800 10px/1 Manrope,sans-serif;letter-spacing:4px;opacity:0;transform:rotate(-14deg)}.mood-sleepy .rita-zzz{opacity:1;animation:ritaZzz 1.8s ease-in-out infinite}.rita-header-toy{position:absolute;left:40%;bottom:15px;width:13px;height:13px;border-radius:50%;background:#f6a84d;box-shadow:inset -3px -3px rgba(150,72,31,.24),0 5px 12px rgba(0,0,0,.2);opacity:0;transform:scale(.4);transition:left 1.1s ease,opacity .2s ease,transform .25s ease}.rita-header-toy:before{content:"";position:absolute;width:5px;height:3px;border-radius:5px;background:#64a25f;left:7px;top:-2px;transform:rotate(-24deg)}.rita-header-toy.show{opacity:1;transform:scale(1);animation:ritaToyHop .55s ease-in-out infinite alternate}
@keyframes ritaHeaderBounce{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-3px) rotate(1.5deg)}}@keyframes ritaWave{from{transform:rotate(0)}to{transform:rotate(-38deg) translateY(-2px)}}@keyframes ritaCelebrate{0%,100%{transform:translateY(0) rotate(0) scale(1)}35%{transform:translateY(-9px) rotate(-5deg) scale(1.04)}70%{transform:translateY(-4px) rotate(5deg) scale(1.02)}}@keyframes ritaRun{from{transform:translateY(0) rotate(-2deg)}to{transform:translateY(-4px) rotate(2deg)}}@keyframes ritaPeek{0%{transform:translateY(25px) rotate(0)}40%{transform:translateY(0) rotate(-4deg)}70%{transform:translateY(-2px) rotate(4deg)}100%{transform:translateY(0) rotate(0)}}@keyframes ritaToyHop{to{transform:translateY(-7px) rotate(18deg)}}@keyframes ritaZzz{0%,100%{transform:translate(0,5px) rotate(-14deg);opacity:.25}50%{transform:translate(5px,-5px) rotate(-14deg);opacity:1}}

.rita-page{padding-bottom:30px}.rita-secret-hero{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);align-items:center;gap:28px;padding:28px;border:1px solid rgba(255,255,255,.11);border-radius:31px;background:radial-gradient(circle at 16% 20%,rgba(246,168,77,.17),transparent 35%),linear-gradient(145deg,#2a2856,#17172d);box-shadow:0 24px 65px rgba(0,0,0,.25);overflow:hidden}.rita-big-stage{position:relative;min-height:210px;display:grid;place-items:center;border-radius:28px;background:linear-gradient(180deg,#9c8df0 0 56%,#86b685 56%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);overflow:hidden}.rita-big-stage:before{content:"";position:absolute;left:18px;top:22px;width:48px;height:48px;border-radius:50%;background:#f8e8a5;box-shadow:0 0 26px rgba(248,232,165,.45)}.rita-big-stage:after{content:"";position:absolute;inset:auto -12% -34px;width:125%;height:86px;border-radius:50% 50% 0 0;background:#6c9d69}.rita-capy-large{position:relative;z-index:2;display:block;width:220px;max-width:94%;filter:drop-shadow(0 16px 13px rgba(31,38,32,.25));animation:ritaBigBreathe 3.1s ease-in-out infinite}.rita-big-spark{position:absolute;z-index:3;font-size:24px;color:#fff3b8;animation:ritaFloat 2.4s ease-in-out infinite}.rita-big-spark.one{right:22px;top:20px}.rita-big-spark.two{left:27px;bottom:36px;color:#ffd0df;animation-delay:-1s}.rita-secret-copy h2{font-size:34px;line-height:1.03;margin:7px 0 13px}.rita-secret-copy p{color:#cbc8d8;line-height:1.6}.rita-mood-badge{display:inline-flex;align-items:center;gap:7px;margin-top:8px;padding:9px 12px;border-radius:999px;background:rgba(117,231,219,.1);border:1px solid rgba(117,231,219,.2);color:var(--cyan);font-size:11px;font-weight:850}.rita-mood-badge:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 5px rgba(117,231,219,.07)}
.rita-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:13px 0}.rita-stat-grid article{padding:18px;border:1px solid var(--line);border-radius:21px;background:rgba(255,255,255,.045);text-align:center}.rita-stat-grid strong{display:block;font-size:26px;color:#fff}.rita-stat-grid span{display:block;margin-top:4px;color:var(--muted);font-size:10px}.rita-care-card,.rita-game-card{margin-top:13px;padding:23px;border:1px solid var(--line);border-radius:27px;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025))}.rita-care-card h2,.rita-game-card h2{margin:5px 0 6px}.rita-care-card p,.rita-game-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.rita-action-row{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:18px}.rita-action-row button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:54px;border:1px solid rgba(255,255,255,.11);border-radius:17px;background:rgba(255,255,255,.05);color:#fff;font-weight:800;cursor:pointer}.rita-action-row button:hover{background:rgba(255,255,255,.09);transform:translateY(-1px)}.rita-action-row button span{color:#ffd1df}.rita-reaction{margin-top:13px;padding:12px 14px;border-radius:15px;background:rgba(246,168,77,.1);color:#ffd9a8;font:600 12px/1.45 Manrope,sans-serif}.rita-game-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.rita-game-head .btn{flex:0 0 auto}.rita-game-board{position:relative;height:220px;border-radius:23px;overflow:hidden;background:linear-gradient(#8376d1 0 61%,#78a575 61%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}.rita-game-board:after{content:"";position:absolute;inset:auto -15px -24px;height:80px;border-radius:50% 50% 0 0;background:#62905f}.rita-game-cloud{position:absolute;width:55px;height:18px;border-radius:999px;background:rgba(255,255,255,.7)}.rita-game-cloud:before,.rita-game-cloud:after{content:"";position:absolute;border-radius:50%;background:inherit}.rita-game-cloud:before{width:23px;height:23px;left:11px;bottom:4px}.rita-game-cloud:after{width:30px;height:30px;right:7px;bottom:1px}.cloud-one{left:9%;top:28px}.cloud-two{right:11%;top:55px;transform:scale(.7)}.rita-game-target{position:absolute;z-index:4;left:48%;top:42%;width:42px;height:42px;border:0;border-radius:50%;background:#f6a84d;box-shadow:inset -7px -7px rgba(151,72,29,.22),0 10px 18px rgba(0,0,0,.2);cursor:pointer;transition:left .25s ease,top .25s ease,transform .14s ease}.rita-game-target:active{transform:scale(.82)}.rita-game-target span{position:absolute;width:13px;height:7px;border-radius:100% 0 100% 0;background:#62a45d;right:1px;top:-2px;transform:rotate(-25deg)}.rita-game-rest{position:absolute;z-index:3;left:50%;top:50%;display:grid;justify-items:center;gap:8px;transform:translate(-50%,-50%);color:rgba(255,255,255,.88);text-align:center}.rita-game-rest>span{font-size:33px}.rita-game-rest strong{font-size:13px}.rita-game-score{display:flex;justify-content:space-between;gap:15px;margin-top:11px;color:var(--muted);font-size:11px}.rita-game-score strong{color:#fff}.rita-note-card{display:flex;align-items:baseline;gap:10px;margin-top:13px;padding:17px 20px;border-radius:18px;background:#f2eddd;color:#292431;transform:rotate(-.25deg)}.rita-note-card span{font-size:9px;font-weight:900;letter-spacing:1px;text-transform:uppercase}.rita-note-card p{margin:0;font:600 15px/1.4 Georgia,serif}.rita-page.game-won .rita-big-stage{animation:ritaStageCelebrate .6s ease 2}
@keyframes ritaBigBreathe{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(1deg)}}@keyframes ritaFloat{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-9px) rotate(8deg)}}@keyframes ritaStageCelebrate{50%{transform:scale(1.015)}}
@media(max-width:720px){.rita-mascot{width:62px;height:52px}.rita-capy-wrap{width:62px;height:52px}.rita-secret-hero{grid-template-columns:1fr}.rita-big-stage{min-height:190px}.rita-action-row{grid-template-columns:1fr}.rita-game-head{align-items:flex-start}.rita-stat-grid{gap:7px}.rita-stat-grid article{padding:15px 8px}.rita-note-card{display:block}.rita-note-card p{margin-top:5px}}
@media(max-width:520px){.topbar{gap:5px}.brand-word{font-size:24px}.brand small{font-size:8px;letter-spacing:1px}.rita-header-zone{min-width:64px}.rita-mascot{width:56px;height:48px}.rita-capy-wrap{width:56px;height:48px}.rita-speech{bottom:47px;font-size:9px;max-width:105px}.rita-secret-hero,.rita-care-card,.rita-game-card{padding:18px;border-radius:24px}.rita-secret-copy h2{font-size:29px}.rita-stat-grid span{font-size:9px}.rita-game-board{height:195px}}
@media(prefers-reduced-motion:reduce){.rita-capy-wrap,.rita-capy-large,.rita-big-spark,.rita-zzz,.rita-header-toy.show{animation:none!important}.rita-mascot{transition:none}.rita-action-row button{transition:none}}

/* v20 — Rita's living meadow, bigger playroom and For Me doorway */
.rita-header-zone{height:70px;overflow:visible;border-radius:19px;background:linear-gradient(180deg,rgba(117,174,220,.2) 0 64%,rgba(72,128,77,.22) 64%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.07);isolation:isolate}
.rita-world-sky{position:absolute;inset:0;border-radius:inherit;overflow:hidden;z-index:0;transition:background .8s ease}
.rita-world-sky:before{content:"";position:absolute;width:18px;height:18px;border-radius:50%;right:13px;top:10px;background:#ffe49a;box-shadow:0 0 16px rgba(255,228,154,.5);transition:.8s ease}
.rita-world-sky i{position:absolute;width:22px;height:7px;border-radius:999px;background:rgba(255,255,255,.48);animation:ritaCloudDrift 9s linear infinite}
.rita-world-sky i:before,.rita-world-sky i:after{content:"";position:absolute;border-radius:50%;background:inherit}.rita-world-sky i:before{width:9px;height:9px;left:4px;bottom:2px}.rita-world-sky i:after{width:12px;height:12px;right:3px;bottom:1px}.rita-world-sky i:nth-child(1){top:13px;left:8%;animation-duration:12s}.rita-world-sky i:nth-child(2){top:28px;left:52%;transform:scale(.7);animation-duration:15s;animation-delay:-7s}.rita-world-sky i:nth-child(3){top:8px;left:77%;transform:scale(.5);animation-duration:11s;animation-delay:-4s}
.rita-header-grass{position:absolute;z-index:1;left:0;right:0;bottom:0;height:22px;border-radius:0 0 19px 19px;background:linear-gradient(#76a96d,#4e8055);overflow:hidden}.rita-header-grass:before{content:"";position:absolute;left:-4%;right:-4%;top:-7px;height:16px;background:radial-gradient(ellipse at 7px 12px,#84ba77 0 7px,transparent 8px) 0 0/18px 16px repeat-x}.rita-header-grass i{position:absolute;bottom:4px;width:2px;height:9px;border-radius:100% 100% 0 0;background:#b5d47e;transform-origin:bottom;animation:ritaGrassSway 2.2s ease-in-out infinite alternate}.rita-header-grass i:nth-child(1){left:9%}.rita-header-grass i:nth-child(2){left:26%;animation-delay:-.8s}.rita-header-grass i:nth-child(3){left:48%;animation-delay:-1.4s}.rita-header-grass i:nth-child(4){left:73%;animation-delay:-.4s}.rita-header-grass i:nth-child(5){left:89%;animation-delay:-1.1s}
.rita-header-prop{position:absolute;z-index:3;left:50%;bottom:13px;width:25px;height:25px;display:grid;place-items:center;font-size:21px;opacity:0;transform:translate(-50%,8px) scale(.7);transition:left .7s ease,opacity .2s ease,transform .25s ease;filter:drop-shadow(0 5px 5px rgba(0,0,0,.25));pointer-events:none}.rita-header-prop.show{opacity:1;transform:translate(-50%,0) scale(1)}.rita-header-prop:before{content:""}.rita-header-prop.prop-snack:before{content:"🍊"}.rita-header-prop.prop-pillow:before{content:"▰";color:#d9c7ff;font-size:31px;transform:rotate(-7deg)}.rita-header-prop.prop-book:before{content:"📖"}.rita-header-prop.prop-drawing:before{content:"🖍️"}.rita-header-prop.prop-ball:before{content:"●";color:#ffd568;text-shadow:inset 0 0 0 2px #fff}.rita-header-prop.prop-flower:before{content:"🌼"}.rita-header-prop.prop-puddle:before{content:"◡";font-size:34px;color:#76dce6;transform:scaleX(1.5)}.rita-header-prop.prop-picnic:before{content:"🧺"}.rita-header-prop.prop-leaf:before{content:"🍃"}.rita-header-prop.prop-music:before{content:"♫";color:#ffd1df;font-weight:900}.rita-header-prop.prop-cloud:before{content:"☁";color:#f3f2ff;font-size:29px}
.rita-dream-bubble{position:absolute;z-index:6;left:54%;top:-14px;display:flex;align-items:center;gap:1px;opacity:0;transform:translateY(7px) scale(.7);transition:.3s ease;pointer-events:none}.rita-dream-bubble.show{opacity:1;transform:translateY(0) scale(1);animation:ritaDreamFloat 2.1s ease-in-out infinite}.rita-dream-bubble b{width:35px;height:25px;display:grid;place-items:center;border-radius:50%;background:#f6f0df;color:#776f82;font-size:0;box-shadow:0 7px 18px rgba(0,0,0,.2)}.rita-dream-bubble b:before{content:"";width:7px;height:7px;border-radius:50%;background:#f6f0df;position:absolute;left:-7px;bottom:1px;box-shadow:-5px 5px 0 -1px #f6f0df}.rita-dream-bubble em{position:absolute;left:10px;top:2px;font-style:normal;font-size:16px}
.rita-header-zone.scene-night .rita-world-sky{background:linear-gradient(#29284c,#4f4777)}.rita-header-zone.scene-night .rita-world-sky:before{background:#f4f0d6;box-shadow:-5px 2px 0 0 #393758,0 0 14px rgba(244,240,214,.35)}.rita-header-zone.scene-sunset .rita-world-sky{background:linear-gradient(#d68b87,#725b9a)}.rita-header-zone.scene-rain .rita-world-sky{background:linear-gradient(#56647b,#343c55)}.rita-header-zone.scene-rain .rita-world-sky:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(104deg,transparent 0 9px,rgba(185,224,255,.45) 10px 11px,transparent 12px 18px);animation:ritaRain .45s linear infinite}.rita-header-zone.scene-picnic .rita-header-grass{background:linear-gradient(#90ba66,#5c8d55)}.rita-header-zone.scene-dream .rita-world-sky{background:linear-gradient(#544b7d,#302f55)}
.rita-mascot{bottom:8px;z-index:5}.rita-mascot.is-running .rita-capy-wrap{animation:ritaRun .22s ease-in-out infinite alternate}.rita-mascot.is-eating .rita-capy-wrap{animation:ritaNibble .24s ease-in-out 8 alternate}.rita-mascot.is-sleeping .rita-capy-wrap{animation:ritaSleep 2.6s ease-in-out infinite;transform-origin:bottom center}.rita-mascot.is-drawing .rita-wave-paw{animation:ritaDraw .25s ease-in-out 9 alternate}.rita-mascot.is-goofy .rita-capy-wrap{animation:ritaGoofy 1.3s cubic-bezier(.2,.8,.2,1)}.rita-mascot.is-dancing .rita-capy-wrap{animation:ritaDance .55s ease-in-out 5}.rita-mascot.is-reading .rita-capy-wrap{animation:ritaRead 2s ease-in-out infinite}.rita-mascot.is-splashing .rita-capy-wrap{animation:ritaSplash .55s ease-in-out 4}.rita-mascot.is-rolling .rita-capy-wrap{animation:ritaRoll 1.2s ease-in-out}.rita-mascot.is-flower .rita-wave-paw{animation:ritaWave .45s ease-in-out 5 alternate}
.mood-dreaming .rita-face-sleepy,.mood-creative .rita-face-curious,.mood-goofy .rita-face-playful,.mood-hungry .rita-face-happy{display:block}
@keyframes ritaCloudDrift{from{translate:-20px 0}to{translate:160px 0}}@keyframes ritaGrassSway{to{transform:rotate(13deg)}}@keyframes ritaRain{to{background-position:-17px 18px}}@keyframes ritaDreamFloat{50%{transform:translateY(-5px) rotate(3deg)}}@keyframes ritaNibble{to{transform:translateY(2px) rotate(-2deg) scaleX(1.02)}}@keyframes ritaSleep{0%,100%{transform:translateY(3px) rotate(-4deg) scaleY(.96)}50%{transform:translateY(4px) rotate(-4deg) scaleY(1)}}@keyframes ritaDraw{to{transform:rotate(-27deg) translateY(-3px)}}@keyframes ritaGoofy{0%{transform:none}22%{transform:translateY(-8px) rotate(-12deg)}45%{transform:translateY(0) rotate(11deg) scaleX(.92)}68%{transform:translateY(-5px) rotate(-7deg)}100%{transform:none}}@keyframes ritaDance{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-8px) rotate(8deg) scale(1.03)}}@keyframes ritaRead{50%{transform:translateY(1px) rotate(-1deg)}}@keyframes ritaSplash{50%{transform:translateY(-9px) rotate(4deg)}}@keyframes ritaRoll{50%{transform:translateY(-4px) rotate(180deg) scale(.92)}100%{transform:rotate(360deg)}}

.rita-for-me-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;margin:14px 0 18px;padding:18px;border:1px solid rgba(255,209,223,.18);border-radius:25px;background:radial-gradient(circle at 0 0,rgba(255,209,223,.14),transparent 38%),linear-gradient(145deg,#292344,#19182e);box-shadow:var(--shadow);cursor:pointer;overflow:hidden}.rita-for-me-card:after{content:"";position:absolute;right:-25px;bottom:-45px;width:120px;height:120px;border-radius:50%;background:rgba(246,168,77,.08)}.rita-for-me-card:hover{border-color:rgba(255,209,223,.35)}.rita-for-me-card h2{margin:4px 0 6px;font-size:22px}.rita-for-me-card p{margin:0;color:#c7c3d2;font-size:12px;line-height:1.5}.rita-for-me-card>b{position:relative;z-index:2;white-space:nowrap;color:#ffd1df;font-size:11px}.rita-for-me-card>b span{margin-left:7px}.rita-for-me-scene{position:relative;width:72px;height:67px;border-radius:21px;background:linear-gradient(#8a7bd3 0 57%,#75a76e 57%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);display:grid;place-items:center}.mini-rita-face{position:relative;width:49px;height:35px;border-radius:45% 55% 46% 48%;background:#ae7550;color:#392824;display:grid;place-items:center;padding-top:4px;font:800 12px/1 monospace;z-index:2}.mini-rita-ear{position:absolute;z-index:1;width:13px;height:13px;border-radius:50%;background:#8b593e;border:2px solid #cf936c;top:16px}.mini-rita-ear.one{left:18px}.mini-rita-ear.two{right:14px}.rita-for-me-scene i{position:absolute;right:6px;top:5px;color:#ffeaa1;font-style:normal;animation:ritaFloat 2.2s ease-in-out infinite}

.rita-stat-grid{grid-template-columns:repeat(4,1fr)}.rita-action-row{grid-template-columns:repeat(3,1fr)}
.rita-playroom{padding:24px}.rita-game-hub-head,.rita-selected-game-copy{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.rita-game-hub-head h2{margin:5px 0 7px}.rita-game-hub-head p,.rita-selected-game-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.rita-game-count-label{flex:0 0 auto;display:flex;align-items:baseline;gap:5px;padding:9px 12px;border:1px solid rgba(255,255,255,.1);border-radius:999px;color:#d7d3e3;font-size:10px}.rita-game-count-label b{font-size:16px;color:#ffd686}.rita-game-picker{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:18px 0}.rita-game-picker button{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:74px;padding:9px 5px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.035);color:#d8d5e2;cursor:pointer}.rita-game-picker button span{font-size:19px}.rita-game-picker button b{font-size:9px;line-height:1.2;text-align:center}.rita-game-picker button.active{background:rgba(154,128,255,.14);border-color:rgba(154,128,255,.55);color:#fff;box-shadow:0 8px 20px rgba(0,0,0,.14)}.rita-selected-game{padding:18px;border:1px solid rgba(255,255,255,.08);border-radius:22px;background:rgba(0,0,0,.12)}.rita-selected-game-copy h3{margin:5px 0 6px;font:800 21px/1.1 Manrope,sans-serif}.rita-selected-game-copy .btn{flex:0 0 auto}.rita-game-board{height:245px;margin-top:15px;background:linear-gradient(#8376d1 0 61%,#78a575 61%);touch-action:manipulation}.rita-game-board.game-bubbles{background:radial-gradient(circle at 50% 120%,#88c1bc,transparent 42%),linear-gradient(#526e9e,#7874bf)}.rita-game-board.game-memory{background:linear-gradient(145deg,#386857,#203f45)}.rita-game-board.game-hide{background:linear-gradient(#82a7d7 0 55%,#6b9a63 55%)}.rita-game-board.game-says{background:radial-gradient(circle at 50% 50%,#25274c,#12162c)}.rita-game-board:after{pointer-events:none}.rita-game-score{align-items:center}.rita-game-score strong{display:flex;gap:1px}
.rita-board-target{position:absolute;z-index:5;width:43px;height:43px;border:0;border-radius:50%;cursor:pointer;transition:left .22s ease,top .22s ease,transform .13s ease}.rita-board-target:active{transform:scale(.82)}.rita-board-target.orange{background:#f6a84d;box-shadow:inset -7px -7px rgba(151,72,29,.22),0 10px 18px rgba(0,0,0,.2)}.rita-board-target.orange:after{content:"";position:absolute;width:13px;height:7px;border-radius:100% 0 100% 0;background:#62a45d;right:1px;top:-2px;transform:rotate(-25deg)}
.rita-bubble{position:absolute;z-index:4;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.82),rgba(255,255,255,.08) 29%,rgba(125,232,223,.18));box-shadow:0 0 16px rgba(165,235,255,.2);cursor:pointer;animation:ritaBubbleFloat 2.4s ease-in-out infinite}.rita-bubble.popped{animation:ritaBubblePop .18s ease forwards}@keyframes ritaBubbleFloat{50%{translate:0 -9px}}@keyframes ritaBubblePop{to{transform:scale(1.45);opacity:0}}
.rita-memory-grid{position:absolute;z-index:4;inset:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.rita-memory-card{border:1px solid rgba(255,255,255,.15);border-radius:14px;background:linear-gradient(145deg,#6c5fb7,#47468a);color:transparent;font-size:24px;cursor:pointer;transition:.22s ease;box-shadow:0 8px 15px rgba(0,0,0,.15)}.rita-memory-card:before{content:"✦";color:rgba(255,255,255,.38);font-size:14px}.rita-memory-card.open,.rita-memory-card.matched{background:#f1ead8;color:#302a36;transform:rotateY(180deg)}.rita-memory-card.open:before,.rita-memory-card.matched:before{display:none}.rita-memory-card.matched{opacity:.62}
.rita-hide-grid{position:absolute;z-index:4;left:12px;right:12px;bottom:15px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.rita-hide-spot{height:74px;border:0;border-radius:48% 52% 21px 21px;background:radial-gradient(circle at 30% 30%,#95c56d 0 15%,transparent 16%),radial-gradient(circle at 68% 23%,#86b85f 0 18%,transparent 19%),linear-gradient(#679a55,#426f48);color:#fff;cursor:pointer;position:relative;box-shadow:inset 0 -10px rgba(0,0,0,.08)}.rita-hide-spot:after{content:"?";font:900 15px Manrope,sans-serif;opacity:.42}.rita-hide-spot.found:after{content:"•ᴥ•";opacity:1;font-size:13px}.rita-hide-spot.wrong{animation:ritaWrong .3s ease}@keyframes ritaWrong{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.rita-says-grid{position:absolute;z-index:4;left:50%;top:50%;width:min(205px,76%);aspect-ratio:1;transform:translate(-50%,-50%) rotate(45deg);display:grid;grid-template-columns:1fr 1fr;gap:9px}.rita-says-pad{border:0;border-radius:22px;opacity:.62;cursor:pointer;transition:.12s ease;box-shadow:inset 0 0 0 2px rgba(255,255,255,.12),0 9px 18px rgba(0,0,0,.2)}.rita-says-pad:nth-child(1){background:#69b688}.rita-says-pad:nth-child(2){background:#eea14e}.rita-says-pad:nth-child(3){background:#8b79e5}.rita-says-pad:nth-child(4){background:#e47a9c}.rita-says-pad.lit,.rita-says-pad:active{opacity:1;transform:scale(.94);filter:brightness(1.3)}.rita-says-centre{position:absolute;z-index:5;left:50%;top:50%;width:60px;height:60px;display:grid;place-items:center;transform:translate(-50%,-50%);border-radius:50%;background:#f0eadb;color:#392f3b;font:800 11px/1.1 Manrope,sans-serif;text-align:center;box-shadow:0 7px 18px rgba(0,0,0,.25)}
.rita-game-complete{position:absolute;z-index:8;left:50%;top:50%;width:min(280px,82%);transform:translate(-50%,-50%);padding:18px;border-radius:20px;background:rgba(25,23,46,.92);color:#fff;text-align:center;box-shadow:0 18px 40px rgba(0,0,0,.32);animation:softOpen .3s ease}.rita-game-complete strong{display:block;font-size:21px}.rita-game-complete span{display:block;margin-top:5px;color:#ffd68b;font-size:11px}
.rita-big-stage.is-dancing .rita-capy-large{animation:ritaDance .55s ease-in-out 5}.rita-big-stage.is-napping .rita-capy-large{animation:ritaSleep 2.6s ease-in-out infinite}.rita-big-stage.is-drawing .rita-wave-paw{animation:ritaDraw .25s ease-in-out 9 alternate}

@media(max-width:720px){.rita-stat-grid{grid-template-columns:repeat(2,1fr)}.rita-action-row{grid-template-columns:repeat(2,1fr)}.rita-game-picker{display:flex;overflow-x:auto;padding-bottom:4px}.rita-game-picker button{flex:0 0 88px}.rita-for-me-card{grid-template-columns:auto minmax(0,1fr)}.rita-for-me-card>b{grid-column:2}.rita-game-hub-head{display:block}.rita-game-count-label{display:inline-flex;margin-top:10px}}
@media(max-width:520px){.rita-header-zone{height:62px;border-radius:15px}.rita-header-grass{height:18px;border-radius:0 0 15px 15px}.rita-world-sky:before{width:14px;height:14px}.rita-header-prop{bottom:10px;font-size:18px}.rita-for-me-card{padding:15px 13px;gap:11px}.rita-for-me-scene{width:60px;height:58px}.mini-rita-face{width:42px;height:31px}.rita-for-me-card h2{font-size:18px}.rita-playroom{padding:17px 13px}.rita-selected-game{padding:14px 10px}.rita-selected-game-copy{display:block}.rita-selected-game-copy .btn{margin-top:12px;width:100%}.rita-game-board{height:225px}.rita-memory-grid{inset:14px;gap:7px}.rita-hide-grid{grid-template-columns:repeat(2,1fr)}.rita-hide-spot{height:59px}.rita-says-grid{width:165px}.rita-action-row{grid-template-columns:1fr}.rita-game-hub-head h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.rita-world-sky i,.rita-header-grass i,.rita-dream-bubble.show,.rita-bubble{animation:none!important}.rita-mascot.is-running .rita-capy-wrap,.rita-mascot.is-eating .rita-capy-wrap,.rita-mascot.is-sleeping .rita-capy-wrap,.rita-mascot.is-drawing .rita-wave-paw,.rita-mascot.is-goofy .rita-capy-wrap,.rita-mascot.is-dancing .rita-capy-wrap,.rita-mascot.is-reading .rita-capy-wrap,.rita-mascot.is-splashing .rita-capy-wrap,.rita-mascot.is-rolling .rita-capy-wrap{animation:none!important}}


/* v21 — Rita's world is now the header itself */
.topbar{
  height:calc(66px + env(safe-area-inset-top));
  min-height:calc(66px + env(safe-area-inset-top));
  padding-top:env(safe-area-inset-top);
  gap:0;
  overflow:visible;
  isolation:isolate;
  background:linear-gradient(180deg,rgba(11,11,24,.97),rgba(11,11,24,.84) 70%,rgba(11,11,24,.28));
  backdrop-filter:blur(14px);
}
.topbar:before{
  content:"";
  position:absolute;
  inset:env(safe-area-inset-top) 0 0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(11,11,24,.88) 0 13%,rgba(11,11,24,.26) 28%,transparent 43% 57%,rgba(11,11,24,.28) 72%,rgba(11,11,24,.9) 88% 100%);
}
.topbar .brand,.topbar .top-actions{z-index:8}
.topbar .brand-word{font-size:25px;text-shadow:0 2px 10px rgba(0,0,0,.42)}
.topbar .brand small{text-shadow:0 2px 8px rgba(0,0,0,.55)}
.topbar .round-btn{width:37px;height:37px;background:rgba(19,19,38,.54);backdrop-filter:blur(8px)}
.rita-header-zone{
  position:absolute;
  inset:env(safe-area-inset-top) 0 0;
  width:auto;
  height:auto;
  min-width:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:hidden;
  pointer-events:none;
  isolation:auto;
}
.rita-world-sky{border-radius:0;opacity:.9}
.rita-header-zone.scene-meadow .rita-world-sky{background:linear-gradient(180deg,rgba(92,111,169,.24),rgba(65,89,111,.10) 68%,transparent)}
.rita-header-zone.scene-night .rita-world-sky{background:linear-gradient(180deg,rgba(58,55,103,.7),rgba(38,37,72,.36))}
.rita-header-zone.scene-sunset .rita-world-sky{background:linear-gradient(180deg,rgba(208,123,124,.62),rgba(91,71,137,.32))}
.rita-header-zone.scene-rain .rita-world-sky{background:linear-gradient(180deg,rgba(76,91,114,.72),rgba(42,50,75,.38))}
.rita-header-zone.scene-dream .rita-world-sky{background:linear-gradient(180deg,rgba(78,68,124,.72),rgba(43,42,83,.38))}
.rita-world-sky:before{width:13px;height:13px;right:18%;top:7px;opacity:.75}
.rita-world-sky i{width:18px;height:5px;opacity:.58}
.rita-world-sky i:nth-child(1){top:10px}.rita-world-sky i:nth-child(2){top:22px}.rita-world-sky i:nth-child(3){top:7px}
.rita-header-grass{
  left:0;
  right:0;
  bottom:0;
  height:13px;
  border-radius:0;
  opacity:.86;
  background:linear-gradient(rgba(111,165,98,.96),rgba(54,105,66,.95));
  box-shadow:0 -1px rgba(196,226,146,.08);
}
.rita-header-grass:before{top:-6px;height:12px;background-size:15px 13px;opacity:.88}
.rita-header-grass i{height:7px;bottom:2px}
.rita-mascot{
  bottom:5px;
  width:54px;
  height:45px;
  z-index:7;
  pointer-events:auto;
  filter:drop-shadow(0 6px 7px rgba(0,0,0,.24));
}
.rita-capy-wrap{width:54px;height:45px}
.rita-speech{bottom:41px;padding:5px 8px;max-width:112px;border-radius:11px 11px 11px 3px;font-size:8px;box-shadow:0 7px 18px rgba(0,0,0,.24)}
.rita-zzz{right:-1px;top:-1px;font-size:8px}
.rita-header-toy{bottom:9px;width:10px;height:10px}
.rita-header-prop{bottom:7px;width:19px;height:19px;font-size:16px}
.rita-header-prop.prop-pillow:before{font-size:24px}.rita-header-prop.prop-puddle:before{font-size:26px}.rita-header-prop.prop-cloud:before{font-size:23px}
.rita-dream-bubble{top:2px;transform:translateY(4px) scale(.78)}
.rita-dream-bubble.show{transform:translateY(0) scale(.78)}
.rita-dream-bubble b{width:30px;height:21px}.rita-dream-bubble em{left:8px;top:1px;font-size:14px}
@media(max-width:520px){
  .topbar{height:calc(60px + env(safe-area-inset-top));min-height:calc(60px + env(safe-area-inset-top))}
  .topbar:before{background:linear-gradient(90deg,rgba(11,11,24,.93) 0 19%,rgba(11,11,24,.24) 36%,transparent 48% 56%,rgba(11,11,24,.28) 69%,rgba(11,11,24,.93) 86% 100%)}
  .topbar .brand-word{font-size:22px}
  .topbar .brand small{font-size:7px;letter-spacing:.8px}
  .topbar .round-btn{width:34px;height:34px}
  .rita-header-zone{height:auto;border-radius:0}
  .rita-header-grass{height:10px;border-radius:0}
  .rita-mascot{width:47px;height:39px;bottom:4px}
  .rita-capy-wrap{width:47px;height:39px}
  .rita-speech{bottom:35px;max-width:88px;font-size:7px;padding:4px 6px}
  .rita-world-sky:before{width:10px;height:10px;top:6px}
  .rita-header-prop{bottom:5px;font-size:14px}
  .rita-dream-bubble{top:1px}
}

/* v22 — seamless mobile header shading */
.topbar::before{
  background:
    linear-gradient(180deg,rgba(11,11,24,.16) 0%,rgba(11,11,24,.30) 100%),
    radial-gradient(ellipse 68% 150% at -6% 50%,rgba(11,11,24,.94) 0%,rgba(11,11,24,.68) 38%,rgba(11,11,24,0) 100%),
    radial-gradient(ellipse 48% 150% at 106% 50%,rgba(11,11,24,.92) 0%,rgba(11,11,24,.62) 42%,rgba(11,11,24,0) 100%);
}
.topbar::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-12px;
  height:13px;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(5,6,16,.42) 0%,rgba(5,6,16,.16) 45%,rgba(5,6,16,0) 100%);
}
@media(max-width:520px){
  .topbar::before{
    background:
      linear-gradient(180deg,rgba(11,11,24,.18) 0%,rgba(11,11,24,.32) 100%),
      radial-gradient(ellipse 78% 155% at -10% 50%,rgba(11,11,24,.95) 0%,rgba(11,11,24,.72) 38%,rgba(11,11,24,0) 100%),
      radial-gradient(ellipse 58% 155% at 110% 50%,rgba(11,11,24,.94) 0%,rgba(11,11,24,.68) 42%,rgba(11,11,24,0) 100%);
  }
  .topbar::after{
    left:-14px;
    right:-14px;
  }
}

/* Prevent mobile browser backdrop-filter tiling seams in the sticky header. */
@media(max-width:520px){
  .topbar{
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
    background:linear-gradient(180deg,rgba(11,11,24,.98) 0%,rgba(11,11,24,.90) 68%,rgba(11,11,24,.58) 100%);
  }
}

@media(max-width:520px){
  /* Safari/Chromium can tile this full-width pseudo-element and create a hard seam. */
  .topbar::before{display:none}
}


/* v24 launch gate */
body.launch-locked{overflow:hidden;}
body.launch-locked .app-shell{filter:blur(7px) saturate(.9);pointer-events:none;user-select:none;transform:scale(.995);}
body.launch-locked .sky{opacity:.45;}
.launch-gate{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:clamp(18px,4vw,34px);background:radial-gradient(circle at top,rgba(124,90,255,.18) 0%,rgba(124,90,255,0) 34%),linear-gradient(180deg,rgba(8,10,24,.97) 0%,rgba(12,14,32,.95) 48%,rgba(10,12,26,.99) 100%);overflow:auto;}
.launch-gate.hidden,.launch-countdown-view.hidden,.launch-door-view.hidden{display:none;}
.launch-stars{position:absolute;inset:0;pointer-events:none;opacity:.95;overflow:hidden;}
.launch-stars i{position:absolute;display:block;width:5px;height:5px;border-radius:50%;background:#fff;box-shadow:0 0 18px rgba(255,255,255,.75);animation:twinkle 3.4s ease-in-out infinite;}
.launch-stars i:nth-child(1){top:12%;left:16%;animation-delay:0s;}
.launch-stars i:nth-child(2){top:21%;right:23%;width:4px;height:4px;animation-delay:1.1s;}
.launch-stars i:nth-child(3){top:35%;right:11%;width:6px;height:6px;animation-delay:2s;}
.launch-stars i:nth-child(4){top:15%;left:74%;width:3px;height:3px;animation-delay:2.4s;}
.launch-stars i:nth-child(5){top:67%;left:10%;width:4px;height:4px;animation-delay:.7s;}
.launch-stars i:nth-child(6){top:74%;right:17%;width:5px;height:5px;animation-delay:1.8s;}
.launch-gate-card{position:relative;z-index:2;width:min(100%,700px);padding:28px 24px 24px;border-radius:30px;background:linear-gradient(180deg,rgba(26,30,58,.98) 0%,rgba(18,22,46,.99) 100%);border:1px solid rgba(255,255,255,.11);box-shadow:0 28px 90px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.06);backdrop-filter:blur(16px);overflow:hidden;}
.launch-gate-card::before{content:"";position:absolute;inset:-25% 20% auto -20%;height:220px;background:radial-gradient(circle,rgba(244,191,85,.18) 0%,rgba(244,191,85,0) 68%);pointer-events:none;}
.launch-badge{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-weight:800;letter-spacing:.04em;}
.launch-badge span{color:#f4bf55;}
.launch-badge small{font-size:.76rem;font-weight:600;color:rgba(255,255,255,.75);}
.launch-eyebrow{margin:18px 0 10px;font-size:.74rem;font-weight:800;letter-spacing:.18em;color:#f4bf55;}
.launch-gate-card h1{margin:0 0 12px;font-size:clamp(2rem,5vw,3.2rem);line-height:1.02;color:#fff;}
.launch-copy{margin:0;color:rgba(241,243,255,.86);font-size:1.02rem;line-height:1.6;max-width:58ch;}
.launch-door-view,.launch-countdown-view{position:relative;z-index:1;animation:launchFadeUp .55s ease both;}
.launch-door-button{position:relative;display:grid;place-items:center;width:min(100%,240px);margin:26px auto 12px;border:none;background:none;padding:0;cursor:pointer;touch-action:manipulation;}
.launch-door-frame{position:relative;display:block;width:180px;height:238px;padding:8px;border-radius:28px;background:linear-gradient(180deg,#f6d180 0%,#d9912d 100%);box-shadow:0 14px 36px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.45);}
.launch-door-panel{position:relative;display:block;width:100%;height:100%;border-radius:22px;background:linear-gradient(180deg,#6a47ff 0%,#3b2aa2 100%);box-shadow:inset -7px 0 0 rgba(23,16,69,.28), inset 0 1px 0 rgba(255,255,255,.18);transform-origin:left center;transition:transform .9s cubic-bezier(.22,.82,.24,1),filter .4s ease;}
.launch-door-view.opening .launch-door-panel{transform:perspective(600px) rotateY(-70deg);filter:brightness(1.12);}
.launch-door-window{position:absolute;left:50%;top:20px;transform:translateX(-50%);width:82px;height:54px;border-radius:16px;background:linear-gradient(180deg,#fbe3ff 0%,#b7b9ff 100%);box-shadow:inset 0 0 0 5px rgba(255,255,255,.2);}
.launch-door-window::before,.launch-door-window::after{content:"";position:absolute;background:rgba(69,54,177,.35);}
.launch-door-window::before{left:50%;top:0;bottom:0;width:4px;transform:translateX(-50%);}
.launch-door-window::after{left:0;right:0;top:50%;height:4px;transform:translateY(-50%);}
.launch-door-handle{position:absolute;right:18px;top:55%;width:14px;height:14px;border-radius:50%;background:#f4bf55;box-shadow:0 0 0 4px rgba(255,255,255,.18), 0 2px 8px rgba(0,0,0,.2);}
.launch-door-glow{position:absolute;inset:20px;border-radius:34px;background:radial-gradient(circle,rgba(244,191,85,.22) 0%,rgba(244,191,85,0) 65%);filter:blur(12px);z-index:-1;animation:launchPulse 2.7s ease-in-out infinite;}
.launch-door-caption{text-align:center;color:rgba(255,255,255,.78);font-weight:700;letter-spacing:.03em;}
.launch-countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:22px 0 16px;}
.launch-countdown div{padding:16px 10px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,.04) 100%);border:1px solid rgba(255,255,255,.08);text-align:center;}
.launch-countdown strong{display:block;font-size:clamp(1.5rem,4vw,2.4rem);line-height:1;color:#fff;}
.launch-countdown span{display:block;margin-top:6px;font-size:.82rem;color:rgba(255,255,255,.75);text-transform:uppercase;letter-spacing:.08em;}
.launch-highlight{display:flex;gap:10px;align-items:flex-start;padding:14px 16px;border-radius:20px;background:linear-gradient(180deg,rgba(244,191,85,.15) 0%,rgba(244,191,85,.08) 100%);border:1px solid rgba(244,191,85,.18);color:#fff;margin-bottom:14px;}
.launch-highlight strong{display:block;font-size:.98rem;min-width:max-content;}
.launch-highlight span{color:rgba(255,247,226,.88);line-height:1.5;}
.launch-note{margin:0 0 12px;color:rgba(232,236,255,.8);}
.launch-access label{display:block;margin-bottom:8px;color:#fff;font-weight:700;}
.launch-password-row{display:flex;gap:10px;align-items:center;}
.launch-password-row input{flex:1;min-width:0;border:none;outline:none;padding:14px 16px;border-radius:16px;background:#fff;color:#15172d;font-size:1rem;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);}
.launch-password-row input::placeholder{color:#707495;}
.launch-password-row .btn{flex:0 0 auto;white-space:nowrap;padding-inline:20px;}
.launch-error{margin:10px 0 0;color:#ffb3bf;font-weight:700;}
.launch-back-link{margin:14px 0 0;background:none;border:none;color:#f4bf55;font-weight:700;padding:0;cursor:pointer;}
.launch-footer{margin:15px 0 0;color:rgba(255,255,255,.7);font-size:.92rem;}
.launch-footer strong{color:#fff;}
@keyframes launchPulse{0%,100%{transform:scale(1);opacity:.75}50%{transform:scale(1.04);opacity:1}}
@keyframes launchFadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media (max-width:640px){
  .launch-gate{align-items:flex-start;padding:14px 14px 18px;}
  .launch-gate-card{padding:22px 16px 20px;border-radius:24px;margin-top:max(10px,env(safe-area-inset-top));}
  .launch-gate-card h1{font-size:clamp(1.8rem,10vw,2.6rem);}
  .launch-countdown{grid-template-columns:repeat(2,minmax(0,1fr));}
  .launch-highlight{flex-direction:column;}
  .launch-password-row{flex-direction:column;align-items:stretch;}
  .launch-password-row .btn{width:100%;}
  .launch-door-frame{width:156px;height:206px;}
}
