/* Evolução do Pedrinho · v57
   Final mobile parity layer. This file is intentionally loaded last so legacy
   module styles cannot change the visual language at the phone breakpoint. */

@media (max-width:720px){
  html[data-theme="dark"]{
    --mobile-page:#09090a;
    --mobile-surface:#151417;
    --mobile-raised:rgba(16,15,18,.97);
    --mobile-input:rgba(255,248,248,.045);
    --mobile-border:rgba(255,244,244,.10);
    --mobile-text:#f5f1f0;
    --mobile-secondary:#c8bfbd;
    --mobile-muted:#9c9291;
  }
  html[data-theme="light"]{
    --mobile-page:#f2efeb;
    --mobile-surface:#f8f5f1;
    --mobile-raised:rgba(255,253,250,.97);
    --mobile-input:rgba(255,255,255,.66);
    --mobile-border:rgba(75,59,57,.13);
    --mobile-text:#282223;
    --mobile-secondary:#51494a;
    --mobile-muted:#726869;
  }

  body{
    padding-bottom:calc(32px + env(safe-area-inset-bottom))!important;
    background:var(--mobile-page)!important;
    color:var(--mobile-text)!important;
  }
  html[data-theme="dark"] body{
    background:
      radial-gradient(ellipse 58% 38% at 88% -8%,rgba(177,37,54,.23),transparent 70%),
      radial-gradient(ellipse 48% 34% at -10% 38%,rgba(105,24,37,.13),transparent 72%),
      linear-gradient(180deg,#0d0c0e 0,#09090a 44%,#080809 100%)!important;
  }
  html[data-theme="light"] body{
    background:
      radial-gradient(ellipse 58% 38% at 88% -8%,rgba(189,53,68,.13),transparent 70%),
      radial-gradient(ellipse 48% 34% at -10% 38%,rgba(128,92,84,.10),transparent 72%),
      linear-gradient(180deg,#f8f5f1 0,#f2efeb 52%,#efebe6 100%)!important;
  }

  /* The same surface hierarchy is used by the desktop system. */
  :is(.app-header,.patient-nav,.card,.history-workspace,.documents-hero,.document-builder-card,.document-preview-card,.document-patient-identity,.measurement-trend-card,.calculator-card,.productivity-item,.archived-bed-card,.score-context-panel,.calculator-library,.experience-dashboard,.visit-fields){
    border:1px solid var(--mobile-border)!important;
    border-radius:16px!important;
    background:var(--mobile-surface)!important;
    color:var(--mobile-text)!important;
    box-shadow:var(--glass-shadow)!important;
  }
  :is(.workspace-navigation,.floating-buttons,.modal-content,.command-palette-panel,.confirmation-card,.add-bed-card,.session-panel,.bedside-mobile-nav,.visit-header,.visit-step-nav,.visit-footer){
    border:1px solid var(--mobile-border)!important;
    background:var(--mobile-raised)!important;
    color:var(--mobile-text)!important;
    box-shadow:var(--glass-shadow-elevated)!important;
  }
  :is(input,select,textarea,.search-scores,.document-preview-text,.command-palette-search input,.task-form,.history-capture-row,.measurement-form,.measurement-import-panel,.document-config-block,.experience-settings,.quick-fill-card,.task-item,.history-record,.archive-detail,.command-item,.document-type,.document-section-chip span,.measurement-categorical-item){
    border:1px solid var(--mobile-border)!important;
    background:var(--mobile-input)!important;
    color:var(--mobile-text)!important;
    box-shadow:inset 0 1px 0 var(--glass-specular)!important;
  }
  :is(input,select,textarea):focus{
    border-color:var(--primary)!important;
    background:var(--mobile-raised)!important;
    box-shadow:0 0 0 3px var(--primary-glow)!important;
  }
  :is(input,select,textarea)::placeholder{color:var(--mobile-muted)!important;opacity:1}

  /* Secondary controls share one quiet treatment in both themes. */
  :is(.workspace-primary-btn,.main-tab-btn,.bed-btn,.btn-visit-mode,.btn-day-tasks,.btn-new-evolution,.btn-remove-bed,.btn-clear-card,.task-filter,.trend-category,.trend-view-button,.measurement-date-chip,.score-category-tab,.specialty-chip,.document-type,.history-action,.history-filter-clear,.quick-fill-actions button,.productivity-secondary,.productivity-item-actions button,.experience-density,.experience-reset,.document-actions button,.calculator-actions button,.lab-report-action,.exam-ai-toggle,.exam-pdf-select,.exam-pdf-remove,.visit-close,.visit-back,.visit-bed-navigation button){
    min-height:44px!important;
    border:1px solid var(--mobile-border)!important;
    border-radius:8px!important;
    background:var(--mobile-input)!important;
    color:var(--mobile-secondary)!important;
    box-shadow:none!important;
  }
  :is(.workspace-primary-btn,.main-tab-btn,.bed-btn,.task-filter,.trend-category,.trend-view-button,.measurement-date-chip,.score-category-tab,.specialty-chip,.document-type,.experience-density).active,
  .document-section-chip input:checked+span{
    border-color:var(--border-active)!important;
    background:var(--primary-glow)!important;
    color:var(--primary)!important;
    box-shadow:inset 3px 0 0 var(--primary)!important;
  }
  :is(.main-tab-btn.active,.workspace-primary-btn.active) svg{color:var(--primary)!important}
  .bed-btn.active{
    border-color:var(--border-active)!important;
    background:linear-gradient(145deg,var(--primary-glow-strong),var(--mobile-input))!important;
    color:var(--mobile-text)!important;
  }

  :is(.btn-magic,.btn-copy,.measurement-save-button,.document-generate,.document-action-copy,.visit-next,.visit-completion-actions .primary,.task-submit,.btn-task-add,.access-submit,.productivity-primary,.add-bed-submit,.history-save-primary){
    min-height:44px!important;
    border:1px solid var(--primary)!important;
    border-radius:8px!important;
    background:var(--primary)!important;
    color:var(--on-accent)!important;
    box-shadow:0 10px 26px rgba(126,25,37,.18)!important;
  }
  :is(.btn-magic,.btn-copy,.measurement-save-button,.document-generate,.document-action-copy,.visit-next,.visit-completion-actions .primary,.task-submit,.btn-task-add,.access-submit,.productivity-primary,.add-bed-submit,.history-save-primary):hover{background:var(--primary-hover)!important}

  /* Keep phone actions named and scannable; icons remain the leading cue. */
  .patient-nav-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .patient-nav-actions .patient-actions-label{grid-column:1/-1!important;display:block!important;margin:0!important}
  .patient-nav-actions :is(.btn-visit-mode,.btn-day-tasks,.btn-new-evolution,.btn-remove-bed){
    width:100%!important;
    min-width:0!important;
    padding:0 10px!important;
    justify-content:center!important;
  }
  .patient-nav-actions :is(.btn-visit-mode,.btn-day-tasks,.btn-new-evolution,.btn-remove-bed)>span{
    position:static!important;
    width:auto!important;
    height:auto!important;
    overflow:visible!important;
    clip:auto!important;
    white-space:nowrap!important;
  }
  .patient-nav-actions :is(.btn-visit-mode,.btn-day-tasks,.btn-new-evolution,.btn-remove-bed)>svg{width:16px!important;height:16px!important;flex:0 0 auto}

  .workspace-primary{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .workspace-primary-btn{padding-inline:4px!important}
  .workspace-navigation .main-tabs{display:flex!important;grid-template-columns:none!important;overflow-x:auto!important}
  .workspace-navigation .main-tab-btn{flex:0 0 min(46%,168px)!important;min-width:0!important}
  .floating-buttons{margin-top:16px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .floating-buttons .btn-action{min-height:44px!important}
  .header-theme-toggle{background:var(--mobile-input)!important;color:var(--mobile-secondary)!important}
  .exam-ai-controls{grid-template-columns:minmax(0,1fr)!important}
  .exam-ai-usage{width:100%;min-height:32px;justify-content:center;white-space:normal;text-align:center}
  .exam-pdf-select{width:100%!important;min-height:56px!important;justify-content:flex-start!important}
}

@media(max-width:390px){
  .workspace-primary-btn{font-size:11px!important}
}

@media(max-width:349px){
  .patient-nav-actions{grid-template-columns:minmax(0,1fr)!important}
}

/* Galaxy S21 Ultra CSS viewport: 360×800. Preserve four-pixel breathing room
   for the app shell and remove repeated backdrop paints from long form pages. */
@media (min-width:350px) and (max-width:370px){
  body{padding-inline:8px!important;overscroll-behavior-x:none}
  :is(.app-header,.patient-nav,.card,.history-workspace,.documents-hero,.document-builder-card,.document-preview-card,.document-patient-identity,.measurement-trend-card,.calculator-card,.productivity-item,.archived-bed-card,.score-context-panel,.calculator-library,.experience-dashboard,.visit-fields){
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
  :is(.workspace-navigation,.floating-buttons,.modal-content,.command-palette-panel,.confirmation-card,.add-bed-card,.session-panel,.bedside-mobile-nav,.visit-header,.visit-step-nav,.visit-footer){
    -webkit-backdrop-filter:blur(8px)!important;
    backdrop-filter:blur(8px)!important;
  }
  .app-header{margin-top:6px!important}
  .workspace-navigation{top:4px!important}
}

@media(prefers-reduced-transparency:reduce){
  :is(.app-header,.patient-nav,.card,.history-workspace,.documents-hero,.document-builder-card,.document-preview-card,.document-patient-identity,.measurement-trend-card,.calculator-card,.productivity-item,.archived-bed-card,.score-context-panel,.calculator-library,.experience-dashboard,.visit-fields){background:var(--mobile-surface)!important}
  :is(.workspace-navigation,.floating-buttons,.modal-content,.command-palette-panel,.confirmation-card,.add-bed-card,.session-panel,.bedside-mobile-nav,.visit-header,.visit-step-nav,.visit-footer){background:var(--mobile-raised)!important}
}

/* v60 · Empty-bed gates, destructive actions, compact archive and mobile-safe
   controls. This layer stays last so the incumbent visual system remains the
   source of color, type and spacing decisions. */
.no-active-bed .tab-content.bed-gated{
  opacity:1!important;
  pointer-events:auto!important;
  user-select:auto!important;
}
.no-active-bed .tab-content.bed-gated > :not(.bed-required-state){display:none!important}
.bed-required-state[hidden]{display:none!important}
.no-active-bed .tab-content.bed-gated > .bed-required-state:not([hidden]){
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  min-height:168px;
  padding:24px;
  border:1px solid var(--border-base);
  border-radius:var(--r-surface);
  background:var(--glass);
  color:var(--text-main);
  box-shadow:var(--shadow-surface);
}
.bed-empty-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--border-active);border-radius:12px;background:var(--primary-glow);color:var(--primary)}
.bed-empty-icon svg{width:21px;height:21px}
.bed-required-state strong{display:block;color:var(--text-main);font-size:15px;line-height:1.3}
.bed-required-state p{margin:4px 0 0;color:var(--text-sec);font-size:13px;line-height:1.5}
.bed-required-state button{min-height:44px;padding:0 14px;border:1px solid var(--primary);border-radius:8px;background:var(--primary);color:var(--on-accent);font-size:12px;font-weight:700}
.bed-required-state button:hover{background:var(--primary-hover)}
.btn-delete-bed{min-height:44px;padding:0 12px;border:1px solid color-mix(in srgb,var(--danger) 42%,var(--border-base));border-radius:8px;background:transparent;color:var(--danger);font-size:12px;font-weight:650;display:inline-flex;align-items:center;justify-content:center;gap:7px}
.btn-delete-bed:hover{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent)}
.btn-delete-bed svg{width:16px;height:16px}
.archive-delete-all{min-height:44px;padding:0 13px;border:1px solid color-mix(in srgb,var(--danger) 44%,var(--border-base));border-radius:8px;background:color-mix(in srgb,var(--danger) 7%,transparent);color:var(--danger);font-size:12px;font-weight:700;white-space:nowrap}
.archive-delete-all:hover{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 13%,transparent)}
.archive-toolbar{grid-template-columns:minmax(220px,1.35fr) minmax(160px,.8fr) minmax(150px,.65fr) auto auto!important}
.archived-bed-card{padding:12px!important;border-radius:10px!important}
.archived-bed-head{padding-bottom:9px!important}
.archived-bed-identity h5{font-size:15px!important}
.archived-bed-identity p{margin-top:3px!important;line-height:1.35!important}
.archive-detail{margin-top:7px!important}
.archive-detail summary{min-height:40px!important}
.archive-copy{min-height:40px!important;margin:0 10px 10px!important}
.measurement-library-controls{display:grid;gap:12px;margin-top:2px;padding:12px 0 0;border-top:1px solid var(--border-subtle)}
.measurement-library-controls .trend-category-chips{display:flex;gap:6px;overflow-x:auto;padding:2px 1px 3px;scrollbar-width:thin}
.measurement-library-controls .trend-category{flex:0 0 auto}
.measurement-library-controls .trend-view-options{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.measurement-library-controls .trend-view-switch{display:flex;gap:4px}
.measurement-library-controls label{margin:0;font-size:12px!important}
.measurement-library-controls select{min-height:40px!important}
.measurement-library-controls .trend-hide-toggle{display:inline-flex;align-items:center;gap:7px;margin-left:auto}
.measurement-library-controls .trend-hide-toggle input{min-height:18px;width:18px}
.confirmation-phrase{display:grid;gap:6px;margin:16px 0 2px;color:var(--text-sec);font-size:12px!important}
.confirmation-phrase strong{color:var(--text-main)}
.confirmation-phrase input{width:100%;letter-spacing:.06em}
:is(input,select,textarea)::placeholder{color:var(--text-placeholder)!important;opacity:1!important}
html[data-theme="dark"]{--text-placeholder:#a69b9d}
html[data-theme="light"]{--text-placeholder:#6c6062}
html[data-theme="dark"] :is(input,select,textarea):focus::placeholder{color:#b9adaf!important}
html[data-theme="light"] :is(input,select,textarea):focus::placeholder{color:#7e7173!important}
.productivity-item-copy p{font-size:12px!important;line-height:1.45!important}
.productivity-item-actions button{min-height:44px!important}
.no-bed-state p{font-size:13px!important}

@media(max-width:720px){
  .patient-nav-actions :is(.btn-visit-mode,.btn-day-tasks,.btn-new-evolution,.btn-remove-bed,.btn-delete-bed){width:100%!important;min-width:0!important;padding:0 9px!important}
  .patient-nav-actions :is(.btn-visit-mode,.btn-day-tasks,.btn-new-evolution,.btn-remove-bed,.btn-delete-bed)>span{display:inline!important;position:static!important;width:auto!important;height:auto!important;overflow:visible!important;clip:auto!important;white-space:normal!important;font-size:12px!important}
  .patient-nav-actions :is(.btn-visit-mode,.btn-day-tasks,.btn-new-evolution,.btn-remove-bed,.btn-delete-bed)>svg{width:16px!important;height:16px!important}
  .archive-toolbar{grid-template-columns:1fr!important}
  .archive-delete-all{width:100%}
  .no-active-bed .tab-content.bed-gated > .bed-required-state:not([hidden]){grid-template-columns:auto minmax(0,1fr);padding:20px;gap:12px}
  .bed-required-state button{grid-column:1/-1;width:100%}
  .measurement-library-controls .trend-hide-toggle{margin-left:0}
  .measurement-library-controls .trend-view-options{align-items:stretch}
  .measurement-library-controls .trend-view-switch{flex:1}
  .measurement-library-controls .trend-view-button{flex:1}
}

@media(max-width:720px){
  .measurement-trend-card:is(.reference-high,.reference-low,.reference-altered){
    border-color:color-mix(in srgb,var(--danger) 62%,var(--mobile-border))!important;
    background:color-mix(in srgb,var(--danger) 15%,var(--mobile-surface))!important;
    box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger) 22%,transparent),var(--glass-shadow)!important;
  }
  .measurement-trend-card.reference-low{border-color:#d88736!important;background:color-mix(in srgb,#d88736 14%,var(--mobile-surface))!important}
  .trend-reference-callout:is(.reference-high,.reference-low,.reference-altered){border-color:color-mix(in srgb,var(--danger) 56%,var(--mobile-border))!important;background:color-mix(in srgb,var(--danger) 12%,var(--mobile-input))!important}
  .trend-point.is-abnormal{fill:var(--danger)!important;stroke:var(--on-accent)!important}
  .trend-point.is-low{fill:#d88736!important;stroke:#fff0dc!important}
}
