* {
  box-sizing:border-box
}

body {
  margin:0
}

header {
  display:flex;
  justify-content:space-between;
  align-items:center;
  background:#fff
}

.office-dashboard {
  display:grid
}

.activity-cards {
  display:grid
}

.agent-card {
  display:grid;
  min-width:0;
  overflow-wrap:anywhere
}

.agent-card h3,.agent-mission,.agent-detail {
  margin:0
}

.agent-role {
  display:block;
  margin-top:2px
}

.agent-mission {
  font-weight:700
}

.agent-progress {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  white-space:nowrap;
  font-variant-numeric:tabular-nums
}

.agent-progress progress {
  width:100%;
  min-width:0
}

.summary-heading {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:8px
}

.summary-date {
  margin:4px 0 0;
  color:#718078
}

.data-badge {
  align-self:flex-start;
  flex:none;
  border-radius:20px;
  font-weight:700
}

.suggestion-card strong {
  display:block
}

.suggestion-card p {
  margin:3px 0 0;
  color:#65736a
}

.header-actions button,.name-actions button {
  font:inherit;
  font-size:13px;
  color:#fff;
  background:#234f40;
  border:0;
  cursor:pointer
}

.name-actions button {
  border-radius:7px;
  padding:8px 12px
}

#names-dialog {
  width: min(420px, calc(100% - 32px));
  padding: 22px;
  border: 0;
  border-radius: 14px;
  color: inherit;
}

#names-dialog::backdrop {
  background: #18282085;
}

#names-dialog h2 {
  margin: 0 0 7px;
}

#names-dialog p {
  font-size:0.8125rem;
  color: #526259;
}

#name-fields {
  display: grid;
  gap: 10px;
}

#name-fields label {
  display: grid;
  gap: 3px;
  font-size:0.8125rem;
  font-weight: bold;
}

#name-fields input {
  width: 100%;
  padding: 8px;
  border: 1px solid #8c9c92;
  border-radius: 5px;
  font: inherit;
}

.name-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 12px;
}

.name-actions button {
  margin: 0 0 0 8px;
}

#cancel-names {
  background: #e9eeea;
  color: #26382e;
}

#name-feedback {
  margin: 8px 1.8182% 0;
  font-size:0.8125rem;
}

#name-feedback:empty {
  display: none;
}

:root {
  --ink:#20332d;
  --muted:#6f7d76;
  --line:#e4e8e2;
  --forest:#234f40;
  --amber:#d79c45
}

html {
  font:16px Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  background:#f0f2ed
}

body {
  min-height:100vh;
  background:#f0f2ed;
  color:var(--ink)
}

header {
  height:72px;
  padding:0 clamp(20px,4vw,64px);
  border-bottom:1px solid #e7eae5;
  box-shadow:0 2px 10px #213b2c08;
  position:relative;
  z-index:3
}

.brand {
  display:flex;
  align-items:center;
  gap:12px
}

.brand-mark {
  width:38px;
  height:38px;
  border-radius:12px;
  background:var(--forest);
  display:grid;
  place-items:center;
  color:#fff;
  font-size:19px;
  box-shadow:0 4px 12px #234f402b
}

.brand-copy {
  display:grid;
  gap:1px
}

.brand-copy strong {
  font-size:15px;
  letter-spacing:.045em
}

.brand-copy small {
  font-size:12px;
  color:var(--muted)
}

.header-actions {
  display:flex;
  align-items:center;
  gap:12px
}

.concept-pill {
  display:flex;
  align-items:center;
  gap:7px;
  border:1px solid #e9d9b7;
  border-radius:999px;
  padding:7px 11px;
  background:#fff9ed;
  color:#80623b;
  font-size:11px;
  font-weight:750;
  letter-spacing:.04em
}

.concept-pill i {
  width:7px;
  height:7px;
  border-radius:50%;
  background:#d69a42;
  box-shadow:0 0 0 3px #d69a4222
}

.header-actions button {
  margin:0;
  padding:10px 14px;
  border-radius:9px;
  background:var(--forest);
  font-weight:700
}

main {
  width:min(1660px,calc(100% - clamp(32px,6vw,120px)));
  margin:0 auto;
  padding:28px 0 34px
}

