/* Presentation adapted from the reviewed Gemini draft-twsm92aa. */
.kcs-rooms { box-sizing:border-box;color:#17324d;background:#fff;font:14px/1.5 Arial,sans-serif;max-width:100%;padding:16px;border:1px solid #d5e0ea;border-radius:6px }
.kcs-rooms *,.kcs-rooms *::before,.kcs-rooms *::after { box-sizing:inherit;min-width:0 }
.kcs-rooms header { position:static;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 12px;border-bottom:1px solid #e2eaf0;margin:0 0 16px;background:transparent;color:#17324d;box-shadow:none;flex-wrap:wrap }
.kcs-rooms h1,.kcs-rooms h2 { margin:0;font-size:1.25rem;font-weight:700;color:#17324d;line-height:1.3 }
.kcs-rooms h3 { font-size:1rem;margin:18px 0 10px }
.kcs-rooms button,.kcs-rooms input,.kcs-rooms select { font:inherit;min-height:44px;max-width:100% }
.kcs-rooms button { display:inline-flex;align-items:center;justify-content:center;min-width:44px;padding:8px 14px;border-radius:4px;border:1px solid #17324d;background:#f0f4f8;color:#17324d;cursor:pointer;white-space:normal;font-weight:500;overflow-wrap:anywhere }
.kcs-rooms button:hover { background:#e2eaf0 }
.kcs-rooms button:disabled { opacity:.55;cursor:default }
.kcs-rooms button:focus-visible,.kcs-rooms input:focus-visible,.kcs-rooms select:focus-visible { outline:3px solid #ddb84b;outline-offset:2px }
.kcs-rooms form { display:grid;grid-template-columns:1fr;gap:12px;margin:0 0 16px;padding:12px;background:#f7fafc;border:1px solid #e2eaf0;border-radius:4px }
.kcs-rooms label { display:flex;flex-direction:column;gap:4px;font-size:.85rem;font-weight:600;color:#17324d }
.kcs-rooms input,.kcs-rooms select { width:100%;padding:8px 10px;border:1px solid #bcccdb;border-radius:4px;background:#fff;color:#17324d }
.kcs-rooms form button[type=submit] { background:#17324d;color:white }
.kcs-rooms .kcs-room-area,.kcs-rooms .kcs-room-filters { display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px }
.kcs-rooms [aria-pressed=true] { background:#17324d;color:#fff;border-color:#17324d;box-shadow:inset 0 -3px 0 #ddb84b }
.kcs-rooms [aria-pressed=true]:hover { background:#17324d;color:#fff }
.kcs-rooms .kcs-room-entry { display:flex;align-items:stretch;gap:8px;margin-bottom:8px }
.kcs-rooms .kcs-room-row { display:flex;align-items:center;justify-content:space-between;flex:1;width:100%;text-align:left;padding:10px 14px;background:#fff;border:1px solid #d5e0ea;border-left:4px solid #17324d;gap:12px }
.kcs-rooms .kcs-room-row:hover { background:#f0f4f8 }
.kcs-rooms .kcs-room-row strong { display:block;font-size:.95rem;color:#17324d }
.kcs-rooms .kcs-room-row span,.kcs-rooms .kcs-room-row small { display:block;font-size:.85rem;color:#516a82;overflow-wrap:anywhere }
.kcs-rooms .kcs-room-map-button { flex:0 0 auto;max-width:115px }
.kcs-rooms .kcs-room-map-row,.kcs-rooms .kcs-room-comparison { display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:16px }
.kcs-rooms .kcs-room-current { margin:8px 0;padding:10px 12px;background:#eaf2f8;border-left:3px solid #ddb84b;border-radius:0 4px 4px 0;font-weight:500;overflow-wrap:anywhere }
.kcs-rooms .kcs-room-help { margin:8px 0 16px;font-size:.85rem;color:#516a82 }
.kcs-rooms .kcs-room-actions { display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid #e2eaf0 }
.kcs-rooms [role=status] { overflow-wrap:anywhere }
.kcs-rooms [hidden] { display:none!important }
/* Reuse the reviewed directory/toolbar presentation; the new draft timed out. */
.kcs-rooms .kcs-room-views { display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px }
.kcs-rooms #room-organizer details { margin:12px 0;border:1px solid #bcccdb;border-radius:6px;padding:8px 12px;background:#f7fafc }
.kcs-rooms #room-organizer summary { min-height:44px;display:list-item;align-content:center;cursor:pointer;font-weight:600 }
.kcs-rooms #room-organizer summary:focus-visible { outline:3px solid #ddb84b;outline-offset:2px }
.kcs-rooms #place-filter-form { margin:8px 0 0;padding:0;border:0;grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr)) }
.kcs-rooms .kcs-place-filter-actions { display:flex;gap:8px;flex-wrap:wrap;align-items:end }
.kcs-rooms .kcs-place-bulk-controls { display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 0 }
.kcs-rooms .kcs-place-bulk-controls label { display:inline-flex;flex-direction:row;align-items:center;gap:8px;min-height:44px;flex-wrap:wrap }
.kcs-rooms .kcs-place-bulk-controls select { width:auto;flex:1 }
.kcs-rooms #place-selected-count { font-weight:600;color:#24476b }
.kcs-rooms #place-save-status { margin:8px 0;font-size:13px;color:#24476b }
.kcs-rooms .kcs-place-entry { display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:10px 0;border:1px solid #d5e0ea;border-radius:6px;padding:10px;background:#fff }
.kcs-rooms .kcs-place-open { display:flex;flex:1 1 260px;align-items:flex-start;flex-direction:column;gap:6px;text-align:left;background:#fff;border-color:transparent;padding:8px;overflow-wrap:anywhere }
.kcs-rooms .kcs-place-open strong { display:block;color:#17324d }
.kcs-rooms .kcs-place-state { display:block;color:#516a82;font-size:12px;line-height:1.5 }
.kcs-rooms .kcs-place-state > span { display:block }
.kcs-rooms .kcs-place-state time { display:block }
.kcs-rooms .kcs-place-inline-edit { display:flex;flex:0 1 auto;flex-wrap:wrap;align-items:end;gap:8px }
.kcs-rooms .kcs-place-inline-edit label { flex:1 1 180px }
.kcs-rooms .kcs-place-inline-edit select { width:100%;max-width:230px }
.kcs-rooms .kcs-place-inline-edit button { min-width:62px }
.kcs-rooms .kcs-room-select { display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;min-height:44px;cursor:pointer }
.kcs-rooms .kcs-room-select input,.kcs-rooms .kcs-room-select-all input { width:20px;height:20px;min-height:20px;margin:0;flex:0 0 20px }
/* Inline photo presentation reviewed from Gemini draft-0li3r1ar; no eager photo reads. */
.kcs-rooms .kcs-place-photos { flex:1 1 100%;min-width:0;box-sizing:border-box;background:#f7f9fa;border-top:1px solid #d5e0ea;padding:8px 0;color:#17324d }
.kcs-rooms .kcs-place-photos [hidden] { display:none!important }
.kcs-rooms .kcs-place-photos .kcs-place-photo-status { margin:0 0 8px;font-size:.875rem;line-height:1.4;color:#516a82;overflow-wrap:anywhere }
.kcs-rooms .kcs-place-photos .kcs-place-photo-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 8px;padding:0 }
.kcs-rooms .kcs-place-photos figure.kcs-place-photo-card { margin:0;padding:4px;display:flex;flex-direction:column;background:#fff;border:1px solid #d5e0ea;border-radius:4px;min-width:0;box-sizing:border-box }
.kcs-rooms .kcs-place-photos button.kcs-place-photo { display:flex;align-items:center;justify-content:center;width:100%;min-width:44px;min-height:44px;padding:0;border:1px solid #d5e0ea;background:#f4f6f8;cursor:pointer;box-sizing:border-box }
.kcs-rooms .kcs-place-photos button.kcs-place-photo img { display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#f4f6f8 }
.kcs-rooms .kcs-place-photos button.kcs-place-photo span { display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4/3;min-height:44px;background:#f4f6f8;color:#516a82;font-size:.8125rem;text-align:center;padding:4px;overflow-wrap:anywhere;box-sizing:border-box }
.kcs-rooms .kcs-place-photos .kcs-place-photo-caption { margin-top:4px;font-size:.75rem;line-height:1.3;color:#516a82;overflow-wrap:anywhere }
.kcs-rooms .kcs-place-photos .kcs-place-photo-caption > span { display:block }
.kcs-rooms .kcs-place-photos .kcs-place-photo-actions { display:flex;flex-wrap:wrap;gap:8px;align-items:center }
.kcs-rooms .kcs-place-photos .kcs-place-photo-actions button { min-width:44px;min-height:44px;box-sizing:border-box }
.kcs-rooms .kcs-place-photos button:focus-visible { outline:2px solid #ddb84b;outline-offset:2px }
@media(max-width:599px) { .kcs-rooms .kcs-place-photos .kcs-place-photo-grid { grid-template-columns:repeat(2,minmax(0,1fr)) } }
/* Split address/area presentation reviewed with Gemini draft-vhebs89g. */
#work-context .work-location-display { display:block;min-height:44px;padding:10px 12px;color:#17324d;background:#f2f7f3;border:1px solid #cfe3d2;border-radius:6px;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere;line-height:1.4;font-size:13px;font-weight:700 }
#work-context .work-location-display[hidden],#work-context #work-location[hidden] { display:none!important }
#capture-room-controls { grid-column:1/-1;width:100%;margin:4px 0 0;padding:0;border:0;background:transparent;font-family:inherit }
#capture-room-controls button { min-height:44px;min-width:44px;border-radius:6px;padding:8px 12px;font-size:14px;touch-action:manipulation }
#capture-room-controls button:focus-visible,#capture-room-controls input:focus-visible,#capture-room-controls summary:focus-visible { outline:2px solid #ddb84b;outline-offset:2px }
#capture-room-controls .kcs-room-editor { display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:10px 0 0;border-top:1px solid #d5e0ea }
#capture-room-controls .kcs-room-switch { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;background:#eaf1f8;padding:4px;border-radius:8px }
#capture-room-controls .kcs-room-switch button { background:transparent;border-color:transparent }
#capture-room-controls .kcs-room-switch button[aria-pressed=true] { background:#17324d;color:#fff;border-color:#17324d }
#capture-room-controls .kcs-room-entry-row { display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px }
#capture-room-controls .kcs-room-entry-row label { font-size:13px }
#capture-room-controls .kcs-room-entry-row input { width:100%;min-height:44px;padding:8px 10px;border:1px solid #bcccdb;border-radius:6px;font-size:16px }
#capture-room-controls [data-room-use] { background:#17324d;color:#fff;white-space:nowrap }
#capture-room-controls .kcs-room-results { display:grid;grid-template-columns:repeat(auto-fill,minmax(min(130px,100%),1fr));gap:8px;max-height:200px;overflow:auto;padding:3px;margin:6px 0 0 }
#capture-room-controls .kcs-room-results:empty { display:none }
#capture-room-controls .kcs-room-item { flex-direction:column;align-items:flex-start;text-align:left;background:#f7fafe;border-color:#b8d2e8;overflow-wrap:anywhere }
#capture-room-controls .kcs-room-item[aria-pressed=true] { background:#17324d;color:#fff }
#capture-room-controls .kcs-room-item small { font-size:12px;overflow-wrap:anywhere }
#capture-room-controls .kcs-room-tools { border-top:1px solid #e2ecf5;padding-top:2px }
#capture-room-controls .kcs-room-tools summary { min-height:44px;display:flex;align-items:center;font-size:13px;color:#607284;cursor:pointer }
#capture-room-controls .kcs-room-tools button { margin:4px 6px 0 0;border:1px dashed #b8d2e8;background:#fff }
#capture-room-controls [role=status] { font-size:12px;color:#516a82;line-height:1.4;margin:8px 0 0;overflow-wrap:anywhere }
.room-return { margin-bottom:12px }
@media(min-width:600px) {
  .kcs-rooms #room-scope-form { grid-template-columns:minmax(0,1fr) auto;align-items:end }
  .kcs-rooms .kcs-room-map-row,.kcs-rooms .kcs-room-comparison { grid-template-columns:minmax(0,1fr) minmax(0,1fr) }
}
@media(max-width:599px) {
  .kcs-rooms { padding:12px }
  .kcs-rooms .kcs-room-entry { flex-wrap:wrap }
  .kcs-rooms .kcs-room-row { flex-basis:calc(100% - 52px);align-items:flex-start;flex-direction:column;gap:6px }
  .kcs-rooms .kcs-room-map-button { max-width:none }
  .kcs-rooms .kcs-place-open { flex-basis:calc(100% - 68px) }
  .kcs-rooms .kcs-place-inline-edit { flex-basis:100%;width:100% }
  .kcs-rooms .kcs-place-inline-edit label { flex-basis:100% }
  .kcs-rooms .kcs-place-inline-edit select { max-width:none }
}
