/* ORCA EBT — adaptação responsiva para tablets Android e Chrome */
:root{--app-viewport-width:100vw;--app-viewport-height:100vh}
html{min-width:0;overflow-x:hidden;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{min-width:0;max-width:100%;overflow-x:hidden}
img,svg,canvas{max-width:100%;height:auto}
fieldset,form,section,article,details,.panel,.shell{min-width:0}
input,select,textarea,button{max-width:100%}
textarea{overflow-wrap:anywhere}

@media (pointer:coarse){
  input,select,textarea{font-size:16px;line-height:1.3}
  .btn,.tab,.icon-btn,summary{min-height:46px}
  .icon-btn{min-width:42px}
  .grade-option span,.tem-outcome-grade-options span{min-height:46px}
  .ob-status-options span{min-height:44px;min-width:46px}
  .profile-choice,.tem-ob-list label,.debrief-choice{min-height:44px}
}

/* Tablets de 8 a 11 polegadas em orientação horizontal. */
@media (min-width:781px) and (max-width:1100px){
  .shell{padding:24px 18px 70px}
  .hero{align-items:flex-start;gap:18px}
  .hero h1{font-size:32px}
  .panel{padding:22px 18px}
  .section-heading{align-items:flex-start}
  .session-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pilot-name-field,.tri-tre-field{grid-column:span 1}
  .profile-competency-selector,.tem-competencies{grid-template-columns:repeat(2,minmax(0,1fr))}
  .venn-card-layout{grid-template-columns:minmax(165px,.75fr) minmax(260px,1.25fr)}
  .venn-card-layout>.venn-suggestion{grid-column:1/-1}
  .pilot-columns{grid-template-columns:minmax(48px,1fr) minmax(48px,1fr)}
  .competency-body{grid-template-columns:1fr}
  .result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .result-grid>*:last-child:nth-child(odd){grid-column:1/-1}
  dialog{width:min(94vw,920px);max-height:min(94dvh,var(--app-viewport-height))}
}

/* Orientação vertical ou escala de ecrã aumentada. */
@media (max-width:900px), (orientation:portrait) and (max-width:1100px){
  .topbar{align-items:flex-start;flex-wrap:wrap;padding:10px 14px;gap:8px}
  .brand{min-height:44px}
  .top-actions{order:2;flex:1 0 100%;justify-content:flex-start;overflow-x:auto;padding-bottom:2px}
  .topbar .btn{flex:0 0 auto}
  .topbar #newSessionBtn{display:inline-flex!important}
  .section-tabs{top:var(--android-header-height,116px);overflow-x:auto;overscroll-behavior-x:contain}
  .section-tabs::-webkit-scrollbar{display:none}
  .tab{flex:0 0 auto;white-space:nowrap}
  .hero{display:block}
  .orca-flow{margin-top:16px;max-width:100%;overflow-x:auto}
  .session-data-grid,.form-grid,.summary-fields{grid-template-columns:1fr}
  .pilot-name-field,.tri-tre-field,.wide{grid-column:auto}
  .profile-competency-selector,.tem-competencies{grid-template-columns:1fr}
  .tem-card-head{grid-template-columns:auto minmax(0,1fr) auto auto}
  .tem-target-count{grid-column:2/-1;justify-self:start}
  .ob-status-row{grid-template-columns:1fr}
  .ob-status-options{grid-template-columns:repeat(4,minmax(0,1fr))}
  .ob-status-options span{min-width:0;width:100%}
  .crew-role-grid,.pilot-columns{grid-template-columns:1fr}
  .pilot-panel:not([open]){width:100%;min-width:0}
  .pilot-panel:not([open])>summary{height:auto;writing-mode:horizontal-tb;justify-content:flex-start}
  .pilot-panel:not([open])>summary span{flex-direction:row}
  .pilot-panel:not([open])>summary em{margin-left:auto}
  .competency-head{grid-template-columns:46px minmax(0,1fr) auto 18px}
  .evidence-count{display:none}
  .competency-body,.venn-card-layout,.session-global-venn .venn-card-layout{grid-template-columns:1fr!important}
  .venn-visual,.competency-radar-visual{justify-self:center}
  .venn-metrics,.session-global-venn .venn-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .venn-suggestion{grid-column:1/-1}
  .result-grid{grid-template-columns:1fr}
  .result-grid>*{grid-column:auto!important}
  .profile-save-summary,.profile-preview-grid,.profile-preview-tems,.evidence-info-grid{grid-template-columns:1fr}
  dialog{width:calc(100vw - 18px);max-width:none;max-height:min(96dvh,var(--app-viewport-height));margin:auto}
  .dialog-head,#observationForm>.form-grid,.ob-fieldset,.dialog-actions,.profile-dialog-content,.tem-dialog-fields{padding-left:16px;padding-right:16px}
}

@media (max-width:620px){
  .top-actions{flex-wrap:wrap;overflow-x:visible}
  .topbar .btn{padding:8px 9px;font-size:10px}
  .shell{padding:18px 10px 56px}
  .panel{padding:17px 12px;border-radius:10px}
  .section-heading{display:grid;gap:8px}
  .hero h1{font-size:27px}
  .topbar .theme-label{display:none}
  .network-status{display:none}
  .venn-metrics,.session-global-venn .venn-metrics{grid-template-columns:1fr}
  .grade-options{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tem-outcome-grade-options{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ob-status-options{grid-template-columns:repeat(2,minmax(0,1fr))}
}

html.keyboard-visible dialog[open]{max-height:var(--app-viewport-height);margin-top:0;margin-bottom:0}
html.keyboard-visible .dialog-actions{position:sticky;bottom:0}

@media print{.topbar{display:none!important}}
