:root{--green:#0d4b3b;--green2:#173f34;--gold:#a9853b;--ink:#163d33;--cream:#fbf5e9;--paper:rgba(255,251,244,.92);--line:rgba(79,72,57,.26);--shadow:0 12px 34px rgba(71,54,31,.10)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#eee8dd;color:var(--ink)}body{font-family:Arial,Helvetica,sans-serif}button,input,textarea,select{font:inherit}.app{width:min(100%,520px);min-height:100svh;margin:auto;position:relative;padding:18px 24px calc(92px + env(safe-area-inset-bottom));overflow:hidden;background:linear-gradient(180deg,#fffaf0 0%,#fbf4e7 58%,rgba(250,242,227,.80) 72%,rgba(248,239,222,.35) 100%);box-shadow:0 0 45px rgba(45,38,25,.13)}.app:after{content:"";position:absolute;z-index:0;left:0;right:0;bottom:72px;height:34vh;min-height:245px;background:linear-gradient(180deg,rgba(251,245,233,1) 0%,rgba(251,245,233,.28) 20%,rgba(251,245,233,.02) 55%),url('assets/viva-scene.jpg') center bottom/cover no-repeat;pointer-events:none}.app>*{position:relative;z-index:2}header{text-align:center;margin:0 auto 4px;height:150px;overflow:hidden}.brand-logo{display:block;width:260px;max-width:72vw;height:150px;object-fit:cover;object-position:center 25%;margin:0 auto}.hero{text-align:center;max-width:440px;margin:2px auto 16px}.hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:500;font-size:34px;line-height:1.05;margin:0 0 12px;color:var(--green)}.hero p{font-size:15px;line-height:1.45;max-width:390px;margin:auto;color:#29483f}.screen-home .hero h1{font-size:42px}.screen-home .hero h1 span{font-size:30px!important}.screen-home .hero p{font-size:15px}.card{position:relative;background:var(--paper);border:1px solid rgba(255,255,255,.9);border-radius:20px;padding:18px;margin:14px auto;max-width:440px;box-shadow:var(--shadow);backdrop-filter:blur(7px)}textarea,input,select{width:100%;border:1px solid var(--line);background:rgba(255,253,248,.92);border-radius:18px;color:var(--ink);outline:none;padding:15px 17px}textarea{min-height:112px;resize:vertical;font-size:16px;line-height:1.4}input:focus,textarea:focus,select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(169,133,59,.10)}.screen-home .card{padding:0;margin:12px auto;background:transparent;border:0;box-shadow:none}.screen-home textarea{min-height:72px;height:72px;resize:none;border-radius:999px;padding:24px 62px 18px 22px;background:rgba(255,253,248,.92);box-shadow:0 7px 22px rgba(77,56,28,.06)}.screen-home #send{position:absolute;right:10px;top:8px;width:56px;height:56px;margin:0;padding:0;border-radius:50%;font-size:0;box-shadow:none}.screen-home #send:after{content:'➤';font-size:22px;font-weight:400}.btn{display:block;width:min(100%,440px);margin:11px auto;border:0;border-radius:999px;padding:14px 18px;cursor:pointer;font-weight:600;transition:.16s transform,.16s opacity}.btn:active{transform:scale(.985)}.primary{background:var(--green);color:#fff;box-shadow:0 8px 20px rgba(13,75,59,.16)}.secondary{background:rgba(255,250,241,.90);color:var(--green);border:1px solid rgba(169,133,59,.30)}.ghost{background:transparent;color:var(--green);border:1px solid rgba(13,75,59,.18)}.gold{color:var(--gold)}.center{text-align:center}.verse{font-family:Georgia,'Times New Roman',serif;text-align:center;font-size:25px;line-height:1.32}.verse:before{content:'“';display:block;color:var(--gold);font-size:58px;line-height:.6}.ref{text-align:center;letter-spacing:.16em;text-transform:uppercase;color:#5d513a;margin-top:15px;font-size:12px}.meta,.small{font-size:12px;color:#6e736e}.notice{font-size:12px;background:#fff8e9;border-left:3px solid var(--gold);padding:10px}.nav{position:fixed;z-index:20;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,520px);display:grid;grid-template-columns:repeat(4,1fr);padding:10px 8px calc(9px + env(safe-area-inset-bottom));background:rgba(255,251,244,.98);border-top:1px solid rgba(70,60,40,.10);backdrop-filter:blur(14px)}.nav button{border:0;background:transparent;color:#6d7772;padding:4px 1px;font-size:11px;cursor:pointer}.nav .ico{display:block;font-size:22px;line-height:1;margin-bottom:5px}.nav button.active{color:var(--green);font-weight:700}.nav button.active:after{content:"";display:block;width:42px;height:3px;background:var(--green);border-radius:4px;margin:7px auto -4px}.topic-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:440px;margin:auto}.topic{margin:0;min-height:92px;border:0;color:var(--green);font-family:Georgia,serif;font-size:18px;cursor:pointer}.chips{display:flex;gap:7px;justify-content:center;flex-wrap:wrap;margin:12px 0}.chip{border:1px solid rgba(13,75,59,.22);border-radius:999px;background:#fffaf2;padding:8px 13px;color:var(--green);cursor:pointer;font-size:12px}.chip.active{background:var(--green);color:#fff}.list{max-width:440px;margin:auto}.heart{position:absolute;right:16px;top:14px;border:0;background:transparent;color:var(--gold);font-size:25px;cursor:pointer}.menu-card{display:block;width:100%;text-align:left;color:var(--green);cursor:pointer}.menu-card b,.menu-card span{display:block}.journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.journey-box{text-align:center;background:rgba(255,255,255,.5);border-radius:16px;padding:12px 4px}.journey-box b{font:26px Georgia,serif;display:block}.danger{color:#8d3c35}.empty{text-align:center}.home-signature{font-family:'Brush Script MT','Segoe Script',cursive;font-size:24px;line-height:1.05;color:#85682e;text-align:right;max-width:420px;margin:52px auto 205px;padding-right:4px}.action-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:440px;margin:14px auto}.action-row.four{grid-template-columns:repeat(4,1fr)}.action-row .btn{margin:0;padding:12px 4px;border-radius:18px;font-size:11px}.screen-word .card,.screen-reflection .card{background:rgba(255,250,241,.94)}.screen-reflection .card h3{font:24px Georgia,serif;color:var(--green);margin:0 0 10px}.screen-reflection .card p{font-family:Georgia,serif;font-size:16px;line-height:1.42}.script{font-family:'Brush Script MT','Segoe Script',cursive;font-size:25px;color:#85682e;text-align:right;max-width:420px;margin:22px auto 170px}.back{position:absolute;top:18px;left:14px;border:0;background:rgba(255,250,241,.65);border-radius:999px;color:var(--green);font-size:12px;padding:5px 10px;cursor:pointer;z-index:5}.screen-journal .card textarea{background:transparent;border:0;min-height:150px;padding:0}.screen-journal .meta{text-align:right}.remember{display:grid;grid-template-columns:42px 1fr;align-items:start}.remember:before{content:'☼';font-size:34px;color:var(--gold)}
@media(max-height:740px) and (max-width:520px){header{height:125px}.brand-logo{height:125px;width:225px}.screen-home .hero h1{font-size:36px}.screen-home .hero h1 span{font-size:26px!important}.hero{margin-bottom:10px}.home-signature{margin-top:28px;margin-bottom:150px}.app:after{height:31vh;min-height:210px}}
@media(min-width:700px){body{padding:20px 0}.app{border-radius:32px;min-height:calc(100svh - 40px)}.nav{bottom:20px;border-radius:0 0 32px 32px}}

/* VIVA 2.1 — refinamento final da tela inicial */
.screen-home header{height:128px;margin:0 auto 0;overflow:visible}
.screen-home .brand-logo{width:218px;max-width:60vw;height:128px;object-fit:contain;object-position:center center;margin:0 auto}
.screen-home .hero{margin:0 auto 10px}
.screen-home .hero h1{font-size:38px;line-height:1.02;margin:0 0 10px}
.screen-home .hero h1 span{font-size:28px!important}
.screen-home .hero p{font-size:14px;line-height:1.38;max-width:365px}
.screen-home .card{margin:10px auto 0}
.screen-home textarea{min-height:66px;height:66px;padding:21px 62px 16px 20px}
.screen-home #send{right:8px;top:7px;width:52px;height:52px}
.screen-home .home-signature{font-size:22px;margin:34px auto 176px;padding-right:8px}
.screen-home.app:after{bottom:calc(66px + env(safe-area-inset-bottom));height:31vh;min-height:225px;background:linear-gradient(180deg,rgba(251,245,233,1) 0%,rgba(251,245,233,.22) 17%,rgba(251,245,233,.01) 48%),url('assets/viva-scene.jpg') center bottom/cover no-repeat}
@media(max-height:740px) and (max-width:520px){.screen-home header{height:112px}.screen-home .brand-logo{height:112px;width:196px}.screen-home .hero h1{font-size:34px}.screen-home .hero h1 span{font-size:25px!important}.screen-home .home-signature{margin-top:24px;margin-bottom:145px}.screen-home.app:after{height:29vh;min-height:195px}}
