/* EstouFeliz v3.3 — menos texto, mais ação. */
:root{--ef-grad:linear-gradient(90deg,#45bdb3 0%,#a992df 52%,#ffc542 100%)}
.info-trigger{appearance:none;border:0;background:none;color:inherit;font:inherit;text-align:inherit;padding:0;cursor:pointer}
.info-trigger:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px;text-decoration-color:#b09cde}
.info-mark{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;border:1px solid var(--line2);font-size:14px;font-weight:700;color:var(--ink2);vertical-align:.14em;margin-left:7px;background:var(--paper)}
.ef-info-overlay{position:fixed;inset:0;z-index:1000;background:rgba(28,30,38,.38);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;padding:20px}
.ef-info-overlay.open{display:flex}
.ef-info-box{position:relative;width:min(600px,100%);max-height:min(78vh,720px);overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:0 24px 90px -30px rgba(30,25,60,.55);animation:efPop .18s ease}
.ef-info-box h2{font-size:clamp(24px,4vw,34px);margin:0 42px 12px 0;letter-spacing:-.035em}
.ef-info-box p{color:var(--ink2);font-size:17px;line-height:1.65;margin:0;white-space:pre-line}
.ef-info-close{position:absolute;top:14px;right:14px;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--sunk);color:var(--ink);font-size:25px;cursor:pointer}
@keyframes efPop{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}

/* Home mínima */
.minhome{min-height:100vh;background:var(--fog);overflow:hidden}
.minhome .mh-wrap{width:min(1480px,92vw);margin:0 auto}
.mh-top{display:flex;align-items:center;gap:28px;justify-content:space-between;padding:22px 0}
.mh-top .brand{flex-direction:row;align-items:center;gap:10px}.mh-top .brandwave{width:74px}.mh-top .brandword{font-size:28px}
.mh-nav{display:flex;align-items:center;gap:22px}.mh-nav a{text-decoration:none;color:var(--ink2);font-weight:500}.mh-nav a:hover{color:var(--ink)}
.mh-actions{display:flex;gap:10px;align-items:center}.mh-cta{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:999px;padding:13px 22px;font-weight:700;background:var(--ef-grad);color:white;box-shadow:0 10px 30px -18px #6d5bb1}
.mh-hero{display:grid;grid-template-columns:minmax(330px,.82fr) minmax(500px,1.18fr);gap:28px;align-items:center;min-height:540px;padding:20px 0 34px;position:relative}
.mh-hero::before{content:"";position:absolute;inset:6% -18% 0 35%;background:radial-gradient(circle at 25% 40%,rgba(87,207,194,.20),transparent 33%),radial-gradient(circle at 58% 35%,rgba(177,154,228,.18),transparent 30%),radial-gradient(circle at 86% 50%,rgba(255,198,71,.18),transparent 28%);z-index:0;pointer-events:none}
.mh-copy,.mh-visual{position:relative;z-index:1}.mh-version{display:inline-flex;border-radius:999px;padding:8px 13px;background:#eee8ff;color:#7559c5;font-size:13px;font-weight:800;margin-bottom:18px}
.mh-title{font-size:clamp(45px,5.2vw,82px);font-weight:700;line-height:.98;letter-spacing:-.055em;max-width:12ch}.mh-title span{background:var(--ef-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.mh-hint{margin:16px 0 0;color:var(--muted);font-size:13px}.mh-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.mh-secondary{display:inline-flex;align-items:center;text-decoration:none;border:1px solid var(--line2);background:var(--paper);border-radius:999px;padding:13px 20px;font-weight:600}
.mh-visual img{display:block;width:100%;height:auto;filter:drop-shadow(0 24px 35px rgba(45,43,70,.12))}
.mh-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding:12px 0 48px}.mh-card{min-height:130px;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:22px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 16px 40px -35px rgba(50,40,90,.35)}.mh-icon{font-size:32px}.mh-card h2{font-size:17px;line-height:1.2}
.mh-panels{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-bottom:48px}.mh-photo-card{position:relative;min-height:330px;border-radius:30px;overflow:hidden;background:var(--paper);border:1px solid var(--line)}.mh-photo{position:absolute;inset:0;background-size:cover;background-position:center}.mh-photo.user{background-image:linear-gradient(90deg,rgba(255,255,255,.95) 0%,rgba(255,255,255,.62) 42%,rgba(255,255,255,.05) 72%),url('/assets/para-voce.webp')}.mh-photo.pro{background-image:linear-gradient(90deg,rgba(255,255,255,.95) 0%,rgba(255,255,255,.62) 42%,rgba(255,255,255,.05) 72%),url('/assets/para-profissionais.webp')}.mh-photo-title{position:absolute;left:28px;bottom:28px;z-index:2;font-size:clamp(30px,4vw,52px);font-weight:700;max-width:10ch;line-height:1.02;letter-spacing:-.045em}
.mh-section{padding:20px 0 52px}.mh-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}.mh-section-head h2{font-size:clamp(32px,4vw,54px);max-width:14ch}.mh-section-head small{color:var(--muted)}
.mh-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.mh-step{background:var(--paper);border-radius:26px;padding:28px;border:1px solid var(--line);min-height:170px}.mh-step span{font-size:40px;display:block;margin-bottom:30px}.mh-step h3{font-size:24px}
.mh-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.mh-plan{background:var(--paper);border:1px solid var(--line);border-radius:26px;padding:26px;min-height:190px;display:flex;flex-direction:column;justify-content:space-between}.mh-plan.pop{border:2px solid transparent;background:linear-gradient(var(--paper),var(--paper)) padding-box,var(--ef-grad) border-box}.mh-plan h3{font-size:27px}.mh-plan b{font-size:17px;color:var(--muted)}
.mh-important{margin:0 0 46px;border:1px solid var(--warn-line);background:var(--warn-bg);border-radius:22px;padding:18px 22px;display:flex;align-items:center;justify-content:space-between}.mh-important button{font-weight:700;font-size:17px}.mh-foot{border-top:1px solid var(--line);padding:30px 0 46px;color:var(--muted);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

/* App rápido */
.quick-body{min-height:100vh;background:linear-gradient(150deg,#fff9f6 0%,#fff 46%,#f2efff 100%);color:#2f2928}
.quick-shell{width:min(900px,100%);margin:0 auto;padding:calc(12px + env(safe-area-inset-top,0px)) 16px calc(28px + env(safe-area-inset-bottom,0px))}
.quick-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:24px}.quick-nav,.quick-actions{display:flex;gap:8px;align-items:center}.quick-iconbtn{appearance:none;border:1px solid rgba(93,77,73,.14);background:rgba(255,255,255,.88);height:48px;min-width:48px;padding:0 13px;border-radius:16px;display:inline-grid;place-items:center;text-decoration:none;color:#302a29;font-size:20px;font-weight:700;box-shadow:0 8px 30px -24px rgba(64,43,80,.55);cursor:pointer}.quick-iconbtn.sync{font-size:13px;display:flex;gap:7px;min-width:auto}.sync-dot{width:9px;height:9px;border-radius:50%;background:#7db94a;box-shadow:0 0 0 3px rgba(125,185,74,.12)}.sync.off .sync-dot{background:#d99a45}.sync.pending .sync-dot{background:#9c7be0}
.quick-brandmark{width:42px;height:42px;border-radius:14px;background:#34383f;display:grid;place-items:center;padding:7px;flex:none}.quick-brandmark img{width:100%;height:100%;object-fit:contain}
.quick-question{margin:0 4px 20px}.quick-kicker{color:#ef795e;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}.quick-question h1{font-size:clamp(40px,8vw,68px);line-height:1;letter-spacing:-.055em}.quick-question .info-trigger{text-decoration:none}
.quick-moods{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;background:rgba(255,255,255,.75);border:1px solid rgba(93,77,73,.10);border-radius:30px;padding:14px;box-shadow:0 20px 55px -38px rgba(72,51,90,.35)}
.quick-mood{appearance:none;border:1px solid rgba(83,71,68,.13);background:rgba(255,255,255,.72);border-radius:22px;min-height:145px;padding:16px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;font:700 15px/1.1 var(--font);color:#625754;cursor:pointer;transition:transform .12s,box-shadow .12s,background .12s}.quick-mood .emoji{font-size:56px;line-height:1}.quick-mood:hover,.quick-mood:focus-visible{background:#fff;box-shadow:0 12px 30px -23px rgba(62,47,80,.42)}.quick-mood:active{transform:scale(.97)}.quick-mood.saved{outline:3px solid #a992df;outline-offset:-3px;background:#fff}
.quick-detail-open{width:100%;margin-top:18px;border:1px solid rgba(93,77,73,.12);background:rgba(255,255,255,.84);border-radius:22px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;font:700 17px/1.2 var(--font);color:#342e2d;cursor:pointer}.quick-detail-open small{font-weight:500;color:#7a6f6c}.quick-plus{font-size:35px;color:#ea795f;font-weight:300}
.quick-toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translate(-50%,30px);opacity:0;z-index:1200;background:#34383f;color:white;padding:11px 17px;border-radius:999px;font-size:14px;transition:.2s;pointer-events:none}.quick-toast.on{opacity:1;transform:translate(-50%,0)}

/* Modal de detalhes */
.detail-overlay{position:fixed;inset:0;z-index:1100;background:rgba(38,31,39,.44);backdrop-filter:blur(5px);display:none;align-items:center;justify-content:center;padding:14px}.detail-overlay.open{display:flex}.detail-box{width:min(760px,100%);max-height:92vh;overflow:auto;background:var(--paper);color:var(--ink);border-radius:28px;padding:24px;box-shadow:0 28px 100px -30px rgba(30,20,60,.65);position:relative}.detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.detail-head h2{font-size:25px}.detail-close{border:1px solid var(--line);background:var(--sunk);width:42px;height:42px;border-radius:50%;font-size:24px;cursor:pointer}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 22px}.detail-grid .wide{grid-column:1/-1}.detail-field label{display:block;font-size:13px;font-weight:700;color:var(--ink2);margin-bottom:7px}.detail-field input,.detail-field textarea{width:100%;border:1px solid var(--line2);border-radius:15px;padding:12px 13px;font:inherit;color:var(--ink);background:var(--paper)}.detail-field textarea{min-height:88px;resize:vertical}.level-row{display:flex;gap:6px;flex-wrap:wrap}.level-btn{appearance:none;border:1px solid var(--line2);background:var(--sunk);min-width:49px;height:48px;border-radius:15px;padding:0 9px;color:var(--ink);font:700 14px/1 var(--font);cursor:pointer}.level-btn[aria-pressed="true"]{background:#ebe4ff;border-color:#ad95e7;box-shadow:inset 0 0 0 1px #ad95e7}.level-btn span{font-size:18px;margin-right:2px}.detail-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.detail-save{border:0;background:#353940;color:white;border-radius:999px;padding:13px 20px;font:700 15px var(--font);cursor:pointer}.detail-cancel{border:1px solid var(--line2);background:var(--paper);border-radius:999px;padding:13px 20px;font:600 15px var(--font);cursor:pointer}

/* Diário mínimo */
.diary-body{background:linear-gradient(155deg,#f8fbff,#fff 45%,#f8f4ff);min-height:100vh}.diary-shell{width:min(980px,94vw);margin:0 auto;padding:calc(16px + env(safe-area-inset-top,0px)) 0 70px}.diary-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.diary-title{font-size:clamp(36px,7vw,62px);letter-spacing:-.055em;margin:18px 0 22px}.diary-tools{display:flex;gap:8px;flex-wrap:wrap}.diary-filter{display:inline-flex;gap:5px;padding:5px;background:var(--sunk);border-radius:999px}.diary-filter button{appearance:none;border:0;background:transparent;padding:9px 13px;border-radius:999px;font:700 13px var(--font);color:var(--ink2);cursor:pointer}.diary-filter button.on{background:var(--paper);color:var(--ink);box-shadow:0 2px 8px rgba(30,20,70,.09)}.diary-list{display:grid;gap:12px}.diary-entry{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:18px;display:grid;grid-template-columns:60px 1fr auto;gap:14px;align-items:start;box-shadow:0 14px 45px -38px rgba(36,28,78,.45)}.diary-emoji{font-size:42px;line-height:1;width:60px;height:60px;border-radius:18px;display:grid;place-items:center;background:var(--sunk)}.diary-entry h3{font-size:19px;margin-bottom:2px}.diary-time{color:var(--muted);font-size:13px}.diary-note{margin-top:9px;font-size:16px;line-height:1.5;color:var(--ink2)}.diary-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.diary-tags span{font-size:12px;padding:5px 9px;border-radius:999px;background:var(--sunk);color:var(--ink2)}.diary-edit{appearance:none;border:1px solid var(--line2);background:var(--paper);border-radius:999px;padding:9px 12px;font:700 13px var(--font);cursor:pointer}.diary-empty{text-align:center;padding:52px 20px;border:1px dashed var(--line2);border-radius:24px;color:var(--muted);background:rgba(255,255,255,.45)}
.password-wrap{position:relative}.password-wrap input{padding-right:54px!important}.password-eye{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:12px;border:0;background:var(--sunk);font-size:18px;cursor:pointer}

@media(max-width:900px){.mh-nav{display:none}.mh-hero{grid-template-columns:1fr;padding-top:8px;min-height:auto}.mh-copy{text-align:center}.mh-title{margin:0 auto;max-width:11ch}.mh-buttons{justify-content:center}.mh-visual{margin-top:-10px}.mh-grid{grid-template-columns:1fr 1fr}.mh-grid .mh-card:last-child{grid-column:1/-1}.mh-panels{grid-template-columns:1fr}.mh-steps,.mh-plans{grid-template-columns:1fr 1fr}.mh-plans .mh-plan:last-child{grid-column:1/-1}.mh-top .brandword{font-size:22px}.mh-top .brandwave{width:58px}.mh-top{padding:14px 0}}
@media(max-width:620px){.mh-actions .mh-secondary,.mh-top .brandword{display:none}.mh-hero{gap:8px}.mh-title{font-size:clamp(43px,13vw,64px)}.mh-visual{margin-left:-5vw;margin-right:-5vw}.mh-grid{grid-template-columns:1fr 1fr;gap:9px}.mh-card{min-height:115px;padding:17px}.mh-card h2{font-size:15px}.mh-panels{gap:12px}.mh-photo-card{min-height:260px}.mh-photo-title{left:20px;bottom:20px}.mh-steps,.mh-plans{grid-template-columns:1fr}.mh-plans .mh-plan:last-child{grid-column:auto}.quick-shell{padding-left:12px;padding-right:12px}.quick-top{margin-bottom:20px}.quick-iconbtn{height:44px;min-width:44px;border-radius:14px;padding:0 10px}.quick-actions .help-label{display:none}.quick-question h1{font-size:clamp(39px,12.2vw,58px)}.quick-moods{gap:8px;padding:10px;border-radius:24px}.quick-mood{min-height:126px;border-radius:18px;padding:13px 4px}.quick-mood .emoji{font-size:48px}.quick-mood{font-size:13px}.detail-grid{grid-template-columns:1fr}.detail-grid .wide{grid-column:auto}.detail-box{border-radius:24px;padding:19px}.diary-entry{grid-template-columns:52px 1fr;}.diary-emoji{width:52px;height:52px;font-size:36px}.diary-edit{grid-column:2;justify-self:start}.diary-shell{width:min(94vw,720px)}}
@media(max-width:390px){.quick-mood{min-height:116px}.quick-mood .emoji{font-size:43px}.quick-mood{font-size:12px}.quick-iconbtn.sync{font-size:12px;padding:0 8px}.quick-nav{gap:5px}.quick-actions{gap:5px}.mh-grid{grid-template-columns:1fr}}

/* v3.3 — modo claro/escuro e paletas do app rápido */
.quick-body.theme-triste{--ef-grad:linear-gradient(90deg,#2aa7c9,#315eae 48%,#a988ee)}
.quick-body.theme-alegre{--ef-grad:linear-gradient(90deg,#17b9c2,#30d3a6 28%,#ffd52f 58%,#ff6372)}
.diary-body.theme-triste{--ef-grad:linear-gradient(90deg,#2aa7c9,#315eae 48%,#a988ee)}
.diary-body.theme-alegre{--ef-grad:linear-gradient(90deg,#17b9c2,#30d3a6 28%,#ffd52f 58%,#ff6372)}
:root[data-theme="dark"] .quick-body{background:linear-gradient(150deg,#17191f 0%,#1b1e25 48%,#211d2d 100%);color:var(--ink)}
:root[data-theme="dark"] .diary-body{background:linear-gradient(155deg,#171a20,#1c1f26 48%,#211d2d);color:var(--ink)}
:root[data-theme="dark"] .quick-mood{background:rgba(31,34,42,.88);border-color:var(--line2);color:var(--ink2)}
:root[data-theme="dark"] .quick-mood:hover,:root[data-theme="dark"] .quick-mood:focus-visible,:root[data-theme="dark"] .quick-mood.saved{background:#252934}
:root[data-theme="dark"] .quick-detail-open{background:rgba(31,34,42,.92);border-color:var(--line2);color:var(--ink)}
:root[data-theme="dark"] .quick-detail-open small{color:var(--muted)}
:root[data-theme="dark"] .quick-iconbtn,:root[data-theme="dark"] .quick-sync,:root[data-theme="dark"] .quick-brandmark{background:var(--paper);border-color:var(--line2);color:var(--ink)}
:root[data-theme="dark"] .diary-empty{background:rgba(31,34,42,.6)}
/* v3.3 piloto EstouFeliz: no Diário, o texto do episódio só aparece sob demanda. */
.diary-entry-title{appearance:none;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:800;text-align:left;padding:0;cursor:pointer;line-height:1.25}.diary-entry-title:hover,.diary-entry-title:focus-visible{text-decoration:underline;text-decoration-color:rgba(129,102,210,.45);text-underline-offset:3px}.diary-entry .info-mark{font-size:.72em}.diary-entry{align-items:center}.diary-time{margin-top:4px}
/* v3.3 - marca oficial no topo do app e landing minimalista */
.mh-top .brand.brand-image img{width:172px;height:58px;object-fit:contain;object-position:left center}
.quick-brandmark img{width:58px;height:44px;object-fit:contain}
@media(max-width:620px){.mh-top .brand.brand-image img{width:126px;height:42px}.quick-brandmark img{width:54px;height:40px}}

/* v3.3.1 — correções de landing: rolagem real + cartões inteiros clicáveis */
html{overflow-y:auto}
body.minhome{min-height:100vh;overflow-x:hidden!important;overflow-y:auto!important}
.minhome main{overflow:visible}
.mh-card{position:relative;padding:0;overflow:hidden}
.mh-card-link{display:flex;min-height:130px;flex:1;flex-direction:column;justify-content:space-between;padding:22px 50px 22px 22px;text-decoration:none;color:inherit;border-radius:22px;cursor:pointer}
.mh-card-link:hover,.mh-card-link:focus-visible{background:color-mix(in srgb,var(--paper) 86%,#bfaee2 14%);outline:none}
.mh-card-help{position:absolute;right:14px;bottom:14px;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--paper);color:var(--ink);display:grid;place-items:center;cursor:pointer;z-index:3}
.mh-card-help .info-mark{margin:0}
.mh-visual-link{display:block;text-decoration:none;color:inherit;border-radius:28px}
.mh-visual-link:focus-visible,.mh-panel-link:focus-visible,.mh-step-link:focus-visible,.mh-card-link:focus-visible{outline:3px solid #9f8fe0;outline-offset:4px}
.mh-panel-link{display:block;text-decoration:none;color:inherit}
.mh-step-link{display:block;text-decoration:none;color:inherit;cursor:pointer}
.mh-step-link:hover,.mh-panel-link:hover{transform:translateY(-2px)}
.theme-triste{--mh-accent:#5f6fd2}.theme-alegre{--mh-accent:#24bfb5}.theme-feliz{--mh-accent:#8f82d9}
.minhome.theme-triste{background:radial-gradient(circle at 88% 20%,rgba(78,94,210,.12),transparent 28%),var(--fog)}
.minhome.theme-alegre{background:radial-gradient(circle at 88% 20%,rgba(255,199,61,.14),transparent 30%),var(--fog)}
@media(max-width:620px){.mh-card-link{min-height:115px;padding:17px 44px 17px 17px}}
