/*
 STAR LIFE OS v0.2.1 — +5px em TODOS os font-size definidos na interface v0.2.
 Carregado apos o CSS do Vite. Nao afeta o comprovante A4 nem o banco.
 Nao alterar as regras de protecao de sessao/CSRF.
*/
.sidebar-brand,.login-brand,.login-mobile-brand {font-size:23px;}
.sidebar-brand small,.login-brand small {font-size:13px;}
.sidebar-section-label {font-size:15px;}
.side-nav button {font-size:17.5px;}
.nav-count {font-size:15px;}
.soon {font-size:13px;}
.help-tile strong {font-size:17px;}
.help-tile p {font-size:16px;}
.help-tag {font-size:14px;}
.avatar {font-size:17px;}
.sidebar-user strong {font-size:16px;}
.sidebar-user small {font-size:15px;}
.topbar-left,.topbar-right {font-size:17px;}
.page-heading h1 {font-size:34px;}
.page-heading p {font-size:18px;}
.wave {font-size:28px;}
.eyebrow {font-size:15px;}
.btn {font-size:17px;}
.banner-label {font-size:14px;}
.welcome-banner h2 {font-size:28px;}
.welcome-banner p {font-size:16.5px;}
.banner-link {font-size:16.5px;}
.illustration-front span {font-size:17px;}
.section-title h2 {font-size:20px;}
.section-title p {font-size:16px;}
.small-note {font-size:14px;}
.stat-number {font-size:32px;}
.stat-label {font-size:16.5px;}
.stat-bottom {font-size:15px;}
.text-action {font-size:16px;}
.order-main strong {font-size:17px;}
.order-main small {font-size:15px;}
.order-date {font-size:15px;}
.status-pill {font-size:15px;}
.row-description {font-size:15px;}
.empty-state h3 {font-size:21px;}
.empty-state p {font-size:17px;}
.next-banner strong {font-size:16.5px;}
.next-banner p {font-size:15.5px;}
.version-tag {font-size:14px;}
.desktop-footer {font-size:15px;}
.search-box input {font-size:16.5px;}
.select-box select {font-size:16.5px;}
.results-heading strong,.results-heading span {font-size:15px;}
.back-link button {font-size:16px;}
.form-card-head h2 {font-size:19px;}
.form-card-head p {font-size:15.5px;}
.field label {font-size:16px;}
.field input,.field textarea,.field select {font-size:17px;}
.field-hint {font-size:15px;}
.priority-opt {font-size:16px;}
.side-info-card h3 {font-size:18px;}
.side-info-card>p {font-size:16px;}
.side-info-card .side-explain {font-size:15px;}
.side-next-card strong {font-size:17px;}
.side-next-card p {font-size:15.5px;}
.error-message {font-size:16px;}
.info-grid small {font-size:15px;}
.info-grid strong {font-size:17px;}
.description-text {font-size:17px;}
.future-grid strong {font-size:16px;}
.future-grid small {font-size:14px;}
.timeline-card h3 {font-size:18px;}
.timeline-item strong {font-size:15.5px;}
.timeline-item small {font-size:14.5px;}
.large-avatar {font-size:23px;}
.settings-account h2 {font-size:21px;}
.settings-account p {font-size:17px;}
.authorized-label {font-size:15px;}
.settings-meta span {font-size:16px;}
.settings-meta strong {font-size:16px;}
.loading-brand {font-size:28px;}
.loading-screen p {font-size:17px;}
.micro-pill {font-size:15px;}
.login-story h1 {font-size:calc(clamp(36px,3.8vw,57px) + 5px);}
.login-story p {font-size:19px;}
.login-footer {font-size:16px;}
.login-tag {font-size:15px;}
.login-form-card h2 {font-size:32px;}
.login-form-card h2 span {font-size:28px;}
.subtle {font-size:17.5px;}
.login-form>label {font-size:16px;}
.input-icon input {font-size:17px;}
.login-help {font-size:15.5px;}
.login-copy {font-size:15px;}
.toast {font-size:17px;}
@media (max-width:900px) {
  .login-story h1 {font-size:40px;}
}
@media (max-width:720px) {
  .page-heading h1 {font-size:28px;}
  .page-heading p {font-size:17px;}
  .eyebrow {font-size:14px;}
  .welcome-banner h2 {font-size:26px;}
  .welcome-banner p {font-size:15px;}
  .stat-number {font-size:30px;}
  .stat-bottom {font-size:14px;}
  .stat-label {font-size:15.5px;}
  .section-title h2 {font-size:19px;}
  .mobile-bottom-nav button {font-size:15px;}
  .form-card-head h2 {font-size:18px;}
  .login-mobile-brand {font-size:23px;}
  .login-form-card h2 {font-size:30px;}
}
@media (max-width:380px) {
  .page-heading h1 {font-size:27px;}
  .welcome-banner h2 {font-size:23px;}
  .stat-label {font-size:15px;}
}
.compact-btn {font-size:16px;}
.mini-explain {font-size:16.5px;}
.feature-loading,.feature-empty {font-size:17px;}
.feature-empty strong {font-size:17px;}
.photo-thumb strong {font-size:16px;}
.photo-thumb small {font-size:15px;}
.photo-select span {font-size:16px;}
.signature-saved strong {font-size:18px;}
.signature-saved small {font-size:16px;}
.signature-canvas-wrap small {font-size:15px;}
.signature-clear {font-size:16px;}
.consent-row {font-size:16px;}
.timeline-history h3 {font-size:17px;}

