.bookmark-btn {display:inline-flex;align-items:center;justify-content:center;gap:.4rem;font-size:.85rem;padding:.45rem .65rem;border:1px solid var(--border,#454545);border-radius:8px;background:transparent;color:inherit;cursor:pointer;white-space:nowrap}
.bookmark-btn.on {color:var(--accent,#dfb979);border-color:currentColor}
.bookmark-btn:disabled {opacity:.55;cursor:wait}
.bookmark-btn:focus-visible,.bookmark-actions a:focus-visible {outline:2px solid var(--accent,#dfb979);outline-offset:3px}
#bookmark-notices {position:fixed;right:1rem;bottom:5rem;z-index:1100;max-width:min(400px,calc(100vw - 2rem));display:grid;gap:.5rem}
.bookmark-notice {display:flex;gap:1rem;align-items:center;background:var(--surface,#252525);color:var(--text,#eee);border:1px solid var(--border,#666);box-shadow:0 4px 20px #0003;padding:.8rem 1rem;border-radius:10px}
.bookmark-notice button,.bookmark-notice a {color:var(--accent,#dfb979);background:none;border:0;cursor:pointer;white-space:nowrap}
.bookmark-header {display:flex;align-items:baseline;justify-content:space-between;gap:1rem}
.bookmark-toolbar {display:flex;flex-wrap:wrap;gap:.65rem;margin:1.5rem 0}
.bookmark-toolbar input {flex:1;min-width:180px}
.bookmark-toolbar select {max-width:100%}
.bookmark-card {border:1px solid var(--border,#444);border-radius:14px;padding:1.2rem;margin:1rem 0;background:var(--surface,#202020)}
.bookmark-summary {display:flex;gap:1rem;align-items:center;min-width:0}
.bookmark-summary img,.bookmark-placeholder {width:112px;height:78px;object-fit:cover;border-radius:8px;flex-shrink:0}
.bookmark-placeholder {display:grid;place-items:center;background:var(--border,#444);font-size:2rem}
.bookmark-summary h3 {margin:0 0 .4rem;overflow-wrap:anywhere}
.bookmark-summary p {margin:.3rem 0;font-size:.85rem}
.bookmark-actions {display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;margin-top:1rem}
.bookmark-actions [hidden] {display:none}
.bookmark-removed {opacity:.65}
.bookmark-unavailable {color:var(--muted,#aaa)}
.cpost-page .bookmark-btn {margin:.6rem 0 0}
.recommendation-label {font-size:.75rem;color:var(--accent,#dfb979);margin-left:.5rem}
@media(max-width:640px){.bookmark-toolbar {display:grid;grid-template-columns:1fr 1fr}.bookmark-toolbar input {grid-column:1/-1;min-width:0}.bookmark-summary img,.bookmark-placeholder {width:82px;height:65px}.bookmark-card {padding:1rem}.bookmark-header h2 {font-size:1.4rem}}
