/* PDF 분할 — 공통 도구 스타일에 없는 것만 정의한다. */

.ps-drop {
    border: 2px dashed var(--border-color, #d8dce3);
    border-radius: var(--radius-md, 8px);
    padding: var(--spacing-xl, 2rem) var(--spacing-lg, 1.5rem);
    text-align: center;
    cursor: pointer;
    transition: border-color .15s ease, background-color .15s ease;
    background: var(--bg-subtle, #f8f9fb);
}
.ps-drop:hover,
.ps-drop:focus-visible,
.ps-drop.is-over {
    border-color: var(--primary-color, #3b6fe0);
    background: var(--primary-soft, #eef3fd);
    outline: none;
}
.ps-drop.is-disabled { opacity: .5; pointer-events: none; }
.ps-drop > i { font-size: 2rem; color: var(--primary-color, #3b6fe0); margin-bottom: var(--spacing-sm, .5rem); }
.ps-drop-title { margin: 0 0 .25rem; font-weight: 600; }
.ps-drop-hint  { margin: 0; font-size: var(--text-ui-sm, .8125rem); color: var(--text-muted, #626977); }

.ps-loaded { margin-top: var(--spacing-md, 1rem); }
.ps-filename {
    margin: .5rem 0 0;
    font-size: var(--text-ui-sm, .8125rem);
    color: var(--text-muted, #626977);
    word-break: break-all;
}

.ps-modes { display: flex; flex-direction: column; gap: .375rem; }
.ps-hint {
    margin: .375rem 0 0;
    font-size: var(--text-ui-sm, .8125rem);
    color: var(--text-muted, #626977);
}

.ps-result {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: .375rem;
    max-height: 420px;
    overflow-y: auto;          /* 낱장 분할은 결과가 수십 개가 된다 */
}
.ps-item {
    display: flex;
    align-items: center;
    gap: var(--spacing-sm, .5rem);
    padding: .5rem .625rem;
    border: 1px solid var(--border-color, #e5e8ed);
    border-radius: var(--radius-sm, 6px);
    background: var(--bg-surface, #fff);
}
.ps-item-info { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; }
.ps-item-name {
    font-size: var(--text-sm, .875rem);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.ps-item-meta { font-size: var(--text-ui-sm, .8125rem); color: var(--text-muted, #626977); }

.ps-empty { text-align: center; padding: var(--spacing-xl, 2rem) var(--spacing-md, 1rem); color: var(--text-muted, #626977); }
.ps-empty > i { font-size: 1.75rem; display: block; margin-bottom: .5rem; opacity: .6; }
.ps-empty > p { margin: 0; font-size: var(--text-sm, .875rem); }

.ps-result-actions { margin-top: var(--spacing-md, 1rem); }

.ps-progress {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin-top: var(--spacing-md, 1rem);
    font-size: var(--text-sm, .875rem);
    color: var(--text-muted, #626977);
}

.ps-alert { margin-top: var(--spacing-md, 1rem); }