.welcome {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:24px;
  margin:0 0 19px
}

.welcome-kicker {
  font-size:11px;
  font-weight:800;
  letter-spacing:.11em;
  color:#698076;
  text-transform:uppercase
}

.welcome h1 {
  margin:5px 0 4px;
  font-size:clamp(25px,2.2vw,34px);
  line-height:1.1;
  letter-spacing:-.035em;
  color:#1e332b
}

.welcome p {
  margin:0;
  color:#728078;
  font-size:14px
}

.workspace-stamp {
  color:#78847e;
  font-size:12px;
  white-space:nowrap
}

.office-dashboard {
  grid-template-columns:minmax(0,1.72fr) minmax(340px,.9fr);
  gap:18px;
  align-items:stretch
}

.office-column {
  padding:10px;
  background:#fff;
  border:1px solid #e1e6df;
  border-radius:18px;
  box-shadow:0 10px 30px #283b2e0c;
  display:flex;
  flex-direction:column;
  min-width:0
}

.office-column:before {
  content:"VISTA DE LA OFICINA";
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
  color:#85928b;
  padding:3px 7px 10px
}

.office-column #game {
  border-radius:12px 12px 0 0;
  overflow:hidden;
  clip-path:none;
  background:#d9dfd9
}

.office-column #game canvas {
  width:100%;
  height:auto;
  image-rendering:pixelated
}

.activity-deck {
  margin:0;
  padding:14px 8px 7px;
  background:#fff;
  border-radius:0 0 12px 12px
}

.activity-deck h2 {
  margin:0 0 11px 2px;
  color:#53665c;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.1em
}

.activity-cards {
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
  overflow:visible;
  padding:0
}

.agent-card {
  grid-template-rows:auto auto 1fr auto;
  gap:6px;
  padding:10px 9px;
  border:1px solid #e7eae4;
  border-top:3px solid var(--agent-color);
  border-radius:11px;
  background:#fff;
  box-shadow:0 3px 10px #213b2c08;
  min-height:120px
}

.agent-card h3 {
  font-size:13px;
  letter-spacing:-.01em
}

.agent-role {
  font-size:10px;
  color:#7b8881
}

.agent-mission {
  font-size:11px;
  color:#334b3f
}

.agent-detail {
  font-size:10px;
  line-height:1.4;
  color:#718078
}

.agent-progress {
  gap:6px;
  font-size:10px;
  color:#65736b
}

.agent-progress progress {
  height:5px;
  accent-color:var(--agent-color)
}

.agent-state {
  display:inline-flex;
  margin-top:6px;
  padding:3px 6px;
  border-radius:99px;
  background:#edf1ed;
  color:#6d7a72;
  font-size:8px;
  font-weight:800;
  letter-spacing:.07em
}

.agent-card[data-state="working"] .agent-state {
  background:#e3f2ea;
  color:#2f7153
}

.agent-card[data-state="waiting"] .agent-state {
  background:#fbf1df;
  color:#916a2f
}

.agent-card[data-state="working"] {
  box-shadow:0 0 0 1px #6fa78330,0 5px 13px #2145310d
}

.summary-panel {
  height:auto;
  max-height:none;
  overflow:visible;
  padding:0;
  background:#fff;
  border:1px solid #e1e6df;
  border-radius:18px;
  box-shadow:0 10px 30px #283b2e0c;
  display:flex;
  flex-direction:column
}

.summary-heading {
  padding:20px 21px 15px;
  margin:0;
  border-bottom:1px solid var(--line)
}

.summary-heading h2 {
  margin:0;
  font-size:18px;
  letter-spacing:-.02em
}

.summary-date {
  font-size:12px
}

.data-badge {
  padding:6px 8px;
  background:#fff3dd;
  color:#8b652f;
  font-size:9px;
  letter-spacing:.06em
}

.summary-section {
  padding:15px 21px;
  border-top:0;
  border-bottom:1px solid var(--line)
}

.summary-section h2 {
  margin:0 0 11px;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.07em;
  color:#65756c
}

.mission-hero {
  padding:14px;
  border:1px solid #dfe9df;
  border-radius:13px;
  background:linear-gradient(140deg,#f4f8f2,#fbfaf5)
}

.mission-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px
}

