.chat-quest-cue { display: grid; gap: var(--space-3); padding: var(--space-4); background: var(--company-accent-100); border: var(--line-thin) solid var(--glass-500); border-radius: var(--radius-md); }
.chat-quest-cue p { margin: 0; color: var(--ink-600); line-height: var(--leading-body); word-break: keep-all; }
.chat-quest-actions, .document-actions, .document-trash { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.chat-quest-actions > *, .document-actions > *, .document-trash > * { flex: 1 1 min(12rem, 100%); }
.chat-quest-actions > * { flex-basis: min(7rem, 100%); padding: var(--space-1) var(--space-2); font-size: var(--type-14); line-height: var(--leading-tight); }
.quest-action-label { display: flex; flex-wrap: wrap; justify-content: center; gap: 0 .35em; }
.quest-action-label > span { white-space: nowrap; }
.floor-choice { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--space-2); }
.floor-choice .secondary-action { min-inline-size: 0; }
.quick-travel { min-block-size: var(--target-min); padding-inline: var(--space-3); color: var(--ink-600); background: var(--surface-000); border: var(--line-thin) dashed var(--neutral-350); border-radius: var(--radius-sm); cursor: pointer; }
.quick-travel:disabled, .floor-choice button:disabled { cursor: not-allowed; opacity: .62; }
.storage-view, .document-detail { display: grid; gap: var(--space-4); min-inline-size: 0; }
.storage-breadcrumb { color: var(--ink-600); font-size: var(--type-14); }
.storage-breadcrumb ol { display: flex; flex-wrap: wrap; gap: var(--space-1) var(--space-2); margin: 0; padding: 0; list-style: none; }
.storage-breadcrumb li { overflow-wrap: anywhere; }
.storage-breadcrumb li:not(:last-child)::after { content: "/"; margin-inline-start: var(--space-2); color: var(--neutral-350); }
.storage-count, .storage-empty, .document-summary, .document-reason { margin: 0; color: var(--ink-600); line-height: var(--leading-body); word-break: keep-all; }
.storage-empty { padding: var(--space-4); background: var(--neutral-050); border-inline-start: var(--line-focus) solid var(--neutral-350); }
.storage-children { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(12rem, 100%), 1fr)); gap: var(--space-3); margin: 0; padding: 0; list-style: none; }
.storage-child { inline-size: 100%; min-block-size: var(--control-tall); padding: var(--space-3); color: var(--ink-900); background: var(--local-accent-100); border: var(--line-thin) solid var(--wood-400); border-radius: var(--radius-sm); box-shadow: var(--shadow-hard); font-weight: 700; text-align: start; word-break: keep-all; cursor: pointer; }
.document-name { margin: 0; padding: var(--space-4); overflow-wrap: normal; word-break: normal; background: var(--neutral-050); border-inline-start: var(--line-focus) solid var(--company-accent-600); font-size: var(--type-16); font-weight: 800; line-height: var(--leading-body); }
.document-name-segment { display: inline-block; max-inline-size: 100%; overflow-wrap: anywhere; vertical-align: bottom; }
.document-reason { padding: var(--space-3); background: var(--company-accent-100); }
.document-tags { display: flex; flex-wrap: wrap; gap: var(--space-2); margin: 0; padding: 0; list-style: none; }
.document-tags li { padding: var(--space-1) var(--space-2); color: var(--company-accent-600); background: var(--company-accent-100); border-radius: var(--radius-round); font-size: var(--type-14); }
.document-rename { display: grid; gap: var(--space-2); padding-block: var(--space-4); border-block: var(--line-thin) solid var(--neutral-350); }
.document-rename label { display: grid; gap: var(--space-2); font-weight: 700; }
.document-rename input { inline-size: 100%; min-inline-size: 0; min-block-size: var(--control-tall); padding: var(--space-3); border: var(--line-thin) solid var(--neutral-350); border-radius: var(--radius-sm); line-height: var(--leading-body); }
.danger-action { min-block-size: var(--target-min); padding: var(--space-2) var(--space-4); color: var(--status-error-700); background: var(--status-error-100); border: var(--line-thin) solid var(--status-error-700); border-radius: var(--radius-sm); font-weight: 700; cursor: pointer; }
.exploration-error { display: grid; gap: var(--space-3); padding: var(--space-4); color: var(--status-error-700); background: var(--status-error-100); border: var(--line-thin) solid var(--status-error-700); border-radius: var(--radius-sm); }
.exploration-error p { margin: 0; line-height: var(--leading-body); word-break: keep-all; }

