/* index7: index5 paper, olive and sage colors on the compact race timeline. */
.aihome--v7 { --aihome-line:#d8d5c8; --aihome-muted:#666a62; --aihome-accent:#c44116; --aihome-card-width:310px; padding:0 28px 24px; background:#f5f2e9; color:#242b28; font:14px/1.6 Pretendard,"Malgun Gothic",sans-serif; color-scheme:light; }
.aihome--v7 *, .aihome--v7 *::before, .aihome--v7 *::after { box-sizing:border-box; }
.aihome--v7 [hidden] { display:none !important; }
.aihome--v7 h1, .aihome--v7 h2, .aihome--v7 h3, .aihome--v7 p, .aihome--v7 ol { margin:0; }
.aihome--v7 a { color:inherit; text-decoration:none; }
.aihome--v7 button, .aihome--v7 select { font:inherit; color:inherit; }
.aihome--v7 button { cursor:pointer; }
.aihome--v7 button:disabled { opacity:.38; cursor:default; }
.aihome--v7 a:focus-visible, .aihome--v7 button:focus-visible, .aihome--v7 select:focus-visible, .aihome--v7 .aihome__track:focus-visible { outline:2px solid var(--aihome-accent); outline-offset:4px; }
.aihome--v7 .aihome__mast { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:48px; border-bottom:1px solid #242b28; color:var(--aihome-muted); font-size:10px; font-weight:600; letter-spacing:.07em; }
.aihome--v7 .aihome__mast > span { display:flex; align-items:center; gap:8px; }
.aihome--v7 .aihome__mast i { width:6px; height:6px; border-radius:50%; background:var(--aihome-accent); }
.aihome--v7 #aihome7-clock { letter-spacing:0; font-variant-numeric:tabular-nums; }
.aihome--v7 .aihome__intro { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:26px 0; }
.aihome--v7 .aihome__eyebrow { font-size:11px; color:var(--aihome-accent); font-weight:600; }
.aihome--v7 h1 { font:700 35px/1.3 Pretendard,sans-serif; letter-spacing:-.05em; margin-top:6px; word-break:keep-all; }
.aihome--v7 h1 em { color:var(--aihome-accent); font-style:normal; }
.aihome--v7 .aihome__primary { display:flex; align-items:center; justify-content:space-between; gap:20px; background:#c44116; color:#ffffff; min-height:48px; padding:11px 16px; font-size:13px; font-weight:700; flex-shrink:0; }
.aihome--v7 .aihome__primary > span { font-size:21px; }
.aihome--v7 .aihome__primary:hover { background:#a73712; }
.aihome--v7 .aihome__modes { display:flex; gap:5px; background:#e8e3d6; padding:5px; border:1px solid #d8d5c8; }
.aihome--v7 .aihome__modes button { flex:1; min-height:43px; padding:8px 10px; border:0; background:transparent; color:var(--aihome-muted); font-size:13px; font-weight:600; }
.aihome--v7 .aihome__modes button[aria-pressed="true"] { background:#252e29; color:#f6f2e7; }
.aihome--v7 .aihome__date-nav { display:flex; align-items:center; justify-content:center; gap:20px; padding:20px 0; }
.aihome--v7 .aihome__date-nav > button { width:42px; height:44px; border:1px solid var(--aihome-line); background:transparent; font-size:18px; }
.aihome--v7 .aihome__date-nav > div { display:flex; align-items:center; flex-wrap:wrap; justify-content:center; gap:8px; }
.aihome--v7 .aihome__date-nav label { color:var(--aihome-muted); font-size:11px; }
.aihome--v7 #aihome7-date { max-width:180px; min-height:44px; background-color:#f5f2e9; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='m5 7.5 5 5 5-5' fill='none' stroke='%23666a62' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); color:#242b28; border:0; padding:6px 32px 6px 8px; font-size:21px; font-weight:700; font-variant-numeric:tabular-nums; }
.aihome--v7 #aihome7-course { color:var(--aihome-muted); font-size:12px; }
.aihome--v7 .aihome__timeline { margin:0 -28px; }
.aihome--v7 .aihome__focus-panel { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:0 28px; padding:18px 22px; border-left:3px solid var(--aihome-accent); background:#252e29; color:#f6f2e7; }
.aihome--v7 .aihome__focus-panel h2 { font:600 21px/1.45 Pretendard,sans-serif; margin-top:5px; letter-spacing:-.025em; word-break:keep-all; }
.aihome--v7 #aihome7-focus-note { margin-top:5px; color:#d5dccf; font-size:11px; word-break:keep-all; }
.aihome--v7 #aihome7-focus { min-height:44px; flex-shrink:0; border:1px solid #778279; background:transparent; padding:8px 12px; font-size:11px; color:#f6f2e7; }
.aihome--v7 #aihome7-focus > span[aria-hidden] { margin-left:10px; }
.aihome--v7 .aihome__scroll-controls { display:flex; justify-content:space-between; align-items:center; margin:15px 28px 12px; color:var(--aihome-muted); font-size:11px; }
.aihome--v7 .aihome__scroll-controls > div { display:flex; gap:5px; }
.aihome--v7 .aihome__scroll-controls button { width:44px; height:36px; border:1px solid var(--aihome-line); background:transparent; font-size:16px; }
.aihome--v7 .aihome__track { position:relative; display:flex; align-items:stretch; gap:16px; width:100%; min-height:680px; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:#b5b3a2 #e8e3d6; background:#eee9dd; padding:8px 16px 20px; }
.aihome--v7 .aihome__track::-webkit-scrollbar { height:5px; }
.aihome--v7 .aihome__track::-webkit-scrollbar-thumb { background:#b5b3a2; }
.aihome--v7 .aihome__track > .aihome__empty { min-width:var(--aihome-card-width); min-height:180px; text-align:center; display:grid; place-content:center; }
.aihome--v7 .aihome__race { flex:0 0 var(--aihome-card-width); width:var(--aihome-card-width); min-width:0; display:flex; flex-direction:column; background:#faf9f3; border:1px solid #cbcabe; padding:22px; scroll-snap-align:center; scroll-margin-inline:16px; }
.aihome--v7 .aihome__race.is-selected { border-color:#c44116; background:#eaeedc; box-shadow:inset 0 3px 0 #c44116; }
.aihome--v7 .aihome__race-head { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.aihome--v7 .aihome__race-head h3 { display:flex; align-items:baseline; gap:5px; }
.aihome--v7 .aihome__race-head b { font:600 45px/1 Pretendard,sans-serif; font-variant-numeric:tabular-nums; letter-spacing:-.05em; }
.aihome--v7 .aihome__race-head h3 > span { font-size:12px; font-weight:400; color:var(--aihome-muted); }
.aihome--v7 .aihome__badge { font-size:10px; background:#ede9dd; color:#62664f; padding:4px 7px; }
.aihome--v7 [data-status="running"] .aihome__badge { background:#fff0de; color:#935014; }
.aihome--v7 [data-status="complete"] .aihome__badge { background:#dde7d8; color:#36563b; }
.aihome--v7 .aihome__race-meta { font-size:11px; margin-top:12px; color:var(--aihome-muted); border-bottom:1px solid var(--aihome-line); padding-bottom:15px; }
.aihome--v7 .aihome__label { font-size:10px; color:var(--aihome-muted); font-weight:500; margin-top:16px; }
.aihome--v7 .aihome__picks { list-style:none; padding:8px 0 0; }
.aihome--v7 .aihome__picks li { display:grid; grid-template-columns:22px 27px minmax(0,1fr); align-items:center; gap:9px; padding:6px 0; }
.aihome--v7 .aihome__rank { color:var(--aihome-muted); font-size:10px; }
.aihome--v7 .aihome__number { display:inline-flex; justify-content:center; align-items:center; width:27px; height:27px; font-size:13px; font-weight:700; }
.aihome--v7 .aihome__number svg, .aihome--v7 .aihome__number img { width:100%; height:100%; display:block; }
.aihome--v7 .aihome__picks strong { font-size:13px; font-weight:500; overflow-wrap:anywhere; }
.aihome--v7 .aihome__race-result { flex:1; margin-top:14px; padding-top:0; border-top:1px solid var(--aihome-line); min-height:120px; }
.aihome--v7 .aihome__actual { display:flex; align-items:center; justify-content:space-between; gap:12px; list-style:none; padding:8px 0; }
.aihome--v7 .aihome__actual li { display:flex; flex-direction:column; gap:3px; }
.aihome--v7 .aihome__actual small { color:var(--aihome-muted); font-size:10px; }
.aihome--v7 .aihome__actual b { font-size:19px; font-weight:600; }
.aihome--v7 .aihome__bet-badges { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin:8px 0 10px; }
.aihome--v7 .aihome__bet-badge { display:flex; align-items:center; gap:7px; min-height:30px; padding:5px 8px; border:1px solid #d8d5c8; background:#efeee5; color:#666a62; font-size:11px; }
.aihome--v7 .aihome__bet-badge i { font-style:normal; font-size:12px; }
.aihome--v7 .aihome__bet-badge b { font-weight:500; }
.aihome--v7 .aihome__bet-badge.is-hit { color:#71451a; background:#f2e1bf; border-color:#ceb180; }
.aihome--v7 .aihome__bet-badge.is-hit b { font-weight:700; }
.aihome--v7 .aihome__hit-summary { color:#71451a; font-size:11px; margin-top:5px; }
.aihome--v7 .aihome__highlight-hit { display:inline-flex; font-size:10px; color:#71451a; background:#ead5ad; margin-top:8px; padding:4px 8px; }
.aihome--v7 .aihome__result-wait { color:var(--aihome-muted); font-size:11px; padding-top:23px; word-break:keep-all; }
.aihome--v7 .aihome__race-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-top:15px; margin-top:16px; border-top:1px solid var(--aihome-line); }
.aihome--v7 .aihome__race-actions a { display:flex; min-height:36px; align-items:center; color:var(--aihome-accent); font-size:12px; font-weight:600; }
.aihome--v7 .aihome__race-actions a:hover { text-decoration:underline; text-underline-offset:4px; }
.aihome--v7 .aihome__status { display:flex; justify-content:space-between; align-items:center; gap:12px; margin:12px 28px 0; font-size:11px; color:var(--aihome-muted); }
.aihome--v7 #aihome7-retry { background:transparent; border:1px solid #cbcabe; min-height:44px; padding:8px 12px; flex-shrink:0; }
.aihome--v7 .aihome__legend { font-size:10px; color:var(--aihome-muted); margin:10px 28px 0; word-break:keep-all; }
.aihome--v7 .aihome__rail { display:flex; flex-wrap:wrap; justify-content:center; gap:6px; padding:18px 28px 24px; }
.aihome--v7 .aihome__rail button { border:1px solid var(--aihome-line); background:transparent; min-height:42px; min-width:44px; padding:6px 10px; font-size:11px; }
.aihome--v7 .aihome__rail button[aria-current="true"] { background:#252e29; color:#f6f2e7; border-color:#252e29; }
.aihome--v7 .aihome__more { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #d5cfbe; background:#e8e3d6; margin:0 -28px; padding:22px 28px; gap:24px; }
.aihome--v7 .aihome__more a { display:flex; flex-direction:column; gap:8px; min-height:52px; }
.aihome--v7 .aihome__more a > span { color:var(--aihome-muted); font-size:10px; }
.aihome--v7 .aihome__more strong { font-size:13px; display:flex; justify-content:space-between; gap:12px; font-weight:600; }
.aihome--v7 .aihome__more a:hover strong { color:var(--aihome-accent); }
.aihome--v7 .aihome__disclaimer { border-top:1px solid var(--aihome-line); padding-top:18px; text-align:center; color:var(--aihome-muted); font-size:10px; }
.aihome--v7 .aihome__empty { color:var(--aihome-muted); font-size:12px; padding:22px 0; word-break:keep-all; }
@media (max-width:700px) {
 .aihome--v7 { padding-right:18px; padding-left:18px; --aihome-card-width:290px; }
 .aihome--v7 .aihome__intro { flex-direction:column; align-items:stretch; gap:18px; padding:22px 0; }
 .aihome--v7 h1 { font-size:32px; }
 .aihome--v7 .aihome__modes button { font-size:11px; padding:8px 5px; }
 .aihome--v7 .aihome__date-nav { gap:12px; padding:15px 0; }
 .aihome--v7 .aihome__date-nav label { display:none; }
 .aihome--v7 #aihome7-date { font-size:19px; max-width:165px; padding-right:32px; }
 .aihome--v7 #aihome7-course { font-size:11px; }
 .aihome--v7 .aihome__timeline { margin-right:-18px; margin-left:-18px; }
 .aihome--v7 .aihome__focus-panel { flex-direction:column; align-items:start; gap:12px; padding:16px; margin-right:18px; margin-left:18px; }
 .aihome--v7 .aihome__focus-panel h2 { font-size:19px; }
 .aihome--v7 #aihome7-focus { min-height:38px; }
 .aihome--v7 .aihome__scroll-controls, .aihome--v7 .aihome__status, .aihome--v7 .aihome__legend { margin-right:18px; margin-left:18px; }
 .aihome--v7 .aihome__race { padding:20px; }
 .aihome--v7 .aihome__more { grid-template-columns:1fr; gap:0; margin:0 -16px; padding:12px 16px; }
 .aihome--v7 .aihome__more a { padding:14px 0; border-bottom:1px solid var(--aihome-line); }
 .aihome--v7 .aihome__more a:last-child { border:0; }
}
@media (max-width:350px) { .aihome--v7 { --aihome-card-width:270px; } .aihome--v7 .aihome__date-nav { gap:8px; } .aihome--v7 .aihome__date-nav > button { width:36px; } .aihome--v7 #aihome7-date { font-size:17px; max-width:146px; } .aihome--v7 h1 { font-size:28px; } }
@media (prefers-reduced-motion:reduce) { .aihome--v7 .aihome__track { scroll-behavior:auto; } }

/* Controls live above the cards; index6 itself remains unchanged. */
.aihome--v7 .aihome__control-deck { padding:0 28px; }
.aihome--v7 .aihome__control-deck .aihome__focus-panel { margin:0; }
.aihome--v7 #aihome7-count { color:#c8d1c8; font-size:10px; margin-top:5px; }
.aihome--v7 .aihome__race-nav { display:flex; align-items:center; gap:8px; padding:12px 0; }
.aihome--v7 .aihome__race-nav > button { width:44px; min-height:44px; flex:0 0 44px; border:1px solid var(--aihome-line); background:transparent; font-size:16px; }
.aihome--v7 .aihome__race-nav .aihome__rail { flex:1; min-width:0; padding:0 0 4px; justify-content:flex-start; flex-wrap:nowrap; overflow-x:auto; scrollbar-width:thin; scrollbar-color:#b5b3a2 #e8e3d6; }
.aihome--v7 .aihome__rail button { flex-shrink:0; }
.aihome--v7 .aihome__result-column { padding-top:12px; margin-top:12px; border-top:1px solid var(--aihome-line); }
.aihome--v7 .aihome__result-column .aihome__label { margin-top:0; }
.aihome--v7 .aihome__race-result { min-height:0; }
.aihome--v7 .aihome__timeline { padding-bottom:20px; }
@media (max-width:700px) {
 .aihome--v7 { padding-right:16px; padding-left:16px; font-size:16px; --aihome-card-width:min(326px,calc(100vw - 40px)); }
 .aihome--v7 .aihome__mast { min-height:32px; font-size:12px; }
 .aihome--v7 .aihome__intro { gap:8px; padding:12px 0; }
 .aihome--v7 .aihome__intro .aihome__eyebrow { display:none; }
 .aihome--v7 h1 { margin-top:0; font-size:28px; }
 .aihome--v7 .aihome__primary { min-height:48px; padding:8px 14px; font-size:16px; }
 .aihome--v7 .aihome__timeline { margin-right:-16px; margin-left:-16px; }
 .aihome--v7 .aihome__control-deck { position:sticky; top:80px; z-index:10; padding:0 16px 4px; background:#f5f2e9; border-bottom:1px solid var(--aihome-line); box-shadow:0 5px 12px #242b280d; }
 .aihome--v7 .aihome__modes { padding:3px; gap:3px; }
 .aihome--v7 .aihome__modes button { min-height:44px; min-width:0; font-size:14px; line-height:1.3; padding:5px 2px; text-wrap:balance; }
 .aihome--v7 .aihome__date-nav { padding:4px 0; gap:8px; }
 .aihome--v7 .aihome__date-nav > button { width:40px; height:44px; }
 .aihome--v7 #aihome7-date { font-size:20px; min-height:44px; }
 .aihome--v7 .aihome__control-deck .aihome__focus-panel { flex-direction:row; align-items:center; gap:8px; padding:7px 9px; border-left-width:2px; }
 .aihome--v7 .aihome__focus-panel > div { min-width:0; }
 .aihome--v7 .aihome__focus-panel .aihome__eyebrow, .aihome--v7 #aihome7-focus-note { display:none; }
 .aihome--v7 .aihome__focus-panel h2 { font-size:16px; line-height:1.4; margin-top:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
 .aihome--v7 #aihome7-count { margin-top:2px; font-size:12px; line-height:1.4; }
 .aihome--v7 #aihome7-focus { min-height:40px; padding:5px 7px; font-size:12px; }
 .aihome--v7 #aihome7-focus > span[aria-hidden] { margin-left:5px; }
 .aihome--v7 .aihome__race-nav { gap:6px; padding:6px 0 2px; }
 .aihome--v7 .aihome__race-nav > button { width:36px; flex-basis:36px; min-height:44px; }
 .aihome--v7 .aihome__rail button { min-height:44px; min-width:48px; padding:5px 9px; font-size:16px; }
 .aihome--v7 .aihome__race-nav .aihome__rail { gap:5px; padding-bottom:3px; }
 .aihome--v7 .aihome__track { min-height:444px; padding-top:10px; padding-bottom:12px; }
 .aihome--v7 .aihome__race { padding:12px; }
 .aihome--v7 .aihome__race-head b { font-size:36px; }
 .aihome--v7 .aihome__race-head h3 > span { font-size:14px; }
 .aihome--v7 .aihome__badge { font-size:12px; padding:4px 7px; }
 .aihome--v7 .aihome__race-meta { font-size:14px; margin-top:6px; padding-bottom:8px; line-height:1.4; }
 .aihome--v7 .aihome__card-comparison { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(0,1fr); gap:10px; margin-top:8px; }
 .aihome--v7 .aihome__prediction-column, .aihome--v7 .aihome__result-column { min-width:0; }
 .aihome--v7 .aihome__result-column { margin:0; padding:0 0 0 10px; border:0; border-left:1px solid var(--aihome-line); }
 .aihome--v7 .aihome__label { font-size:12px; line-height:1.5; margin-top:0; }
 .aihome--v7 .aihome__picks { padding-top:4px; }
 .aihome--v7 .aihome__picks li { grid-template-columns:24px 26px minmax(0,1fr); gap:5px; padding:3px 0; min-height:40px; }
 .aihome--v7 .aihome__rank { font-size:12px; }
 .aihome--v7 .aihome__number { width:26px; height:26px; font-size:16px; }
 .aihome--v7 .aihome__picks strong { font-size:16px; line-height:1.3; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
 .aihome--v7 .aihome__actual { flex-direction:column; align-items:stretch; gap:0; padding:4px 0 0; }
 .aihome--v7 .aihome__actual li { flex-direction:row; align-items:center; gap:6px; min-height:40px; }
 .aihome--v7 .aihome__actual small { font-size:12px; }
 .aihome--v7 .aihome__actual b { font-size:20px; }
 .aihome--v7 .aihome__result-wait { padding-top:10px; font-size:14px; }
 .aihome--v7 .aihome__race-result { margin-top:8px; padding-top:8px; min-height:0; }
 .aihome--v7 .aihome__bet-badges { grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; margin:5px 0 6px; }
 .aihome--v7 .aihome__bet-badge { min-height:32px; padding:4px 3px; gap:3px; font-size:12px; justify-content:center; white-space:nowrap; }
 .aihome--v7 .aihome__bet-badge i { font-size:12px; }
 .aihome--v7 .aihome__hit-summary { display:inline; font-size:14px; line-height:1.5; margin:0; }
 .aihome--v7 .aihome__highlight-hit { font-size:12px; margin:4px 0 0 5px; padding:3px 5px; }
 .aihome--v7 .aihome__race-actions { margin-top:8px; padding-top:4px; }
 .aihome--v7 .aihome__race-actions a { min-height:44px; font-size:14px; }
 .aihome--v7 .aihome__status, .aihome--v7 .aihome__legend { margin-right:16px; margin-left:16px; font-size:14px; line-height:1.6; }
 .aihome--v7 .aihome__date-nav > div { gap:6px; min-width:0; }
 .aihome--v7 #aihome7-course { font-size:14px; }
 .aihome--v7 .aihome__empty { font-size:14px; }
 .aihome--v7 .aihome__more a > span { font-size:14px; }
 .aihome--v7 .aihome__more strong { font-size:16px; }
 .aihome--v7 .aihome__disclaimer { font-size:14px; line-height:1.6; }
 .aihome--v7:lang(ja) .aihome__legend, .aihome--v7:lang(ja) .aihome__status, .aihome--v7:lang(ja) .aihome__disclaimer { word-break:normal; line-break:strict; }
}
@media (max-width:639px) { .aihome--v7 .aihome__control-deck { top:96px; } }
@media (max-width:350px) { .aihome--v7 .aihome__date-nav { gap:6px; } .aihome--v7 .aihome__date-nav > button { width:36px; flex-shrink:0; } }
.aihome--v7 .aihome__date-nav > button:hover:not(:disabled),
.aihome--v7 .aihome__race-nav > button:hover:not(:disabled),
.aihome--v7 .aihome__rail button:hover:not(:disabled):not([aria-current="true"]),
.aihome--v7 #aihome7-retry:hover:not(:disabled) { background:#e8e3d6; border-color:#b5b3a2; }

.aihome--v7 .aihome__focus-panel .aihome__eyebrow { color:#f08a64; }
.aihome--v7 #aihome7-focus:hover:not(:disabled) { background:#354239; border-color:#c8d1c8; }

/* A viewport-fixed shortcut; common navigation and other pages stay unchanged. */
.aihome--v7 .aihome__fortune-float { position:fixed; right:calc(24px + env(safe-area-inset-right, 0px)); bottom:calc(24px + env(safe-area-inset-bottom, 0px)); z-index:15; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; width:76px; height:76px; border:1px solid #ffb76b; border-radius:50%; background:linear-gradient(135deg,#dc1746,#b94718); color:#ffffff; box-shadow:0 6px 20px #0005,0 0 28px #ff642b88; isolation:isolate; animation:aihome7-fortune-aura 2s ease-in-out infinite; font-size:12px; line-height:1.2; font-weight:700; text-align:center; }
.aihome--v7 .aihome__fortune-float img { position:relative; z-index:1; display:block; width:26px; height:26px; }
.aihome--v7 .aihome__fortune-float::before { content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; z-index:-1; animation:aihome7-fortune-glow 2s ease-out infinite; }
.aihome--v7 .aihome__fortune-float span { position:relative; z-index:1; }
.aihome--v7 .aihome__fortune-float::after { content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; z-index:0; background:linear-gradient(115deg,transparent 35%,#ffffff08 40%,#ffffff70 50%,#ffffff08 60%,transparent 65%); background-size:300% 100%; background-position:150% 0; animation:aihome7-fortune-shine 3s ease-in-out infinite; }
.aihome--v7 .aihome__fortune-float:hover { background:linear-gradient(135deg,#c6173e,#a73912); border-color:#ffd599; }
.aihome--v7 .aihome__fortune-float:is(:hover,:focus-visible),
.aihome--v7 .aihome__fortune-float:is(:hover,:focus-visible)::before,
.aihome--v7 .aihome__fortune-float:is(:hover,:focus-visible)::after { animation-play-state:paused; }
@keyframes aihome7-fortune-aura {
 0%, 100% { box-shadow:0 6px 20px #0005,0 0 22px #ff642b88; }
 50% { box-shadow:0 6px 24px #0005,0 0 38px #ff642bcc; }
}
@keyframes aihome7-fortune-glow {
 0% { box-shadow:0 0 0 0 #ff5a2aaa,0 0 0 4px #ffb34777; }
 55% { box-shadow:0 0 0 10px #ff5a2a66,0 0 0 18px #ffb34744; }
 100% { box-shadow:0 0 0 18px #ff5a2a00,0 0 0 24px #ffb34700; }
}
@keyframes aihome7-fortune-shine {
 0%, 15% { background-position:150% 0; }
 55%, 100% { background-position:-50% 0; }
}
@media (prefers-reduced-motion:reduce) {
 .aihome--v7 .aihome__fortune-float,
 .aihome--v7 .aihome__fortune-float::before,
 .aihome--v7 .aihome__fortune-float::after { animation:none; }
 .aihome--v7 .aihome__fortune-float::after { opacity:0; }
}
@media (max-width:700px) {
 .aihome--v7 .aihome__fortune-float { right:calc(16px + env(safe-area-inset-right, 0px)); bottom:calc(16px + env(safe-area-inset-bottom, 0px)); width:76px; height:76px; gap:4px; font-size:14px; }
 .aihome--v7 .aihome__fortune-float img { width:24px; height:24px; }
}
