/* ===== Gold Room Props v3 — Pull List (light industrial) ===== */
.pull-fab{
  position:fixed;right:20px;bottom:20px;z-index:90;display:none;align-items:center;gap:.55rem;
  font-family:var(--ff-mono,monospace);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;
  background:var(--accent,#d9501c);color:#fff;border:none;border-radius:0;cursor:pointer;
  padding:.85rem 1.05rem;box-shadow:0 12px 28px -10px rgba(22,23,26,.55);transition:transform .18s,background .18s;
}
.pull-fab.show{display:inline-flex}
.pull-fab:hover{background:var(--accent-2,#b53e0f)}
.pull-fab svg{width:18px;height:18px}
.pull-fab .pf-count{background:#fff;color:var(--accent,#d9501c);font-weight:700;min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;padding:0 .3rem}
.pull-fab.bump{animation:pfbump .42s ease}
@keyframes pfbump{0%{transform:scale(1)}40%{transform:scale(1.12)}100%{transform:scale(1)}}

.pull-ov{position:fixed;inset:0;background:rgba(22,23,26,.42);backdrop-filter:blur(2px);z-index:95;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}
.pull-ov.open{opacity:1;visibility:visible}

.pull-drawer{
  position:fixed;top:0;right:0;height:100%;width:min(420px,100%);z-index:96;background:var(--paper,#f4f2ec);
  border-left:2px solid var(--ink,#16171a);transform:translateX(102%);transition:transform .3s cubic-bezier(.4,0,.2,1);
  display:flex;flex-direction:column;font-family:var(--ff-body,sans-serif);
}
.pull-drawer.open{transform:none}
.pull-dh{display:flex;align-items:flex-start;justify-content:space-between;padding:1.2rem 1.3rem;border-bottom:2px solid var(--ink,#16171a);background:var(--card,#fff)}
.pull-dh .t{font-family:var(--ff-disp,sans-serif);font-weight:800;font-size:1.35rem;text-transform:uppercase;letter-spacing:-.01em;line-height:1}
.pull-dh .t span{color:var(--accent,#d9501c)}
.pull-dh .sub{display:block;font-family:var(--ff-mono,monospace);font-size:.66rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted,#76746c);margin-top:.45rem}
.pull-x{background:none;border:1.5px solid var(--line-2,#c5bfb0);color:var(--ink,#16171a);width:34px;height:34px;cursor:pointer;font-size:1rem;line-height:1;transition:.15s}
.pull-x:hover{border-color:var(--accent,#d9501c);color:var(--accent,#d9501c)}

.pull-body{flex:1;overflow-y:auto;padding:1rem 1.3rem}
.pull-items{display:flex;flex-direction:column;gap:.7rem}
.pull-item{display:flex;gap:.8rem;align-items:center;background:var(--card,#fff);border:1px solid var(--line,#d9d4c8);padding:.6rem}
.pi-img{width:58px;height:58px;object-fit:cover;background:var(--paper-2,#ece8df);flex:none;border:1px solid var(--line,#d9d4c8)}
.pi-meta{flex:1;min-width:0}
.pi-name{font-family:var(--ff-disp,sans-serif);font-weight:700;font-size:.92rem;text-transform:uppercase;letter-spacing:-.01em;line-height:1.1}
.pi-sub{font-family:var(--ff-mono,monospace);font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted,#76746c);margin-top:.25rem}
.pi-right{display:flex;flex-direction:column;align-items:flex-end;gap:.4rem}
.pull-qty{display:inline-flex;align-items:center;border:1px solid var(--line-2,#c5bfb0)}
.pull-qty button{width:26px;height:26px;border:none;background:var(--paper,#f4f2ec);color:var(--ink,#16171a);cursor:pointer;font-size:.9rem;line-height:1}
.pull-qty button:hover{background:var(--ink,#16171a);color:#fff}
.pull-qty .q{min-width:26px;text-align:center;font-family:var(--ff-mono,monospace);font-size:.8rem}
.pull-rm{background:none;border:none;color:var(--muted,#76746c);font-family:var(--ff-mono,monospace);font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;padding:0}
.pull-rm:hover{color:var(--accent-2,#b53e0f)}

.pull-empty,.pull-success{text-align:center;padding:3rem 1rem;color:var(--ink-2,#3c3f44)}
.pe-ic,.ps-ic{width:46px;height:46px;margin:0 auto 1rem;color:var(--accent,#d9501c)}
.pe-ic svg,.ps-ic svg{width:100%;height:100%}
.pull-empty h4,.pull-success h4{font-family:var(--ff-disp,sans-serif);text-transform:uppercase;font-size:1.1rem;margin:0 0 .5rem}
.pull-empty p,.pull-success p{font-size:.88rem;color:var(--muted,#76746c);margin:0;line-height:1.6}
.pull-empty a{color:var(--accent,#d9501c);border-bottom:1px solid var(--accent,#d9501c)}
.pull-success{display:none}.pull-success.show{display:block}

.pull-foot{border-top:2px solid var(--ink,#16171a);padding:1.1rem 1.3rem;background:var(--card,#fff)}
.pull-foot .fl{display:flex;align-items:center;gap:.5rem;font-family:var(--ff-mono,monospace);font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink,#16171a);margin-bottom:.8rem}
.pull-row{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.pull-field{margin-bottom:.6rem}
.pull-field input,.pull-field textarea{width:100%;font-family:var(--ff-body,sans-serif);font-size:.86rem;padding:.6rem .7rem;border:1px solid var(--line-2,#c5bfb0);background:var(--paper,#f4f2ec);color:var(--ink,#16171a);border-radius:0}
.pull-field input:focus,.pull-field textarea:focus{outline:none;border-color:var(--accent,#d9501c)}
.pull-field textarea{resize:vertical;min-height:60px}
.pull-send{width:100%;background:var(--accent,#d9501c);color:#fff;border:none;border-radius:0;padding:.85rem;cursor:pointer;font-family:var(--ff-mono,monospace);font-size:.74rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;transition:background .18s}
.pull-send:hover{background:var(--accent-2,#b53e0f)}
.pull-send:disabled{opacity:.6;cursor:default}
.pull-note{font-family:var(--ff-mono,monospace);font-size:.62rem;color:var(--muted,#76746c);text-align:center;margin-top:.6rem;line-height:1.5}
.pull-note.err{color:var(--accent-2,#b53e0f)}
.pull-clear{background:none;border:none;color:var(--muted,#76746c);font-family:var(--ff-mono,monospace);font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}
.pull-clear:hover{color:var(--accent-2,#b53e0f)}

.led{width:8px;height:8px;border-radius:50%;background:var(--accent,#d9501c);display:inline-block;flex:none}
.led.blink{animation:ledb 1.6s infinite}
@keyframes ledb{0%,100%{opacity:1}50%{opacity:.3}}
@media(prefers-reduced-motion:reduce){.led.blink{animation:none}.pull-fab.bump{animation:none}}
