/* Premium User Orders - styles */
.puo-wrap{
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
    max-width:1000px;
    margin:0 auto;
    padding:18px;
}
.puo-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:12px;
}
.puo-header h2{ margin:0; font-size:1.25rem; letter-spacing:0.2px; font-weight:600; }
.puo-filter select{ padding:8px 10px; border-radius:10px; border:1px solid rgba(0,0,0,0.12); background:#fff; }

/* list */
.puo-list{ display:grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap:16px; }
.puo-card{
    background:#fff;
    border-radius:12px;
    padding:16px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
    border: 1px solid rgba(0,0,0,0.08);
    position:relative;
    overflow:hidden;
}

/* premium badge */
.puo-badge{
    position:absolute;
    right:12px;
    top:12px;
    background:#2563eb;
    color:white;
    padding:6px 12px;
    border-radius:999px;
    font-weight:600;
    font-size:0.75rem;
}

/* order info */
.puo-order-id{ font-weight:700; font-size:1rem; margin-bottom:4px; }
.puo-meta{ font-size:0.85rem; color:#4b5563; margin-top:4px; line-height:1.4; }
.puo-items{ margin-top:10px; display:flex; flex-wrap:wrap; gap:6px; }
.puo-item-chip{ background: rgba(0,0,0,0.05); padding:5px 10px; border-radius:8px; font-size:0.8rem; }

/* accent bar */
.puo-accent{
    height:4px;
    width:100%;
    margin-top:12px;
    border-radius:4px;
    background:linear-gradient(90deg,#2563eb,#3b82f6);
    transform:scaleX(0);
    transform-origin:left;
    transition: transform 600ms cubic-bezier(.2,.9,.3,1);
}
.puo-card.show .puo-accent{ transform:scaleX(1); }

/* loading & empty */
.puo-loading{ padding:28px; text-align:center; color:#374151; font-weight:500; }
.puo-empty{ padding:28px; text-align:center; color:#6b7280; font-style:italic; }

/* responsive tweaks */
@media (max-width:600px){
    .puo-wrap{ padding:12px; }
    .puo-header h2{ font-size:1.05rem; }
    .puo-badge{ top:10px; right:10px; padding:5px 8px; font-size:0.72rem; }
}
