/* Additions to the exact approved visual (V0.10.2). No change to logo, palette, card proportions. */
.skip-link{position:absolute;top:-100px;left:10px;z-index:90;background:#fff;color:#102747;border-radius:9px;padding:10px}.skip-link:focus{top:10px}
#lock-button[hidden]{display:none}#lock-button{min-width:46px}
.aside-note{font-size:12px!important;margin-top:26px;opacity:.88}
.app:not(.role-idoso) .header{padding-bottom:40px}
.app:not(.role-idoso) .main{padding-top:24px}
.app:not(.role-idoso) .intro{margin-top:18px}
.main{overflow-wrap:anywhere}
.elder-stack .elder-tile{cursor:pointer}
.status-summary{padding:10px 12px;background:#eaf4ed;color:#26654e;border:1px solid #b9dfc4;border-radius:12px;margin-bottom:15px;font-size:13px;line-height:1.5}
.status-summary.warn{background:#fff5e6;border-color:#f5d3a0;color:#78551b}
.form-error{background:#fff0f0;border:1px solid #ebc4c8;border-radius:11px;padding:11px;font-size:14px;color:#9e2033}
.app .form-panel{background:#fff;border:1px solid #dfe7f2;padding:19px 16px;border-radius:19px;box-shadow:0 7px 20px #182d5412}
.form-panel h2{font-size:22px;margin-bottom:10px;color:#082a54}
.form-panel p{font-size:14px;line-height:1.55;color:#526b89}
.field input,.field select,.field textarea{font-size:16px}
.help-text{font-size:12px;color:#526881;line-height:1.6}
.profile-summary{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;background:#eff6ff;border:1px solid #d7e4f2;padding:13px;border-radius:13px;margin-bottom:16px}
.profile-summary small{color:#527190}
.app .full-row{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.app .full-row .btn{margin-top:6px}
.app .btn.danger,.app .btn.gold,.app .btn.light{min-height:48px}
.app .elder-med-row .btn{margin-top:9px}
.empty-state{padding:22px 13px;text-align:center;border:1px dashed #c5d3e2;border-radius:15px;background:#fafcff;color:#526c8d;margin-bottom:14px;font-size:15px;line-height:1.5}
.empty-state strong{display:block;font-size:18px;color:#17375d;margin-bottom:6px}
.phone-action{display:flex;width:100%;justify-content:center;align-items:center;text-decoration:none;min-height:60px;font-size:18px;margin-bottom:11px}
.phone-action.samu{background:#ad2737}.phone-action.bombeiros{background:#973d1f}
.sos-guide{background:#fff5f4;border:1px solid #f0c6cb;border-radius:16px;color:#843644;padding:15px;margin:10px 0 17px;line-height:1.55;font-size:14px}
.badge{font-size:11px;font-weight:750;border-radius:20px;padding:7px 10px;background:#e8f1fd;color:#174a80}
.inline-action{display:inline-flex;gap:7px;flex-wrap:wrap;margin:9px 0}
.inline-action button{flex:1;min-width:130px}
.med-date{font-size:13px;color:#607998;margin-top:4px}
.journal-photo{max-width:100%;max-height:260px;border-radius:12px;margin-top:10px;display:block}
.warn-block{font-size:14px;line-height:1.55;color:#854128;padding:13px 14px;background:#fff5e9;border:1px solid #efd7ad;border-radius:12px;margin:12px 0}
.card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}
.card-actions .btn{min-width:118px}
.session-buttons{margin-top:15px;display:flex;gap:9px;flex-wrap:wrap}
.section-divider{border:0;border-top:1px solid #e1eaf3;margin:19px 0}
.note-stamp{color:#617995;font-size:12px}
.app.role-idoso .elder-note{font-size:14px}
.role-description{margin-top:14px;border-top:1px solid #e0e8f2;padding-top:14px}
@media(max-width:870px){.aside-note{display:none}.stage>.app{max-width:none}.app:not(.role-idoso) .header{padding-top:max(20px,env(safe-area-inset-top))}}
@media(max-width:375px){.header-top .brand .name{font-size:23px}.app .field input{font-size:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}}

.nav[hidden],#restore-box[hidden]{display:none!important}
.app.large-text{font-size:1.08em}.app.large-text .elder-tile-copy strong{font-size:24px}.app.large-text .field{font-size:16px}
