
/* One Piece Card Manager frontend - Lorcana dark binder style v1.1.1 */
.opcm-binder-wrap,
.entry-content .opcm-binder-wrap,
.wp-block-post-content .opcm-binder-wrap{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    margin:18px 0 28px !important;
    padding:26px !important;
    border-radius:18px !important;
    background:#2f3136 !important;
    color:#ffffff !important;
    box-shadow:0 18px 42px rgba(0,0,0,.28) !important;
    border:1px solid rgba(255,255,255,.08) !important;
}
.opcm-binder-wrap *{box-sizing:border-box}
.opcm-filters,
.entry-content .opcm-filters{
    display:grid !important;
    grid-template-columns:minmax(240px,1.7fr) repeat(4,minmax(145px,1fr)) auto !important;
    gap:10px !important;
    margin:0 0 26px !important;
    padding:16px !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:16px !important;
    background:#3a3d42 !important;
    color:#ffffff !important;
    box-shadow:0 10px 26px rgba(0,0,0,.22) !important;
}
.opcm-filters input,
.opcm-filters select{
    width:100% !important;
    min-height:44px !important;
    padding:8px 12px !important;
    border:1px solid rgba(255,255,255,.16) !important;
    border-radius:12px !important;
    background:#292b30 !important;
    color:#ffffff !important;
    font-size:14px !important;
    outline:none !important;
}
.opcm-filters input::placeholder{color:rgba(255,255,255,.62) !important}
.opcm-filters select option{background:#292b30;color:#fff}
.opcm-filter-reset{
    min-height:44px !important;
    padding:8px 18px !important;
    border:1px solid rgba(255,255,255,.18) !important;
    border-radius:12px !important;
    background:#1f2228 !important;
    color:#ffffff !important;
    cursor:pointer !important;
    font-weight:800 !important;
    letter-spacing:.02em !important;
}
.opcm-filter-reset:hover{background:#111318 !important}
.opcm-binder{
    display:grid !important;
    grid-template-columns:repeat(var(--opcm-cols,4),minmax(185px,1fr)) !important;
    gap:24px !important;
    align-items:start !important;
    width:100% !important;
}
.opcm-card,
.entry-content .opcm-card{
    position:relative !important;
    overflow:hidden !important;
    border-radius:18px !important;
    background:#3a3d42 !important;
    color:#ffffff !important;
    box-shadow:0 8px 22px rgba(0,0,0,.34) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease !important;
    will-change:transform !important;
}
.opcm-card:hover{
    transform:translateY(-7px) !important;
    z-index:30 !important;
    box-shadow:0 18px 38px rgba(0,0,0,.45) !important;
    border-color:rgba(255,255,255,.20) !important;
}
.opcm-img-wrap{
    position:relative !important;
    padding:12px 12px 0 !important;
    background:#3a3d42 !important;
}
.opcm-card img,
.opcm-card-img{
    width:100% !important;
    height:auto !important;
    aspect-ratio:63/88 !important;
    object-fit:cover !important;
    border-radius:13px !important;
    display:block !important;
    cursor:zoom-in !important;
    box-shadow:0 8px 20px rgba(0,0,0,.42) !important;
}
.opcm-badge{
    position:absolute !important;
    right:20px !important;
    top:20px !important;
    z-index:5 !important;
    background:rgba(20,22,27,.86) !important;
    color:#ffffff !important;
    border:1px solid rgba(255,255,255,.18) !important;
    border-radius:999px !important;
    padding:5px 9px !important;
    font-size:11px !important;
    line-height:1 !important;
    font-weight:800 !important;
    letter-spacing:.02em !important;
    box-shadow:0 5px 14px rgba(0,0,0,.36) !important;
}
.opcm-card-body{
    padding:14px 14px 15px !important;
    text-align:left !important;
    background:#3a3d42 !important;
    color:#ffffff !important;
}
.opcm-card h3,
.entry-content .opcm-card h3{
    font-size:16px !important;
    line-height:1.18 !important;
    margin:0 0 9px !important;
    color:#ffffff !important;
    font-weight:850 !important;
    text-align:left !important;
    letter-spacing:-.015em !important;
}
.opcm-card-meta{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:7px !important;
    margin:0 0 10px !important;
}
.opcm-card-meta span,
.opcm-chip{
    display:flex !important;
    justify-content:space-between !important;
    gap:8px !important;
    min-height:25px !important;
    padding:6px 9px !important;
    border-radius:10px !important;
    background:#2f3136 !important;
    color:#ffffff !important;
    border:1px solid rgba(255,255,255,.08) !important;
    font-size:12px !important;
    line-height:1.15 !important;
}
.opcm-card-meta span.opcm-chip-set{width:100% !important}
.opcm-card-meta strong{
    font-size:10px !important;
    text-transform:uppercase !important;
    letter-spacing:.05em !important;
    color:rgba(255,255,255,.65) !important;
    font-weight:850 !important;
    flex:0 0 auto !important;
}
.opcm-card-footer{
    display:flex !important;
    justify-content:space-between !important;
    gap:8px !important;
    color:#ffffff !important;
    font-size:13px !important;
    border-top:1px solid rgba(255,255,255,.10) !important;
    padding-top:10px !important;
    margin-top:3px !important;
    font-weight:750 !important;
}
.opcm-card-footer span{
    display:inline-flex !important;
    padding:5px 9px !important;
    border-radius:9px !important;
    background:#2f3136 !important;
    color:#ffffff !important;
    border:1px solid rgba(255,255,255,.10) !important;
}
.opcm-mode-collector .opcm-card-meta,.opcm-mode-collector .opcm-card-footer{display:none !important}
.opcm-mode-collector .opcm-card h3{font-size:15px !important;margin:0 !important}
.opcm-no-results{
    margin-top:18px !important;
    padding:18px !important;
    border:1px dashed rgba(255,255,255,.24) !important;
    border-radius:14px !important;
    text-align:center !important;
    background:#3a3d42 !important;
    color:#fff !important;
}
.opcm-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);display:none;align-items:center;justify-content:center;z-index:999999;padding:24px}.opcm-lightbox.is-open{display:flex}.opcm-lightbox img{max-width:min(92vw,760px);max-height:92vh;border-radius:14px;box-shadow:0 8px 38px rgba(0,0,0,.72)}.opcm-lightbox-close{position:fixed;top:18px;right:22px;background:transparent;color:#fff;border:0;font-size:46px;line-height:1;cursor:pointer}
@media(max-width:1200px){.opcm-binder{grid-template-columns:repeat(4,minmax(150px,1fr)) !important}.opcm-filters{grid-template-columns:repeat(3,1fr) !important}}
@media(max-width:900px){.opcm-binder{grid-template-columns:repeat(3,minmax(135px,1fr)) !important;gap:20px !important}.opcm-filters{grid-template-columns:repeat(2,1fr) !important}}
@media(max-width:560px){.opcm-binder-wrap{padding:14px !important;border-radius:16px !important}.opcm-binder{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important}.opcm-filters{grid-template-columns:1fr !important;padding:12px !important}.opcm-card:hover{transform:none !important}.opcm-img-wrap{padding:9px 9px 0 !important}.opcm-card h3{font-size:13px !important}.opcm-badge{right:15px !important;top:15px !important;font-size:10px !important}.opcm-card-body{padding:10px 10px 12px !important}.opcm-card-meta span{font-size:10px !important;padding:4px 6px !important}.opcm-card-meta strong{font-size:9px !important}.opcm-card-footer{font-size:11px !important;gap:5px !important;flex-wrap:wrap !important}}