.mission-type {
  font-size:9px;
  font-weight:800;
  letter-spacing:.09em;
  color:#63776b
}

.demo-tag {
  padding:4px 7px;
  border-radius:6px;
  background:#fff1d8;
  color:#91672b;
  font-size:9px;
  font-weight:800
}

.mission-hero h3 {
  margin:11px 0 4px;
  font-size:19px;
  letter-spacing:-.025em
}

.mission-hero p {
  margin:0;
  color:#66776d;
  font-size:12px;
  line-height:1.5
}

.mission-owner {
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:13px;
  padding-top:11px;
  border-top:1px solid #e2e8df;
  font-size:11px;
  font-weight:700
}

.avatar-dot {
  width:25px;
  height:25px;
  border-radius:8px;
  background:#e1efe6;
  color:#397152;
  display:grid;
  place-items:center;
  font-size:11px
}

.mission-status {
  margin-left:auto;
  color:#39805c;
  font-size:10px
}

.mission-progress {
  margin-top:13px
}

.progress-caption {
  display:flex;
  justify-content:space-between;
  margin-bottom:6px;
  color:#69776e;
  font-size:10px
}

.mission-progress progress {
  width:100%;
  height:7px;
  accent-color:#438763
}

.step-list {
  display:grid
}

.step {
  position:relative;
  display:grid;
  grid-template-columns:23px minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
  padding:8px 0
}

.step:not(:last-child):after {
  content:"";
  position:absolute;
  left:11px;
  top:31px;
  bottom:-6px;
  width:1px;
  background:#dfe6df
}

.step-icon {
  width:23px;
  height:23px;
  border:1px solid #dfe5de;
  border-radius:50%;
  background:#fff;
  color:#7d8b82;
  display:grid;
  place-items:center;
  font-size:10px;
  z-index:1
}

.step.done .step-icon,.step.active .step-icon {
  background:#e7f2e9;
  border-color:#d6e8da;
  color:#3d8057
}

.step.active .step-icon {
  box-shadow:0 0 0 3px #e6f1e9
}

.step strong {
  display:block;
  font-size:11px
}

.step small {
  display:block;
  margin-top:2px;
  font-size:10px;
  color:#818b84
}

.step>span:last-child {
  font-size:9px;
  color:#828e85
}

.handoff {
  padding:13px;
  border:1px solid #e6e8e1;
  border-radius:12px;
  background:#fafaf7
}

.handoff-flow {
  display:flex;
  align-items:center;
  gap:9px
}

.handoff-person {
  flex:none;
  width:33px;
  height:33px;
  border-radius:10px;
  background:#edf1ec;
  display:grid;
  place-items:center;
  color:#65776c;
  font-size:11px;
  font-weight:800
}

.handoff-arrow {
  color:#b0b8b1
}

.handoff-copy strong {
  display:block;
  font-size:11px
}

.handoff-copy small {
  display:block;
  margin-top:3px;
  color:#77837b;
  font-size:10px;
  line-height:1.4
}

.suggestion-card {
  margin:0 21px 17px;
  padding:13px 14px;
  border:1px solid #e9ddc3;
  border-left:3px solid #c69a54;
  border-radius:11px;
  background:#fffaf0
}

.suggestion-card strong {
  font-size:11px;
  line-height:1.4
}

.suggestion-card p {
  font-size:10px;
  line-height:1.45
}

.suggestion-status {
  font-size:9px;
  color:#88754f
}

#name-feedback {
  margin:8px 1%;
  font-size:12px;
  color:#627268
}

details.panel,p[style*="font-size:0.75rem"] {
  display:none!important
}

@media(max-width:1050px) {
  main {
    width:calc(100% - 32px)
  }
  .office-dashboard {
    grid-template-columns:minmax(0,1.5fr) minmax(300px,.9fr)
  }
  .activity-cards {
    gap:5px
  }
  .agent-card {
    padding:8px 6px
  }
  .agent-card h3 {
    font-size:11px
  }
  .agent-role,.agent-mission,.agent-detail,.agent-progress {
    font-size:9px
  }
  .summary-heading,.summary-section {
    padding-left:15px;
    padding-right:15px
  }
  .suggestion-card {
    margin-left:15px;
    margin-right:15px
  }
}

