.pin-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:min(100%,440px);margin:auto;padding:10px;background:#f0f3f8;border-radius:13px;border:1px solid #e0e6ed}
.pin-lane{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;min-width:0;min-height:270px;padding:10px 4px 9px;background:#fff;border:1px solid #dfe6ef;border-radius:10px}
.pin-stack{height:205px;width:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px;overflow:hidden}
.pin-ball{display:grid;place-items:center;flex-shrink:0;width:35px;height:35px;border-radius:50%;border:3px solid #ffffffb0;box-shadow:inset 0 -4px 0 #00000012,0 2px 3px #0000001a}
.pin-ball.drop{animation:dropout .24s ease-in forwards}
.pin-release{border:0;border-radius:8px;background:#f9e9c5;border-bottom:3px solid #d3a65d;color:#91622a;min-width:68px;min-height:31px;padding:4px 9px;font-weight:900;font-size:12px}
.pin-release:hover:not(:disabled){background:#ffe0a3}.pin-release:disabled{opacity:.35;cursor:default}
.pin-request{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px;margin:18px auto 0;min-height:55px;padding:10px;border:1px solid #e3e8f0;border-radius:11px;width:min(100%,440px)}
.request-label{font-size:10px;letter-spacing:.8px;color:#77869a;font-weight:800}.request-ball{width:25px;height:25px;border:2px solid #ffffffb0;border-radius:50%;box-shadow:inset 0 -2px 0 #0002}
.pin-request strong{font-size:13px}.upcoming{display:flex;align-items:center;gap:5px;margin-left:auto}.upcoming span{width:12px;height:12px;border-radius:50%;box-shadow:inset 0 -1px 0 #0002}
@keyframes dropout{to{opacity:0;transform:translateY(135px) scale(.8)}}
@media(max-width:400px){.pin-board{gap:5px;padding:5px}.pin-lane{min-height:225px;padding:7px 2px}.pin-stack{height:165px;gap:3px}.pin-ball{width:28px;height:28px}.pin-release{min-width:49px;padding:4px;font-size:11px}.pin-request{gap:6px}.upcoming{width:100%;justify-content:center;margin-left:0}}
@media(prefers-reduced-motion:reduce){.pin-ball.drop{animation:none}}

