/* Shared pieces used by both themes. Each theme sets:
   --acc (brand colour), --acc-ink (text on light), --acc-soft (tint), --ink, --muted, --line, --surface, --font */
[hidden]{display:none!important}
.item{cursor:pointer;outline-offset:2px}
.item-logo{position:relative;display:grid;place-items:center;background:#fff;overflow:hidden;flex:0 0 auto}
.item-logo img{position:absolute;top:5px;left:5px;width:calc(100% - 10px);height:calc(100% - 10px);object-fit:contain}
.item-logo.mono{color:#fff;font-weight:600;letter-spacing:.02em}
.item-check{display:grid;place-items:center;flex:0 0 auto;width:22px;height:22px;border-radius:6px;border:1.5px solid var(--line);background:#fff;color:#fff;transition:all .15s}
.item-check svg{opacity:0}
.item.sel .item-check{background:var(--acc);border-color:var(--acc)}
.item.sel .item-check svg{opacity:1}
.item-note,.item-extra{white-space:pre-line}
.item-extra{display:block;font-size:12.5px;color:var(--muted);margin-top:4px;grid-column:1 / -1}
.item-extra b{font-weight:600;color:var(--ink)}
.empty{padding:48px 0;text-align:center;color:var(--muted)}

/* Floating PDF button: slim tab on the right edge, follows the page */
.pdf-fab{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:40;display:flex;flex-direction:column;align-items:center;gap:6px;
  padding:14px 10px 14px 12px;border:0;border-radius:12px 0 0 12px;background:var(--acc);color:#fff;font:600 12px/1 var(--font);letter-spacing:.06em;
  cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.18);transition:padding .2s, box-shadow .2s}
.pdf-fab:hover{padding-right:16px;box-shadow:0 8px 26px rgba(0,0,0,.26)}
.pdf-fab:focus-visible{outline:3px solid #fff;outline-offset:-5px}
.pdf-fab-n{min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:#fff;color:var(--acc-ink);display:grid;place-items:center;font-size:11px;letter-spacing:0}
.pdf-fab:not(.has){opacity:.85}

/* Drawer */
.pdf-scrim{position:fixed;inset:0;z-index:41;background:rgba(15,15,20,.35)}
.pdf-drawer{position:fixed;top:0;right:0;bottom:0;z-index:42;width:min(400px,100vw);background:#fff;color:var(--ink);font-family:var(--font);
  display:flex;flex-direction:column;box-shadow:-12px 0 40px rgba(0,0,0,.18);transform:translateX(105%);transition:transform .25s ease;visibility:hidden}
.pdf-drawer.open{transform:none;visibility:visible}
.pd-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--line)}
.pd-head h3{margin:0;font-size:18px;font-weight:700}
.pd-x{border:0;background:none;font-size:26px;line-height:1;cursor:pointer;color:var(--muted);padding:0 4px}
.pd-body{flex:1;overflow:auto;padding:16px 20px}
.pd-count{margin:0 0 12px;font-weight:600;color:var(--acc-ink)}
.pd-none{color:var(--muted);font-size:14px;line-height:1.5}
.pd-lbl{display:block;font-size:13px;font-weight:600;margin:12px 0 6px}
.pd-lbl small{font-weight:400;color:var(--muted)}
.pd-body input[type=text]{width:100%;height:42px;border:1px solid var(--line);border-radius:8px;padding:0 12px;font:inherit}
.pd-opt{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:14px}
.pd-opt input{accent-color:var(--acc);width:17px;height:17px}
.pd-ordhead{display:flex;justify-content:space-between;align-items:baseline;margin-top:16px}
.pd-ordhead .pd-lbl{margin:0}
.pd-link{border:0;background:none;color:var(--acc-ink);font:600 13px var(--font);cursor:pointer;margin-left:12px;padding:0}
.pd-hint{margin:2px 0 8px;font-size:12px;color:var(--muted)}
.pd-ord,.pd-ord ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.pd-ord > li{border:1px solid var(--line);border-radius:8px;background:#fff}
.pd-ord ol{margin:0 8px 8px 26px;gap:4px}
.pd-ord ol li{border-radius:6px;background:var(--acc-soft)}
.pd-ord li.drag{opacity:.4}
.pd-ord li.over{outline:2px solid var(--acc)}
.ord-row{display:flex;align-items:center;gap:6px;padding:6px 6px 6px 8px}
.ord-grip{cursor:grab;color:var(--muted);font-size:13px;user-select:none}
.ord-name{flex:1;min-width:0;font-size:14px;font-weight:600;overflow-wrap:anywhere}
.pd-ord ol .ord-name{font-weight:500;font-size:13px}
.ord-name small{color:var(--muted);font-weight:500}
.ord-btn{width:26px;height:26px;border:1px solid var(--line);border-radius:6px;background:#fff;display:grid;place-items:center;cursor:pointer;color:var(--ink);padding:0}
.ord-btn:disabled{opacity:.3;cursor:default}
.pd-msg{min-height:1.2em;font-size:13px;color:var(--acc-ink);margin:12px 0 0}
.pd-foot{display:flex;gap:10px;justify-content:flex-end;padding:14px 20px;border-top:1px solid var(--line)}
.pd-clear{border:1px solid var(--line);background:#fff;border-radius:8px;padding:0 14px;height:42px;font:500 14px var(--font);cursor:pointer;margin-right:auto}
.pd-go{border:0;background:var(--acc);color:#fff;border-radius:8px;padding:0 18px;height:42px;font:600 14px var(--font);cursor:pointer}
.pd-go:disabled{opacity:.6}
@media (prefers-reduced-motion:reduce){.pdf-drawer,.pdf-fab,.item-check{transition:none}}
@media (max-width:600px){.pdf-fab{top:auto;bottom:18px;transform:none}}
.file-pick{display:inline-block;cursor:pointer;padding:10px 18px;border-radius:8px;background:var(--acc);color:#fff;font-weight:600}