/* Acomodação dos textos maiores sem reduzir o acréscimo de 5px. */
html { font-size:21px; -webkit-text-size-adjust:100%; text-size-adjust:100%; }
.sidebar { width:292px; }
.app-main { margin-left:292px; }
.sidebar-brand { letter-spacing:.9px; }
.sidebar-section-label { letter-spacing:1px; }
.side-nav button { min-height:49px; }
.sidebar-user strong { max-width:160px; }
.sidebar-user small { line-height:1.3; }
.topbar { min-height:84px; height:auto; padding-top:13px; padding-bottom:13px; }
.topbar-left, .topbar-right { min-width:0; flex-wrap:wrap; }
.page-heading { flex-wrap:wrap; }
.welcome-banner { min-height:246px; }
.welcome-banner p { max-width:440px; }
.welcome-banner .banner-illustration { flex-shrink:0; }
.stats-grid { align-items:stretch; }
.stat-card { overflow-wrap:anywhere; }
.stat-label,.stat-bottom,.section-title p,.mini-explain { line-height:1.45; }
.form-grid,.form-layout,.detail-grid,.info-grid { min-width:0; }
.form-grid > *, .form-layout > *, .detail-grid > * { min-width:0; }
input, select, textarea { min-width:0; max-width:100%; }
.btn { min-height:49px; line-height:1.35; white-space:normal; text-align:center; }
.priority-options label { min-height:49px; }
.status-pill { line-height:1.25; }
.order-row { flex-wrap:wrap; }
.order-date { min-width:auto; }
.login-form-card { max-width:100%; }
.input-icon { height:auto; min-height:55px; }
.signature-canvas { touch-action:none; }
.mobile-bottom-nav button { line-height:1.25; }
@media (max-width:1150px) {
  .sidebar { width:268px; }
  .app-main { margin-left:268px; }
  .page-container { padding-left:24px; padding-right:24px; }
}
@media (max-width:900px) {
  .sidebar { width:255px; }
  .app-main { margin-left:255px; }
  .topbar { min-height:76px; }
}
@media (max-width:720px) {
  .sidebar { left:-300px; width:296px; }
  .sidebar-open { left:0; }
  .app-main { margin-left:0; }
  .page-container { padding:25px 16px 125px; }
  .topbar { min-height:69px; }
  .topbar-left { flex:1; }
  .topbar-right { flex-shrink:0; }
  .welcome-banner { min-height:246px; }
  .welcome-copy { max-width:78%; }
  .welcome-banner p { max-width:100%; }
  .stats-grid { gap:10px; }
  .stat-card { min-height:162px; }
  .stat-number { line-height:1.2; }
  .stat-label { line-height:1.35; }
  .stat-bottom { line-height:1.35; }
  .form-card-head { gap:10px; }
  .btn { min-height:52px; }
  .order-main { min-width:calc(100% - 55px); }
  .priority-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mobile-bottom-nav { padding:9px 6px max(12px,env(safe-area-inset-bottom)); }
  .mobile-bottom-nav button { gap:5px; min-width:0; overflow-wrap:anywhere; }
  .floating-add { bottom:105px; }
  .photo-actions { align-items:stretch; }
  .photo-actions label.btn { flex:1; }
}
@media (max-width:380px) {
  .stats-grid { grid-template-columns:1fr 1fr; }
  .stat-card { padding:11px; }
  .welcome-copy { max-width:90%; }
  .topbar { padding-left:12px; padding-right:12px; }
  .order-row .status-pill { margin-left:0; }
}
