.admin-body { --admin-accent:#8ddbc5; }
.admin-body .admin-shell { max-width:1180px; padding-bottom:2rem; }
.admin-body .admin-topbar { position:static; border-bottom:1px solid var(--line); gap:1.5rem; }
.admin-topbar nav { gap:.35rem; flex-wrap:wrap; }
.admin-topbar nav a { padding:.5rem .7rem; border-radius:8px; white-space:nowrap; font-size:.87rem; }
.admin-topbar nav a[aria-current] { background:rgba(141,219,197,.12); color:var(--admin-accent); }
.admin-body h1 { font-size:clamp(1.5rem,3vw,2rem); letter-spacing:-.035em; }
.admin-body .section-head { align-items:flex-start; gap:1rem; margin-bottom:1.5rem; }
.admin-body .section-head p { max-width:65ch; margin-bottom:0; }
.admin-body .section-head>.button { width:auto; flex-shrink:0; }
.admin-body [data-book-editor] { padding:0; border:0; background:none; }
.admin-body :is(input,select,textarea,button,.button):focus-visible,.admin-body summary:focus-visible,.admin-body a:focus-visible { outline:2px solid var(--admin-accent); outline-offset:3px; }
.admin-body input,.admin-body select,.admin-body textarea { min-height:44px; }
.admin-body [hidden] { display:none !important; }
.admin-footer { max-width:1180px; margin:auto; padding:1.25rem 1.5rem 2rem; border-top:1px solid var(--line); display:flex; justify-content:space-between; gap:1rem; font-size:.8rem; color:var(--muted); }
.admin-footer div { display:flex; gap:1.25rem; flex-wrap:wrap; }
.editor-jumps { display:flex; gap:.5rem; flex-wrap:wrap; margin-bottom:1.25rem; }
.editor-jumps a { border:1px solid var(--line); border-radius:999px; padding:.4rem .8rem; font-size:.85rem; }
.editor-panel { padding:0; scroll-margin-top:1rem; }
.editor-panel > summary { cursor:pointer; padding:1rem 1.2rem; font-weight:600; font-size:1rem; }
.editor-panel[open] > summary { border-bottom:1px solid var(--line); }
.editor-panel-content { padding:1.2rem; }
.editor-panel-content>.form-grid { margin-bottom:1rem; }
.editor-panel-content>.form-grid:last-child { margin-bottom:0; }
.editor-panel-content p { line-height:1.65; }
.edition-extra>summary,.reading-extra>summary { cursor:pointer; color:var(--muted); padding:.35rem 0; }
.edition-extra[open]>.form-grid,.reading-extra[open]>.form-grid { margin-top:1rem; }
.editor-panel .book-general-order,.editor-panel .book-new-series { margin-top:1rem; }
.editor-panel .book-general-order[open],.editor-panel .book-new-series[open] { padding-bottom:.5rem; }
.editor-save-bar { position:sticky; bottom:.6rem; z-index:4; background:#15252d; border:1px solid #3c5b5b; border-radius:12px; padding:.8rem 1rem; box-shadow:0 8px 24px #0005; }
.editor-save-bar p { font-size:.8rem; margin:0 0 .6rem; color:var(--muted); }
.editor-save-bar .form-actions { margin:0; gap:.5rem; }
.editor-save-bar button,.editor-save-bar a { font-size:.85rem; }
.editor-save-options,.editor-save-options>div { display:contents; }
.editor-save-options>summary { display:none; }
.editor-save-bar [data-busy] { opacity:.7; }
.admin-body .lookup-card { border:1px solid var(--line); border-radius:10px; padding:1rem; }
.reading-shortcut { display:none; }
.admin-body [data-cancel-reading] { display:none; }
.admin-body.admin-enhanced [data-cancel-reading] { display:inline-flex; }
.admin-body.admin-enhanced .reading-shortcut { display:inline-flex; }
.admin-body .reading-save-actions { display:flex; gap:.5rem; align-items:center; flex-wrap:wrap; }
.reading-preview { grid-column:1/-1; color:var(--admin-accent); font-size:.9rem; }
.admin-body .admin-progress-form { border-top:1px solid var(--line); margin-top:.6rem; padding-top:1rem; }
.admin-body .admin-progress-form label { min-width:0; }
.reading-save-actions button { white-space:nowrap; }
.collection-toolbar { display:none; align-items:end; gap:.75rem; margin:1.5rem 0; }
.admin-enhanced .collection-toolbar { display:flex; }
.collection-toolbar label { flex:1; }
.collection-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.collection-card { margin:0; }
.collection-card header { display:flex; justify-content:space-between; align-items:center; gap:1rem; margin-bottom:1rem; }
.collection-card h2 { font-size:1.1rem; margin:0; overflow-wrap:anywhere; }
.collection-card header .button { width:auto; flex-shrink:0; font-size:.85rem; }
.collection-card header { flex-wrap:wrap; }
.collection-card .collection-edit { display:flex; gap:.75rem; align-items:end; flex-wrap:wrap; }
.collection-edit label { flex:1; min-width:140px; }
.collection-card .inline-form { margin-top:.75rem; }
.collection-card summary { cursor:pointer; }
.account-panel { max-width:560px; margin:1rem auto; }
.account-panel .book-form { gap:1.1rem; }
.admin-login { min-height:100vh; display:grid; place-items:center; padding:1rem; }
.admin-login .admin-shell { width:100%; max-width:440px; margin:0; padding:2rem; background:var(--panel); border:1px solid var(--line); border-radius:16px; }
.admin-login h1 { margin-top:1.5rem; }
.admin-login .book-form button { width:100%; }
.admin-login .login-back { display:inline-block; margin-top:1.5rem; font-size:.85rem; }
@media(max-width:760px) {
 .collection-grid { grid-template-columns:minmax(0,1fr); }
 .admin-body .admin-topbar { padding:1rem; gap:.75rem; flex-wrap:wrap; }
 .admin-body .admin-topbar nav.admin-navigation { width:100%; gap:.2rem; flex-wrap:nowrap; overflow-x:auto; min-width:0; }
 .admin-body .admin-topbar nav a { font-size:.8rem; padding:.45rem .5rem; }
 .admin-body .admin-shell { padding-left:1rem; padding-right:1rem; }
 .admin-footer { flex-direction:column; padding:1rem; }
}
@media(max-width:420px) {
 .admin-body .library-heading { flex-wrap:wrap; }
 .admin-body .library-heading .library-tools { width:100%; justify-content:flex-end; }
}
@media(max-width:620px) {
 .editor-panel>summary { padding:1rem; }
 .editor-panel-content { padding:1rem; }
 .editor-save-bar { bottom:0; margin:0 -.3rem; padding:.7rem; }
 .editor-save-bar .editor-save { flex-direction:row; }
 .editor-save-bar .editor-save>button { width:auto; min-width:0; flex:1; padding:.65rem .5rem; }
 .editor-save-options { position:relative; display:block; margin:0; }
 .editor-save-options>summary { display:block; cursor:pointer; font-size:.8rem; padding:.65rem .5rem; border:1px solid var(--line); border-radius:6px; }
 .editor-save-options[open]>div { display:flex; flex-direction:column; gap:.5rem; position:absolute; bottom:calc(100% + 1.3rem); right:0; width:245px; max-width:80vw; padding:.7rem; border:1px solid var(--line); background:#15252d; box-shadow:0 5px 20px #0008; border-radius:10px; }
 .editor-save-options button,.editor-save-options a { width:100%; min-width:0; }
 .editor-jumps { gap:.35rem; }
 .editor-jumps a { font-size:.8rem; padding:.35rem .65rem; }
 .collection-toolbar { flex-wrap:wrap; }
 .collection-toolbar>* { width:100%; }
 .admin-body .row-actions { flex-wrap:wrap; }
 .account-panel { margin-top:0; }
}

.admin-navigation .logout-form{display:inline-flex;margin:0;flex-shrink:0}.admin-navigation .logout-form button{font:inherit;color:inherit;background:transparent;border:0;box-shadow:none;padding:.55rem .7rem;min-height:0;cursor:pointer}.admin-navigation .logout-form button:hover{text-decoration:underline}.admin-navigation .logout-form button:focus-visible{outline:2px solid currentColor;outline-offset:2px}
