.publication-dialog { box-sizing: border-box; width: min(1120px, calc(100vw - 32px)); max-height: calc(100dvh - 40px); padding: 24px; border: 1px solid #bac6d2; border-radius: 6px; background: #fff; color: #14223a; overflow: auto; }
.publication-dialog::backdrop { background: rgb(10 20 35 / 55%); }
.publication-dialog * { box-sizing: border-box; }
.publication-dialog h2 { margin: 0; font-size: 22px; }
.pub-header, .pub-tabs, .pub-filter, .pub-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.pub-header { justify-content: space-between; }
.pub-tabs { border-bottom: 1px solid #d8e0e8; margin-top: 16px; }
.pub-tabs button { border: 0; border-bottom: 2px solid transparent; background: transparent; color: #46596c; padding: 12px; }
.pub-tabs button[aria-current="page"] { color: #136d65; border-bottom-color: #218b7f; font-weight: 700; }
.pub-filter { padding: 12px 0; align-items: end; }
.pub-filter label { display: grid; gap: 6px; }
.pub-filter input, .pub-filter select { min-height: 36px; max-width: 100%; border: 1px solid #bac6d2; background: #fff; color: #14223a; padding: 6px; }
.pub-split { display: grid; grid-template-columns: minmax(220px, 30%) minmax(0, 1fr); gap: 24px; min-height: 400px; border-top: 1px solid #d8e0e8; }
.pub-split aside { border-right: 1px solid #d8e0e8; padding: 12px 16px 12px 0; overflow: auto; max-height: 65dvh; }
.pub-detail { padding-top: 16px; min-width: 0; }
.pub-detail h3 { margin: 0; font-size: 19px; overflow-wrap: anywhere; }
.pub-meta { color: #5d6f80; font-size: 13px; }
.pub-body { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.7; margin: 24px 0; }
.pub-facts { display: grid; grid-template-columns: 80px minmax(0, 1fr); gap: 12px; }
.pub-facts dd { margin: 0; overflow-wrap: anywhere; }
.pub-actions { margin-top: 12px; }
.publication-feed { margin-top: 24px; padding: 18px 0; border-top: 1px solid #ccd5dc; min-width: 0; }
.pub-feed-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.pub-feed-header h3 { font-size: 16px; margin: 0; }
.pub-feed-header h3 span { font-size: 13px; color: #586e7f; }
.pub-feed-list { list-style: none; padding: 0; margin: 12px 0 0; }
.pub-feed-list li { border-bottom: 1px solid #d8e0e8; }
.pub-feed-list button { display: flex; width: 100%; gap: 16px; align-items: baseline; justify-content: space-between; border: 0; padding: 12px 4px; background: transparent; color: inherit; text-align: left; }
.pub-feed-list strong { font-size: 14px; overflow-wrap: anywhere; min-width: 0; }
.pub-feed-list span, .pub-feed-empty { font-size: 13px; color: #586e7f; }
.pub-feed-list span { flex-shrink: 0; }
@media (max-width: 650px) { .pub-feed-list button { display: grid; gap: 6px; } }
.page-recycle-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(160px, 240px) auto; gap: 16px; align-items: center; padding: 16px 0; border-top: 1px solid #d8e0e8; }
.page-recycle-row small, .page-recycle-row label { display: block; margin-top: 6px; color: #586e7f; }
.page-recycle-row select { width: 100%; min-height: 36px; }
.page-recycle-row strong { overflow-wrap: anywhere; }
@media (max-width: 650px) { .page-recycle-row { grid-template-columns: 1fr; } }
@media (max-width: 650px) { .publication-dialog { width: calc(100vw - 16px); max-height: calc(100dvh - 16px); padding: 16px; } .pub-split { grid-template-columns: 1fr; gap: 8px; } .pub-split aside { border-right: 0; border-bottom: 1px solid #d8e0e8; max-height: 220px; } .pub-filter label { width: 100%; } }