@media(max-width:760px) {
  header {
    height:62px;
    padding:0 16px
  }
  .concept-pill {
    font-size:9px;
    padding:6px 8px
  }
  .header-actions button {
    padding:8px 10px;
    font-size:11px
  }
  main {
    width:calc(100% - 24px);
    padding:19px 0
  }
  .welcome {
    align-items:flex-start;
    flex-direction:column;
    gap:7px;
    margin-bottom:14px
  }
  .welcome h1 {
    font-size:25px
  }
  .workspace-stamp {
    display:none
  }
  .office-dashboard {
    grid-template-columns:1fr
  }
  .office-column {
    padding:7px;
    border-radius:14px
  }
  .activity-deck {
    padding:11px 4px 4px
  }
  .agent-card {
    min-height:105px;
    padding:7px 5px;
    gap:4px
  }
  .agent-card h3 {
    font-size:10px
  }
  .agent-role,.agent-detail {
    font-size:8px
  }
  .agent-mission {
    font-size:9px
  }
  .agent-progress {
    font-size:8px;
    gap:3px
  }
  .agent-progress progress {
    height:4px
  }
  .agent-state {
    font-size:7px;
    padding:2px 4px
  }
  .summary-heading {
    padding:15px
  }
  .summary-section {
    padding:12px 15px
  }
  .suggestion-card {
    margin:0 15px 15px
  }
}

@media(max-width:420px) {
  .brand-copy strong {
    font-size:12px
  }
  .brand-mark {
    width:32px;
    height:32px
  }
  .header-actions {
    gap:6px
  }
  .header-actions button {
    font-size:10px
  }
  .activity-cards {
    gap:3px
  }
  .agent-card {
    padding:6px 3px
  }
  .agent-card h3 {
    font-size:9px
  }
  .agent-role {
    font-size:7px
  }
  .welcome h1 {
    font-size:22px
  }
}

/* Tipografía de producto: SF Pro en Apple; Inter/Aptos/Segoe UI como alternativas. */
html {
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Helvetica Neue",Inter,Aptos,"Segoe UI",sans-serif;
  font-synthesis:none;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  letter-spacing:-.01em
}

body,button,input {
  font-family:inherit
}

small {
  line-height:1.35
}

button {
  letter-spacing:-.01em
}

.welcome h1,.summary-heading h2,.mission-hero h3,.agent-card h3 {
  letter-spacing:-.035em
}

.summary-panel {
  height:var(--office-height,auto);
  max-height:var(--office-height,none);
  min-height:0;
  overflow:hidden;
  container-type:size
}

.summary-panel>* {
  min-height:0;
  flex-shrink:1
}

.summary-heading {
  flex:0 0 auto
}

.summary-section {
  flex:0 1 auto
}

@container (max-height:780px) {
  .summary-heading {
    padding:13px 17px 10px
  }
  .summary-heading h2 {
    font-size:16px
  }
  .summary-date {
    font-size:11px
  }
  .summary-section {
    padding:10px 17px
  }
  .summary-section h2 {
    font-size:10px;
    margin-bottom:7px
  }
  .mission-hero {
    padding:10px
  }
  .mission-hero h3 {
    font-size:16px;
    margin:7px 0 3px
  }
  .mission-hero p {
    font-size:11px;
    line-height:1.4
  }
  .mission-owner {
    margin-top:8px;
    padding-top:7px;
    font-size:10px
  }
  .avatar-dot {
    width:22px;
    height:22px
  }
  .mission-progress {
    margin-top:8px
  }
  .progress-caption {
    font-size:9px;
    margin-bottom:4px
  }
  .step {
    padding:5px 0;
    grid-template-columns:21px minmax(0,1fr) auto;
    gap:7px
  }
  .step-icon {
    width:21px;
    height:21px
  }
  .step:not(:last-child):after {
    left:10px;
    top:27px
  }
  .step strong {
    font-size:10px
  }
  .step small {
    font-size:9px
  }
  .step>span:last-child {
    font-size:8px
  }
  .handoff {
    padding:8px
  }
  .handoff-flow {
    gap:7px
  }
  .handoff-person {
    width:28px;
    height:28px
  }
  .handoff-copy strong {
    font-size:10px
  }
  .handoff-copy small {
    font-size:9px;
    line-height:1.3
  }
  .suggestion-card {
    margin:0 17px 10px;
    padding:9px 10px
  }
  .suggestion-card strong {
    font-size:10px
  }
  .suggestion-card p {
    font-size:9px;
    line-height:1.35
  }
  .suggestion-status {
    margin-top:4px;
    font-size:8px
  }
}

