:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;scroll-behavior:smooth;font:16px/1.5 Helvetica Neue,Arial,Hiragino Sans,Yu Gothic,sans-serif}*{box-sizing:border-box}body{margin:0;overflow-x:hidden}#root{min-height:100dvh}h1{margin:16px 0 8px;font-size:1.8rem}h2{margin:0 0 8px;font-size:1.3rem}button{font-family:inherit}.confirm-modal__overlay{z-index:150;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.confirm-modal{background:#fffaf0;border:3px solid #333;border-radius:14px;width:100%;max-width:360px;padding:20px;animation:.18s ease-out confirm-modal-pop;box-shadow:0 8px 24px #00000040}@keyframes confirm-modal-pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.confirm-modal__title{margin:0 0 8px;font-size:1.05rem}.confirm-modal__message{color:#555;white-space:pre-wrap;margin:0 0 18px;font-size:.88rem}.confirm-modal__actions{gap:10px;display:flex}.confirm-modal__cancel{color:#555;cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:10px;flex:1;padding:10px;font-size:.9rem;font-weight:700}.confirm-modal__confirm{color:#fff;cursor:pointer;background:#d1432c;border:none;border-radius:10px;flex:1;padding:10px;font-size:.9rem;font-weight:800;box-shadow:0 3px #9c2e1c}.rating-title-badge{white-space:nowrap;border-radius:999px;align-items:center;gap:3px;padding:2px 9px;font-size:.72rem;font-weight:800;display:inline-flex}.rating-title-badge--low{color:#666;background:#eee;border:1px solid #ccc}.rating-title-badge--mid{color:#2d6fd1;background:#e2edff;border:1px solid #aec7ec}.rating-title-badge--high{color:#8a6406;background:linear-gradient(135deg,#fff6da,#ffe79b);border:1px solid #e8c25a}.rating-title-badge--top{color:#fff;text-shadow:1px 1px #0003;background:linear-gradient(135deg,#ffd23f,#d1a200);border:1px solid #b8860b}.next-badge-goal{color:#8a6406;text-align:center;background:#fff6da;border:2px solid #e8c25a;border-radius:999px;max-width:320px;margin:12px auto 0;padding:8px 16px;font-size:.82rem;font-weight:700}.welcome-back{text-align:center;box-sizing:border-box;background:#fffaf0;border:1px solid #e8c25a;border-radius:12px;width:100%;min-width:0;max-width:480px;margin:0 auto 16px;padding:10px 16px}.welcome-back__greeting{color:#444;flex-wrap:nowrap;justify-content:center;align-items:center;gap:4px;margin:0 0 4px;font-size:.88rem;font-weight:800;display:flex}.welcome-back__avatar{border-radius:50%;flex-shrink:0;width:24px;height:24px}.welcome-back__avatar--emoji{background:#fff6da;border:1px solid #e8c25a;justify-content:center;align-items:center;font-size:.9rem;display:flex}.welcome-back__name{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.welcome-back__title-wrap{flex-shrink:0;align-items:center;display:flex}.welcome-back__record{color:#777;margin:0;font-size:.78rem;font-weight:700}.welcome-back .next-badge-goal{margin:6px auto 0;padding:4px 12px;font-size:.74rem}.welcome-back__mypage-btn{color:#8a6406;cursor:pointer;background:#fff6da;border:1px solid #e8c25a;border-radius:999px;margin:8px 0 0 auto;padding:4px 12px;font-size:.74rem;font-weight:700;display:block}.feedback-sheet__overlay{z-index:80;background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.feedback-sheet{background:#fffaf0;border-radius:18px 18px 0 0;flex-direction:column;width:100%;max-width:600px;padding-bottom:16px;animation:.18s ease-out feedback-sheet-rise;display:flex;overflow:hidden;box-shadow:0 -4px 20px #00000040}@keyframes feedback-sheet-rise{0%{opacity:.6;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.feedback-sheet__handle{background:#ddd;border-radius:999px;width:40px;height:4px;margin:8px auto 0}.feedback-sheet__header{justify-content:space-between;align-items:center;padding:6px 16px 0;display:flex}.feedback-sheet__header h3{margin:0;font-size:1rem}.feedback-sheet__close{color:#777;cursor:pointer;background:0 0;border:none;padding:6px 10px;font-size:.9rem}.feedback-sheet__hint{color:#999;margin:4px 16px 8px;font-size:.72rem}.feedback-sheet__textarea{resize:vertical;box-sizing:border-box;border:2px solid #ccc;border-radius:10px;margin:0 16px;padding:10px;font-family:inherit;font-size:.9rem}.feedback-sheet__footer{justify-content:space-between;align-items:center;margin:8px 16px 0;display:flex}.feedback-sheet__counter{color:#999;font-size:.72rem}.feedback-sheet__submit{color:#fff;cursor:pointer;background:#d1432c;border:none;border-radius:10px;padding:8px 20px;font-size:.88rem;font-weight:800;box-shadow:0 3px #9c2e1c}.feedback-sheet__submit:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.feedback-sheet__error{color:#d1432c;margin:8px 16px 0;font-size:.78rem;font-weight:700}.feedback-sheet__thanks{color:#2b8a3e;text-align:center;margin:12px 16px 20px;font-size:.95rem;font-weight:800}.floating-back-btn{z-index:45;color:#fff;cursor:pointer;background:#2b2b2be0;border:none;border-radius:999px;padding:8px 16px;font-size:.78rem;font-weight:700;position:fixed;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #00000040}.floating-back-btn:active{transform:translate(-50%)scale(.96)}.mypage{flex-direction:column;gap:16px;max-width:520px;margin:0 auto;padding:32px 20px 24px;display:flex}.mypage__identity{text-align:center;background:#fffaf0;border:1px solid #e8c25a;border-radius:12px;padding:12px 16px}.mypage__identity-greeting{color:#444;flex-wrap:nowrap;justify-content:center;align-items:center;gap:6px;margin:0 0 4px;font-size:.92rem;font-weight:800;display:flex}.mypage__identity-avatar{border-radius:50%;flex-shrink:0;width:26px;height:26px}.mypage__identity-avatar--emoji{background:#fff6da;border:1px solid #e8c25a;justify-content:center;align-items:center;font-size:1rem;display:flex}.mypage__identity-name{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.mypage__identity-title-wrap{flex-shrink:0;align-items:center;display:flex}.mypage__identity-rate{color:#777;margin:0 0 2px;font-size:.8rem;font-weight:700}.mypage__identity-sub{color:#8a7a4a;margin:0;font-size:.74rem;font-weight:700}.mypage__tabbar{z-index:20;background:#fff;border:2px solid #333;border-radius:12px;gap:4px;padding:4px;display:flex;position:sticky;top:0;box-shadow:0 2px 6px #00000014}.mypage__tabbar-btn{color:#888;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:8px 2px;font-size:.68rem;font-weight:700;display:flex}.mypage__tabbar-emoji{font-size:1.1rem}.mypage__tabbar-btn.is-active{color:#d1432c;background:#fff6da;font-weight:800;box-shadow:inset 0 -3px #d1432c}.mypage__account-email{color:#555;margin:4px 0 0;font-size:.82rem}.mypage__header{align-items:center;gap:12px;display:flex}.public-profile__star-btn{color:#8a6406;white-space:nowrap;cursor:pointer;background:#fff6da;border:1px solid #e8c25a;border-radius:999px;flex-shrink:0;margin-left:auto;padding:6px 14px;font-size:.78rem;font-weight:800}.public-profile__star-btn.is-active{color:#fff;background:linear-gradient(135deg,#ffd23f,#d1a200);border-color:#d1a200}.public-profile__star-btn:disabled{opacity:.6;cursor:default}.mypage__avatar{border-radius:50%;width:48px;height:48px}.mypage__avatar--emoji{background:#fff6da;border:2px solid #e8c25a;justify-content:center;align-items:center;font-size:1.8rem;display:flex}.mypage__icon-grid{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.mypage__icon-choice{cursor:pointer;background:#fff;border:2px solid #e0d8c5;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.4rem;display:flex}.mypage__icon-choice.is-selected{background:#fff6da;border-color:#e8c25a}.mypage__icon-reset{color:#777;cursor:pointer;background:0 0;border:1px solid #ccc;border-radius:8px;margin-top:10px;padding:6px 12px;font-size:.78rem;font-weight:700}.mypage__title{margin:0;font-size:1.3rem}.public-profile__favorite{color:#8a6406;margin:4px 0 0;font-size:.8rem;font-weight:800}.mypage__email{color:#888;margin:2px 0 0;font-size:.78rem}.mypage__card{text-align:left;background:#fffaf0;border:2px solid #333;border-radius:12px;padding:14px 18px}.mypage__label{color:#555;margin-bottom:6px;font-size:.8rem;font-weight:700;display:block}.mypage__edit-row{gap:8px;display:flex}.mypage__text-input{box-sizing:border-box;border:1px solid #ccc;border-radius:6px;flex:1;padding:8px 10px;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.mypage__text-input.is-saved{border-color:#2b8a3e;box-shadow:0 0 0 3px #2b8a3e2e}.mypage__save-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#2b8a3e;border:none;border-radius:8px;padding:8px 16px;font-size:.85rem;font-weight:800;transition:transform .15s,background .2s}.mypage__save-btn.is-saved{background:#1d6129;animation:.35s save-pop}@keyframes save-pop{0%{transform:scale(.9)}50%{transform:scale(1.08)}to{transform:scale(1)}}.mypage__save-btn:disabled{cursor:not-allowed;background:#aaa}.mypage__section-title{margin:0 0 10px;font-size:1rem}.mypage__stats-grid{color:#444;font-size:.88rem}.mypage__stat-row{justify-content:space-between;padding:4px 0;display:flex}.mypage__items{border-top:1px solid #ddd;margin-top:10px;padding-top:10px}.mypage__items-title{font-size:.82rem;font-weight:700}.mypage__items ul{margin:6px 0 0;padding:0;list-style:none}.mypage__items li{justify-content:space-between;padding:3px 0;font-size:.85rem;display:flex}.mypage__badges{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.mypage__badge{cursor:pointer;background:#fff6da;border:2px solid #e8c25a;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-family:inherit;font-size:.8rem;font-weight:700;display:flex}.mypage__badge.is-selected{background:#ffe79b;border-color:#b8860b}.mypage__badge-emoji{font-size:1rem}.mypage__badge-detail{background:#fff;border:1px solid #e8c25a;border-radius:10px;margin-top:10px;padding:10px 12px;box-shadow:0 2px 8px #00000014}.mypage__badge-detail-head{align-items:center;gap:8px;margin-bottom:6px;display:flex}.mypage__badge-detail-emoji{font-size:1.2rem}.mypage__badge-detail-name{color:#444;flex:1;font-size:.88rem;font-weight:800}.mypage__badge-detail-close{color:#999;cursor:pointer;background:0 0;border:none;padding:2px 8px;font-size:.8rem}.mypage__badge-detail-desc{color:#555;margin:0 0 4px;font-size:.74rem}.mypage__badge-detail-date{color:#8a6406;margin:0;font-size:.7rem;font-weight:700}.mypage__badge--locked{color:#888;background:#f0f0f0;border-color:#ccc}.mypage__badge-emoji--locked{filter:grayscale();opacity:.45}.mypage__badge-progress-bar{background:#eee;border-radius:999px;width:100%;height:6px;margin:4px 0;overflow:hidden}.mypage__badge-progress-fill{background:#ffd23f;border-radius:999px;height:100%}.mypage__badge-progress-label{color:#888;margin:0;font-size:.7rem;font-weight:700}.mypage__tabs{gap:6px;margin-bottom:10px;display:flex}.mypage__tab{color:#888;cursor:pointer;background:#f1ece0;border:2px solid #0000;border-radius:8px;flex:1;padding:7px 0;font-size:.82rem;font-weight:700;transition:background .15s,color .15s}.mypage__tab.is-active{color:#1d6129;background:#fff6da;border-color:#e8c25a}.mypage__history{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.mypage__history-toggle{color:#777;cursor:pointer;background:#f1ece0;border:2px solid #0000;border-radius:8px;width:100%;margin-top:8px;padding:7px 0;font-size:.8rem;font-weight:700}.mypage__history-toggle:hover{color:#1d6129;background:#fff6da;border-color:#e8c25a}.mypage__history li{background:#fff;border:1px solid #e0d8c5;border-radius:8px;flex-direction:column;gap:4px;padding:8px 10px;font-size:.82rem;display:flex}.mypage__history-row{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.mypage__history-coplayers{color:#888;font-size:.74rem}.mypage__coplayer-link{color:#4d96ff;cursor:pointer;background:0 0;border:none;padding:0;font-size:.74rem;font-weight:700;text-decoration:underline}.mypage__coplayer-cpu{color:#888;font-size:.74rem;font-weight:700}.mypage__history li.is-win{background:#fff6da;border-color:#d1a200}.mypage__history-date{color:#888;flex:1}.mypage__history-result{font-weight:700}.mypage__history-money{text-align:right;min-width:56px;font-weight:800}.mypage__history-mode{white-space:nowrap;border-radius:999px;padding:1px 6px;font-size:.7rem;font-weight:800}.mypage__history-mode--standard{color:#666;background:#eee}.mypage__history-mode--ranked{color:#b8860b;background:#fff6da}.mypage__history-rating{white-space:nowrap;font-size:.75rem;font-weight:800}.mypage__history-rating.is-up{color:#2b8a3e}.mypage__history-rating.is-down{color:#d1432c}.mypage__empty{color:#888;margin:0;font-size:.85rem}.mypage__hint{color:#888;margin:6px 0 0;font-size:.75rem}.mypage__feedback-link{color:#4d96ff;cursor:pointer;background:0 0;border:1px solid #4d96ff;border-radius:8px;margin:20px auto 0;padding:8px 14px;font-size:.8rem;font-weight:700;display:block}.mypage__footer{justify-content:center;gap:10px;margin-top:8px;display:flex}.mypage__logout,.mypage__back{cursor:pointer;border:none;border-radius:8px;padding:10px 18px;font-size:.85rem;font-weight:700}.mypage__logout{color:#555;background:#eee}.mypage__back{color:#fff;background:#2b2b2b}.mypage__danger-zone{border-top:1px dashed #ddd;justify-content:center;margin-top:28px;padding-top:14px;display:flex}.mypage__delete-account-link{color:#b3b3b3;cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:.75rem;font-weight:700;text-decoration:underline}.mypage__delete-account-link:hover{color:#d1432c}.mypage__delete-confirm{background:#fff3f0;border:2px solid #d1432c;border-radius:10px;width:100%;max-width:420px;padding:14px}.mypage__delete-warning{color:#9c2e1c;margin:0 0 12px;font-size:.82rem;font-weight:700;line-height:1.5}.mypage__delete-confirm-actions{gap:8px;display:flex}.mypage__delete-cancel,.mypage__delete-confirm-btn{cursor:pointer;border:none;border-radius:8px;flex:1;padding:9px 0;font-size:.82rem;font-weight:800}.mypage__delete-cancel{color:#555;background:#eee}.mypage__delete-confirm-btn{color:#fff;background:#d1432c}.mypage__delete-confirm-btn:disabled,.mypage__delete-cancel:disabled{opacity:.6;cursor:not-allowed}.mypage__error{color:#d1432c;margin:10px 0 0;font-size:.78rem;font-weight:700}.mypage__float-back{z-index:40;color:#888;cursor:pointer;opacity:.85;background:#fffaf0;border:1px solid #ddd;border-radius:999px;padding:8px 14px;font-size:.74rem;font-weight:700;position:fixed;bottom:16px;right:16px;box-shadow:0 2px 8px #0000001f}.mypage__float-back:active{opacity:1}.mypage__combos{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.mypage__combo{background:#fff6da;border:2px solid #e8c25a;border-radius:10px;flex-direction:column;gap:2px;padding:8px 12px;display:flex}.mypage__combo.is-hidden{background:#f0f0f0;border-color:#ccc}.mypage__combo-name{color:#4a3d1f;font-size:.85rem;font-weight:800}.mypage__combo-name--hidden{color:#999;letter-spacing:.1em}.mypage__combo-tagline{color:#6b5d47;font-size:.72rem}.leaderboard-page__back{color:#666;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #ccc;border-radius:999px;flex-shrink:0;margin-left:auto;padding:8px 14px;font-size:.78rem;font-weight:700}.leaderboard-page__empty{text-align:center;color:#888;padding:24px 8px;font-weight:700}.leaderboard-page__list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.leaderboard-page__row{text-align:left;cursor:pointer;background:#fffaf0;border:2px solid #ccc;border-radius:10px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-family:inherit;display:flex}.leaderboard-page__row:hover{border-color:#999}.leaderboard-page__row.is-you{background:#fff6da;border-color:#e8c25a}.leaderboard-page__row.is-champion{background:linear-gradient(135deg,#fff6da,#fffaf0);border-color:#ffd23f;box-shadow:0 0 0 2px #ffd23f,0 2px 10px #d1a2004d}.leaderboard-page__row--me{cursor:default}.leaderboard-page__rank{text-align:center;color:#666;min-width:28px;font-size:1.1rem;font-weight:900}.leaderboard-page__row.is-champion .leaderboard-page__rank{font-size:1.4rem}.leaderboard-page__icon{font-size:1.2rem}.leaderboard-page__name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:800;overflow:hidden}.leaderboard-page__rating{color:#b8860b;white-space:nowrap;font-size:.95rem;font-weight:900}.leaderboard-page__divider{border:none;border-top:2px dashed #ccc;margin:16px 0}.weekly-news{background:#f2e9d2;border:1px solid #cbb98a;border-radius:4px;margin:12px 0;padding:10px 14px;box-shadow:inset 0 0 0 1px #78643c26}.weekly-news__title{letter-spacing:.06em;color:#4a3d1f;text-align:center;border-bottom:1px solid #b8a575;margin:0 0 6px;padding-bottom:6px;font-size:.82rem;font-weight:900}.weekly-news__list{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.weekly-news__item{letter-spacing:.02em;color:#4a3d1f;white-space:nowrap;align-items:baseline;gap:6px;font-size:.74rem;line-height:1.5;display:flex;overflow:hidden}.weekly-news__item+.weekly-news__item{border-top:1px dotted #cbb98a;padding-top:3px}.weekly-news__item-title{flex-shrink:0;font-weight:800}.weekly-news__item-title:after{content:"："}.weekly-news__item-name{text-overflow:ellipsis;font-weight:700;overflow:hidden}.weekly-news__item-value{color:#8a6406;flex-shrink:0;font-weight:800}.weekly-news__item-meta{border-top:1px solid #b8a575;margin-top:8px;padding-top:6px}.weekly-news__item-meta-title{letter-spacing:.04em;color:#4a3d1f;text-align:center;margin:0 0 4px;font-size:.74rem;font-weight:900}.weekly-news__item-meta-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.weekly-news__item-meta-entry{color:#4a3d1f;background:#ffffff80;border-radius:6px;align-items:center;gap:8px;padding:4px 8px;font-size:.78rem;font-weight:700;display:flex}.weekly-news__item-meta-rank{text-align:center;flex-shrink:0;width:1.4em;font-size:.95rem}.weekly-news__item-meta-emoji{flex-shrink:0;font-size:1.05rem}.weekly-news__item-meta-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.daily-condition-banner{text-align:center;background:#eafbe7;border:1px solid #6bcb77;border-radius:8px;padding:10px 14px;font-size:.82rem}.daily-condition-banner--normal{color:#999;background:0 0;border:none;padding:0;font-size:.76rem;font-weight:700}.daily-condition-banner__label{color:#2b8a3e;font-weight:800;display:block}.daily-condition-banner__desc{color:#4a6b4e;margin-top:2px;display:block}.lobby{text-align:center;flex-direction:column;gap:20px;max-width:520px;margin:0 auto;padding:32px 20px 24px;display:flex;position:relative}.lobby__login-float{z-index:5;flex-direction:column;align-items:flex-end;gap:2px;max-width:160px;display:flex;position:absolute;top:12px;right:12px}.lobby__login-float-hint{color:#999;text-align:right;overflow-wrap:break-word;margin:0;font-size:.62rem}.lobby__login-float .auth__missing-config{color:#b33;text-align:right;overflow-wrap:break-word;margin:0;font-size:.6rem}.lobby__header{margin-bottom:-4px}.lobby__header--guest{padding-right:72px}.lobby__header--guest .lobby__title{font-size:1.6rem}@media (width<=480px){.lobby__login-float{align-items:center;max-width:none;margin:0 0 10px;position:static}.lobby__login-float-hint,.lobby__login-float .auth__missing-config{text-align:center}.lobby__header--guest{padding-right:0}.lobby__header--guest .lobby__title{font-size:2rem}}.lobby__title{margin:0 0 6px;font-size:2rem}.lobby__tagline{color:#6b5d47;margin:0;font-size:.88rem;line-height:1.5}.lobby__modes{flex-direction:column;gap:12px;display:flex}.lobby__mode-card{background:#fffaf0;border:3px solid #333;border-radius:12px;flex-direction:column;gap:10px;padding:18px 20px;display:flex}.lobby__mode-title{text-align:left;margin:0;font-size:1.05rem}.lobby__label{text-align:left;font-size:.88rem;font-weight:700}.lobby__start-hint{color:#d1432c;text-align:left;margin:0;font-size:.72rem;font-weight:700}.lobby__start{color:#fff;cursor:pointer;background:#d1432c;border:none;border-radius:10px;margin-top:4px;padding:16px 20px;font-size:1.15rem;font-weight:800;transition:transform 80ms;box-shadow:0 3px #9c2e1c}.lobby__start:hover{transform:translateY(-1px)}.lobby__start:active{transform:translateY(2px);box-shadow:0 1px #9c2e1c}.lobby__solo-rated{text-align:left;background:#fff6da;border:1px solid #e8c25a;border-radius:10px;flex-direction:column;gap:6px;margin-top:8px;padding:12px;display:flex}.lobby__solo-rated-title{color:#8a6406;justify-content:space-between;align-items:center;gap:8px;margin:0;font-size:.9rem;font-weight:800;display:flex}.lobby__solo-rated-value{font-size:.85rem}.lobby__solo-rated-hint{color:#8a7a4a;margin:0;font-size:.72rem;line-height:1.5}.lobby__solo-rated-toggle{color:#8a6406;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:.72rem;font-weight:700;text-decoration:underline}.lobby__solo-rated-start{color:#fff;cursor:pointer;background:#b8860b;border:none;border-radius:8px;padding:10px 16px;font-size:.92rem;font-weight:800;box-shadow:0 3px #8a6406}.lobby__daily-challenge-link{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ff8a3d,#ff5d5d);border:none;border-radius:8px;width:100%;margin-top:10px;padding:10px 16px;font-size:.88rem;font-weight:800}.lobby__daily-challenge-link--with-champion{border-radius:8px 8px 0 0}.lobby__daily-champion{color:#7a5b00;cursor:pointer;background:linear-gradient(135deg,#fff7dc,#ffe9a8);border:none;border-top:2px solid #ff8a3d;border-radius:0 0 8px 8px;justify-content:center;align-items:center;gap:6px;width:100%;margin-top:0;padding:6px 12px;font-size:.76rem;font-weight:700;display:flex}.lobby__daily-champion--static{cursor:default}.lobby__daily-champion-score{color:#a06a00;font-weight:800}.lobby__online-link{color:#fff;cursor:pointer;background:#4d96ff;border:none;border-radius:10px;width:100%;margin-top:4px;padding:14px 16px;font-size:.95rem;font-weight:800;transition:transform 80ms;display:block;box-shadow:0 3px #2d6fd1}.lobby__online-link:hover{transform:translateY(-1px)}.lobby__online-link:active{transform:translateY(2px);box-shadow:0 1px #2d6fd1}.lobby__private-link{color:#2b8a3e;cursor:pointer;background:#fff;border:2px solid #6bcb77;border-radius:10px;width:100%;margin-top:8px;padding:10px 16px;font-size:.85rem;font-weight:800;display:block}.lobby__leaderboard-link{color:#b8860b;cursor:pointer;background:#fff;border:2px solid #ffd23f;border-radius:10px;width:100%;margin-top:8px;padding:10px 16px;font-size:.85rem;font-weight:800;display:block}.lobby__announcements-box{text-align:left;background:#fff6da;border:2px solid #e8c25a;border-radius:12px;padding:14px 20px}.lobby__announcements-title{margin:0 0 8px;font-size:.95rem}.lobby__announcements{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.lobby__announcements li{color:#555;gap:10px;font-size:.82rem;line-height:1.5;display:flex}.lobby__announcements-date{color:#8a6d1f;flex-shrink:0;font-weight:800}.lobby__announcements-collapsed{color:#555;align-items:center;gap:10px;margin:0;font-size:.82rem;display:flex}.lobby__announcements-collapsed-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.lobby__announcements-toggle{color:#8a6d1f;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;font-size:.78rem;font-weight:700;text-decoration:underline}.lobby__rules-box{text-align:left;background:#fffaf0;border:2px solid #333;border-radius:12px;padding:16px 20px}.lobby__rules-title{margin:0 0 10px;font-size:1rem}.lobby__rules{color:#555;margin:0;padding-left:1.2em;font-size:.85rem;line-height:1.6}.lobby__rules li{margin-bottom:6px}.lobby__rules li:last-child{margin-bottom:0}.lobby__rules-link{color:#4d96ff;cursor:pointer;background:#fff;border:1px solid #4d96ff;border-radius:8px;width:100%;margin-top:12px;padding:8px 10px;font-size:.8rem;font-weight:700;display:block}.lobby__feedback-link{color:#999;cursor:pointer;background:0 0;border:none;padding:4px 6px;font-size:.78rem;font-weight:700;text-decoration:underline}.lobby__footer{margin-top:-4px}.lobby__legal-links{justify-content:center;gap:14px;margin-top:10px;display:flex}.lobby__legal-link{color:#aaa;cursor:pointer;background:0 0;border:none;padding:4px 6px;font-size:.72rem;text-decoration:underline}.lobby__admin-link{color:#999;cursor:pointer;background:0 0;border:1px solid #ddd;border-radius:8px;margin:0 auto;padding:8px 16px;font-size:.78rem;font-weight:700;display:block}.lobby__passcode{background:#fffaf0;border:2px solid #333;border-radius:10px;max-width:280px;margin:0 auto;padding:14px}.lobby__passcode-hint{color:#777;margin:0 0 8px;font-size:.75rem}.lobby__passcode-input{box-sizing:border-box;border:1px solid #ccc;border-radius:6px;width:100%;margin-bottom:8px;padding:6px 8px;font-size:.85rem}.lobby__passcode-actions{justify-content:center;gap:8px;display:flex}.lobby__passcode-submit,.lobby__passcode-cancel{cursor:pointer;border:none;border-radius:6px;padding:6px 14px;font-size:.8rem;font-weight:700}.lobby__passcode-submit{color:#fff;background:#2b2b2b}.lobby__passcode-cancel{color:#555;background:#eee}.lobby__passcode-error{color:#d1432c;margin:8px 0 0;font-size:.75rem;font-weight:700}.horse-card{cursor:pointer;text-align:left;background:#fffaf0;border:3px solid #333;border-radius:10px;flex-direction:column;width:100%;padding:0;font-family:inherit;transition:transform .12s,box-shadow .12s;display:flex;position:relative;overflow:visible;box-shadow:0 2px #00000026;container-type:inline-size}.horse-card:hover{transform:translateY(-2px);box-shadow:0 5px 10px #0000002e}.horse-card--selected{outline:3px solid #2b2b2b;transform:translateY(-3px)scale(1.02);box-shadow:0 8px 14px #00000040}.horse-card__ticket-pill{z-index:2;white-space:nowrap;color:#3a2c00;pointer-events:none;background:#ffd23f;border:2px solid #3a2c00;border-radius:999px;padding:1px 8px;font-size:.64rem;font-weight:800;position:absolute;top:-9px;left:50%;transform:translate(-50%);box-shadow:0 2px 4px #00000040}.horse-card--rare{box-shadow:0 0 0 2px #ffd23f,0 2px #00000026}.horse-card--super-rare{background-image:linear-gradient(#fffaf0,#fffaf0),linear-gradient(90deg,#ff5d5d,#ffd23f,#6bcb77,#4d96ff,#c77dff,#ff5d5d);background-size:100% 100%,300% 100%;background-origin:border-box;background-clip:padding-box,border-box;border:4px solid #0000;animation:2s linear infinite super-rare-border-shift;box-shadow:0 0 16px #c77dff8c,0 2px #00000026}@keyframes super-rare-border-shift{0%{background-position:0 0,0 0}to{background-position:0 0,100% 0}}.horse-card--legend{background-image:linear-gradient(#fffaf0,#fffaf0),linear-gradient(90deg,#ffd23f,#ff5d5d,#c77dff,#4d96ff,#6bcb77,#ffd23f);background-size:100% 100%,300% 100%;background-origin:border-box;background-clip:padding-box,border-box;border:5px solid #0000;animation:1.1s linear infinite legend-border-shift;box-shadow:0 0 22px #ffd23fb3,0 2px #00000026}@keyframes legend-border-shift{0%{background-position:0 0,0 0}to{background-position:0 0,100% 0}}.horse-card__rare-tag{color:#b8860b;white-space:nowrap;background:#fff;border-radius:999px;flex-shrink:0;margin-left:auto;padding:1px 5px;font-size:.6rem;font-weight:800}.horse-card__rare-tag--super{color:#7b2fbe}.horse-card__rare-tag--legend{color:#b8860b;font-size:.68rem}.horse-card__skill{background:#e8f1fb;border:1px solid #c3d9f0;border-radius:6px;flex-wrap:wrap;align-items:baseline;gap:2px 6px;margin:0 10px 8px;padding:4px 8px;display:flex}.horse-card__skill-name{color:#2b6cb0;white-space:nowrap;flex-shrink:0;font-size:.68rem;font-weight:800}.horse-card__skill-desc{color:#55708c;font-size:.62rem;line-height:1.4}.horse-card__favorite-tag{flex-shrink:0;font-size:.9rem;line-height:1}.horse-card__head{color:#fff;text-shadow:1px 1px #00000059;border-radius:7px 7px 0 0;flex-wrap:nowrap;align-items:center;gap:4px;padding:6px 8px;font-weight:700;display:flex}.horse-card__number{background:#00000040;border-radius:6px;flex-shrink:0;padding:1px 5px;font-size:.76rem}.horse-card__name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:clamp(.68rem,5.5cqw,.92rem);overflow:hidden}.horse-card__custom-emoji{flex-shrink:0;font-size:.9rem}.horse-card__morning-odds{color:#2b6cb0;background:#eef3fb;border:1px solid #c3d9f0;border-radius:6px;justify-content:space-between;align-items:center;gap:6px;margin:6px 10px 0;padding:3px 8px;font-size:.66rem;font-weight:800;display:flex}.horse-card__stats{flex-direction:column;gap:4px;padding:8px 10px;display:flex}.horse-card__stat{color:#555;grid-template-columns:38px 1fr 28px;align-items:center;gap:6px;font-size:.72rem;display:grid}.horse-card__bar{background:#e7e0d2;border-radius:4px;height:7px;overflow:hidden}.horse-card__bar-fill{border-radius:4px;height:100%}.horse-card__bar-fill--rainbow{background:linear-gradient(90deg,#ff5d5d,#ffd23f,#6bcb77,#4d96ff,#c77dff,#ff5d5d) 0 0/300% 100%;animation:1.6s linear infinite rainbow-shift}@keyframes rainbow-shift{0%{background-position:0 0}to{background-position:100% 0}}.horse-card__quote{background:#fff6da;border:1px solid #e8c25a;border-radius:6px;margin:0 10px 8px;padding:6px 8px}.horse-card__quote--rare{background:linear-gradient(135deg,#fff6da,#ffe9a8);border:2px solid #d1a200;animation:1.6s ease-in-out infinite quote-rare-glow;box-shadow:0 0 10px #d1a2008c}@keyframes quote-rare-glow{0%,to{box-shadow:0 0 6px #d1a20066}50%{box-shadow:0 0 14px #d1a200d9}}.horse-card__quote-text{color:#444;margin:0 0 4px;font-size:.74rem}.horse-card__quote-text--rare{color:#8a5d00;text-shadow:0 0 6px #ffd23fb3;font-size:.86rem;font-weight:800;animation:1.6s ease-in-out infinite quote-text-rare-glow}@keyframes quote-text-rare-glow{0%,to{text-shadow:0 0 4px #ffd23f80}50%{text-shadow:0 0 10px #ffb400f2}}.horse-card__quote-deltas{flex-wrap:wrap;gap:6px;margin:0;display:flex}.horse-card__quote-delta{font-size:.72rem;font-weight:800}.horse-card__quote-delta.is-up{color:#2b8a3e}.horse-card__quote-delta.is-down{color:#d1432c}.horse-card__odds{color:#d1432c;margin-top:auto;padding:4px 10px 8px;font-size:.95rem;font-weight:800}.course-description__highlight{color:#b8860b;background:#fff6da;border-radius:4px;padding:1px 4px}.item-shop{background:#fffaf0;border:3px solid #333;border-radius:12px;margin-top:16px;padding:16px}.item-shop h3{margin:0;font-size:.9rem}.item-shop__header-row{justify-content:space-between;align-items:center;gap:8px;margin:0 0 6px;display:flex}.item-shop__spendable{color:#8a6d1f;background:#fff6da;border:1px solid #e8c25a;border-radius:999px;flex-shrink:0;padding:3px 10px;font-size:.78rem;font-weight:800}.item-shop__hint{color:#888;margin:0 0 12px;font-size:.75rem}.item-shop__unlimited-banner{color:#9c2e1c;text-align:center;background:linear-gradient(135deg,#ffe79b,#ffd23f);border:2px solid #d1432c;border-radius:8px;margin:0 0 12px;padding:10px 14px;font-size:.88rem;font-weight:800;animation:1.6s ease-in-out infinite unlimited-pulse}@keyframes unlimited-pulse{0%,to{box-shadow:0 0 #d1432c4d}50%{box-shadow:0 0 0 6px #d1432c00}}.item-shop__purchased{flex-direction:column;gap:4px;margin:0 0 12px;padding:0;list-style:none;display:flex}.item-shop__purchased li{background:#f3eaff;border:1px solid #6b4fa0;border-radius:6px;align-items:center;gap:8px;padding:5px 10px;font-size:.78rem;display:flex}.item-shop__remove{color:#fff;cursor:pointer;background:#d1432c;border:none;border-radius:50%;width:20px;height:20px;margin-left:auto;font-weight:800;line-height:1}.item-shop__tabs{gap:6px;margin-bottom:12px;display:flex}.item-shop__tab{color:#777;cursor:pointer;background:#fff;border:2px solid #ddd;border-radius:8px;flex:1;padding:8px 4px;font-size:.74rem;font-weight:800}.item-shop__tab--recommend.is-active{color:#8a5d00;background:#fff6da;border-color:#e8c25a}.item-shop__tab--all.is-active{color:#2b2b2b;background:#eee;border-color:#2b2b2b}.item-shop__tab--cheat.is-active{color:#9c2e1c;background:#ffe3e3;border-color:#9c2e1c}.item-shop__tab--counter.is-active{color:#1e4fa0;background:#e3eeff;border-color:#1e4fa0}.item-shop__tab--field.is-active{color:#1d6129;background:#e6f4ec;border-color:#1d6129}.item-shop__category{margin-bottom:14px}.item-shop__category--inactive{display:none}.item-shop__category-label{border-radius:999px;margin:0 0 8px;padding:4px 10px;font-size:.8rem;font-weight:800;display:inline-block}.item-shop__category-label--cheat{color:#9c2e1c;background:#ffe3e3}.item-shop__category-label--counter{color:#1e4fa0;background:#e3eeff}.item-shop__category-label--field{color:#1d6129;background:#e6f4ec}.item-shop__recommend-empty{color:#888;text-align:center;padding:12px 0;font-size:.78rem}.item-shop__recommend-list{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.item-shop__item--recommend{width:100%}.item-shop__recommend-head{align-items:center;gap:8px;width:100%;display:flex}.item-shop__recommend-head .item-shop__item-cost{margin-left:auto}.item-shop__recommend-reason{color:#8a6d1f;background:#fff6da;border-radius:6px;margin:2px 0 0;padding:4px 8px;font-size:.72rem}.item-shop__recommend-toggle{color:#6b4fa0;cursor:pointer;background:0 0;border:none;align-self:flex-start;margin-top:2px;padding:0;font-family:inherit;font-size:.68rem;font-weight:700}.item-shop__catalog{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-bottom:0;display:grid}.item-shop__item{cursor:pointer;text-align:left;-webkit-user-select:none;user-select:none;background:#fff;border:2px solid #ccc;border-radius:8px;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;font-family:inherit;display:flex}.item-shop__item--disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.item-shop__item--cheat{border-color:#f0b3a8}.item-shop__item--counter{border-color:#aec7ec}.item-shop__item--field{border-color:#a9d6bb}.item-shop__item--selected{border-color:#d1432c;box-shadow:0 0 0 2px #d1432c4d}.item-shop__item-emoji{font-size:1.3rem}.item-shop__item-name{font-size:.85rem;font-weight:800}.item-shop__item-desc{color:#777;font-size:.7rem}.item-shop__item-desc--ready{color:#2b8a3e;margin:2px 0;font-size:.72rem;font-weight:800}.item-shop__item-footer{justify-content:space-between;align-items:center;gap:6px;width:100%;display:flex}.item-shop__item-cost{color:#d1432c;white-space:nowrap;font-size:.8rem;font-weight:800}.item-shop__item-timing{color:#777;white-space:nowrap;background:#f4ead2;border-radius:999px;padding:1px 6px;font-size:.66rem;font-weight:700}.item-shop__card-picker{flex-wrap:wrap;gap:4px;width:100%;margin:4px 0;display:flex}.item-shop__card-chip{color:#444;cursor:pointer;white-space:nowrap;background:#fff;border:2px solid #ccc;border-radius:999px;padding:3px 8px;font-family:inherit;font-size:.7rem;font-weight:700}.item-shop__card-chip:disabled{opacity:.5;cursor:not-allowed}.item-shop__card-chip.is-selected{color:#2b2b2b;background:#fff6da;border-color:#e8c25a;font-weight:800}.item-shop__card-ready-hint{color:#2b8a3e;width:100%;margin-top:2px;font-size:.7rem;font-weight:800;display:block}.item-shop__submit{color:#fff;cursor:pointer;background:#6b4fa0;border:none;border-radius:8px;width:100%;margin-top:4px;padding:10px;font-size:.9rem;font-weight:800;box-shadow:0 3px #4a3470}.item-shop__submit:disabled{box-shadow:none;cursor:not-allowed;background:#aaa}.cpu-tag{color:#999;vertical-align:middle;margin-right:2px;font-size:.7em;display:inline-block}.horse-info-btn{z-index:45;color:#fff;cursor:pointer;background:#2b8a3ee6;border:none;border-radius:999px;padding:8px 14px;font-size:.8rem;font-weight:700;position:fixed;bottom:14px;right:14px;box-shadow:0 2px 8px #00000040}.horse-info-btn:active{transform:scale(.96)}.winner-interview{text-align:left;background:#fff6da;border:2px solid #e8c25a;border-radius:12px;max-width:480px;margin:0 auto 12px;padding:10px 16px;animation:.3s winner-interview-fade-in}@keyframes winner-interview-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.winner-interview__label{color:#8a6406;margin:0 0 4px;font-size:.7rem;font-weight:800}.winner-interview__quote{color:#333;margin:0;font-size:.9rem;font-weight:700}.winner-interview__addendum{color:#b8860b;text-align:right;margin:4px 0 0;font-size:.76rem;font-weight:700}.horse-info-sheet__overlay{z-index:80;background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.horse-info-sheet{background:#fffaf0;border-radius:18px 18px 0 0;flex-direction:column;width:100%;max-width:600px;max-height:80vh;animation:.18s ease-out horse-info-sheet-rise;display:flex;overflow:hidden;box-shadow:0 -4px 20px #00000040}@keyframes horse-info-sheet-rise{0%{opacity:.6;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.horse-info-sheet__handle{background:#ddd;border-radius:999px;width:40px;height:4px;margin:8px auto 0}.horse-info-sheet__header{justify-content:space-between;align-items:center;padding:6px 16px 0;display:flex}.horse-info-sheet__header h3{margin:0;font-size:1rem}.horse-info-sheet__close{color:#777;cursor:pointer;background:0 0;border:none;padding:6px 10px;font-size:.9rem}.horse-info-sheet__grid{grid-template-columns:repeat(2,1fr);gap:14px 8px;padding:12px 16px 20px;display:grid;overflow-y:auto}.horse-info-sheet__grid .horse-card__name{font-size:clamp(.6rem,5cqw,.8rem)}.horse-info-sheet__grid .horse-card__stat{grid-template-columns:32px 1fr 24px;gap:4px;font-size:.62rem}.horse-info-sheet__grid .horse-card__quote{margin:0 6px 6px;padding:5px 6px}.horse-info-sheet__grid .horse-card__quote-text{white-space:normal;word-break:break-word;font-size:.64rem;overflow:visible}.horse-info-sheet__grid .horse-card__quote-text--rare{font-size:.72rem}.horse-info-sheet__grid .horse-card__quote-delta{font-size:.62rem}.horse-info-sheet__grid .horse-card__stats{gap:3px;padding:6px 8px}.horse-info-sheet__card-wrap{flex-direction:column;gap:3px;display:flex}.horse-info-sheet__card-wrap .horse-card{flex:1}.horse-info-sheet__grid .horse-card__skill{margin:0 6px 6px;padding:3px 6px}.horse-info-sheet__grid .horse-card__skill-desc{font-size:.58rem}.horse-info-sheet__greeting{color:#8a6406;background:#fff6da;border-radius:6px;margin:0;padding:3px 6px;font-size:.66rem;font-weight:700}.sticky-horse-grid__toggle{display:none}.sticky-horse-grid__compact{flex-wrap:wrap;gap:6px;padding:8px 0;display:flex}.sticky-horse-grid__chip{background:#fff;border:2px solid #ccc;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:700}.sticky-horse-grid__chip.is-selected{background:#fff6da;outline:2px solid #2b2b2b}@media (width>=481px){.sticky-horse-grid{z-index:35;background:#fffaf0;padding-top:8px;position:sticky;top:0}.sticky-horse-grid__toggle{color:#2b2b2b;cursor:pointer;background:#fff;border:2px solid #ccc;border-radius:999px;margin:0 0 8px;padding:6px 14px;font-size:.78rem;font-weight:700;display:block}}.floating-nav-btn{z-index:45;color:#fff;cursor:pointer;background:#d1432ceb;border:none;border-radius:999px;padding:8px 16px;font-size:.78rem;font-weight:700;animation:1.8s ease-in-out infinite floating-nav-btn-pulse;position:fixed;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #00000040}.floating-nav-btn:active{transform:translate(-50%)scale(.96)}@keyframes floating-nav-btn-pulse{0%,to{box-shadow:0 2px 8px #00000040}50%{box-shadow:0 2px 8px #00000040,0 0 0 6px #d1432c26}}.streak-badge{color:#d1432c;background:#fff0e0;border:2px solid #ff924c;border-radius:999px;align-items:center;gap:4px;margin:4px 0;padding:4px 12px;font-size:.82rem;font-weight:800;display:inline-flex}.streak-badge__flame{animation:.6s ease-in-out infinite streak-flame-wiggle;display:inline-block}@keyframes streak-flame-wiggle{0%,to{transform:rotate(-6deg)scale(1)}50%{transform:rotate(6deg)scale(1.1)}}.match-narrative{flex-direction:column;align-items:center;gap:4px;margin:6px 0;display:flex}.match-narrative__leader-line{color:#6b5d3d;margin:0;font-size:.85rem;font-weight:800}.match-narrative__rivalry{color:#8a5a2b;margin:0;font-size:.78rem;font-weight:700}.match-narrative__final-tag{color:#fff;letter-spacing:.05em;background:linear-gradient(135deg,#2d1b4e,#d1432c);border-radius:999px;margin-bottom:2px;padding:6px 18px;font-size:1rem;font-weight:900;animation:1.6s ease-in-out infinite final-race-glow;display:inline-block}@keyframes final-race-glow{0%,to{filter:brightness()}50%{filter:brightness(1.25)}}.match-narrative--final .match-narrative__leader-line{color:#d1432c;font-weight:900}.bet-quick-chips{gap:6px;margin-top:6px;display:flex}.bet-quick-chips__chip{color:#555;cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:999px;flex:1;padding:6px 0;font-size:.78rem;font-weight:700;transition:transform .1s}.bet-quick-chips__chip:active:not(:disabled){transform:scale(.94)}.bet-quick-chips__chip:disabled{opacity:.5;cursor:not-allowed}.bet-ticket{background:#fffaf0;border:2px solid #e0d8c5;border-radius:10px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.bet-ticket.is-disabled{opacity:.7}.bet-ticket__title{color:#8a6d1f;margin:0;font-size:.8rem;font-weight:800}.bet-ticket__confirmed-notice{color:#1d6b30;background:#e9f7ec;border:2px solid #2b8a3e;border-radius:8px;margin:0;padding:6px 10px;font-size:.8rem;font-weight:800}.bet-ticket__confirmed-notice-sub{color:#4f8a5e;font-size:.7rem;font-weight:700;display:block}.bet-ticket__horse-name{color:#333;margin:0;font-size:.95rem;font-weight:800}.bet-ticket__horse-name--empty{color:#999;font-size:.85rem;font-weight:700}.bet-ticket__readout-row{justify-content:center;align-items:center;gap:14px;margin:4px 0;display:flex}.bet-ticket__stepper{color:#333;cursor:pointer;touch-action:none;background:#fff;border:2px solid #ccc;border-radius:10px;flex-shrink:0;width:44px;height:44px;font-size:1.4rem;font-weight:900}.bet-ticket__stepper:disabled{opacity:.4;cursor:not-allowed}.bet-ticket__readout{justify-content:center;align-items:baseline;gap:2px;min-width:100px;animation:.12s ease-out bet-ticket-pop;display:inline-flex}@keyframes bet-ticket-pop{0%{transform:scale(1.12)}to{transform:scale(1)}}.bet-ticket__readout-number{color:#222;font-size:1.7rem;font-weight:900}.bet-ticket__readout-unit{color:#666;font-size:1.05rem;font-weight:800}.bet-ticket__slider{appearance:none;background:#e8dcc0;border-radius:999px;outline:none;width:100%;height:8px}.bet-ticket__slider::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#d1432c;border:3px solid #fff;border-radius:50%;width:28px;height:28px;box-shadow:0 2px 6px #0000004d}.bet-ticket__slider::-moz-range-thumb{cursor:pointer;background:#d1432c;border:3px solid #fff;border-radius:50%;width:28px;height:28px;box-shadow:0 2px 6px #0000004d}.bet-ticket__slider:disabled{opacity:.5}.bet-ticket__min-payout{color:#b8860b;text-align:center;margin:2px 0 0;font-size:.85rem;font-weight:800}.bet-ticket__summary{color:#888;text-align:center;margin:0;font-size:.78rem}.bet-ticket__summary-rest{color:#8a6d1f;font-weight:800}.favorite-cutin{z-index:120;background:#00000059;justify-content:center;align-items:center;animation:.2s favorite-cutin-dim-in;display:flex;position:fixed;inset:0}.favorite-cutin.is-closing{animation:.25s forwards favorite-cutin-fade-out}.favorite-cutin--rival .favorite-cutin__box{background:linear-gradient(135deg,#3a0d0d,#170303);border-color:#ff5d5d}.favorite-cutin--rival .favorite-cutin__label{color:#ff5d5d}.favorite-cutin__box{color:#fff;white-space:nowrap;background:linear-gradient(135deg,#3a2c00,#1a1400);border:3px solid #ffd23f;border-radius:14px;flex-direction:column;align-items:center;gap:4px;padding:16px 32px;animation:.3s announce-pop;display:flex}.favorite-cutin__label{color:#ffd23f;text-shadow:1px 1px #00000080;font-size:clamp(1rem,4.5vw,1.4rem);font-weight:900}.favorite-cutin__name{text-shadow:1px 1px #00000080;font-size:clamp(1.2rem,5.5vw,1.8rem);font-weight:900}@keyframes announce-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.6)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes favorite-cutin-dim-in{0%{opacity:0}to{opacity:1}}@keyframes favorite-cutin-fade-out{to{opacity:0}}.legend-cutin{z-index:121;background:#0000008c;justify-content:center;align-items:center;animation:.25s legend-cutin-dim-in;display:flex;position:fixed;inset:0}.legend-cutin.is-closing{animation:.25s forwards legend-cutin-fade-out}.legend-cutin__box{color:#fff;white-space:nowrap;background-color:#0000;background-image:linear-gradient(135deg,#1a1400,#000),linear-gradient(90deg,#ffd23f,#ff5d5d,#c77dff,#4d96ff,#6bcb77,#ffd23f);background-position:0 0;background-repeat:repeat;background-size:100% 100%,300% 100%;background-attachment:scroll;background-origin:border-box;background-clip:padding-box,border-box;border:4px solid #0000;border-radius:16px;flex-direction:column;align-items:center;gap:6px;padding:20px 40px;animation:.4s legend-cutin-pop,1.6s linear infinite legend-cutin-border-shift;display:flex;box-shadow:0 0 28px #ffd23f80}.legend-cutin__label{color:#ffd23f;text-shadow:1px 1px #0009;font-size:clamp(1.1rem,5vw,1.6rem);font-weight:900}.legend-cutin__name{text-shadow:1px 1px #0009;font-size:clamp(1.5rem,7vw,2.4rem);font-weight:900}@keyframes legend-cutin-pop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes legend-cutin-border-shift{0%{background-position:0 0,0 0}to{background-position:0 0,100% 0}}@keyframes legend-cutin-dim-in{0%{opacity:0}to{opacity:1}}@keyframes legend-cutin-fade-out{to{opacity:0}}.anniversary-cutin{z-index:120;background:#00000059;justify-content:center;align-items:center;animation:.2s anniversary-cutin-dim-in;display:flex;position:fixed;inset:0}.anniversary-cutin.is-closing{animation:.25s forwards anniversary-cutin-fade-out}.anniversary-cutin__box{color:#fff;white-space:nowrap;background:linear-gradient(135deg,#4a1a3a,#1a0014);border:3px solid #ff9fd6;border-radius:14px;flex-direction:column;align-items:center;gap:4px;padding:16px 32px;animation:.3s anniversary-cutin-pop;display:flex}.anniversary-cutin__label{color:#ff9fd6;text-shadow:1px 1px #00000080;font-size:clamp(1rem,4.5vw,1.4rem);font-weight:900}.anniversary-cutin__name{text-shadow:1px 1px #00000080;font-size:clamp(1.05rem,5vw,1.6rem);font-weight:900}@keyframes anniversary-cutin-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes anniversary-cutin-dim-in{0%{opacity:0}to{opacity:1}}@keyframes anniversary-cutin-fade-out{to{opacity:0}}.tutorial-overlay{z-index:200;background:#0000008c;justify-content:center;align-items:center;padding:16px;animation:.2s tutorial-overlay-dim-in;display:flex;position:fixed;inset:0}.tutorial-overlay__card{text-align:center;background:#fffaf0;border-radius:16px;width:100%;max-width:340px;padding:32px 24px 24px;animation:.25s tutorial-overlay-pop;position:relative;box-shadow:0 8px 24px #0000004d}.tutorial-overlay__close{color:#666;cursor:pointer;background:#eee;border:none;border-radius:50%;width:28px;height:28px;font-size:.9rem;font-weight:800;position:absolute;top:10px;right:10px}.tutorial-overlay__emoji{margin-bottom:8px;font-size:3rem;line-height:1}.tutorial-overlay__title{color:#2b2b2b;margin:0 0 10px;font-size:1.15rem;font-weight:900}.tutorial-overlay__body{color:#555;margin:0 0 18px;font-size:.9rem;line-height:1.6}.tutorial-overlay__dots{justify-content:center;gap:6px;margin-bottom:16px;display:flex}.tutorial-overlay__dot{background:#ddd;border-radius:50%;width:8px;height:8px}.tutorial-overlay__dot.is-active{background:#d1432c}.tutorial-overlay__next{color:#fff;cursor:pointer;background:#d1432c;border:none;border-radius:10px;width:100%;padding:12px 16px;font-size:.95rem;font-weight:800;box-shadow:0 3px #a3341f}.tutorial-overlay__next:active{transform:translateY(2px);box-shadow:0 1px #a3341f}@keyframes tutorial-overlay-dim-in{0%{opacity:0}to{opacity:1}}@keyframes tutorial-overlay-pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.betting{max-width:900px;margin:0 auto;padding:20px}.betting--online{padding-top:58px}.betting__header{text-align:center;margin-bottom:16px}.betting__header p{color:#666;margin:2px 0 8px;font-size:.85rem}.betting__locked-banner{text-align:center;color:#a33;background:#fdecea;border:1px solid #e0a8a0;border-radius:8px;margin:0 0 12px;padding:8px 12px;font-size:.82rem;font-weight:700}.betting__grid--locked{opacity:.6;pointer-events:none}.betting__min-odds{color:#8a6d1f;background:#fff6da;border:1px solid #e8c25a;border-radius:999px;margin:0 0 6px;padding:3px 12px;font-size:.78rem;font-weight:700;display:inline-block}.betting__daily-condition{color:#2b8a3e;background:#eafbe7;border:1px solid #6bcb77;border-radius:999px;margin:0 0 6px 6px;padding:3px 12px;font-size:.78rem;font-weight:700;display:inline-block}.betting__morning-odds-legend{color:#888;margin:4px 0 0;font-size:.7rem}.betting__grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px 12px;margin-bottom:20px;display:grid}@media (width<=480px){.betting__grid{grid-template-columns:repeat(2,1fr);gap:14px 8px}.betting__grid .horse-card__name{font-size:clamp(.6rem,5cqw,.8rem)}.betting__grid .horse-card__stat{grid-template-columns:32px 1fr 24px;gap:4px;font-size:.62rem}.betting__grid .horse-card__quote{margin:0 6px 6px;padding:5px 6px}.betting__grid .horse-card__quote-text{white-space:normal;word-break:break-word;font-size:.64rem;overflow:visible}.betting__grid .horse-card__quote-text--rare{font-size:.72rem}.betting__grid .horse-card__quote-delta{font-size:.62rem}.betting__grid .horse-card__stats{gap:3px;padding:6px 8px}}.betting__players-money{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.betting__player-chip{color:#555;background:#fff;border:1px solid #ccc;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:700}.betting__player-chip.is-you{color:#b8860b;background:#fff6da;border-color:#e8c25a}.betting__cpu-quip{color:#8a6406;white-space:nowrap;text-overflow:ellipsis;width:100%;margin:-6px 0 8px;font-size:.74rem;font-weight:700;overflow:hidden}.betting__panel{background:#fffaf0;border:3px solid #333;border-radius:12px;flex-direction:column;gap:10px;padding:18px;display:flex}.betting__hint{color:#888;margin:0;font-size:.78rem}.betting__hint--warn{color:#d1432c;font-size:.85rem;font-weight:700}.betting__confirm{color:#fff;cursor:pointer;background:#2b8a3e;border:none;border-radius:10px;padding:12px;font-size:1rem;font-weight:800;box-shadow:0 3px #1d6129}.betting__confirm:disabled{box-shadow:none;cursor:not-allowed;background:#aaa}.betting__confirm--locked{background:#4d96ff;box-shadow:0 3px #2d6fd1}.betting__quick-start{color:#fff;cursor:pointer;background:#d1432c;border:none;border-radius:10px;margin-top:8px;padding:12px;font-size:1rem;font-weight:800;box-shadow:0 3px #9c2e1c}.betting__quick-start:disabled{box-shadow:none;cursor:not-allowed;background:#aaa}.betting__lock-status{color:#555;text-align:center;margin:0;font-size:.8rem;font-weight:700}.betting__final-summary{background:#d8f3dc;border:2px solid #2b8a3e;border-radius:10px;margin-top:16px;padding:14px 16px}.betting__final-summary-title{color:#1d6129;margin:0 0 8px;font-size:.95rem;font-weight:800}.betting__final-summary-bet{color:#1d6129;margin:0;font-size:.9rem;font-weight:700}.betting__final-summary-items{color:#1d6129;margin:8px 0 0;padding-left:1.3em;font-size:.85rem;font-weight:600}.betting__final-summary-items li{margin-bottom:4px}.betting__final-summary-no-items{color:#4d7a57;margin:8px 0 0;font-size:.82rem}.betting__start-race{color:#fff;cursor:pointer;background:#d1432c;border:none;border-radius:14px;width:100%;margin-top:20px;padding:18px;font-size:1.25rem;font-weight:900;transition:transform 80ms;display:block;box-shadow:0 4px #9c2e1c}.betting__start-race:hover:not(:disabled){transform:translateY(-1px)}.betting__start-race:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #9c2e1c}.betting__start-race:disabled{box-shadow:none;cursor:not-allowed;background:#aaa}.payout-meter{z-index:4;pointer-events:none;border-radius:10px;flex-direction:column;align-items:center;gap:1px;padding:5px 12px;font-weight:800;line-height:1.15;display:flex;position:absolute;top:8px;right:8px}.payout-meter__label{opacity:.85;white-space:nowrap;font-size:.62rem}.payout-meter__amount{white-space:nowrap}.payout-meter--leading{color:#ffd23f;text-shadow:1px 1px #00000080;background:#141414bf;border:2px solid #ffd23f;animation:.9s ease-in-out infinite payout-meter-pulse}.payout-meter--leading .payout-meter__amount{font-size:1.25rem}.payout-meter--trailing{color:#f0f0f0;background:#7878788c;border:2px solid #d2d2d299}.payout-meter--trailing .payout-meter__amount{font-size:.82rem}@keyframes payout-meter-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.payout-meter--shake{animation:.2s payout-meter-shake}@keyframes payout-meter-shake{0%{transform:translate(0)rotate(0)}25%{transform:translate(-6px)rotate(-4deg)}55%{transform:translate(5px)rotate(3deg)}80%{transform:translate(-3px)rotate(-1deg)}to{transform:translate(0)rotate(0)}}.race{text-align:center;max-width:800px;margin:0 auto;padding:20px}.race__canvas-wrap{max-width:760px;margin:0 auto;position:relative}.race__canvas{background:#bfe6a8;border:3px solid #333;border-radius:10px;margin:0 auto;display:block}.race__canvas-wrap.is-shaking{animation:.25s linear screen-shake}@keyframes screen-shake{0%{transform:translate(0)}20%{transform:translate(-4px,3px)}40%{transform:translate(3px,-4px)}60%{transform:translate(-3px,-2px)}80%{transform:translate(4px,2px)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){.race__canvas-wrap.is-shaking{animation:none}}.race__commentary.is-lead-flash{animation:.8s commentary-flash-gold}.race__commentary.is-fall-flash{animation:.8s commentary-flash-blue}@keyframes commentary-flash-gold{0%,to{box-shadow:none;background:#fff6da}30%,70%{background:#ffe79b;box-shadow:0 0 0 3px #ffd23f}}@keyframes commentary-flash-blue{0%,to{box-shadow:none;background:#fff6da}30%,70%{background:#c7d3e0;box-shadow:0 0 0 3px #6b8caf}}.race__big-announcement{color:#fff;white-space:nowrap;pointer-events:none;background:#141414d9;border:3px solid #ffd23f;border-radius:14px;flex-direction:column;align-items:center;gap:2px;padding:14px 28px;animation:.3s announce-pop;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.race__big-announcement-rank{color:#ffd23f;text-shadow:2px 2px #00000080;font-size:clamp(2rem,9vw,3.4rem);font-weight:900;line-height:1}.race__big-announcement-text{text-shadow:1px 1px #0006;font-size:clamp(1.1rem,4.5vw,1.7rem);font-weight:900}.race__photo-flash{pointer-events:none;z-index:5;background:#fff;animation:.15s ease-out photo-finish-flash;position:absolute;inset:0}@keyframes photo-finish-flash{0%{opacity:0}30%{opacity:.9}to{opacity:0}}.race__commentary-log{margin-top:12px}.race__commentary{color:#2b2b2b;background:#fff6da;border:2px solid #e8c25a;border-radius:8px;min-height:28px;padding:8px 12px;font-size:1.05rem;font-weight:800;animation:.18s pop}@keyframes pop{0%{opacity:.4;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.race__commentary-past-wrap{min-height:calc(4.05em + 4px);padding:2px 12px 0}.race__commentary-past{color:#999;white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;line-height:1.35;overflow:hidden}.race__commentary-past--1{opacity:.7}.race__commentary-past--2{opacity:.5}.race__commentary-past--3{opacity:.35}.race__bets{text-align:left;flex-direction:column;gap:16px;margin-top:16px;display:flex;overflow-x:auto}.race__bets h3{margin:0 0 6px;font-size:.9rem}.race__table{border-collapse:collapse;text-align:left;width:100%;margin:0;font-size:.82rem}.race__table th{color:#888;border-bottom:2px solid #333;padding:4px 8px;font-size:.72rem;font-weight:700}.race__table td{vertical-align:middle;background:#fffaf0;border-bottom:1px solid #e7e0d2;padding:8px}.race__dot{border-radius:50%;width:14px;height:14px;display:inline-block}.race__cell-horse{white-space:nowrap;font-weight:700}.race__cell-odds{color:#d1432c;white-space:nowrap;font-weight:800}.race__cell-player{font-weight:700}.race__cell-amount{text-align:right;white-space:nowrap;font-weight:800}.race__table tr.is-you td{background:#fff6da}.race__cell-place{white-space:nowrap;color:#666;font-weight:800}.race__cell-place.is-first{color:#b8860b;font-size:.95rem}.race__cell-place-live{color:#999;font-weight:600}.race__table tr.is-first-place td{background:#fff6da;box-shadow:inset 0 0 0 2px #e8c25a}.race__items{flex-basis:100%}.race__items-list{background:#f3eaff;border:2px solid #6b4fa0;border-radius:8px;min-width:220px;max-width:480px;margin:0;padding:0;font-size:.82rem;list-style:none}.race__items-list li{border-bottom:1px solid #e7e0d2;justify-content:space-between;gap:8px;padding:5px 10px;display:flex}.race__items-list li:last-child{border-bottom:none}.race__result-btn{color:#fff;cursor:pointer;background:#d1432c;border:none;border-radius:10px;margin-top:16px;padding:12px 24px;font-size:1rem;font-weight:800;box-shadow:0 3px #9c2e1c}.race__waiting{color:#888;margin-top:16px;font-size:.9rem;font-weight:700}.confetti{pointer-events:none;z-index:100;position:fixed;inset:0;overflow:hidden}.confetti__piece{opacity:.9;width:8px;height:14px;animation-name:confetti-fall;animation-timing-function:linear;animation-fill-mode:forwards;position:absolute;top:-10px}@keyframes confetti-fall{0%{opacity:.95;transform:translateY(-10px)rotate(0)}to{opacity:.6;transform:translateY(110vh)rotate(540deg)}}.result-stamp{z-index:200;cursor:pointer;opacity:1;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.result-stamp--hit,.result-stamp--jackpot{background:#0006}.result-stamp--miss{background:#14141e73;animation:.3s stamp-dim-in}.result-stamp.is-closing{animation:.25s forwards stamp-fade-out}.result-stamp__mark{flex-direction:column;align-items:center;gap:8px;display:flex}.result-stamp--hit .result-stamp__text,.result-stamp--jackpot .result-stamp__text{color:#fff;text-shadow:2px 2px #0006;white-space:nowrap;background:#d1432ceb;border:4px solid #ffd23f;border-radius:14px;padding:16px 30px;font-size:clamp(1.7rem,9vw,3rem);font-weight:900;animation:.35s cubic-bezier(.34,1.56,.64,1) stamp-hit;display:inline-block;transform:rotate(-8deg)}.result-stamp--jackpot .result-stamp__text{background:#b8860bf0;border-color:#fff6da}.result-stamp__odds{color:#ffd23f;text-shadow:1px 1px #00000080;font-size:1.3rem;font-weight:800}.result-stamp--miss .result-stamp__text{color:#fff;text-shadow:2px 2px #0006;white-space:nowrap;background:#3c4458f0;border:4px solid #8a97ad;border-radius:14px;padding:14px 26px;font-size:clamp(1.5rem,7vw,2.4rem);font-weight:900;animation:.4s cubic-bezier(.34,1.56,.64,1) stamp-lose-fall;display:inline-block;transform:rotate(6deg)}@keyframes stamp-hit{0%{opacity:0;transform:scale(3)rotate(-8deg)}to{opacity:1;transform:scale(1)rotate(-8deg)}}@keyframes stamp-lose-fall{0%{opacity:0;transform:translateY(-16px)rotate(6deg)}to{opacity:1;transform:translateY(0)rotate(6deg)}}@keyframes stamp-dim-in{0%{opacity:0}to{opacity:1}}@keyframes stamp-fade-out{to{opacity:0}}.combo-reveal{z-index:210;cursor:pointer;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.combo-reveal__card{text-align:center;background:linear-gradient(135deg,#fff6da,#ffe79b);border:4px solid #d1a200;border-radius:16px;max-width:320px;margin:0 20px;padding:20px 26px;animation:cubic-bezier(.34,1.56,.64,1) combo-pop;position:relative;box-shadow:0 6px 18px #00000059}@keyframes combo-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.combo-reveal__new-badge{color:#fff;background:#d1432c;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:900;position:absolute;top:-14px;right:-10px;transform:rotate(8deg);box-shadow:0 2px 6px #0000004d}.combo-reveal__label{color:#8a6406;margin:0 0 4px;font-size:.8rem;font-weight:800}.combo-reveal__name{color:#4a3d1f;margin:0 0 8px;font-size:1.3rem;font-weight:900}.combo-reveal__tagline{color:#6b5d47;margin:0;font-size:.82rem}.combo-reveal__tap-hint{color:#a89468;margin:10px 0 0;font-size:.7rem;font-weight:700}.action-report{text-align:left;background:#f3eaff;border:2px solid #6b4fa0;border-radius:10px;margin:16px 0;padding:12px 14px}.action-report__title{color:#4a3470;margin:0 0 8px;font-size:.85rem}.action-report__table{border-collapse:collapse;width:100%;font-size:.76rem}.action-report__table th{color:#7a6a9c;text-align:left;border-bottom:2px solid #d9c8f5;padding:4px 6px;font-size:.68rem;font-weight:700}.action-report__table td{vertical-align:middle;border-bottom:1px solid #e4d7f7;padding:6px}.action-report__cost{color:#6b4fa0;white-space:nowrap;font-weight:800}.action-report__status{white-space:nowrap;font-weight:800}.action-report__status--unfired{color:#999}.action-report__status--blocked{color:#1e4fa0}.action-report__status--success{color:#d1432c}.action-report__cards{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:none}.action-report__card{background:#fff;border:1px solid #d9c8f5;border-radius:8px;padding:8px 10px}.action-report__card-head{justify-content:space-between;align-items:center;gap:8px;font-size:.78rem;font-weight:700;display:flex}.action-report__card-status{margin:4px 0 0;font-size:.74rem}@media (width<=480px){.action-report__table{display:none}.action-report__cards{display:flex}}.result{text-align:center;max-width:680px;margin:0 auto;padding:20px;overflow-x:auto}.result__table{border-collapse:collapse;text-align:left;width:100%;margin:16px 0;font-size:.82rem}.result__table th{color:#888;border-bottom:2px solid #333;padding:4px 8px;font-size:.72rem;font-weight:700}.result__table td{vertical-align:middle;background:#fffaf0;border-bottom:1px solid #e7e0d2;padding:8px}.result__morning-odds{color:#888;font-size:.68rem;font-weight:700;display:block}.result__cards{display:none}@media (width<=480px){.result{padding:12px 8px}.result__table{display:none}.result__cards{text-align:left;flex-direction:column;gap:10px;margin:16px 0;padding:0;list-style:none;display:flex}}.result__cell-rank{text-align:center;white-space:nowrap;font-weight:800}.result__dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-right:4px;display:inline-block}.result__cell-horse{white-space:nowrap;font-weight:700}.result__cell-odds{color:#d1432c;white-space:nowrap;font-weight:800}.result__cell-player{font-weight:700}.result__table tr.is-you td{background:#fff6da}.result__cell-payout{color:#aaa;white-space:nowrap;font-weight:700}.result__cell-payout.is-won{color:#b8860b;font-size:1rem;animation:.6s .1s payout-bounce}.result__cell-money{text-align:right;white-space:nowrap;font-weight:800}.result__table tr.is-won td{background:linear-gradient(135deg,#fff6da,#ffe79b);animation:.4s payout-pop}@keyframes payout-pop{0%{opacity:.5;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.result__table tr.is-counting td{animation:.8s payout-glow-pulse}@keyframes payout-glow-pulse{0%{box-shadow:inset 0 0 #ffd23f00}40%{box-shadow:inset 0 0 12px 2px #ffd23fe6}to{box-shadow:inset 0 0 #ffd23f00}}@keyframes payout-bounce{0%{transform:translateY(0)scale(1)}40%{transform:translateY(-4px)scale(1.15)}to{transform:translateY(0)scale(1)}}.result__next-btn{color:#fff;cursor:pointer;background:#2b8a3e;border:none;border-radius:10px;padding:12px 24px;font-size:1rem;font-weight:800;box-shadow:0 3px #1d6129}.result__waiting{color:#888;font-size:.9rem;font-weight:700}.result__lose-line{color:#7a7266;text-align:center;margin:4px 0 0;font-size:.76rem}.result__card{background:#fffaf0;border:2px solid #333;border-radius:10px;padding:10px 12px}.result__card-head{align-items:center;gap:6px;font-size:.88rem;font-weight:800;display:flex}.result__card-rank{flex-shrink:0}.result__card-horse-name{overflow-wrap:break-word;min-width:0}.result__card-odds{color:#d1432c;margin:4px 0 8px;font-size:.74rem;font-weight:700}.result__card-bettors{border-top:1px dashed #e7e0d2;flex-direction:column;gap:6px;margin:0;padding:8px 0 0;list-style:none;display:flex}.result__card-bettor{justify-content:space-between;align-items:center;gap:8px;font-size:.78rem;font-weight:700;display:flex}.result__card-bettor.is-you{background:#fff6da;border-radius:6px;margin:-3px -6px;padding:3px 6px}.result__card-bettor-payout{color:#aaa;white-space:nowrap}.result__card-bettor.is-won .result__card-bettor-payout{color:#b8860b}.winner-reveal{z-index:500;cursor:pointer;background:radial-gradient(circle at 50% 30%,#3a2f00 0%,#000 75%);flex-direction:column;justify-content:center;align-items:center;animation:.3s winner-reveal-fade-in;display:flex;position:fixed;inset:0;overflow:hidden}.winner-reveal--closing{animation:.35s forwards winner-reveal-fade-out}.winner-reveal__crown{font-size:clamp(3rem,12vw,6rem);animation:.6s winner-reveal-pop}.winner-reveal__label{color:#ffd23f;letter-spacing:.3em;margin-top:4px;font-size:clamp(.9rem,3vw,1.3rem);font-weight:900;animation:.6s .1s winner-reveal-pop}.winner-reveal__name{color:#fff;text-shadow:0 0 30px #ffd23fb3;margin:8px 0;font-size:clamp(2rem,9vw,4.5rem);font-weight:900;animation:.6s .2s winner-reveal-pop}.winner-reveal__money{color:#ffd23f;font-size:clamp(1.3rem,5vw,2.2rem);font-weight:800;animation:.6s .3s winner-reveal-pop}.winner-reveal__comment-track{white-space:nowrap;width:100%;margin-top:28px;overflow:hidden}.winner-reveal__comment-text{color:#fff;padding-left:100%;font-size:clamp(1.1rem,4vw,1.8rem);font-weight:700;animation-name:winner-reveal-scroll;animation-timing-function:linear;animation-iteration-count:1;animation-fill-mode:forwards;display:inline-block}.winner-reveal__hint{color:#fff9;font-size:.8rem;font-weight:700;animation:1.6s ease-in-out infinite winner-reveal-blink;position:absolute;bottom:28px}@keyframes winner-reveal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes winner-reveal-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.05)}}@keyframes winner-reveal-pop{0%{opacity:0;transform:translateY(14px)scale(.85)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes winner-reveal-scroll{0%{transform:translate(0)}to{transform:translate(-200%)}}@keyframes winner-reveal-blink{0%,to{opacity:.3}50%{opacity:.9}}.rating-delta-badge{border-radius:12px;flex-direction:column;align-items:center;gap:2px;width:fit-content;margin:10px auto;padding:10px 22px;animation:.5s cubic-bezier(.34,1.56,.64,1) both rating-delta-pop;display:flex}.rating-delta-badge.is-up{background:#e7f8ec;border:2px solid #2b8a3e}.rating-delta-badge.is-down{background:#ffe9e5;border:2px solid #d1432c}.rating-delta-badge__label{color:#666;font-size:.75rem;font-weight:700}.rating-delta-badge__delta{font-size:1.6rem;font-weight:900}.rating-delta-badge.is-up .rating-delta-badge__delta{color:#2b8a3e}.rating-delta-badge.is-down .rating-delta-badge__delta{color:#d1432c}.rating-delta-badge__new{color:#888;font-size:.72rem}@keyframes rating-delta-pop{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}.login-appeal{text-align:left;background:#fffaf0;border:2px solid #e8c25a;border-radius:12px;margin:4px 0 16px;padding:14px 16px}.login-appeal__title{color:#8a6406;margin:0 0 4px;font-size:.95rem;font-weight:800}.login-appeal__lead{color:#6b5d47;margin:0 0 6px;font-size:.78rem}.login-appeal__list{color:#444;flex-direction:column;gap:3px;margin:0 0 10px;padding:0;font-size:.78rem;font-weight:700;list-style:none;display:flex}.login-appeal__actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.login-appeal__dismiss{color:#888;cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:8px;padding:6px 12px;font-size:.78rem;font-weight:700}.login-appeal--welcomed{padding:10px 16px}.login-appeal__welcomed-text{color:#2b8a3e;text-align:center;margin:0;font-size:.85rem;font-weight:800}.bond-levelup{flex-direction:column;align-items:center;gap:6px;margin:12px auto 0;display:flex}.bond-levelup__line{color:#a83a63;text-align:center;background:#fff0f4;border:2px solid #e0457b;border-radius:999px;max-width:320px;margin:0;padding:8px 16px;font-size:.82rem;font-weight:700}.rival-defeated{flex-direction:column;align-items:center;gap:6px;margin:12px auto 0;display:flex}.rival-defeated__line{color:#a8203a;text-align:center;background:#fff4f0;border:2px solid #ff5d5d;border-radius:999px;max-width:320px;margin:0;padding:8px 16px;font-size:.82rem;font-weight:700}.share-result-btn{color:#888;cursor:pointer;background:#fffaf0;border:1px solid #ddd;border-radius:999px;padding:8px 16px;font-size:.78rem;font-weight:700}.share-result-btn:disabled{opacity:.6;cursor:default}.share-text-buttons{flex-wrap:wrap;justify-content:center;gap:8px;margin:14px auto 0;display:flex}.share-text-buttons__btn{color:#888;cursor:pointer;background:#fffaf0;border:1px solid #ddd;border-radius:999px;padding:8px 16px;font-size:.78rem;font-weight:700}.gameover{text-align:center;max-width:440px;margin:0 auto;padding:32px 20px;position:relative}.gameover__perfect-stamp{color:#fff;background:linear-gradient(135deg,#ffd23f,#d1a200);border:3px solid #fff6da;border-radius:14px;margin:0 auto 16px;padding:10px 22px;font-size:1.15rem;font-weight:900;animation:.4s cubic-bezier(.34,1.56,.64,1) perfect-stamp-pop;display:inline-block;transform:rotate(-4deg);box-shadow:0 4px 12px #d1a20066}@keyframes perfect-stamp-pop{0%{opacity:0;transform:scale(2.4)rotate(-4deg)}to{opacity:1;transform:scale(1)rotate(-4deg)}}.gameover__champion{margin-bottom:20px;animation:.5s champion-pop}.gameover__crown{font-size:3.2rem;animation:1.4s ease-in-out infinite champion-bounce}.gameover__champion-name{color:#d1a200;text-shadow:1px 1px #00000026;font-size:1.6rem;font-weight:900}.gameover__champion-sub{color:#2b8a3e;font-size:1rem;font-weight:800}.gameover__champion-comment{color:#6b5d47;max-width:280px;margin:8px auto 0;font-size:.85rem;font-style:italic}.gameover__cpu-quip{color:#8a6406;max-width:280px;margin:8px auto 0;font-size:.85rem;font-style:italic;font-weight:700}@keyframes champion-pop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes champion-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.gameover h1{margin-bottom:4px}.gameover__ranking{flex-direction:column;gap:8px;margin:16px 0 24px;padding:0;list-style:none;display:flex}.gameover__ranking li{text-align:left;background:#fffaf0;border:2px solid #333;border-radius:10px;grid-template-columns:32px 1fr auto auto;align-items:center;gap:10px;padding:10px 16px;font-weight:700;animation:.35s backwards rank-slide-in;display:grid}.gameover__ranking li:first-child{animation-delay:50ms}.gameover__ranking li:nth-child(2){animation-delay:.15s}.gameover__ranking li:nth-child(3){animation-delay:.25s}.gameover__ranking li:nth-child(4){animation-delay:.35s}.gameover__ranking li:nth-child(5){animation-delay:.45s}.gameover__ranking li:nth-child(6){animation-delay:.55s}@keyframes rank-slide-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.gameover__rank-medal{text-align:center;font-size:1.2rem}.gameover__rank-name{font-size:.95rem}.gameover__rank-money{text-align:right;font-size:1rem}.gameover__rank-delta{text-align:right;min-width:56px;font-size:.78rem;font-weight:800}.gameover__rank-delta.is-up{color:#2b8a3e}.gameover__rank-delta.is-down{color:#d1432c}.gameover__rank-rating-delta{text-align:right;min-width:44px;font-size:.72rem;font-weight:800}.gameover__rank-rating-delta.is-up{color:#1e6fa0}.gameover__rank-rating-delta.is-down{color:#9c2e1c}.gameover__winner{background:linear-gradient(135deg,#fff6da,#ffe79b);border-color:#d1432c;font-size:1.05rem;box-shadow:0 4px 10px #d1a20040}.gameover__actions{flex-direction:column;align-items:center;gap:10px;margin-top:20px;display:flex}.gameover__again{color:#fff;cursor:pointer;background:#d1432c;border:none;border-radius:10px;padding:14px 28px;font-size:1.05rem;font-weight:800;box-shadow:0 3px #9c2e1c}.gameover__restart{color:#555;cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:10px;padding:10px 24px;font-size:.9rem;font-weight:700}.admin__feedback-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.admin__feedback-item{background:#fff;border:1px solid #ddd;border-radius:8px;padding:8px 12px}.admin__feedback-meta{color:#888;align-items:center;gap:10px;font-size:.75rem;font-weight:700;display:flex}.admin__feedback-name{color:#555;flex:1}.admin__feedback-date{white-space:nowrap}.admin__feedback-delete{color:#d1432c;cursor:pointer;background:0 0;border:1px solid #d1432c;border-radius:6px;padding:3px 10px;font-size:.72rem;font-weight:700}.admin__feedback-body{color:#333;white-space:pre-wrap;word-break:break-word;margin:6px 0 0;font-size:.85rem}.admin__user-name-link{font-size:inherit;color:#1e4fa0;cursor:pointer;background:0 0;border:none;padding:0;font-weight:700;text-decoration:underline}.admin__detail-btn{color:#333;cursor:pointer;background:#eee;border:none;border-radius:6px;margin-right:6px;padding:6px 12px;font-size:.8rem;font-weight:700}.admin-user-detail__overlay{z-index:1000;background:#0000008c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.admin-user-detail__modal{background:#fff;border-radius:14px;max-height:90vh;padding-top:40px;position:relative;overflow-y:auto}.admin-user-detail__close{cursor:pointer;color:#555;background:0 0;border:none;font-size:1.1rem;position:absolute;top:10px;right:14px}.admin-user-detail__bio{margin:0;font-size:.95rem;font-weight:600}.admin-user-detail__badge-remove{color:#d1432c;cursor:pointer;background:0 0;border:none;padding:0 0 0 4px;font-weight:800}.admin-user-detail__badge-form{gap:6px;margin-top:10px;display:flex}.admin-user-detail__badge-emoji-input{text-align:center;border:1px solid #ccc;border-radius:6px;width:44px;padding:6px 4px}.admin-user-detail__badge-label-input{border:1px solid #ccc;border-radius:6px;flex:1;padding:6px 8px;font-size:.85rem}.admin-user-detail__badge-add{color:#fff;cursor:pointer;background:#2b2b2b;border:none;border-radius:6px;padding:6px 14px;font-size:.8rem;font-weight:700}.admin{max-width:820px;margin:0 auto;padding:20px}.admin__header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.admin__header-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin__btn{color:#fff;cursor:pointer;background:#2b2b2b;border:none;border-radius:8px;padding:8px 16px;font-size:.85rem;font-weight:800}.admin__btn--ghost{color:#2b2b2b;background:#fff;border:2px solid #2b2b2b}.admin__btn--save{background:#2b8a3e}.admin__btn--save:disabled{cursor:not-allowed;background:#7fb78d}.admin__btn--save.is-saved{background:#1d6129;animation:.35s admin-save-pop}@keyframes admin-save-pop{0%{transform:scale(.92)}50%{transform:scale(1.08)}to{transform:scale(1)}}.admin__nav{z-index:30;-webkit-overflow-scrolling:touch;background:#fdf6e3;border:2px solid #333;border-radius:10px;gap:6px;margin-bottom:16px;padding:8px 4px;display:flex;position:sticky;top:0;overflow-x:auto}.admin__nav-link{color:#2b2b2b;white-space:nowrap;background:#fff;border:1px solid #ccc;border-radius:999px;flex-shrink:0;padding:6px 12px;font-size:.78rem;font-weight:700;text-decoration:none}.admin__nav-link:hover{background:#fff6da;border-color:#e8c25a}.admin__section{background:#fffaf0;border:3px solid #333;border-radius:12px;margin-bottom:16px;padding:16px;scroll-margin-top:56px}.admin__section h3{margin:0 0 10px;font-size:.95rem}.admin__list{flex-direction:column;gap:6px;margin:0 0 10px;padding:0;list-style:none;display:flex}.admin__row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin__row--quote{flex-wrap:wrap}.admin__horse-card{border-bottom:1px dashed #ddd;flex-direction:column;gap:6px;padding:6px 0;display:flex}.admin__row--stats{flex-wrap:wrap;padding-left:2px}.admin__emoji-input{text-align:center;border:1px solid #ccc;border-radius:6px;width:48px;padding:6px 4px;font-size:.95rem}.admin__stat-inputs{flex-wrap:wrap;gap:10px;display:flex}.admin__stat-input-label{color:#555;align-items:center;gap:4px;font-size:.78rem;font-weight:700;display:flex}.admin__add-row{border-top:1px dashed #ccc;flex-wrap:wrap;align-items:center;gap:8px;padding-top:10px;display:flex}.admin__text-input{border:1px solid #ccc;border-radius:6px;flex:1;min-width:120px;padding:6px 8px;font-size:.85rem}.admin__text-input--wide{min-width:220px}.admin__number-input{border:1px solid #ccc;border-radius:6px;width:64px;padding:6px 8px;font-size:.85rem}.admin__checkbox{white-space:nowrap;align-items:center;gap:4px;font-size:.78rem;display:flex}.admin__hint{color:#888;margin:0 0 10px;font-size:.75rem}.admin__field{flex-direction:column;gap:6px;margin-bottom:10px;font-size:.85rem;display:flex}.admin__field input[type=number]{border:1px solid #ccc;border-radius:6px;width:64px;padding:4px 6px}.admin__quick-actions{flex-wrap:wrap;gap:8px;display:flex}.admin__error{color:#d1432c;font-size:.85rem;font-weight:700}.admin__item-emoji{font-size:1.1rem}.admin__item-name{min-width:90px;font-size:.85rem;font-weight:800}.admin__item-desc{color:#777;flex:1;min-width:160px;font-size:.75rem}.admin__delete-btn{color:#d1432c;cursor:pointer;background:#fff;border:1px solid #d1432c;border-radius:6px;padding:5px 10px;font-size:.78rem;font-weight:700}.admin__delete-btn--small{padding:2px 8px}.admin__delete-btn:disabled{opacity:.35;cursor:not-allowed}.admin__btn--small{padding:4px 10px;font-size:.75rem}.admin__quote-card{background:#fffaf0;border:1px solid #e0d8c5;border-radius:8px;flex-direction:column;gap:8px;padding:10px;display:flex}.admin__quote-card--new{border-top:2px dashed #ccc;margin-top:4px}.admin__quote-stat-pairs{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin__quote-stat-pair{align-items:center;gap:4px;display:flex}.admin__quote-card-footer{align-items:center;gap:12px;display:flex}select{border:1px solid #ccc;border-radius:6px;padding:6px 8px;font-size:.85rem}.admin__users-table-wrap{overflow-x:auto}.admin__users-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:.82rem}.admin__users-table th,.admin__users-table td{text-align:left;border-bottom:1px solid #e7e0d2;padding:6px 10px}.admin__users-table th{color:#777;font-size:.75rem;font-weight:700}.admin__users-id{color:#555;font-family:monospace}.admin__back-to-top{z-index:40;color:#fff;background:#2b2b2b;border-radius:999px;padding:10px 14px;font-size:.78rem;font-weight:800;text-decoration:none;position:fixed;bottom:16px;right:16px;box-shadow:0 3px 10px #0000004d}.betting-countdown{z-index:65;color:#6b4f00;text-align:center;pointer-events:none;background:#fff6daf5;border:2px solid #e8c25a;border-radius:999px;min-width:128px;max-width:calc(100vw - 96px);margin:0;padding:7px 14px;font-size:.92rem;font-weight:800;position:fixed;top:10px;left:50%;transform:translate(-50%);box-shadow:0 3px 10px #2b2b2b29}.betting-countdown.is-urgent{color:#fff;background:#d1432cf5;border-color:#9c2e1c;animation:1s ease-in-out infinite betting-countdown-blink}@keyframes betting-countdown-blink{0%,to{opacity:1}50%{opacity:.4}}.match-mode-badge{z-index:40;color:#555;pointer-events:none;opacity:.8;background:#ffffffb3;border:1px solid #ddd;border-radius:999px;padding:3px 8px;font-size:.62rem;font-weight:800;position:fixed;bottom:8px;left:8px}.match-mode-badge--rated,.match-mode-badge--ranked{color:#8a6406;background:#fff6daeb;border-color:#e8c25a}.match-mode-badge--private{color:#2b8a3e;background:#d8f3dceb;border-color:#6bcb77}.match-mode-badge--dailyChallenge{color:#9c2e1c;background:#ffeedbf0;border-color:#ff8a3d}.item-dex-sheet__overlay{z-index:80;background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.item-dex-sheet{background:#fffaf0;border-radius:18px 18px 0 0;flex-direction:column;width:100%;max-width:600px;max-height:80vh;animation:.18s ease-out item-dex-sheet-rise;display:flex;overflow:hidden;box-shadow:0 -4px 20px #00000040}@keyframes item-dex-sheet-rise{0%{opacity:.6;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.item-dex-sheet__handle{background:#ddd;border-radius:999px;width:40px;height:4px;margin:8px auto 0}.item-dex-sheet__header{justify-content:space-between;align-items:center;padding:6px 16px 0;display:flex}.item-dex-sheet__header h3{margin:0;font-size:1rem}.item-dex-sheet__close{color:#777;cursor:pointer;background:0 0;border:none;padding:6px 10px;font-size:.9rem}.item-dex-sheet__list{flex-direction:column;gap:8px;padding:8px 16px 20px;display:flex;overflow-y:auto}.item-dex-sheet__item{background:#fff;border:2px solid #ccc;border-radius:10px;padding:8px 10px}.item-dex-sheet__item--cheat{border-color:#f0b3a8}.item-dex-sheet__item--counter{border-color:#aec7ec}.item-dex-sheet__item--field{border-color:#a9d6bb}.item-dex-sheet__item-head{align-items:center;gap:6px;display:flex}.item-dex-sheet__item-emoji{font-size:1.2rem}.item-dex-sheet__item-name{flex:1;font-size:.85rem;font-weight:800}.item-dex-sheet__item-cost{color:#d1432c;font-size:.8rem;font-weight:800}.item-dex-sheet__item-tags{gap:6px;margin:4px 0;display:flex}.item-dex-sheet__item-category,.item-dex-sheet__item-timing{color:#777;white-space:nowrap;background:#f4ead2;border-radius:999px;padding:1px 6px;font-size:.66rem;font-weight:700}.item-dex-sheet__item-desc{color:#555;margin:0;font-size:.74rem}.online-lobby{text-align:center;max-width:480px;margin:0 auto;padding:32px 20px}.online-lobby__status{color:#555;margin-bottom:16px;font-size:.85rem}.online-lobby__badge{border-radius:999px;margin-left:4px;padding:2px 8px;font-weight:800}.online-lobby__badge--connected{color:#2b8a3e;background:#d8f3dc}.online-lobby__badge--connecting,.online-lobby__badge--idle{color:#b8860b;background:#fff6da}.online-lobby__badge--disconnected{color:#d1432c;background:#ffd9d2}.online-lobby__panel{background:#fffaf0;border:3px solid #333;border-radius:12px;flex-direction:column;gap:10px;margin-bottom:16px;padding:20px;display:flex}.online-lobby__label{text-align:left;flex-direction:column;gap:4px;font-size:.85rem;font-weight:700;display:flex}.online-lobby__input{border:1px solid #ccc;border-radius:6px;padding:8px 10px;font-size:.95rem}.online-lobby__btn{color:#2b2b2b;cursor:pointer;background:#fff;border:2px solid #2b2b2b;border-radius:8px;padding:10px 16px;font-size:.95rem;font-weight:800}.online-lobby__btn:disabled{opacity:.4;cursor:not-allowed}.online-lobby__btn--primary{color:#fff;background:#d1432c;border:none;box-shadow:0 3px #9c2e1c}.online-lobby__divider{color:#999;margin:4px 0;font-size:.75rem}.online-lobby__error{color:#d1432c;font-size:.85rem;font-weight:700}.online-lobby__room-code{font-size:1.1rem}.online-lobby__hint{color:#888;margin:0;font-size:.75rem}.online-lobby__match-hint{color:#555;margin:4px 0;font-size:.85rem;font-weight:700}.online-lobby__link-btn{color:#4d96ff;cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem;font-weight:700;text-decoration:underline}.online-lobby__players{text-align:left;flex-direction:column;gap:6px;margin:8px 0;padding:0;list-style:none;display:flex}.online-lobby__players li{background:#fff;border:1px solid #e7e0d2;border-radius:6px;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:6px 10px;display:flex}.online-lobby__players li.is-you{background:#fff6da;border-color:#e8c25a}.online-lobby__player-rating{color:#8a6d1f;align-items:center;gap:4px;font-size:.75rem;font-weight:700;display:inline-flex}.online-lobby__player-favorite{color:#8a6406;white-space:nowrap;font-size:.72rem;font-weight:700}.online-lobby__you-tag{color:#b8860b;margin-left:auto;font-size:.7rem;font-weight:800}.online-lobby__count{color:#666;margin:0;font-size:.8rem}.online-lobby__mode-group{background:#fff;border:1px solid #e7e0d2;border-radius:8px;flex-direction:column;gap:6px;padding:10px;display:flex}.online-lobby__season-closed{color:#888;text-align:center;margin:4px 0;font-size:.85rem;font-weight:800}.online-lobby__btn--ranked{color:#fff;background:#b8860b;border:none;box-shadow:0 3px #8a6406}.online-lobby__hint--small{font-size:.7rem}.online-lobby__season-notice{color:#8a6406;background:#fff6da;border-radius:6px;margin:4px 0 0;padding:4px 6px;font-size:.7rem;font-weight:700}.online-lobby__leaderboard-link{color:#b8860b;cursor:pointer;background:#fff;border:2px solid #ffd23f;border-radius:8px;width:100%;margin-top:8px;padding:8px 12px;font-size:.78rem;font-weight:800;display:block}.online-lobby__invite-link-btn{color:#2b8a3e;cursor:pointer;background:#eafbe7;border:2px solid #6bcb77;border-radius:8px;width:100%;margin-top:8px;padding:10px 12px;font-size:.82rem;font-weight:800;display:block}.online-lobby__mode-tag{color:#b8860b;align-self:center;margin:0 0 4px;font-size:.85rem;font-weight:800}.online-lobby__back{color:#555;cursor:pointer;background:0 0;border:1px solid #ccc;border-radius:8px;padding:8px 16px;font-size:.8rem;font-weight:700}.horse-episode-sheet__overlay{z-index:90;background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.horse-episode-sheet{background:#fffaf0;border-radius:18px 18px 0 0;flex-direction:column;width:100%;max-width:600px;max-height:75vh;animation:.18s ease-out horse-episode-sheet-rise;display:flex;overflow:hidden;box-shadow:0 -4px 20px #00000040}@keyframes horse-episode-sheet-rise{0%{opacity:.6;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.horse-episode-sheet__handle{background:#ddd;border-radius:999px;width:40px;height:4px;margin:8px auto 0}.horse-episode-sheet__header{justify-content:space-between;align-items:center;padding:6px 16px 0;display:flex}.horse-episode-sheet__header h3{margin:0;font-size:1rem}.horse-episode-sheet__close{color:#777;cursor:pointer;background:0 0;border:none;padding:6px 10px;font-size:.9rem}.horse-episode-sheet__body{padding:8px 16px 20px;overflow-y:auto}.horse-episode-sheet__loading{text-align:center;color:#999;padding:20px 0;font-size:.85rem}.horse-episode-sheet__timeline{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.horse-episode-sheet__entry{background:#fff;border:1px solid #e8dcc0;border-radius:8px;align-items:baseline;gap:8px;padding:8px 10px;font-size:.8rem;display:flex}.horse-episode-sheet__entry-emoji{flex-shrink:0;font-size:1rem}.horse-episode-sheet__entry-date{color:#999;flex-shrink:0;font-size:.7rem;font-weight:700}.horse-episode-sheet__entry-text{color:#4a3d1f;font-weight:700}.horse-album__header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.horse-album__sort-select{color:#555;background:#fff;border:1px solid #ccc;border-radius:6px;padding:3px 6px;font-size:.75rem;font-weight:700}.horse-album__ratio{color:#8a6406;background:#fff6da;border:1px solid #e8c25a;border-radius:999px;padding:2px 10px;font-size:.8rem;font-weight:800}.horse-album__error{color:#d1432c;margin:0 0 8px;font-size:.8rem;font-weight:700}.horse-album__grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.horse-album__card{text-align:center;cursor:pointer;background:#fffaf0;border:2px solid #ccc;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;display:flex;position:relative}.horse-album__card.is-favorite{border-color:#ffd23f;box-shadow:0 0 0 2px #ffd23f,0 2px 8px #d1a20040}.horse-album__card--rare{box-shadow:0 0 0 2px #ffd23f,0 2px #00000026}.horse-album__card--super-rare{background-image:linear-gradient(#fffaf0,#fffaf0),linear-gradient(90deg,#ff5d5d,#ffd23f,#6bcb77,#4d96ff,#c77dff,#ff5d5d);background-origin:border-box;background-clip:padding-box,border-box;border:3px solid #0000}.horse-album__card--legend{background-image:linear-gradient(#fffaf0,#fffaf0),linear-gradient(90deg,#ffd23f,#ff5d5d,#c77dff,#4d96ff,#6bcb77,#ffd23f);background-origin:border-box;background-clip:padding-box,border-box;border:4px solid #0000;box-shadow:0 0 10px #ffd23f99}.horse-album__card--legend.horse-album__card--unmet{background-image:linear-gradient(#f2f2f2,#f2f2f2),linear-gradient(90deg,#ffd23f,#ff5d5d,#c77dff,#4d96ff,#6bcb77,#ffd23f)}.horse-album__card--unmet{opacity:.75;cursor:default;background:#f2f2f2;border-style:dashed}.horse-album__card--bond-silver{outline-offset:2px;outline:3px solid #b9c1cc}.horse-album__card--bond-gold{outline-offset:2px;outline:3px solid #ffd23f;animation:2.4s ease-in-out infinite horse-album-bond-gold-shine}@keyframes horse-album-bond-gold-shine{0%,to{outline-color:#ffd23f}50%{outline-color:#fff6da}}.horse-album__bond{flex-direction:column;align-items:center;gap:0;display:flex}.horse-album__bond-gauge{letter-spacing:1px;font-size:.82rem}.horse-album__bond-gauge .is-filled{color:#e0457b}.horse-album__bond-gauge .is-empty{color:#e6cdd4}.horse-album__bond-name{color:#a83a63;font-size:.68rem;font-weight:800}.horse-album__bond-next{color:#999;font-size:.6rem}.horse-album__favorite-ribbon{color:#fff;white-space:nowrap;background:linear-gradient(135deg,#ffd23f,#d1a200);border-radius:999px;padding:2px 8px;font-size:.62rem;font-weight:800;position:absolute;top:-8px;left:50%;transform:translate(-50%);box-shadow:0 2px 4px #0003}.horse-album__card-emoji{margin-top:4px;font-size:1.8rem}.horse-album__card-emoji--silhouette{filter:grayscale();opacity:.4}.horse-album__card-name{color:#333;font-size:.8rem;font-weight:800}.horse-album__card-stats{color:#777;flex-direction:column;gap:1px;font-size:.66rem;font-weight:700;display:flex}.horse-album__card-stats .is-profit{color:#2b8a3e}.horse-album__card-stats .is-loss{color:#d1432c}.horse-album__unmet-hint{color:#999;margin:2px 0 0;font-size:.68rem;font-weight:700}.horse-album__favorite-btn{color:#8a6406;cursor:pointer;background:#fff6da;border:1px solid #e8c25a;border-radius:999px;margin-top:4px;padding:4px 10px;font-size:.68rem;font-weight:800}.horse-album__favorite-btn.is-active{color:#fff;background:linear-gradient(135deg,#ffd23f,#d1a200);border-color:#b8860b}.horse-album__favorite-btn:disabled{opacity:.6;cursor:not-allowed}.horse-album__skill{color:#2b6cb0;text-align:center;background:#e8f1fb;border:1px solid #c3d9f0;border-radius:6px;flex-direction:column;gap:1px;width:100%;padding:3px 6px;font-size:.66rem;font-weight:800;display:flex}.horse-album__skill-desc{color:#55708c;font-size:.6rem;font-weight:600;line-height:1.35}.cpu-album__list{flex-direction:column;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}.cpu-album__row{background:#fff;border:2px solid #eee;border-radius:12px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.cpu-album__row--rival{background:#fff4f0;border-color:#ff5d5d}.cpu-album__row--unmet{opacity:.45}.cpu-album__head{align-items:center;gap:10px;display:flex}.cpu-album__emoji{text-align:center;width:1.6em;font-size:1.4rem}.cpu-album__info{flex-direction:column;flex:1;display:flex}.cpu-album__name{font-size:.92rem;font-weight:700}.cpu-album__personality{color:#888;font-size:.78rem;font-weight:500}.cpu-album__record{color:#777;align-items:center;gap:6px;font-size:.78rem;display:flex}.cpu-album__tag{white-space:nowrap;border-radius:999px;padding:1px 7px;font-size:.68rem;font-weight:700}.cpu-album__tag--rival{color:#fff;background:#ff5d5d}.cpu-album__tag--kamo{color:#8a6406;background:#fff6da;border:1px solid #e8c25a}.cpu-album__grudge{flex-direction:column;align-items:flex-start;gap:0;padding-left:calc(1.6em + 10px);display:flex}.cpu-album__grudge-gauge{letter-spacing:1px;font-size:.82rem}.cpu-album__grudge-gauge .is-filled{filter:none}.cpu-album__grudge-gauge .is-empty{filter:grayscale()opacity(.35)}.cpu-album__grudge-name{color:#b23b3b;font-size:.68rem;font-weight:800}.cpu-album__grudge-next{color:#999;font-size:.6rem}.cpu-album__sabotage{flex-direction:column;gap:2px;padding-left:calc(1.6em + 10px);display:flex}.cpu-album__sabotage-total{color:#777;font-size:.68rem;font-weight:700}.cpu-album__sabotage-top3{flex-wrap:wrap;gap:6px;display:flex}.cpu-album__sabotage-item{color:#555;background:#f5f5f5;border-radius:6px;padding:1px 6px;font-size:.66rem}.cpu-album__quips{padding-left:calc(1.6em + 10px)}.cpu-album__quips-toggle{color:#4d7cc7;cursor:pointer;background:#eef3ff;border:1px solid #c9d9f5;border-radius:999px;padding:2px 10px;font-size:.7rem;font-weight:800}.cpu-album__quip-list{flex-direction:column;gap:2px;margin:6px 0 0;padding:0 0 0 14px;list-style:outside;display:flex}.cpu-album__quip-list li{font-size:.7rem}.cpu-album__quip-list li.is-heard{color:#333}.cpu-album__quip-list li.is-unheard{color:#bbb}.cpu-album__first-played{color:#999;padding-left:calc(1.6em + 10px);font-size:.62rem}.friends-list{flex-direction:column;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}.friends-list__row{background:#fff;border:2px solid #eee;border-radius:12px;align-items:center;gap:8px;padding:8px 10px;display:flex}.friends-list__profile-btn{cursor:pointer;text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:10px;padding:0;display:flex}.friends-list__avatar{border-radius:50%;flex-shrink:0;width:36px;height:36px}.friends-list__avatar--emoji{background:#f5f5f5;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.friends-list__info{flex-direction:column;display:flex}.friends-list__name{font-size:.88rem;font-weight:700}.friends-list__last-seen{color:#999;font-size:.68rem}.friends-list__unstar-btn{color:#d1a200;cursor:pointer;background:#fff6da;border:1px solid #e8c25a;border-radius:999px;flex-shrink:0;width:32px;height:32px;font-size:1rem}.rules-page{max-width:640px}.rules-page__nav{z-index:30;-webkit-overflow-scrolling:touch;background:#fdf6e3;border:2px solid #333;border-radius:10px;gap:6px;margin-bottom:16px;padding:8px 4px;display:flex;position:sticky;top:0;overflow-x:auto}.rules-page__nav-link{color:#2b2b2b;white-space:nowrap;background:#fff;border:1px solid #ccc;border-radius:999px;flex-shrink:0;padding:6px 12px;font-size:.78rem;font-weight:700;text-decoration:none}.rules-page__nav-link:hover{background:#fff6da;border-color:#e8c25a}.rules-page .mypage__card{scroll-margin-top:56px}.rules-page__text{color:#444;margin:0 0 10px;font-size:.85rem;line-height:1.7}.rules-page__category{margin-bottom:14px}.rules-page__category-title{margin:0 0 8px;font-size:.85rem;font-weight:800}.rules-page__item-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.rules-page__item{background:#fff;border:1px solid #e0d8c5;border-radius:8px;padding:10px 12px}.rules-page__item-head{align-items:center;gap:6px;margin-bottom:4px;display:flex}.rules-page__item-emoji{font-size:1.1rem}.rules-page__item-name{font-size:.88rem;font-weight:800}.rules-page__item-casual-tag{color:#2b8a3e;white-space:nowrap;background:#eafbe7;border:1px solid #6bcb77;border-radius:999px;padding:1px 6px;font-size:.62rem;font-weight:800}.rules-page__item-cost{color:#d1432c;margin-left:auto;font-size:.78rem;font-weight:800}.rules-page__item-desc{color:#555;margin:0 0 4px;font-size:.78rem}.rules-page__item-tip{color:#2b8a3e;margin:0;font-size:.78rem;font-weight:700}.rules-page__patch-list{color:#444;margin:0;padding-left:18px;font-size:.8rem;line-height:1.7}.rules-page__patch-list li{margin-bottom:4px}.daily-challenge-page__regulation{background:#fff6da;border:2px solid #ffd23f;border-radius:12px;align-items:center;gap:12px;margin:12px 0;padding:12px 14px;display:flex}.daily-challenge-page__regulation-emoji{font-size:1.8rem}.daily-challenge-page__regulation-name{margin:0;font-weight:800}.daily-challenge-page__regulation-desc{color:#776b3a;margin:2px 0 0;font-size:.82rem}.daily-challenge-page__condition-note{color:#9c2e1c;margin:6px 0 0;font-size:.74rem;font-weight:700}.daily-challenge-page__seed-note{color:#8a6d00;margin:6px 0 0;font-size:.74rem;font-weight:700}.daily-challenge-page__start-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ff8a3d,#ff5d5d);border:none;border-radius:12px;width:100%;margin:8px 0 20px;padding:14px;font-size:1rem;font-weight:800;display:block}.daily-challenge-page__rank{text-align:center;flex-shrink:0;width:1.6em;font-weight:800}.daily-challenge-page__row-info{flex-direction:column;flex:1;min-width:0;display:flex}.daily-challenge-page__row-meta{color:#888;white-space:nowrap;text-overflow:ellipsis;font-size:.74rem;overflow:hidden}.daily-challenge-page__login{flex-direction:column;align-items:center;gap:4px;margin-bottom:16px;display:flex}.daily-challenge-page__tabs{flex-wrap:wrap;gap:6px;margin:4px 0 12px;display:flex}.daily-challenge-page__tab{color:#666;cursor:pointer;white-space:nowrap;background:#fff;border:2px solid #ddd;border-radius:999px;padding:6px 10px;font-family:inherit;font-size:.74rem;font-weight:700}.daily-challenge-page__tab.is-active{color:#3a2c00;background:#fff6da;border-color:#ffd23f}.daily-challenge-page__tab.is-today:before{content:"📅 "}.badge-notification-stack{z-index:800;pointer-events:none;flex-direction:column;gap:10px;width:min(92vw,380px);display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.badge-notification{pointer-events:auto;background:linear-gradient(135deg,#fff6da,#ffe9a8);border:3px solid #e8c25a;border-radius:14px;align-items:center;gap:12px;padding:12px 16px;animation:.5s both badge-notification-pop;display:flex;box-shadow:0 6px 18px #00000040}.badge-notification__close{color:#8a7339;cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:1.1rem;line-height:1;display:flex}.badge-notification__emoji{flex-shrink:0;font-size:2.2rem}.badge-notification__text{flex:1;min-width:0}.badge-notification__title{color:#b8860b;font-size:.72rem;font-weight:800}.badge-notification__name{color:#2b2b2b;font-size:1.05rem;font-weight:900}.badge-notification__desc{color:#6b5d3a;font-size:.72rem}@keyframes badge-notification-pop{0%{opacity:0;transform:translateY(-30px)scale(.8)}60%{opacity:1;transform:translateY(4px)scale(1.04)}to{opacity:1;transform:translateY(0)scale(1)}}.in-app-browser-warning{color:#6b4f00;background:#fff6da;border-bottom:2px solid #e8c25a;align-items:center;gap:10px;padding:8px 12px;font-size:.78rem;font-weight:700;line-height:1.5;display:flex}.in-app-browser-warning span{flex:1}.in-app-browser-warning button{color:#6b4f00;cursor:pointer;background:#00000014;border:none;border-radius:50%;flex-shrink:0;width:26px;height:26px;font-size:.85rem;font-weight:800}.app-shell{color:#2b2b2b;background:#f4ead2;min-height:100dvh;position:relative}.app-shell__private-closed-notice{color:#6b4f00;background:#fff6da;border-bottom:2px solid #e8c25a;align-items:center;gap:10px;padding:8px 12px;font-size:.78rem;font-weight:700;line-height:1.5;animation:.2s private-closed-notice-in;display:flex}.app-shell__private-closed-notice span{flex:1}.app-shell__private-closed-notice button{color:#6b4f00;cursor:pointer;background:#00000014;border:none;border-radius:50%;flex-shrink:0;width:26px;height:26px;font-size:.85rem;font-weight:800}@keyframes private-closed-notice-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.app-shell__exit{z-index:50;color:#fff;cursor:pointer;background:#2b2b2bd9;border:none;border-radius:999px;padding:6px 12px;font-size:.78rem;font-weight:700;position:fixed;top:10px;right:10px}.app-shell__mute{z-index:50;cursor:pointer;opacity:.45;background:#ffffff8c;border:1px solid #0000001f;border-radius:999px;width:28px;height:28px;padding:0;font-size:.8rem;line-height:1;transition:opacity .2s;position:fixed;top:10px;left:10px}.app-shell__mute:hover,.app-shell__mute:focus-visible,.app-shell__mute:active{opacity:1}.app-shell__mute.is-muted{opacity:.7;background:#fff6dad9;border-color:#e8c25a}.error-boundary{background:#f4ead2;justify-content:center;align-items:center;min-height:100dvh;padding:20px;display:flex}.error-boundary__panel{text-align:center;background:#fffaf0;border-radius:12px;width:100%;max-width:360px;padding:28px 24px;box-shadow:0 4px 12px #00000014}.error-boundary__panel h2{margin:0 0 12px;font-size:1.1rem}.error-boundary__panel p{color:#5a5347;margin:0 0 20px;font-size:.85rem;line-height:1.6}.error-boundary__btn{color:#fff;cursor:pointer;background:#4d96ff;border:none;border-radius:10px;width:100%;padding:12px;font-size:.95rem;font-weight:800}
