/* Shared page styles: dashboard + articles list */
/* ---------- dashboard ---------- */
.dash-grid { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(280px, 1fr); gap: 20px; align-items: start; }
.dash-main, .dash-side { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
@media (max-width: 1000px) { .dash-grid { grid-template-columns: 1fr; } }
.card-body.tight { padding: 8px 10px 12px; }
.pipeline { display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; }
.pl-step { position: relative; display: flex; flex-direction: column; gap: 6px; padding: 14px 16px; border-radius: var(--r); text-decoration: none !important; color: var(--ink); transition: background .15s, transform .2s var(--ease); }
.pl-step:hover { background: var(--panel-2); transform: translateY(-1px); }
.pl-n { font: 500 38px/1 var(--display); letter-spacing: -0.02em; }
.pl-l { display: inline-flex; align-items: center; gap: 6px; font: 600 12px/1 var(--sans); letter-spacing: .06em; text-transform: uppercase; color: var(--mute); }
.pl-step.s-review .pl-n { color: var(--warn); }
.pl-step.s-approved .pl-n { color: var(--violet); }
.pl-step.s-published .pl-n { color: var(--ok); }
.pl-arrow { position: absolute; right: -8px; top: 50%; transform: translateY(-50%); color: var(--line-2); z-index: 1; }
@media (max-width: 640px) { .pipeline { grid-template-columns: repeat(2, 1fr); } .pl-arrow { display: none; } }
.list { display: flex; flex-direction: column; }
.li { display: flex; align-items: center; gap: 12px; padding: 10px; border-radius: var(--r); color: var(--ink); text-decoration: none !important; transition: background .12s; }
.li:hover { background: var(--panel-2); }
.li-ico { width: 32px; height: 32px; border-radius: 9px; display: inline-grid; place-items: center; background: var(--acc-soft); color: var(--acc-2); flex: none; }
:root[data-theme="dark"] .li-ico { color: var(--acc); }
.li-ico.ok { background: var(--ok-soft); color: var(--ok); }
.li-main { flex: 1; min-width: 0; display: flex; flex-direction: column; line-height: 1.35; }
.li-main b { font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dash-stats { display: flex; gap: 28px; margin-top: 14px; }
.dash-stats b { display: block; font: 500 32px/1 var(--display); }
.dash-stats span { font-size: 12.5px; color: var(--mute); }
.feed { display: flex; flex-direction: column; gap: 12px; padding: 6px; }
.fd { display: flex; gap: 10px; align-items: flex-start; font-size: 13.5px; }
.fd-t { min-width: 0; line-height: 1.4; }

/* ---------- articles list ---------- */
.art-tbl td { vertical-align: middle; }
.art-tbl tbody tr { cursor: pointer; }
.art-cell { display: flex; gap: 14px; align-items: center; min-width: 260px; }
.art-cell img, .art-cell .ph { width: 64px; height: 44px; border-radius: 7px; object-fit: cover; flex: none; background: var(--panel-3); }
.art-cell .ph { display: grid; place-items: center; color: var(--mute); }
.art-cell .t { min-width: 0; }
.art-cell .ttl { color: var(--ink); font-weight: 600; text-decoration: none !important; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.art-cell .ttl:hover { color: var(--acc); }
.art-cell .sub { max-width: 52ch; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sel-bar { position: fixed; left: 50%; bottom: 24px; transform: translateX(-50%); z-index: 60; display: flex; align-items: center; gap: 12px; padding: 10px 12px 10px 20px; background: var(--ink); color: var(--bg); border-radius: 99px; box-shadow: var(--shadow-3); animation: toast-in .3s var(--ease); }
.sel-bar .btn.ghost { color: var(--bg); }
.sel-bar .btn.ghost:hover { background: color-mix(in srgb, var(--bg) 18%, transparent); color: var(--bg); }
@media (max-width: 960px) { .hide-md { display: none; } }
@media (max-width: 720px) { .hide-sm { display: none; } .art-cell { min-width: 0; } .art-cell img, .art-cell .ph { width: 48px; height: 36px; } }
