.library-guide { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 0 0 26px; padding: 22px 24px; background: #eaf1fc; border: 1px solid #dfe9f8; border-radius: 15px; }
.library-guide > div, .upload-step { display: flex; gap: 12px; align-items: flex-start; }
.library-guide > div > span, .upload-step > span { display: grid; place-items: center; flex: none; width: 27px; height: 27px; border-radius: 50%; color: #426eb1; background: #fff; font-size: 12px; font-weight: 700; border: 1px solid #d9e5f7; }
.library-guide p, .upload-step p { margin: 0; color: #607895; font-size: 12px; line-height: 1.65; }
.library-guide strong { display: block; color: #294c78; font-size: 13px; margin-bottom: 3px; }
.collection-help { margin: 0; padding: 0 13px 15px; color: #75889f; font-size: 11px; line-height: 1.65; }
.collection-search { margin: 5px 8px 12px !important; }
.indicator-panel { position: sticky; top: 0; }
.mobile-collection { display: none; }
.indicator-panel .record-list { max-height: 65vh; overflow-y: auto; scrollbar-width: thin; }
.library-workspace .language-dot { width: 29px; height: 26px; border-radius: 6px; font-size: 10px; font-weight: 600; }
.document-state-help { display: block; margin-left: 8px; color: #8394a9; font-size: 10px; }
.filter-reset { margin: -12px 0 12px; }
.upload-step strong { color: #294c78; font-size: 14px; }
.upload-step > span { background: #edf3ff; }
.upload-step p { margin-top: 4px; }
.upload-content { gap: 24px; }
.upload-confirmation { border: 1px solid #e0e9f5; background: #f7faff; border-radius: 12px; padding: 20px; }
.upload-confirmation > p { font-size: 12px; line-height: 1.7; margin: 12px 0 0 39px; color: #75889f; }
.upload-receipts li { border: 1px solid #e4ebf5; background: #fafcfe; border-radius: 9px; padding: 8px 12px; gap: 12px; }
.upload-receipts li > div { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.upload-receipts small { display: block; margin-top: 4px; color: #8a9bb0; font-size: 10px; }
.queue-panel { align-items: flex-start; }
.queue-panel > div { flex: 1; min-width: 200px; align-items: flex-start; }
.queue-explanation { max-width: 650px; margin: 8px 0 0; font-size: 12px; line-height: 1.7; color: #75889f; }
.documentation-preview { margin: 0; }
.document-preview-dialog { width: min(1200px, calc(100vw - 40px)); max-width: calc(100vw - 40px); max-height: calc(100dvh - 40px); padding: 0; margin: auto; overflow-y: auto; border: 1px solid #e0e9f5; border-radius: 18px; background: #fff; color: #17324d; box-shadow: 0 25px 90px #17324d35; }
.document-preview-dialog::backdrop { background: #16253c80; backdrop-filter: blur(3px); }
.document-preview-dialog .documentation-preview { border: 0 !important; border-radius: 0 !important; }
.document-modal-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; position: sticky; top: -28px; z-index: 2; background: #fff; padding: 12px 0; margin: -12px 0 20px; border-bottom: 1px solid #e5ebf3; }
.document-preview-dialog .document-assignment > label { flex: 1; min-width: 180px; }
.document-preview-dialog[open] { display: flex; flex-direction: column; height: min(900px, calc(100dvh - 40px)); overflow: hidden; }
.document-preview-dialog .documentation-preview { display: flex; flex-direction: column; flex: 1; min-height: 0; padding: 18px 24px; overflow: hidden; }
.document-preview-dialog .document-modal-toolbar { position: static; flex-shrink: 0; padding: 0 0 8px; margin: 0 0 12px; }
.document-preview-dialog .document-detail-heading { flex-shrink: 0; padding-bottom: 12px; margin-bottom: 12px; }
.document-preview-dialog .document-detail-heading h2 { font-size: 21px; }
.document-preview-dialog .document-language-section { flex-shrink: 0; padding: 12px 14px; margin-bottom: 14px; }
.document-preview-dialog .document-language-section h3 { font-size: 13px; margin-bottom: 3px; }
.document-preview-dialog .document-language-section > p { font-size: 11px; }
.document-preview-dialog .document-languages { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 10px; gap: 8px; }
.document-preview-dialog .document-languages .mud-button-label { padding: 2px; gap: 2px; }
.document-preview-dialog .document-languages strong { font-size: 12px; }
.document-preview-dialog .document-languages small { font-size: 10px; }
.document-preview-dialog .document-reading-heading { flex-shrink: 0; margin-bottom: 10px; gap: 12px; }
.document-preview-dialog .document-reading-heading h3 { font-size: 14px; margin-bottom: 3px; }
.document-preview-dialog .document-reading-heading p { font-size: 11px; max-width: 520px; }
.document-preview-content { min-height: 0; flex: 1; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; padding: 0 8px 8px 0; }
.document-preview-content .document-reading { margin: 12px auto; padding: 18px 24px; box-shadow: none; }
.document-preview-content .document-management { margin-top: 16px; padding-top: 10px; }
.library-workspace { display: flex; flex-direction: column; overflow: hidden; padding: 22px 28px 28px; }
.library-workspace > .page-heading, .library-workspace > .mud-alert { flex-shrink: 0; }
.library-catalog-view { display: flex; flex-direction: column; min-height: 0; flex: 1; }
.library-catalog-view > .library-guide, .library-catalog-view > .library-summary { flex-shrink: 0; }
.library-workspace .library-columns { flex: 1; min-height: 0; align-items: stretch; }
.library-workspace .guide-library-columns { grid-template-columns: minmax(0, 1fr); }
.library-workspace .library-main { min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding-right: 4px; scrollbar-width: thin; }
.library-workspace .indicator-panel { display: flex; flex-direction: column; min-height: 0; position: static; }
.library-workspace .indicator-panel .record-list { min-height: 0; max-height: none; flex: 1; }
.library-workspace .page-heading { margin-bottom: 18px; }
.library-workspace .library-guide { padding: 12px 18px; margin-bottom: 16px; gap: 18px; }
.library-workspace .library-summary { margin-bottom: 16px; gap: 12px; }
.library-workspace .summary-card { padding: 12px 18px; gap: 12px; }
.library-workspace .summary-icon { width: 36px; height: 36px; border-radius: 10px; }
.library-workspace .summary-card strong { font-size: 23px; }
.library-workspace .catalog-filters { padding: 8px 0 16px; }
.library-workspace .catalog-card { padding: 18px 20px 0; }
.library-workspace .document-table .mud-table-container { max-height: clamp(160px, calc(100dvh - 510px), 480px); overflow-y: auto; }
.library-workspace .table-pagination { padding: 10px 0; }
.library-workspace .upload-panel > summary { padding: 14px 20px; }
.library-workspace .queue-panel { padding: 14px 20px; }
.library-workspace .queue-explanation { margin-top: 4px; font-size: 11px; }
.file-dropzone { position: relative; }
.file-dropzone:focus-within { outline: 2px solid #2563eb; outline-offset: 3px; }
.file-dropzone .file-picker-action { padding: 9px 15px; border-radius: 8px; border: 1px solid #c6d8f3; color: #356bc9 !important; background: #fff; font-size: 12px !important; margin-top: 8px; }
.document-detail-heading { padding-bottom: 24px; border-bottom: 1px solid #e5ebf3; margin-bottom: 24px; scroll-margin-top: 20px; }
.upload-panel:focus { outline: none; }
.document-detail-heading h2 { font-size: 25px; overflow-wrap: anywhere; }
.document-language-section { border-radius: 13px; padding: 22px; background: #f7f9fd; border: 1px solid #e5ebf3; margin-bottom: 28px; }
.document-language-section h3, .document-reading-heading h3 { margin: 0 0 7px; color: #294c78; font-size: 15px; font-weight: 650; }
.document-language-section > p, .document-reading-heading p { font-size: 12px; line-height: 1.7; color: #75889f; margin: 0; }
.document-languages { margin: 20px 0 0; }
.document-languages .mud-button-root { text-align: left; justify-content: flex-start; }
.document-languages .mud-button-label { align-items: flex-start; width: 100%; padding: 8px; }
.document-languages strong { font-size: 14px; }
.document-languages small { font-size: 11px; }
.document-reading-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
.document-reading-heading > div:first-child { flex: 1; min-width: 200px; }
.document-reading-heading .document-actions { margin: 0; }
.document-reading { padding: 28px 36px; border: 1px solid #e5ebf3; border-radius: 12px; background: #fff; box-shadow: 0 3px 18px #17324d04; margin: 24px auto 32px; }
.document-reading .message-text { font-size: 15px; line-height: 1.9; color: #334e69; }
.library-scope-selector { display: grid; flex-shrink: 0; grid-template-columns: minmax(180px, 1fr) minmax(180px, 1fr) minmax(180px, 2fr); align-items: end; gap: 12px; padding: 12px; border: 1px solid #dce5ed; border-radius: 10px; background: #fff; }
.library-scope-selector label { display: grid; gap: 5px; font-size: 12px; font-weight: 600; }
.library-scope-selector select { width: 100%; min-width: 0; padding: 8px; border: 1px solid #dce5ed; border-radius: 7px; background: #fff; color: #17324d; }
.library-scope-selector p { margin: 0; font-size: 12px; line-height: 1.5; color: #607895; }
@media(max-width:700px) { .library-scope-selector { grid-template-columns: 1fr; } }
.fragment-card details { font-size: 12px; color: #71859f; margin: 12px 0; }
.fragment-card summary { cursor: pointer; }
.document-management { border-top: 1px solid #e5ebf3; margin-top: 32px; padding-top: 20px; }
.document-management > summary { color: #526e8c; font-size: 13px; font-weight: 600; cursor: pointer; padding: 10px 0; }
.document-management > p { font-size: 12px; color: #75889f; margin: 10px 0 18px; }
.document-danger { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; border-top: 1px solid #f1e5e5; margin-top: 24px; padding-top: 24px; }
.document-danger strong { color: #a54a4a; font-size: 13px; }
.document-danger p { font-size: 12px; color: #917d7d; margin: 5px 0 0; }
.document-editor-dialog .editor-note { font-size: 11px; color: #75889f; margin: 0; }
.document-editor-dialog .editor-status { font-size: 12px; color: #426eb1; margin: 0; min-height: 18px; }
@media (max-width: 1100px) { .document-languages { grid-template-columns: repeat(2, minmax(0, 1fr)); }.library-guide { gap: 14px; padding: 18px; } }
@media (max-width: 700px) {
  .library-workspace .library-columns { display: flex; flex-direction: column; gap: 12px; }
  .library-workspace .indicator-panel { display: none; }
  .library-workspace .mobile-collection { flex-shrink: 0; padding: 12px; }
  .library-workspace .library-main { flex: 1; }
  .library-workspace { padding: 16px 12px 20px; }
  .document-preview-dialog[open] { height: calc(100dvh - 16px); }
  .document-preview-dialog .documentation-preview { padding: 12px; }
  .document-preview-dialog .document-languages { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  .document-preview-dialog .document-languages .mud-button-label { padding: 0; }
  .document-preview-dialog .document-language-section { padding: 10px; margin-bottom: 10px; }
  .document-preview-dialog .document-language-section > p { display: none; }
  .document-preview-dialog .document-reading-heading p { display: none; }
  .document-preview-dialog .document-reading-heading .document-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .document-preview-dialog .document-reading-heading .mud-button-root { font-size: 10px; padding: 7px; }
  .document-preview-dialog .document-detail-heading h2 { font-size: 18px; }
  .document-preview-dialog .document-detail-heading .section-description { font-size: 11px; }
  .document-preview-content .document-reading { padding: 14px; }
  .document-preview-dialog { width: calc(100vw - 16px); max-width: calc(100vw - 16px); max-height: calc(100dvh - 16px); border-radius: 14px; }
  .document-modal-toolbar { top: -22px; }.document-modal-toolbar > p { font-size: 11px; }.document-modal-toolbar .mud-button-root { font-size: 11px; }
  .library-guide { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 16px 12px; }
  .library-guide > div { display: block; text-align: center; }
  .library-guide > div > span { margin: 0 auto 8px; }
  .library-guide strong { font-size: 11px; line-height: 1.5; }
  .library-guide .guide-description { display: none; }
  .library-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .library-summary .summary-card { padding: 13px 9px; flex-direction: column; gap: 8px; align-items: flex-start; }
  .library-summary .summary-card > div:last-child { display: flex; flex-direction: column; align-items: flex-start; gap: 5px; }
  .library-summary .summary-card span { font-size: 10px; line-height: 1.5; }
  .library-summary .summary-card strong { font-size: 23px; }
  .library-summary .summary-icon { display: none; }
  .indicator-panel { display: none; }
  .mobile-collection { display: grid; padding: 16px; border: 1px solid #e5ebf3; border-radius: 12px; background: #fff; }
  .indicator-panel .record-list { max-height: 260px; }
  .document-language-section { padding: 16px; }
  .document-reading { padding: 20px 16px; }
  .document-reading-heading .document-actions { width: 100%; gap: 8px; }
  .document-reading-heading .mud-button-root { width: 100%; }
  .document-detail-heading h2 { font-size: 22px; }
  .upload-confirmation { padding: 15px; }
  .upload-confirmation > p { margin-left: 0; }
}
@media (max-height: 620px) { .document-preview-dialog .documentation-preview { overflow-y: auto; }.document-preview-content { flex: 0 0 auto; overflow: visible; } }
