.project-meeting-brief { max-width: 100%; }
.meeting-brief-form { display: grid; gap: 1rem; padding: 1rem 0; }
.meeting-brief-form h3, .meeting-brief-form h4 { margin: .35rem 0 0; }
.meeting-grid, .meeting-room-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.meeting-field { display: grid; gap: .35rem; min-width: 0; font-weight: 600; }
.meeting-field input, .meeting-field textarea, .meeting-field select { box-sizing: border-box; width: 100%; min-height: 48px; padding: .7rem; font: inherit; border-radius: 10px; }
.meeting-layout { display:grid; gap:.8rem; }
.meeting-layout>.hint { margin:0; }
.meeting-level-controls { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; }
.meeting-level-controls .button, .meeting-level-toggle, .meeting-room-type { min-height:44px; }
.meeting-floor-count { min-width:75px; text-align:center; }
.meeting-level-toggle, .meeting-room-type { border:1px solid #356580; border-radius:10px; background:#1a3548; color:#f2f8ff; padding:.55rem .75rem; font:inherit; cursor:pointer; }
.meeting-level-toggle[aria-pressed="true"] { background:#14529b; border-color:#14529b; }
.meeting-levels { display:grid; gap:1rem; }
.meeting-pending-rooms { display:grid; gap:.6rem; padding:.8rem; border:1px solid #a76c23; border-radius:12px; background:#322719; }
.meeting-pending-rooms:empty { display:none; }
.meeting-pending-rooms .hint { margin:0; }
.meeting-pending-room { display:grid; grid-template-columns:minmax(140px,1fr) minmax(120px,1fr) minmax(150px,1fr); gap:.5rem; align-items:center; }
.meeting-pending-room select { min-width:0; min-height:44px; padding:.5rem; border-radius:10px; font:inherit; }
.meeting-room-undo { display:flex; align-items:center; flex-wrap:wrap; gap:.7rem; padding:.7rem .9rem; border:1px solid #39718c; border-radius:10px; background:#13364a; }
.meeting-room-undo[hidden] { display:none; }
.meeting-room-undo .button { min-height:44px; }
.meeting-level-tabs { display:flex; gap:.4rem; overflow-x:auto; padding-bottom:.25rem; }
.meeting-level-tab { flex:none; min-height:44px; padding:.55rem .8rem; border:1px solid #356580; border-radius:10px; background:#1a3548; color:#f2f8ff; font:inherit; cursor:pointer; }
.meeting-level-tab[aria-selected="true"] { background:#14529b; border-color:#14529b; }
.meeting-level { display:grid; gap:.7rem; padding:1rem; border:1px solid #39718c; border-radius:14px; background:#0a2130; }
.meeting-level[hidden] { display:none; }
.meeting-level h4 { margin:0; }
.meeting-level-height { max-width:280px; }
.meeting-copy-height { justify-self:start; }
.meeting-room-extra, .meeting-room-functions, .meeting-room-quantities { border-top:1px solid #24506b; padding-top:.6rem; }
.meeting-room-extra summary, .meeting-room-functions summary, .meeting-room-quantities summary { cursor:pointer; font-weight:600; }
.meeting-room-extra .meeting-room-grid { margin-top:.7rem; }
.meeting-room-quantities>.hint { margin:.55rem 0; }
.meeting-quantity-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.7rem; }
.meeting-quantity-controls { display:grid; grid-template-columns:48px minmax(60px,1fr) 48px 48px; gap:.35rem; }
.meeting-quantity-controls input { min-width:0; text-align:center; }
.meeting-quantity-step, .meeting-quantity-clear { min-height:48px; border:1px solid #356580; border-radius:10px; background:#1a3548; color:#f2f8ff; font:inherit; cursor:pointer; }
.meeting-quantity-step:disabled, .meeting-quantity-clear:disabled { opacity:.55; cursor:default; }
.meeting-quantity-totals { display:grid; gap:.45rem; padding:.8rem; border:1px solid #39718c; border-radius:12px; background:#0a2130; }
.meeting-quantity-totals>.hint { margin:0; }
.meeting-total-list { display:grid; gap:.35rem; }
.meeting-total-row { display:flex; justify-content:space-between; gap:1rem; border-top:1px solid #24506b; padding-top:.35rem; }
.meeting-room-wishes { display:grid; gap:.65rem; margin-top:.75rem; }
.meeting-room-wish { display:grid; gap:.35rem; }
.meeting-room-wish>span { font-weight:600; }
.meeting-room-palette { display:flex; flex-wrap:wrap; gap:.4rem; }
.meeting-room-groups { display:flex; flex-wrap:wrap; gap:.4rem; }
.meeting-room-group { min-height:44px; padding:.5rem .75rem; border:1px solid #356580; border-radius:10px; background:#122f41; color:#f2f8ff; font:inherit; cursor:pointer; }
.meeting-room-group[aria-selected="true"] { background:#14529b; border-color:#14529b; }
.meeting-custom-type { display:grid; grid-template-columns:minmax(0,2fr) minmax(120px,1fr); gap:.6rem; padding:.8rem; border:1px dashed #39718c; border-radius:12px; }
.meeting-custom-type .button,.meeting-custom-error { grid-column:1/-1; justify-self:start; }
.meeting-custom-error { margin:0; color:#ffbb6c; }
.meeting-room-type:disabled, .meeting-level-toggle:disabled { opacity:.55; cursor:default; }
.meeting-field textarea { min-height: 90px; }
.meeting-functions, .meeting-rooms { display: grid; gap: .7rem; }
.meeting-function, .meeting-room { padding: .8rem; border: 1px solid #24506b; border-radius: 14px; background: #102637; }
.meeting-function { display: grid; gap: .45rem; }
.meeting-choice-group { display: flex; flex-wrap: wrap; gap: .4rem; }
.meeting-choice { min-height: 44px; padding: .55rem .75rem; border-radius: 10px; border: 1px solid #356580; background: #1a3548; color: #f2f8ff; font: inherit; cursor: pointer; }
.meeting-choice[aria-pressed="true"] { background: #14529b; color: white; border-color: #14529b; }
.meeting-room { display: grid; gap: .7rem; }
.meeting-actions { display: flex; flex-wrap: wrap; gap: .6rem; }
.meeting-actions .button { min-height: 48px; }
.meeting-save-state { margin: 0; color: #57d9ff; font-weight: 600; }
.meeting-questions { border-top: 1px solid #d5e0ee; padding-top: .6rem; }
.meeting-questions summary { cursor: pointer; font-weight: 600; }
@media (max-width: 800px) {
  .meeting-grid, .meeting-room-grid, .meeting-quantity-grid { grid-template-columns: 1fr; }
  .meeting-choice { flex: 1 1 calc(50% - .4rem); }
  .meeting-actions .button { width: 100%; }
  .meeting-level-controls .button { flex:1 1 100px; }
  .meeting-room-type { flex:1 1 125px; }
  .meeting-custom-type { grid-template-columns:1fr; }
  .meeting-pending-room { grid-template-columns:1fr; }
}
