#preview-banner{padding:10px 24px;text-align:center;background:#f5e9ca;color:#705e3b;font-size:13px}
#view-controls{display:flex;justify-content:flex-end;margin:-6px 0 18px}
.view-toggle{display:inline-flex;border:1px solid var(--border);border-radius:8px;padding:3px;background:#eeeee7;gap:3px}
.icon-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:8px;border:1px solid transparent;background:transparent;color:var(--muted)}
.icon-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.view-toggle .active{color:var(--accent);background:#fff;border-color:var(--border);box-shadow:0 1px 3px #0001}
.trash-icon{position:absolute;right:15px;top:15px;color:#637067}
.trash-icon:hover:not(:disabled){background:#fff0ea;color:#a8472e}
.trash-icon:disabled{color:#a9ada9;opacity:.6}
.publication{position:relative;min-width:0;gap:18px}
.publication-info{min-width:0;padding-right:28px}
.publication-info h3{margin:14px 0 12px;overflow-wrap:anywhere}
.publication-info .badge{line-height:1.5}
.publication-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:auto}
.danger-link{background:transparent;color:var(--accent);padding-left:0}
button.danger{color:var(--accent);border-color:#d5b5a9}
.delete-error{margin:0;font-size:12px}
.publication-collection>.empty{grid-column:1/-1}
.publication-collection.is-list{display:flex;flex-direction:column;gap:10px}
.is-list .publication{min-height:100px;padding:18px 64px 18px 22px;flex-direction:row;align-items:center;gap:24px}
.is-list .publication-info{flex:1;padding:0}
.is-list .publication-info h3{font-size:17px;margin:8px 0}
.is-list .publication-actions{margin:0;flex-shrink:0}
.is-list .delete-error{max-width:300px}
.is-list .trash-icon{top:18px}
#delete-modal{max-width:480px}
#delete-title{font-weight:600;overflow-wrap:anywhere}
#delete-modal form button{width:100%}
button:focus-visible,a:focus-visible{outline:2px solid #bb674e;outline-offset:3px}
@media(max-width:700px){.is-list .publication{flex-wrap:wrap;gap:14px}.is-list .publication-info{flex-basis:100%}.is-list .delete-error{max-width:none}.heading>.row{gap:8px}.is-list .publication-actions{flex-shrink:1}}