@media (max-width: 640px) {
  .floor-choice { grid-template-columns: 1fr; }
  .chat-quest-actions, .document-actions, .document-trash { display: grid; }
}

/* 서랍 전체 화면 보기 — 게임 톤을 뺀 드라이브식 파일 목록(사용자 지시). */
.drawer-overlay { position: fixed; inset: 0; z-index: 30; display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-4) clamp(var(--space-4), 4vw, var(--space-10)); background: var(--surface-000); overflow: hidden; }
.drawer-overlay-header { display: flex; align-items: center; gap: var(--space-4); padding-block-end: var(--space-3); border-block-end: var(--line-thin) solid var(--neutral-350); }
.drawer-overlay-back { min-block-size: var(--target-min); padding: var(--space-2) var(--space-4); color: var(--ink-900); background: var(--surface-000); border: var(--line-thin) solid var(--neutral-350); border-radius: var(--radius-sm); font: inherit; font-weight: 700; cursor: pointer; }
.drawer-overlay-back:hover { background: var(--neutral-050); }
.drawer-overlay-back:focus-visible, .drawer-overlay-explore:focus-visible { outline: var(--line-focus) solid var(--focus-ring); outline-offset: 2px; }
.drawer-overlay-copy { min-inline-size: 0; flex: 1; }
.drawer-overlay-copy h2 { margin: 0; font-size: var(--type-20); line-height: var(--leading-tight); }
.drawer-overlay-copy p { margin: var(--space-1) 0 0; color: var(--ink-600); font-size: var(--type-14); overflow-wrap: anywhere; }
.drawer-overlay-explore { min-block-size: var(--target-min); padding: var(--space-2) var(--space-4); color: var(--ink-600); background: var(--surface-000); border: var(--line-thin) solid var(--neutral-350); border-radius: var(--radius-sm); font: inherit; font-weight: 700; cursor: pointer; }
.drawer-overlay-count { margin: 0; color: var(--ink-600); font-size: var(--type-14); font-weight: 700; }
.drawer-overlay-empty { margin: var(--space-8) 0; color: var(--ink-600); }
.drawer-overlay-scroll { flex: 1; min-block-size: 0; overflow: auto; }
.drawer-overlay-table { inline-size: 100%; border-collapse: collapse; font-size: var(--type-14); }
.drawer-overlay-table th { position: sticky; inset-block-start: 0; padding: var(--space-2) var(--space-3); color: var(--ink-600); background: var(--surface-000); border-block-end: var(--line-thin) solid var(--neutral-350); font-weight: 700; text-align: start; white-space: nowrap; }
.drawer-overlay-table td { padding: var(--space-2) var(--space-3); border-block-end: var(--line-thin) solid var(--neutral-150); vertical-align: middle; }
.drawer-overlay-table tbody tr:hover td { background: var(--neutral-050); }
.drawer-overlay-table .column-name { inline-size: 44%; min-inline-size: 16rem; }
.drawer-overlay-table td.column-type, .drawer-overlay-table td.column-vendor, .drawer-overlay-table td.column-date { color: var(--ink-600); white-space: nowrap; }
.drawer-overlay-table td.column-amount { color: var(--ink-900); font-variant-numeric: tabular-nums; text-align: end; white-space: nowrap; }
.drawer-overlay-table th.column-amount { text-align: end; }
.drawer-overlay-name { display: flex; align-items: center; gap: var(--space-3); color: var(--ink-900); font-weight: 700; text-decoration: none; overflow-wrap: anywhere; line-height: var(--leading-tight); }
.drawer-overlay-name:hover { color: var(--company-accent-600); }
.drawer-overlay-fileicon { display: grid; place-items: center; flex: none; min-inline-size: 34px; block-size: 24px; padding-inline: var(--space-1); color: var(--company-accent-600); background: var(--company-accent-100); border-radius: var(--radius-sm); font-size: var(--type-12); font-weight: 800; letter-spacing: .02em; }
.drawer-overlay-download { color: var(--company-accent-600); font-weight: 700; text-decoration: none; white-space: nowrap; }
.drawer-overlay-download:hover { text-decoration: underline; }
@media (max-width: 767px) {
  .drawer-overlay-table .column-vendor, .drawer-overlay-table .column-date { display: none; }
}
