.acl-hub-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
.acl-reward-visual{height:auto;aspect-ratio:1/1}
.acl-reward-cost strong.acl-wheel-exclusive{font-size:16px}
.acl-reward-card .acl-reward-cost{min-height:32px}
#acl-rewards .acl-reward-actions{grid-template-rows:minmax(44px,auto) minmax(36px,auto)}
#acl-rewards .acl-reward-status{margin:0;font-size:12px;line-height:1.4}
.acl-conditions-summary{min-height:3em;margin:0 0 4px;font-size:12px;color:var(--acl-muted);line-height:1.5}
.acl-conditions-summary span{display:block}
.acl-conditions-open{align-self:flex-start;padding:10px 0;min-height:44px;background:none;border:0;color:var(--acl-accent);font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.acl-conditions-dialog{position:fixed;inset:0;margin:auto;width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:30px;border:1px solid var(--acl-line);border-radius:20px;color:var(--acl-text);background:radial-gradient(ellipse at top right,var(--acl-accent-soft),transparent 75%),var(--acl-surface);box-shadow:0 24px 100px #000a;text-align:left;overflow:auto}
.acl-conditions-dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}
.acl-conditions-dialog h2{margin:10px 28px 20px 0;font-size:25px!important;line-height:1.2}
.acl-conditions-dialog ul{padding-left:20px;margin:0 0 20px;font-size:14px;line-height:1.6}
.acl-conditions-dialog li+li{margin-top:8px}
.acl-conditions-dialog>p:last-child{font-size:13px;color:var(--acl-muted);line-height:1.6}
.acl-conditions-close{position:absolute;right:8px;top:8px;width:44px;height:44px;border:1px solid var(--acl-line);border-radius:50%;color:var(--acl-text);background:var(--acl-surface);font-size:24px;line-height:1;cursor:pointer}
@media(min-width:1100px) and (max-width:1699px){.acl-reward-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.acl-hub-tabs a{min-width:0;white-space:normal}
.acl-gift-state{display:inline-block;margin-left:8px;padding:4px 8px;border:1px solid var(--acl-line);border-radius:999px;font-size:10px;color:var(--acl-accent)}
.acl-gift-expiry{padding:10px 12px;border-radius:9px;background:color-mix(in srgb,var(--acl-accent) 9%,transparent);font-size:13px;line-height:1.5}
.acl-gift-expiry time{font-weight:700;display:block}
.acl-owned-ticket{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:200px;background:radial-gradient(ellipse at 20% 10%,color-mix(in srgb,var(--acl-accent) 30%,transparent),transparent 75%),var(--acl-surface);border-bottom:1px dashed var(--acl-accent)}
.acl-owned-ticket>span{font-size:clamp(35px,4vw,64px);font-weight:900;color:var(--acl-accent)}
.acl-owned-ticket>small{font-size:12px}
.acl-owned-gift[data-gift-state=expired],.acl-owned-gift[data-gift-state=used]{opacity:.7}
.acl-inventory-note{margin-top:24px;font-size:13px;line-height:1.6}
.acl-inventory-grid .acl-reward-type{line-height:2}
.acl-inventory-grid .acl-reward-status{font-size:13px;line-height:1.5}
@media(max-width:600px){.acl-hub-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.acl-hub-tabs a{min-height:45px;padding:10px 7px;font-size:12px}.acl-gift-expiry{font-size:12px}}
/* Owned gifts carry expiry and eligibility actions: keep them readable on phones. */
@media(max-width:650px){
    .acl-inventory-grid{grid-template-columns:minmax(0,1fr)}
    .acl-inventory-grid .acl-reward-card__body{padding:18px}
    .acl-inventory-grid .acl-reward-actions .wp-element-button{font-size:14px;padding:12px}
}
