:root{--bg:#fffdfb;--bg-soft:#fff7ef;--panel:#fffffff0;--panel-border:#f1e2d2;--text:#1f2937;--muted:#64748b;--accent:#f6821e;--accent-dark:#dd6e10;--accent-soft:#f6821e1f;--warn:#b85a29;--shadow:0 14px 40px #121a2114;--shadow-brand:0 14px 36px #f6821e3d;--gradient-brand:linear-gradient(135deg,#f6821e 0%,#fcad41 100%);--gradient-gacha-free:linear-gradient(100deg,#ff5f9e 0%,#ff9a5a 14%,#ffe04d 28%,#5fe38a 43%,#36d6e6 57%,#5b8cff 71%,#b06bff 85%,#ff5f9e 100%);--shadow-gacha-free:0 16px 38px #a05adc6b;--line:#06c775;--ok:#06c775;--ok-dark:#05a35e;--ok-soft:#06c7751f;--warn-soft:#b85a291f;--error:#d4351c;--error-soft:#d4351c1a;--status-reserved:#047857;--status-reserved-border:#0478574d;--status-reserved-bg:#10b9811a;--status-attended:#1d4ed8;--status-attended-border:#1d4ed847;--status-attended-bg:#3b82f61a;--status-provisional:#92400e;--status-provisional-border:#92400e47;--status-provisional-bg:#f59e0b1f;--status-no-show:#b91c1c;--status-no-show-border:#b91c1c47;--status-no-show-bg:#ef44441a;--status-cancelled:var(--muted);--status-cancelled-border:var(--panel-border);--status-cancelled-bg:#f5f0e9;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-pill:999px}*{box-sizing:border-box}html{background:var(--bg)}body{min-height:100vh;color:var(--text);background:var(--bg);margin:0;font-family:Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif}a{color:inherit}.shell{width:min(1180px,100vw - 32px);margin:0 auto;padding:48px 0 80px}.hero{border:1px solid var(--panel-border);box-shadow:var(--shadow);background:linear-gradient(140deg,#fffffff5,#fff7efeb);border-radius:28px;gap:20px;padding:28px;display:grid}.eyebrow{background:var(--accent-soft);width:fit-content;color:var(--accent-dark);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.hero h1{letter-spacing:-.05em;margin:0;font-size:clamp(36px,7vw,76px);line-height:.94}.hero p{max-width:720px;color:var(--muted);margin:0;font-size:18px;line-height:1.7}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px;display:grid}.panel{border:1px solid var(--panel-border);background:var(--panel);box-shadow:var(--shadow);border-radius:20px;gap:24px;padding:24px;display:grid}.panel h1{letter-spacing:-.015em;margin:0;font-size:26px;font-weight:800;line-height:1.3}.panel h2,.panel h3,.panel p{margin:0}.panel ul{color:var(--muted);margin:0;padding-left:20px;line-height:1.7}.panel li+li{margin-top:8px}.stack{gap:16px;display:grid}.stack.tight{gap:6px}.stack.loose{gap:28px}ul.stack,ol.stack{margin:0;padding-left:0;list-style:none}.stack input,.stack textarea{border:1px solid var(--panel-border);width:100%;color:var(--text);font:inherit;background:#fff;border-radius:12px;outline:none;padding:14px;font-size:16px;transition:border-color .2s,box-shadow .2s}.stack input:focus,.stack textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.stack input:disabled,.stack textarea:disabled{color:var(--muted);background:#f9fafb}.codeBlock{color:#f7f3ed;background:#1c1f22;border-radius:14px;padding:16px;font-family:SFMono-Regular,JetBrains Mono,monospace;font-size:14px;overflow-x:auto}.statusCard{gap:16px;display:grid}.statusLabel{background:var(--accent-soft);width:fit-content;color:var(--accent-dark);border-radius:999px;align-items:center;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.warnLabel{color:var(--warn);background:#b85a291f}.ctaRow{flex-wrap:wrap;gap:12px;display:flex}.buttonLink{background:var(--gradient-brand);color:#fff;width:100%;font:inherit;cursor:pointer;box-shadow:var(--shadow-brand);border:none;border-radius:12px;justify-content:center;align-items:center;padding:16px;font-size:15px;font-weight:700;text-decoration:none;transition:transform .1s,opacity .1s;display:flex}.buttonLink:hover{opacity:.92}.buttonLink:active{opacity:.9;transform:scale(.98)}.buttonLink:disabled,.buttonLink[aria-disabled=true]{opacity:.5;cursor:not-allowed;box-shadow:none}.buttonLink.secondary{color:var(--text);border:1px solid var(--panel-border);box-shadow:var(--shadow);background:#fff}.cardLink{border:1px solid var(--panel-border);width:100%;color:var(--text);text-align:left;font:inherit;cursor:pointer;box-shadow:var(--shadow);background:#fff;border-radius:16px;padding:20px 44px 20px 20px;text-decoration:none;transition:background-color .1s;display:block;position:relative}.cardLink:active{background-color:var(--bg-soft)}.cardLink:after{content:"›";color:var(--panel-border);font-size:24px;line-height:1;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.cardLink.summary{background:var(--bg-soft);cursor:default;box-shadow:none;border-style:dashed;padding-right:20px}.cardLink.summary:after{content:none}.cardLink.summary:active{background-color:var(--bg-soft)}.cardLinkTitle{font-size:18px;font-weight:700;line-height:1.4;display:block}.cardLinkRow{color:var(--muted);align-items:center;gap:6px;margin-top:8px;font-size:13px;line-height:1.4;display:flex}.cardLinkRow+.cardLinkRow{margin-top:4px}.cardLinkRow svg{flex-shrink:0}.cardLinkSummaryLabel{color:var(--muted);margin-bottom:4px;font-size:12px;display:block}.cardLinkSummaryMeta{color:var(--muted);margin-top:4px;font-size:13px;display:block}.statusBanner{border:1px solid #0000;border-radius:12px;align-items:flex-start;gap:12px;padding:16px;font-size:14px;line-height:1.6;display:flex}.statusBanner.success{color:var(--ok-dark);background:#e6f9f1;border-color:#06c77533}.statusBanner.warn{color:var(--warn);background:#fff8f1;border-color:#b85a2933}.statusBanner.error{color:var(--error);background:#fef2f2;border-color:#d4351c33}.statusBannerIcon{flex-shrink:0;place-items:center;width:20px;height:20px;margin-top:2px;display:grid}.statusBannerIcon svg{display:block}.statusBannerBody{flex:1;gap:4px;min-width:0;display:grid}.statusBannerBody strong{font-size:15px;font-weight:700}.heroIcon{color:#fff;border-radius:999px;place-items:center;width:56px;height:56px;display:grid}.heroIcon svg{display:block}.heroIcon.success{background:var(--ok)}.heroIcon.warn{background:var(--warn)}.heroIcon.error{background:var(--error)}.fieldBadge{letter-spacing:.04em;vertical-align:middle;border-radius:4px;margin-left:6px;padding:2px 6px;font-size:11px;font-weight:700;display:inline-flex}.fieldBadge.required{background:var(--accent-soft);color:var(--accent)}.fieldBadge.optional{color:var(--muted);background:#f3f4f6}.helperText{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.radioGroup{flex-wrap:wrap;gap:10px 16px;display:flex}.radioOption{border:1px solid var(--panel-border);cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:8px;padding:10px 14px;font-size:15px;transition:border-color .15s,background-color .15s;display:inline-flex}.radioOption:has(input:checked){border-color:var(--accent);background:var(--accent-soft);color:var(--accent-dark)}.radioOption input[type=radio]{width:18px;height:18px;accent-color:var(--accent);margin:0}.stack fieldset{border:none;margin:0;padding:0}.stack fieldset legend{margin-bottom:6px;padding:0;font-size:15px}.consentRow{border:1px solid var(--panel-border);cursor:pointer;background:#fff;border-radius:12px;align-items:flex-start;gap:12px;padding:14px;font-size:14px;line-height:1.6;display:flex}.consentRow input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent);flex-shrink:0;margin-top:2px}.stickyCta{background:linear-gradient(to top,var(--bg)70%,#fffdfb00);margin-top:8px;padding-top:12px;position:sticky;bottom:0}.metaRow{color:var(--muted);flex-wrap:wrap;gap:6px 12px;font-size:13px;display:flex}.metaRow>span{align-items:center;gap:4px;display:inline-flex}.metaTable{border-collapse:collapse;width:100%}.metaTable th,.metaTable td{border-bottom:1px solid var(--panel-border);text-align:left;vertical-align:top;padding:12px 0}.metaTable th{letter-spacing:.03em;text-transform:uppercase;width:220px;color:var(--muted);font-size:13px}.metaTable td{color:var(--muted)}@media (max-width:880px){.shell{width:min(100vw - 24px,100%);padding:24px 0 56px}.grid{grid-template-columns:1fr}.hero,.panel{border-radius:16px}.metaTable th,.metaTable td{width:auto;padding:8px 0;display:block}.reserveStack{margin-top:24px}}.reservationTabs{border:1px solid var(--panel-border);border-radius:var(--radius-md);box-shadow:var(--shadow);background:#fff;margin-bottom:20px;display:flex;overflow:hidden}.reservationTab{appearance:none;color:var(--muted);letter-spacing:.02em;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:8px;padding:14px 12px;font-size:13px;font-weight:700;transition:color .15s,border-color .15s,background-color .15s;display:inline-flex}.reservationTab:hover{color:var(--text);background:var(--bg-soft)}.reservationTab--active{color:var(--accent-dark);border-bottom-color:var(--accent);background:#f6821e0a}.reservationTabCount{border-radius:var(--radius-pill);min-width:22px;height:22px;color:var(--muted);font-variant-numeric:tabular-nums;background:#f1f5f9;justify-content:center;align-items:center;padding:0 7px;font-size:11px;font-weight:700;display:inline-flex}.reservationTab--active .reservationTabCount{background:var(--accent);color:#fff}.notificationBanner{border-radius:var(--radius-md);box-shadow:var(--shadow);border:1px solid;align-items:flex-start;gap:10px;margin-bottom:16px;padding:14px 16px;font-size:13px;line-height:1.55;display:flex}.notificationBanner--success{background:var(--ok-soft);color:#045230;border-color:#06c77552}.notificationBanner--error{background:var(--error-soft);color:#781d12;border-color:#d4351c52}.notificationBanner strong{margin-right:4px;font-weight:700}.notificationBannerIcon{flex-shrink:0;width:18px;height:18px;margin-top:2px}.reservationGroup{display:block}.reservationGroup+.reservationGroup{margin-top:28px}.reservationGroupHeader{margin-bottom:12px}.reservationGroupHeaderRow{align-items:center;gap:8px;display:flex}.reservationGroupTitle{color:var(--text);letter-spacing:.02em;margin:0;font-size:15px;font-weight:800}.reservationGroupCount{border-radius:var(--radius-pill);min-width:22px;height:22px;color:var(--muted);font-variant-numeric:tabular-nums;background:#f1f5f9;justify-content:center;align-items:center;padding:0 7px;font-size:11px;font-weight:700;display:inline-flex}.reservationGroupDescription{color:var(--muted);margin:4px 0 0;font-size:12px;line-height:1.5}.reservationEmptyState{border:1px solid var(--panel-border);border-radius:var(--radius-md);text-align:center;color:var(--muted);box-shadow:var(--shadow);background:#fff;padding:48px 16px}.reservationEmptyStateIcon{color:#cbd5e1;width:48px;height:48px;margin:0 auto 12px}.reservationEmptyState p{margin:0;font-size:14px}.reservationCard{border:1px solid var(--panel-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);background:#fff;flex-direction:column;transition:box-shadow .2s;display:flex;overflow:hidden}.reservationCard:hover{box-shadow:0 22px 60px #121a211f}.reservationCard--past{background:var(--bg-soft);box-shadow:none}.reservationCard--past:hover{box-shadow:var(--shadow)}.reservationCard--past .reservationCardThumbnail,.reservationCard--past .reservationCardThumbnailFallback{filter:grayscale(.35)}.reservationCard--past .reservationCardTitle{color:var(--muted)}.reservationCardHeader{border-bottom:1px solid #f5e9d8;gap:14px;padding:18px;display:flex}.reservationCardThumbnail{border-radius:var(--radius-md);object-fit:cover;background:#f1f5f9;border:1px solid #f1e2d2;flex-shrink:0;width:80px;height:80px}.reservationCardThumbnailFallback{border-radius:var(--radius-md);width:80px;height:80px;color:var(--accent-dark);background:linear-gradient(135deg,#fff7ef,#ffe9d4);border:1px solid #f1e2d2;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;display:flex}.reservationCardHeaderBody{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.reservationBadgeRow{flex-wrap:wrap;gap:6px;display:flex}.reservationStatusBadge{border-radius:var(--radius-pill);letter-spacing:.04em;background:#fff;border:1px solid;align-items:center;padding:3px 10px;font-size:10px;font-weight:700;display:inline-flex}.reservationStatusBadge--reserved{color:var(--status-reserved);border-color:var(--status-reserved-border);background:var(--status-reserved-bg)}.reservationStatusBadge--cancelled{color:var(--status-cancelled);border-color:var(--status-cancelled-border);background:var(--status-cancelled-bg)}.reservationStatusBadge--attended{color:var(--status-attended);border-color:var(--status-attended-border);background:var(--status-attended-bg)}.reservationStatusBadge--no_show{color:var(--status-no-show);border-color:var(--status-no-show-border);background:var(--status-no-show-bg)}.reservationCountdownBadge{border-radius:var(--radius-pill);letter-spacing:.02em;border:1px solid;align-items:center;padding:3px 9px;font-size:10px;font-weight:700;display:inline-flex}.reservationCountdownBadge--urgent{color:#b91c1c;background:#ef444414;border-color:#b91c1c4d;animation:2.4s ease-in-out infinite reservationPulse}.reservationCountdownBadge--soon{color:var(--warn);background:var(--warn-soft);border-color:#b85a2947}.reservationCountdownBadge--neutral{color:var(--muted);border-color:var(--panel-border);background:#f7f3ee}.reservationCountdownBadge--past{color:#64748b;background:#eef2f6;border-color:#cbd5e1}@keyframes reservationPulse{0%,to{opacity:1}50%{opacity:.55}}.reservationCardTitle{-webkit-line-clamp:2;color:#1f2937;-webkit-box-orient:vertical;margin:0;font-size:14px;font-weight:800;line-height:1.45;display:-webkit-box;overflow:hidden}.reservationCardTags{flex-wrap:wrap;gap:4px;display:flex}.reservationCardTag{color:var(--muted);letter-spacing:.02em;background:#f1f5f9;border-radius:4px;padding:2px 7px;font-size:10px;font-weight:600;display:inline-flex}.reservationInfoGrid{background:#fbf9f4;border-bottom:1px solid #f5e9d8;grid-template-columns:88px 1fr;align-items:start;gap:10px 12px;padding:18px;font-size:12px;display:grid}.reservationInfoGrid dt{color:var(--muted);margin:0;font-size:12px;font-weight:600;line-height:1.6}.reservationInfoGrid dd{color:var(--text);word-break:break-word;margin:0;font-weight:500;line-height:1.6}.reservationInfoGrid dd.strong{font-weight:700}.reservationInfoGrid dd.price{color:var(--accent-dark);font-weight:700}.reservationInfoGrid dd.reservationParticipants{color:var(--accent-dark)}.reservationPaymentBadge{border-radius:var(--radius-pill);letter-spacing:.02em;white-space:nowrap;vertical-align:middle;border:1px solid;align-items:center;gap:5px;margin-left:8px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-flex}.reservationPaymentBadge--ok{color:var(--ok-dark);background:var(--ok-soft);border-color:#06c7754d}.reservationPaymentBadge--warn{color:var(--warn);background:var(--warn-soft);border-color:#b85a2947}.reservationInfoIcon{align-items:center;gap:6px;display:inline-flex}.reservationInfoIcon svg{width:14px;height:14px;color:var(--accent);flex-shrink:0}.reservationInfoDescription{border:1px solid var(--panel-border);border-radius:var(--radius-sm);color:var(--muted);background:#fff;grid-column:1/-1;margin-top:4px;padding:10px 12px;font-size:11px;line-height:1.6}.reservationCardActions{background:#fff;flex-direction:column;gap:10px;padding:14px 18px 18px;display:flex}.reservationCalendarLink{border:1px solid var(--panel-border);border-radius:var(--radius-md);width:100%;color:var(--text);background:#fff;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:12px;font-weight:700;text-decoration:none;transition:background-color .12s,border-color .12s;display:inline-flex;box-shadow:0 1px #0f172a0a}.reservationCalendarLink:hover{background:var(--bg-soft)}.reservationCalendarLink svg{color:#2563eb;flex-shrink:0;width:14px;height:14px}.reservationCancelTrigger{appearance:none;color:var(--muted);cursor:pointer;background:0 0;border:0;margin:0 auto;padding:4px;font-size:12px;font-weight:600;transition:color .15s}.reservationCancelTrigger:hover{color:var(--error)}.reservationLineNotice{border-radius:var(--radius-md);background:#f59e0b14;border:1px solid #f59e0b47;flex-direction:column;gap:10px;padding:14px;display:flex}.reservationLineNotice p{color:#78350f;margin:0;font-size:11px;line-height:1.6}.reservationLineNotice strong{font-weight:700}.lineCta{background:var(--line);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;width:100%;padding:11px 14px;font-size:13px;font-weight:700;text-decoration:none;transition:background-color .15s;display:inline-flex;box-shadow:0 1px #0f172a14}.lineCta:hover{background:var(--ok-dark)}.lineCta svg{fill:currentColor;flex-shrink:0;width:16px;height:16px}.cancelComposer{background:#fbf9f4;border-top:1px solid #f5e9d8;margin:4px -18px -18px;padding:14px 18px 16px}.cancelComposerInner{flex-direction:column;gap:14px;display:flex}.cancelComposerHeadline{text-align:center;color:var(--text);margin:0;font-size:14px;font-weight:700}.cancelComposerSubtle{color:var(--muted);margin:0;font-size:10px}.cancelComposerCallout{border-radius:var(--radius-md);border:1px solid;padding:12px 14px;font-size:11px;line-height:1.65}.cancelComposerCallout strong{margin-bottom:4px;font-size:12px;display:block}.cancelComposerCallout--info{background:var(--ok-soft);color:#045230;border-color:#06c77552}.cancelComposerCallout--warning{background:var(--warn-soft);color:#78350f;border-color:#b85a2952}.cancelComposerCallout--danger{background:var(--error-soft);color:#781d12;border-color:#d4351c52}.cancelComposerAltBox{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:#fff;flex-direction:column;gap:8px;padding:14px;font-size:11px;line-height:1.65;display:flex}.cancelComposerAltBoxTitle{color:var(--text);align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.cancelComposerAltBoxTitle svg{width:14px;height:14px;color:var(--ok)}.cancelComposerAltBoxBody{color:var(--muted);margin:0}.cancelComposerAltLink{background:var(--ok-soft);color:#045230;border-radius:var(--radius-sm);justify-content:center;align-items:center;padding:8px 12px;font-size:12px;font-weight:700;text-decoration:none;transition:background-color .15s;display:inline-flex}.cancelComposerAltLink:hover{background:#06c77533}.cancelComposerActions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.cancelComposerButton{appearance:none;border-radius:var(--radius-md);cursor:pointer;padding:11px 12px;font-size:12px;font-weight:700;transition:background-color .15s,color .15s;box-shadow:0 1px #0f172a0a}.cancelComposerButton--secondary{color:var(--text);border:1px solid var(--panel-border);background:#fff}.cancelComposerButton--secondary:hover{background:var(--bg-soft)}.cancelComposerButton--danger{color:#fff;background:#b91c1c;border:1px solid #991b1b}.cancelComposerButton--danger:hover{background:#991b1b}.cancelComposerButton--primary{color:#fff;background:#111827;border:1px solid #0f172a}.cancelComposerButton--primary:hover{background:#0f172a}.cancelComposerButton--accent{background:var(--accent);color:#fff;border:1px solid var(--accent-dark);box-shadow:var(--shadow-brand)}.cancelComposerButton--accent:hover{background:var(--accent-dark)}.cancelComposerButton:disabled,.cancelComposerButton[aria-disabled=true]{opacity:.6;cursor:not-allowed}.cancelReasonChoices{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:#fff;flex-direction:column;gap:4px;margin:0;padding:10px 12px;display:flex}.cancelReasonChoice{color:var(--text);cursor:pointer;align-items:center;gap:10px;padding:6px 4px;font-size:12px;font-weight:600;display:flex}.cancelReasonChoice input[type=radio]{width:18px;height:18px;accent-color:var(--accent);flex-shrink:0;margin:0;padding:0}.cancelComposerField label{color:var(--muted);letter-spacing:.02em;margin-bottom:6px;font-size:10px;font-weight:700;display:block}.cancelComposerField textarea{border:1px solid var(--panel-border);border-radius:var(--radius-md);width:100%;font:inherit;resize:vertical;background:#fff;padding:10px 12px;font-size:12px}.cancelComposerField textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.cancelComposerFieldError{color:var(--error);margin:0;font-size:11px;font-weight:700}.eventsListHeader{border:1px solid var(--panel-border);border-radius:var(--radius-md);box-shadow:var(--shadow);background:#fff;flex-direction:column;gap:14px;margin-bottom:16px;padding:16px;display:flex}.eventsListHeaderInner{flex-direction:column;gap:2px;display:flex}.eventsListEyebrow{letter-spacing:.18em;color:var(--accent-dark);text-transform:uppercase;font-size:10px;font-weight:700}.eventsListHeading{color:var(--text);margin:0;font-size:18px;font-weight:800}.eventsTabRow{border-radius:var(--radius-pill);background:#f1f5f9;gap:4px;padding:4px;display:flex}.eventsTab{appearance:none;color:var(--muted);border-radius:var(--radius-pill);white-space:nowrap;cursor:pointer;background:0 0;border:0;flex:1;padding:8px 12px;font-size:13px;font-weight:700;transition:background-color .15s,color .15s,box-shadow .15s}.eventsTab:hover{color:var(--text)}.eventsTab--active{color:var(--accent-dark);background:#fff;box-shadow:0 2px 8px #121a211a}.eventsCategoryRow{scrollbar-width:none;gap:8px;margin:0 -4px;padding:0 4px 2px;display:flex;overflow-x:auto}.eventsCategoryRow::-webkit-scrollbar{display:none}.eventsCategoryChip{appearance:none;color:var(--muted);border-radius:var(--radius-pill);white-space:nowrap;cursor:pointer;background:#f1f5f9;border:0;padding:6px 14px;font-size:12px;font-weight:700;transition:background-color .15s,color .15s}.eventsCategoryChip:hover{color:var(--text);background:#e2e8f0}.eventsCategoryChip--active{color:#fff;background:#111827}.eventsLoadingState{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:64px 16px;display:flex}.eventsLoadingSpinner{border:4px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.9s linear infinite eventsLoadingRotate}@keyframes eventsLoadingRotate{to{transform:rotate(360deg)}}.eventsLoadingState p{margin:0;font-size:13px;font-weight:700}.eventsEmptyState{border:1px solid var(--panel-border);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow);background:#fff;flex-direction:column;align-items:center;gap:12px;padding:56px 24px;display:flex}.eventsEmptyState--error{background:var(--error-soft);color:#781d12;border-color:#d4351c52;padding:24px 20px}.eventsEmptyStateIconCircle{width:64px;height:64px;color:var(--muted);background:#f1f5f9;border-radius:50%;justify-content:center;align-items:center;display:flex}.eventsEmptyStateIconCircle svg{width:32px;height:32px}.eventsEmptyStateHeading{color:var(--text);margin:0;font-size:15px;font-weight:800}.eventsEmptyStateBody{color:var(--muted);margin:0;font-size:12px;line-height:1.7}.eventsListSummary{color:var(--muted);margin:0 0 16px;font-size:12px;font-weight:700}.eventListItem{padding:0;list-style:none}.eventCard{border:1px solid var(--panel-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);color:inherit;background:#fff;text-decoration:none;transition:transform .15s,box-shadow .2s;display:block;overflow:hidden}.eventCard:hover{box-shadow:0 22px 60px #121a2124}.eventCard:hover .eventCardThumbnail{transform:scale(1.04)}.eventCard:hover .eventCardTitle{color:var(--accent-dark)}.eventCardThumbnailFrame{aspect-ratio:16/9;background:#f1f5f9;width:100%;position:relative;overflow:hidden}.eventCardThumbnail{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.eventCardThumbnailPlaceholder{color:var(--accent-dark);background:linear-gradient(135deg,#fff7ef,#ffe9d4);justify-content:center;align-items:center;font-size:48px;display:flex;position:absolute;inset:0}.eventCardThumbnailScrim{pointer-events:none;background:linear-gradient(#0000 50%,#0000008c 100%);position:absolute;inset:0}.eventCountdownPill{border-radius:var(--radius-sm);letter-spacing:.02em;color:#fff;align-items:center;gap:4px;padding:5px 10px;font-size:10px;font-weight:800;display:inline-flex;position:absolute;top:12px;left:12px;box-shadow:0 4px 14px #0003}.eventCountdownPill svg{width:12px;height:12px}.eventCountdownPill--urgent{background:#dc2626;animation:2.4s ease-in-out infinite eventCountdownPulse}.eventCountdownPill--soon{background:var(--accent)}.eventCountdownPill--neutral{background:#0f172ac7}.eventCountdownPill--ended{background:#475569eb}@keyframes eventCountdownPulse{0%,to{opacity:1}50%{opacity:.6}}.eventCardBody{flex-direction:column;gap:10px;padding:18px;display:flex}.eventCardMetaRow{justify-content:space-between;align-items:center;gap:8px;display:flex}.eventCardDate{color:var(--accent-dark);align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.eventCardDate svg{width:14px;height:14px}.eventCardArea{color:var(--muted);letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;background:#f1f5f9;border-radius:4px;max-width:50%;padding:3px 8px;font-size:10px;font-weight:700;display:inline-flex;overflow:hidden}.eventCardParticipants{color:var(--accent-dark);align-items:center;gap:6px;margin:0;font-size:12px;font-weight:700;display:flex}.eventCardParticipants svg{flex-shrink:0;width:14px;height:14px}.eventCardTitle{-webkit-line-clamp:2;color:var(--text);-webkit-box-orient:vertical;margin:0;font-size:14px;font-weight:800;line-height:1.5;transition:color .15s;display:-webkit-box;overflow:hidden}.eventCardFooterRow{border-top:1px solid #f1f5f9;flex-direction:column;align-items:stretch;gap:8px;padding-top:8px;display:flex}.eventCardTagsRow{flex-wrap:wrap;gap:4px;min-width:0;display:flex}.eventCardTag{background:var(--bg-soft);color:var(--muted);white-space:nowrap;border:1px solid #f1e2d2;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600;display:inline-flex}.eventCardPriceRow{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.eventCardPriceLabel{color:var(--muted);font-size:10px}.eventCardPriceValue{color:var(--text);font-size:14px;font-weight:800}.eventCardCta{border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent-dark);justify-content:center;align-items:center;gap:6px;padding:11px 12px;font-size:12px;font-weight:800;transition:background-color .15s;display:inline-flex}.eventCardCta svg{width:12px;height:12px}.eventCard:hover .eventCardCta{background:#f6821e33}.eventCard--past .eventCardThumbnail,.eventCard--past .eventCardThumbnailPlaceholder{filter:grayscale(.35)}.eventCard--past .eventCardCta{color:var(--muted);background:#f1f5f9}.eventCard--past:hover .eventCardCta{background:#e2e8f0}.eventCard--past:hover .eventCardTitle{color:var(--text)}.eventCard--static{cursor:default}.eventCard--static:hover{box-shadow:var(--shadow)}.eventCard--static:hover .eventCardThumbnail{transform:none}.reserveHeader{z-index:50;border-bottom:1px solid var(--panel-border);box-shadow:var(--shadow);background:#fff;margin:-48px -16px 0;padding:12px 16px;position:sticky;top:0}.reserveHeaderInner{text-align:center;flex-direction:column;align-items:center;gap:2px;display:flex}.reserveHeaderEyebrow{letter-spacing:.18em;color:var(--accent-dark);text-transform:uppercase;font-size:10px;font-weight:700}.reserveHeaderTitle{color:var(--text);margin:0;font-size:14px;font-weight:700}.reserveStepIndicator{border-bottom:1px solid var(--panel-border);background:#fff;justify-content:space-between;align-items:stretch;gap:0;margin:0 -16px 20px;padding:56px 20px 14px;font-size:11px;font-weight:700;display:flex}.reserveStepItem{color:var(--muted);flex-direction:column;flex:1;align-items:center;gap:4px;display:flex;position:relative}.reserveStepItem--active{color:var(--accent-dark)}.reserveStepItem--done{color:var(--ok-dark)}.reserveStepBadge{width:26px;height:26px;color:var(--muted);background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:800;transition:background-color .2s,color .2s;display:flex}.reserveStepItem--active .reserveStepBadge{background:var(--accent);color:#fff}.reserveStepItem--done .reserveStepBadge{color:var(--ok-dark);background:#06c77529}.reserveStepConnector{border-top:1px dashed var(--panel-border);z-index:-1;width:100%;height:0;position:absolute;top:13px;left:50%}.reserveStepLabel{font-size:10px;font-weight:700}.reserveStatusCard{border:1px solid var(--panel-border);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow);background:#fff;flex-direction:column;align-items:center;gap:16px;padding:32px 24px;display:flex}.reserveStatusCard p{color:var(--text);margin:0;font-size:13px;font-weight:600}.reserveStatusSpinner{border:4px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;animation:.9s linear infinite reserveSpin}@keyframes reserveSpin{to{transform:rotate(360deg)}}.reserveStatusCard--success{border-color:#06c77552}.reserveStatusSuccessIcon{background:var(--ok-soft);width:64px;height:64px;color:var(--ok-dark);border-radius:50%;justify-content:center;align-items:center;display:flex}.reserveStatusSuccessIcon svg{width:32px;height:32px}.reserveStatusHeading{color:var(--text);margin:0;font-size:16px;font-weight:800}.reserveStatusBody{color:var(--muted);margin:0;font-size:12px;line-height:1.65}.reserveStatusInlineCard{border:1px solid var(--panel-border);border-radius:var(--radius-md);text-align:left;background:#fbf9f4;width:100%;padding:14px}.reserveStatusInlineCard span{letter-spacing:.04em;color:var(--accent-dark);text-transform:uppercase;font-size:10px;font-weight:700}.reserveStatusInlineCard strong{color:var(--text);margin-top:6px;font-size:12px;font-weight:700;line-height:1.5;display:block}.reserveStatusInlineCard small{color:var(--muted);margin-top:4px;font-size:11px;font-weight:600;display:block}.reserveFriendAddCard{border-radius:var(--radius-lg);box-shadow:var(--shadow);background:#fff;border:1px solid #f59e0b5c;flex-direction:column;gap:16px;padding:24px;display:flex}.reserveFriendAddHeading{color:var(--text);align-items:center;gap:10px;margin:0;font-size:15px;font-weight:800;line-height:1.4;display:flex}.reserveFriendAddIcon{color:#92400e;background:#f59e0b1f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.reserveFriendAddIcon svg{width:20px;height:20px}.reserveFriendAddBody{color:var(--muted);margin:0;font-size:12px;line-height:1.65}.reserveFriendAddBody strong{color:var(--text)}.reserveFriendAddAlert{color:#78350f;border-radius:var(--radius-sm);background:#f59e0b1f;border:1px solid #f59e0b52;padding:10px 12px;font-size:11px;font-weight:600;line-height:1.65}.reserveFriendAddActions{flex-direction:column;gap:10px;display:flex}.reserveEventCard{border:1px solid var(--panel-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);background:#fff;overflow:hidden}.reserveEventCardThumbnailFrame{aspect-ratio:16/7;background:#f1f5f9;width:100%;position:relative;overflow:hidden}.reserveEventCardThumbnail{object-fit:cover;width:100%;height:100%;display:block}.reserveEventCardThumbnailPlaceholder{color:var(--accent-dark);background:linear-gradient(135deg,#fff7ef,#ffe9d4);justify-content:center;align-items:center;font-size:36px;display:flex;position:absolute;inset:0}.reserveEventCardScrim{pointer-events:none;background:linear-gradient(#0000 40%,#0000008c);position:absolute;inset:0}.reserveEventCardOverlay{color:#fff;flex-direction:column;gap:4px;display:flex;position:absolute;bottom:12px;left:14px;right:14px}.reserveEventCardBadge{background:var(--accent);color:#fff;letter-spacing:.05em;border-radius:4px;align-self:flex-start;padding:3px 8px;font-size:9px;font-weight:800}.reserveEventCardTitle{text-shadow:0 1px 3px #0006;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12px;font-weight:800;line-height:1.4;display:-webkit-box;overflow:hidden}.reserveEventCardSpec{border-top:1px solid var(--panel-border);background:#fbf9f4;row-gap:8px;padding:14px 16px;font-size:12px;display:grid}.reserveEventCardSpecRow{justify-content:space-between;align-items:center;gap:8px;display:flex}.reserveEventCardSpecLabel{color:var(--muted);font-weight:600}.reserveEventCardSpecValue{color:var(--text);text-align:right;font-weight:700}.reserveEventCardSpecValue--price,.reserveEventCardSpecValue--participants{color:var(--accent-dark)}.reserveEventCardDetailLink{border-top:1px solid var(--panel-border);min-height:44px;color:var(--accent-dark);justify-content:center;align-items:center;gap:6px;margin-top:2px;padding-top:10px;font-size:12px;font-weight:700;text-decoration:none;display:flex}.reserveEventCardDetailLink:hover,.reserveEventCardDetailLink:focus-visible{text-decoration:underline}.reserveEventCardDetailLink svg{flex-shrink:0;width:14px;height:14px}.reserveFormSection{border:1px solid var(--panel-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);background:#fff;flex-direction:column;gap:18px;padding:20px;display:flex}.reserveField{flex-direction:column;gap:6px;display:flex}.reserveFieldLabelRow{justify-content:space-between;align-items:center;gap:8px;display:flex}.reserveFieldLabel{color:var(--text);align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.reserveFieldLabelHint{color:var(--muted);font-size:10px}.reserveFieldBadge{white-space:nowrap;border:1px solid;border-radius:4px;flex-shrink:0;padding:1px 6px;font-size:10px;font-weight:800;line-height:1.4}.reserveFieldBadge--required{color:var(--error);background:#d4351c14;border-color:#d4351c52}.reserveFieldBadge--optional{color:var(--muted);background:#f1f5f9;border-color:#e2e8f0}.reserveFieldInput,.reserveFieldTextarea{border:1px solid var(--panel-border);border-radius:var(--radius-md);width:100%;font:inherit;color:var(--text);background:#fff;padding:12px 14px;font-size:14px}.reserveFieldTextarea{resize:vertical;font-size:12px;line-height:1.6}.reserveFieldInput:focus,.reserveFieldTextarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.reserveFieldHelp{color:var(--muted);margin:0;font-size:10px;line-height:1.6}.reserveFieldError,.ageError{color:#c0392b;margin:0;font-size:11px;font-weight:600;line-height:1.6}.reserveBirthdateGroup{border:0;min-inline-size:0;margin:0;padding:0}.reserveBirthdateRow{grid-template-columns:1.4fr 1fr 1fr;align-items:stretch;gap:8px;display:grid}.reserveBirthdateCell{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:#fff;align-items:center;gap:4px;min-width:0;padding:0 8px;transition:border-color .15s,box-shadow .15s;display:flex}.reserveBirthdateCell:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px #f6821e26}.reserveBirthdateInput{min-width:0;font:inherit;color:var(--text);text-align:center;background:0 0;border:0;outline:none;flex:1;padding:12px 0;font-size:16px}.reserveBirthdateInput:disabled{color:var(--muted)}.reserveBirthdateUnit{color:var(--muted);flex:none;font-size:13px}.reserveGenderGroup{border:0;grid-template-columns:repeat(3,1fr);gap:10px;margin:0;padding:0;display:grid}.reserveGenderGroup legend{display:none}.reserveGenderOption{cursor:pointer;position:relative}.reserveGenderOption input{opacity:0;pointer-events:none;position:absolute}.reserveGenderOptionCard{border:1px solid var(--panel-border);border-radius:var(--radius-md);color:var(--muted);background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:14px 8px;font-size:12px;font-weight:600;transition:border-color .15s,background-color .15s,box-shadow .15s,color .15s;display:flex}.reserveGenderOption input:checked+.reserveGenderOptionCard{border-color:var(--accent);color:var(--accent-dark);background:#f6821e0f;font-weight:800;box-shadow:0 0 0 3px #f6821e33}.reserveGenderOption input:focus-visible+.reserveGenderOptionCard{outline:2px solid var(--accent);outline-offset:2px}.reserveGenderIcon{width:22px;height:22px}.reserveGenderIcon--male{color:#3b82f6}.reserveGenderIcon--female{color:#ec4899}.reserveGenderIcon--no_answer{color:var(--muted)}.reserveRewardSection{flex-direction:column;gap:12px;display:flex}.reserveRewardIntro{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.reserveRewardGroup{border:0;flex-direction:column;gap:10px;margin:0;padding:0;display:flex}.reserveRewardGroup legend{display:none}.reserveRewardOption{cursor:pointer;display:block;position:relative}.reserveRewardOption input{opacity:0;pointer-events:none;position:absolute}.reserveRewardOptionCard{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:#fff;flex-direction:column;gap:6px;padding:14px 16px;transition:border-color .15s,background-color .15s,box-shadow .15s;display:flex}.reserveRewardOption input:checked+.reserveRewardOptionCard{border-color:var(--accent);background:#f6821e0f;box-shadow:0 0 0 3px #f6821e2e}.reserveRewardOption input:focus-visible+.reserveRewardOptionCard{outline:2px solid var(--accent);outline-offset:2px}.reserveRewardOptionMain{justify-content:space-between;align-items:center;gap:12px;display:flex}.reserveRewardOptionTitle{color:var(--text);align-items:center;gap:8px;font-size:14px;font-weight:700;display:inline-flex}.reserveRewardOptionAmount{color:var(--accent-dark);white-space:nowrap;font-size:14px;font-weight:800}.reserveRewardBadge{border-radius:4px;padding:1px 6px;font-size:10px;font-weight:800;line-height:1.4}.reserveRewardBadge--recommended{color:var(--accent-dark);background:#f6821e1f;border:1px solid #f6821e52}.reserveRewardUrgency{color:var(--error);font-size:11px;font-weight:700}.reserveRewardNudge{color:var(--muted);font-size:11px;line-height:1.5}.reserveRewardPointAmount{margin-top:2px}.reserveRewardIneligibleNotice{color:var(--muted);border:1px solid var(--panel-border);border-radius:var(--radius-md);background:#f9fafb;margin:0;padding:10px 12px;font-size:12px;line-height:1.6}.reservePrefillNotice{color:var(--text);border:1px solid var(--accent-soft);border-radius:var(--radius-md);background:var(--accent-soft);margin:0;padding:10px 12px;font-size:12px;line-height:1.6}.reservePrivacyConsent{border-radius:var(--radius-md);border:1px solid var(--panel-border);cursor:pointer;background:#fff;align-items:flex-start;gap:10px;padding:14px 16px;transition:background-color .15s,border-color .15s;display:flex}.reservePrivacyConsent input[type=checkbox]{accent-color:var(--accent);margin-top:3px}.reservePrivacyConsent--checked{background:#f6821e0a;border-color:#f6821e5c}.reservePrivacyConsentBody{color:var(--muted);font-size:12px;line-height:1.55}.reservePrivacyConsentBody strong{color:var(--text);font-weight:700}.reservePrivacyConsentBody small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.reserveSubmitButton{border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--accent)0%,#fcad41 100%);color:#fff;cursor:pointer;width:100%;box-shadow:var(--shadow-brand);border:0;justify-content:center;align-items:center;gap:6px;padding:14px 16px;font-size:14px;font-weight:800;transition:transform .1s,box-shadow .2s,opacity .2s;display:inline-flex}.reserveSubmitButton:hover{box-shadow:0 18px 44px #f6821e52}.reserveSubmitButton:active{transform:scale(.98)}.reserveSubmitButton:disabled,.reserveSubmitButton[aria-disabled=true]{color:var(--muted);cursor:not-allowed;box-shadow:none;background:#e2e8f0}.reserveSubmitHint{color:var(--muted);text-align:center;margin:8px 0 0;font-size:10px;font-weight:600}.reserveFormIntro{color:var(--text);background:var(--accent-soft);border:1px solid var(--panel-border);border-radius:var(--radius-md);margin:0;padding:12px 14px;font-size:12px;line-height:1.7}.reserveFormIntro strong{color:var(--accent)}.reserveCancelCourtesyHint{color:var(--muted);margin:0;font-size:11px;line-height:1.7}.reserveCancelCourtesyHint strong{color:var(--text);font-weight:700}.reserveStack{flex-direction:column;gap:18px;display:flex}.liffComingSoon{border:1px solid var(--panel-border);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow);background:#fff;flex-direction:column;align-items:center;gap:12px;margin-bottom:96px;padding:56px 24px;display:flex}.gachaLoadingState{justify-content:center;align-items:center;margin-bottom:96px;padding:96px 24px;display:flex}.gachaLoadingSpinner{border:4px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.9s linear infinite eventsLoadingRotate}.liffComingSoonIcon{font-size:56px;line-height:1}.liffComingSoonEyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--accent-dark);font-size:11px;font-weight:800}.liffComingSoonHeading{color:var(--text);margin:0;font-size:18px;font-weight:800}.liffComingSoonBody{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.liffComingSoonSubtle{color:var(--accent-dark);margin:4px 0 0;font-size:11px;font-weight:700}.walletShell{width:min(560px,100vw - 32px)}.walletPanel{margin-bottom:96px;padding-bottom:32px}.walletHeader{flex-direction:column;gap:4px;margin-bottom:16px;display:flex}.walletEyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--accent-dark);font-size:11px;font-weight:800}.walletTitle{color:var(--text);margin:0;font-size:22px;font-weight:800}.walletInfoText{color:var(--muted);margin:8px 0 0;font-size:13px}.walletTabs{border-radius:var(--radius-pill);background:var(--bg-soft);border:1px solid var(--panel-border);gap:4px;margin-bottom:16px;padding:4px;display:flex}.walletTab{border-radius:var(--radius-pill);color:var(--muted);cursor:pointer;background:0 0;border:0;flex:1;padding:9px 12px;font-size:13px;font-weight:800;transition:background .15s,color .15s}.walletTab:hover{color:var(--text)}.walletTab--active{color:var(--accent-dark);box-shadow:var(--shadow);background:#fff}.walletBalanceCard{border-radius:var(--radius-lg);background:var(--gradient-brand);color:#fff;box-shadow:var(--shadow-brand);flex-direction:column;gap:4px;padding:20px;display:flex}.walletBalanceAsOf{opacity:.85;font-size:11px;font-weight:700}.walletBalanceLabel{opacity:.95;font-size:13px;font-weight:700}.walletBalanceValue{letter-spacing:.01em;align-items:baseline;gap:6px;font-size:40px;font-weight:800;line-height:1.1;display:flex}.walletBalanceUnit{font-size:16px;font-weight:800}.walletBalanceExpiry{color:#fff;opacity:.95;align-items:center;gap:4px;margin-top:2px;font-size:12px;font-weight:700;display:inline-flex}.walletBalanceExpiryIcon{flex-shrink:0;width:14px;height:14px}.walletTicketRow{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffff2e;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;display:flex}.walletTicketIcon{font-size:18px;line-height:1}.walletTicketText{flex:1;font-size:13px;font-weight:700}.walletTicketCount{margin:0 2px 0 8px;font-size:18px;font-weight:800}.walletTicketExpiry{opacity:.9;margin-top:2px;font-size:11px;font-weight:600;display:block}.walletTicketLink{border-radius:var(--radius-pill);color:var(--accent-dark);background:#fff;flex-shrink:0;padding:6px 14px;font-size:12px;font-weight:800;text-decoration:none}.walletTicketLink:hover{background:var(--bg-soft)}.walletSection{margin-top:24px}.walletSection--flush{margin-top:0}.walletSectionHeading{align-items:center;gap:8px;margin-bottom:12px;display:flex}.walletSectionTitle{color:var(--text);margin:0;font-size:16px;font-weight:800}.walletSectionCount{border-radius:var(--radius-pill);background:var(--accent-soft);min-width:22px;color:var(--accent-dark);text-align:center;padding:1px 8px;font-size:12px;font-weight:800}.walletCouponList{gap:12px}.walletCoupon{border:1px solid var(--panel-border);border-radius:var(--radius-md);box-shadow:var(--shadow);background:#fff;align-items:stretch;gap:14px;padding:14px;display:flex}.walletCoupon--soon{border-color:#f6821e80}.walletCouponBadge{border-radius:var(--radius-sm);background:var(--accent-soft);width:84px;color:var(--accent-dark);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;display:flex}.walletCouponRate{font-size:30px;font-weight:800;line-height:1}.walletCouponRateUnit{letter-spacing:.04em;font-size:12px;font-weight:800}.walletCouponBody{flex-direction:column;justify-content:center;gap:6px;min-width:0;display:flex}.walletCouponTitle{color:var(--text);font-size:14px;font-weight:800}.walletCouponExpiry{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px;font-size:12px;font-weight:700;display:inline-flex}.walletCouponExpiry--soon{color:var(--warn)}.walletCouponExpiryIcon{width:14px;height:14px}.walletCouponSoonTag{border-radius:var(--radius-pill);background:var(--warn-soft);color:var(--warn);margin-left:2px;padding:1px 8px;font-size:11px;font-weight:800}.walletCouponCondition{color:var(--muted);font-size:11px}.walletPointList{gap:8px}.walletPointItem{border:1px solid var(--panel-border);border-radius:var(--radius-md);box-shadow:var(--shadow);background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.walletPointMain{flex-direction:column;gap:2px;min-width:0;display:flex}.walletPointReason{color:var(--text);font-size:14px;font-weight:800}.walletPointDate{color:var(--muted);font-size:11px;font-weight:700}.walletPointFigures{text-align:right;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:2px;display:flex}.walletPointAmount{align-items:baseline;gap:2px;font-size:16px;font-weight:800;line-height:1.1;display:inline-flex}.walletPointAmount--plus{color:var(--accent-dark)}.walletPointAmount--minus{color:var(--muted)}.walletPointAmountUnit{font-size:11px;font-weight:800}.walletPointBalance{color:var(--muted);font-size:11px;font-weight:700}.walletPointExpiry{color:var(--muted);align-items:center;gap:3px;margin-top:2px;font-size:11px;font-weight:700;display:inline-flex}.walletPointExpiry--expired{color:var(--warn)}.walletPointExpiryIcon{flex-shrink:0;width:12px;height:12px}.walletEmptyState{border:1px dashed var(--panel-border);border-radius:var(--radius-md);background:var(--bg-soft);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:32px 20px;display:flex}.walletEmptyState--compact{padding:20px 16px}.walletEmptyStateIcon{font-size:40px;line-height:1}.walletEmptyStateText{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.walletEmptyStateActions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:4px;display:flex}.walletPrimaryCta{border-radius:var(--radius-pill);background:var(--gradient-brand);color:#fff;box-shadow:var(--shadow-brand);padding:10px 20px;font-size:13px;font-weight:800;text-decoration:none}.walletSecondaryCta{border-radius:var(--radius-pill);border:1px solid var(--panel-border);color:var(--accent-dark);background:#fff;padding:10px 20px;font-size:13px;font-weight:800;text-decoration:none}.walletPrimaryCta:hover,.walletSecondaryCta:hover{filter:brightness(.98)}.walletSeeAll{color:var(--accent-dark);margin-left:auto;font-size:12px;font-weight:800;text-decoration:none}.walletSeeAll:hover{text-decoration:underline}.walletRecommendList{gap:10px}.walletRecommendItem{list-style:none}.walletRecommendCard{border:1px solid var(--panel-border);border-radius:var(--radius-md);box-shadow:var(--shadow);color:inherit;background:#fff;align-items:center;gap:12px;padding:10px;text-decoration:none;display:flex}.walletRecommendCard:hover{border-color:#f6821e66}.walletRecommendThumb,.walletRecommendThumbFallback{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:64px;height:64px}.walletRecommendThumbFallback{background:var(--bg-soft);justify-content:center;align-items:center;font-size:26px;display:flex}.walletRecommendBody{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.walletRecommendDate{color:var(--accent-dark);font-size:11px;font-weight:800}.walletRecommendTitle{color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:700;line-height:1.4;display:-webkit-box;overflow:hidden}.walletRecommendArea{color:var(--muted);font-size:11px}.walletRecommendChevron{width:16px;height:16px;color:var(--muted);flex-shrink:0}.gachaPreview{flex-direction:column;gap:20px;display:flex}.gachaShell{--gacha-action-offset:calc(72px + env(safe-area-inset-bottom))}.gachaPreview{padding-bottom:calc(80px + var(--gacha-action-offset,16px))}.gachaPreviewHeader{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.gachaPreviewEyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--accent-dark);background:var(--accent-soft);border-radius:var(--radius-pill);padding:4px 12px;font-size:11px;font-weight:800}.gachaPreviewTitle{color:var(--text);margin:0;font-size:24px;font-weight:800}.gachaPreviewSubtitle{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.gachaHolo{isolation:isolate;--holo-strength:.22;--holo-glitter:.16;position:relative;overflow:hidden}.gachaHolo>*{z-index:2;position:relative}.gachaHolo:before{content:"";z-index:0;pointer-events:none;mix-blend-mode:soft-light;opacity:var(--holo-strength);background-image:radial-gradient(#ffffffd9 1px,#fff0 1.6px),linear-gradient(115deg,#ff787880 0%,#ffd67880 18%,#84ffb280 36%,#78ceff80 54%,#c484ff80 72%,#ff787880 90%);background-position:0 0,0%;background-size:9px 9px,260% 260%;animation:3.2s steps(2,jump-none) infinite alternate gachaGlitter,8s linear infinite alternate gachaFoil;position:absolute;inset:0}.gachaHolo--shine{--holo-strength:.42;--holo-glitter:.24}.gachaHolo--shine:after{content:"";z-index:1;pointer-events:none;filter:blur(3px);background:linear-gradient(90deg,#fff0 0%,#fff9 50%,#fff0 100%);width:36%;height:160%;animation:5s ease-in-out infinite gachaGlare;position:absolute;top:-30%;left:0;transform:translate(-160%)rotate(8deg)}.gachaHeadlineCard.gachaHolo--shine:after{filter:none;background:linear-gradient(90deg,#fff0 0%,#ffffff73 50%,#fff0 100%);width:100%;height:100%;animation:3.5s ease-in-out infinite gachaHeadlineShine;top:0;left:-150%;transform:skew(-25deg)}@keyframes gachaHeadlineShine{0%{left:-150%}30%,to{left:150%}}.gachaPrizeCard--rare,.gachaHeadlineCard--rare,.gachaResultCard--rare{--holo-strength:.34}.gachaPrizeCard--epic,.gachaHeadlineCard--epic,.gachaResultCard--epic{--holo-strength:.46;--holo-glitter:.3}.gachaPrizeCard--legendary,.gachaHeadlineCard--legendary,.gachaResultCard--legendary{--holo-strength:.6;--holo-glitter:.42}@keyframes gachaFoil{0%{background-position:0 0,0%}to{background-position:18px 14px,100%}}@keyframes gachaGlitter{0%{opacity:calc(var(--holo-strength)*.6)}to{opacity:var(--holo-strength)}}@keyframes gachaGlare{0%{opacity:0;transform:translate(-160%)rotate(8deg)}12%{opacity:.5}42%{opacity:0}to{opacity:0;transform:translate(170%)rotate(8deg)}}@supports (animation-timeline:view()){.gachaHolo:before{animation:3.2s steps(2,jump-none) infinite alternate gachaGlitter,8s linear infinite alternate gachaFoil,linear both gachaFoilScroll;animation-timeline:auto,auto,view();animation-range:cover}@keyframes gachaFoilScroll{0%{background-position:0 0,0%}to{background-position:0 0,180%}}}.gachaTactile{transform:perspective(720px)rotateX(var(--tactile-rot-x,0deg))rotateY(var(--tactile-rot-y,0deg))scale(var(--tactile-press,1));will-change:transform;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s}.gachaTactileGlow{z-index:3;pointer-events:none;border-radius:inherit;background:radial-gradient(circle at var(--tactile-gx,50%)var(--tactile-gy,50%),#ffffff80,#fff0 45%);opacity:var(--tactile-glow,0);mix-blend-mode:soft-light;transition:opacity .22s;position:absolute;inset:0}.gachaHeadlineCard{border-radius:var(--radius-lg);background:var(--gradient-brand);color:#fff;box-shadow:var(--shadow-brand);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:28px 20px;display:flex;position:relative;overflow:hidden}.gachaHeadlineCardTrigger{cursor:pointer;background:0 0;border:none;width:100%;margin:0;padding:0;display:block}.gachaHeadlineCardTrigger:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:var(--radius-lg)}.gachaHeadlineEyebrow{letter-spacing:.16em;text-transform:uppercase;opacity:.92;font-size:11px;font-weight:800}.gachaHeadlineIcon{width:56px;height:56px}.gachaHeadlineIcon svg{width:100%;height:100%}.gachaHeadlineLabel{word-break:break-word;font-size:26px;font-weight:800;line-height:1.2}.gachaHeadlineHint{opacity:.92;font-size:12px;font-weight:700}.gachaHeadlineCard .gachaGradeBadge{position:absolute;top:14px;right:14px}.gachaHeadlineCard--legendary{background:linear-gradient(135deg,#f6a821 0%,#f6821e 100%)}.gachaHeadlineCard--epic{background:linear-gradient(135deg,#9446e0 0%,#6320b0 100%)}.gachaHeadlineCard--rare{background:linear-gradient(135deg,#59a3f6 0%,#2f6fd0 100%)}.gachaHeadlineCard--common{background:linear-gradient(135deg,#34d399 0%,#059669 100%)}.gachaHeadlineCard--minor{background:linear-gradient(135deg,#d98a4f 0%,#b45816 100%)}.gachaHeadlineCard--trivial{background:linear-gradient(135deg,#cbd5e1 0%,#94a3b8 100%)}.gachaLineupHeading{color:var(--text);margin:8px 0 0;font-size:15px;font-weight:800}.gachaPrizeGrid{grid-template-columns:repeat(2,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.gachaPrizeCard{background:linear-gradient(165deg,#fff 0%,color-mix(in srgb,var(--rarity-color,var(--accent))14%,#fff)100%);border:1px solid color-mix(in srgb,var(--rarity-color,var(--panel-border))30%,var(--panel-border));border-top:3px solid var(--rarity-color,var(--panel-border));border-radius:var(--radius-md);flex-direction:column;align-items:center;gap:8px;padding:20px 12px 16px;display:flex;position:relative;box-shadow:0 10px 22px #121a211a,inset 0 1px #ffffffe6}.gachaPrizeIcon{width:30px;height:30px;color:var(--rarity-color,var(--accent-dark))}.gachaPrizeIcon svg{width:100%;height:100%}.gachaPrizeLabel{color:var(--text);text-align:center;word-break:break-word;font-size:14px;font-weight:700}.gachaGradeBadge{border-radius:var(--radius-pill);letter-spacing:.04em;color:#fff;justify-content:center;align-items:center;min-width:30px;height:22px;padding:0 8px;font-size:12px;font-weight:800;display:inline-flex}.gachaPrizeCard .gachaGradeBadge{position:absolute;top:10px;left:10px}.gachaPrizeCard--legendary,.gachaResultCard--legendary{--rarity-color:#e0a008}.gachaPrizeCard--epic,.gachaResultCard--epic{--rarity-color:#9446e0}.gachaPrizeCard--rare,.gachaResultCard--rare{--rarity-color:#2f6fd0}.gachaPrizeCard--common,.gachaResultCard--common{--rarity-color:#059669}.gachaPrizeCard--minor,.gachaResultCard--minor{--rarity-color:#b45816}.gachaPrizeCard--trivial,.gachaResultCard--trivial{--rarity-color:#94a3b8}.gachaGradeBadge--legendary{color:#5b3d00;background:#f0b429}.gachaGradeBadge--epic{background:#9446e0}.gachaGradeBadge--rare{background:#2f6fd0}.gachaGradeBadge--common{background:#059669}.gachaGradeBadge--minor{background:#b45816}.gachaGradeBadge--trivial{background:#94a3b8}.gachaDrawButton{border-radius:var(--radius-pill);background:var(--gradient-brand);color:#fff;width:100%;max-width:320px;box-shadow:var(--shadow-brand);cursor:pointer;border:none;padding:16px 24px;font-size:16px;font-weight:800;transition:transform .12s cubic-bezier(.2,.8,.2,1),box-shadow .12s}.gachaDrawButton:not(:disabled):active{transform:scale(.97);box-shadow:0 6px 18px #f6821e47}.gachaDrawButton:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;filter:saturate(.7)}.gachaPreviewCtaNote{color:var(--accent-dark);text-align:center;margin:0;font-size:12px;font-weight:700}.gachaPreviewDisclaimer{color:var(--muted);text-align:center;margin:0;font-size:11px}.gachaRewardAppeal{flex-direction:column;gap:12px;display:flex}.gachaBenefitBlock{flex-direction:column;gap:6px;display:flex}.gachaRewardAppealTitle{color:var(--text);margin:0;font-size:14px;font-weight:800}.gachaRewardAppealLead{color:var(--muted);margin:0;font-size:12px}.gachaBenefitList{grid-template-columns:1fr 1fr;gap:10px;margin:4px 0 0;padding:0;list-style:none;display:grid}.gachaBenefitCard{border:1px solid var(--panel-border);border-radius:var(--radius-md);width:100%;font:inherit;text-align:left;cursor:pointer;background:#fff;align-items:flex-start;gap:10px;padding:12px;display:flex}.gachaBenefitCard:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.gachaBenefitIcon{border-radius:var(--radius-pill);background:var(--accent-soft);width:32px;height:32px;color:var(--accent-dark);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.gachaBenefitIcon svg{width:18px;height:18px}.gachaBenefitText{flex-direction:column;gap:3px;min-width:0;display:flex}.gachaBenefitName{color:var(--text);font-size:13px;font-weight:800}.gachaBenefitBody{color:var(--muted);font-size:12px;line-height:1.6}.gachaDailyAppeal{border-radius:var(--radius-md);border:1px solid var(--accent-soft);background:var(--accent-soft);align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.gachaDailyAppealIcon{flex-shrink:0;font-size:20px;line-height:1.2}.gachaDailyAppealText{flex-direction:column;gap:3px;min-width:0;display:flex}.gachaDailyAppealLead{color:var(--accent-dark);font-size:13px;font-weight:800}.gachaDailyAppealSub{color:var(--text);font-size:12px;line-height:1.6}.gachaDailyAppealStatus{border-radius:var(--radius-pill);color:var(--accent-dark);background:#fff;align-self:flex-start;margin-top:4px;padding:3px 10px;font-size:11px;font-weight:800}.gachaDailyAppeal--available{border-color:var(--accent)}.gachaDailyAppeal--done{border-color:var(--panel-border);background:var(--panel-soft,#f4f6f8)}.gachaDailyAppeal--done .gachaDailyAppealLead{color:var(--text)}.gachaDailyAppeal--done .gachaDailyAppealStatus{color:var(--muted)}@media (max-width:360px){.gachaBenefitList{grid-template-columns:1fr}}.gachaTicketStatus{border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-dark);cursor:pointer;border:none;align-self:center;align-items:baseline;gap:4px;margin:0;padding:6px 16px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.gachaTicketStatus:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.gachaTicketStatusIcon{align-self:center;font-size:15px}.gachaTicketStatusCount{margin:0 2px;font-size:20px;font-weight:800}.gachaWeeklyGuarantee{justify-content:center;display:flex}.gachaWeeklyGuaranteeProgress{border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-dark);align-items:baseline;gap:4px;margin:0;padding:6px 16px;font-size:12px;font-weight:700;display:inline-flex}.gachaWeeklyGuaranteeProgressCount{margin:0 2px;font-size:15px;font-weight:800}.gachaWeeklyGuaranteeThanks{border-radius:var(--radius-md);background:var(--accent-soft);color:var(--text);align-items:flex-start;gap:8px;margin:0;padding:12px 14px;font-size:13px;line-height:1.5;display:flex}.gachaWeeklyGuaranteeThanksIcon{font-size:18px}.gachaWeeklyGuaranteeThanksText strong{color:var(--accent-dark)}.gachaWeeklyGuaranteeThanksLink{color:var(--accent-dark);margin-top:4px;font-weight:700;text-decoration:underline;display:block}.gachaDrawError{color:var(--danger,#d23f3f);text-align:center;margin:0;font-size:12px;font-weight:700}.gachaActionBar{left:16px;right:16px;bottom:var(--gacha-action-offset,16px);z-index:30;border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(14px);border:1px solid var(--panel-border);background:#ffffffdb;flex-direction:column;gap:8px;max-width:1180px;margin:0 auto;padding:12px;display:flex;position:fixed;box-shadow:0 14px 36px #121a212e}.gachaActionRow{align-items:stretch;gap:10px;display:flex}.gachaActionRow .gachaDrawButton{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;width:auto;min-width:0;max-width:none;padding:12px 16px;line-height:1.2;display:flex;position:relative;overflow:hidden}.gachaDrawButtonLabel,.gachaDrawButtonCost{z-index:1;position:relative}.gachaDrawButtonLabel{font-size:16px;font-weight:800}.gachaDrawButtonCost{letter-spacing:.02em;white-space:nowrap;font-size:11px;font-weight:800}.gachaDrawButtonCost--free{border-radius:var(--radius-pill);color:var(--accent-dark);background:#fffffff2;padding:1px 10px}.gachaDrawButton:not(:disabled):after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000 0%,#ffffff26 38%,#ffffffb3 50%,#ffffff26 62%,#0000 100%);width:45%;height:140%;animation:3.6s ease-in-out infinite gachaCtaShine;position:absolute;top:-20%;left:0;transform:translate(-180%)skew(-18deg)}@keyframes gachaCtaShine{0%{transform:translate(-180%)skew(-18deg)}22%,to{transform:translate(320%)skew(-18deg)}}.gachaDrawButton--free{background:var(--gradient-gacha-free);box-shadow:var(--shadow-gacha-free),inset 0 0 0 1.5px #ffffff8c;background-size:220% 100%;animation:6s linear infinite gachaRainbowShift}.gachaDrawButton--free:before{content:"";pointer-events:none;background-image:radial-gradient(#ffffff80 1px,#0000 1.5px);background-size:8px 8px;position:absolute;inset:0}.gachaDrawButton--free .gachaDrawButtonLabel{text-shadow:0 1px 2px #3c087899,0 0 3px #781ed273}.gachaDrawButton--free:not(:disabled):active{box-shadow:0 6px 18px #a05adc57,inset 0 0 0 1.5px #ffffff8c}@keyframes gachaRainbowShift{0%{background-position:0%}to{background-position:220%}}@media (prefers-reduced-motion:reduce){.gachaDrawButton:not(:disabled):after{opacity:0;animation:none}.gachaDrawButton--free{animation:none}}.gachaDetailButton{border:1px solid var(--panel-border);border-radius:var(--radius-md);min-width:58px;color:var(--accent-dark);cursor:pointer;background:#fff;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:2px;padding:8px 12px;font-size:12px;font-weight:800;transition:transform .12s;display:inline-flex}.gachaDetailButtonIcon{font-size:16px;line-height:1}.gachaHelpButton{border:1px solid var(--panel-border);border-radius:var(--radius-md);width:48px;color:var(--accent-dark);cursor:pointer;background:#fff;flex-shrink:0;font-size:18px;font-weight:800;transition:transform .12s}.gachaDetailButton:active,.gachaHelpButton:active{transform:scale(.96)}.gachaActionBar--coach{z-index:60}.gachaActionBtn--coachActive{z-index:1;animation:1.5s ease-in-out infinite gachaCoachPulse;position:relative}@keyframes gachaCoachPulse{0%,to{box-shadow:0 0 0 3px var(--accent),0 0 0 6px #f6821e47}50%{box-shadow:0 0 0 3px var(--accent),0 0 0 13px #f6821e00}}.gachaLineupDialog{z-index:80;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.gachaLineupBackdrop{-webkit-backdrop-filter:blur(2px);cursor:pointer;background:#121a2180;border:none;margin:0;padding:0;position:absolute;inset:0}.gachaLineupPanel{z-index:1;background:var(--bg);border:1px solid var(--panel-border);border-radius:var(--radius-lg)var(--radius-lg)0 0;border-bottom:none;flex-direction:column;width:min(480px,100%);max-height:84vh;animation:.24s cubic-bezier(.2,.8,.2,1) gachaSheetUp;display:flex;position:relative;box-shadow:0 -14px 44px #121a213d}@keyframes gachaSheetUp{0%{opacity:.4;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.gachaLineupDialogHeader{justify-content:space-between;align-items:center;padding:16px 16px 8px;display:flex}.gachaLineupDialogTitle{color:var(--text);margin:0;font-size:18px;font-weight:800}.gachaLineupClose{border:1px solid var(--panel-border);width:36px;height:36px;color:var(--muted);cursor:pointer;background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;line-height:1;display:inline-flex}.gachaLineupScroll{-webkit-overflow-scrolling:touch;padding:8px 16px calc(20px + env(safe-area-inset-bottom));flex-direction:column;gap:16px;display:flex;overflow-y:auto}.gachaLineupScroll>*{flex-shrink:0}.gachaInfoDialog{z-index:80;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.gachaInfoBackdrop{-webkit-backdrop-filter:blur(2px);cursor:pointer;background:#121a2180;border:none;margin:0;padding:0;position:absolute;inset:0}.gachaInfoPanel{z-index:1;background:var(--bg);border:1px solid var(--panel-border);border-radius:var(--radius-lg)var(--radius-lg)0 0;border-bottom:none;flex-direction:column;width:min(480px,100%);max-height:84vh;animation:.24s cubic-bezier(.2,.8,.2,1) gachaSheetUp;display:flex;position:relative;box-shadow:0 -14px 44px #121a213d}.gachaInfoDialogHeader{justify-content:space-between;align-items:center;padding:16px 16px 8px;display:flex}.gachaInfoDialogTitle{color:var(--text);margin:0;font-size:18px;font-weight:800}.gachaInfoClose{border:1px solid var(--panel-border);width:36px;height:36px;color:var(--muted);cursor:pointer;background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;line-height:1;display:inline-flex}.gachaInfoScroll{-webkit-overflow-scrolling:touch;padding:8px 16px calc(20px + env(safe-area-inset-bottom));flex-direction:column;gap:12px;display:flex;overflow-y:auto}.gachaInfoFactList{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.gachaInfoFact{align-items:flex-start;gap:10px;display:flex}.gachaInfoFactIcon{flex-shrink:0;font-size:18px;line-height:1.4}.gachaInfoFactText{color:var(--text);font-size:13px;line-height:1.6}.gachaInfoDialogNote{border-top:1px solid var(--panel-border);color:var(--muted);margin:0;padding-top:8px;font-size:12px;line-height:1.6}.gachaCoach{z-index:55;position:fixed;inset:0}.gachaCoachBackdrop{cursor:pointer;background:#0a0e149e;border:none;margin:0;padding:0;position:absolute;inset:0}.gachaCoachCallout{z-index:70;border-radius:var(--radius-lg);background:#fff;flex-direction:column;gap:8px;width:min(420px,100vw - 32px);padding:18px;display:flex;position:fixed;top:max(24px,12vh);left:50%;transform:translate(-50%);box-shadow:0 18px 50px #0a0e1466}.gachaCoachStepIndicator{border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-dark);letter-spacing:.06em;align-self:flex-start;padding:3px 10px;font-size:11px;font-weight:800}.gachaCoachTitle{color:var(--text);margin:0;font-size:17px;font-weight:800}.gachaCoachBody{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.gachaCoachDots{gap:6px;margin:2px 0;display:flex}.gachaCoachDot{background:var(--panel-border);border-radius:50%;width:7px;height:7px}.gachaCoachDot--active{background:var(--accent)}.gachaCoachActions{justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.gachaCoachSkip{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:8px 4px;font-size:13px;font-weight:700}.gachaCoachNext{border-radius:var(--radius-pill);background:var(--gradient-brand);color:#fff;box-shadow:var(--shadow-brand);cursor:pointer;border:none;padding:10px 22px;font-size:14px;font-weight:800}@media (prefers-reduced-motion:reduce){.gachaActionBtn--coachActive{box-shadow:0 0 0 3px var(--accent),0 0 0 6px #f6821e47;animation:none}.gachaLineupPanel,.gachaInfoPanel{animation:none}}.gachaResultCard{border-radius:var(--radius-lg);background:linear-gradient(150deg,color-mix(in srgb,var(--rarity-color,var(--accent))72%,#211634)0%,color-mix(in srgb,var(--rarity-color,var(--accent))96%,#000)100%);color:#fff;box-shadow:0 18px 44px color-mix(in srgb,var(--rarity-color,var(--accent))38%,transparent),inset 0 1px 0 #fff6;text-align:center;flex-direction:column;align-items:center;gap:8px;padding:34px 22px;display:flex;position:relative}.gachaResultRays{z-index:0;pointer-events:none;opacity:.55;background:repeating-conic-gradient(#ffffff24 0deg 6deg,#fff0 6deg 18deg);animation:18s linear infinite gachaRays;position:absolute;inset:-40%}.gachaResultEyebrow{letter-spacing:.12em;text-shadow:0 1px 6px #00000040;font-size:13px;font-weight:800}.gachaResultIcon{filter:drop-shadow(0 2px 8px #0000004d);width:64px;height:64px}.gachaResultIcon svg{width:100%;height:100%}.gachaResultLabel{word-break:break-word;text-shadow:0 2px 10px #0000004d;font-size:30px;font-weight:800;line-height:1.2}.gachaResultSub{opacity:.92;font-size:13px;font-weight:700}@keyframes gachaRays{to{transform:rotate(360deg)}}.gachaTheater{z-index:100;color:#fff;background:radial-gradient(120% 90% at 50% 18%,#2a1a3e 0%,#160d24 55%,#0b0712 100%);flex-direction:column;justify-content:center;align-items:center;gap:24px;padding:24px;display:flex;position:fixed;inset:0;overflow:hidden}.gachaTheaterBg{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.gachaTheaterGlow{background:radial-gradient(circle,#f6a82166 0%,#f6821e29 38%,#f6821e00 70%);width:min(120vw,660px);height:min(120vw,660px);animation:3.2s ease-in-out infinite gachaTheaterPulse;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.gachaTheaterMotes{position:absolute;inset:0}.gachaTheaterMote{opacity:.7;filter:blur(.4px);border-radius:50%;width:7px;height:7px;animation:linear infinite gachaTheaterRise;position:absolute;bottom:-10px}.gachaTheaterCharging,.gachaTheaterResult,.gachaTheaterError{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:20px;width:100%;max-width:360px;display:flex;position:relative}.gachaTheaterRays{z-index:0;pointer-events:none;background:repeating-conic-gradient(#ffffff1a 0deg 5deg,#fff0 5deg 16deg);width:150vmax;height:150vmax;animation:16s linear infinite gachaRays;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gachaTheaterCapsule{z-index:1;border-radius:50%;width:128px;height:128px;animation:1.1s ease-in-out infinite gachaTheaterShake;position:relative;overflow:hidden;box-shadow:0 18px 50px #f6821e73,inset 0 2px 6px #fff6}.gachaTheaterCapsuleTop{background:linear-gradient(135deg,#f6a821,#f6821e);position:absolute;inset:0 0 50%}.gachaTheaterCapsuleBottom{background:linear-gradient(135deg,#fff4e0,#ffd9a8);position:absolute;inset:50% 0 0}.gachaTheaterCapsuleShine{background:radial-gradient(circle,#ffffffe6,#fff0 70%);border-radius:50%;width:30px;height:30px;position:absolute;top:14px;left:22px}.gachaTheaterStatus{z-index:1;letter-spacing:.14em;text-shadow:0 2px 10px #0006;margin:0;font-size:15px;font-weight:800;position:relative}.gachaTheaterPillar{z-index:0;pointer-events:none;filter:blur(8px);background:linear-gradient(#ffeec800 0%,#ffeec880 50%,#ffeec800 100%);width:220px;height:150vmax;animation:2.4s ease-in-out infinite gachaTheaterPillar;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gachaTheaterConfetti{z-index:2;pointer-events:none;position:absolute;inset:0;overflow:hidden}.gachaTheaterConfettiPiece{width:9px;height:14px;transform:rotate(var(--gacha-confetti-rotate,0deg));border-radius:2px;animation:linear forwards gachaTheaterConfettiFall;position:absolute;top:-16px}.gachaTheaterLegendBanner{z-index:3;border-radius:var(--radius-pill);color:#5b3d00;letter-spacing:.08em;background:linear-gradient(135deg,#f6a821,#f6821e);padding:6px 18px;font-size:14px;font-weight:800;position:relative;box-shadow:0 8px 24px #f6821e80}.gachaTheaterCardReveal{z-index:3;perspective:1000px;width:100%;max-width:300px;position:relative}.gachaTheaterCardReveal--animate{animation:.7s cubic-bezier(.2,.8,.2,1) both gachaTheaterReveal}.gachaTheaterClose{z-index:3;border-radius:var(--radius-pill);color:#fff;-webkit-backdrop-filter:blur(6px);cursor:pointer;background:#ffffff29;border:none;width:100%;max-width:300px;padding:14px 24px;font-size:15px;font-weight:800;transition:transform .12s,background .12s;position:relative}.gachaTheaterClose:active{background:#ffffff3d;transform:scale(.97)}.gachaTheaterRetry{z-index:3;border-radius:var(--radius-pill);color:#3c2600;cursor:pointer;background:linear-gradient(135deg,#f6a821,#f6821e);border:none;width:100%;max-width:300px;padding:14px 24px;font-size:15px;font-weight:800;transition:transform .12s;position:relative}.gachaTheaterRetry:active{transform:scale(.97)}.gachaTheaterResult--ten{width:100%}.gachaTenPanel{z-index:3;border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(10px);text-align:center;background:#ffffff1f;flex-direction:column;gap:10px;width:min(100%,420px);max-height:min(72dvh,640px);padding:22px 16px;display:flex;position:relative;overflow-y:auto;box-shadow:0 18px 44px #00000059,inset 0 1px #ffffff40}.gachaTenTitle{letter-spacing:.06em;margin:0;font-size:18px;font-weight:800}.gachaTenEyebrow{opacity:.9;margin:0;font-size:13px;font-weight:700}.gachaTenGrid{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.gachaResultCard.gachaTenCard{border-radius:var(--radius-md);flex:0 0 calc(33.3333% - 6.66667px);gap:4px;padding:14px 6px;overflow:hidden}.gachaTenCard .gachaGradeBadge{font-size:11px}.gachaTenCardIcon{filter:drop-shadow(0 2px 6px #0000004d);width:34px;height:34px}.gachaTenCardIcon svg{width:100%;height:100%}.gachaTenCardLabel{word-break:break-word;text-shadow:0 1px 6px #0000004d;font-size:14px;font-weight:800;line-height:1.2}.gachaTenTotal{margin:4px 0 0;font-size:14px;font-weight:700}.gachaTenTotal strong{font-size:20px;font-weight:800}.gachaDrawCountPicker{z-index:110;-webkit-backdrop-filter:blur(4px);background:#0b0712b8;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.gachaDrawCountPanel{border-radius:var(--radius-lg);color:#fff;text-align:center;background:linear-gradient(160deg,#2a1a3e 0%,#1a0f2c 100%);flex-direction:column;gap:14px;width:min(100%,340px);padding:24px 20px;display:flex;box-shadow:0 18px 44px #00000073}.gachaDrawCountTitle{margin:0;font-size:17px;font-weight:800}.gachaDrawCountNote{opacity:.85;margin:0;font-size:13px}.gachaDrawCountActions{gap:10px;display:flex}.gachaDrawCountButton{border-radius:var(--radius-md);color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff3d;flex-direction:column;flex:1;gap:4px;padding:14px 10px;font-size:15px;font-weight:800;transition:transform .12s,background .12s;display:flex}.gachaDrawCountButton:active{transform:scale(.97)}.gachaDrawCountButton--ten{color:#3c2600;background:linear-gradient(135deg,#f6a821,#f6821e);border-color:#0000;box-shadow:0 10px 24px #f6821e66}.gachaDrawCountCost{opacity:.85;font-size:11px;font-weight:700}.gachaDrawCountCancel{border-radius:var(--radius-pill);color:#ffffffbf;cursor:pointer;background:0 0;border:none;padding:10px;font-size:13px;font-weight:700}.gachaTheaterErrorIcon{font-size:40px}.gachaTheaterErrorText{margin:0;font-size:15px;font-weight:700}@keyframes gachaTheaterPulse{0%,to{opacity:.7;transform:translate(-50%,-50%)scale(.94)}50%{opacity:1;transform:translate(-50%,-50%)scale(1.06)}}@keyframes gachaTheaterRise{0%{opacity:0;transform:translateY(0)}10%{opacity:.8}to{opacity:0;transform:translateY(-100vh)}}@keyframes gachaTheaterShake{0%,to{transform:rotate(-7deg)translateY(0)}50%{transform:rotate(7deg)translateY(-6px)}}@keyframes gachaTheaterPillar{0%,to{opacity:.5;transform:translate(-50%,-50%)scaleX(.8)}50%{opacity:.9;transform:translate(-50%,-50%)scaleX(1.1)}}@keyframes gachaTheaterConfettiFall{0%{transform:translateY(0)rotate(var(--gacha-confetti-rotate,0deg));opacity:1}to{transform:translateY(108vh)translateX(var(--gacha-confetti-drift,0))rotate(calc(var(--gacha-confetti-rotate,0deg) + 540deg));opacity:.9}}@keyframes gachaTheaterReveal{0%{opacity:0;transform:rotateY(90deg)scale(.8)}60%{opacity:1}to{opacity:1;transform:rotateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.gachaHolo:before,.gachaHolo--shine:after,.gachaResultRays,.gachaTheaterGlow,.gachaTheaterMote,.gachaTheaterRays,.gachaTheaterCapsule,.gachaTheaterPillar,.gachaTheaterConfettiPiece,.gachaTheaterCardReveal--animate{animation:none}.gachaHolo--shine:after{opacity:.25;transform:translate(0)rotate(8deg)}.gachaHeadlineCard.gachaHolo--shine:after{opacity:.25;animation:none;left:0;transform:skew(-25deg)}.gachaTactile{transform:scale(var(--tactile-press,1))}}@media (max-width:340px){.gachaPrizeGrid{grid-template-columns:1fr}}@media (min-width:560px){.gachaPrizeGrid{grid-template-columns:repeat(3,1fr)}}.liffBottomNav{z-index:50;-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--panel-border);background:#fffffff2;position:fixed;bottom:0;left:0;right:0}.liffBottomNavInner{max-width:min(480px,100vw);padding:8px 4px calc(8px + env(safe-area-inset-bottom));justify-content:space-around;margin:0 auto;display:flex}.liffBottomNavItem{color:#94a3b8;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;padding:6px 4px;font-size:10px;font-weight:700;text-decoration:none;transition:color .15s;display:flex;position:relative}.liffBottomNavItem svg{width:22px;height:22px}.liffBottomNavItem:hover{color:var(--accent)}.liffBottomNavItem--active{color:var(--accent-dark)}.liffBottomNavItem--line{color:var(--ok-dark)}.liffBottomNavItem--line:hover{color:#047857}.liffBottomNavItem--line.liffBottomNavItem--active{color:var(--ok-dark)}.liffBottomNavPing{pointer-events:none;width:9px;height:9px;position:absolute;top:4px;left:50%;transform:translate(7px)}.liffBottomNavPingRing,.liffBottomNavPingDot{background:var(--accent);border-radius:9999px;position:absolute;inset:0}.liffBottomNavPingRing{opacity:.75;animation:1.1s cubic-bezier(0,0,.2,1) infinite liffBottomNavPing}.liffBottomNavPingDot{box-shadow:0 0 0 2px #fffffff2}@keyframes liffBottomNavPing{75%,to{opacity:0;transform:scale(2.4)}}@media (prefers-reduced-motion:reduce){.liffBottomNavPingRing{opacity:0;animation:none}}.liffBottomNavSrOnly{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.cancelPolicyAgree{border:1px solid var(--panel-border);border-radius:var(--radius-md);color:var(--text);cursor:pointer;background:#fff;align-items:flex-start;gap:10px;padding:10px 12px;font-size:12px;line-height:1.55;display:flex}.cancelPolicyAgree input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent);flex-shrink:0;margin-top:2px;padding:0}.cancelPolicyAgreeLink{color:var(--accent-dark);font-weight:700;text-decoration:underline}.adminShell{background:radial-gradient(1200px 480px at 100% -10%,#f6821e0f,transparent 60%),var(--bg);min-height:100vh;display:flex}.ownerLoginPage{background:radial-gradient(1200px 480px at 100% -10%,#f6821e0f,transparent 60%),var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.ownerLoginCard{width:100%;max-width:360px}.ownerLoginCard h1{margin:0;font-size:20px;font-weight:800}.ownerLoginCard p{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.ownerLoginCard .adminButton{width:100%}.adminSkipLink{z-index:90;border-radius:var(--radius-pill);background:var(--accent-dark);color:#fff;box-shadow:var(--shadow-brand);padding:10px 16px;font-size:13px;font-weight:700;text-decoration:none;transition:transform .16s;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.adminSkipLink:focus,.adminSkipLink:focus-visible{outline-offset:2px;outline:2px solid #fff;transform:translateY(0)}.adminMobileBar,.adminNavBackdrop{display:none}.adminSidebar{background:var(--panel);border-right:1px solid var(--panel-border);flex-shrink:0;align-self:flex-start;width:248px;height:100vh;padding:22px 16px;position:sticky;top:0;overflow-y:auto;box-shadow:0 0 40px #121a210a}.adminBrand{border-bottom:1px solid var(--panel-border);align-items:center;gap:10px;margin-bottom:8px;padding:4px 8px 18px;display:flex}.adminBrandMark{background:var(--gradient-brand);color:#fff;width:36px;height:36px;box-shadow:var(--shadow-brand);border-radius:11px;flex-shrink:0;place-items:center;font-size:18px;font-weight:800;display:grid}.adminBrandText{flex-direction:column;min-width:0;line-height:1.2;display:flex}.adminBrandName{letter-spacing:-.01em;color:var(--text);font-size:15px;font-weight:800}.adminBrandTag{letter-spacing:.08em;text-transform:uppercase;color:var(--accent-dark);font-size:10px;font-weight:700}.adminNavSection{margin-bottom:18px}.adminNavLabel{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;padding:0 10px;font-size:10px;font-weight:800;display:block}.adminNavList{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.adminNavLink{color:var(--text);border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:9px 10px;font-size:13.5px;font-weight:600;text-decoration:none;transition:background-color .14s,color .14s,border-color .14s;display:flex}.adminNavLink:hover{background:var(--bg-soft);color:var(--accent-dark)}.adminNavLink[aria-current=page]{background:var(--accent-soft);color:var(--accent-dark);border-color:#f6821e3d;font-weight:800}.adminNavLink svg{opacity:.85;flex-shrink:0;width:17px;height:17px}.adminNavFooter{border-top:1px solid var(--panel-border);justify-content:space-between;align-items:center;gap:8px;margin-top:12px;padding:14px 10px 4px;display:flex}.adminNavFooterUser{min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.adminMain{flex:1;min-width:0;padding:32px clamp(16px,4vw,44px) 72px}.adminContent{flex-direction:column;gap:24px;width:100%;max-width:1040px;margin:0 auto;display:flex}.adminContent--narrow{max-width:720px}.adminContent--wide{max-width:1180px}.adminPageHead{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.adminPageHeadMain{flex-direction:column;gap:6px;min-width:0;display:flex}.adminEyebrow{letter-spacing:.12em;text-transform:uppercase;width:fit-content;color:var(--accent-dark);align-items:center;gap:6px;font-size:11px;font-weight:800;display:inline-flex}.adminPageHead h1{letter-spacing:-.02em;color:var(--text);margin:0;font-size:26px;font-weight:800;line-height:1.25}.adminLede{max-width:70ch;color:var(--muted);margin:0;font-size:14px;line-height:1.7}.adminHeadActions{flex-wrap:wrap;gap:10px;display:flex}.adminLastUpdated{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:6px;margin:0;font-size:12px;line-height:1.5;display:inline-flex}.adminLastUpdatedLabel{letter-spacing:.02em;font-weight:700}.adminLastUpdatedLabel:after{content:":";margin-left:1px}.adminLastUpdatedValue{color:var(--text);font-variant-numeric:tabular-nums}.adminLastUpdatedNote{color:var(--muted)}.adminCard{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);flex-direction:column;gap:18px;padding:22px 24px;display:flex}.adminCardHead{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.adminCardTitle{color:var(--text);align-items:center;gap:10px;margin:0;font-size:17px;font-weight:800;display:flex}.adminCardCount{border-radius:var(--radius-pill);background:var(--accent-soft);min-width:24px;height:22px;color:var(--accent-dark);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 8px;font-size:12px;font-weight:800;display:inline-flex}.adminCardSub{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.adminCardSubTitle{color:var(--text);margin:0;font-size:14px;font-weight:800}.adminTabPanel{flex-direction:column;gap:14px;display:flex}.adminStatGrid{grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:14px;display:grid}.adminStat{border-radius:var(--radius-md);background:linear-gradient(150deg,#fff,var(--bg-soft));border:1px solid var(--panel-border);flex-direction:column;gap:6px;padding:18px;display:flex}.adminStatLabel{color:var(--muted);align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.adminStatLabel svg{width:15px;height:15px;color:var(--accent)}.adminStatValue{letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums;font-size:28px;font-weight:800;line-height:1.1}.adminStatUnit{color:var(--muted);margin-left:3px;font-size:13px;font-weight:700}.adminStat--accent{background:var(--gradient-brand);box-shadow:var(--shadow-brand);border-color:#0000}.adminStat--accent .adminStatLabel,.adminStat--accent .adminStatValue,.adminStat--accent .adminStatUnit,.adminStat--accent .adminStatLabel svg{color:#fff}.ownerHomeAction{text-decoration:none;transition:transform .12s,box-shadow .12s,border-color .12s}.ownerHomeAction:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.ownerHomeAction.adminStat--accent:hover{box-shadow:var(--shadow-brand)}.adminStat--accent .adminMeta{color:#ffffffe6}.ownerGuideKicker{border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-dark);letter-spacing:.06em;align-items:center;padding:2px 8px;font-size:11px;font-weight:800;display:inline-flex}.ownerGuideIntro{color:var(--muted);flex-direction:column;gap:8px;margin:0;padding-left:20px;font-size:14px;line-height:1.7;display:flex}.ownerGuideIntro strong{color:var(--text)}.ownerGuideRhythm{counter-reset:guide-phase;flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.ownerGuidePhase{counter-increment:guide-phase;border:1px solid var(--panel-border);border-radius:var(--radius-md);background:var(--bg-soft);padding:14px 16px 14px 48px;position:relative}.ownerGuidePhase:before{content:counter(guide-phase);border-radius:var(--radius-pill);background:var(--gradient-brand);color:#fff;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;font-weight:800;display:inline-flex;position:absolute;top:14px;left:14px}.ownerGuidePhaseHead{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.ownerGuidePhaseWhen{color:var(--text);font-size:15px;font-weight:800}.ownerGuidePhaseGoal{color:var(--accent-dark);font-size:12px;font-weight:700}.ownerGuidePhaseBody{color:var(--muted);margin:6px 0 10px;font-size:14px;line-height:1.7}.ownerGuideLinks{flex-wrap:wrap;gap:8px;display:flex}.ownerGuideChip{border-radius:var(--radius-pill);border:1px solid var(--panel-border);background:var(--panel);min-height:32px;color:var(--accent-dark);align-items:center;padding:6px 14px;font-size:13px;font-weight:700;text-decoration:none;transition:border-color .12s,background .12s;display:inline-flex}.ownerGuideChip:hover{border-color:var(--accent);background:var(--accent-soft)}.ownerGuidePrinciples{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.ownerGuidePrinciple{align-items:flex-start;gap:12px;display:flex}.ownerGuidePrinciple--caution{border-radius:var(--radius-md);background:var(--warn-soft);border:1px solid var(--panel-border);border-left:3px solid var(--warn);padding:12px 14px}.ownerGuidePrincipleMark{border-radius:var(--radius-pill);background:var(--ok-soft);width:26px;height:26px;color:var(--ok-dark);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ownerGuidePrinciple--caution .ownerGuidePrincipleMark{color:var(--warn);background:#b85a2929}.ownerGuidePrincipleMark svg{width:16px;height:16px}.ownerGuidePrincipleTitle{color:var(--text);margin:0 0 2px;font-size:14px;font-weight:800}.ownerGuidePrincipleTag{border-radius:var(--radius-pill);background:var(--warn);color:#fff;letter-spacing:.04em;vertical-align:middle;align-items:center;margin-right:6px;padding:1px 7px;font-size:10px;font-weight:800;display:inline-flex}.ownerGuidePrincipleBody{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.ownerGuideEscalation{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.ownerGuideEscalationStep{color:var(--text);margin:0 0 2px;font-size:14px;font-weight:800}.ownerGuideEscalationBody{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.ownerGuideLede{color:var(--muted);margin:0 0 14px;font-size:14px;line-height:1.7}.ownerGuideLede strong{color:var(--text);font-weight:800}.ownerGuideSubhead{color:var(--text);margin:18px 0 10px;font-size:13px;font-weight:800}.ownerGuideSubhead:first-of-type{margin-top:4px}.ownerGuideBenefits{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.ownerGuideBenefit{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:var(--panel);padding:12px 14px}.ownerGuideBenefitTitle{color:var(--text);margin:0 0 4px;font-size:14px;font-weight:800}.ownerGuideBenefitBody{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.ownerGuideMethod{color:var(--text);margin:12px 0 6px;font-size:13px;font-weight:800}.ownerGuidePre{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:var(--panel);color:var(--text);margin:0 0 6px;padding:12px 14px;font-family:SFMono-Regular,JetBrains Mono,monospace;font-size:12px;line-height:1.6;overflow-x:auto}.ownerGuidePre code{font:inherit;white-space:pre}.ownerGuideCode{border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:var(--panel);color:var(--accent-dark);white-space:nowrap;padding:1px 6px;font-family:SFMono-Regular,JetBrains Mono,monospace;font-size:.9em}.specFlow{counter-reset:spec-flow-step;flex-wrap:wrap;align-items:stretch;gap:20px;margin:0;padding:0;list-style:none;display:flex}.specFlowStep{counter-increment:spec-flow-step;border:1px solid var(--panel-border);border-radius:var(--radius-md);background:var(--bg-soft);flex:180px;padding:16px 14px 14px 44px;position:relative}.specFlowStep:before{content:counter(spec-flow-step);border-radius:var(--radius-pill);background:var(--gradient-brand);color:#fff;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:800;display:inline-flex;position:absolute;top:14px;left:14px}.specFlowStep:not(:last-child):after{content:"→";color:var(--accent);z-index:1;font-size:18px;font-weight:800;position:absolute;top:50%;left:calc(100% + 10px);transform:translate(-50%,-50%)}.specFlowStepTitle{color:var(--text);margin:0 0 4px;font-size:14px;font-weight:800}.specFlowStepBody{color:var(--muted);margin:0;font-size:13px;line-height:1.7}@media (max-width:880px){.specFlow{flex-direction:column}.specFlowStep:not(:last-child):after{content:"↓";top:calc(100% + 10px);left:50%;transform:translate(-50%,-50%)}}.specFactGrid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-top:14px;display:grid}.specFact{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:var(--panel);padding:12px 14px}.specFactLabel{color:var(--muted);margin-bottom:4px;font-size:12px;display:block}.specFactValue{color:var(--text);font-size:15px;font-weight:800;display:block}.specTableCaption{caption-side:top;text-align:left;padding:10px 14px 0}.adminTableWrap{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:#fff;overflow-x:auto}.adminPager{justify-content:flex-end;align-items:center;gap:12px;margin-top:12px;display:flex}.adminPagerStatus{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px}.adminTable{border-collapse:collapse;width:100%;min-width:640px;font-size:13.5px}.adminTable thead th{background:var(--bg-soft);border-bottom:1px solid var(--panel-border);text-align:left;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);white-space:nowrap;padding:11px 14px;font-size:11px;font-weight:800;position:sticky;top:0}.adminTableSortButton{font:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;margin:0;padding:0;display:inline-flex}.adminTableSortButton:hover,.adminTableSortButton:focus-visible{color:var(--text)}th[aria-sort=ascending] .adminTableSortButton,th[aria-sort=descending] .adminTableSortButton{color:var(--accent)}.adminTable tbody td{color:var(--text);vertical-align:middle;border-bottom:1px solid #f3ece2;padding:12px 14px}.adminTableEllipsisCell{white-space:nowrap;text-overflow:ellipsis;max-width:220px;display:block;overflow:hidden}.adminTable tbody tr:last-child td{border-bottom:none}.adminTable tbody tr{transition:background-color .12s}.adminTable tbody tr:hover{background:var(--bg-soft)}.adminTable .is-num{text-align:right;font-variant-numeric:tabular-nums}.adminTable .is-mono{color:var(--muted);font-family:SFMono-Regular,JetBrains Mono,monospace;font-size:12px}.adminTabs{border-bottom:1px solid var(--panel-border);gap:4px;display:flex}.adminTab{border-radius:var(--radius-sm)var(--radius-sm)0 0;color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;margin-bottom:-1px;padding:10px 16px;font-size:14px;font-weight:700;transition:color .12s,border-color .12s,background-color .12s;display:inline-flex}.adminTab:hover{color:var(--text);background:var(--bg-soft)}.adminTab[aria-selected=true]{color:var(--accent-dark);border-bottom-color:var(--accent)}.adminTabCount{border-radius:var(--radius-pill);background:var(--bg-soft);min-width:22px;height:20px;color:var(--muted);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 7px;font-size:11.5px;font-weight:800;display:inline-flex}.adminTab[aria-selected=true] .adminTabCount{background:var(--accent-soft);color:var(--accent-dark)}.adminToolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.adminSearch{border:1px solid var(--panel-border);border-radius:var(--radius-md);min-width:200px;max-width:360px;color:var(--text);background:#fff;flex:1;padding:9px 12px;font-size:13.5px}.adminSearch:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.adminEventMeta{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.adminOccupancy{flex-direction:column;gap:5px;min-width:132px;display:flex}.adminOccupancyTop{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.adminOccupancyCount{color:var(--text);font-variant-numeric:tabular-nums;font-size:13.5px;font-weight:700}.adminOccupancyRemaining{color:var(--muted);font-size:11.5px;font-weight:700}.adminOccupancyRemaining.is-full{color:var(--accent-dark)}.adminOccupancyBar{border-radius:var(--radius-pill);background:var(--bg-soft);height:6px;overflow:hidden}.adminOccupancyFill{border-radius:inherit;background:var(--gradient-brand);height:100%;transition:width .2s}.adminOccupancyNote{color:var(--muted);margin-left:4px;font-size:11.5px}.adminKeyValue{border-collapse:collapse;width:100%;font-size:14px}.adminKeyValue th{text-align:left;vertical-align:top;letter-spacing:.02em;width:200px;color:var(--muted);background:var(--bg-soft);border-bottom:1px solid #f3ece2;padding:13px 16px;font-size:12px;font-weight:700}.adminKeyValue td{color:var(--text);vertical-align:top;word-break:break-word;border-bottom:1px solid #f3ece2;padding:13px 16px}.adminKeyValue tr:last-child th,.adminKeyValue tr:last-child td{border-bottom:none}.adminBadge{border-radius:var(--radius-pill);letter-spacing:.02em;white-space:nowrap;border:1px solid;align-items:center;gap:5px;padding:3px 10px;font-size:11px;font-weight:800;display:inline-flex}.adminBadge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.adminBadge--reserved{color:var(--status-reserved);border-color:var(--status-reserved-border);background:var(--status-reserved-bg)}.adminBadge--attended{color:var(--status-attended);border-color:var(--status-attended-border);background:var(--status-attended-bg)}.adminBadge--provisional{color:var(--status-provisional);border-color:var(--status-provisional-border);background:var(--status-provisional-bg)}.adminBadge--cancelled{color:var(--status-cancelled);border-color:var(--status-cancelled-border);background:var(--status-cancelled-bg)}.adminBadge--no_show{color:var(--status-no-show);border-color:var(--status-no-show-border);background:var(--status-no-show-bg)}.adminBadge--ok{color:var(--ok-dark);background:var(--ok-soft);border-color:#06c7754d}.adminBadge--warn{color:var(--warn);background:var(--warn-soft);border-color:#b85a2947}.adminBadge--danger{color:var(--error);background:var(--error-soft);border-color:#d4351c47}.adminBadge--neutral{color:var(--muted);border-color:var(--panel-border);background:#f5f0e9}.adminBadge--accent{color:var(--accent-dark);background:var(--accent-soft);border-color:#f6821e47}.adminState{text-align:center;background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:56px 24px;display:flex}.adminSpinner{border:4px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;width:34px;height:34px;animation:.9s linear infinite eventsLoadingRotate}.adminStateIcon{background:var(--bg-soft);width:60px;height:60px;color:var(--accent);border-radius:50%;place-items:center;display:grid}.adminStateIcon svg{width:30px;height:30px}.adminStateTitle{color:var(--text);margin:0;font-size:15px;font-weight:800}.adminStateBody{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.adminStateAction{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:2px;display:flex}.adminCopyInline{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.adminAlert{border-radius:var(--radius-md);background:var(--error-soft);color:#781d12;border:1px solid #d4351c47;align-items:flex-start;gap:12px;padding:16px 18px;font-size:14px;line-height:1.6;display:flex}.adminAlert svg{flex-shrink:0;width:20px;height:20px;margin-top:1px}.adminAlert--warn{background:var(--warn-soft);color:var(--warn);border-color:#b85a2947}.adminNotice{border-radius:var(--radius-md);border:1px solid;align-items:flex-start;gap:10px;padding:14px 16px;font-size:14px;line-height:1.6;display:flex}.adminNotice svg{flex-shrink:0;width:18px;height:18px;margin-top:1px}.adminNotice--success{background:var(--ok-soft);color:#045230;border-color:#06c77552}.adminNotice--error{background:var(--error-soft);color:#781d12;border-color:#d4351c52}.adminNotice--info{color:#2b3a55;background:#f1f5fb;border-color:#c7d6ee}.adminNotice--info strong{font-weight:700}.adminNotice--warning{background:var(--warn-soft);color:var(--warn);border-color:#b85a2947;flex-direction:column}.adminNotice--warning ul{flex-direction:column;gap:6px;margin:6px 0 0;padding-left:18px;display:flex}.adminPageHeadAside{align-items:center;gap:8px;display:flex}.adminList{flex-direction:column;gap:10px;margin:12px 0 0;padding:0;list-style:none;display:flex}.adminList ul{color:var(--muted);flex-direction:column;gap:4px;margin:4px 0 0;padding-left:18px;display:flex}.adminListHead{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.adminTimeline{flex-direction:column;gap:16px;margin-top:12px;display:flex}.adminTimelineDay{flex-direction:column;gap:6px;display:flex}.adminTimelineDate{color:var(--text);border-bottom:1px solid var(--panel-border);margin:0;padding-bottom:4px;font-size:13px;font-weight:800}.adminTimelineRow{border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 8px;display:flex}.adminTimelineRow.is-concurrent{background:var(--error-soft)}.adminConfirm{border-radius:var(--radius-md);background:var(--error-soft);border:1px solid #d4351c52;flex-direction:column;gap:14px;padding:16px;display:flex}.adminConfirm h2{color:#781d12;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:800;display:flex}.adminConfirm h2 svg{flex-shrink:0;width:18px;height:18px}.adminConfirmList{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;font-size:14px;line-height:1.6;display:grid}.adminConfirmList dt{color:var(--muted);font-weight:700}.adminConfirmList dd{color:var(--text);word-break:break-all;margin:0}.adminConfirmWarning{color:#781d12;margin:0;font-weight:700}.adminConfirmActions{flex-wrap:wrap;gap:10px;display:flex}.adminConfirmProfile{border:1px solid var(--panel-border);background:var(--bg-soft);border-radius:10px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.adminConfirmAck{cursor:pointer;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.6;display:flex}.adminConfirmAck input{flex-shrink:0;margin-top:3px}.adminConfirm--review{border-color:var(--panel-border);background:var(--bg-soft)}.adminConfirm--review h2,.adminConfirm--review .adminConfirmWarning{color:var(--text)}.adminConfirmPre{white-space:pre-wrap}.coachLaunch{z-index:75;border:1px solid var(--panel-border);border-radius:var(--radius-pill);background:var(--panel);color:var(--accent-dark);font:inherit;cursor:pointer;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);align-items:center;gap:7px;padding:9px 14px;font-size:13px;font-weight:800;transition:transform .1s,border-color .12s,color .12s;display:inline-flex;position:fixed;bottom:16px;right:16px}.coachLaunch:hover{border-color:var(--accent);color:var(--accent)}.coachLaunch:active{transform:scale(.97)}.coachLaunch svg{flex-shrink:0;width:18px;height:18px}.coachOverlay{z-index:120;position:fixed;inset:0}.coachBackdrop{cursor:pointer;background:#0f172a8c;border:none;width:100%;height:100%;padding:0;position:absolute;inset:0}.coachOverlay--spotlight .coachBackdrop{background:0 0}.coachSpotlight{z-index:1;border-radius:var(--radius-sm);box-shadow:0 0 0 9999px #0f172a8c,0 0 0 3px var(--accent);pointer-events:none;position:fixed}.coachCard{z-index:2;border-radius:var(--radius-lg);border:1px solid var(--panel-border);background:var(--panel);width:min(440px,100vw - 32px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);flex-direction:column;gap:14px;padding:18px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.coachCardHead{grid-template-columns:1fr auto;align-items:start;gap:4px 12px;display:grid}.coachKicker{letter-spacing:.08em;text-transform:uppercase;color:var(--accent-dark);grid-column:1;margin:0;font-size:11px;font-weight:800}.coachTitle{color:var(--text);grid-column:1;margin:0;font-size:17px;font-weight:800}.coachClose{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;grid-area:1/2/span 2;place-items:center;transition:background-color .12s,color .12s;display:grid}.coachClose:hover{background:var(--bg-soft);color:var(--text)}.coachClose svg{width:18px;height:18px}.coachStep{flex-direction:column;gap:6px;display:flex}.coachStepTitle{color:var(--text);margin:0;font-size:15px;font-weight:800}.coachStepBody{color:var(--text);margin:0;font-size:14px;line-height:1.7}.coachFooter{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.coachProgress{color:var(--muted);font-size:12px;font-weight:700}.coachActions{flex-wrap:wrap;gap:8px;display:flex}@media (max-width:880px){.coachLaunch{padding:10px;bottom:12px;right:12px}.coachLaunchLabel{display:none}}@media (prefers-reduced-motion:reduce){.coachLaunch,.coachClose{transition:none}.coachLaunch:active{transform:none}}.adminForm{flex-direction:column;gap:18px;display:flex}.adminField{flex-direction:column;gap:7px;display:flex}.adminLabel{color:var(--text);font-size:13px;font-weight:700}.adminHint{color:var(--muted);font-size:12px;font-weight:500;line-height:1.5}.adminHelp{border:1px solid var(--panel-border);border-radius:var(--radius-sm);background:var(--accent-soft);margin:14px 0 4px}.adminHelpSummary{cursor:pointer;color:var(--text);padding:10px 14px;font-size:13px;font-weight:700;list-style:none}.adminHelpSummary::-webkit-details-marker{display:none}.adminHelpSummary:before{content:"＋";color:var(--accent);margin-right:8px;font-weight:700}.adminHelp[open] .adminHelpSummary:before{content:"−"}.adminHelpSummary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.adminHelpBody{color:var(--text);padding:2px 16px 14px;font-size:12.5px;line-height:1.7}.adminHelpBody>p{margin:0 0 10px}.adminHelpList{flex-direction:column;gap:8px;margin:0 0 10px;padding-left:18px;display:flex}.adminHelpNote{border-top:1px dashed var(--panel-border);color:var(--muted);margin:0;padding-top:10px}.adminInput,.adminSelect,.adminTextarea{border:1px solid var(--panel-border);border-radius:var(--radius-sm);width:100%;color:var(--text);font:inherit;background:#fff;outline:none;padding:11px 13px;font-size:15px;transition:border-color .15s,box-shadow .15s}.adminTextarea{resize:vertical;min-height:96px;line-height:1.6}.adminInput:focus,.adminSelect:focus,.adminTextarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.adminInput:disabled,.adminSelect:disabled,.adminTextarea:disabled{color:var(--muted);cursor:not-allowed;background:#f8f5f0}.adminConditionRow{border:1px solid var(--panel-border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:flex-end;gap:12px;padding:14px;display:flex}.adminConditionRow .adminField{flex:1;min-width:180px}.adminInlineForm{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.adminInlineForm .adminField{flex:1;min-width:220px}.adminStatusChange{flex-direction:column;gap:8px;min-width:180px;display:flex}.adminRowActions{flex-direction:column;gap:10px;min-width:180px;display:flex}.adminInput--sm,.adminSelect--sm{padding:7px 10px;font-size:13px}.adminStatusChangeConfirm{border:1px solid var(--panel-border);border-radius:var(--radius-sm);background:var(--accent-soft);flex-direction:column;gap:8px;padding:9px 11px;display:flex}.adminStatusChangeActions{flex-wrap:wrap;gap:8px;display:flex}.adminStatusChangeError{color:#b91c1c;font-size:12px;font-weight:600;line-height:1.5}.adminButton{border-radius:var(--radius-sm);background:var(--gradient-brand);color:#fff;font:inherit;cursor:pointer;white-space:nowrap;box-shadow:var(--shadow-brand);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-size:14px;font-weight:800;text-decoration:none;transition:transform .1s,opacity .1s,background-color .12s;display:inline-flex}.adminButton:hover{opacity:.93}.adminButton:active{transform:scale(.98)}.adminButton:disabled,.adminButton[aria-disabled=true]{opacity:.55;cursor:not-allowed;box-shadow:none}.adminButton svg{width:16px;height:16px}.adminButton--secondary{color:var(--text);border-color:var(--panel-border);box-shadow:var(--shadow);background:#fff}.adminButton--secondary:hover{background:var(--bg-soft);border-color:var(--accent);color:var(--accent-dark);opacity:1}.adminButton--ghost{color:var(--accent-dark);box-shadow:none;background:0 0;border-color:#f6821e47}.adminButton--ghost:hover{background:var(--accent-soft);opacity:1}.adminButton--danger{background:var(--error);box-shadow:0 8px 22px #d4351c3d}.adminButton--danger:hover{opacity:1;background:#b21d09}.adminButton--sm{padding:7px 12px;font-size:12.5px}.adminButton--line{background:var(--line);box-shadow:0 8px 22px #06c7753d}.adminButton--line:hover{background:var(--ok-dark);opacity:1}.adminBackLink{width:fit-content;color:var(--muted);align-items:center;gap:6px;font-size:13px;font-weight:700;text-decoration:none;transition:color .14s;display:inline-flex}.adminBackLink:hover{color:var(--accent-dark)}.adminLink{color:var(--accent-dark);border-bottom:1px solid #f6821e52;font-weight:700;text-decoration:none;transition:border-color .14s}.adminLink:hover{border-bottom-color:var(--accent)}.adminMeta{color:var(--muted);font-size:12.5px;line-height:1.6}.adminCode{border-radius:var(--radius-md);color:#f7f3ed;background:#1c1f22;max-height:520px;margin:0;padding:16px 18px;font-family:SFMono-Regular,JetBrains Mono,monospace;font-size:12.5px;line-height:1.65;overflow:auto}.adminUserCell{flex-direction:column;gap:2px;display:flex}.adminPaymentCell{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.adminPaymentAmount{font-variant-numeric:tabular-nums;color:var(--text);font-weight:700}.adminUserName{color:var(--text);font-weight:700}.adminUserId{color:var(--muted);font-family:SFMono-Regular,JetBrains Mono,monospace;font-size:11px}.adminUserIdLink{color:var(--accent-dark);cursor:pointer;border-bottom:1px solid #f6821e52;align-self:flex-start;text-decoration:none;transition:border-color .14s,color .14s}.adminUserIdLink:hover{color:var(--accent);border-bottom-color:var(--accent)}.adminUserIdWrap{align-self:flex-start;align-items:center;gap:6px;display:inline-flex}.adminInsiderBadge{color:#2b3a55;white-space:nowrap;background:#eef2f9;border:1px solid #c7d6ee;border-radius:999px;align-items:center;padding:1px 6px;font-size:10px;font-weight:700;line-height:1.5;display:inline-flex}.adminEmptyName{color:var(--muted);font-style:italic}.adminLineProfile{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex}.adminLineProfileAvatar{object-fit:cover;border:1px solid var(--panel-border);background:#f5f0e9;border-radius:50%;flex-shrink:0;width:72px;height:72px}.adminLineProfileMeta{grid-template-columns:max-content 1fr;gap:6px 16px;min-width:220px;margin:0;display:grid}.adminLineProfileMeta>div{display:contents}.adminLineProfileMeta dt{color:var(--muted);white-space:nowrap;font-size:12.5px}.adminLineProfileMeta dd{word-break:break-word;margin:0;font-size:13.5px;line-height:1.6}.adminIdList{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:var(--bg-soft);max-height:240px;color:var(--text);margin:0;padding:12px 14px;font-family:SFMono-Regular,JetBrains Mono,monospace;font-size:12px;list-style:none;overflow-y:auto}.adminIdList li+li{margin-top:4px}@media (max-width:880px){.adminShell{flex-direction:column}.adminMobileBar{z-index:60;background:var(--panel);border-bottom:1px solid var(--panel-border);-webkit-backdrop-filter:blur(12px);justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex;position:sticky;top:0}.adminBrand--mobile{border-bottom:none;gap:8px;min-width:0;margin:0;padding:0}.adminMobileCurrent{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:800;overflow:hidden}.adminNavToggle{border-radius:var(--radius-pill);border:1px solid var(--panel-border);background:var(--bg-soft);color:var(--accent-dark);cursor:pointer;flex-shrink:0;align-items:center;gap:6px;padding:8px 13px;font-size:13px;font-weight:700;display:inline-flex}.adminNavToggleIcon{display:inline-flex}.adminNavToggle svg{width:18px;height:18px}.adminNavBackdrop{z-index:70;-webkit-backdrop-filter:blur(2px);cursor:pointer;background:#121a216b;border:none;padding:0;animation:.16s adminBackdropFade;display:block;position:fixed;inset:0}.adminSidebar{z-index:80;border-right:1px solid var(--panel-border);visibility:hidden;border-bottom:none;width:min(284px,84vw);height:100vh;transition:transform .22s,visibility .22s;position:fixed;top:0;left:0;transform:translate(-100%)}.adminSidebar.is-open{visibility:visible;transform:translate(0);box-shadow:0 24px 60px #121a212e}.adminMain{padding:24px 16px 56px}.adminKeyValue th{width:140px}}@keyframes adminBackdropFade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.adminSkipLink,.adminSidebar{transition:none}.adminNavBackdrop{animation:none}}.adminChartFigure{margin:0 0 12px;overflow-x:auto}.adminExportBars{flex-direction:column;gap:6px;display:flex}.adminCopyBar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.adminCopyLabel{color:var(--muted);font-size:13px}.adminCopyFeedback{color:var(--ok-dark);font-size:13px}.adminCopyFeedback.is-error{color:var(--error)}.adminCalendarNav{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.adminCalendarTitle{font-size:18px;font-weight:700}.adminCalendarGrid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.adminCalendarHead{text-align:center;color:var(--muted);padding:4px 0;font-size:13px;font-weight:700}.adminCalendarCell{border:1px solid var(--panel-border);border-radius:var(--radius-sm);background:var(--bg-soft);flex-direction:column;gap:4px;min-height:92px;padding:6px;display:flex}.adminCalendarCell.is-out{opacity:.55;background:0 0}.adminCalendarCell.is-holiday{background:var(--error-soft)}.adminCalendarCell.is-today{border:2px solid var(--accent);background:var(--accent-soft);box-shadow:var(--shadow-brand)}.adminCalendarCell.is-today.is-holiday{background:linear-gradient(180deg,var(--accent-soft)0%,var(--error-soft)100%)}.adminCalendarCellHead{justify-content:space-between;align-items:center;gap:4px;display:flex}.adminCalendarWeather{font-size:14px;line-height:1}.adminCalendarDay{color:var(--muted);font-size:12px;font-weight:700}.adminCalendarDay.is-sunday{color:var(--error)}.adminCalendarDay.is-saturday{color:var(--status-attended)}.adminCalendarCell.is-today .adminCalendarDay{color:var(--accent-dark)}.adminCalendarHolidayName{color:var(--error);font-size:10px;font-weight:700;line-height:1.2}.adminCalendarEvent{border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent-dark);flex-direction:column;gap:1px;padding:3px 6px;font-size:12px;line-height:1.3;text-decoration:none;display:flex}.adminCalendarEventTime{font-weight:700}.adminCalendarEventTitle{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (max-width:880px){.adminCalendarCell{min-height:64px}}.adminGachaStage{border-radius:var(--radius-lg);isolation:isolate;background:radial-gradient(120% 120% at 50% 0,#2b1b4d 0%,#160f2e 60%,#0c0a1c 100%);flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:320px;margin-bottom:24px;padding:28px;transition:box-shadow .4s;display:flex;position:relative;overflow:hidden}.adminGachaStage--neutral{box-shadow:inset 0 0 80px #6e5ab459}.adminGachaStage--common{box-shadow:inset 0 0 90px #3b82f673}.adminGachaStage--rare{box-shadow:inset 0 0 100px #8b5cf680}.adminGachaStage--epic{box-shadow:inset 0 0 110px #f59e0b8c}.adminGachaStage--legendary{box-shadow:inset 0 0 130px #ec489999}.adminGachaMachine{filter:drop-shadow(0 18px 22px #00000080);flex-direction:column;align-items:center;width:156px;height:210px;display:flex;position:relative}.adminGachaMachineTop{z-index:4;background:linear-gradient(#ff5a5a,#c62f3f);border-radius:11px 11px 6px 6px;width:88px;height:16px;margin-bottom:-6px;box-shadow:inset 0 2px 2px #ffffff8c,inset 0 -3px 5px #00000052}.adminGachaMachineGlass{z-index:2;background:radial-gradient(circle at 32% 24%,#ffffffe6,#fff0 36%),radial-gradient(circle at 72% 80%,#78b4ff47,#78b4ff00 52%),radial-gradient(circle,#e4ecff33,#786ea04d 72%);border:3px solid #ffffff80;border-radius:50%;width:140px;height:140px;position:relative;overflow:hidden;box-shadow:inset 0 -16px 28px #281e506b,inset 0 12px 22px #ffffff61,0 6px 14px #00000052}.adminGachaGlassShine{pointer-events:none;z-index:3;background:linear-gradient(115deg,#fff0 36%,#ffffff8c 50%,#fff0 64%);width:72%;height:124%;position:absolute;top:-12%;left:-22%;transform:rotate(8deg)}.adminGachaMachineNeck{z-index:4;background:linear-gradient(#ffd84d,#e0a915);border-radius:6px;width:98px;height:16px;margin-top:-8px;box-shadow:inset 0 2px 2px #ffffff8c,inset 0 -3px 5px #00000047}.adminGachaMachineBase{z-index:1;background:linear-gradient(#ff5066 0%,#d3263c 55%,#a81d30 100%);border-radius:10px 10px 22px 22px;width:134px;height:66px;margin-top:-4px;position:relative;box-shadow:inset 0 8px 10px #ffffff4d,inset -9px 0 15px #00000047,inset 9px 0 15px #ffffff1f,inset 0 -11px 17px #0000006b}.adminGachaMachineKnob{background:radial-gradient(circle at 35% 30%,#fff,#cfd6e0 45%,#8b94a3 100%);border-radius:50%;width:22px;height:22px;position:absolute;top:24px;left:24px;box-shadow:0 2px 3px #0006,inset 0 -2px 3px #0000004d}.adminGachaMachineSlot{background:linear-gradient(#2a0f16,#4a1822);border-radius:9px 9px 6px 6px;width:48px;height:32px;position:absolute;top:18px;right:20px;box-shadow:inset 0 3px 6px #0009,0 1px #ffffff29}.adminGachaMachineShadow{background:radial-gradient(#00000080,#0000 70%);border-radius:50%;width:132px;height:18px;margin-top:6px}.adminGachaBall{border-radius:50%;width:30px;height:30px;animation:2.4s ease-in-out infinite adminGachaBallFloat;position:absolute;box-shadow:inset -4px -5px 8px #00000059,inset 3px 3px 5px #ffffff8c}.adminGachaBall:after{content:"";background:#ffffffd9;border-radius:50%;width:30%;height:24%;position:absolute;top:16%;left:22%}.adminGachaBall--a{background:radial-gradient(circle at 35% 30%,#ffe27a,#e0a200);animation-delay:0s;top:64px;left:12px}.adminGachaBall--b{background:radial-gradient(circle at 35% 30%,#ff8a96,#d22f43);animation-delay:.3s;top:26px;left:50px}.adminGachaBall--c{background:radial-gradient(circle at 35% 30%,#8fc7ff,#2f7fe0);animation-delay:.6s;top:60px;left:86px}.adminGachaBall--d{background:radial-gradient(circle at 35% 30%,#9bf0c2,#25b572);animation-delay:.9s;top:84px;left:44px}.adminGachaBall--e{background:radial-gradient(circle at 35% 30%,#d6b3ff,#8b3fe0);animation-delay:1.2s;top:92px;left:80px}.adminGachaBall--f{background:radial-gradient(circle at 35% 30%,#fff,#cfd6e0);animation-delay:1.5s;top:38px;left:30px}.adminGachaMachine--charging{animation:.4s linear infinite adminGachaShake}.adminGachaMachine--revealing{animation:.5s adminGachaPop}.adminGachaFlash{z-index:2;background:radial-gradient(circle at 50% 45%,#fffffff2,#fff0 60%);animation:1.3s ease-out adminGachaFlash;position:absolute;inset:0}.adminGachaStatus{z-index:3;color:#ffffffeb;letter-spacing:.04em;margin:0;font-size:15px;font-weight:700;position:relative}.adminGachaStatus--reveal{text-shadow:0 0 14px #fffc}.adminGachaControls{text-align:center}.adminGachaButtons{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:12px;display:flex}.adminGachaResultHead{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.adminGachaResultHead h2{margin:0}.adminGachaResultTop{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:inline-flex}.adminGachaGrid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-bottom:18px;display:grid}.adminGachaCard{border-radius:var(--radius-md);border:2px solid var(--panel-border);text-align:center;background:#fff;flex-direction:column;align-items:center;gap:8px;padding:16px 12px;animation:.45s both adminGachaPop;display:flex}.adminGachaCard--hero{margin-bottom:18px;padding:28px 20px}.adminGachaCard--common{border-color:#3b82f6;box-shadow:0 8px 24px #3b82f638}.adminGachaCard--rare{border-color:#8b5cf6;box-shadow:0 8px 24px #8b5cf642}.adminGachaCard--epic{border-color:#f59e0b;box-shadow:0 10px 28px #f59e0b4d}.adminGachaCard--legendary{background:linear-gradient(#fff,#fff) padding-box padding-box,linear-gradient(120deg,#f43f5e,#f59e0b,#22c55e,#3b82f6,#a855f7) border-box;border-color:#0000;box-shadow:0 12px 34px #ec489952}.adminGachaCard--legendary.adminGachaCard--hero{animation:.45s both adminGachaPop,6s linear infinite adminGachaRainbow}.adminGachaCardPrize{color:var(--text);font-size:20px;font-weight:800}.adminGachaCard--hero .adminGachaCardPrize{font-size:30px}.adminGachaCardMeta{color:#475569;word-break:break-all;font-size:12px}.adminGachaRarityBadge{border-radius:var(--radius-pill);letter-spacing:.05em;color:#fff;text-shadow:0 1px #00000073,0 0 4px #0000004d;align-items:center;padding:3px 11px;font-size:11px;font-weight:900;display:inline-flex}.adminGachaRarityBadge--legendary{background:radial-gradient(circle at 30% 22%,#fff9,#fff0 50%) 0 0/100% 100%,conic-gradient(from 210deg,#ff5a96,#ffc24d,#4fcf86,#4aa6f0,#a85cf0,#ff5a96) 0 0/200% 100%;animation:4s linear infinite adminGachaRainbow}.adminGachaReference h2{margin:0 0 4px}.adminGachaReferenceList{flex-direction:column;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:flex}.adminGachaReferenceRow{border-radius:var(--radius-sm);background:var(--bg-soft);align-items:center;gap:12px;padding:8px 10px;display:flex}.adminGachaReferenceLabel{color:var(--text);flex:1;font-weight:600}.adminGachaReferencePercent{font-variant-numeric:tabular-nums;color:var(--muted);font-size:13px}@keyframes adminGachaBallFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes adminGachaShake{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(-4px)rotate(-2deg)}75%{transform:translate(4px)rotate(2deg)}}@keyframes adminGachaFlash{0%{opacity:0;transform:scale(.6)}35%{opacity:1;transform:scale(1.1)}to{opacity:0;transform:scale(1.4)}}@keyframes adminGachaPop{0%{opacity:0;transform:scale(.85)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes adminGachaRainbow{0%{background-position:0%}to{background-position:200%}}@media (prefers-reduced-motion:reduce){.adminGachaBall,.adminGachaMachine--charging,.adminGachaMachine--revealing,.adminGachaFlash,.adminGachaCard,.adminGachaCard--legendary.adminGachaCard--hero,.adminGachaRarityBadge--legendary{animation:none}}.adminGachaMachine--charging .adminGachaMachineGlass{animation:.7s ease-in-out infinite adminGachaChargeGlow}.adminGachaRays{z-index:1;mix-blend-mode:screen;background:repeating-conic-gradient(#ffffff29 0deg 5deg,#fff0 5deg 16deg);animation:9s linear infinite adminGachaRaysSpin;position:absolute;inset:-40%}.adminGachaResult{position:relative;overflow:hidden}.adminGachaResult--rare{box-shadow:0 0 0 2px #8b5cf638,var(--shadow)}.adminGachaResult--epic{box-shadow:0 0 0 2px #f59e0b3d,var(--shadow)}.adminGachaResult--legendary{box-shadow:0 0 0 2px #ec48994d,0 18px 50px #ec489938}.adminGachaConfetti{z-index:4;pointer-events:none;position:absolute;inset:0;overflow:hidden}.adminGachaConfettiPiece{opacity:0;border-radius:2px;width:9px;height:15px;animation-name:adminGachaConfettiFall;animation-timing-function:ease-in;animation-iteration-count:1;animation-fill-mode:forwards;position:absolute;top:-24px}.adminGachaCard{position:relative;overflow:hidden}.adminGachaCardSheen{z-index:3;pointer-events:none;mix-blend-mode:screen;background:linear-gradient(115deg,#fff0 32%,#fff9 48%,#fff0 62%) 0 0/250% 100%;animation:2.6s ease-in-out infinite adminGachaSheen;position:absolute;inset:0}.adminGachaCard--holo{background-image:linear-gradient(#fff,#fff),repeating-linear-gradient(115deg,#ff00801a 0,#00c8ff1a 18px,#78ff781a 36px,#ffdc001a 54px);background-origin:border-box;background-clip:padding-box,border-box}.adminGachaLegendBanner{z-index:5;text-align:center;letter-spacing:.16em;background:linear-gradient(120deg,#e0214a,#d97800,#149a52,#1f6fe0,#8b2fd0) 0 0/200% 100%;color:#0000;-webkit-text-stroke:1.4px #1c0c2ceb;paint-order:stroke fill;filter:drop-shadow(0 1px 1px #0006);-webkit-background-clip:text;background-clip:text;margin:0 0 14px;font-size:20px;font-weight:900;animation:3s linear infinite adminGachaRainbow,.5s adminGachaPop;position:relative}@keyframes adminGachaChargeGlow{0%,to{box-shadow:0 0 #ffeca000}50%{box-shadow:0 0 32px 6px #ffeca0bf}}@keyframes adminGachaRaysSpin{to{transform:rotate(360deg)}}@keyframes adminGachaSheen{0%{background-position:130% 0}to{background-position:-40% 0}}@keyframes adminGachaConfettiFall{0%{opacity:0;transform:translateY(-10px)rotate(0)}12%{opacity:1}to{opacity:0;transform:translate(var(--confetti-drift,0),360px)rotate(var(--confetti-rotate,360deg))}}@media (prefers-reduced-motion:reduce){.adminGachaMachine--charging .adminGachaMachineGlass,.adminGachaRays,.adminGachaConfettiPiece,.adminGachaCardSheen,.adminGachaLegendBanner,.adminGachaResultOverlay,.adminGachaResultOverlay .adminGachaResult{animation:none}.adminGachaConfettiPiece{display:none}}.adminGachaStage{perspective:1000px;perspective-origin:50% 38%}.adminGachaMachine{transform-style:preserve-3d;transform:rotateX(8deg)}.adminGachaMachineGlass{transform-style:preserve-3d}.adminGachaMachine--idle{animation:4.5s ease-in-out infinite adminGachaFloat3d}.adminGachaAura{z-index:1;filter:blur(6px);border-radius:50%;width:240px;height:240px;animation:.7s ease-in-out infinite adminGachaAuraPulse;position:absolute}.adminGachaAura--common{background:radial-gradient(circle,#60a5fa00 46%,#60a5fa8c 68%,#0000 72%)}.adminGachaAura--rare{background:radial-gradient(circle,#8b5cf600 46%,#8b5cf699 68%,#0000 72%)}.adminGachaAura--epic{background:radial-gradient(circle,#f59e0b00 46%,#f59e0bb3 68%,#0000 72%)}.adminGachaAura--legendary{background:radial-gradient(circle,#ec489900 44%,#ec4899bf 64%,#3b82f680 72%,#0000 76%)}.adminGachaRankUp{z-index:6;flex-direction:column;align-items:center;gap:8px;animation:.45s adminGachaRankUpIn;display:flex;position:absolute}.adminGachaRankUp:before{content:"";filter:blur(2px);z-index:-1;background:radial-gradient(circle,#fff4d68c,#fff4d600 58%),conic-gradient(#ffffff52 0deg 8deg,#0000 8deg 24deg,#ffffff52 24deg 32deg,#0000 32deg 48deg);width:230px;height:230px;animation:7s linear infinite adminGachaRaysSpin;position:absolute;top:50%;left:50%;transform:translate(-50%,-58%)}.adminGachaRankUpGrade{letter-spacing:-.02em;background:linear-gradient(#fffdf6 0%,#ffeeb0 46%,#ffcb5a 74%,#ff9e22 100%);color:#0000;-webkit-text-stroke:1.5px #78460eb3;paint-order:stroke fill;filter:drop-shadow(0 0 2px #5a3408d9)drop-shadow(0 3px 4px #321c048c)drop-shadow(0 0 18px #ffd682d9);-webkit-background-clip:text;background-clip:text;font-size:96px;font-weight:900;line-height:.9}.adminGachaRankUpText{letter-spacing:.16em;color:#fff;-webkit-text-stroke:1px #6e3c008c;paint-order:stroke fill;text-shadow:0 1px 1px #6e3c0080;background:linear-gradient(#ffd96a 0%,#f0a91e 55%,#d98a0e 100%);border-radius:6px;padding:4px 18px;font-size:17px;font-weight:900;box-shadow:0 4px 10px #0006,inset 0 1px #fff9,inset 0 -3px 5px #96500066}.adminGachaStatus{z-index:5;border-radius:var(--radius-pill);color:#fff;text-shadow:0 2px 6px #0009;background:#0e0b1c9e;padding:7px 18px;font-weight:800}.adminGachaEmblemWrap{z-index:2;flex-direction:column;align-items:center;gap:10px;margin-bottom:6px;display:flex;position:relative}.adminGachaEmblem{width:86px;height:86px;transform-style:preserve-3d;background:radial-gradient(circle at 38% 30%,#ffffff80,#fff0 42%),radial-gradient(ellipse 120% 100% at 50% 120%,#ffffff2e,#fff0 60%),var(--emblem-bg,linear-gradient(145deg,#aab4c2,#5c6b7d));border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative;box-shadow:inset 0 3px 7px #ffffffb8,inset 0 -9px 16px #0006,inset 0 0 16px #00000024,0 9px 20px #00000052}.adminGachaEmblem--hero{width:132px;height:132px;animation:6s ease-in-out infinite adminGachaEmblemSpin3d}.adminGachaEmblemLaurel{z-index:1;width:auto;height:calc(100% + 18px);color:var(--emblem-laurel,#ecc873);filter:drop-shadow(0 1px #78500a8c)drop-shadow(0 2px 2px #00000059);position:absolute;inset:-9px}.adminGachaEmblem--common{--emblem-laurel:#d3dbe8}.adminGachaEmblem--rare{--emblem-laurel:#e6cdee}.adminGachaEmblem--epic{--emblem-laurel:#f0cf78}.adminGachaEmblem--legendary{--emblem-laurel:#f3da97}.adminGachaEmblemGrade{z-index:2;letter-spacing:-.02em;color:#fff;-webkit-text-stroke:3.5px var(--emblem-stroke,#3a3a3a);paint-order:stroke fill;text-shadow:0 2px 4px #0000008c;font-size:38px;font-weight:900;line-height:1;position:relative}.adminGachaEmblem--hero .adminGachaEmblemGrade{font-size:52px}.adminGachaEmblemRibbon{z-index:2;letter-spacing:.14em;color:#fff;background:var(--emblem-ribbon,#5c6b7d);text-shadow:0 1px 2px #0006;border-radius:5px;padding:3px 13px;font-size:11px;font-weight:900;position:absolute;bottom:-11px;box-shadow:0 3px 8px #00000059}.adminGachaEmblem--hero .adminGachaEmblemRibbon{padding:4px 16px;font-size:13px;bottom:-13px}.adminGachaEmblem--common{--emblem-bg:radial-gradient(circle at 35% 27%,#fffffff2,#d6ebff99 12%,#78b6ff00 33%),radial-gradient(circle at 65% 77%,#123068d9,#1c488a4d 34%,#1c488a00 62%),radial-gradient(circle at 50% 45%,#5aa0f5,#2f6fd0 46%,#1a4286 100%);--emblem-stroke:#143a72;--emblem-ribbon:linear-gradient(160deg,#59a3f6 0%,#2f6fd0 52%,#1d4f99 100%)}.adminGachaEmblem--rare{--emblem-bg:radial-gradient(circle at 35% 27%,#fffffff2,#f5e2ff94 13%,#ce96ff00 34%),radial-gradient(circle at 66% 77%,#380c66d9,#541c9452 34%,#541c9400 62%),radial-gradient(circle at 50% 45%,#c98ff4,#9446e0 47%,#571aa0 100%);--emblem-stroke:#451286;--emblem-ribbon:linear-gradient(160deg,#c489f3 0%,#9446e0 52%,#6320b0 100%)}.adminGachaEmblem--epic{--emblem-bg:radial-gradient(circle at 35% 27%,#fffffffa,#fff8d8a8 14%,#ffdd8000 35%),radial-gradient(circle at 66% 78%,#8a4a04d1,#ae660a4d 34%,#ae660a00 62%),radial-gradient(circle at 50% 45%,#ffe49c,#f4b42e 45%,#c67806 100%);--emblem-stroke:#86530a;--emblem-ribbon:linear-gradient(160deg,#ffd874 0%,#f0a800 52%,#c87a06 100%)}.adminGachaEmblem--legendary{--emblem-bg:radial-gradient(circle at 36% 26%,#fffffffa,#ffffff75 12%,#fff0 29%),conic-gradient(from 200deg at 52% 56%,#ffe0c2,#ffc2e2,#dcc6ff,#bce6ff,#c6ffe4,#fff0c8,#ffe0c2),radial-gradient(circle at 50% 50%,#fffbf79e,#fff6ee29 40%,#76569666 100%);--emblem-stroke:#3a2666;--emblem-ribbon:linear-gradient(120deg,#ff9fc4,#c8a8ff 38%,#8fd8ff 70%,#a0f0d0)}.adminGachaEmblem--legendary .adminGachaEmblemGrade{-webkit-text-stroke-width:4.5px;text-shadow:0 0 5px #00000059,0 2px 4px #00000080}.adminGachaRarityBadge{-webkit-text-stroke:.8px #00000080;paint-order:stroke fill;justify-content:center;min-width:32px;padding:3px 11px;font-size:13px}.adminGachaPillar{z-index:1;pointer-events:none;filter:blur(9px);mix-blend-mode:screen;background:linear-gradient(#fff0,#ffeca080 62%,#ffeca000);width:170px;height:400px;animation:1.4s ease-out adminGachaPillarRise;position:absolute;top:-50px;left:50%;transform:translate(-50%)}@keyframes adminGachaFloat3d{0%,to{transform:rotateX(8deg)rotateY(-9deg)translateY(0)}50%{transform:rotateX(8deg)rotateY(9deg)translateY(-6px)}}@keyframes adminGachaEmblemSpin3d{0%,to{transform:rotateY(-12deg)}50%{transform:rotateY(12deg)}}@keyframes adminGachaAuraPulse{0%,to{opacity:.6;transform:scale(.9)}50%{opacity:.95;transform:scale(1.08)}}@keyframes adminGachaRankUpIn{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.15)}to{transform:scale(1)}}@keyframes adminGachaPillarRise{0%{opacity:0;transform:translate(-50%)scaleY(.4)}40%{opacity:1}to{opacity:.5;transform:translate(-50%)scaleY(1)}}@media (prefers-reduced-motion:reduce){.adminGachaMachine--idle,.adminGachaAura,.adminGachaRankUp,.adminGachaRankUp:before,.adminGachaEmblem--hero,.adminGachaPillar{animation:none}}.adminGachaStageBg{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.adminGachaStage>.adminGachaMachine{z-index:1}.adminGachaStars{background-image:radial-gradient(1.5px 1.5px at 12% 18%,#ffffffe6,#0000),radial-gradient(1.5px 1.5px at 28% 8%,#c8dcffcc,#0000),radial-gradient(1px 1px at 44% 22%,#ffffffb3,#0000),radial-gradient(1.5px 1.5px at 66% 12%,#fff0c8cc,#0000),radial-gradient(1px 1px at 82% 26%,#ffffffb3,#0000),radial-gradient(1.5px 1.5px at 92% 10%,#d2e1ffcc,#0000),radial-gradient(1px 1px at 56% 6%,#fff9,#0000);animation:4.5s ease-in-out infinite adminGachaTwinkleBg;position:absolute;inset:0}.adminGachaArches{opacity:.5;align-items:flex-end;gap:9px;display:flex;position:absolute;top:14%;left:50%;transform:translate(-50%)}.adminGachaArch{background-size:100% 220%;border-radius:40px 40px 4px 4px;width:40px;height:116px;animation:6s ease-in-out infinite adminGachaGlassShift;position:relative;box-shadow:inset 0 0 0 2px #ffffff47,0 0 18px #9678ff59}.adminGachaArch:before{content:"";background-image:repeating-linear-gradient(0deg,#120a2452 0 1px,#0000 1px 20px),repeating-linear-gradient(90deg,#120a2452 0 1px,#0000 1px 14px);border-radius:36px 36px 3px 3px;position:absolute;inset:4px}.adminGachaArch--1{background-image:linear-gradient(160deg,#4a7bff,#6aa0ff,#3b5fd0)}.adminGachaArch--2{background-image:linear-gradient(160deg,#9b5cf0,#c77dff,#7a3fd0);height:132px;animation-delay:.4s}.adminGachaArch--3{background-image:linear-gradient(160deg,#ec4899,#ff7ab8,#c92f7a);height:150px;animation-delay:.8s}.adminGachaArch--4{background-image:linear-gradient(160deg,#f7b733,#ffd36a,#e08a12);height:164px;animation-delay:1.2s}.adminGachaArch--5{background-image:linear-gradient(160deg,#22c5a0,#5fe6c4,#129a7e);height:150px;animation-delay:1.6s}.adminGachaArch--6{background-image:linear-gradient(160deg,#5c8cff,#8ab0ff,#3f63d0);height:132px;animation-delay:2s}.adminGachaArch--7{background-image:linear-gradient(160deg,#b06cff,#d39bff,#8a4fd0);animation-delay:2.4s}.adminGachaBeam{filter:blur(7px);mix-blend-mode:screen;transform-origin:top;background:linear-gradient(#ffffff47,#fff0 75%);width:120px;height:150%;position:absolute;top:-12%}.adminGachaBeam--l{animation:5.5s ease-in-out infinite adminGachaBeamSweepL;left:14%}.adminGachaBeam--r{animation:5.5s ease-in-out infinite adminGachaBeamSweepR;right:14%}.adminGachaFloor{background:linear-gradient(#22164c00,#22164ce6);height:40%;position:absolute;bottom:0;left:0;right:0}.adminGachaFloor:after{content:"";background:linear-gradient(90deg,#0000,#bea0ffd9,#0000);height:2px;position:absolute;bottom:22%;left:8%;right:8%;box-shadow:0 0 18px #bea0ffb3}.adminGachaMotes{position:absolute;inset:0}.adminGachaMote{opacity:0;border-radius:3px;width:6px;height:16px;animation-name:adminGachaMoteRise;animation-timing-function:ease-in;animation-iteration-count:infinite;position:absolute;bottom:-8%;box-shadow:0 0 9px 1px #fff6}@keyframes adminGachaTwinkleBg{0%,to{opacity:.45}50%{opacity:.9}}@keyframes adminGachaGlassShift{0%,to{background-position:0 0}50%{background-position:0 100%}}@keyframes adminGachaBeamSweepL{0%,to{opacity:.5;transform:rotate(12deg)}50%{opacity:.9;transform:rotate(24deg)}}@keyframes adminGachaBeamSweepR{0%,to{opacity:.5;transform:rotate(-12deg)}50%{opacity:.9;transform:rotate(-24deg)}}@keyframes adminGachaMoteRise{0%{opacity:0;transform:translateY(0)rotate(0)}12%{opacity:1}to{opacity:0;transform:translateY(-340px)rotate(220deg)}}@media (prefers-reduced-motion:reduce){.adminGachaStars,.adminGachaArch,.adminGachaBeam,.adminGachaMote,.adminGachaGlassShine{animation:none}.adminGachaMote{display:none}}.adminGachaStage,.adminGachaControls,.adminGachaResult,.adminGachaReference,.adminGachaStatus,.adminGachaControls .adminButton,.adminGachaResult .adminButton{font-family:ui-rounded,Hiragino Maru Gothic ProN,"M PLUS Rounded 1c",Quicksand,Segoe UI,system-ui,sans-serif}.adminGachaControls,.adminGachaResult,.adminGachaReference{-webkit-backdrop-filter:blur(16px)saturate(1.12);background:linear-gradient(#ffffffdb,#ffffffa8);border:1px solid #ffffffbf;box-shadow:inset 0 1px #fffffff2,0 20px 44px #2216461a,0 2px 8px #2216460d}.adminGachaControls{padding:22px}.adminGachaResult{padding:24px 22px 22px}.adminGachaButtons{margin-top:14px}.adminGachaResultOverlay{z-index:60;-webkit-backdrop-filter:blur(10px)saturate(1.1);background:radial-gradient(120% 120% at 50% 28%,#181032bd,#080614e6);justify-content:center;align-items:center;padding:16px;animation:.28s both adminGachaOverlayIn;display:flex;position:fixed;inset:0}@keyframes adminGachaOverlayIn{0%{opacity:0}to{opacity:1}}.adminGachaResultOverlay .adminGachaResult{flex-direction:column;width:100%;max-width:360px;max-height:calc(100dvh - 32px);margin:0;animation:.42s cubic-bezier(.2,.85,.25,1) both adminGachaResultIn;display:flex}@keyframes adminGachaResultIn{0%{opacity:0;transform:translateY(18px)scale(.95)}to{opacity:1;transform:none}}.adminGachaResultBody{flex:auto;min-height:0;overflow-y:auto}.adminGachaResultOverlay .adminGachaResultHead{margin-bottom:12px}.adminGachaResultOverlay .adminGachaGrid{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:0}.adminGachaResultAgain{flex:none;width:100%;margin-top:16px}.adminGachaCard--compact{gap:5px;padding:10px 8px}.adminGachaCard--compact .adminGachaCardPrize{font-size:16px;line-height:1.2}.adminGachaCard--compact .adminGachaCardMeta{font-size:11px}.adminGachaControls .adminButton,.adminGachaResult .adminButton{border-radius:var(--radius-md);border:1px solid #ffffff8c;padding:12px 22px;transition:transform .12s,box-shadow .18s,filter .18s;box-shadow:inset 0 1px #fff9,0 10px 20px #f6821e42}.adminGachaControls .adminButton:hover,.adminGachaResult .adminButton:hover{filter:brightness(1.04);opacity:1;transform:translateY(-1px);box-shadow:inset 0 1px #ffffffb3,0 14px 26px #f6821e52}.adminGachaControls .adminButton--secondary,.adminGachaResult .adminButton--secondary{color:var(--accent-dark);background:linear-gradient(#fff,#fff3e8);border-color:#f6821e52;box-shadow:inset 0 1px #ffffffe6,0 8px 16px #22164614}.adminGachaControls .adminMeta{letter-spacing:.04em;color:var(--muted);font-size:13px;font-weight:700}.adminGachaStatus{-webkit-backdrop-filter:blur(4px);letter-spacing:.06em;border:1px solid #ffffff38}.adminGachaReferenceRow{background:linear-gradient(#ffffffb3,#fff7ef8c);border:1px solid #fff9}.adminGachaRarityBadge--common{background:radial-gradient(circle at 32% 26%,#ffffff8c,#fff0 40%),linear-gradient(158deg,#5aa0f5,#2a64c4 60%,#1a4286)}.adminGachaRarityBadge--rare{background:radial-gradient(circle at 32% 26%,#ffffff80,#fff0 40%),linear-gradient(158deg,#c98ff4,#8c3edb 60%,#571aa0)}.adminGachaRarityBadge--epic{background:radial-gradient(circle at 32% 26%,#ffffffb3,#fff0 42%),linear-gradient(158deg,#ffe49c,#f0a818 58%,#c67806)}.adminGachaEmblem:before{content:"";background:var(--emblem-frame,conic-gradient(from 40deg,#fff,#aab6c6,#f2f6fb,#818ea1,#dfe6ef,#aab6c6,#fff));filter:drop-shadow(0 2px 3px #0000006b);border-radius:50%;position:absolute;inset:-8px;-webkit-mask:radial-gradient(circle,#0000 0 calc(50% - 10px),#000 calc(50% - 10px));mask:radial-gradient(circle,#0000 0 calc(50% - 10px),#000 calc(50% - 10px))}.adminGachaEmblem--common{--emblem-frame:conic-gradient(from 40deg,#fff,#aab6c6,#f2f6fb,#818ea1,#dfe6ef,#aab6c6,#fff)}.adminGachaEmblem--rare{--emblem-frame:conic-gradient(from 40deg,#fff4ea,#d8b8e2,#fff,#b594c2,#efdaf0,#d8b8e2,#fff4ea)}.adminGachaEmblem--epic{--emblem-frame:conic-gradient(from 40deg,#fff7d2,#d0aa3e,#fff8db,#9c7b1e,#ffe9a0,#d0aa3e,#fff7d2)}.adminGachaEmblem--legendary{--emblem-frame:conic-gradient(from 40deg,#ffe9c0,#caa53a,#ffd0f0,#9fe0ff,#c8ffe6,#ffeaa0,#ffe9c0)}.adminGachaEmblem--hero{filter:drop-shadow(0 0 16px var(--emblem-glow,#ffdc9699))}.adminGachaEmblem--common{--emblem-glow:#5aa0f599}.adminGachaEmblem--rare{--emblem-glow:#c98ff499}.adminGachaEmblem--epic{--emblem-glow:#f4b42ea6}.adminGachaEmblem--legendary{--emblem-glow:#ff96c8a6}.adminGachaEmblemWrap:has(.adminGachaEmblem--hero):before{content:"";z-index:0;pointer-events:none;background:repeating-conic-gradient(#fff0c800 0deg 8deg,#fff0c84d 8deg 10deg,#fff0c800 10deg 24deg);width:220px;height:220px;animation:14s linear infinite adminGachaRaysSpin;position:absolute;top:66px;left:50%;transform:translate(-50%,-50%);-webkit-mask:radial-gradient(circle,#0000 0 60px,#000 66px 96px,#0000 104px);mask:radial-gradient(circle,#0000 0 60px,#000 66px 96px,#0000 104px)}@media (prefers-reduced-motion:reduce){.adminGachaEmblemWrap:has(.adminGachaEmblem--hero):before{animation:none}}.adminGachaEmblem--minor{--emblem-bg:radial-gradient(circle at 35% 27%,#fffffff2,#d6ffe699 12%,#78f0aa00 33%),radial-gradient(circle at 65% 77%,#064628d9,#0a64384d 34%,#0a643800 62%),radial-gradient(circle at 50% 45%,#4fd98a,#1faa5a 46%,#0c6b38 100%);--emblem-stroke:#0a5230;--emblem-ribbon:linear-gradient(160deg,#46cf86 0%,#189a55 52%,#0c6b38 100%);--emblem-frame:conic-gradient(from 40deg,#f4fff8,#9fc6b0,#fff,#7ca08c,#e6f3ec,#9fc6b0,#f4fff8);--emblem-laurel:#dcebe2;--emblem-glow:#50dc8c99}.adminGachaRarityBadge--minor{background:radial-gradient(circle at 32% 26%,#fff9,#fff0 42%),linear-gradient(158deg,#4fd98a,#169a55 60%,#0c6b38)}.adminGachaEmblem--trivial{--emblem-bg:radial-gradient(circle at 35% 27%,#fffaf0f2,#ffe0be99 13%,#e8965a00 34%),radial-gradient(circle at 66% 77%,#50260ad9,#783c1452 34%,#783c1400 62%),radial-gradient(circle at 50% 45%,#e8924a,#c46a28 47%,#7a3d12 100%);--emblem-stroke:#5a2e0e;--emblem-ribbon:linear-gradient(160deg,#d9863c 0%,#b3621f 52%,#7a3d12 100%);--emblem-frame:conic-gradient(from 40deg,#ffe9cf,#b9763a,#ffd9b0,#8a5424,#f0c79a,#b9763a,#ffe9cf);--emblem-laurel:#f0d9bf;--emblem-glow:#dc8c4699}.adminGachaRarityBadge--trivial{background:radial-gradient(circle at 32% 26%,#fff9,#fff0 42%),linear-gradient(158deg,#e8924a,#b3621f 60%,#7a3d12)}.adminGachaScreen{max-width:392px;margin-left:auto;margin-right:auto}.adminGachaBackLink{margin-top:10px;font-size:13px;font-weight:700;display:inline-block}.adminGachaPlay{width:100%;margin:0 auto 20px}.adminGachaPlay .adminGachaStage{aspect-ratio:9/16;height:auto;min-height:0;margin-bottom:0;position:relative}.adminGachaDrawButton{z-index:7;border-radius:var(--radius-pill);letter-spacing:.08em;color:#fff;cursor:pointer;background:linear-gradient(#ffb24d 0%,#f6821e 60%,#e06d0c 100%);border:1px solid #fff9;min-width:176px;padding:15px 30px;font-size:17px;font-weight:900;transition:transform .12s,filter .18s,box-shadow .18s;animation:1.9s ease-in-out infinite adminGachaDrawPulse;position:absolute;bottom:24px;left:50%;transform:translate(-50%);box-shadow:inset 0 1px #fff9,0 12px 24px #f6821e6b,0 0 0 4px #ffffff24}.adminGachaDrawButton:hover{filter:brightness(1.05);opacity:1;transform:translate(-50%)translateY(-2px);box-shadow:inset 0 1px #ffffffb3,0 16px 30px #f6821e80,0 0 0 7px #ffffff1a}@keyframes adminGachaDrawPulse{0%,to{transform:translate(-50%)scale(1)}50%{transform:translate(-50%)scale(1.035)}}@media (prefers-reduced-motion:reduce){.adminGachaDrawButton{animation:none}}.adminGachaModeGrid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.adminGachaModeCard{border-radius:var(--radius-lg);text-align:center;color:var(--text);background:linear-gradient(#ffffffeb,#fff7efb8);border:1px solid #f6821e47;flex-direction:column;align-items:center;gap:8px;padding:30px 18px;text-decoration:none;transition:transform .14s,box-shadow .18s;display:flex;box-shadow:inset 0 1px #fffffff2,0 12px 28px #22164614}.adminGachaModeCard:hover{transform:translateY(-2px);box-shadow:inset 0 1px #fffffff2,0 16px 34px #f6821e38}.adminGachaModeEmoji{font-size:40px;line-height:1}.adminGachaModeTitle{color:var(--text);font-size:19px;font-weight:900}.adminGachaModeDesc{color:var(--muted);font-size:12.5px}@media (max-width:420px){.adminGachaModeGrid{grid-template-columns:1fr}}.behaviorFunnel{flex-direction:column;gap:14px;margin:6px 0 0;padding:0;list-style:none;display:flex}.behaviorFunnelRow{flex-direction:column;gap:5px;display:flex}.behaviorFunnelHead{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.behaviorFunnelLabel{color:var(--text);font-size:13.5px;font-weight:800}.behaviorFunnelCount{color:var(--text);font-variant-numeric:tabular-nums;font-size:15px;font-weight:800}.behaviorFunnelUnit{color:var(--muted);margin-left:3px;font-size:11.5px;font-weight:700}.behaviorFunnelTrack{border-radius:var(--radius-sm);background:var(--bg-soft);border:1px solid var(--panel-border);align-items:center;gap:8px;height:22px;display:flex;position:relative;overflow:hidden}.behaviorFunnelBar{background:var(--gradient-brand);border-radius:var(--radius-sm)0 0 var(--radius-sm);min-width:3px;height:100%;transition:width .2s}.behaviorFunnelPercent{color:var(--text);font-variant-numeric:tabular-nums;font-size:12px;font-weight:800;position:absolute;right:8px}.behaviorFunnelHint{color:var(--muted);align-items:center;gap:8px;margin:0;font-size:12px;display:flex}.behaviorActionForm{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:4px;display:flex}.behaviorActionForm .adminField{flex:220px;margin:0}.behaviorActionResult{flex-direction:column;gap:10px;margin-top:18px;display:flex}.behaviorActionSubTitle{color:var(--text);align-items:center;gap:8px;margin-top:6px;font-size:13px;font-weight:800;display:flex}.behaviorActionBreakdown{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.behaviorMiniList{flex-direction:column;gap:6px;display:flex}.behaviorMiniRows{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.behaviorMiniRow{border-radius:var(--radius-sm);background:var(--bg-soft);border:1px solid var(--panel-border);justify-content:space-between;align-items:baseline;gap:12px;padding:5px 10px;display:flex}.behaviorMiniKey{color:var(--text);word-break:break-all;font-size:12.5px}.behaviorMiniValue{color:var(--text);font-variant-numeric:tabular-nums;font-size:13px;font-weight:800}@media (max-width:520px){.behaviorActionForm .adminButton{width:100%}}.talkList{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.talkList>li+li{border-top:1px solid var(--panel-border)}.talkListItem{border-radius:var(--radius-sm);color:var(--text);align-items:center;gap:12px;padding:12px 10px;text-decoration:none;transition:background-color .15s;display:flex}.talkListItem:hover,.talkListItem:focus-visible{background:var(--accent-soft)}.talkAvatar{background:var(--gradient-brand);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;font-weight:800;display:inline-flex;overflow:hidden}.talkAvatar--image{object-fit:cover;background:var(--bg-soft)}.talkAvatar--sm{width:30px;height:30px;font-size:13px}.talkListMain{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.talkListName{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;overflow:hidden}.talkListPreview{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.talkListSide{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.talkListTime{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px}.talkListCount{color:var(--accent-dark);background:var(--accent-soft);border-radius:var(--radius-pill);font-variant-numeric:tabular-nums;padding:1px 8px;font-size:11px}.talkRoom{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);flex-direction:column;height:min(760px,100dvh - 190px);min-height:420px;display:flex;overflow:hidden}.talkRoomHead{border-bottom:1px solid var(--panel-border);background:var(--panel);align-items:center;gap:12px;padding:12px 16px;display:flex}.talkRoomHeadMain{flex:1;min-width:0}.talkRoomName{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:16px;font-weight:800;overflow:hidden}.talkRoomId{color:var(--muted);font-size:11px;font-family:var(--font-mono,monospace);word-break:break-all;margin:0}.talkRoomHeadActions{flex-shrink:0}.talkStream{background:var(--bg-soft);flex-direction:column;flex:1;gap:12px;padding:16px 16px 20px;display:flex;overflow-y:auto}.talkDayGroup{flex-direction:column;gap:10px;display:flex}.talkDateChip,.talkSystemChip,.talkStreamNotice{border-radius:var(--radius-pill);color:var(--muted);text-align:center;background:#1f293714;align-self:center;margin:0;padding:3px 12px;font-size:11.5px}.talkStreamNotice{background:0 0}.talkMessage{align-items:flex-end;gap:6px;display:flex}.talkMessage--out{justify-content:flex-end}.talkMessage--out .talkMessageTime{order:-1}.talkBubbleColumn{flex-direction:column;align-items:flex-start;gap:4px;max-width:min(72%,480px);display:flex}.talkMessage--out .talkBubbleColumn{align-items:flex-end}.talkBubbleMeta{flex-wrap:wrap;gap:4px;display:inline-flex}.talkSourceBadge,.talkKindChip{border-radius:var(--radius-pill);align-items:center;padding:1px 8px;font-size:10.5px;font-weight:700;line-height:1.6;display:inline-flex}.talkSourceBadge{background:var(--accent-soft);color:var(--accent-dark)}.talkKindChip{color:var(--muted);background:#1f293714}.talkBubble{border:1px solid var(--panel-border);max-width:100%;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;border-radius:16px 16px 16px 6px;padding:9px 13px;font-size:14px;line-height:1.6}.talkBubble--out{background:var(--line);border-color:var(--line);color:#fff;border-radius:16px 16px 6px}.talkMessageTime{color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;padding-bottom:2px;font-size:10.5px}.talkSendError{margin:10px 16px 0}.talkComposer{border-top:1px solid var(--panel-border);background:var(--panel);align-items:flex-end;gap:10px;padding:12px 16px;display:flex}.talkComposerInput{resize:none;border:1px solid var(--panel-border);border-radius:var(--radius-md);min-width:0;font:inherit;color:var(--text);background:var(--bg);flex:1;max-height:132px;padding:9px 12px;font-size:14px;line-height:1.5}.talkComposerInput:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.talkComposerSend{flex-shrink:0}@media (max-width:880px){.talkRoom{height:calc(100dvh - 170px);min-height:360px}.talkBubbleColumn{max-width:82%}}