@container (max-height:620px) or (max-width:310px) {
  .summary-heading {
    padding:9px 13px 7px
  }
  .summary-heading h2 {
    font-size:14px
  }
  .summary-date {
    font-size:9px;
    margin-top:2px
  }
  .data-badge {
    font-size:8px;
    padding:4px 6px
  }
  .summary-section {
    padding:6px 13px
  }
  .summary-section h2 {
    font-size:9px;
    margin-bottom:4px
  }
  .mission-hero {
    padding:7px
  }
  .mission-type,.demo-tag {
    font-size:8px
  }
  .demo-tag {
    padding:3px 5px
  }
  .mission-hero h3 {
    font-size:14px;
    margin:5px 0 2px
  }
  .mission-hero p {
    font-size:9px;
    line-height:1.3
  }
  .mission-owner {
    margin-top:5px;
    padding-top:5px;
    font-size:9px
  }
  .avatar-dot {
    width:19px;
    height:19px
  }
  .mission-progress {
    margin-top:5px
  }
  .progress-caption {
    font-size:8px;
    margin-bottom:2px
  }
  .mission-progress progress {
    height:5px
  }
  .step {
    padding:3px 0;
    grid-template-columns:18px minmax(0,1fr) auto;
    gap:6px
  }
  .step-icon {
    width:18px;
    height:18px;
    font-size:8px
  }
  .step:not(:last-child):after {
    left:8px;
    top:21px
  }
  .step strong {
    font-size:9px
  }
  .step small {
    display:none
  }
  .step>span:last-child {
    font-size:7px
  }
  .handoff {
    padding:6px
  }
  .handoff-flow {
    gap:5px
  }
  .handoff-person {
    width:23px;
    height:23px;
    font-size:9px
  }
  .handoff-copy strong {
    font-size:9px
  }
  .handoff-copy small {
    font-size:8px;
    line-height:1.2
  }
  .suggestion-card {
    margin:0 13px 6px;
    padding:6px 8px
  }
  .suggestion-card strong {
    font-size:9px
  }
  .suggestion-card p {
    font-size:8px;
    line-height:1.25
  }
  .suggestion-status {
    display:none
  }
}

@container (max-height:435px) or (max-width:280px) {
  .summary-section {
    padding-top:4px;
    padding-bottom:4px
  }
  .mission-hero>p {
    display:none
  }
  .mission-hero h3 {
    margin-top:3px
  }
  .mission-owner {
    margin-top:3px;
    padding-top:3px
  }
  .step {
    padding:2px 0
  }
  .handoff-copy small {
    display:none
  }
  .suggestion-card {
    padding:5px 7px
  }
}

@media(max-width:760px) {
  .summary-panel {
    height:auto;
    max-height:none;
    overflow:visible;
    container-type:inline-size
  }
  .summary-panel>* {
    flex-shrink:0
  }
}

.controls {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin:0 3px 10px;
  font-size:12px
}

.controls select,.controls button {
  font:inherit;
  color:#245541;
  background:#f6f8f5;
  border:1px solid #dfe7df;
  border-radius:8px;
  padding:7px 10px;
  cursor:pointer
}

.controls button:disabled {
  opacity:.6;
  cursor:default
}

#agent-status {
  color:#54655b;
  flex-basis:100%
}

dialog {
  width:min(420px,calc(100% - 32px));
  border:1px solid #dfe7df;
  border-radius:14px;
  padding:20px;
  color:#20382e
}

dialog::backdrop {
  background:#182b2470
}

dialog h2 {
  margin:0 0 14px
}

dialog label {
  display:grid;
  gap:4px;
  margin-bottom:12px;
  font-size:14px
}

