.lottery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,680px),1fr));gap:24px}.lottery-card{background:#fff;border:1px solid var(--border,#dfe6ef);border-radius:12px;overflow:hidden}.lottery-card-head{padding:24px 28px 0}.lottery-eyebrow{font-size:12px;font-weight:650;letter-spacing:.06em;color:var(--primary,#0052d9)}.lottery-card-head h3{font-size:23px;margin:8px 0;color:var(--text,#172b4d)}.lottery-card-head p{color:var(--muted,#62758c);margin:0;line-height:1.7}.lottery-card-body{display:grid;grid-template-columns:minmax(280px,1fr) minmax(240px,1fr);align-items:center;gap:24px;padding:26px 28px 28px}.lottery-wheel-stage{position:relative;width:min(100%,350px);aspect-ratio:1;margin:auto;--wheel-label-radius:112px;isolation:isolate}.lottery-wheel{position:absolute;inset:10px;border:9px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #d9e4f3,0 10px 30px #1d448212;transition:transform 3.2s cubic-bezier(.12,.67,.13,1);will-change:transform}.lottery-wheel-label{position:absolute;top:50%;left:50%;display:block;width:94px;overflow:hidden;text-align:center;font-size:12px;font-weight:650;color:#244777;line-height:1.4;overflow-wrap:anywhere;transform:translate(-50%,-50%) rotate(var(--segment-angle)) translateY(calc(-1 * var(--wheel-label-radius))) rotate(calc(-1 * var(--segment-angle)))}.lottery-pointer{position:absolute;z-index:3;top:0;left:50%;width:20px;height:29px;transform:translateX(-50%);clip-path:polygon(0 0,100% 0,50% 100%);background:#1557ce}.lottery-wheel-hub{position:absolute;inset:50% auto auto 50%;width:86px;height:86px;transform:translate(-50%,-50%);border:6px solid #fff;border-radius:50%;background:#1557ce;color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;box-shadow:0 4px 14px #1557ce26}.lottery-wheel-hub svg{width:24px;height:24px}.lottery-wheel-hub b{font-size:12px}.lottery-card-info{min-width:0}.lottery-allowance{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:#f6f8fc;border:1px solid #e8edf5;border-radius:8px;padding:16px}.lottery-allowance>div{display:grid;gap:6px}.lottery-allowance span{font-size:13px;color:#64748b}.lottery-allowance strong{font-size:27px;font-variant-numeric:tabular-nums;color:#172b4d}.lottery-allowance small{font-size:13px;font-weight:400}.lottery-limit,.lottery-validity{color:#64748b;font-size:12px;line-height:1.6}.lottery-draw-button{width:100%;min-height:44px;justify-content:center;margin:8px 0}.lottery-result{min-height:28px;margin:12px 0;line-height:1.7;font-size:13px;color:#475569;overflow-wrap:anywhere}.lottery-result strong{display:block;font-size:17px;color:#1557ce}.lottery-result p{margin:4px 0 8px}.lottery-rules{font-size:12px;color:#536780;border-top:1px solid #e7edf5;padding-top:14px}.lottery-rules summary{cursor:pointer;min-height:32px;display:list-item;font-size:13px;color:#304b71}.lottery-rules p{line-height:1.8}.lottery-rules ul{list-style:none;padding:0}.lottery-rules li{display:flex;gap:12px;justify-content:space-between;padding:6px 0;border-bottom:1px solid #edf1f7}.lottery-rules li b{white-space:nowrap;font-variant-numeric:tabular-nums}.lottery-history{margin:24px 0 32px;background:white;border:1px solid #dfe6ef;border-radius:10px;padding:20px}.lottery-history-scroll{overflow:auto}.lottery-history table{width:100%;border-collapse:collapse;min-width:540px;font-size:13px}.lottery-history th,.lottery-history td{padding:13px 16px;border-bottom:1px solid #edf1f6;text-align:left;line-height:1.6}.lottery-history th{font-weight:500;color:#64748b;background:#f8fafc}.lottery-state{display:inline-block;white-space:nowrap;border-radius:4px;padding:3px 7px;background:#f0f3f7;color:#53677e;font-size:12px}.lottery-state.is-awarded{color:#08745e;background:#e8f7f1}.lottery-state.is-pending{color:#8a5e11;background:#fff5df}.lottery-empty,.lottery-recovery{background:white;border:1px solid #dfe6ef;border-radius:10px;padding:24px;margin-bottom:20px}.lottery-empty{display:flex;gap:18px;align-items:center}.lottery-empty>span{color:#1557ce;background:#edf3ff;padding:12px;border-radius:10px}.lottery-empty h3,.lottery-recovery h3{margin:0 0 6px;font-size:16px}.lottery-empty p,.lottery-recovery p{margin:6px 0;color:#64748b;font-size:13px;line-height:1.7}.lottery-recovery{border-color:#e8ce9c;background:#fffdf7}.lottery-recovery>div{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:8px 0;font-size:14px}.lottery-error{padding:18px;border:1px solid #f0c8c8;background:#fff7f7;border-radius:8px;color:#934040;line-height:1.8;font-size:14px}.lottery-history-empty{padding:28px;text-align:center;color:#64748b;font-size:14px}[data-lottery]{margin-bottom:28px}[data-lottery] button:focus-visible,.lottery-rules summary:focus-visible{outline:3px solid #86b7ff;outline-offset:3px}.lottery-history .activity-section-heading{margin:0 0 14px}
@media(max-width:900px){.lottery-card-body{gap:16px;padding:20px;grid-template-columns:minmax(260px,1fr) minmax(220px,1fr)}.lottery-card-head{padding:22px 22px 0}}
@media(max-width:650px){.lottery-card-body{grid-template-columns:1fr}.lottery-wheel-stage{width:300px;max-width:100%;--wheel-label-radius:96px}.lottery-wheel-label{width:76px;font-size:11px}.lottery-history{padding:16px}.lottery-card-head h3{font-size:21px}.lottery-recovery>div{flex-wrap:wrap}.lottery-history .activity-section-heading{align-items:center;gap:8px}.lottery-history .activity-section-heading h3{font-size:16px}.lottery-card-info{width:100%}}
@media(prefers-reduced-motion:reduce){.lottery-wheel{transition:none;will-change:auto}}

.lottery-wheel-stage{container-type:inline-size;--wheel-label-radius:33cqi}.lottery-wheel-label{width:calc(198cqi / var(--prize-count,8));max-width:90px;max-height:3em;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.lottery-history-scroll:focus-visible{outline:3px solid #86b7ff;outline-offset:2px}

.lottery-wheel-label{width:calc(170cqi / var(--prize-count,8));transform:translate(-50%,-50%) rotate(var(--segment-angle)) translateY(calc(-1 * var(--wheel-label-radius))) rotate(calc(-1 * (var(--segment-angle) + var(--wheel-rotation,0deg))));transition:transform 3.2s cubic-bezier(.12,.67,.13,1)}@media(prefers-reduced-motion:reduce){.lottery-wheel-label{transition:none}}
