/* Referência: Vida Church Financeiro V3.6. Montserrat é a fonte da interface. */
:root{--vida-font:Montserrat,"Vida Sans","Avenir Next",Arial,sans-serif;--bs-body-font-family:var(--vida-font);--vida-green:#778c69;--vida-sand:#d1a579;--vida-earth:#705028;--vida-cream:#f6f4ef;--vida-ink:#292922;--accent:#526747;--radius:24px;--soft-shadow:0 18px 50px rgba(80,57,29,.08)}
html[data-theme=dark]{--vida-cream:#1c211b;--vida-ink:#f7f3eb;--surface:#272e25;--surface-2:#323c2e;--line:#424b3d;--muted:#c1c4b9;--accent:#b9cba8;--soft-shadow:0 16px 38px rgba(0,0,0,.18)}
body{font-family:var(--vida-font);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6,button,input,select,textarea,.btn{font-family:var(--vida-font)}
h1,.page-head h1{font-size:clamp(29px,3vw,40px);letter-spacing:-.04em;font-weight:800;line-height:1.2}
h2,.panel h2,.profile-card h2{font-size:22px;line-height:1.4;font-weight:800}h3,.panel h3,.part-person h3,.profile-card h3{font-size:19px;line-height:1.5;font-weight:700}
.content p,.content li,.detail-value,.detail-text,.cell-content,.record-card,.event p{font-size:17px;line-height:1.65}
.sub,.form-help,.stat-note,.stat-top,.auth-foot,.footer,.record-label,.content small{font-size:14px!important;line-height:1.6}
.form-control,.form-select,.auth-box label,.edit-box label,.module-form label{font-size:17px!important;line-height:1.5}
.form-control,.form-select{min-height:50px;padding:12px 15px;border-radius:14px!important}
textarea.form-control{min-height:130px}.form-control:focus,.form-select:focus{box-shadow:0 0 0 4px rgba(119,140,105,.18)}
.btn,.text-btn{font-size:16px;line-height:1.4;font-weight:700}.btn{border-radius:16px!important;min-height:48px;padding:12px 19px;display:inline-flex;gap:8px;align-items:center;justify-content:center;white-space:normal}.btn i{margin-right:0}
.btn-primary{background:#5f7353;border-color:#5f7353;box-shadow:0 8px 22px rgba(95,115,83,.16)}.btn-primary:hover,.btn-primary:focus{background:#4d6042;border-color:#4d6042}
.panel,.stat,.role-card,.auth-box,.agenda-item,.ig-card,.media-card,.guide-intro,.event,.install-help,.loading-card,dialog,.modal-content{border-radius:24px!important;box-shadow:var(--soft-shadow)}
.profile-member,.profile-module,.profile-rule,.part-person,.record-card,.home-alert,.upload-row,.guide-highlight,.notice{border-radius:18px!important}
.tag,.avatar,.role-icon,.icon-button,.guide-nav a,.dashboard-links a,.app-shortcuts a{border-radius:14px!important}.tag{font-size:13px;line-height:1.5;padding:6px 11px}.icon-button{width:46px;height:46px;flex:0 0 46px;box-shadow:0 5px 16px rgba(80,57,29,.05)}
.part-track,.part-track span,.progress{border-radius:99px!important}.loading-ring{border-radius:50%!important}
.panel-head{padding:22px 24px;flex-wrap:wrap}.edit-box{max-width:1000px;padding:28px}.content{padding-left:30px;padding-right:30px}.stat-value{font-weight:800;font-size:36px}.part-person{background:var(--surface);padding:20px}.part-person h3{margin:12px 0}
.sidebar{padding-left:14px;padding-right:14px}.menu-section{font-size:13px;font-weight:800;margin:20px 12px 8px;letter-spacing:.04em}.menu-folder{border:0;margin:5px 0;padding:0}.menu-folder summary{font-size:16px;min-height:50px;padding:13px 12px;border-radius:14px;background:var(--surface)}.menu-folder[open]>summary,.menu-folder[data-menu-current="1"]>summary{background:var(--surface-2);color:var(--accent)}
.menu-children{margin:8px 0 12px 12px;padding-left:8px}.nav-btn,.menu-children .nav-btn{font-size:15px;min-height:48px;line-height:1.5;padding:11px 12px;border-radius:14px!important}.nav-btn.active{background:#5f7353;color:white;font-weight:800}.nav-btn.active:hover{background:#4d6042;color:white}.nav-btn[hidden],.menu-main[hidden]{display:none!important}
/* Impede CSS antigo de tornar todos os submenus visíveis. */
.menu-folder:not([open])>.menu-children{display:none!important}
.brand-subtitle{font-size:13px;letter-spacing:.06em}.sidebar .brand-logo{width:176px}.profile strong{font-size:15px}.app-heading strong{font-size:20px}.app-heading small{font-size:12px}.topbar{box-shadow:0 4px 20px rgba(80,57,29,.04)}.bottom-tab{font-size:13px!important;border-radius:14px!important}.bottom-nav{gap:6px;padding-left:10px;padding-right:10px}
@media(max-width:600px){body{font-size:17px}.content{padding-left:15px;padding-right:15px}.panel,.stat,.auth-box{border-radius:20px!important}.edit-box,.profile-card{padding:20px}.page-head p{font-size:16px}.app-heading strong{font-size:17px}.app-heading small{font-size:11px}.topbar{gap:8px}.app-top-actions{gap:6px}.icon-button{width:42px;height:42px;flex-basis:42px}.stat{padding:16px}.stat-value{font-size:30px}.bottom-tab{font-size:12px!important}.menu-folder summary{font-size:16px}.nav-btn,.menu-children .nav-btn{font-size:15px}.btn{font-size:16px}}

.bottom-tab span{overflow-wrap:anywhere;max-width:100%} [data-map-entry] summary{cursor:pointer;padding:12px 0;font-weight:700} [data-map-entry][hidden]{display:none!important}