dialog input,dialog button {
  font:inherit;
  border:1px solid #dfe7df;
  border-radius:7px;
  padding:8px
}

.agenda-actions {
  display:flex;
  justify-content:flex-end;
  gap:8px
}

.agenda-actions button {
  cursor:pointer
}

.agenda-actions [type=submit] {
  background:#245541;
  color:#fff
}

.office-column #game {
  position: relative;
  display: grid;
  place-items: center;
  aspect-ratio: 800 / 544;
  background: #a8aaa3;
}

.office-column #game canvas {
  display: block;
  image-rendering: auto;
}

.load-note {
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#526259;
  font-size:13px;
  background:#d8ddd7;
}

.office-dashboard {
  align-items: start;
}

.summary-panel {
  overflow:auto;
  scrollbar-width:none;
  overscroll-behavior:contain;
}

.summary-panel>* {
  flex-shrink:0;
}

.meeting-controls {
  margin: 0 0 12px;
  padding: 8px 11px;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: #fff;
}

#meeting-start:not(:disabled) {
  background: var(--forest);
  color:#fff;
}

#meeting-title {
  overflow-wrap:anywhere;
}

#meeting-status {
  flex: 1 1 160px;
  color:#54655b;
}

.office-controls {
  margin-top: 13px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background:#fff;
}

.office-controls summary {
  padding:12px;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
}

.office-controls .controls {
  margin:0;
  padding:0 12px 10px;
}

.agent-live {
  min-height:3.1em;
  padding-top:5px;
  border-top:1px solid var(--line);
}

.agent-live strong {
  display:block;
  font-size:10px;
  color:#3c5b4b;
}

.agent-live span {
  display:block;
  margin-top:2px;
}

.agent-card {
  grid-template-rows:auto auto 1fr auto auto;
}

.agent-card[data-activity="En reunión"] .agent-live strong {
  color:#3a7458;
}

.credit {
  margin:10px 0 0;
  font-size:11px;
  color:#65736a;
}

.credit a {
  color:#315d47;
}

@container (max-height:780px) {
  .summary-heading h2 {
    font-size:16px;
  }
}

@container (max-height:620px) or (max-width:310px) {
  .summary-heading h2 {
    font-size:14px;
  }
}

@media (min-width:761px), (min-width:540px) and (orientation:landscape) {
  .office-dashboard {
    grid-template-columns:minmax(0,1.72fr) minmax(0,1fr);
  }
  .summary-panel {
    height:var(--office-height, auto);
    max-height:var(--office-height, none);
    container-type:size;
    overflow:auto;
  }
}

@media (min-width:540px) and (max-width:760px) and (orientation:landscape) {
  .office-dashboard {
    gap:8px;
  }
  .summary-heading {
    gap:4px;
  }
  .summary-heading h2 {
    font-size:13px;
  }
  .summary-date {
    font-size:8px;
  }
  .agent-live strong {
    font-size:8px;
  }
}

@media (max-width:530px) {
  .activity-cards {
    grid-template-columns:repeat(5,minmax(0,1fr));
  }
}

/* Compact the controls so the office and activity cards stay together. */
.welcome {
  margin-bottom: 12px;
}

.meeting-controls {
  margin-bottom: 9px;
}

.office-column #game canvas {
  width:auto;
  height:auto;
  max-width:100%;
}

.agent-card {
  grid-template-rows:auto auto auto auto 1fr;
  gap:5px;
}

.agent-detail {
  min-height:0;
}

@media (min-width:761px) {
  header {
    height:64px;
  }
  main {
    padding-top:16px;
  }
  .office-column #game {
    max-height:clamp(285px, calc(100dvh - 500px), 670px);
  }
}

@media (max-width:760px) and (orientation:landscape) {
  header {
    height:46px;
  }
  main {
    padding-top:8px;
  }
  .welcome {
    gap:3px;
    margin-bottom:8px;
  }
  .welcome h1 {
    font-size:19px;
  }
  .welcome p {
    font-size:11px;
  }
  .meeting-controls {
    padding:5px 7px;
    gap:5px;
  }
  .meeting-controls button {
    padding:5px 6px;
  }
  #meeting-status {
    flex-basis:100px;
    font-size:10px;
  }
}
