.library-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr);
    gap: 20px;
    align-items: start;
}

.library-add-form,
.library-title-form {
    display: flex;
    gap: 12px;
    align-items: end;
    border-top: 1px solid var(--line);
}

.library-add-form .form-group,
.library-title-form .form-group { flex: 1; }
.library-add-section-grid {
    width: 100%;
    min-width: 0;
    grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr);
}
.library-add-section-grid .form-group { min-width: 0; }
.library-add-section-grid > .choice-check { grid-column: 1; align-self: center; white-space: nowrap; }
.library-add-section-grid .form-actions { grid-column: 2; margin: 0; padding: 0; border-top: 0; align-self: center; justify-self: end; }
.library-add-section-grid .field {
    width: 100%;
    min-width: 0;
    max-width: 100%;
}
.library-section-list { display: grid; gap: 10px; }

.library-section-item {
    border: 1px solid var(--line);
    border-radius: 12px;
    background: var(--surface);
}

.library-section-item.child { margin-left: 28px; }
.library-section-item summary { display: flex; gap: 12px; align-items: center; padding: 14px 16px; cursor: pointer; }
.library-section-item summary strong { flex: 1; }
.library-section-item > form { margin: 0 16px 16px; }
.library-section-item .library-delete { display: flex; justify-content: flex-end; }
.library-content {
    min-height: 340px;
    line-height: 1.6;
    resize: vertical;
}
.library-content-preview {
    width: 100%;
    min-height: 112px;
    max-height: 112px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    padding: 14px 16px;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: var(--surface);
    color: var(--text);
    text-align: left;
    line-height: 1.55;
    cursor: text;
}
.library-content-preview:hover { border-color: var(--blue); box-shadow: 0 0 0 3px #2c82ec18; }
.library-content-preview.is-empty { color: var(--muted); font-style: italic; }
.choice-check { display: flex; gap: 10px; align-items: center; color: var(--muted); }

@media (max-width: 980px) {
    .library-layout { grid-template-columns: 1fr; }
    .library-add-form, .library-title-form { align-items: stretch; flex-direction: column; }
    .library-section-item.child { margin-left: 14px; }
    .library-content { min-height: 260px; }
}

@media (max-width: 640px) {
    .library-add-section-grid { grid-template-columns: 1fr; }
    .library-add-section-grid .full { grid-column: auto; }
    .library-add-section-grid > .choice-check { white-space: normal; }
}
