:root{--paper:#f7f3ea;--surface:#fffcf6;--ink:#382b32;--muted:#796c71;--line:#e5dcd5;--plum:#422735;--soft:#eee5e8;--gold:#b59a73}body{background:var(--paper)}.topbar{background:#f7f3eaf5}.screen>.intro h1{font-family:inherit;font-size:26px;font-weight:600;letter-spacing:-.035em}.primary{min-height:52px;border-radius:16px;background:var(--plum)}.boxcard{border-radius:18px;padding:18px 16px;min-height:192px;border:1px solid #42273508;box-shadow:0 3px 9px #42273504;position:relative;overflow:hidden}.boxcard h3{font:400 23px/1.16 var(--serif);margin-top:20px;letter-spacing:-.025em}.boxcard .category{font-size:11px;letter-spacing:.06em;margin-top:10px}.boxcard .detail{font-size:12px;line-height:1.45;margin-top:8px}.mood-0{background:#e9dfe3}.mood-1{background:#e5e7dc}.mood-2{background:#ece1d1}.mood-3{background:#e8e1e7}.boxmark{color:var(--plum)}.collection-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);display:block}.todaycard{background:var(--plum);border-radius:20px;position:relative;overflow:hidden}.todaycard:after{content:'';position:absolute;right:-20px;top:-25px;width:135px;height:135px;border:1px solid #b59a7340;border-radius:28px;transform:rotate(-15deg);pointer-events:none}.todaycard h3{font-size:29px;max-width:85%}.future-note{background:#eee5d7;border:0;border-radius:18px;box-shadow:inset 3px 0 #b59a73}.tool{border-radius:18px;border:0;background:#fffcf6;padding:18px 16px;min-height:142px}.toolicon,.tileicon{background:#eee5e8;color:var(--plum)}.tool p{font-size:13px;line-height:1.45}.richcard{border:0;background:var(--surface);border-radius:18px;padding:18px 16px}.memory-feature{background:#eae1d4}.boxhero h1{font-size:32px}.boxhero p{font-size:15px;line-height:1.5}.box-mood:not(.has-photo){height:92px;background:#e9dfe3;border-radius:18px;color:var(--plum);position:relative;overflow:hidden}.box-mood:not(.has-photo):after{content:'';position:absolute;width:100px;height:100px;border:1px solid #b59a7355;border-radius:20px;right:24px;top:28px;transform:rotate(-12deg)}.setting{min-height:64px;padding:16px 4px}.bottomnav{background:#fffcf6f5;border-color:#e5dcd5}.navitem{min-width:0;padding:0 3px;text-align:center;font-size:12px}.ritual-group .sectionhead h2{font:400 23px/1.2 var(--serif)}.ritual-morning{background:#eee4d4;border:0}.ritual-night{background:#e8e1eb;color:#422735;border:0}.ritual-night h3,.ritual-night .icon,.ritual-night .ritual-start{color:#422735}.ritual-night .small{color:#594953}.scene{padding:18px 16px;border-radius:18px}.scene h3{font-size:17px;margin:16px 0 6px}.ritual-start{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;margin-top:24px}.profile-v4{padding-top:8px}.profile-v4 h1{font-family:inherit;font-size:26px;font-weight:600}.avatar.large{background:var(--plum);color:var(--paper);outline:1px solid var(--gold);outline-offset:5px;margin-bottom:12px}.profile-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:20px 8px;border-radius:18px;background:#ece3d8;margin:24px 0}.profile-stats div{text-align:center;padding:0 5px}.profile-stats strong{display:block;font:400 28px var(--serif);margin-bottom:8px}.profile-stats span{font-size:12px;line-height:1.4;display:block;color:var(--muted)}.settings-group{background:var(--surface);padding:0 16px;border-radius:18px}.settings-group .setting:last-child{border-bottom:0}.brand-signoff{font-size:10px;letter-spacing:.12em;color:var(--muted);text-align:center;margin-top:28px}.official-logo{display:block;width:218px;height:auto}.welcome-v4{min-height:100dvh;padding:calc(32px + env(safe-area-inset-top,0px)) 24px calc(24px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:stretch;gap:24px}.welcome-brand{display:flex;justify-content:center}.welcome-brand .official-logo{width:188px}.paper-scene{height:245px;position:relative;width:100%;max-width:380px;align-self:center}.paper-sheet{position:absolute;width:190px;height:211px;left:calc(50% - 95px);top:16px;border-radius:3px;box-shadow:0 14px 30px #42273516}.sheet-back{background:#d8c6b7;transform:rotate(-12deg) translate(-16px,0)}.sheet-front{background:#fffcf5;transform:rotate(7deg) translate(10px,4px);padding:26px 22px;border:1px solid #e8dfd4}.sheet-front .eyebrow{font-size:9px;letter-spacing:.12em}.sheet-front img{width:125px;display:block;margin:22px auto}.paper-rule{display:block;height:1px;background:#ded2c1;margin-top:9px}.paper-rule.short{width:65%}.welcome-copy h1{font:400 32px/1.16 var(--serif);letter-spacing:-.035em}.welcome-copy p{color:var(--muted);font-size:15px;margin-top:16px}.welcome-actions{margin-top:auto}.welcome-actions .textbtn{justify-content:center;margin-top:12px}.splash-v4{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:var(--plum);transition:opacity .3s ease}.splash-v4 .official-logo{width:240px}.splash-v4.leaving{opacity:0;pointer-events:none}.about-brand{padding:16px 0 24px;display:grid;gap:20px}.about-brand .official-logo{margin:0 auto 12px}.language-list{margin-top:12px}.language-list [aria-pressed=true]{color:var(--plum);font-weight:600}.intro p{max-width:none}@media(min-width:700px){.welcome-v4{max-width:520px;margin:auto}.paper-scene{height:260px}}@media(prefers-reduced-motion:reduce){.splash-v4{transition:none}} 

/* Returning Home only: compact, discoverable Box entrances. */
.home-explore .sectionhead{margin-bottom:4px}.explore-intro{font-size:13px;color:var(--muted);margin-bottom:12px;line-height:1.45}.home-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-feature{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:8px;min-width:0;padding:16px 14px;border-radius:16px;background:var(--surface);box-shadow:0 2px 8px #42273504;border:1px solid #42273508}.feature-heading{display:flex;align-items:center;gap:8px;color:var(--plum);font-size:15px;font-weight:600;min-width:0}.feature-heading .icon{width:18px;height:18px}.home-feature strong{font-size:14px;font-weight:500;line-height:1.35}.feature-detail{font-size:12px;line-height:1.4;color:var(--muted)}.home-feature:active{background:var(--soft)}.home-box-choices{margin:12px 0}.home-box-choices .sheetoption{min-height:64px}.home-explore+.section{margin-top:24px}

/* Softer app-native type, retaining the existing scale and layout. */
:root{--rounded:ui-rounded,'SF Pro Rounded','Avenir Next',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--serif:var(--rounded)}
h1,.boxcard h3,.boxhero h1,.welcome-copy h1,.todaycard h3,.ritual-group .sectionhead h2,.profile-stats strong{font-family:var(--rounded);font-weight:600;letter-spacing:-.025em}
.official-logo,.splash-v4,.splash-v4 .official-logo{filter:none;animation:none;transition:none}.splash-v4 .official-logo{transform:none;opacity:1}

.profile-stats .profile-stat{text-align:center;padding:0 5px;min-height:72px;border-radius:12px}.profile-stat:active{background:#4227350c}

/* Quiet typography, scoped to the Future Self page. */
.future-self-screen .future-letter h1{font-size:24px;line-height:1.4;font-weight:600}
.future-self-screen .future-letter>p{font-size:18px;line-height:1.8;font-weight:400;letter-spacing:0;margin:24px 0}
.future-self-screen .future-letter>.small{font-size:14px;line-height:1.65}
.future-self-screen section>h2{font-size:18px;line-height:1.5}
.future-self-screen .entry>p{font-size:16px;line-height:1.75}

/* Morning Ritual step typography only. */
.morning-ritual-steps .immersive h1,.night-ritual-arrival .immersive h1{font-size:22px;line-height:1.4;font-weight:500;letter-spacing:0}
.morning-ritual-steps .ritualtext,.night-ritual-arrival .ritualtext{font-size:18px;line-height:1.75;font-weight:400;letter-spacing:0}
.morning-ritual-steps .immersive p.note,.night-ritual-arrival .immersive p.note{font-size:14px;line-height:1.75;font-weight:400}

.home-future-note>p{font-size:18px}

.todaycard[data-kind="Morning"]>h3{font-size:22px;line-height:34.8px}

/* Welcome paper composition: retain the original artwork at 112%. */
.welcome-v4 .paper-scene{height:275px;width:calc(100% / 1.12);max-width:339px;transform:scale(1.12);transform-origin:50% 0}

.profile-v4 .profile-avatar{position:relative;padding:0;border:0;flex-shrink:0}
.profile-avatar>img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:center}
.profile-avatar .avatar-edit{position:absolute;right:-3px;bottom:-3px;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:var(--paper);color:var(--plum);border:1px solid var(--gold)}
.profile-avatar .avatar-edit .icon{width:12px;height:12px}
