.packages-open{overflow:hidden}
.packages-dialog{--package-accent:#84c2ff;width:min(820px,calc(100% - 48px));max-height:calc(100dvh - 48px);padding:0;margin:auto;border:1px solid #ffffff30;border-radius:14px;background:#000;color:var(--cream);box-shadow:0 35px 110px #000b;overflow:auto;overscroll-behavior:contain;scrollbar-width:none}.packages-dialog::-webkit-scrollbar{display:none}
.packages-dialog[data-sport="football"]{--package-accent:#fff}.packages-dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.packages-dialog[open]{animation:package-appear .22s ease-out}.packages-content{padding:26px 34px 32px}
.packages-header{display:flex;align-items:center;justify-content:center;position:sticky;top:0;background:#000;z-index:1;padding:0 44px 22px;margin-bottom:12px}.packages-close{position:absolute;right:0;top:0;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1px solid #ffffff38;background:#000;color:#fff;cursor:pointer}.packages-close svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.5;fill:none}.packages-close:hover{background:#181818}
.package-switch{display:flex;align-items:center;justify-content:center;gap:22px}.package-sport{display:grid;place-items:center;width:90px;height:86px;padding:10px;border:0;border-bottom:2px solid transparent;border-radius:4px 4px 0 0;background:transparent;color:#fff;cursor:pointer;opacity:.5;transition:opacity .2s,border-color .2s}.package-sport .sport-icon{width:64px;height:64px;filter:none;transform:none}.package-sport .sport-icon circle[fill]{fill:#000}.package-sport[aria-pressed="true"]{opacity:1;border-bottom-color:var(--package-accent)}.package-sport:hover{opacity:1;background:#111}
.package-tables{display:grid;grid-template-columns:1fr 1fr;gap:32px}.package-group-heading{padding-bottom:15px;border-bottom:1px solid #ffffff55}.package-group-heading h3{font-size:19px;letter-spacing:-.3px;font-weight:500;margin:0}.package-group table{border-collapse:collapse;width:100%;table-layout:auto}.package-group thead th{padding:17px 0 6px;font-size:8px;letter-spacing:1.4px;color:#aaa;font-weight:500;text-align:left}.package-group thead th:last-child{text-align:right}.package-group tbody th,.package-group tbody td{padding:23px 0;border-bottom:1px solid #ffffff20;text-align:left;font-weight:400}.package-group tbody td{text-align:right;white-space:nowrap;padding-left:12px}.slot-time{display:block;font-size:14px;letter-spacing:.3px;font-variant-numeric:tabular-nums;white-space:nowrap}.rate-amount{font-size:25px;color:var(--package-accent);font-weight:600;letter-spacing:-.8px;font-variant-numeric:tabular-nums}.rate-unit{font-size:10px;color:#aaa;margin-left:4px}.packages-dialog button:focus-visible{outline:2px solid var(--lime);outline-offset:4px}
@keyframes package-appear{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:640px){.packages-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:10px}.packages-content{padding:12px 20px 16px}.packages-header{padding:0 32px 10px;margin-bottom:8px}.packages-close{width:30px;height:30px}.package-switch{gap:14px}.package-sport{width:64px;height:62px;padding:7px}.package-sport .sport-icon{width:48px;height:48px}.package-tables{grid-template-columns:1fr;gap:18px}.package-group-heading{padding-bottom:8px}.package-group-heading h3{font-size:18px}.package-group thead th{padding-top:10px}.package-group tbody th,.package-group tbody td{padding:clamp(8px,1.8dvh,14px) 0}.package-group tbody td{padding-left:12px}.slot-time{font-size:14px}.rate-amount{font-size:24px;line-height:1.05}}
@media(max-height:520px) and (min-width:641px){.packages-dialog{max-height:calc(100dvh - 20px)}.packages-content{padding:12px 24px 16px}.packages-header{padding-bottom:8px;margin-bottom:4px}.package-sport{width:64px;height:56px;padding:6px}.package-sport .sport-icon{width:44px;height:44px}.package-group-heading{padding-bottom:8px}.package-group thead th{padding-top:10px}.package-group tbody th,.package-group tbody td{padding:10px 0}.rate-amount{font-size:23px}}
@media(prefers-reduced-motion:reduce){.packages-dialog[open]{animation:none}}
