.pms-mobile-room-bar { display:none; }
/* Status remains on each room. Omit the repeated explanation above the board. */
.pms-workspace .pms-room-legend { display:none !important; }
@media (max-width:700px) {
  /* Personal mobile use has no shared-PC enrollment controls. Existing locks remain enforced. */
  .pms-workspace .pws-bar { display:none !important; }
  .pms-workspace.pms-viewport-v4.pms-header-compact.pms-ryokan.pms-mobile-room-view:not(.pms-mail-open) {
    display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:94px minmax(0,1fr);
    gap:6px; padding:6px 8px max(8px,env(safe-area-inset-bottom));
    height:100dvh; min-height:0; overflow:hidden; box-sizing:border-box;
  }
  .pms-mobile-room-view > .pms-mobile-room-bar {
    grid-column:1; grid-row:1; display:flex; flex-wrap:wrap; align-items:center; gap:6px; min-width:0; height:94px;
    background:#f7f5ef; color:#302b24;
  }
  .pms-mobile-room-bar #pms-nav-toggle {
    display:grid; place-items:center; flex:0 0 40px; width:40px; min-width:40px; min-height:44px;
    padding:0; margin:0; border:1px solid #d8d1c5; border-radius:7px; background:#fffdf9;
    color:#655542; font-size:20px;
  }
  .pms-mobile-room-context { flex:1; min-width:0; display:grid; gap:2px; }
  .pms-mobile-room-property { font:600 12px/1.3 system-ui,sans-serif; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .pms-mobile-room-date { font:400 12px/1.3 system-ui,sans-serif; color:#746c60; white-space:nowrap; }
  .pms-mobile-room-bar .pms-mobile-room-toggle {
    flex:0 0 auto; min-height:44px; padding:6px 12px; margin:0; border:1px solid #d8d1c5;
    border-radius:7px; background:#eee7dc; color:#514434; font:600 12px/1.4 system-ui,sans-serif;
  }
  .pms-mobile-room-toggle[aria-expanded="true"] { background:#aa6045; color:#fff; border-color:#aa6045; }
  .pms-mobile-datebar { display:grid; grid-template-columns:44px 44px minmax(0,1fr) 44px 44px; gap:4px; flex:0 0 100%; height:44px; min-width:0; }
  .pms-mobile-room-bar .pms-mobile-date-step {
    display:grid; place-items:center; min-width:44px; width:44px; min-height:44px; height:44px;
    padding:0; margin:0; border:1px solid #d8d1c5; border-radius:7px;
    background:#fffdf9; color:#655542; font:500 26px/1 system-ui,sans-serif;
  }
  .pms-mobile-room-bar > .pms-mobile-date-step { flex:0 0 44px; background:#eee7dc; font-size:12px; }
  .pms-mobile-room-bar .pms-mobile-date-step:active { background:#e5dccd; }
  .pms-mobile-room-bar .pms-mobile-date-step:disabled { opacity:.45; cursor:default; }
  .pms-mobile-date-picker {
    position:relative; display:grid; place-items:center; min-width:0; width:100%; height:44px; margin:0;
    border:1px solid #d8d1c5; border-radius:7px; box-sizing:border-box; overflow:hidden;
    background:#fffdf9; color:#514434; font:600 16px/1.3 system-ui,sans-serif; font-variant-numeric:tabular-nums;
  }
  .pms-mobile-date-picker > span { white-space:nowrap; pointer-events:none; }
  .pms-workspace .pms-mobile-date-picker input {
    position:absolute; inset:0; min-width:0; width:100%; min-height:44px; height:100%; margin:0; padding:0;
    opacity:0; cursor:pointer; font-size:16px; box-sizing:border-box;
  }
  .pms-mobile-date-picker:focus-within { outline:3px solid #648574; outline-offset:1px; }
  .pms-mobile-date-picker:has(input:disabled) { opacity:.45; }
  .pms-mobile-room-bar button:focus-visible { outline:3px solid #648574; outline-offset:1px; }
  .pms-mobile-room-view:not(.pms-mobile-controls-open) > :is(.pms-header,.pms-ryokan-titlebar),
  .pms-mobile-room-view:not(.pms-mobile-controls-open) .pms-v4-today-switch { display:none !important; }
  .pms-workspace.pms-viewport-v4.pms-ryokan.pms-mobile-room-view:not(.pms-mobile-controls-open) > [data-pms-panel="today"] {
    grid-column:1; grid-row:2; grid-template-rows:minmax(0,1fr); gap:0; min-height:0; padding:0 !important; overflow:hidden;
  }
  .pms-mobile-room-view:not(.pms-mobile-controls-open) [data-pms-panel="today"] > .pms-two-column {
    grid-row:1; min-height:0; height:100%; margin:0; gap:0;
  }
  .pms-workspace.pms-mobile-room-view:not(.pms-mobile-controls-open) > .pms-loading {
    grid-column:1; grid-row:2; align-self:start; z-index:3; margin:50px 0 0;
    padding:12px; background:#fffdf8; border:1px solid #d8d1c5; border-radius:7px;
  }
  .pms-workspace.pms-mobile-room-view:not(.pms-mobile-controls-open) [data-pms-panel="today"] > .pms-two-column > .pms-surface {
    padding:0; gap:6px; border:0; background:transparent; min-height:0; overflow:hidden;
  }
  .pms-workspace.pms-mobile-room-view:not(.pms-mobile-controls-open) .pms-v4-room-surface > .pms-section-heading {
    display:flex; flex:0 0 44px; min-height:44px; height:44px; margin:0; padding:0; gap:0;
  }
  .pms-mobile-room-view:not(.pms-mobile-controls-open) .pms-v4-room-surface > .pms-section-heading > :not(.pms-v4-area-label) { display:none !important; }
  .pms-workspace.pms-mobile-room-view:not(.pms-mobile-controls-open) .pms-v4-area-label {
    width:100%; display:flex; flex-direction:row; align-items:center; gap:8px; font-size:0; margin:0;
  }
  .pms-mobile-room-view:not(.pms-mobile-controls-open) .pms-v4-area-label::before { content:'階・場所'; font:500 12px/1.4 system-ui,sans-serif; flex:0 0 auto; }
  .pms-workspace.pms-mobile-room-view:not(.pms-mobile-controls-open) .pms-v4-area-label select {
    flex:1; min-width:0; width:100%; min-height:44px; height:44px; margin:0; padding:6px 10px;
    border-radius:7px; font:500 16px/1.4 system-ui,sans-serif;
  }
  .pms-mobile-room-view:not(.pms-mobile-controls-open) .pms-rooming-tools:has(.pms-rooming-actions:empty):not([data-tone="error"]):not([data-tone="ok"]):not(:has(+ #pms-today-room-board[aria-busy="true"])) { display:none; }
  .pms-workspace.pms-mobile-room-view #pms-today-room-board { padding-right:0; scrollbar-gutter:auto; scroll-padding-top:32px; }
  .pms-mobile-room-view:not(.pms-mobile-controls-open) .pms-rooming-tools { margin:0; }
  .pms-mobile-room-view .pms-rooming-actions button { min-height:40px; }
  .pms-workspace.pms-viewport-v4.pms-header-compact.pms-ryokan.pms-mobile-room-view.pms-mobile-controls-open:not(.pms-mail-open) {
    display:block; overflow-y:auto; overscroll-behavior:contain; scroll-padding-top:104px;
  }
  .pms-mobile-room-view.pms-mobile-controls-open > .pms-mobile-room-bar { position:sticky; top:0; z-index:10; margin-bottom:8px; }
  .pms-workspace.pms-mobile-room-view.pms-mobile-controls-open > .pms-header {
    display:flex; flex-wrap:wrap; align-items:center; gap:6px; height:auto; min-height:0; padding:0 0 8px; margin:0;
  }
  .pms-mobile-room-view.pms-mobile-controls-open > .pms-header > .pms-ryokan-property { display:none; }
  .pms-workspace.pms-mobile-room-view.pms-mobile-controls-open .pms-header .pms-toolbar { display:flex; flex-wrap:wrap; flex:1; width:auto; margin:0; gap:8px; }
  .pms-workspace.pms-mobile-room-view.pms-mobile-controls-open .pms-header .pms-toolbar input { font-size:16px; width:174px; }
  .pms-workspace.pms-mobile-room-view.pms-mobile-controls-open .pms-header-actions { display:flex; flex-wrap:wrap; width:100%; gap:6px; justify-content:flex-start; }
  .pms-mobile-room-view.pms-mobile-controls-open > .pms-ryokan-titlebar { margin:6px 0 10px; gap:6px; }
  .pms-workspace.pms-mobile-room-view.pms-mobile-controls-open > [data-pms-panel="today"] { min-height:420px; height:calc(100dvh - 180px); overflow:hidden; }
  .pms-mobile-room-view.pms-mobile-controls-open .pms-v4-today-switch { min-height:44px; }
}
