*{box-sizing:border-box;margin:0;padding:0}
:root{--a:#0ABAB5;--a2:#81D8D0;--ink:#e8efee;--mut:#6f8583;--dim:#3c4c4b;--ln:#1a2423;--bg:#060909}
body{background:var(--bg);color:var(--ink);font-family:Geist,'Noto Sans JP',sans-serif;-webkit-font-smoothing:antialiased;font-feature-settings:"palt";overflow-x:hidden}
.mono{font-family:'Geist Mono',monospace;letter-spacing:.02em}
#bg{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.grain{position:fixed;inset:-50%;width:200%;height:200%;z-index:50;pointer-events:none;opacity:.07;mix-blend-mode:overlay;animation:gr .9s steps(3) infinite}
@keyframes gr{33%{transform:translate(-3%,2%)}66%{transform:translate(2%,-3%)}}
.hd,.ticker,main{position:relative;z-index:2}
/* neon tube — the only glow */
.neon{font-family:Geist;font-weight:300;color:#effffd;font-size:46px;letter-spacing:.02em;line-height:1;
 text-shadow:0 0 2px #fff,0 0 7px var(--a2),0 0 18px var(--a),0 0 38px rgba(10,186,181,.55);-webkit-text-stroke:.4px #dffffb}
.flick{animation:fl 6s infinite}
@keyframes fl{0%,18%,21%,60%,62.5%,100%{opacity:1}19%{opacity:.35;text-shadow:none}20%{opacity:.85}61%{opacity:.5;text-shadow:0 0 4px var(--a)}}
/* header */
.hd{display:flex;align-items:center;gap:44px;height:60px;padding:0 40px 0 36px;border-bottom:1px solid var(--ln)}
.brand{display:flex;align-items:center;gap:12px;color:var(--ink)}.wm{height:20px;width:auto}
.brand span{font-size:10px;line-height:1.25;color:var(--mut);border-left:1px solid var(--dim);padding-left:10px}.brand em{font-style:normal;font-family:'Geist Mono';font-size:9px;color:var(--dim)}
nav{display:flex;gap:26px;flex:1}nav a{font-size:13px;color:var(--mut)}nav a.on{color:var(--ink);box-shadow:0 1px 0 var(--a2);padding-bottom:3px}
.who{font-size:11px;color:var(--mut)}
.ticker{display:flex;height:30px;align-items:center;border-bottom:1px solid var(--ln);font-size:11px;background:rgba(6,9,9,.8)}
.ticker b{flex:none;padding:0 14px 0 36px;color:var(--a2);font-weight:500;border-right:1px solid var(--ln);height:100%;display:flex;align-items:center}
.tk{overflow:hidden;flex:1}.tkin{display:flex;gap:38px;white-space:nowrap;animation:tk 40s linear infinite;padding-left:20px;color:var(--mut)}
.tkin .dn{color:#cfe}.tkin .dn:first-letter{color:var(--a2)}.tkin .up{color:var(--mut)}
@keyframes tk{to{transform:translateX(-50%)}}
/* hero: asymmetric */
main{padding:0 40px 0 36px}
.hero{position:relative;display:grid;grid-template-columns:120px 1fr 380px;grid-template-areas:". meta meta" ". title lede" ". row lede";column-gap:40px;padding:34px 0 40px;border-bottom:1px solid var(--ln)}
.rn{position:absolute;left:-70px;top:-6px;font-family:Geist;font-weight:700;font-size:340px;line-height:.8;letter-spacing:-.08em;color:transparent;-webkit-text-stroke:1px rgba(129,216,208,.3);pointer-events:none;user-select:none}
.hmeta{grid-area:meta;display:flex;gap:22px;font-size:10.5px;color:var(--mut);margin-bottom:20px;align-items:center}
.stamp{color:#e7c873;border:1px solid rgba(231,200,115,.6);padding:2px 7px;transform:rotate(-2.2deg);display:inline-block}
.htitle{grid-area:title;display:flex;align-items:flex-end;gap:22px}
.htitle h1{font-family:'Noto Sans JP';font-weight:900;font-size:58px;line-height:1;letter-spacing:-.04em}
.htitle h1 span{display:block;font-size:30px;font-weight:700;letter-spacing:-.01em;color:#b9c9c7;margin-top:6px}
.hrow{grid-area:row;display:flex;gap:26px;align-items:center;margin-top:20px;font-size:13px;color:#a9bbb9}
.cond b{color:var(--ink)}.g1{font-family:'Geist Mono';font-size:10px;border:1px solid var(--a2);color:var(--a2);padding:1px 5px;margin-right:8px}
.cd{font-size:11px;color:var(--mut);border-left:1px solid var(--dim);padding-left:16px}.cd b{color:var(--ink);font-weight:500;font-size:14px;margin:0 6px;font-variant-numeric:tabular-nums}.cd i{font-style:normal;color:var(--dim)}
.lede{grid-area:lede;align-self:end;border-left:1px solid var(--ln);padding-left:24px}
.lede p{font-size:13px;line-height:1.9;color:#a9bbb9}.lede p b{color:var(--ink);font-weight:500;box-shadow:inset 0 -6px 0 rgba(10,186,181,.18)}
.kv{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;margin-top:18px;border-top:1px solid var(--ln)}
.kv div{padding-top:10px}.kv i{display:block;font-style:normal;font-size:9.5px;color:var(--mut)}.kv b{font-family:Geist;font-weight:500;font-size:24px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.kv small{font-size:12px;color:var(--mut)}
.hot{color:#effffd;text-shadow:0 0 6px rgba(129,216,208,.8),0 0 20px rgba(10,186,181,.5);font-size:34px!important}
/* grid */
.grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:44px;padding:8px 0 30px}
aside{padding-top:58px}aside section{margin-bottom:26px}
.ph{display:flex;justify-content:space-between;align-items:baseline;padding:16px 0 9px;border-bottom:1px solid #2a3837}
.ph h2{font-size:13px;font-weight:700;letter-spacing:.04em}.ph span{font-size:10px;color:var(--mut)}
table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
th{font-size:10px;font-weight:500;color:var(--mut);text-align:left;padding:9px 6px;white-space:nowrap}
td{padding:10px 6px;border-top:1px solid var(--ln);vertical-align:middle;font-size:12px;white-space:nowrap}
tbody tr{transition:background .2s}tbody tr:hover{background:rgba(129,216,208,.045)}tbody tr:hover .nm b{color:var(--a2)}
tr.top{background:rgba(129,216,208,.05)}tr.top td:first-child{box-shadow:inset 2px 0 0 var(--a2)}
.mk{font-size:15px;color:var(--a2);width:24px;text-align:center}
.gate{display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;font-size:11px;font-weight:700;font-family:Geist}
.nm{display:flex;align-items:center;gap:7px}.nm b{font-size:13.5px;font-weight:700}.sx{font-size:10px;color:var(--mut)}
.ped{font-size:9.5px;color:var(--dim);margin:3px 0 0 23px;color:#5a6e6c}.mob{display:none}
.jk i,.bw i,.pv i{display:block;font-style:normal;font-size:9.5px;color:var(--mut);font-family:'Geist Mono'}
.bw{font-family:'Geist Mono'}.bw i.up{color:#d9b65e}.bw i.dn{color:#8fb9e8}.pv{color:#a9bbb9;font-size:11px}
.pd{font-family:'Geist Mono';font-size:12px;text-align:center}.pdA{color:var(--a2)}.pdB{color:#a9bbb9}.pdC{color:var(--dim)}
.pr{text-align:right}.big{font-family:Geist;font-size:17px;font-weight:500;letter-spacing:-.02em}tr.top .big{color:var(--a2)}
.od{text-align:right;font-family:'Geist Mono';font-size:12.5px}.ev{text-align:right;font-family:'Geist Mono';color:var(--mut)}.ev.hi{color:var(--ink)}tr.top .ev{color:var(--a2)}
th.pr,th.od,th.ev{text-align:right}th.pd{text-align:center}
.viz{width:100%;display:block;margin-top:12px;font-family:'Geist Mono';font-size:8.5px}.viz text{fill:var(--mut)}
.memo ol{list-style:none;font-size:12px;margin-top:8px}.memo li{display:flex;gap:10px;padding:7px 0;border-bottom:1px dashed var(--ln)}.memo li span{color:var(--mut);width:44px}.memo li i{margin-left:auto;font-style:normal;color:var(--mut)}
.memo p{font-size:12px;color:#a9bbb9;line-height:1.8;margin-top:10px;padding-left:10px;border-left:2px solid #e7c873}
footer{display:flex;justify-content:space-between;font-size:10px;color:var(--dim);padding:18px 0 34px;border-top:1px solid var(--ln)}
/* login */
.lg{min-height:100vh;position:relative;overflow:hidden}
.lg>*:not(#bg):not(.grain){position:relative;z-index:2}
.gnum{position:absolute!important;right:-90px;top:-60px;font-family:Geist;font-weight:700;font-size:760px;line-height:.85;color:transparent;-webkit-text-stroke:1px rgba(239,143,181,.22);z-index:1!important;letter-spacing:-.06em}
.lgtop{display:flex;align-items:center;gap:18px;padding:30px 36px}.lgtop .wm{height:22px}.lgtop span{font-size:10px;color:var(--mut)}
.lgcopy{position:absolute!important;left:36px;top:150px;max-width:620px}
.neon.sm{font-size:28px;display:inline-block;border:1.5px solid rgba(223,255,251,.85);padding:4px 10px 6px;border-radius:6px;box-shadow:0 0 8px var(--a),inset 0 0 8px rgba(10,186,181,.5);margin-bottom:28px}
.lgcopy h1{font-family:'Noto Sans JP';font-weight:900;font-size:72px;line-height:1.08;letter-spacing:-.05em}.lgcopy h1 em{font-style:normal;color:var(--a2)}
.lgcopy p{margin-top:24px;font-size:13.5px;line-height:1.9;color:#a9bbb9;max-width:430px}
.lgf{position:absolute!important;right:140px;bottom:110px;width:330px;background:rgba(6,9,9,.86);border-top:2px solid var(--a2);padding:22px 24px 20px}
.fh{font-size:11px;color:var(--a2);margin-bottom:18px}.fh span{color:var(--mut)}
label{display:block;font-size:11px;color:var(--mut);margin-bottom:14px}
input{display:block;width:100%;margin-top:6px;height:40px;background:transparent;border:0;border-bottom:1px solid #33433f;color:var(--ink);font:inherit;font-size:15px;font-family:'Geist Mono'}
label:first-of-type input{border-bottom-color:var(--a2)}
button{margin-top:8px;width:100%;height:44px;border:0;background:var(--ink);color:#060909;font:inherit;font-weight:700;font-size:14px;display:flex;justify-content:space-between;align-items:center;padding:0 16px;cursor:pointer}button:hover{background:var(--a2)}
.fl{display:flex;justify-content:space-between;font-size:10px;color:var(--mut);margin-top:14px}.fl a{text-decoration:underline;text-underline-offset:3px}
.lgfoot{position:absolute!important;left:36px;right:36px;bottom:26px;display:flex;justify-content:space-between;font-size:10px;color:var(--mut)}.lgfoot b{color:var(--ink);font-weight:500}
/* mobile */
@media(max-width:760px){
.hd{padding:0 18px;gap:0;justify-content:space-between}nav{display:none}.who{font-size:9.5px}.brand span{display:none}
.ticker b{padding:0 10px 0 18px}main{padding:0 18px}
.hero{display:block;padding:24px 0 26px}.rn{font-size:220px;left:auto;right:-30px;top:-14px}
.hmeta{flex-wrap:wrap;gap:6px 14px;margin-bottom:16px}.htitle{display:block}.neon{font-size:34px;margin-bottom:12px}
.htitle h1{font-size:40px}.htitle h1 span{font-size:22px}.hrow{flex-direction:column;align-items:flex-start;gap:10px}.cd{border:0;padding:0}
.lede{border:0;padding:0;margin-top:20px}.kv{grid-template-columns:1fr 1fr}.kv div:nth-child(n+3){margin-top:6px}
.grid{display:block}aside{padding-top:10px}
.jk,.bw,.pv,.pd,.sp,.ped{display:none}.mob{display:block;font-size:9.5px;color:var(--mut);margin:3px 0 0 23px;font-family:'Geist Mono'}
td,th{padding:9px 3px}.hn{white-space:normal;max-width:170px}.sx{display:none}.mob{line-height:1.5}th.ev,td.ev{font-size:11.5px}.mk{width:16px;font-size:13px}.nm b{font-size:13px}.big{font-size:15px}footer{flex-direction:column;gap:6px}
.lgtop{padding:22px 20px}.lgtop span{display:none}.gnum{font-size:420px;right:-70px;top:40px}
.lgcopy{position:relative!important;left:auto;top:auto;padding:30px 20px 0}.lgcopy h1{font-size:42px}.lgcopy p{font-size:12.5px}.neon.sm{font-size:22px;margin-bottom:20px}
.lgf{position:relative!important;right:auto;bottom:auto;width:auto;margin:30px 20px 80px}
.lgfoot{flex-direction:column;gap:4px;left:20px;bottom:18px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.lgf .fh span{color:var(--mut)}
.lgf input{font-size:16px;letter-spacing:.08em}.lgf input::placeholder{color:#33433f}
.lgf.err{border-top-color:#ff4d6d;animation:shake .35s 1}
.lgf.err label:first-of-type input{border-bottom-color:#ff4d6d}
.emsg{display:flex;align-items:center;gap:10px;font-size:11px;color:#ffb3c0;margin:-2px 0 12px;line-height:1.5}
.neon-err{flex:none;font-family:Geist;font-size:12px;letter-spacing:.12em;color:#fff0f3;border:1px solid rgba(255,190,205,.9);padding:2px 6px;border-radius:4px;
 text-shadow:0 0 2px #fff,0 0 8px #ff4d6d,0 0 18px #ff1f4b;box-shadow:0 0 6px #ff1f4b,inset 0 0 6px rgba(255,31,75,.6);animation:fl 4s infinite}
@keyframes shake{20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}
.who form{display:inline}.lo{all:unset;cursor:pointer;color:var(--a2);text-decoration:underline;text-underline-offset:3px}
@media(prefers-reduced-motion:reduce){.lgf.err{animation:none}}
.lgf input:focus{outline:none;border-bottom-color:var(--a2);box-shadow:0 1px 0 var(--a2)}
.lgf.err input,.lgf.err input:focus{border-bottom-color:#ff4d6d;box-shadow:0 1px 0 #ff4d6d}
.lgf .fl{gap:12px;flex-wrap:wrap}

/* ===== v5 polish (Impeccable audit) ===== */
:root{--mut:#7f9593;--dim:#5f7472;--rule:#1a2423;--ph:#6f8482}
::selection{background:rgba(129,216,208,.28);color:#fff}
html{scrollbar-color:#2a3a39 #060909;accent-color:#81D8D0}
body{caret-color:#81D8D0}
:focus-visible{outline:1px solid #81D8D0;outline-offset:3px}
a,button,nav a{cursor:pointer}
nav a{transition:color .2s cubic-bezier(.16,1,.3,1)}nav a:hover{color:var(--ink)}
/* type floor: nothing functional below 11px */
.brand em,.who,.ticker,.ph span,th,.ped,.mob,.jk i,.bw i,.pv i,.kv i,.hmeta,.stamp,.g1,.cd,.sx,.fl,.lgfoot,.lgtop span,footer,.viz{font-size:11px}
.ped{color:#7d918f}.hmeta{color:var(--mut)}
th{letter-spacing:.04em}
td{font-size:12.5px}.pv{font-size:12px}
/* glow budget: only 11R tube, OPEN sign, DENIED — everything else crisp */
.hot{text-shadow:none;color:var(--a2)}
.neon.sm{box-shadow:none}
.neon-err{box-shadow:none}
.lede p b{box-shadow:none;text-decoration:underline;text-decoration-color:rgba(129,216,208,.55);text-decoration-thickness:1px;text-underline-offset:4px}
/* rhythm */
.hero{padding:40px 0 44px}.hrow{margin-top:24px}.lede p{max-width:38em;font-size:13.5px}
.kv{margin-top:22px}.ph{padding:20px 0 10px}aside section{margin-bottom:32px}
.ticker:hover .tkin{animation-play-state:paused}
tbody tr{transition:background .25s cubic-bezier(.16,1,.3,1)}
/* login form */
.lgf h2{font-size:15px;font-weight:700;margin-bottom:4px;letter-spacing:.02em}
.lgf .hint{font-size:12px;color:var(--mut);margin-bottom:20px;line-height:1.6}
.lgf input{font-size:17px;letter-spacing:.1em;height:46px;transition:border-color .2s,box-shadow .2s}
.lgf input::placeholder{color:var(--ph);letter-spacing:.1em}
.kmeta{display:flex;justify-content:space-between;font-size:11px;color:var(--mut);margin:-6px 0 14px;font-family:'Geist Mono'}
.kmeta .ok{color:var(--a2)}
.lgf button{transition:background .2s cubic-bezier(.16,1,.3,1),transform .1s}.lgf button:active{transform:translateY(1px)}
.lgf button span{transition:transform .25s cubic-bezier(.16,1,.3,1)}.lgf button:hover span{transform:translateX(4px)}
.lgf button[aria-busy=true]{background:#2a3a39;color:var(--mut);cursor:progress}
.lgf button[aria-busy=true] span{animation:blink 1s steps(2) infinite}@keyframes blink{50%{opacity:0}}
.emsg{font-size:12px;color:#ffc2cc}
.lgf .fl{font-size:11px;color:var(--mut)}
@media(max-width:760px){.lgf input{font-size:16px;letter-spacing:.06em}}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.lgf input{margin:0 0 12px}
.kf{display:flex;align-items:baseline;gap:8px;border-bottom:1px solid #33433f;margin-bottom:12px;transition:border-color .2s}
.kf .pre{font-size:17px;letter-spacing:.1em;color:var(--mut)}
.kf input,.kf input:focus{border:0!important;box-shadow:none!important;margin:0;flex:1;min-width:0}
.kf:focus-within{border-bottom-color:var(--a2)}
.lgf.err .kf{border-bottom-color:#ff4d6d}
@media(max-width:760px){.kf .pre{font-size:16px;letter-spacing:.06em}}
@media(max-width:760px){.hmeta{gap:6px 16px}.hmeta span{white-space:nowrap}}
:root{--dim:#6c817f}
@keyframes fl{0%,18.9%,21%,60.9%,62.5%,100%{opacity:1}19%{opacity:.3}20%{opacity:.85}61%{opacity:.55}}

/* ===== v6 app shell & features ===== */
.hd nav a{text-decoration:none}a{color:inherit}
.who form{display:inline}
.sbar{position:relative;z-index:2;font-size:11px;color:#e7c873;padding:6px 40px 6px 36px;border-bottom:1px solid var(--ln);letter-spacing:.06em}
main{position:relative;z-index:2;padding-bottom:40px}
.hl{text-decoration:none}.hl:hover b{color:var(--a2);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.back{color:var(--a2);text-decoration:none}.back:hover{text-decoration:underline;text-underline-offset:3px}
.lk{font-size:11px;color:var(--a2);text-decoration:none}
.ttl{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:36px 0 24px;border-bottom:1px solid var(--ln)}
.ttl h1{font-family:'Noto Sans JP';font-weight:900;font-size:44px;letter-spacing:-.04em;line-height:1}.ttl h1 span{font-size:20px;font-weight:700;color:var(--mut);letter-spacing:0}
.ttl p{font-size:11.5px;color:var(--mut);margin-top:10px}
.r{text-align:right}
/* tables shared */
.st,.runs,.al,.mt{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.st td,.runs td,.al td,.mt td{padding:11px 8px;border-top:1px solid var(--ln);font-size:13px;white-space:nowrap}
.st th,.runs th,.al th,.mt th{text-align:left;font-size:11px;color:var(--mut);font-weight:500;padding:10px 8px}
.st th.r,.runs th.r,.al th.r,.mt th.r{text-align:right}
.tw{overflow-x:auto;scrollbar-width:thin}
.kpis,.kv2{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--ln);margin:0}
.kpis div,.kv2 div{padding:18px 0 20px;border-right:1px solid var(--ln);padding-left:20px}.kpis div:first-child,.kv2 div:first-child{padding-left:0}.kpis div:last-child,.kv2 div:last-child{border-right:0}
.kpis dt,.kv2 dt{font-size:11px;color:var(--mut)}.kpis dd,.kv2 dd{font-family:Geist;font-size:30px;font-weight:500;letter-spacing:-.03em;margin-top:4px;font-variant-numeric:tabular-nums}
.kpis dd small,.kv2 dd small{font-size:12px;color:var(--mut);margin-left:2px}.kpis dd.a,.kv2 dd.a{color:var(--a2)}.kpis dd.neg{color:#ff8fa3}.kpis dd.sm{font-size:17px;padding-top:10px}
.note{font-size:11px;color:var(--mut);margin-top:22px}
.memo-p{font-size:13px;line-height:1.85;color:#a9bbb9;margin-top:12px}.memo-p b{color:var(--ink);font-weight:500}
.btn{all:unset;box-sizing:border-box;display:block;text-align:center;width:100%;height:44px;line-height:44px;background:var(--ink);color:#060909;font-weight:700;font-size:14px;cursor:pointer;margin-top:18px;transition:background .2s cubic-bezier(.16,1,.3,1)}
.btn:hover{background:var(--a2)}.btn:focus-visible{outline:1px solid var(--a2);outline-offset:3px}
/* races */
.nextup{font-size:12px;color:var(--mut);text-align:right;line-height:1.7}.nextup b{color:var(--ink);font-size:15px;font-weight:500;margin:0 6px}.nextup i{display:block;font-style:normal;color:var(--a2)}
.timeline{display:flex;gap:0;overflow-x:auto;border-bottom:1px solid var(--ln);scrollbar-width:none}
.tl{flex:1 0 132px;padding:14px 16px 14px 0;text-decoration:none;border-right:1px solid var(--ln);margin-right:16px;transition:color .2s}.tl:last-child{border-right:0}
.tl span{display:block;font-size:11px;color:var(--mut)}.tl b{display:block;font-size:15px;margin-top:2px}.tl small{font-size:11px;color:var(--mut);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tl.nx span{color:var(--a2)}.tl.nx b{color:var(--a2)}.tl:hover b{color:var(--a2)}
.vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:6px}
.ph h2 small{font-weight:400;color:var(--mut);margin-left:8px;font-size:11px}
.rl{list-style:none}.rl a{display:grid;grid-template-columns:34px 46px 1fr auto 40px;gap:8px;align-items:baseline;padding:10px 0;border-top:1px solid var(--ln);text-decoration:none;transition:background .2s}
.rl li:first-child a{border-top:0}.rl a:hover{background:rgba(129,216,208,.045)}.rl a:hover .rname{color:var(--a2)}
.rno{font-size:12px;color:var(--mut)}.pt{font-size:13px}.rname{font-size:13.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cs{font-size:11px;color:var(--mut)}
.rl .ev{font-size:12px;text-align:right;color:var(--mut)}.rl .ev.hi{color:var(--a2)}
.rl .done a{opacity:.42}.rl .live a{box-shadow:inset 2px 0 0 var(--a2);padding-left:8px;background:rgba(129,216,208,.05)}.rl .live .pt{color:var(--a2)}
.g1{font-style:normal;font-family:'Geist Mono';font-size:10px;border:1px solid var(--a2);color:var(--a2);padding:0 4px;margin-left:4px;vertical-align:1px}
.cal{margin-top:44px}.cg{display:grid;grid-template-columns:repeat(7,1fr);border-left:1px solid var(--ln);border-top:1px solid var(--ln);margin-top:12px}
.cg>*{min-height:78px;border-right:1px solid var(--ln);border-bottom:1px solid var(--ln);padding:8px 10px;text-decoration:none;position:relative;display:block}
.cg .wk{min-height:0;font-size:11px;color:var(--mut);padding:6px 10px}
.cg b{font-size:14px;font-weight:500;color:var(--dim)}.cg .mt b{color:var(--ink)}.cg .sun b{color:#ff8fa3}.cg .sat b{color:#8fb9e8}
.cg small{display:block;font-size:11px;color:var(--mut);margin-top:4px}.cg em{display:block;font-style:normal;font-size:11px;color:var(--a2);margin-top:2px}
.cg .g1{position:absolute;top:8px;right:8px;margin:0}.cg .mt:hover{background:rgba(129,216,208,.045)}
.cg .today{box-shadow:inset 0 0 0 1px var(--a2)}
/* horse */
.hh{position:relative;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end;padding:36px 0 26px;border-bottom:1px solid var(--ln);overflow:hidden}
.bign{position:absolute;right:340px;top:-40px;font-family:Geist!important;font-weight:700;font-size:260px;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(129,216,208,.18);pointer-events:none}
.hh h1{font-family:'Noto Sans JP';font-weight:900;font-size:48px;letter-spacing:-.04em;display:flex;align-items:center;gap:16px;margin-top:14px}.hh h1 .gate{width:34px;height:34px;font-size:18px}
.hh .sub{font-size:13px;color:#a9bbb9;margin-top:10px}.hh .hmeta{gap:18px;margin:0}
.kv2{grid-template-columns:repeat(4,auto);border:0;gap:0}.kv2 div{padding:0 22px}.kv2 dd{font-size:26px}
.hgrid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:44px}
.runs .rname{max-width:120px;overflow:hidden;text-overflow:ellipsis}.runs .jk{color:var(--mut);font-size:12px}
.pos{font-size:15px!important;text-align:right;font-weight:500}.pos.w{color:var(--a2)}.pos.p{color:var(--ink)}.runs td.pos:not(.w):not(.p){color:var(--mut)}
.ped2{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(4,auto);margin-top:12px;border-top:1px solid var(--ln);border-left:1px solid var(--ln)}
.ped2>div{border-right:1px solid var(--ln);border-bottom:1px solid var(--ln);padding:9px 10px;font-size:12.5px}.ped2 i{display:block;font-style:normal;font-size:11px;color:var(--mut);font-family:'Geist Mono'}
.ped2 .s{grid-row:1/3}.ped2 .d{grid-row:3/5;grid-column:1}.ped2 .ss{grid-column:2;grid-row:1}.ped2 .sd{grid-column:2;grid-row:2}.ped2 .ds{grid-column:2;grid-row:3}.ped2 .dd{grid-column:2;grid-row:4}
.ped2 b{font-size:14px}
/* stats */
.seg{display:flex;border:1px solid #2a3837}.seg button{all:unset;cursor:pointer;font-size:12px;padding:7px 14px;color:var(--mut);border-right:1px solid #2a3837}.seg button:last-child{border:0}
.seg button[aria-selected=true]{background:var(--ink);color:#060909}.seg button:hover:not([aria-selected=true]){color:var(--ink)}
.roi{margin-top:16px}
.sgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:20px}
.st .mk{color:var(--a2)}.rv{display:flex;align-items:center;gap:10px;justify-content:flex-end;color:var(--mut)}.rv.up{color:var(--ink)}
.hb{display:inline-block;width:60px;height:3px;background:rgba(129,216,208,.1);position:relative}.hb i{display:block;height:100%;background:#4a6866}.hb i.pos{background:var(--a2)}
.hb:after{content:"";position:absolute;left:66.6%;top:-3px;bottom:-3px;width:1px;background:#6c817f}
/* alerts */
.live{color:var(--a2)}.live i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--a2);margin-right:6px;animation:pulse 2s infinite}
@keyframes pulse{50%{opacity:.3}}
.agrid,.mgrid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:44px}
.al .mk{color:var(--a2);text-align:center;width:24px}.al td{transition:background .6s}.al .od{font-size:14px}.al .ev{color:var(--mut)}
.al tr.over .ev{color:var(--a2);font-weight:500}.al .st{font-size:11px;color:var(--a2)}
.al .dl.up{color:#d9b65e}.al .dl.dn{color:#8fb9e8}.al .dl{font-size:11px}
.od.tick{animation:tick .7s cubic-bezier(.16,1,.3,1)}@keyframes tick{from{color:#fff;background:rgba(129,216,208,.18)}}
.al tr.flash td{animation:flash 2.4s cubic-bezier(.16,1,.3,1)}@keyframes flash{0%,30%{background:rgba(129,216,208,.16)}}
.alog{list-style:none;font-size:12px;margin-top:6px;min-height:60px}.alog li{display:grid;grid-template-columns:70px 1fr 90px 70px;gap:8px;padding:8px 0;border-bottom:1px dashed var(--ln)}
.alog .a{color:var(--a2);text-align:right}.alog .empty{display:block;color:var(--mut);border:0;font-family:'Noto Sans JP'}
.aset .row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid var(--ln);font-size:13px;color:var(--ink);margin:0}
.aset .row small{display:block;font-size:11px;color:var(--mut);margin-top:3px}
.aset .num{width:80px;height:34px;margin:0;border:1px solid #2a3837;padding:0 8px;text-align:right;font-size:14px}
.sw{appearance:none;width:38px;height:22px;margin:0!important;border:1px solid #3a4d4b;border-radius:11px;position:relative;cursor:pointer;flex:none;transition:background .2s,border-color .2s;display:inline-block!important;padding:0!important}
.sw:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#6c817f;transition:transform .25s cubic-bezier(.16,1,.3,1),background .2s}
.sw:checked{border-color:var(--a2);background:rgba(129,216,208,.14)}.sw:checked:after{transform:translateX(16px);background:var(--a2)}
.pushnote{font-size:11px;color:#e7c873;margin-top:10px;line-height:1.6}
.toasts{position:fixed;right:24px;bottom:24px;z-index:60;display:flex;flex-direction:column;gap:10px;pointer-events:none}
.toast{pointer-events:auto;display:flex;gap:14px;align-items:center;min-width:300px;background:#0a1110;border:1px solid #2a3837;border-top:2px solid var(--a2);padding:14px 40px 14px 16px;position:relative;
 box-shadow:0 12px 32px rgba(0,0,0,.55);transform:translateY(16px);opacity:0;transition:transform .45s cubic-bezier(.16,1,.3,1),opacity .3s}
.toast.in{transform:none;opacity:1}.toast b{display:block;font-size:14px}.toast small{font-size:11px;color:var(--mut);font-family:'Geist Mono'}
.tneon{font-family:Geist;font-weight:300;font-size:20px;color:#effffd;white-space:nowrap;text-shadow:0 0 2px #fff,0 0 7px var(--a2),0 0 18px var(--a)}
.tx{all:unset;position:absolute;right:12px;top:10px;color:var(--mut);cursor:pointer;font-size:16px}.tx:hover{color:var(--ink)}
/* memo */
.aset .col{display:block;font-size:11px;color:var(--mut);margin:14px 0 0}
.aset .col input,.aset .col select{display:block;width:100%;height:40px;margin-top:6px;background:transparent;border:0;border-bottom:1px solid #33433f;color:var(--ink);font-size:15px;font-family:inherit}
.aset select{appearance:none;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6' fill='%2381D8D0'/%3E%3C/svg%3E") no-repeat right 4px center}
.aset select option{background:#0a1110}.aset input:focus,.aset select:focus{outline:none;border-bottom-color:var(--a2)}
.fine{font-size:11px;color:var(--mut);margin-top:12px}
.mt .pl.up{color:var(--a2)}.mt .pl.dn{color:#ff8fa3}.mt tr.pending td{color:#a9bbb9}.mt a{text-decoration:none}.mt a:hover{color:var(--a2)}
.settle{display:inline-flex;gap:6px}.settle input{width:76px;height:28px;background:transparent;border:1px solid #2a3837;color:var(--ink);padding:0 6px;text-align:right;font-size:12px}
.settle button{all:unset;cursor:pointer;font-size:11px;border:1px solid var(--a2);color:var(--a2);padding:0 8px;height:26px;line-height:26px}.settle button:hover{background:var(--a2);color:#060909}
.x{all:unset;cursor:pointer;color:var(--dim);font-size:15px;padding:0 6px}.x:hover{color:#ff8fa3}
.empty{font-size:13px;color:var(--mut);padding:28px 0}
/* race page tweaks */
main.race .hero{padding-top:30px}
/* mobile tabbar */
.tabbar{display:none}
@media(max-width:760px){
 .sbar{padding:6px 18px}
 .hmeta{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.hmeta .stamp{margin-top:2px}
 .ttl{flex-direction:column;align-items:flex-start;padding:26px 0 18px}.ttl h1{font-size:32px}.nextup{text-align:left}
 .vgrid,.sgrid,.hgrid,.agrid,.mgrid{grid-template-columns:1fr;gap:10px}
 .kpis{grid-template-columns:1fr 1fr}.kpis div{padding:14px 0 14px 14px!important;border-bottom:1px solid var(--ln)}.kpis div:nth-child(odd){padding-left:0!important}.kpis div:nth-child(2n){border-right:0}.kpis dd{font-size:24px}
 .cg>*{min-height:58px;padding:5px}.cg small,.cg em{display:none}.cg .g1{position:static;display:inline-block;margin-top:4px;font-size:9px}
 .hh{grid-template-columns:1fr;padding-top:24px}.hh h1{font-size:30px}.bign{right:-30px;top:-30px;font-size:200px}.kv2{grid-template-columns:repeat(4,1fr)}.kv2 div{padding:0 0 0 10px}.kv2 div:first-child{padding:0}.kv2 dd{font-size:20px}
 .al .mk,.al th:first-child,.al td:nth-child(4),.al th:nth-child(4),.al .st,.al th:last-child{display:none}.al td{padding:10px 4px}
 .alog li{grid-template-columns:60px 1fr 60px}.alog li span:nth-child(3){display:none}
 .toasts{left:12px;right:12px;bottom:80px}.toast{min-width:0}
 .tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:40;background:rgba(6,9,9,.94);border-top:1px solid #1d2a29;padding-bottom:env(safe-area-inset-bottom)}
 .tabbar a{display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 0 8px;font-size:11px;color:var(--mut);text-decoration:none}.tabbar a.on{color:var(--a2)}
 body.pg{padding-bottom:70px}
 .who{font-size:11px}
}
.agrid aside,.mgrid aside,.hgrid aside{padding-top:0}
.roi text{font-size:9px}
.hh .bign{right:420px;top:-60px}
@media(max-width:760px){.roi text{font-size:20px}.mt td:first-child,.mt th:first-child{display:none}.mt td,.mt th{padding:10px 5px}.kpis div:last-child{border-bottom:0}}

/* ===== v7 ===== */
/* venue accents */
/* Unified Nocturne Tiffany Blue default; per-user shop themes (body.th-*) override --a/--a2/--ag */
.venue,.venue.v-tokyo,.venue.v-kyoto,.venue.v-niigata,.venue.v-hanshin,.venue.v-nakayama{--vc:var(--a2)}
.venue .ph h2:before{content:"";display:inline-block;width:8px;height:8px;background:var(--vc);margin-right:8px;vertical-align:1px}
.venue .rl .live a{box-shadow:inset 2px 0 0 var(--vc)}.venue .rl .live .pt,.venue .rl .ev.hi{color:var(--vc)}
.neon{text-shadow:0 0 2px #fff,0 0 7px var(--a2),0 0 18px var(--a),0 0 38px rgba(var(--ag,10,186,181),.55)}
tr.top td:first-child{box-shadow:inset 2px 0 0 var(--a2)}tr.top{background:rgba(var(--ag,10,186,181),.06)}
.viz .ba{fill:var(--a2)}.viz .bm{fill:#22302f}
/* header */
.hd nav a{display:inline-flex;align-items:center;gap:6px}.hd nav a svg{opacity:.7}.hd nav a.on svg{opacity:1;color:var(--a2)}
.themeb{all:unset;cursor:pointer;font-size:11px;color:var(--mut);border:1px solid #2a3837;padding:4px 9px;margin-right:16px;white-space:nowrap}.themeb:hover{color:var(--ink);border-color:var(--mut)}.themeb:focus-visible{outline:1px solid var(--a2);outline-offset:2px}
/* day / night */
html[data-theme=day] body{background:#060909}
html[data-theme=day] .neon,html[data-theme=day] .tneon{text-shadow:0 0 1px #fff,0 0 6px rgba(var(--ag,10,186,181),.55)}
html[data-theme=day] .grain{opacity:.055}html[data-theme=day] #bg{opacity:1}
html[data-theme=night] .neon{text-shadow:0 0 2px #fff,0 0 8px var(--a2),0 0 22px var(--a),0 0 48px rgba(var(--ag,10,186,181),.7),0 0 90px rgba(var(--ag,10,186,181),.35)}
html[data-theme=night] .tube.lit,html[data-theme=night] .hits li.hit .tube{filter:brightness(1.15)}
/* view transition: rail line under header flows across */
@view-transition{navigation:auto}
.vt-track{position:fixed;left:0;right:0;top:59px;height:1px;background:var(--a2);opacity:.28;z-index:45;pointer-events:none;view-transition-name:track}
::view-transition-old(root){animation:vtout .28s cubic-bezier(.4,0,1,1) both}
::view-transition-new(root){animation:vtin .5s cubic-bezier(.16,1,.3,1) both}
::view-transition-old(track){animation:none;opacity:0}
::view-transition-new(track){animation:vtrail .7s cubic-bezier(.16,1,.3,1) both}
@keyframes vtout{to{opacity:0;transform:translateY(-6px)}}
@keyframes vtin{from{opacity:0;transform:translateY(10px)}}
@keyframes vtrail{from{clip-path:inset(0 100% 0 0);filter:brightness(4)}60%{filter:brightness(4)}to{clip-path:inset(0 0 0 0);filter:none}}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
/* race v7 */
.lede2{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding:18px 0;border-bottom:1px solid var(--ln)}.lede2 p{font-size:13.5px;color:#a9bbb9;max-width:46em;line-height:1.85}.lede2 b{color:var(--ink);font-weight:500}
.lk{color:var(--a2)}.back{color:var(--a2)}
.rt{width:100%}.silk{flex:none}
.why details{border-top:1px solid var(--ln)}.why summary{list-style:none;display:flex;align-items:center;gap:8px;padding:10px 0;cursor:pointer;font-size:13px}.why summary::-webkit-details-marker{display:none}
.why summary .mono{margin-left:auto;color:var(--mut);font-size:12px}.why summary:after{content:"+";color:var(--mut);width:14px;text-align:right;font-family:'Geist Mono'}.why details[open] summary:after{content:"−"}
.why summary .mk{color:var(--a2);width:16px}.why summary:hover b{color:var(--a2)}
.fx{list-style:none;padding:2px 0 12px}.fx li{display:grid;grid-template-columns:16px 78px 1fr 44px;gap:8px;align-items:center;font-size:12px;padding:3px 0;color:#a9bbb9}.fx .ico{color:var(--mut)}
.fb{position:relative;height:6px;background:rgba(255,255,255,.03)}.fb:before{content:"";position:absolute;left:50%;top:-3px;bottom:-3px;width:1px;background:#3a4d4b}
.fb i{position:absolute;top:0;bottom:0}.fb i.p{background:var(--a2)}.fb i.n{background:#7a5560}.fv{text-align:right;font-size:11px}
.why .fine{font-size:11px;color:var(--mut);margin-top:8px;line-height:1.6}
/* pre-race */
.prebar{display:flex;gap:24px;align-items:center;font-size:12px;padding:12px 0;border-bottom:1px solid var(--ln);color:var(--mut)}.prebar a{margin-left:auto;color:var(--a2);text-decoration:none}
.live{color:var(--a2)}.live i{background:var(--a2)}
.prehero{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:48px;align-items:end;padding:34px 0 30px;border-bottom:1px solid var(--ln)}
.prehero .pl{font-size:12px;color:var(--mut);grid-column:1}
.bigcd{grid-column:1;font-family:Geist!important;font-weight:200;font-size:168px;line-height:.9;letter-spacing:-.04em;font-variant-numeric:tabular-nums;-webkit-text-stroke:0}
.bigcd.urgent{animation:fl 1.2s infinite}
.pmeta{grid-column:2;grid-row:2;padding-bottom:16px}.pmeta b{display:block;font-family:'Noto Sans JP';font-weight:900;font-size:38px;letter-spacing:-.04em;margin:6px 0 8px}.pmeta .mono{font-size:12px;color:var(--mut)}
.g1x{font-family:'Geist Mono';font-size:12px;color:var(--a2);border:1px solid var(--a2);padding:1px 6px}
.final .fo{list-style:none}.fo li{display:grid;grid-template-columns:22px 26px 26px 1fr 90px 80px 96px;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--ln)}
.fo b{font-size:16px}.fo .mk{color:var(--a2);font-size:16px}.fo .c{text-align:right;font-family:Geist;font-size:22px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.fo .c small{display:block;font-size:10.5px;color:var(--mut);font-family:'Geist Mono';letter-spacing:0;font-weight:400}
.fo .e{color:var(--mut)}.fo li.hi .e{color:var(--a2)}
.prebet{margin-top:26px;max-width:420px}.prebet ol{list-style:none;font-size:14px}.prebet li{display:flex;gap:14px;padding:9px 0;border-bottom:1px dashed var(--ln)}.prebet li span{color:var(--mut);width:52px}
/* result */
.kakutei{font-family:'Geist Mono';font-size:11px;border:1px solid var(--a2);color:var(--a2);padding:1px 6px;margin-right:8px}
.ans{padding-bottom:10px}.hits{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--ln)}
.hits li{padding:18px 18px 18px 0;border-right:1px solid var(--ln);display:grid;grid-template-columns:1fr auto;row-gap:6px;padding-left:18px}.hits li:first-child{padding-left:0}.hits li:last-child{border-right:0}
.hits .bt{font-size:12px;color:var(--mut)}.hits b{font-size:22px;font-weight:500;grid-column:1}.hits .py{grid-column:1/3;font-size:11px;color:var(--mut)}
.tube{grid-row:1/3;grid-column:2;align-self:center;font-family:Geist;font-weight:300;font-size:30px;letter-spacing:.04em;color:#2b3938}
.hits li.hit .tube{color:#effffd;animation:ign 1.6s var(--d,0s) both}.hits li.hit .py{color:var(--a2)}.hits li.hit b{color:var(--ink)}.hits li.miss b{color:var(--mut)}
@keyframes ign{0%{color:#2b3938;text-shadow:none}8%{color:#effffd;text-shadow:0 0 8px var(--a2)}12%{color:#2b3938;text-shadow:none}20%{color:#cfe;text-shadow:0 0 6px var(--a2)}24%{color:#2b3938;text-shadow:none}34%,100%{color:#effffd;text-shadow:0 0 2px #fff,0 0 8px var(--a2),0 0 20px var(--a),0 0 40px rgba(var(--ag,10,186,181),.5)}}
.res .mk.on{animation:ign 1.6s 1.4s both;color:#effffd}.res tr.lit td{background:rgba(var(--ag,10,186,181),.05)}
.res .pos{font-size:16px!important;text-align:left}.res .pos.w{color:var(--a2)}
/* horse silk */
.silkill{position:absolute;right:0;top:26px;text-align:center;opacity:.95}.silkill span{display:block;font-size:10.5px;color:var(--mut);margin-top:2px}
.hh .kv2{margin-right:150px}
/* stats seg links */
.seg a{font-size:12px;padding:7px 14px;color:var(--mut);border-right:1px solid #2a3837;text-decoration:none}.seg a:last-child{border:0}.seg a.on{background:var(--ink);color:#060909}.seg a:hover:not(.on){color:var(--ink)}
.mnav a{color:var(--a2);text-decoration:none;margin-left:16px}.mnav a:hover{text-decoration:underline;text-underline-offset:3px}
/* ranking */
.rk .you{font-style:normal;font-size:10.5px;color:#060909;background:var(--a2);padding:0 5px;margin-left:6px}.rk .smpl{font-style:normal;font-size:10.5px;color:#e7c873;border:1px solid rgba(231,200,115,.5);padding:0 4px;margin-left:6px}
.rk tr.me td{background:rgba(var(--ag,10,186,181),.06)}.rk .pos{text-align:left;font-size:15px!important}.rk .pos.w{color:var(--a2)}.rk .pl.up{color:var(--a2)}.rk .pl.dn{color:#ff8fa3}.rk tr.smp b{color:#a9bbb9}
/* memo mobile merge */
.tym{display:none}
@media(max-width:760px){
 .themeb{margin-right:8px;padding:3px 6px}.who{display:none}.hd{gap:8px}
 .tabbar{grid-template-columns:repeat(6,1fr)}.tabbar a{font-size:10.5px}
 .vt-track{top:59px}
 .mt .ty{display:none}.tym{display:inline;color:var(--mut)}.settle input{width:58px}.mt td,.mt th{padding:10px 4px}
 .lede2{flex-direction:column;gap:8px}
 .prebar{flex-wrap:wrap;gap:8px 16px}.prehero{grid-template-columns:1fr;padding:22px 0}.bigcd{font-size:104px}.pmeta{grid-column:1;grid-row:auto;padding:14px 0 0}.pmeta b{font-size:26px}
 .fo li{grid-template-columns:18px 24px 1fr 58px 64px;gap:8px}.fo .silk{display:none}.fo .c{font-size:17px}.fo li .c:nth-of-type(1){display:none}
 .hits{grid-template-columns:1fr 1fr}.hits li{padding:14px 12px!important;border-bottom:1px solid var(--ln)}.hits li:nth-child(2n){border-right:0}.hits b{font-size:18px}.tube{font-size:22px}
 .silkill{position:static;margin:10px 0 0;text-align:left;display:flex;align-items:center;gap:10px}.silkill svg{width:64px;height:64px}.hh .kv2{margin-right:0}
 .res td:nth-child(5),.res th:nth-child(5){display:none}
}
.htitle h1{word-break:keep-all;overflow-wrap:anywhere}.htitle h1.long{font-size:46px}
html[data-theme=day] body{background:#060909}
@media(max-width:760px){.fo li .cp{display:none}.htitle h1.long{font-size:34px}}
.seg{flex:none!important;display:flex}
@media(max-width:760px){.hh{display:flex;flex-direction:column;align-items:stretch}.hh>div:not(.bign):not(.silkill){order:1}.silkill{order:2}.hh .kv2{order:3;margin-top:16px}}
.seg a{flex:1;text-align:center;min-width:56px}

/* ===== v8 plans ===== */
.pbadge{font-size:10.5px;letter-spacing:.08em;padding:3px 8px;margin-right:10px;text-decoration:none;border:1px solid;white-space:nowrap}
.pb-free{color:#a9bbb9;border-color:#3a4d4b}.pb-standard{color:var(--ink);border-color:#7d918f}.pb-premium{color:#060909;background:var(--a2);border-color:var(--a2)}
.pl-standard{color:#c9d6d4}.pl-premium{color:var(--a2)}
.nlk{display:inline-flex;margin-left:4px;opacity:.6}.hd nav a[data-locked]{color:#6c817f}
.dum{display:inline-block;width:38px;height:9px;background:linear-gradient(90deg,#24312f,#1a2423);filter:blur(1.5px);vertical-align:middle;border-radius:1px}
.rt td.pr .dum{width:44px;height:12px}
.lkstrip{display:flex;align-items:center;gap:10px;padding:10px 12px;margin:0 0 2px;border:1px dashed #2f3f3d;font-size:12.5px;color:#a9bbb9}.lkstrip .lkcta{margin-left:auto}
.lki{flex:none;color:var(--a2)}
.lkcta{color:var(--a2);text-decoration:none;font-size:12px;white-space:nowrap}.lkcta:hover{text-decoration:underline;text-underline-offset:3px}
.lkd{display:inline-flex;align-items:center;gap:6px;color:#8aa09d}
.locked{margin-bottom:26px}.lkw{position:relative;min-height:120px;border-bottom:1px solid var(--ln)}
.dshape{display:block;width:100%;height:120px;filter:blur(5px);opacity:.55}.dshape rect{fill:#2a3a39}
.dshape.rows{padding:14px 0}.dshape.rows i{display:block;height:10px;background:#2a3a39;margin:0 0 13px}
.lko{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:0 12px}
.lko p{font-size:12px;color:#a9bbb9;line-height:1.6;max-width:24em}
/* plans */
.planpage .ttl{margin-bottom:24px}
.ptab{width:100%;border-collapse:collapse;font-size:13.5px}
.ptab th,.ptab td{padding:12px 14px;border-bottom:1px solid var(--ln);text-align:center}.ptab tbody th{text-align:left;font-weight:400;color:#c9d6d4}
.ptab thead th{vertical-align:bottom;padding-bottom:18px}.pc b{display:block;font-family:'Noto Sans JP';font-weight:900;font-size:24px;letter-spacing:-.03em;margin:10px 0 4px}
.pn{font-size:10.5px;letter-spacing:.08em;padding:2px 7px;border:1px solid}.price{display:block;font-family:'Geist Mono';font-size:12px;color:var(--mut)}
.now{display:block;margin-top:8px;font-size:10.5px;color:var(--a2)}
.ptab .cur{background:rgba(var(--ag,10,186,181),.05);box-shadow:inset 1px 0 0 rgba(var(--ag,10,186,181),.35),inset -1px 0 0 rgba(var(--ag,10,186,181),.35)}
.ptab thead .cur{box-shadow:inset 1px 0 0 rgba(var(--ag,10,186,181),.35),inset -1px 0 0 rgba(var(--ag,10,186,181),.35),inset 0 2px 0 var(--a2)}
.ok{color:var(--a2);font-size:10px}.ng{color:#3e504e}.ptab td.cur .ok{text-shadow:0 0 8px var(--a)}
.btn.ghost{background:transparent;color:var(--mut);border:1px solid #2a3837;cursor:not-allowed;padding:8px 16px;font-size:12px}
.dim2{font-size:12px;color:var(--a2)}
/* upsell */
.upsell{position:relative;min-height:70vh;display:grid;place-items:center;overflow:hidden}
.ghostpage{position:absolute;inset:30px 0 0;filter:blur(7px);opacity:.45;pointer-events:none}
.ghostpage i{display:block;background:#1f2b2a;margin-bottom:16px}.ghostpage .g1{width:42%;height:46px}.ghostpage .g2{width:100%;height:150px;margin-bottom:28px}.ghostpage .gr{height:22px;width:100%}
.upc{position:relative;text-align:center;max-width:440px;padding:40px 32px;background:rgba(6,9,9,.82);border:1px solid #233130}
.upc .lki{color:var(--a2);filter:drop-shadow(0 0 8px rgba(var(--ag,10,186,181),.6))}
.upc .mono{font-size:11px;letter-spacing:.08em;margin:14px 0 6px}.upc h1{font-family:'Noto Sans JP';font-weight:900;font-size:30px;letter-spacing:-.03em;margin-bottom:12px}
.upc p:not(.mono){font-size:13.5px;color:#a9bbb9;line-height:1.8;margin-bottom:22px}.upc b{color:var(--ink)}
.upc .btn{display:inline-block;text-decoration:none}.back2{display:block;margin-top:16px;font-size:12px;color:var(--mut);text-decoration:none}
@media(max-width:760px){.pbadge{margin-right:6px;padding:2px 6px}.lkstrip{flex-wrap:wrap}.lkstrip .lkcta{margin-left:26px}
 .ptab th,.ptab td{padding:10px 4px;font-size:12px}.pc b{font-size:15px}.ptab tbody th{font-size:12px}.price{font-size:10px}.pn{font-size:9px;padding:1px 4px}
 .upc{margin:0 8px;padding:30px 20px}}
.hd nav{gap:20px!important}.hd nav a{white-space:nowrap}
@media(max-width:1320px){.hd nav a>svg:first-child{display:none}.hd nav{gap:16px!important}}
@media(max-width:760px){.ptab{table-layout:fixed}.ptab thead th:first-child,.ptab tbody th{width:34%}.ptab tbody th{white-space:normal;line-height:1.4}.pc b{font-size:12.5px;letter-spacing:-.04em;margin:6px 0 2px}.planpage .tw{overflow:visible}.now{font-size:9.5px}}

/* ===== v9 ===== */
.tabbar a{position:relative}.tabbar a[data-locked]{color:#55686a}.tlk{position:absolute;top:6px;left:calc(50% + 7px);display:flex;color:#8aa09d}
@media(max-width:760px){.tabbar{grid-template-columns:repeat(6,1fr)}}
/* value */
.vl{list-style:none}.vl li{display:grid;grid-template-columns:24px 20px 1fr auto;grid-template-rows:auto auto;column-gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid var(--ln)}
.vl li b{font-size:13.5px}.vl .pp{grid-column:4;font-size:11px;color:var(--mut)}
.vl .vo,.vl .arr,.vl .vg{grid-row:2}.vl li .vo:first-of-type{grid-column:3}
.vl li{grid-template-columns:24px 20px auto 1fr auto}.vl .pp{grid-column:5}
.vl .vo{font-family:Geist;font-size:15px;font-variant-numeric:tabular-nums;color:#8aa09d;margin-top:4px}.vl .vo small{font-family:'Geist Mono';font-size:10px;color:var(--mut);margin-right:5px}
.vl .vo.m{color:var(--ink)}.vl .arr{color:var(--mut);font-size:12px;text-align:center}.vl .vg{color:var(--a2);font-size:14px;text-align:right}
.vl li>.vo:nth-of-type(1){grid-column:1/4}.vl li>.arr{grid-column:4;justify-self:start}.vl li>.vo.m{grid-column:4;justify-self:center}.vl li>.vg{grid-column:5}
.value .fine{font-size:11px;color:var(--mut);margin-top:8px;line-height:1.6}
.bcta{display:flex;align-items:center;gap:10px;padding:14px;margin:0 0 26px;border:1px solid rgba(var(--ag,10,186,181),.4);color:var(--ink);text-decoration:none;font-size:13.5px}.bcta .mono{font-size:10px;color:#060909;background:var(--a2);padding:1px 5px}.bcta:hover{background:rgba(var(--ag,10,186,181),.08)}
.bcta.lkd2{border:1px dashed #2f3f3d;color:#a9bbb9;font-size:12.5px}
/* pace */
.pacew{margin-top:30px}.pcrow{display:flex;gap:22px;align-items:center;padding:14px 0}.pcrow p{font-size:13px;color:#a9bbb9;line-height:1.7}.pcrow b{color:var(--ink);font-weight:500}
.pcb{display:grid;grid-template-columns:auto auto;column-gap:10px;align-items:center;flex:none;padding-right:22px;border-right:1px solid var(--ln)}.pcb .mono{grid-column:1/3;font-size:10.5px;color:var(--mut)}
.pcl{font-family:Geist;font-weight:300;font-size:40px;line-height:1;color:var(--a2)!important}
.pace{width:100%;height:auto;display:block}.pace .ln{font-size:12px;fill:#a9bbb9;font-family:'Noto Sans JP'}.pace .lane{stroke:#1d2a29;stroke-dasharray:3 4}.pace .ax{font-size:10px;fill:#6c817f;font-family:'Geist Mono'}
.pace .goal{stroke:var(--a2);opacity:.5}.pace .dir{stroke:#6c817f;fill:none}.pace .hd text{font-size:10px;font-family:Geist;font-weight:600}.pace .hd.top circle{stroke:var(--a2);stroke-width:2}
/* builder */
.bgrid{display:grid;grid-template-columns:300px 1fr;gap:48px}.bform fieldset{border:0;padding:0;margin:0 0 16px}.bform legend{font-size:12px;color:var(--mut);margin-bottom:8px}
.bform select{width:100%;background:transparent;color:var(--ink);border:0;border-bottom:1px solid #2a3837;padding:8px 0;font-size:13px}.bform select option{background:#0b1111}
.chk,.rad{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:13.5px;cursor:pointer}.chk{display:inline-flex;margin-right:16px}.rad span small{display:block;font-size:11px;color:var(--mut)}
.chk input,.rad input{accent-color:#81D8D0;width:15px;height:15px}
.bt .stake{color:var(--ink);font-size:15px!important;font-weight:500}.bout .kpis{margin:18px 0}.bsave{margin-bottom:22px}
.how{border-top:1px solid var(--ln);padding-top:12px}.how summary{cursor:pointer;font-size:13px;font-weight:700;margin-bottom:8px}.how ol{padding-left:18px;font-size:12.5px;color:#a9bbb9;line-height:1.85}.how b{color:var(--ink)}
.empty2{padding:30px 0;color:var(--mut);font-size:13px}
/* picks */
.pk{list-style:none;border-top:1px solid var(--ln)}.pk li{display:grid;grid-template-columns:64px 1.3fr 1.3fr 150px 170px;gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid var(--ln)}
.pk li,.pk li.v-tokyo,.pk li.v-kyoto,.pk li.v-niigata{--vc:var(--a2)}
.pkn{font-family:Geist!important;font-weight:200;font-size:44px;color:var(--vc);line-height:1}.pk li:first-child .pkn{text-shadow:0 0 14px var(--vc)}
.pkr .mono{display:block;font-size:11px;color:var(--mut);margin-bottom:4px}.pkr a{color:var(--ink);text-decoration:none;font-size:20px;font-family:'Noto Sans JP';font-weight:900;letter-spacing:-.03em}.pkr a:hover{color:var(--vc)}
.pkt{display:grid;grid-template-columns:16px 20px 1fr;column-gap:8px;align-items:center}.pkt>.mono:first-child{color:var(--vc)}.pkt b{font-size:14px}.pkt>.mono:last-child{grid-column:3;font-size:11px;color:var(--mut)}
.pkm{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--mut)}.pkm b{color:var(--ink)}
.pkc{display:grid;grid-template-columns:auto 1fr;align-items:end;column-gap:10px}.pkc .mono{font-size:10.5px;color:var(--mut);grid-column:1/3}.pkc b{font-family:Geist;font-weight:300;font-size:34px;line-height:1}
.pkc i{display:block;height:3px;background:#1d2a29;position:relative;align-self:center}.pkc i:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--w);background:var(--vc)}
/* surge */
.su .chg.hot{color:#ff8fa3;font-weight:600}.su tr.over{background:rgba(255,143,163,.06)}.su tr.over .st{color:#ff8fa3}
.alerts .ttl,.surge .ttl{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}
/* record */
.record .kpis{margin-bottom:30px}.rec text{font-size:10px;fill:#6c817f;font-family:'Geist Mono'}
.rcl{list-style:none}.rcl li{display:grid;grid-template-columns:70px 1fr auto;gap:10px;padding:9px 0;border-bottom:1px solid var(--ln);font-size:13px}.rcl .mono{font-size:12px;color:var(--mut)}.rcl .rp.w{color:var(--a2)}.rcl .rp.p{color:var(--ink)}
@media(max-width:760px){
 .bgrid{grid-template-columns:1fr;gap:24px}.bt td:nth-child(6),.bt th:nth-child(6){display:none}
 .pk li{grid-template-columns:44px 1fr;gap:6px 12px;padding:16px 0}.pkn{font-size:30px;grid-row:1/4}.pkm{flex-direction:row;gap:14px}.pkc{grid-column:2}.pkc b{font-size:24px}
 .pcrow{flex-direction:column;align-items:flex-start;gap:8px}.pcb{border:0;padding:0}
 .alerts .ttl,.surge .ttl{flex-direction:column;align-items:flex-start}
 .su td:nth-child(4),.su th:nth-child(4){display:none}
}
.pcards{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ln);border-bottom:1px solid var(--ln);margin-bottom:34px}
.pcard{padding:24px 24px 26px;border-right:1px solid var(--ln);display:flex;flex-direction:column;align-items:flex-start;gap:8px}.pcard:last-child{border-right:0}
.pcard h2{font-family:'Noto Sans JP';font-weight:900;font-size:26px;letter-spacing:-.03em;margin-top:6px}.pitch{font-size:15px;font-weight:700;color:var(--ink)}.pd{font-size:12.5px;color:#a9bbb9;line-height:1.85;flex:1}
.pcard .price{font-size:13px;color:var(--mut);margin:6px 0}.pcard.cur{background:rgba(var(--ag,10,186,181),.05);box-shadow:inset 0 2px 0 var(--a2)}.pcard.cur .now{margin:0}
.pcard:last-child .pitch{color:var(--a2)}
.ptab thead th{padding:10px 14px}.ptab thead th:first-child{text-align:left;font-size:12px;color:var(--mut);font-weight:400}
@media(max-width:760px){.pcards{grid-template-columns:1fr}.pcard{border-right:0;border-bottom:1px solid var(--ln);padding:20px 0}.pcard:last-child{border-bottom:0}.pcard.cur{padding:20px 12px}}
.vl li{display:block!important;padding:11px 0}.v1{display:flex;align-items:center;gap:8px}.v1 .pp{margin-left:auto}.v2{display:flex;align-items:baseline;gap:8px;margin:6px 0 0 32px}.v2 .vg{margin-left:auto}
.vl .vo,.vl .arr,.vl .vg{grid-row:auto;grid-column:auto!important;justify-self:auto!important}
.su td.chg,.su .chg.hot{font-size:13px!important;font-family:'Geist Mono'}.seg a{white-space:nowrap}
@media(max-width:1400px){.hd .brand>span{display:none}.hd nav{gap:14px!important}.who{font-size:11px}}
.pcard,.pcard p{text-align:left}
@media(max-width:760px){.bform fieldset:last-of-type{display:flex;gap:16px}.rad{align-items:flex-start}.rad span small{font-size:10px}}
@media(max-width:760px){.pcard .pd{flex:none;display:block}
 .su th,.su td{display:table-cell!important}.su th:nth-child(2),.su td:nth-child(2),.su th:nth-child(4),.su td:nth-child(4),.su th:nth-child(7),.su td:nth-child(7){display:none!important}}

/* ===== v10 UMAGINE COIN ===== */
.umc,.mc,.bi,.bg{color:var(--a2);flex:none}
.chead{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.cbrand{display:flex;align-items:center;gap:16px}.cbrand .umc{filter:drop-shadow(0 0 6px rgba(var(--ag,10,186,181),.45))}
.cnav a{min-width:76px}
.cnote{font-size:11px;color:#8aa09d;margin-top:34px;padding-top:12px;border-top:1px solid var(--ln)}.cnote a{color:var(--a2)}
.cflash{padding:10px 12px;border:1px solid rgba(var(--ag,10,186,181),.4);color:var(--a2);font-size:12.5px;margin:-6px 0 20px}.cflash.err{border-color:rgba(255,143,163,.5);color:#ff8fa3}
.wal{display:grid;grid-template-columns:auto 1fr auto;gap:40px;align-items:end;padding:6px 0 26px;border-bottom:1px solid var(--ln);margin-bottom:28px}
.bal span{display:block;font-size:11px;color:var(--mut)}.bal b{font-family:Geist;font-weight:200;font-size:84px;line-height:.95;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.bal small{font-size:13px;color:var(--a2);margin-left:8px}
.bal b.pulse{animation:balp 1.2s .4s both}@keyframes balp{0%{color:var(--ink)}30%{color:#effffd;text-shadow:0 0 18px var(--a2)}100%{color:var(--ink);text-shadow:none}}
.wk{display:grid;grid-template-columns:repeat(4,auto);gap:0 28px;justify-content:start}.wk dt{font-size:10.5px;color:var(--mut)}.wk dd{font-size:18px;margin-top:4px}.wk .up{color:var(--a2)}.wk .dn{color:#ff8fa3}
.clk{display:grid;grid-template-columns:auto auto;gap:6px 12px;align-items:center;justify-items:start;max-width:330px}.clk>span{grid-column:1/3;font-size:10.5px;color:var(--mut)}.clk b{font-size:20px;font-weight:500}.clk p{grid-column:1/3;font-size:10.5px;color:var(--mut);line-height:1.6}
.btn.ghost2{background:transparent;color:var(--a2);border:1px solid rgba(var(--ag,10,186,181),.5);padding:8px 14px;font-size:12.5px;cursor:pointer}.btn.ghost2:hover{background:rgba(var(--ag,10,186,181),.08)}
.cgrid{display:grid;grid-template-columns:1fr 320px;gap:48px}
.rsel select,.betf select{width:100%;background:transparent;color:var(--ink);border:0;border-bottom:1px solid #2a3837;padding:8px 0;font-size:13px}.betf select option,.rsel select option{background:#0b1111}
.crun{margin:8px 0 18px}.crun td{padding:7px 8px!important}
.betf{display:grid;gap:14px}.tys{border:0;padding:0;margin:0}.tys legend{font-size:12px;color:var(--mut);margin-bottom:6px}
.sels{display:grid;grid-template-columns:1fr 1fr;gap:16px}.sels label.off{opacity:.35}.sels small{color:var(--mut);font-size:10.5px}
.chips{display:flex;gap:8px}.chips button{all:unset;cursor:pointer;font-size:12px;border:1px solid #2a3837;padding:4px 12px;color:#a9bbb9}.chips button:hover{border-color:var(--a2);color:var(--a2)}
.betf .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px}.betf .bi{color:#060909}.fine2{font-size:10.5px;color:var(--mut)}
.cb{list-style:none}.cb li{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--ln);font-size:12.5px}.cb i{font-style:normal;color:#a9bbb9}.cb li.hit i{color:var(--a2)}.cb li.miss i{color:#7a8b89}.cb .empty{color:var(--mut)}
.badges{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:12px 8px}.badges li{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:10.5px;color:#55686a;text-align:center}
.badges li .bg{color:#2a3a39}.badges li.got{color:var(--ink)}.badges li.got .bg{color:var(--a2);filter:drop-shadow(0 0 5px rgba(var(--ag,10,186,181),.6))}
/* payout */
.payout{position:relative;overflow:hidden;border:1px solid var(--ln);padding:22px 24px;margin:0 0 26px;display:grid;grid-template-columns:auto 1fr;column-gap:30px;align-items:center}
.payout.win{border-color:rgba(var(--ag,10,186,181),.55);background:radial-gradient(ellipse at 20% 50%,rgba(var(--ag,10,186,181),.10),transparent 60%)}
.pyl{font-size:11px;letter-spacing:.16em;color:var(--mut);grid-column:1}.pyv{grid-column:1;font-family:Geist;font-weight:300;font-size:64px;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.pyv small{font-size:14px;margin-left:8px;font-family:'Geist Mono'}
.payout:not(.win) .pyv{color:#7a8b89}
.pyb{grid-column:2;grid-row:1/3;list-style:none;font-size:12.5px}.pyb li{display:grid;grid-template-columns:40px 1fr auto;gap:8px;padding:6px 0;border-bottom:1px dashed var(--ln)}.pyb li span{color:#55686a}.pyb li.hit span,.pyb li.hit i{color:var(--a2)}.pyb i{font-style:normal}
.nbadge{grid-column:1/3;margin-top:12px;font-size:11.5px;color:#e7c873}
.coins{position:absolute;inset:0;pointer-events:none}.coins i{position:absolute;left:var(--x);top:-40px;animation:cdrop 1.6s var(--d) cubic-bezier(.3,.7,.4,1) both}
.coins .mc{filter:drop-shadow(0 0 6px rgba(var(--ag,10,186,181),.8));animation:cflip .5s linear infinite}
@keyframes cdrop{0%{transform:translateY(0) rotate(var(--r));opacity:0}10%{opacity:1}80%{opacity:1}100%{transform:translateY(240px) rotate(calc(var(--r) + 200deg));opacity:0}}
@keyframes cflip{0%,100%{transform:scaleX(1)}50%{transform:scaleX(.15)}}
@media(prefers-reduced-motion:reduce){.coins{display:none}.bal b.pulse{animation:none}}
/* leagues */
.lgs{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ln);border-bottom:1px solid var(--ln);margin-bottom:28px}
.lgc{position:relative;padding:18px 20px;border-right:1px solid var(--ln);text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:4px}.lgc:last-child{border-right:0}.lgc span{font-size:10px;color:var(--mut);letter-spacing:.08em}.lgc b{font-family:'Noto Sans JP';font-weight:900;font-size:22px;letter-spacing:-.03em}.lgc small{font-size:11.5px;color:#a9bbb9}
.lgc i{position:absolute;top:16px;right:18px;font-style:normal;font-size:10px;color:#060909;background:var(--a2);padding:0 5px}
.lgc.on{background:rgba(var(--ag,10,186,181),.05);box-shadow:inset 0 2px 0 var(--a2)}.lg-GRAND b{color:var(--a2)}.lg-GRAND.on b{text-shadow:0 0 12px rgba(var(--ag,10,186,181),.6)}
.coin .ph .seg{flex:none}
/* rules */
.legal{border:1px solid rgba(231,200,115,.45);padding:20px 24px;margin-bottom:30px}.legal h2{font-size:17px;margin-bottom:10px;color:#e7c873}.legal ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:6px 30px;font-size:13px;color:#c9d6d4}.legal li:before{content:"×";color:#e7c873;margin-right:8px;font-family:'Geist Mono'}
.rgrid{display:grid;grid-template-columns:1fr 1fr;gap:26px 48px}.rgrid h3{font-size:14px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--ln)}.rgrid p{font-size:13px;color:#a9bbb9;line-height:1.9}
.ctx .up{color:var(--a2)}.ctx .dn{color:#ff8fa3}.ctx tr.k-grant td,.ctx tr.k-rescue td{background:rgba(var(--ag,10,186,181),.04)}
.umcb{float:right;margin-left:20px;color:var(--a2);text-decoration:none;font-size:12px;border:1px solid rgba(var(--ag,10,186,181),.45);padding:5px 10px;white-space:nowrap}.umcb:hover{background:rgba(var(--ag,10,186,181),.08)}
.pv{font-size:12px;color:var(--ink)}td.cur .pv{color:var(--a2)}
@media(max-width:760px){
 .chead{flex-direction:column;align-items:flex-start}.cnav a{min-width:0}
 .wal{grid-template-columns:1fr;gap:18px}.bal b{font-size:60px}.wk{grid-template-columns:repeat(2,auto);gap:10px 24px}
 .cgrid{grid-template-columns:1fr;gap:26px}.payout{grid-template-columns:1fr;padding:18px}.pyb{grid-column:1;grid-row:auto;margin-top:12px}.pyv{font-size:48px}
 .lgs{grid-template-columns:1fr}.lgc{border-right:0;border-bottom:1px solid var(--ln)}.legal ul,.rgrid{grid-template-columns:1fr}
 .umcb{float:none;display:inline-block;margin:0 0 10px}
}
.cnav{display:grid!important;grid-template-columns:repeat(5,1fr)}.cnav a{min-width:64px;padding:7px 10px!important;border-right:1px solid #2a3837}.cnav a:last-child{border-right:0}
.betf .bi circle:first-child{fill:transparent}.betf .bi g{display:none}
@media(max-width:760px){.cnav{width:100%}}
.cnav a{text-align:center;justify-content:center}

/* ===== v11 UMC shop ===== */
.r-common{--rc:#a9bbb9}.r-rare{--rc:#81D8D0}.r-epic{--rc:#c48bff}.r-legend{--rc:#e7c873}
.rar{font-size:10px;letter-spacing:.06em;color:var(--rc);border:1px solid color-mix(in srgb,var(--rc) 55%,transparent);padding:0 5px}
.lim{font-size:10px;color:#ff8fa3;margin-left:6px}
.sbal{text-align:right}.sbal span{display:block;font-size:10.5px;color:var(--mut)}.sbal b{font-family:Geist;font-weight:200;font-size:40px;letter-spacing:-.03em}.sbal small{color:var(--a2);margin-left:6px;font-size:11px}
.stabs{display:flex;flex-wrap:wrap;gap:0;border-bottom:1px solid var(--ln);margin-bottom:22px}.stabs a{font-size:12px;padding:10px 14px;color:var(--mut);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px}.stabs a.on{color:var(--ink);border-color:var(--a2)}.stabs a:hover{color:var(--ink)}
.limnote{font-size:11.5px;color:#ff8fa3;margin:-6px 0 18px}
.sgrid{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--ln);border:1px solid var(--ln)}
.scard{background:#070b0b}.scard a{display:flex;flex-direction:column;height:100%;text-decoration:none;color:var(--ink)}.scard:hover{background:#0a1111}
.scard.r-legend .spv{box-shadow:inset 0 -1px 0 rgba(231,200,115,.4)}.scard.r-epic .spv{box-shadow:inset 0 -1px 0 rgba(196,139,255,.35)}
.scard.off{opacity:.55}
.spv{height:132px;display:grid;place-items:center;position:relative;overflow:hidden;border-bottom:1px solid var(--ln)}
.sinfo{padding:12px 14px 4px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.sinfo b{font-size:13.5px;width:100%}
.sfoot{padding:8px 14px 14px;display:flex;justify-content:space-between;align-items:center;margin-top:auto}
.pr{display:inline-flex;align-items:center;gap:5px;font-size:13px}.bi2{color:var(--a2)}
.st-on{font-size:10.5px;color:#060909;background:var(--a2);padding:1px 6px}.st-own{font-size:10.5px;color:var(--a2)}.st-off{font-size:10.5px;color:#ff8fa3}
/* previews */
.pv-theme{display:flex;flex-direction:column;align-items:center;gap:6px}.pv-theme b{font-family:Geist;font-weight:300;font-size:44px;color:#f2fffd;text-shadow:0 0 2px #fff,0 0 8px var(--pa2),0 0 20px var(--pa)}.pv-theme svg{width:110px;filter:drop-shadow(0 0 4px var(--pa2))}
.pv-silk{display:flex;align-items:end;gap:10px}
.pv-title,.pv-plate{display:flex;align-items:center;gap:8px;font-size:15px}
.ttl-chip{display:inline-block;font-size:10.5px;font-weight:700;color:#e7c873;border:1px solid rgba(231,200,115,.45);padding:0 6px;margin-left:6px;line-height:1.6;white-space:nowrap;vertical-align:1px}
.who .ttl-chip{font-size:9.5px;margin:0 2px 0 6px}
.plate{display:inline-block;font-weight:700;padding:1px 8px;border:1px solid;font-family:'Noto Sans JP'}
.pv-fx{position:absolute;inset:0;display:grid;place-items:center}.pv-fx>span{font-family:Geist;font-size:26px;font-weight:300;color:#effffd;text-shadow:0 0 10px var(--a2);position:relative;z-index:2}
.pv-fx .fx i,.pv-fx .fx span{animation-iteration-count:infinite!important;animation-duration:2.4s!important}
.pv-sign .neon{font-size:30px}
.pv-track{display:flex;flex-direction:column;align-items:center;gap:4px}.pv-track svg{width:140px}.pv-track span{font-size:10.5px;color:var(--mut)}
.pv-wal{width:78%;padding:12px 14px;border:1px solid var(--ln);display:flex;align-items:baseline;gap:8px}.pv-wal span{font-size:9.5px;color:var(--mut);position:absolute;margin-top:-14px}.pv-wal b{font-family:Geist;font-weight:200;font-size:30px}.pv-wal small{font-size:10px;color:var(--a2)}
.pv-tk{transform:scale(.78)}
/* wallet skins */
.wal.w-carbon,.pv-wal.w-carbon{background:repeating-linear-gradient(45deg,#0b0f10 0 4px,#101617 4px 8px);border:1px solid #233130;padding:22px 24px}
.wal.w-gold,.pv-wal.w-gold{background:linear-gradient(135deg,#2a2210,#0d0b06 60%);border:1px solid rgba(231,200,115,.55);padding:22px 24px}.wal.w-gold .bal b,.pv-wal.w-gold b{color:#f2d27a;text-shadow:0 0 14px rgba(231,200,115,.45)}.wal.w-gold .bal small,.pv-wal.w-gold small{color:#e7c873}
.wal.w-paper,.pv-wal.w-paper{background:#e9e4d6;color:#2a2a24;border:0;padding:22px 24px}.wal.w-paper *{color:#2a2a24!important}.wal.w-paper .bal small,.pv-wal.w-paper small{color:#c8102e!important}.wal.w-paper .btn.ghost2{border-color:#2a2a24}
.wal.w-paper{background-image:repeating-linear-gradient(0deg,transparent 0 23px,rgba(200,16,46,.12) 23px 24px)}
/* tickets */
.tks{display:grid;gap:10px}.okt{display:flex;align-items:center;gap:20px;margin:-6px 0 20px}.okt .cflash{margin:0}
.ticket{width:290px;border:1px solid #2a3837;background:#0a1111;font-size:12px;position:relative}
.ticket:before,.ticket:after{content:"";position:absolute;top:50%;width:12px;height:12px;border-radius:50%;background:#060909;border:1px solid #2a3837;transform:translateY(-50%)}.ticket:before{left:-7px}.ticket:after{right:-7px}
.tkh{display:flex;justify-content:space-between;padding:6px 12px;font-size:9.5px;color:var(--mut);border-bottom:1px dashed #2a3837}
.tkb{padding:10px 12px;display:flex;flex-direction:column;gap:3px}.tkb b{font-size:14px}.tkb span{font-size:11px;color:#a9bbb9}
.tkf{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;font-size:9.5px;color:var(--mut);border-top:1px dashed #2a3837}
.bc{width:80px;height:14px;background:repeating-linear-gradient(90deg,currentColor 0 1px,transparent 1px 3px,currentColor 3px 5px,transparent 5px 6px);opacity:.6}
.ticket.tk-retro{background:#efe6cf;border-color:#c9b98f;color:#3a3326}.ticket.tk-retro *{color:#3a3326!important}.ticket.tk-retro .tkh{background:#2e6b3f;border-color:#c9b98f}.ticket.tk-retro .tkh span{color:#efe6cf!important}
.ticket.tk-retro .tkb b{font-family:'Noto Sans JP';font-weight:900}.ticket.tk-retro .tkh,.ticket.tk-retro .tkf{border-style:dashed;border-color:#b5a47a}.ticket.tk-retro:before,.ticket.tk-retro:after{border-color:#c9b98f}
.ticket.tk-gold{background:linear-gradient(135deg,#3a2e12,#14100a);border-color:rgba(231,200,115,.7);box-shadow:0 0 18px rgba(231,200,115,.18)}.ticket.tk-gold *{color:#f2d27a!important}.ticket.tk-gold .tkh,.ticket.tk-gold .tkf{border-color:rgba(231,200,115,.4)}
/* effects */
.fx{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.fx-drop i{position:absolute;left:var(--x);top:-40px;animation:cdrop 1.6s var(--d) cubic-bezier(.3,.7,.4,1) both}
.fx-hs i{color:#e7c873;filter:drop-shadow(0 0 5px rgba(231,200,115,.7))}
.fx-cf i{width:8px;height:12px;background:var(--c)}
.fx-fw span{position:absolute;width:0;height:0}.fx-fw i{position:absolute;width:2px;height:16px;background:var(--a2);box-shadow:0 0 6px var(--a2);transform-origin:50% 0;transform:rotate(var(--a)) translateY(0) scaleY(.2);opacity:0;animation:fw 1.3s var(--d,0s) ease-out both}
.fx-fw span:nth-child(2n) i{background:#e7c873;box-shadow:0 0 6px #e7c873}
@keyframes fw{0%{opacity:1;transform:rotate(var(--a)) translateY(0) scaleY(.2)}60%{opacity:1}100%{opacity:0;transform:rotate(var(--a)) translateY(46px) scaleY(1)}}
.fx-photo b{position:absolute;inset:0;background:#fff;animation:pflash 1.1s ease-out both}.fx-photo .pl{position:absolute;top:0;bottom:0;left:62%;width:2px;background:#ff8fa3;box-shadow:0 0 8px #ff8fa3;animation:pline 1.4s .2s both}
.fx-photo em{position:absolute;right:14px;bottom:10px;font-style:normal;font-size:11px;letter-spacing:.12em;color:#ff8fa3;animation:pline 1.4s .4s both}
@keyframes pflash{0%{opacity:0}8%{opacity:.9}100%{opacity:0}}@keyframes pline{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.fx{display:none}}
/* item page */
.igrid{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;margin-top:18px}
.ipv{position:relative;min-height:340px;display:grid;place-items:center;border:1px solid var(--ln);background:#070b0b;overflow:hidden}.ipv.r-legend{border-color:rgba(231,200,115,.45)}.ipv.r-epic{border-color:rgba(196,139,255,.4)}
.ipv .pv-theme b{font-size:110px}.ipv .pv-theme svg{width:260px}.ipv .pv-silk svg:first-child{width:150px;height:150px}.ipv .pv-title,.ipv .pv-plate{font-size:26px}.ipv .plate{padding:4px 16px}.ipv .ttl-chip{font-size:14px}
.ipv .pv-sign .neon{font-size:72px}.ipv .pv-track svg{width:320px}.ipv .pv-wal{width:70%}.ipv .pv-wal b{font-size:56px}.ipv .pv-tk{transform:scale(1.2)}.ipv .pv-fx>span{font-size:60px}
.ipv .pv-fx .fx i,.ipv .pv-fx .fx span{animation-iteration-count:1!important;animation-duration:1.6s!important}
.ipv .replay{position:absolute;bottom:14px;right:14px;z-index:3}
.idet h1{font-family:'Noto Sans JP';font-weight:900;font-size:34px;letter-spacing:-.03em;margin:10px 0 4px}.ican{font-size:12px;color:var(--mut)}.idesc{font-size:13.5px;color:#a9bbb9;line-height:1.85;margin:18px 0 22px}
.iact{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:14px}.iact .btn[disabled]{opacity:.4;cursor:not-allowed}
/* silk editor */
.segrid{display:grid;grid-template-columns:300px 1fr;gap:48px}.sebig{border:1px solid var(--ln);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:300px}.sebig span{font-size:10.5px;color:var(--mut)}
.sef fieldset{border:0;padding:0;margin:0 0 18px}.sef legend{font-size:12px;color:var(--mut);margin-bottom:8px}
.pats{display:flex;flex-wrap:wrap;gap:8px}.pats label,.swc label{cursor:pointer}.pats input,.swc input{position:absolute;opacity:0}
.pats span{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 8px;border:1px solid #2a3837;font-size:10.5px;color:#a9bbb9}.pats input:checked+span{border-color:var(--a2);color:var(--ink);box-shadow:0 0 0 1px var(--a2)}
.swc{display:flex;flex-wrap:wrap;gap:8px}.swc span{display:block;width:28px;height:28px;border:1px solid #2a3837}.swc input:checked+span{outline:2px solid var(--a2);outline-offset:2px}.pats input:focus-visible+span,.swc input:focus-visible+span{outline:2px solid #fff}
/* leaderboard name cell */
.nmc{display:inline-flex;align-items:center;gap:8px}.nosilk{display:inline-block;width:22px;height:22px;border:1px dashed #2a3837}
.rk .plate{padding:0 7px}
@media(max-width:760px){.sgrid{grid-template-columns:1fr 1fr}.spv{height:110px}.igrid,.segrid{grid-template-columns:1fr;gap:22px}.ipv{min-height:240px}.ipv .pv-theme b{font-size:72px}.ipv .pv-sign .neon{font-size:44px}.sebig{height:220px}
 .stabs{overflow-x:auto;flex-wrap:nowrap}.stabs a{white-space:nowrap;padding:9px 11px}.okt{flex-direction:column;align-items:flex-start}.ticket{width:100%;max-width:300px}.sbal b{font-size:30px}.rk .ttl-chip{display:none}}
.sgrid{background:none;gap:0;border:0;border-top:1px solid var(--ln);border-left:1px solid var(--ln)}.scard{border-right:1px solid var(--ln);border-bottom:1px solid var(--ln)}
body.th-magenta .dn,body.th-magenta .pl.dn,body.th-crimson .dn,body.th-crimson .pl.dn{color:#8fa3a1}
.pats label,.swc label{position:relative;display:block}.pats input,.swc input{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;min-width:0!important;padding:0!important;margin:0!important;border:0!important;left:0;top:0;pointer-events:none}
.who{white-space:nowrap}@media(max-width:1180px){.who .ttl-chip{display:none}}
.sitem .iact .btn{padding:13px 26px;min-width:240px;justify-content:center}.ipv{position:relative}.ipv .replay{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);width:auto!important;min-width:0;padding:6px 16px;font-size:12px;z-index:3}
.sitem .iact .btn,.ipv .replay{display:inline-flex;align-items:center;justify-content:center;height:auto;line-height:1.2}.ipv .replay{width:auto!important;white-space:nowrap}

/* v12 — ticket editor + share dialog */
.cnav{grid-template-columns:repeat(6,1fr)!important}
.tkgrid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:36px;align-items:start;margin-top:8px}
.tkpvw{position:sticky;top:76px}
.tkbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px;flex-wrap:wrap}
.tkbar .seg button.on,.shsz button.on{background:var(--ink);color:#060909}
.tkbetl select{all:unset;box-sizing:border-box;border:1px solid #2a3837;padding:7px 30px 7px 10px;font-size:12px;color:var(--ink);max-width:300px;background:linear-gradient(45deg,transparent 50%,var(--mut) 50%) right 14px center/5px 5px no-repeat,linear-gradient(-45deg,transparent 50%,var(--mut) 50%) right 9px center/5px 5px no-repeat;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tkfig{margin:0;position:relative;border:1px solid #1d2a29;background:#040707;display:grid;place-items:center;overflow:hidden}
.tkfig img{display:block;width:100%;height:auto;transition:opacity .25s}
.tkfig[data-size=story]{background:#040707;padding:14px 0}.tkfig[data-size=story] img{width:auto;max-width:100%;height:min(70vh,640px)}
.tkfig .tkld{position:absolute;right:10px;top:8px;font-size:10px;letter-spacing:.14em;color:var(--a2);opacity:0;transition:opacity .2s}
.tkfig.ld img{opacity:.55}.tkfig.ld .tkld{opacity:1}
.tkpvw .fine2{margin:8px 0 0}.tkpvw .cflash{margin:12px 0 0}
.tkacts{margin-top:14px}.tkacts .btn{margin-top:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;line-height:1;font-size:15px}
.tkacts .btn[disabled]{opacity:.35;cursor:not-allowed}
.tkform fieldset{border:0;padding:0;margin:0 0 20px}.tkform legend{font-size:12px;color:var(--mut);margin-bottom:9px;display:flex;gap:10px;align-items:baseline;width:100%}
.tkform legend a{margin-left:auto;font-size:11px;color:var(--a2);text-decoration:none}.tkform legend small{font-size:10px;color:#6f8583}
.topts{display:flex;flex-wrap:wrap;gap:8px}
.topt{position:relative;display:block;cursor:pointer}
.topt input{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;margin:0!important;padding:0!important;border:0!important;pointer-events:none}
.topt>span{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:70px;padding:7px 8px 6px;border:1px solid #2a3837;font-size:10.5px;color:#a9bbb9;position:relative;transition:border-color .15s,background .15s}
.topt:hover>span{border-color:#3d5250}
.topt input:checked+span{border-color:var(--a2);color:var(--ink);box-shadow:0 0 0 1px var(--a2),0 0 14px rgba(var(--ag,10,186,181),.18)}
.topt input:focus-visible+span{outline:2px solid #fff;outline-offset:2px}
.topt small{font-size:10.5px;white-space:nowrap}
.topt em{position:absolute;top:-1px;right:-1px;font-style:normal;font-size:9px;line-height:1;padding:3px 4px;background:#2a0f1f;color:#ffb3d6;display:flex;gap:3px;align-items:center}
.topt.lk>span>svg,.topt.lk .tsw,.topt.lk .tfs,.topt.lk .tsk{opacity:.55}
.tsw{display:block;width:40px;height:28px;border:1px solid rgba(255,255,255,.12);position:relative}.tsw i{position:absolute;left:6px;right:6px;bottom:5px;height:3px}
.tsk{display:block;width:54px;height:32px;border:1px solid rgba(255,255,255,.12);position:relative;overflow:hidden}.tsk b{position:absolute;left:0;right:0;top:0;height:8px}
.tfs{display:block;height:28px;line-height:28px;font-size:16px;color:var(--ink);font-weight:700}.tfs.mute{color:var(--mut)}
.tfs.f-gothic{font-family:'Noto Sans JP',sans-serif;font-weight:900}.tfs.f-mono{font-family:'Geist Mono',monospace;font-weight:500}.tfs.f-mincho{font-family:'Noto Serif JP',serif}.tfs.f-dot{font-family:'DotGothic16',sans-serif;font-weight:400}.tfs.f-neon{font-family:'Monoton',sans-serif;font-weight:400;font-size:15px;color:var(--a2)}
.tfs-layout .topt svg{color:var(--a2)}
.tchk{display:flex;gap:18px;flex-wrap:wrap}.tchk label{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}.tchk input{accent-color:var(--a)}
.tkname{display:block;margin-bottom:20px}.tkname span{display:block;font-size:12px;color:var(--mut);margin-bottom:8px}
.tkname input{all:unset;box-sizing:border-box;width:100%;border-bottom:1px solid #2a3837;padding:8px 0;font-size:16px;color:var(--ink);font-weight:700}.tkname input:focus{border-color:var(--a2)}
.dstrip{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--ln)}
.dstrip>span:first-child{font-size:10.5px;color:var(--mut);margin-right:4px}
.dchip{font-size:12px;padding:5px 10px;border:1px solid #2a3837;color:#a9bbb9;text-decoration:none;display:inline-flex;gap:6px;align-items:center}
.dchip.on{border-color:var(--a2);color:var(--ink)}.dchip i{font-style:normal;font-size:9.5px;color:#060909;background:var(--a2);padding:1px 5px}
.tkbtns{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.tkbtns .btn{width:auto;margin:0;padding:0 22px;height:44px;line-height:44px}
.tkbtns .btn.ghost2{height:44px;line-height:42px;padding:0 18px}.tkbtns .btn[disabled]{opacity:.35;cursor:not-allowed}
.btn.danger{color:#ff8fa3!important;border-color:rgba(255,143,163,.45)!important}
.tkshares{margin-top:44px}.shl{list-style:none;margin:0;padding:0;border-top:1px solid var(--ln)}
.shl li{display:grid;grid-template-columns:96px 1fr auto auto;gap:14px;align-items:center;padding:10px 0;border-bottom:1px solid var(--ln);font-size:13px}
.shl li>span{font-size:11px;color:var(--mut)}.shl li a{font-size:11.5px;color:var(--a2)}.shl li i{font-style:normal;font-size:11px;color:var(--mut)}.shl li.rv b{color:var(--mut);text-decoration:line-through}
.shl form{margin:0}.shl .btn.ghost2{margin:0;height:auto;line-height:1.2;padding:6px 12px;font-size:11.5px}
.cb li .shr{margin-left:10px;font-size:10.5px;color:var(--a2);text-decoration:none;border:1px solid rgba(var(--ag,10,186,181),.4);padding:1px 6px}
.cb li .shr:hover{background:rgba(var(--ag,10,186,181),.1)}
/* dialog */
.shd{border:1px solid rgba(var(--ag,10,186,181),.45);background:#070c0c;color:var(--ink);padding:26px 28px 22px;width:min(760px,94vw);max-height:92vh;overflow:auto;box-shadow:0 0 0 1px #000,0 30px 80px rgba(0,0,0,.6),0 0 40px rgba(var(--ag,10,186,181),.12)}
.shd::backdrop{background:rgba(2,5,5,.78);backdrop-filter:blur(3px)}
.shd h2{margin:0;font-size:22px;font-weight:900;letter-spacing:.02em}.shd .shsub{margin:4px 0 14px;font-size:12px;color:var(--mut)}
.shx{position:absolute;right:12px;top:10px;margin:0}.shx button{all:unset;cursor:pointer;font-size:22px;line-height:1;color:var(--mut);padding:6px 10px}.shx button:hover{color:var(--ink)}
.shd .shsz{display:inline-flex;margin-bottom:12px}
.shfig{margin:0;border:1px solid #1d2a29;background:#040707;display:grid;place-items:center;min-height:120px}
.shfig img{display:block;width:100%;height:auto}.shfig[data-size=story] img{width:auto;height:min(52vh,520px)}
.shacts{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.shacts .btn{width:auto;margin:0;padding:0 20px;height:44px;line-height:44px;text-decoration:none;display:inline-flex;align-items:center}
.shacts .btn.ghost2{height:44px;line-height:1;padding:0 18px}.shacts [hidden]{display:none!important}
.shpub{margin-top:18px;padding-top:16px;border-top:1px solid var(--ln)}.shpub h3{margin:0 0 4px;font-size:14px}.shpub h3 small{font-size:10px;color:var(--mut);font-weight:400;margin-left:6px}
.shpub p{margin:0 0 10px;line-height:1.7}.shpub .btn.ghost2{width:auto;margin:0;display:inline-block}
.shlink{display:flex;gap:8px;flex-wrap:wrap}.shlink[hidden]{display:none}.shlink input{all:unset;box-sizing:border-box;flex:1;min-width:200px;border:1px solid #2a3837;padding:8px 10px;font-size:12px;color:var(--a2)}
.shd .cnote{margin:16px 0 0}
.pv-tpart{display:grid;place-items:center;width:100%;height:100%;padding:10px 14px;box-sizing:border-box}.pv-tpart svg{width:100%;max-width:240px;height:auto}
.ipv .pv-tpart svg{max-width:420px}
@media(max-width:900px){.tkgrid{grid-template-columns:1fr;gap:26px}.tkpvw{position:static}}
@media(max-width:760px){.cnav{grid-template-columns:repeat(3,1fr)!important}.cnav a:nth-child(3){border-right:0}.cnav a:nth-child(-n+3){border-bottom:1px solid #2a3837}
 .topt>span{min-width:62px;padding:6px 6px 5px}.tkbetl,.tkbetl select{max-width:100%;width:100%}.tkbar .seg{width:100%}.tkbar .seg button{flex:1;text-align:center}
 .shd{padding:20px 16px 16px;width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;margin:0;border:0}.shacts .btn{flex:1 1 140px;justify-content:center}
 .shl li{grid-template-columns:1fr auto;gap:4px 10px}.shl li>span{grid-column:1/-1}.tkfig[data-size=story] img{height:520px}}
.tchk input{all:revert;width:16px!important;height:16px!important;margin:0!important;flex:none;accent-color:var(--a)}.tchk span{white-space:nowrap}
.topts{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px}.topt>span{min-width:0;height:100%}@media(max-width:760px){.topts{grid-template-columns:repeat(auto-fill,minmax(70px,1fr))}}
.tfs{white-space:nowrap;font-size:14px}.tfs.f-neon{font-size:13px}
.shd{margin:auto}.shd [hidden]{display:none!important}
.shd .shsz{display:flex;width:max-content;max-width:100%}.shsz button{white-space:nowrap;text-align:center}.shsz button.on{color:#060909!important;background:var(--ink)!important}
.pv-tpart .tpl{color:var(--a2);width:200px}
@media(max-width:760px){.shd{margin:0}.shd .shsz{width:100%}.shsz button{flex:1;padding:8px 6px!important;font-size:11px}.cnav a{padding:9px 4px!important;line-height:1.2}.cnav{grid-auto-rows:auto}}
.shlink .btn,.shpub .btn.ghost2{margin:0!important;height:40px!important;display:inline-flex!important;align-items:center;justify-content:center;line-height:1!important;padding:0 16px!important;width:auto}
@media(max-width:760px){.cnav{gap:0!important;row-gap:0!important;align-content:start;height:auto!important}}
.pv-tpart{display:flex!important;align-items:center;justify-content:center}.pv-tpart svg.tkcard{width:100%;max-width:240px;flex:1 1 auto}.ipv .pv-tpart svg.tkcard{max-width:440px}@media(max-width:760px){.sgrid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}}

/* ===== v13 data pages: オッズ推移 / トラックバイアス / 収集状況 / イベントアラート ===== */
.nbd{display:inline-block;min-width:16px;height:16px;line-height:16px;border-radius:8px;background:#ff7aa8;color:#160309;font-size:9.5px;font-weight:700;text-align:center;padding:0 4px;margin-left:5px;vertical-align:1px;font-style:normal}
.tabbar .nbd{position:absolute;top:4px;left:calc(50% + 6px);margin:0}
.dpg .dp-ttl{align-items:flex-end}.dp-ttl p{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
.dp-asof{color:#e7c873}
.dp-fchip{display:inline-flex;align-items:center;gap:6px;color:#ffb38a;border:1px solid rgba(255,140,90,.4);padding:2px 8px;text-decoration:none;font-size:11px;margin-left:4px}.dp-fchip:hover{background:rgba(255,140,90,.08)}
.dp-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#7ef0a8;box-shadow:0 0 6px currentColor;flex:none}
.dp-dot.s-ok{background:#5be0a0;color:#5be0a0}.dp-dot.s-warn{background:#f4d35e;color:#f4d35e}.dp-dot.s-delay{background:#ff9a52;color:#ff9a52}.dp-dot.s-fail{background:#ff5470;color:#ff5470}
.dp-pick{display:flex;flex-wrap:wrap;gap:14px 18px;align-items:center;padding:20px 0 4px}
.dp-rc{display:flex;gap:4px;flex-wrap:wrap}.dp-rc a{display:flex;flex-direction:column;align-items:center;min-width:52px;padding:5px 6px;border:1px solid #23302f;text-decoration:none;color:var(--ink);transition:border-color .15s,background .15s}
.dp-rc a b{font-size:13px;font-weight:600}.dp-rc a small{font-size:10px;color:var(--mut)}.dp-rc a.fin{opacity:.55}.dp-rc a:hover{border-color:var(--a2);opacity:1}
.dp-rc a.on{border-color:var(--a2);background:rgba(129,216,208,.1);opacity:1;box-shadow:inset 0 -2px 0 var(--a2)}
.dp-race{padding-top:16px}.dp-rh{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 20px;padding:10px 0 12px;border-bottom:1px solid var(--ln)}
.dp-rh h2{font-family:'Noto Sans JP';font-size:24px;font-weight:900;letter-spacing:-.02em;display:flex;gap:12px;align-items:baseline}.dp-rh h2 span{font-size:14px;color:var(--a2);font-weight:500}
.dp-rh h2 em{font-style:normal;font-size:11px;border:1px solid #e7c873;color:#e7c873;padding:1px 6px;align-self:center}.dp-rh p{font-size:11.5px;color:var(--mut)}
.dp-bt{display:flex;gap:0;margin:14px 0 4px;border:1px solid #2a3837;width:max-content;max-width:100%;overflow-x:auto;scrollbar-width:none}
.dp-bt a{display:flex;align-items:center;gap:4px;padding:8px 15px;font-size:12.5px;color:var(--mut);text-decoration:none;border-right:1px solid #2a3837;white-space:nowrap}.dp-bt a:last-child{border:0}
.dp-bt a.on{background:var(--ink);color:#060909}.dp-bt a:hover:not(.on){color:var(--ink)}.dp-bt a[data-locked]{color:#55686a}.dp-bt a[data-locked] svg{opacity:.8}
.dp-ch-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px 20px;padding:18px 0 10px}
.dp-ch-h h2{font-size:15px;font-weight:700;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.dp-ch-h h2 small{font-size:11px;color:var(--mut);font-weight:400}
.dp-topf{display:flex;gap:12px;align-items:center;font-size:11.5px;color:var(--mut);flex-wrap:wrap}
.dp-topf select,.dp-topf input{background:transparent;border:0;border-bottom:1px solid #33433f;color:var(--ink);height:30px;font:inherit;font-size:13px;padding:0 4px;margin-left:4px}
.dp-topf select{appearance:none;padding-right:18px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6' fill='%2381D8D0'/%3E%3C/svg%3E") no-repeat right 3px center}
.dp-topf select option{background:#0a1110}.dp-topf input{width:110px}.dp-topf input:focus,.dp-topf select:focus{outline:none;border-bottom-color:var(--a2)}
.dp-topf .btn{width:auto;margin:0;height:30px;line-height:28px;padding:0 14px}
.dp-chart{position:relative;border:1px solid #1d2928;background:linear-gradient(180deg,rgba(10,186,181,.035),transparent 60%)}
.dp-chart svg{display:block;width:100%;height:340px}
.dp-pa{fill:transparent}.dp-gl{stroke:#1a2524;stroke-width:1}.dp-ax{fill:#61817e;font:10.5px 'Geist Mono',monospace}
.dp-fut{fill:url(#none);fill:rgba(255,255,255,.018)}
.dp-gap{fill:rgba(255,84,112,.08);stroke:rgba(255,84,112,.35);stroke-dasharray:2 3}.dp-gapt{fill:#ff8098;font:10px 'Geist Mono',monospace}
.dp-m45{stroke:#e7c873;stroke-width:1.2;stroke-dasharray:5 4}.dp-m45t{fill:#e7c873;font:10.5px 'Geist Mono',monospace}
.dp-m10{stroke:#ff7aa8;stroke-width:1.2;stroke-dasharray:5 4}.dp-m10t{fill:#ff7aa8;font:10.5px 'Geist Mono',monospace}
.dp-mp{stroke:#e8efee;stroke-width:1;opacity:.55}.dp-mpt{fill:#cfdcda;font:10.5px 'Geist Mono',monospace}
.dp-now{stroke:var(--a2);stroke-width:1;stroke-dasharray:1 3}.dp-nowt{fill:var(--a2);font:10px 'Geist Mono',monospace}
.dp-s path{fill:none;stroke-width:1.7;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke;transition:opacity .15s}.dp-s path.dp-band{stroke:none;opacity:.13}
.dp-foc .dp-s{opacity:.18}.dp-foc .dp-s.hl{opacity:1}.dp-foc .dp-s.hl path:not(.dp-band){stroke-width:2.6}
.dp-lab{font:10.5px 'Geist Mono',monospace}.dp-hov line{stroke:#cfe;stroke-width:1;opacity:.5;vector-effect:non-scaling-stroke}.dp-hit{fill:transparent;cursor:crosshair}
.dp-tip{position:absolute;top:24px;min-width:150px;background:rgba(6,9,9,.94);border:1px solid #2a3837;border-top:2px solid var(--a2);padding:8px 10px;font-size:11px;pointer-events:none;z-index:3;display:flex;flex-direction:column;gap:3px}
.dp-tip[hidden]{display:none}.dp-tip b{color:var(--a2);font-weight:500;margin-bottom:2px}.dp-tip span{display:flex;align-items:center;gap:6px}.dp-tip i{width:8px;height:2px}.dp-tip em{margin-left:auto;font-style:normal;color:var(--ink);padding-left:12px}
.dp-leg{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:10.5px;color:var(--mut);padding:9px 0 4px;align-items:center}.dp-leg span{display:inline-flex;align-items:center;gap:6px}
.dp-leg i{display:inline-block;width:18px;height:0;border-top:1.4px dashed}.dp-leg .l45{border-color:#e7c873}.dp-leg .l10{border-color:#ff7aa8}.dp-leg .lp{border-top-style:solid;border-color:#9fb0ae}.dp-leg .lnow{border-top-style:dotted;border-color:var(--a2)}
.dp-leg .lgap{height:9px;border:1px dashed rgba(255,84,112,.5);background:rgba(255,84,112,.1);width:14px}.dp-upd{margin-left:auto}.dp-upd .warn{color:#ff9a52;font-weight:500}
.dp-tw{overflow-x:auto}
.dp-t{width:100%;border-collapse:collapse;font-size:13px;margin-top:6px}.dp-t th{text-align:left;font-size:11px;color:var(--mut);font-weight:500;padding:9px 8px;border-bottom:1px solid #2a3837;white-space:nowrap}
.dp-t td{padding:8px;border-bottom:1px solid var(--ln);white-space:nowrap}.dp-t td.b{color:var(--ink);font-size:14px;font-weight:500}.dp-t td small{color:var(--mut);font-size:11px}
.dp-t td.up{color:#ff8c8c}.dp-t td.dn{color:#7ef0c8}.dp-t tbody tr:hover{background:rgba(129,216,208,.04)}.dp-offr{opacity:.4}
.dp-scr td{opacity:.6}.dp-scr em{font-style:normal;font-size:10px;color:#ff8098;border:1px solid rgba(255,84,112,.5);padding:0 4px;margin-left:6px}
.dp-cmb{display:flex;align-items:center;gap:3px}.dp-cmb b{margin-left:8px;font-weight:600}.dp-ar{font-style:normal;color:var(--mut);font-size:10px}
.dp-g{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;font:600 11.5px 'Geist Mono',monospace;border-radius:2px;flex:none}
.dp-tg{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.dp-tg input{appearance:none;width:14px;height:14px;border:1px solid #3a4d4b;margin:0;cursor:pointer;display:grid;place-items:center}
.dp-tg input:checked{border-color:var(--a2)}.dp-tg input:checked::after{content:'';width:8px;height:8px;background:var(--a2)}.dp-tg i{width:14px;height:3px;border-radius:1px}
.dp-lock{border:1px dashed #2f3f3e;padding:44px 24px;text-align:center;margin-top:16px;display:flex;flex-direction:column;align-items:center;gap:8px;background:repeating-linear-gradient(135deg,rgba(255,255,255,.012) 0 10px,transparent 10px 20px)}
.dp-lock h3{font-size:20px;font-family:'Noto Sans JP';font-weight:900}.dp-lock p{font-size:12.5px;color:var(--mut);max-width:520px;line-height:1.7}.dp-lock .btn{width:auto;padding:0 26px;margin-top:8px}.dp-lock svg{color:var(--a2)}
.dp-lock .pl-standard{color:#9fb4ff;font-size:11px;letter-spacing:.1em}
.dp-note{font-size:10.5px;color:#55706d;padding:22px 0 0;line-height:1.7}
/* bias */
.dp-vseg a,.dp-sseg a{position:relative}.dp-n{display:inline-block;font-style:normal;background:#ff7aa8;color:#1a0610;font-size:9.5px;font-weight:700;min-width:15px;height:15px;line-height:15px;border-radius:8px;margin-left:6px;text-align:center}
.dp-kpi{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #1d2928;margin-top:16px}.dp-kpi>div{padding:14px 16px;border-right:1px solid #1d2928;display:flex;flex-direction:column;gap:3px;min-width:0}.dp-kpi>div:last-child{border:0}
.dp-kpi small{font-size:10.5px;color:var(--mut);display:flex;align-items:center;gap:6px}.dp-kpi b{font-size:22px;font-weight:500;color:var(--ink);font-family:Geist}.dp-kpi span{font-size:10.5px;color:#7d9693;overflow:hidden;text-overflow:ellipsis}
.dp-h2{font-size:13px;color:var(--mut);font-weight:500;padding:22px 0 10px;letter-spacing:.04em}
.dp-dets{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}.dp-dets .dp-h2{width:100%;padding-bottom:0}
.dp-det{display:flex;flex-direction:column;gap:4px;padding:12px 18px;border:1px solid rgba(255,122,168,.5);background:linear-gradient(90deg,rgba(255,122,168,.1),transparent);min-width:240px}
.dp-det b{font-family:'Noto Sans JP';font-size:22px;font-weight:900;color:#ffd0e0;text-shadow:0 0 12px rgba(255,122,168,.45)}.dp-det span{font-size:11px;color:#c9a9b6}
.dp-det.none{border-color:#2a3837;background:none}.dp-det.none b{color:var(--ink);text-shadow:none;font-size:18px}.dp-det.none span{color:var(--mut)}
.dp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;margin-top:6px}.dp-wide{grid-column:1/-1}
.dp-card{min-width:0;padding-bottom:12px}.dp-card .ph h2{font-size:14px}.dp-card .ph span{font-size:10.5px;color:var(--mut)}
.dp-frames{list-style:none;display:grid;grid-template-columns:repeat(8,1fr);gap:8px;padding-top:12px;align-items:end}
.dp-frames li{display:flex;flex-direction:column;align-items:center;gap:5px}.dp-frames li b{font-size:12px;font-weight:500}.dp-frames li small{font-size:10px;color:var(--mut)}
.dp-vb{position:relative;width:100%;max-width:38px;height:120px;background:rgba(255,255,255,.025);border-bottom:1px solid #33433f;order:-1}
.dp-vb i{position:absolute;bottom:0;left:0;right:0}.dp-vb .t3{background:linear-gradient(180deg,var(--a2),rgba(10,186,181,.35));box-shadow:0 0 12px rgba(10,186,181,.35)}.dp-vb .w{left:30%;right:30%;background:#effffd}
.dp-t2{width:100%;border-collapse:collapse;font-size:12.5px}.dp-t2 th,.dp-t2 td{padding:9px 6px;border-bottom:1px solid var(--ln);text-align:left}.dp-t2 thead th{font-size:10.5px;color:var(--mut);font-weight:500}
.dp-t2 tbody th{font-weight:600;white-space:nowrap}.dp-sh{display:flex;align-items:center;gap:10px}.dp-sh b{font-size:12px;font-weight:500;min-width:36px;text-align:right}
.dp-bar{position:relative;flex:1;height:8px;background:rgba(255,255,255,.04);min-width:80px}.dp-bar i{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,rgba(10,186,181,.45),var(--a2))}
.dp-bar s{position:absolute;top:-4px;bottom:-4px;width:0;border-left:1.5px solid #e7c873}
.dp-pm td{text-align:center}.dp-hm{background:rgba(129,216,208,calc(var(--a)*.42));color:var(--ink)}.dp-pm thead th{text-align:center}
.dp-gr{display:grid;grid-template-columns:44px 1fr;gap:10px;align-items:center;padding:7px 0}.dp-gr>span{font-size:11px;color:var(--mut)}
.dp-gt{position:relative;height:34px;background:rgba(255,255,255,.025)}.dp-gt i{position:absolute;top:0;bottom:0;display:flex;flex-direction:column;justify-content:center;padding:0 8px;border-left:2px solid;overflow:hidden;white-space:nowrap}
.dp-gt i b{font-size:12.5px;font-weight:700}.dp-gt i small{font-size:9.5px;opacity:.8}.dp-gt s{position:absolute;top:-3px;bottom:-3px;border-left:1px dotted var(--a2)}
.dp-gt .g1{background:rgba(91,224,160,.12);border-color:#5be0a0;color:#a8f5cf}.dp-gt .g2{background:rgba(244,211,94,.13);border-color:#f4d35e;color:#f8e49a}.dp-gt .g3{background:rgba(255,154,82,.15);border-color:#ff9a52;color:#ffc59a}.dp-gt .g4{background:rgba(255,84,112,.16);border-color:#ff5470;color:#ffa0b0}
.dp-wx i{background:rgba(159,180,255,.08);border-color:#9fb4ff;color:#cfd9ff}
.dp-tax{position:relative;height:16px;margin-left:54px;font-size:9.5px;color:var(--mut)}.dp-tax span{position:absolute;transform:translateX(-50%)}
.dp-cush{padding-top:12px}.dp-cv{display:flex;align-items:baseline;gap:14px}.dp-cv b{font-size:44px;font-weight:300;color:#effffd;text-shadow:0 0 14px rgba(10,186,181,.6);font-family:Geist}
.dp-cv span{font-size:13px;font-weight:700;display:flex;flex-direction:column;gap:2px}.dp-cv em{font-style:normal;font-size:11px;font-weight:400}.dp-cv em.dn{color:#ff9a52}.dp-cv em.up{color:#7ef0c8}
.dp-scale{position:relative;display:grid;grid-template-columns:1fr 1fr 2fr 2fr 1fr;height:8px;margin-top:14px}.dp-scale i:nth-child(1){background:#4b6b8f}.dp-scale i:nth-child(2){background:#5f8fa6}.dp-scale i:nth-child(3){background:#3fb3a9}.dp-scale i:nth-child(4){background:#a7b86a}.dp-scale i:nth-child(5){background:#c9925b}
.dp-scale b{position:absolute;top:-5px;width:2px;height:18px;background:#fff;box-shadow:0 0 8px #fff;transform:translateX(-1px)}
.dp-sc{display:grid;grid-template-columns:1fr 1fr 1fr 2fr 1fr 1fr;font-size:9.5px;color:var(--mut);margin-top:4px}.dp-sc span:last-child{text-align:right}
.dp-sub2{font-size:10.5px;color:var(--mut);margin-top:12px}
.dp-tr{width:100%;height:auto;display:block;margin-top:8px}
.dp-rl td{vertical-align:middle}.dp-rl td .dp-g{margin-right:3px}.dp-rl small{color:var(--mut)}.dp-exc td{color:#c9a46a}.dp-exc em{font-style:normal;font-size:10px;border:1px solid #c9a46a;padding:0 5px;margin-left:6px}
.dp-empty{color:var(--mut);font-size:12px;padding:14px 0}
.dp-rules{margin-top:10px;border-top:1px solid var(--ln)}.dp-rules ol{padding-left:18px;display:flex;flex-direction:column;gap:6px;font-size:12px;color:#a9bcba;line-height:1.7;max-width:980px}
/* status */
.dp-skpi>div.s-ok b{color:#5be0a0}.dp-skpi>div.s-warn b{color:#f4d35e}.dp-skpi>div.s-delay b{color:#ff9a52}.dp-skpi>div.s-fail b{color:#ff5470}
.dp-status .dp-card{margin-top:10px}
.dp-stt th small{display:block;font-size:9.5px;color:#4f6866;font-weight:400}.dp-stt tbody th{font-size:13px;font-weight:600;color:var(--ink);border-bottom:1px solid var(--ln);padding:9px 8px}
.dp-stt td.bad{color:#ff8c8c}.dp-stt tr.s-fail{background:linear-gradient(90deg,rgba(255,84,112,.1),transparent 40%)}.dp-stt tr.s-delay{background:linear-gradient(90deg,rgba(255,154,82,.09),transparent 40%)}
.dp-st{display:inline-flex;align-items:center;gap:7px;font-size:11.5px}.dp-st.s-ok{color:#5be0a0}.dp-st.s-warn{color:#f4d35e}.dp-st.s-delay{color:#ff9a52}.dp-st.s-fail{color:#ff5470}
.dp-err{font-size:11px;color:#c99;max-width:260px;overflow:hidden;text-overflow:ellipsis}
.dp-tls{width:100%;min-width:760px;display:block}.dp-tl{fill:#a9bcba;font:11px 'Noto Sans JP',sans-serif}.dp-tok{fill:rgba(91,224,160,.55)}.dp-tng{fill:#ff5470}.dp-tgap{fill:rgba(255,154,82,.22);stroke:rgba(255,154,82,.6);stroke-width:.6}
.dp-k{display:inline-block;width:10px;height:8px;margin:0 3px 0 10px;vertical-align:0}.dp-k.ok{background:rgba(91,224,160,.55)}.dp-k.ng{background:#ff5470;width:3px}.dp-k.gp{background:rgba(255,154,82,.3);border:1px solid rgba(255,154,82,.6)}
.dp-inc{list-style:none}.dp-inc li{display:grid;grid-template-columns:170px minmax(140px,auto) 52px 1fr;gap:12px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--ln);font-size:12.5px}
.dp-inc li>span{font-size:11.5px;color:var(--mut)}.dp-inc em{font-style:normal;font-size:10.5px;text-align:center;border:1px solid;padding:0 4px}.dp-inc small{color:#8aa09d;font-size:11.5px}
.dp-inc .k-failure em{color:#ff5470}.dp-inc .k-delay em{color:#ff9a52}.dp-inc .k-gap em{color:#f4d35e}
/* events */
.dp-mark{all:unset;cursor:pointer;font-size:11px;color:var(--a2)}.dp-mark:hover{text-decoration:underline}
.dp-flt{display:flex;flex-wrap:wrap;gap:6px;padding:12px 0 6px}.dp-flt button{all:unset;cursor:pointer;font-size:11px;padding:5px 10px;border:1px solid #2a3837;color:var(--mut)}.dp-flt button b{color:var(--ink);font-weight:500;margin-left:3px}
.dp-flt button.on{background:var(--ink);color:#060909}.dp-flt button.on b{color:#060909}
.dp-feed{list-style:none}.dp-ev{display:grid;grid-template-columns:44px 74px 1fr auto 20px;gap:12px;align-items:center;padding:12px 10px 12px 12px;border-bottom:1px solid var(--ln);border-left:2px solid #2a3837;position:relative}
.dp-ev[hidden]{display:none}.dp-ev.sev-crit{border-left-color:#ff5470;background:linear-gradient(90deg,rgba(255,84,112,.08),transparent 50%)}.dp-ev.sev-warn{border-left-color:#ff9a52}.dp-ev.sev-info{border-left-color:var(--a)}
.dp-ev .t{font-size:12px;color:var(--mut)}.dp-ev>em{font-style:normal;font-size:10px;text-align:center;padding:2px 0;border:1px solid}
.dp-ev b{display:block;font-size:13.5px;font-weight:700}.dp-ev small{display:block;font-size:11.5px;color:var(--mut);margin-top:2px;line-height:1.5}
.dp-ev .nw{font-style:normal;font-size:9.5px;color:#ff7aa8;letter-spacing:.08em}.dp-ev.new b{color:#fff}.dp-ev .lk{font-size:14px}
.k-surge{color:#ff7aa8}.k-bias{color:#c79bff}.k-going{color:#f4d35e}.k-scr{color:#ff9a52}.k-bw{color:#9fb4ff}.k-fetch{color:#ff5470}
.dp-rules-f .dp-rr{align-items:flex-start}.dp-rx{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:8px;font-size:11px;color:var(--mut)}
.dp-in{display:inline-flex;align-items:center;gap:4px}.aset .dp-in .num{width:58px;height:28px;font-size:12.5px}
.dp-ck{display:inline-flex;align-items:center;gap:5px;cursor:pointer}.dp-ck input{accent-color:var(--a)}
.dp-chh{margin-top:12px}.dp-on{font-size:11px;color:#5be0a0}.dp-off{font-size:11px;color:var(--mut);white-space:nowrap}
.aset small b.ok{color:#5be0a0}.aset small b.ng{color:#ff9a52}.dp-test{margin-top:8px!important}.dp-msg{font-size:11px;color:var(--a2);min-height:16px;margin-top:8px}
@media(max-width:1100px){.dp-grid{grid-template-columns:1fr}.dp-kpi{grid-template-columns:repeat(2,1fr)}.dp-kpi>div:nth-child(2){border-right:0}.dp-kpi>div:nth-child(-n+2){border-bottom:1px solid #1d2928}}
@media(max-width:760px){
 .tabbar{grid-template-columns:repeat(7,1fr)!important}.tabbar a{font-size:9.5px}
 .dp-ttl{flex-direction:column;align-items:flex-start!important}.dp-ttl h1{font-size:32px}.dp-sub{width:100%}.dp-sub a{flex:1}
 .dp-pick{gap:10px;padding-top:14px}.dp-vseg{width:100%}.dp-sseg{width:100%}
 .dp-rc{flex-wrap:nowrap;overflow-x:auto;width:100%;scrollbar-width:none;padding-bottom:2px}.dp-rc a{min-width:46px}
 .dp-rh h2{font-size:19px}.dp-bt{width:100%}.dp-bt a{padding:8px 11px;font-size:12px}
 .dp-chart svg{height:250px}.dp-topf{width:100%}.dp-topf input{width:96px}
 .dp-hide-m{display:none}.dp-t td,.dp-t th{padding:8px 5px}.dp-t{font-size:12.5px}.dp-cmb b{max-width:92px;overflow:hidden;text-overflow:ellipsis}
 .dp-upd{margin-left:0;width:100%}
 .dp-kpi{grid-template-columns:1fr 1fr}.dp-kpi b{font-size:18px}.dp-kpi>div{padding:10px 12px}
 .dp-det{min-width:0;width:100%}.dp-det b{font-size:19px}
 .dp-frames{gap:4px}.dp-vb{height:90px}
 .dp-inc li{grid-template-columns:1fr auto;gap:4px 10px}.dp-inc li>span{grid-column:1/-1}.dp-inc small{grid-column:1/-1}
 .dp-ev{grid-template-columns:40px 1fr 18px;gap:4px 10px;padding:10px 6px 10px 10px}.dp-ev>em{grid-column:2;justify-self:start;padding:1px 6px}.dp-ev>div{grid-column:2}.dp-ev .t{grid-row:1/3;align-self:start;padding-top:2px}.dp-ev .nw{position:absolute;right:30px;top:10px}.dp-ev .lk{grid-row:1/3;grid-column:3}
 .dp-gt i small{display:none}.dp-gt i{padding:0 4px}.dp-gt i b{font-size:11px}
}
.dp-inc.dp-mf li{grid-template-columns:150px minmax(0,1fr) 130px 90px}.dp-mf b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}
.dp-stt th,.dp-stt td{padding-left:10px;padding-right:10px}.dp-s path.dp-band{opacity:.085!important}
@media(max-width:760px){.dp-inc.dp-mf li{grid-template-columns:1fr auto}.dp-mf b{grid-column:1/-1;white-space:normal;word-break:break-all}}
.dp-rules-f .dp-rr>span:first-child{flex:1;min-width:0}
.aset .dp-ck input,.dp-ck input{appearance:auto;-webkit-appearance:checkbox;width:14px!important;height:14px!important;margin:0!important;padding:0!important;border:0;display:inline-block!important;flex:none}
.dp-ck{white-space:nowrap}
.dp-chart.dp-mob{display:none}
@media(max-width:760px){.dp-chart.dp-desk{display:none}.dp-chart.dp-mob{display:block}.dp-chart.dp-mob svg{height:auto;aspect-ratio:420/300}}
@media(max-width:760px){.tabbar a span{white-space:nowrap;font-size:9px;letter-spacing:-.02em}}
.dp-rlink{margin-left:14px}
@media(max-width:760px){.dp-sub a{font-size:11px;padding:7px 4px;min-width:0}}
/* v13: header got one more nav item (データ) — keep it on one line */
@media(max-width:1640px){.hd nav a>svg:first-child{display:none}.hd nav{gap:15px!important}.hd{gap:26px}.hd .brand>span{display:none}}
@media(max-width:1360px){.hd nav{gap:11px!important}.hd nav a{font-size:12.5px}.hd{gap:18px;padding-right:24px}.who{font-size:10.5px}}
@media(max-width:760px){.dpg .ph{flex-wrap:wrap;row-gap:6px}.dpg .ph h2{white-space:nowrap;flex:0 0 auto}.dpg .ph>span.mono{flex:1 1 100%;font-size:10.5px}}

/* ===== v14 — 開催日・保管版・指数・買い目 5 種・/buy・WIN5・結果・管理。クラスはすべて v14- ===== */
/* 390px のはみ出し修正（v13 までの .cg カレンダーと .rn の大きなレース番号） */
.cg{grid-template-columns:repeat(7,minmax(0,1fr))!important}.cg>*{min-width:0}
.hero{overflow-x:clip}
@media(max-width:760px){.rn{right:0!important}.cg>*{padding-left:2px!important;padding-right:2px!important}}
.v14-pg{max-width:1320px;margin:0 auto;padding-bottom:64px}
.v14-pg .mono,.v14-pg .mono *{font-family:'Geist Mono',ui-monospace,monospace}
.v14-kick{font-size:11px;letter-spacing:.18em;color:var(--mut);text-transform:uppercase;margin:0 0 6px}
.v14-kick a{color:var(--mut);text-decoration:none}.v14-kick a:hover{color:var(--a2)}
.v14-fine{font-size:11px;color:var(--mut);line-height:1.7;margin:10px 0 0}
.v14-sbs{color:#e7c873}
/* 封印の帯：看板の注意書きのように細く、光らせない */
.v14-seal{display:flex;gap:12px;align-items:baseline;border-top:1px solid var(--ln);border-bottom:1px solid var(--ln);padding:7px 0;margin:4px 0 14px;font-size:11px;color:var(--mut);flex-wrap:wrap}
.v14-seal b{color:var(--a2);letter-spacing:.14em;font-weight:600}
/* 日付バー */
.v14-db{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;margin:0 0 4px;padding:6px 0 10px;border-bottom:1px solid var(--ln)}
.v14-db::-webkit-scrollbar{display:none}
.v14-db-d{flex:0 0 auto;min-width:62px;display:grid;justify-items:start;gap:1px;padding:6px 10px 7px;color:var(--mut);text-decoration:none;border-left:1px solid var(--ln);position:relative}
.v14-db-d small{font-size:10px;letter-spacing:.06em}.v14-db-d b{font-size:24px;font-weight:400;color:var(--ink);line-height:1}
.v14-db-d em{font-style:normal;font-size:10px;color:var(--dim)}
.v14-db-d:hover b{color:var(--a2)}
.v14-db-d.v14-today b{color:var(--a2)}
.v14-db-d.v14-on{background:linear-gradient(180deg,rgba(10,186,181,.08),transparent)}
.v14-db-d.v14-on::after{content:"";position:absolute;left:8px;right:8px;bottom:-11px;height:2px;background:var(--a);box-shadow:0 0 8px var(--a),0 0 18px rgba(10,186,181,.5)}
.v14-db-d.v14-on b{color:#effffd;text-shadow:0 0 10px rgba(129,216,208,.55)}
.v14-db-d.v14-fut b{color:var(--dim)}.v14-db-d.v14-lk{opacity:.6}
.v14-db-d .v14-g{position:absolute;top:5px;right:6px;font-style:normal;font-size:9px;color:#e7c873;border:1px solid #5b4d26;padding:0 3px}
.v14-db-seal{border-left:1px dashed #5b4d26;margin-left:8px}.v14-db-seal b{color:#bfae7a!important}
/* 中央・地方 */
.v14-area{display:flex;gap:18px;font-size:12px;margin:12px 0 0}
.v14-area a{color:var(--mut);text-decoration:none;padding-bottom:4px;border-bottom:1px solid transparent}
.v14-area a.v14-on{color:var(--ink);border-color:var(--a2)}
.v14-area i{font-style:normal;font-size:10px;color:var(--dim);border:1px solid var(--ln);padding:0 4px;margin-left:4px}
/* 見出し：左に大きな日付、右に版の札（非対称） */
.v14-mast{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:18px 0 18px;flex-wrap:wrap}
.v14-mast h1{font:300 46px/1 Geist,'Noto Sans JP',sans-serif;letter-spacing:-.02em;margin:0;color:#effffd}
.v14-mast h1 span{font-size:20px;color:var(--mut);margin-left:6px}
.v14-meet{font-size:12px;color:var(--mut);margin:10px 0 0}
.v14-mast-r{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.v14-arch{font-size:11px;color:#c9d6d4;border:1px solid var(--ln);padding:5px 9px;display:inline-flex;gap:8px}
.v14-arch b{color:#e7c873;font-weight:500;letter-spacing:.1em}
.v14-live{font-size:12px;color:var(--a2);display:inline-flex;gap:7px;align-items:center}
.v14-live i{width:6px;height:6px;border-radius:50%;background:var(--a);box-shadow:0 0 8px var(--a)}
.v14-upd{font-size:11px;color:var(--mut)}
/* 一覧：左に場ごとの馬柱風テーブル、右に細いレール */
.v14-rgrid{display:grid;grid-template-columns:minmax(0,1fr) 272px;gap:34px;align-items:start}
.v14-vb{margin:0 0 26px}
.v14-vb header{display:flex;align-items:baseline;gap:14px;border-bottom:1px solid var(--a);padding-bottom:6px;margin-bottom:2px}
.v14-vb h2{font:700 19px 'Noto Sans JP';margin:0;color:var(--ink)}.v14-vb header span{font-size:11px;color:var(--mut)}
.v14-rtab{width:100%;border-collapse:collapse;font-size:13px}
.v14-rtab th{font-size:10px;font-weight:400;color:var(--dim);text-align:left;padding:5px 6px;letter-spacing:.06em}
.v14-rtab td{padding:7px 6px;border-bottom:1px solid var(--ln);white-space:nowrap}
.v14-rtab a{color:inherit;text-decoration:none}.v14-rtab tr:hover td{background:rgba(129,216,208,.035)}
.v14-rno a{display:inline-block;min-width:22px;color:var(--a2);font-size:14px}
.v14-rn{max-width:220px;overflow:hidden;text-overflow:ellipsis}.v14-rn a{color:var(--ink)}
.v14-rtab .g1{font-style:normal;font-size:10px;color:#e7c873;border:1px solid #5b4d26;padding:0 4px;margin-left:4px}
.v14-top b{font-weight:500}.v14-fp{font-style:normal;font-size:11px;color:var(--mut);margin-left:6px}
.v14-fp.v14-w{color:var(--a2)}.v14-fp.v14-p{color:#c9d6d4}
.v14-sci{color:var(--a2)}.v14-ev{color:var(--mut)}.v14-ev.v14-hi,.v14-hi{color:var(--a2)}
.v14-1st{color:var(--mut);font-size:12px}.v14-done td{color:#9fb3b1}
.v14-next td{background:rgba(10,186,181,.05)}.v14-nx{color:var(--a);font-size:11px;border:1px solid rgba(10,186,181,.5);padding:0 5px}
.v14-wh{font-size:11px;color:#e7c873;border:1px solid #5b4d26;padding:1px 6px}
.v14-rail{position:sticky;top:76px;display:grid;gap:18px}
.v14-nextup{border-left:2px solid var(--a);padding:6px 0 6px 14px}
.v14-nextup p{font-size:10px;color:var(--mut);letter-spacing:.14em;margin:0}.v14-nextup b{display:block;font:500 26px Geist,'Noto Sans JP';margin:4px 0}
.v14-nextup span{font-size:12px;color:var(--mut)}.v14-nextup em{font-style:normal;color:var(--a2)}
.v14-nextup a{display:block;margin-top:8px;font-size:12px;color:var(--a2);text-decoration:none}
.v14-hub{display:grid;border-top:1px solid var(--ln)}
.v14-hub a{display:grid;gap:2px;padding:11px 0;border-bottom:1px solid var(--ln);text-decoration:none;color:var(--ink)}
.v14-hub a b{font-weight:500;font-size:14px}.v14-hub a small{font-size:11px;color:var(--mut)}
.v14-hub a:hover b{color:var(--a2)}
.v14-whbox{border:1px solid #5b4d26;background:rgba(231,200,115,.04);padding:12px 14px}
.v14-whbox b{color:#e7c873;font-weight:500}.v14-whbox p{font-size:12px;color:#c9c0a0;margin:6px 0 0;line-height:1.7}
.v14-whwide{margin:16px 0}
.v14-nar,.v14-empty{border-top:1px solid var(--ln);padding:28px 0;max-width:640px}
.v14-nar h2,.v14-empty h2{font:500 20px 'Noto Sans JP';margin:0 0 10px}.v14-nar p,.v14-empty p{color:var(--mut);font-size:13px;line-height:1.8}
.v14-empty.v14-left{margin:0}
/* カレンダー */
.v14-cal{margin-top:34px;max-width:560px}
.v14-cal header{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--ln);padding-bottom:6px}
.v14-cal h2{font:500 15px 'Noto Sans JP';margin:0}.v14-cal h2 small{color:var(--mut);margin-left:6px}
.v14-cal header a{color:var(--mut);font-size:11px;text-decoration:none;margin-left:10px}
.v14-cg{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;margin-top:6px}
.v14-cg>*{min-width:0;padding:6px 4px;font-size:12px}
.v14-wk{font-size:10px!important;color:var(--dim)}
.v14-cd b{font-weight:400;color:var(--dim)}.v14-cseal b{color:#5b4d26}
.v14-cm{text-decoration:none;color:var(--ink);border-top:1px solid var(--a2);display:grid}
.v14-cm b{font-weight:400}.v14-cm small{font-size:9px;color:var(--mut)}
.v14-cm.v14-on{background:rgba(10,186,181,.1)}.v14-cm.v14-today b{color:var(--a2)}
/* レースページ追加分 */
.v14-rtag{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:11px;color:var(--mut);margin:4px 0 0}
.v14-rtag a{color:var(--a2);text-decoration:none}
.v14-cardb{border:1px solid var(--ln);padding:3px 8px}
.v14-smp{color:#e7c873}
.v14-sort{display:flex;gap:12px;font-size:11px;color:var(--mut);margin:0 0 6px;align-items:center}
.v14-sort a{color:var(--mut);text-decoration:none}.v14-sort a.v14-on{color:var(--a2);border-bottom:1px solid var(--a2)}
.v14-sort .v14-off{color:var(--dim)}
.v14-rt th.v14-sc,.v14-rt td.v14-sc{text-align:right;white-space:nowrap}
td.v14-sc b{font:500 15px 'Geist Mono';color:var(--ink)}
td.v14-sc i{display:block;font:normal 10px 'Geist Mono';color:var(--mut)}
td.v14-sc i.up{color:var(--a2)}td.v14-sc i.dn{color:#b9877e}
td.v14-sc.v14-top b{color:var(--a2);text-decoration:underline;text-decoration-color:rgba(10,186,181,.6);text-underline-offset:3px}
.v14-rx{margin-top:34px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:36px;align-items:start}
.v14-rx2{display:grid;gap:30px}
.v14-rx header,.v14-buy header,.v14-w5 header,.v14-ab header{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;border-bottom:1px solid var(--ln);padding-bottom:6px;margin-bottom:8px}
.v14-rx h2,.v14-buy h2,.v14-w5 h2{font:700 15px 'Noto Sans JP';margin:0}
.v14-rx header span,.v14-buy header span,.v14-w5 header span{font-size:10px;color:var(--mut)}
.v14-bt{display:flex;gap:0;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--ln);margin-bottom:8px}
.v14-bt a{flex:0 0 auto;padding:8px 11px 7px;font-size:12px;color:var(--mut);text-decoration:none;border-bottom:2px solid transparent;display:flex;gap:5px;align-items:center}
.v14-bt a i{font-style:normal;color:var(--dim)}
.v14-bt a.v14-on{color:var(--ink);border-color:var(--a)}.v14-bt a.v14-on i{color:var(--a2)}
.v14-bt a[data-locked]{color:var(--dim)}
.v14-btab,.v14-ftab,.v14-restab,.v14-rt2,.v14-at{width:100%;border-collapse:collapse;font-size:13px}
.v14-btab th,.v14-ftab th,.v14-restab th,.v14-rt2 th,.v14-at th{font-size:10px;font-weight:400;color:var(--dim);text-align:left;padding:5px 6px}
.v14-btab td,.v14-ftab td,.v14-restab td,.v14-rt2 td,.v14-at td{padding:7px 6px;border-bottom:1px solid var(--ln)}
.v14-pg .r{text-align:right}.v14-cb{color:var(--ink);letter-spacing:.04em}
.v14-none{color:var(--dim);font-size:12px}
.v14-why ol{list-style:none;margin:0;padding:0}
.v14-why li{display:grid;grid-template-columns:22px auto 1fr;gap:4px 8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--ln)}
.v14-why li .mk{color:var(--a2);font-weight:900}.v14-why li b{font-weight:500}
.v14-wl{grid-column:3/-1}.v14-wl p{margin:2px 0;font-size:12px;color:#c9d6d4}.v14-wl p span{color:var(--mut);font-size:10px}
.v14-wl p.v14-neg{color:#b9a7a3}
.v14-flags{list-style:none;padding:0;margin:0 0 10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px}
.v14-flags li{padding:8px 10px;border-left:2px solid var(--ln);color:var(--dim)}
.v14-flags li b{display:block;font-size:13px;font-weight:500}.v14-flags li small{font-size:11px}
.v14-flags li.v14-lit{border-color:var(--a);color:var(--ink);background:rgba(10,186,181,.06)}.v14-flags li.v14-lit b{color:var(--a2)}
.v14-meters{list-style:none;margin:0;padding:0}
.v14-meters li{display:grid;grid-template-columns:20px minmax(0,1fr) 44px 90px 26px;gap:8px;align-items:center;font-size:12px;padding:5px 0}
.v14-meters .mk{color:var(--a2)}.v14-meters b{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v14-m{height:4px;background:var(--ln)}.v14-m i{display:block;height:100%;background:var(--a2)}.v14-m i.v14-warn{background:var(--a)}
.v14-whp{color:#c9c0a0;font-size:13px}
/* /buy */
.v14-buygrid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:36px;align-items:start}
.v14-buyl{columns:2 280px;column-gap:32px}
.v14-bk{break-inside:avoid;margin:0 0 22px}
.v14-bk h3{font:700 16px 'Noto Sans JP';margin:0 0 4px;display:flex;justify-content:space-between;border-bottom:1px solid var(--a);padding-bottom:5px}
.v14-bk h3 small{font-size:11px;color:var(--mut);font-weight:400}
.v14-bk ol{list-style:none;margin:0;padding:0}
.v14-bk li{display:grid;grid-template-columns:62px minmax(0,1fr) 48px auto auto;gap:8px;align-items:center;font-size:13px;padding:6px 0;border-bottom:1px solid var(--ln)}
.v14-bk li a{color:var(--a2);text-decoration:none;font-size:12px}.v14-bk li b{font-weight:500}.v14-bk li span{color:var(--mut);font-size:12px;text-align:right}
.v14-bk li.v14-done{opacity:.55}
.v14-cf{font-size:10px;padding:1px 6px;border:1px solid}
.v14-buy .v14-cf.v14-buy,.v14-cf.v14-buy{color:var(--a2);border-color:rgba(10,186,181,.5)}.v14-cf.v14-pass{color:var(--dim);border-color:var(--ln)}
.v14-gate{margin-top:20px}.v14-gl{display:flex;flex-wrap:wrap;gap:4px}
.v14-gl a{display:flex;gap:6px;align-items:center;padding:4px 7px;border:1px solid var(--ln);text-decoration:none;color:var(--ink);font-size:12px}
.v14-gl a.v14-g-pass{color:var(--mut)}
.v14-seg{display:inline-flex;border:1px solid var(--ln)}.v14-seg a{padding:7px 12px;font-size:12px;color:var(--mut);text-decoration:none}
.v14-seg a.v14-on{background:rgba(10,186,181,.12);color:var(--ink)}
.v14-rates{border-left:1px solid var(--ln);padding-left:18px}
/* WIN5 */
.v14-pl{font-size:10px;color:var(--mut)}
.v14-legs{list-style:none;margin:0 0 24px;padding:0;border-top:1px solid var(--a)}
.v14-leg{display:grid;grid-template-columns:64px minmax(0,1.1fr) minmax(0,1.6fr) 110px;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--ln)}
.v14-legn span{display:block;font-size:9px;color:var(--dim);letter-spacing:.2em}.v14-legn b{font:300 34px 'Geist Mono';color:var(--a2);line-height:1}
.v14-legr a{color:var(--ink);text-decoration:none;font-weight:500}.v14-legr a span{color:var(--mut);font-weight:400;font-size:12px;margin-left:4px}.v14-legr small{display:block;font-size:11px;color:var(--mut);margin-top:3px}
.v14-legp{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}.v14-legp .mk{color:var(--a2);font-weight:900}.v14-legp b{font-weight:500}
.v14-cands{display:flex;gap:8px}.v14-cands i{font-style:normal;display:flex;gap:3px;align-items:center}.v14-cands em{font-style:normal;font-size:11px;color:var(--mut)}
.v14-legx{font-size:12px;color:var(--mut);text-align:right}.v14-legx b{color:var(--a2)}
.v14-leg.v14-hit .v14-legn b{text-shadow:0 0 10px rgba(129,216,208,.6)}.v14-leg.v14-miss .v14-legn b{color:var(--dim)}
.v14-tl{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr) minmax(0,1.2fr);gap:0}
.v14-tier{padding:10px 18px 10px 0;border-right:1px solid var(--ln);margin-right:18px}.v14-tier:last-child{border:0}
.v14-tier>b{font:300 36px 'Geist Mono';color:var(--ink)}.v14-tier>b small{font-size:12px;color:var(--mut);margin-left:3px}
.v14-tier ol{list-style:none;padding:0;margin:8px 0 0;font-size:12px}.v14-tier li{display:flex;gap:10px;padding:2px 0}.v14-tier li span{color:var(--dim)}
/* 結果 */
.v14-tp .mk{color:var(--a2);margin-right:4px}.v14-tp b{margin-left:6px;color:var(--mut);font-weight:400}.v14-tp b.v14-w{color:var(--a2)}.v14-tp b.v14-p{color:var(--ink)}
.v14-o3{display:flex;gap:14px;white-space:nowrap}.v14-o3 span{display:inline-flex;gap:4px;align-items:center;color:#9fb3b1}.v14-o3 span i{font-style:normal;color:var(--dim);font-size:11px}
.v14-o3 span.v14-lit{color:var(--ink)}.v14-o3 em{font-style:normal;color:var(--a2);font-size:11px}
.v14-pend td{color:var(--dim)}
/* 使い方・利用条件 */
.v14-cols{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,.8fr);gap:40px}
.v14-doc h2{font:700 15px 'Noto Sans JP';border-bottom:1px solid var(--a);padding-bottom:5px;margin:22px 0 8px}
.v14-doc article>h2:first-child{margin-top:0}.v14-doc p,.v14-doc dd,.v14-doc li{font-size:13px;line-height:1.85;color:#c9d6d4}
.v14-dl dt{color:var(--a2);font-weight:500;margin-top:6px}.v14-dl dd{margin:0}
.v14-ol{padding-left:1.2em}.v14-ol b{color:var(--ink)}
.v14-terms{max-width:720px}.v14-terms ol{padding-left:1.3em}.v14-terms li{margin:0 0 12px}.v14-terms b{color:var(--ink)}
.v14-hn{border-left:2px solid #e7c873;padding:8px 12px;font-size:12px;color:#c9c0a0;margin:8px 0 14px}
.v14-ft{display:flex;gap:18px;justify-content:flex-end;max-width:1320px;margin:0 auto;padding:16px 40px 90px;font-size:11px}
.v14-ft a{color:var(--mut);text-decoration:none}.v14-ft a:hover{color:var(--a2)}
.v14-sealpg .v14-sealbox{max-width:620px;padding:30px 0}.v14-sealbox h1{font:300 34px Geist,'Noto Sans JP';margin:0 0 14px}.v14-sealbox p{color:var(--mut);font-size:13px;line-height:1.85}
.v14-back{color:var(--a2);text-decoration:none;font-size:12px}
.v14-rr{font-size:inherit}
/* 管理 */
.v14-ahead{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;margin:16px 0 10px}.v14-ahead h1{font:300 32px Geist,'Noto Sans JP';margin:0}
.v14-aseal{font-size:11px;color:#e7c873;border:1px solid #5b4d26;padding:2px 7px}
.v14-asub{display:flex;gap:0;border-bottom:1px solid var(--ln);overflow-x:auto;margin-bottom:18px}
.v14-asub a{padding:8px 12px;font-size:12px;color:var(--mut);text-decoration:none;border-bottom:2px solid transparent;flex:0 0 auto}.v14-asub a.v14-on{color:var(--ink);border-color:#e7c873}
.v14-agrid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:30px;align-items:start}
.v14-ab{margin:0 0 26px}.v14-ab-w{grid-column:1/-1}
.v14-ab h2{font:700 14px 'Noto Sans JP';margin:0 0 8px;border-bottom:1px solid var(--ln);padding-bottom:6px}
.v14-at td{font-size:12px}.v14-ok{color:var(--a2);font-size:10px}.v14-ng{color:#e08a7a;font-size:10px}
.v14-warnt{color:#e7c873}.v14-flash{padding:8px 12px;border-left:2px solid var(--a);font-size:12px;margin:0 0 14px}
.v14-adl{display:grid;grid-template-columns:110px 1fr;gap:6px 10px;font-size:12px;margin:0}.v14-adl dt{color:var(--mut)}.v14-adl dd{margin:0}.v14-adl small{color:var(--mut);word-break:break-all}
.v14-alog{list-style:none;margin:0;padding:0;font-size:11px}.v14-alog li{display:grid;grid-template-columns:120px 130px minmax(0,1fr) 90px;gap:8px;padding:4px 0;border-bottom:1px solid var(--ln)}.v14-alog i{font-style:normal;color:var(--mut);overflow:hidden;text-overflow:ellipsis}.v14-alog em{font-style:normal;color:var(--mut)}
.v14-ad{border-bottom:1px solid var(--ln);padding:6px 0}.v14-ad summary{cursor:pointer;display:flex;gap:16px;font-size:12px;padding:4px 0}.v14-ad summary span{color:var(--mut)}
.v14-arow{display:flex;gap:14px;flex-wrap:wrap;margin:8px 0}
.v14-af{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0}
.v14-af input,.v14-af select{background:#0b1414;border:1px solid var(--ln);color:var(--ink);padding:5px 7px;font:12px 'Geist Mono',monospace}
.v14-af label{font-size:11px;color:var(--mut);display:inline-flex;gap:6px;align-items:center}
.v14-af button{background:transparent;border:1px solid var(--a2);color:var(--a2);padding:5px 10px;font-size:11px;cursor:pointer}
.v14-af.v14-danger button{border-color:#e7c873;color:#e7c873}
.v14-confirm{max-width:560px;border:1px solid #5b4d26;padding:18px}.v14-reauth{max-width:520px;padding-top:20px}.v14-reauth h1{font:300 28px Geist,'Noto Sans JP';margin:0 0 8px}
.v14-al{list-style:none;padding:0;margin:0;font-size:12px}.v14-al li{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px solid var(--ln)}.v14-al small{color:var(--mut)}
.v14-pre{white-space:pre-wrap;word-break:break-all;font-size:11px;color:#9fb3b1;max-height:420px;overflow:auto;background:#0b1414;padding:10px;border:1px solid var(--ln)}
@media(max-width:1100px){.v14-rx{grid-template-columns:minmax(0,1fr)}.v14-cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:760px){
 .v14-mast h1{font-size:34px}.v14-rgrid,.v14-buygrid,.v14-agrid{grid-template-columns:minmax(0,1fr)}.v14-rail{position:static}
 .v14-rtab{font-size:12px}.v14-rtab td,.v14-rtab th{padding:6px 3px}.v14-rn{max-width:120px}
 .v14-rtab th:nth-child(4),.v14-rtab td:nth-child(4){display:none}
 .v14-leg{grid-template-columns:44px minmax(0,1fr);gap:6px 10px}.v14-legp,.v14-legx{grid-column:2}.v14-legx{text-align:left}
 .v14-tl{grid-template-columns:minmax(0,1fr)}.v14-tier{border-right:0;border-bottom:1px solid var(--ln);margin:0}
 .v14-cols{grid-template-columns:minmax(0,1fr)}.v14-flags{grid-template-columns:minmax(0,1fr)}
 .v14-meters li{grid-template-columns:18px minmax(0,1fr) 40px 60px 24px}
 .v14-alog li{grid-template-columns:96px minmax(0,1fr)}.v14-alog i,.v14-alog em{display:none}
 .v14-bk li{grid-template-columns:54px minmax(0,1fr) 40px auto}.v14-bk li>span:nth-of-type(2){display:none}
 .v14-ft{padding:14px 18px 96px;justify-content:flex-start;flex-wrap:wrap}
 .v14-rates{border-left:0;padding-left:0}
 .tw{overflow-x:auto}
}
.v14-rhead{padding:0 40px 0 36px;padding-bottom:0;position:relative;z-index:2}
@media(max-width:760px){.v14-rhead{padding:0 18px}}
/* v11 のショップ演出 .fx（absolute）がレースページの要因リスト .fx に効いていた衝突を解消 */
.why .fx,section.why ul.fx{position:static;inset:auto;pointer-events:auto;overflow:visible}
@media(max-width:760px){
 .v14-rtab th:nth-child(2),.v14-rtab td:nth-child(2){display:none}
 .v14-rtab td.v14-rn,.v14-rtab td.v14-top,.v14-rtab td.v14-1st{white-space:normal;word-break:break-all}
 .v14-rtab .v14-rn{max-width:none}.v14-rtab td.v14-1st{font-size:11px;max-width:72px}
 .v14-fp{display:block;margin:0}
}
@media(max-width:760px){.v14-ab{overflow-x:auto}.v14-at td,.v14-at th{padding:6px 4px;font-size:11px;word-break:break-all}}
.v14-pg .v14-af button{width:auto;height:auto;min-height:0;margin:0;display:inline-block;padding:6px 12px;font-size:11px;line-height:1.2;border-radius:0;box-shadow:none}
.v14-pg .v14-af input,.v14-pg .v14-af select{width:auto;height:auto;margin:0;border-radius:0}
.v14-pg .v14-af label{white-space:nowrap}
.v14-reauth .v14-af{display:flex;gap:8px}.v14-reauth .v14-af input{flex:1;min-width:0}
.v14-db-d{min-width:70px}.v14-db-d .v14-g{top:auto;bottom:8px;right:6px}
.v14-db-d.v14-on small,.v14-db-d.v14-on em{color:#8fa8a5}
@media(max-width:760px){.v14-ft{flex-direction:row}}


/* --- Subscriber License Key & Public Free Mode UI --- */
.key-login-btn {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border: 1px solid rgba(129,216,208,0.45);
  background: rgba(129,216,208,0.10);
  color: #81D8D0 !important;
  text-decoration: none;
  border-radius: 3px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
}
.key-login-btn:hover {
  background: rgba(129,216,208,0.20);
}
.guest-tag {
  color: #a3a3a3;
  font-size: 11px;
}
.sub-key-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  padding: 8px 18px;
  background: #141919;
  border-bottom: 1px solid rgba(129,216,208,0.24);
  font-size: 12px;
}
.skb-left {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.skb-badge {
  padding: 2px 7px;
  background: rgba(129,216,208,0.14);
  border: 1px solid rgba(129,216,208,0.4);
  color: #81D8D0;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.06em;
  border-radius: 2px;
}
.skb-txt {
  color: #d4d4d8;
  font-size: 11.5px;
}
.skb-form {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.skb-in, .upc-key-in, .lko-key-in {
  background: #0d1212;
  color: #f4f4f5;
  border: 1px solid #2e3d3c;
  padding: 5px 10px;
  font-size: 12px;
  border-radius: 3px;
  width: 215px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.skb-btn, .lko-key-btn {
  background: #81D8D0;
  color: #081010;
  border: 1px solid #81D8D0;
  padding: 5px 12px;
  font-size: 11.5px;
  font-weight: 700;
  border-radius: 3px;
  cursor: pointer;
}
.skb-btn:hover, .lko-key-btn:hover {
  opacity: 0.92;
}
.skb-link {
  color: #81D8D0;
  font-size: 11px;
  text-decoration: underline;
  margin-left: 4px;
}
.sub-gate-tag, .lko-sub {
  display: inline-block;
  padding: 2px 8px;
  margin-bottom: 6px;
  background: rgba(129,216,208,0.12);
  border: 1px solid rgba(129,216,208,0.38);
  color: #81D8D0;
  font-size: 10px;
  letter-spacing: 0.06em;
  border-radius: 2px;
}
.upc-key-form {
  margin: 14px auto;
  padding: 12px;
  background: rgba(12,18,18,0.85);
  border: 1px solid rgba(129,216,208,0.28);
  border-radius: 4px;
  max-width: 420px;
}
.upc-key-lbl {
  display: block;
  font-size: 11px;
  color: #a1a1aa;
  margin-bottom: 6px;
}
.upc-key-row {
  display: flex;
  gap: 6px;
  justify-content: center;
  flex-wrap: wrap;
}
.lko-key-form {
  display: flex;
  gap: 6px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin: 6px 0;
}

/* --- レースページ小タブ（v14-bt スタイル統一） --- */
.v14-rsub {
  margin: 0 0 18px;
  border-bottom: 1px solid var(--ln);
  background: linear-gradient(180deg, rgba(10,186,181,0.03), transparent);
}
.v14-rsub a {
  padding: 10px 16px 9px;
  font-size: 12px;
  letter-spacing: 0.04em;
  transition: color 0.15s, border-color 0.15s, background 0.15s;
}
.v14-rsub a:hover {
  color: var(--ink);
  background: rgba(129,216,208,0.04);
}
.v14-rsub a.v14-on {
  color: #effffd;
  border-bottom-color: var(--a);
  background: linear-gradient(180deg, transparent, rgba(10,186,181,0.08));
}
.v14-rsub a.v14-on i {
  color: var(--a2);
}
.v14-sttag {
  font-size: 10px;
  color: var(--a2);
  border: 1px solid rgba(129,216,208,0.3);
  padding: 0 4px;
  margin-left: 4px;
}
.v14-ckc, .v14-pvc {
  font-size: 11px;
  line-height: 1.35;
  white-space: nowrap;
}
.v14-ckc small, .v14-pvc small {
  display: block;
  font-size: 10px;
  color: var(--mut);
}
.v14-ckg {
  display: inline-block;
  font-size: 10px;
  padding: 0 5px;
  border: 1px solid var(--ln);
  color: var(--mut);
}
.v14-ckg-S, .v14-ckg-A {
  color: var(--a2);
  border-color: rgba(10,186,181,0.5);
  background: rgba(10,186,181,0.06);
}
.v14-ckg-B { color: #b8d4d1; border-color: rgba(129,216,208,0.28); background: rgba(129,216,208,0.03); }
.v14-fchip {
  display: inline-block;
  font-size: 11px;
  padding: 2px 6px;
  border: 1px solid var(--ln);
  margin: 1px 2px;
}
.v14-fchip.pos {
  color: var(--a2);
  border-color: rgba(10,186,181,0.4);
}
.v14-fchip.neg {
  color: #b9877e;
  border-color: rgba(185,135,126,0.35);
}
@media(max-width:900px){
  .v14-ckh, .v14-ckc, .v14-pvh, .v14-pvc { display: none; }
}


/* --- Header Clean Navigation & UMC/SHOP Quick Pills --- */
.hd nav {
  display: flex;
  align-items: center;
  gap: 24px;
}
.hd nav a {
  font-size: 13px;
  font-weight: 500;
  color: var(--mut);
  text-decoration: none;
  padding: 6px 2px;
  border-bottom: 2px solid transparent;
  transition: color 0.15s, border-color 0.15s;
}
.hd nav a:hover {
  color: var(--ink);
}
.hd nav a.on {
  color: var(--a2);
  border-bottom-color: var(--a);
}
.hd-tools {
  display: flex;
  align-items: center;
  gap: 8px;
}
.hd-chip {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  font-size: 11px;
  letter-spacing: 0.08em;
  color: var(--a2);
  border: 1px solid rgba(129,216,208,0.32);
  background: rgba(10,186,181,0.07);
  text-decoration: none;
  transition: background 0.15s, border-color 0.15s;
}
.hd-chip:hover, .hd-chip.on {
  background: rgba(10,186,181,0.18);
  border-color: var(--a2);
  color: #fff;
}

/* --- Unified Race Sub-Tab Bar (.v14-rsub) & Sub-Pane KPIs --- */
.v14-rsub {
  display: flex;
  align-items: center;
  gap: 4px;
  margin: 6px 0 18px;
  padding: 0 4px;
  border-bottom: 1px solid var(--ln);
  background: rgba(11,20,20,0.65);
  overflow-x: auto;
  scrollbar-width: none;
}
.v14-rsub a {
  flex: 0 0 auto;
  padding: 11px 18px 10px;
  font-size: 13px;
  font-weight: 500;
  color: var(--mut);
  text-decoration: none;
  border-bottom: 2px solid transparent;
  letter-spacing: 0.03em;
  transition: color 0.15s, border-color 0.15s, background 0.15s;
}
.v14-rsub a:hover {
  color: var(--ink);
  background: rgba(129,216,208,0.04);
}
.v14-rsub a.v14-on {
  color: var(--a2);
  font-weight: 700;
  border-bottom-color: var(--a);
  background: linear-gradient(180deg, transparent, rgba(10,186,181,0.10));
}
.v14-rsub a[data-rsub-btn="all"] {
  margin-left: auto;
  font-size: 11px;
  color: var(--dim);
}
.v14-subpane {
  margin-top: 8px;
}
.v14-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}
.v14-kpi {
  padding: 14px 16px;
  background: rgba(11,20,20,0.72);
  border: 1px solid var(--ln);
  border-top: 2px solid var(--a);
}
.v14-kpi > span {
  display: block;
  font-size: 10px;
  color: var(--mut);
  letter-spacing: 0.08em;
  margin-bottom: 4px;
}
.v14-kpi > b {
  display: block;
  font-size: 17px;
  font-weight: 700;
  color: var(--ink);
  margin-bottom: 3px;
}
.v14-kpi > b small {
  font-size: 11px;
  color: var(--mut);
  font-weight: 400;
}
.v14-kpi > small {
  display: block;
  font-size: 11px;
  color: var(--a2);
}
.v14-schip {
  display: inline-block;
  padding: 2px 7px;
  font-size: 11px;
  border: 1px solid rgba(129,216,208,0.28);
  background: rgba(10,186,181,0.06);
  color: var(--a2);
}

/* --- Dedicated Top Page (/) Nocturne Layout --- */
.v14-home {
  padding-top: 18px;
}
.v14-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.95fr);
  gap: 32px;
  align-items: stretch;
  padding: 26px 0 34px;
  border-bottom: 1px solid var(--ln);
}
.v14-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 4px 12px;
  font-size: 11px;
  letter-spacing: 0.14em;
  color: var(--a2);
  border: 1px solid rgba(129,216,208,0.38);
  background: rgba(10,186,181,0.08);
  margin-bottom: 16px;
}
.v14-pulse {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--a2);
  box-shadow: 0 0 10px var(--a2);
}
.v14-hero-l h1 {
  font: 700 38px/1.24 'Noto Sans JP', Geist, sans-serif;
  letter-spacing: -0.02em;
  margin: 0 0 14px;
  color: var(--ink);
}
.v14-hero-l h1 span {
  color: var(--a2);
  text-shadow: 0 0 24px rgba(10,186,181,0.32);
}
.v14-hero-sub {
  font-size: 14px;
  line-height: 1.8;
  color: #b7c7c5;
  margin: 0 0 22px;
  max-width: 660px;
}
.v14-hero-sub b {
  color: var(--a2);
}
.v14-hero-ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 26px;
}
.v14-cta-pri {
  display: inline-flex;
  align-items: center;
  padding: 11px 20px;
  font-size: 13px;
  font-weight: 700;
  color: #041010;
  background: var(--a2);
  border: 1px solid var(--a2);
  text-decoration: none;
  letter-spacing: 0.04em;
  box-shadow: 0 0 22px rgba(10,186,181,0.28);
}
.v14-cta-pri:hover {
  background: #9be5de;
}
.v14-cta-sec {
  display: inline-flex;
  align-items: center;
  padding: 11px 16px;
  font-size: 12px;
  color: var(--ink);
  background: rgba(11,20,20,0.8);
  border: 1px solid rgba(129,216,208,0.32);
  text-decoration: none;
}
.v14-cta-sec:hover {
  border-color: var(--a2);
  color: var(--a2);
}
.v14-hero-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  padding-top: 18px;
  border-top: 1px solid var(--ln);
}
.v14-hero-stats > div span {
  display: block;
  font-size: 10px;
  color: var(--dim);
  letter-spacing: 0.12em;
}
.v14-hero-stats > div b {
  display: block;
  font-size: 20px;
  color: var(--a2);
  margin: 2px 0;
}
.v14-hero-stats > div small {
  display: block;
  font-size: 10px;
  color: var(--mut);
}
.v14-spot {
  height: 100%;
  padding: 20px 22px;
  background: linear-gradient(160deg, rgba(11,22,22,0.92), rgba(6,10,10,0.96));
  border: 1px solid rgba(129,216,208,0.35);
  border-top: 3px solid var(--a);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.v14-spot-hd {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 11px;
  color: var(--a2);
  letter-spacing: 0.1em;
}
.v14-spot h2 {
  font: 700 24px 'Noto Sans JP', sans-serif;
  margin: 6px 0 2px;
}
.v14-spot h2 a {
  color: var(--ink);
  text-decoration: none;
}
.v14-spot h2 a:hover {
  color: var(--a2);
}
.v14-spot-meta {
  font-size: 12px;
  color: var(--mut);
  margin: 0 0 12px;
}
.v14-spot-list {
  list-style: none;
  margin: 0 0 14px;
  padding: 0;
  border-top: 1px solid var(--ln);
}
.v14-spot-list li {
  display: grid;
  grid-template-columns: 22px 26px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding: 8px 0;
  border-bottom: 1px solid var(--ln);
}
.v14-spot-list .mk {
  color: var(--a2);
  font-weight: 900;
  font-size: 15px;
}
.v14-spot-nm b {
  display: block;
  font-size: 14px;
  color: var(--ink);
}
.v14-spot-nm small {
  font-size: 11px;
  color: var(--mut);
}
.v14-spot-num {
  text-align: right;
}
.v14-spot-num b {
  display: block;
  font-size: 14px;
  color: var(--a2);
}
.v14-spot-num span {
  font-size: 11px;
  color: var(--mut);
}
.v14-spot-links {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
}
.v14-spot-links a {
  text-align: center;
  padding: 7px 4px;
  font-size: 11px;
  color: var(--a2);
  border: 1px solid rgba(129,216,208,0.28);
  background: rgba(10,186,181,0.06);
  text-decoration: none;
}
.v14-spot-links a:hover {
  background: rgba(10,186,181,0.18);
  color: #fff;
}

.v14-hsec {
  margin-top: 36px;
}
.v14-hsec-hd {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 12px;
  flex-wrap: wrap;
  padding-bottom: 10px;
  margin-bottom: 16px;
  border-bottom: 1px solid var(--ln);
}
.v14-hsec-hd h2 {
  font: 700 20px 'Noto Sans JP', sans-serif;
  margin: 2px 0 0;
}
.v14-hbtn {
  font-size: 12px;
  color: var(--a2);
  text-decoration: none;
  padding: 6px 12px;
  border: 1px solid rgba(129,216,208,0.32);
  background: rgba(10,186,181,0.06);
}
.v14-hbtn:hover {
  background: rgba(10,186,181,0.16);
}

.v14-hmgrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.v14-hmcard {
  background: rgba(10,17,17,0.82);
  border: 1px solid var(--ln);
  border-top: 2px solid var(--a);
  padding: 16px 18px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.v14-hmc-hd {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 8px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--ln);
}
.v14-hmc-v {
  display: block;
  font-size: 11px;
  color: var(--a2);
}
.v14-hmc-hd h3 {
  font: 700 17px 'Noto Sans JP', sans-serif;
  margin: 3px 0 0;
}
.v14-hmc-hd h3 a {
  color: var(--ink);
  text-decoration: none;
}
.v14-hmc-hd h3 a:hover {
  color: var(--a2);
}
.v14-hmc-c {
  font-size: 11px;
  color: var(--mut);
  white-space: nowrap;
}
.v14-hmc-p {
  list-style: none;
  margin: 10px 0 14px;
  padding: 0;
}
.v14-hmc-p li {
  display: grid;
  grid-template-columns: 20px 24px minmax(0, 1fr) auto;
  gap: 7px;
  align-items: center;
  padding: 7px 0;
  border-bottom: 1px dashed rgba(255,255,255,0.06);
}
.v14-hmc-p .mk {
  color: var(--a2);
  font-weight: 900;
}
.v14-hmc-hn b {
  display: block;
  font-size: 13px;
  color: var(--ink);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.v14-hmc-hn small {
  font-size: 10.5px;
  color: var(--mut);
}
.v14-hmc-sc {
  text-align: right;
  font-size: 11px;
  color: var(--mut);
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.v14-hmc-sc b {
  color: var(--a2);
}
.v14-hmc-tabs {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 4px;
}
.v14-hmc-tabs a {
  text-align: center;
  padding: 5px 2px;
  font-size: 10.5px;
  color: var(--mut);
  border: 1px solid var(--ln);
  background: rgba(6,9,9,0.7);
  text-decoration: none;
}
.v14-hmc-tabs a:hover {
  color: var(--a2);
  border-color: var(--a);
}

.v14-hw5 {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}
.v14-hw5-leg {
  padding: 14px;
  background: rgba(10,17,17,0.78);
  border: 1px solid var(--ln);
  border-left: 3px solid var(--a);
  text-decoration: none;
  color: var(--ink);
  transition: border-color 0.15s, background 0.15s;
}
.v14-hw5-leg:hover {
  background: rgba(10,186,181,0.08);
  border-color: var(--a2);
}
.v14-hw5-top {
  display: flex;
  justify-content: space-between;
  font-size: 10px;
  color: var(--a2);
  margin-bottom: 4px;
}
.v14-hw5-leg > b {
  display: block;
  font-size: 13px;
  margin-bottom: 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.v14-hw5-pick {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
}
.v14-hw5-pick .mk {
  color: var(--a2);
  font-weight: 900;
}
.v14-hw5-pick em {
  font-style: normal;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.v14-hw5-pick i {
  font-style: normal;
  font-size: 10.5px;
  color: var(--a2);
  margin-left: auto;
}

.v14-hnavgrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.v14-hnavcard {
  padding: 18px 20px;
  background: rgba(10,17,17,0.72);
  border: 1px solid var(--ln);
  text-decoration: none;
  color: var(--ink);
  transition: border-color 0.15s, transform 0.15s;
}
.v14-hnavcard:hover {
  border-color: var(--a);
  background: rgba(10,186,181,0.05);
}
.v14-hnavcard > span {
  display: block;
  font-size: 10px;
  color: var(--a2);
  letter-spacing: 0.12em;
  margin-bottom: 6px;
}
.v14-hnavcard h3 {
  font: 700 16px 'Noto Sans JP', sans-serif;
  margin: 0 0 6px;
  color: var(--ink);
}
.v14-hnavcard p {
  font-size: 12px;
  line-height: 1.65;
  color: var(--mut);
  margin: 0;
}

@media(max-width:1024px){
  .v14-hero, .v14-hmgrid, .v14-hw5, .v14-hnavgrid, .v14-kpis {
    grid-template-columns: minmax(0, 1fr);
  }
}


.sub-key-bar {
  padding: 6px 28px !important;
  background: rgba(10,17,17,0.92) !important;
  border-bottom: 1px solid var(--ln) !important;
}
.skb-form {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
  margin: 0 !important;
}
.skb-in, .upc-key-in, .lko-key-in {
  display: inline-block !important;
  width: 210px !important;
  height: 28px !important;
  margin: 0 !important;
  padding: 3px 10px !important;
  font-size: 11.5px !important;
  background: #081010 !important;
  border: 1px solid rgba(129,216,208,0.32) !important;
  color: var(--ink) !important;
}
.skb-btn, .lko-key-btn, .upc-key-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: 28px !important;
  margin: 0 !important;
  padding: 0 12px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  background: var(--a2) !important;
  color: #041010 !important;
  border: 1px solid var(--a2) !important;
  white-space: nowrap !important;
}

/* ===== v14 Mobile Zero-Horizontal-Scroll & Nocturne Responsive Layout (375px - 430px / 390x844) ===== */
.grain {
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  animation: none !important;
}
.v14-m-inl {
  display: inline-block;
  width: 68px;
  vertical-align: middle;
  margin-right: 8px;
}
.v14-rchip {
  display: inline-block;
  font-size: 10px;
  padding: 1px 5px;
  border: 1px solid var(--ln);
  border-radius: 2px;
  color: var(--mut);
  background: rgba(255,255,255,0.03);
  line-height: 1.3;
}
.v14-rchip.w {
  color: var(--a2);
  border-color: rgba(10,186,181,0.5);
  background: rgba(10,186,181,0.08);
}
.v14-rchip.p {
  color: #e7c873;
  border-color: rgba(231,200,115,0.4);
}

@media (max-width: 760px) {
  html, body {
    max-width: 100%;
    overflow-x: hidden;
  }
  .ticker {
    display: none !important;
  }
  .sbar {
    padding: 4px 12px !important;
    font-size: 9.5px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  /* 1. Global Header (2-row sleek layout on 390px) */
  header.hd {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    height: auto !important;
    padding: 7px 12px !important;
    gap: 6px 8px !important;
  }
  .hd .brand {
    gap: 6px !important;
  }
  .hd .brand svg {
    height: 15px !important;
  }
  .hd .brand span {
    font-size: 8.5px !important;
    padding-left: 6px !important;
  }
  .hd-tools {
    margin-left: auto !important;
    gap: 4px !important;
  }
  .hd-chip, .hd .pbadge {
    padding: 2px 6px !important;
    font-size: 9.5px !important;
  }
  .hd .who {
    display: none !important;
  }
  .hd nav {
    order: 3 !important;
    width: 100% !important;
    flex: 0 0 100% !important;
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 3px !important;
    padding-top: 5px !important;
    border-top: 1px solid var(--ln) !important;
  }
  .hd nav a {
    height: 24px !important;
    font-size: 9.5px !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 0 2px !important;
    border-radius: 2px !important;
    background: rgba(10,186,181,0.04) !important;
    border: 1px solid rgba(129,216,208,0.14) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  .hd nav a.on {
    background: rgba(10,186,181,0.18) !important;
    border-color: var(--a2) !important;
    color: var(--a2) !important;
    font-weight: 700 !important;
  }
  .hd nav a.on::after {
    display: none !important;
  }

  /* 2. Subscriber Key Bar (Compact 1-row on mobile) */
  .sub-key-bar {
    padding: 5px 12px !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 6px !important;
  }
  .skb-left {
    gap: 4px !important;
    flex: 0 0 auto !important;
  }
  .skb-badge {
    font-size: 8.5px !important;
    padding: 2px 5px !important;
  }
  .skb-txt {
    display: none !important;
  }
  .skb-form {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    display: flex !important;
    gap: 4px !important;
  }
  .skb-in {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    height: 25px !important;
    font-size: 10.5px !important;
    padding: 2px 7px !important;
  }
  .skb-btn {
    height: 25px !important;
    padding: 0 8px !important;
    font-size: 10px !important;
  }
  .skb-link {
    display: none !important;
  }

  /* 3. Page Padding & Compact Race Hero on Mobile */
  .v14-pg, main.race, main.pg-b {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  .v14-rhead {
    padding: 4px 12px 0 !important;
  }
  .v14-rhead .v14-kick {
    margin: 0 !important;
    font-size: 10px !important;
  }
  .v14-seal {
    font-size: 9.5px !important;
    gap: 3px 8px !important;
    padding: 5px 0 !important;
    margin: 2px 0 8px !important;
  }
  section.hero {
    padding: 8px 0 10px !important;
  }
  section.hero .rn {
    font-size: 68px !important;
    top: -4px !important;
    right: 0 !important;
    opacity: 0.16 !important;
  }
  section.hero .crumb {
    font-size: 9.5px !important;
    margin-bottom: 4px !important;
    gap: 6px !important;
  }
  section.hero .rno {
    font-size: 22px !important;
  }
  section.hero .rtitle {
    font-size: 22px !important;
    margin: 2px 0 4px !important;
    line-height: 1.15 !important;
  }
  section.hero .rtitle small {
    font-size: 12px !important;
  }
  section.hero .rmeta {
    font-size: 10.5px !important;
    gap: 5px !important;
    margin-top: 2px !important;
  }
  .v14-rtag {
    gap: 6px !important;
    margin-top: 5px !important;
    font-size: 9.5px !important;
  }
  .v14-cardb {
    padding: 2px 6px !important;
  }
  .lede2 {
    padding: 6px 0 !important;
    gap: 6px !important;
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
  }
  .lede2 .umc-bet-cta {
    padding: 5px 8px !important;
    font-size: 10px !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
  }
  .lede2 p {
    font-size: 10.5px !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  /* 4. Date Bar (4x2 Compact Grid on Mobile - Zero Horizontal Scroll) */
  .v14-db {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 4px !important;
    overflow: visible !important;
    padding: 6px 0 8px !important;
    border-bottom: 1px solid var(--ln) !important;
  }
  .v14-db-d {
    min-width: 0 !important;
    padding: 5px 6px !important;
    border: 1px solid var(--ln) !important;
    background: rgba(10,17,17,0.65) !important;
  }
  .v14-db-d:not(.v14-db-near) {
    display: none !important;
  }
  .v14-db-d b {
    font-size: 16px !important;
  }
  .v14-db-d small, .v14-db-d em {
    font-size: 8.5px !important;
  }
  .v14-db-d .v14-g {
    top: 3px !important;
    bottom: auto !important;
    right: 3px !important;
    font-size: 8px !important;
    padding: 0 2px !important;
  }
  .v14-db-d.v14-on {
    border-color: var(--a2) !important;
    background: rgba(10,186,181,0.15) !important;
  }
  .v14-db-d.v14-on::after {
    display: none !important;
  }

  /* 5. Race Sub-Tab Bar (3x2 + 1 Grid) & Bets 5-Tab Bar (3x2 Grid) */
  .v14-rsub {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 3px !important;
    padding: 4px !important;
    overflow: visible !important;
    margin: 6px 0 8px !important;
  }
  .v14-rsub a {
    padding: 5px 3px !important;
    font-size: 10.5px !important;
    text-align: center !important;
    justify-content: center !important;
    margin-left: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  .v14-rsub a:last-child {
    grid-column: 1 / -1;
    padding: 4px !important;
    font-size: 10px !important;
  }

  /* Compact Pace box above Shutuba on mobile */
  .v9-pace {
    padding: 6px 8px !important;
    margin-bottom: 6px !important;
  }
  .v9-pace .v9-ph {
    margin-bottom: 0 !important;
  }
  .v9-pace .v9-pt,
  .v9-pace .v9-pn {
    display: none !important;
  }
  .v14-sort {
    margin: 0 0 4px !important;
    font-size: 10px !important;
  }

  .v14-bt {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 4px !important;
    overflow: visible !important;
    border-bottom: 0 !important;
    margin-bottom: 8px !important;
  }
  .v14-bt a {
    padding: 5px 4px !important;
    font-size: 10px !important;
    justify-content: center !important;
    border: 1px solid var(--ln) !important;
    border-radius: 2px !important;
    background: rgba(10,17,17,0.75) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  .v14-bt a.v14-on {
    border-color: var(--a2) !important;
    background: rgba(10,186,181,0.16) !important;
    color: #fff !important;
  }

  /* 6. Zero Horizontal Scroll Tables (Shutuba, AI Score, Bias, Chokyo, Blood, Bets, Results) */
  .tw {
    overflow-x: visible !important;
    max-width: 100% !important;
  }
  .v14-donly {
    display: none !important;
  }
  table.rt,
  table.rt.v14-rt,
  table.v14-rtab,
  table.v14-btab,
  table.v14-restab,
  table.v14-ftab,
  table.v14-rt2 {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  table.rt .jk, table.rt .bw, .v14-ckh, .v14-ckc, .v14-pvh, .v14-pvc {
    display: none !important;
  }
  table.rt.v14-rt th,
  table.rt.v14-rt td {
    padding: 5px 3px !important;
    font-size: 10.5px !important;
  }
  table.rt.v14-rt td.mk {
    width: 16px !important;
    font-size: 13px !important;
  }
  table.rt.v14-rt .gate {
    width: 18px !important;
    height: 18px !important;
    font-size: 10px !important;
  }
  table.rt.v14-rt td.hn {
    white-space: normal !important;
    min-width: 0 !important;
    padding-right: 3px !important;
  }
  table.rt.v14-rt .nm {
    gap: 4px !important;
    flex-wrap: wrap !important;
  }
  table.rt.v14-rt .nm b {
    font-size: 12px !important;
  }
  table.rt.v14-rt .silk {
    width: 13px !important;
    height: 13px !important;
    flex-shrink: 0;
  }
  table.rt.v14-rt .sx {
    font-size: 9px !important;
  }
  table.rt.v14-rt .v14-sttag {
    font-size: 8.5px !important;
    padding: 0 3px !important;
  }
  table.rt.v14-rt .mob {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 2px 5px !important;
    font-size: 9.5px !important;
    color: var(--mut) !important;
    margin-top: 2px !important;
    line-height: 1.25 !important;
  }
  table.rt.v14-rt .v14-mob-runs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 3px !important;
    width: 100% !important;
    margin-top: 2px !important;
  }
  table.rt.v14-rt .v14-fchip {
    font-size: 8.5px !important;
    padding: 1px 4px !important;
    margin-right: 0 !important;
  }
  table.rt.v14-rt .pr .big {
    font-size: 12px !important;
  }
  table.rt.v14-rt td.v14-sc b {
    font-size: 12.5px !important;
  }
  table.rt.v14-rt td.v14-sc i {
    font-size: 8.5px !important;
  }
  .v14-m-inl {
    width: 28px !important;
    margin-right: 3px !important;
  }
  table.v14-btab th,
  table.v14-btab td {
    padding: 5px 4px !important;
    font-size: 11px !important;
    white-space: normal !important;
    word-break: break-word !important;
  }
  table.v14-btab td.mono {
    white-space: nowrap !important;
  }

  /* Upcoming Graded Stakes table on / */
  table.v14-up-tbl th,
  table.v14-up-tbl td {
    padding: 6px 4px !important;
    font-size: 11px !important;
    white-space: nowrap !important;
  }
  table.v14-up-tbl td.v14-rn {
    white-space: normal !important;
  }
  table.v14-up-tbl th:nth-child(4),
  table.v14-up-tbl td:nth-child(4) {
    display: table-cell !important;
  }

  /* Results table (/results) on mobile */
  table.v14-restab th,
  table.v14-restab td {
    padding: 6px 4px !important;
    font-size: 11px !important;
    white-space: normal !important;
  }
  table.v14-restab th:nth-child(2),
  table.v14-restab td:nth-child(2),
  table.v14-restab th:nth-child(5),
  table.v14-restab td:nth-child(5),
  table.v14-restab th:nth-child(6),
  table.v14-restab td:nth-child(6) {
    display: none !important;
  }
  .v14-o3 {
    flex-wrap: wrap !important;
    gap: 3px 8px !important;
    white-space: normal !important;
  }

  /* 7. Top Page (/) & Sub-pane KPIs on Mobile */
  .v14-sp {
    margin-top: 6px !important;
  }
  .v14-sp-hd {
    padding-bottom: 6px !important;
    margin-bottom: 8px !important;
  }
  .v14-sp-hd h2 {
    font-size: 15px !important;
  }
  .v14-sp-hd p {
    font-size: 10.5px !important;
    margin-top: 2px !important;
  }
  .v14-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
    margin: 0 0 10px !important;
  }
  .v14-kpi {
    padding: 7px 9px !important;
  }
  .v14-kpi span {
    font-size: 8.5px !important;
    margin-bottom: 2px !important;
  }
  .v14-kpi b {
    font-size: 13px !important;
    margin-bottom: 1px !important;
  }
  .v14-kpi small {
    font-size: 9px !important;
    line-height: 1.25 !important;
  }
  .v14-hero {
    padding: 16px 14px !important;
    gap: 14px !important;
  }
  .v14-hero-badge {
    font-size: 9.5px !important;
    padding: 3px 8px !important;
  }
  .v14-hero h1 {
    font-size: 22px !important;
    line-height: 1.28 !important;
  }
  .v14-hero-sub {
    font-size: 11.5px !important;
    line-height: 1.6 !important;
  }
  .v14-hero-ctas {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }
  .v14-cta-pri {
    grid-column: 1 / -1;
    justify-content: center !important;
    text-align: center !important;
    padding: 10px 12px !important;
    font-size: 12px !important;
  }
  .v14-cta-sec {
    justify-content: center !important;
    text-align: center !important;
    padding: 8px 6px !important;
    font-size: 11px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  .v14-hero-stats {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
  .v14-hero-stats > div {
    padding: 10px !important;
  }
  .v14-hero-stats b {
    font-size: 17px !important;
  }
  .v14-spot {
    padding: 14px !important;
  }
  .v14-spot h2 {
    font-size: 18px !important;
  }
  .v14-spot-list li {
    grid-template-columns: 18px 22px minmax(0, 1fr) auto !important;
    gap: 6px !important;
  }
  .v14-spot-links {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .v14-hmcard {
    padding: 14px !important;
  }
  .v14-hmc-tabs {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}


/* v14.2 Frame gate & 3-ren combo chips polish */
.gate{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;padding:0 4px;border-radius:4px;font-family:var(--mono,monospace);font-size:11.5px;font-weight:800;line-height:1;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);vertical-align:middle}
.gate.w1{box-shadow:inset 0 0 0 1px rgba(0,0,0,.25),0 0 0 1px rgba(255,255,255,.38)}
.gate.w2{box-shadow:inset 0 0 0 1.2px rgba(255,255,255,.52)}
.v14-cchips{display:inline-flex;align-items:center;gap:2px;vertical-align:middle}
.v14-cchips .gate{min-width:19px;height:19px;font-size:10.5px;border-radius:3.5px}
.v14-csep{color:var(--mut);font-size:10.5px;padding:0 1px;font-weight:700}
.v14-craw{color:var(--mut);font-size:10.5px;margin-left:3px;font-weight:600}
.v14-btype{display:inline-block;padding:2px 6px;border-radius:4px;background:rgba(129,216,208,.1);border:1px solid rgba(129,216,208,.24);color:var(--a2);font-size:10.5px;font-weight:700;white-space:nowrap}
@media(max-width:680px){
  .v14-craw{display:none}
  .v14-cchips .gate{min-width:16px;height:16px;font-size:9.5px;padding:0 2px}
}

/* ============================================================================
   v15.0: OWNER PROFILE PILL (Header Top-Right), QUICK DRAWER, CINEMATIC HERO & LOGIN GATE
   ============================================================================ */

/* 1. Header Top-Right Owner Profile Pill (アイコン＋勝負服＋肩書＋名前) */
.hd .who {
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
}
.owner-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 4px 10px 4px 6px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(11, 22, 22, 0.92), rgba(6, 11, 11, 0.96));
  border: 1px solid rgba(129, 216, 208, 0.34);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.08);
  color: var(--ink);
  cursor: pointer;
  text-decoration: none;
  transition: transform 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
  max-width: 260px;
}
.owner-pill:hover {
  border-color: rgba(229, 193, 88, 0.65);
  box-shadow: 0 6px 22px rgba(129, 216, 208, 0.18), inset 0 1px 0 rgba(229, 193, 88, 0.22);
  transform: translateY(-1px);
}
.owner-pill .ow-av,
.owner-pill .ow-silk {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.owner-pill .ow-av svg {
  border-radius: 50%;
  box-shadow: 0 0 0 1.5px rgba(229, 193, 88, 0.55), 0 2px 6px rgba(0, 0, 0, 0.6);
}
.owner-pill .ow-silk svg {
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.55));
}
.owner-pill .ow-meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  line-height: 1.15;
  min-width: 0;
}
.owner-pill .ow-ttl {
  font-size: 9.5px;
  padding: 1px 6px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(129, 216, 208, 0.18), rgba(229, 193, 88, 0.18));
  border: 1px solid rgba(229, 193, 88, 0.42);
  color: #E5C158;
  font-weight: 700;
  letter-spacing: 0.04em;
  white-space: nowrap;
  max-width: 130px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.owner-pill .ow-nick {
  font-size: 11px;
  font-weight: 700;
  color: #E8F0EF;
  letter-spacing: 0.04em;
  white-space: nowrap;
  max-width: 120px;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: 2px;
}
.owner-pill .ow-caret {
  font-size: 9px;
  color: var(--mut);
  margin-left: 2px;
}
.ow-gate-btn {
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(129, 216, 208, 0.12);
  border: 1px solid rgba(129, 216, 208, 0.35);
  color: #81D8D0;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-decoration: none;
  white-space: nowrap;
}
.ow-gate-btn:hover {
  background: rgba(129, 216, 208, 0.22);
  color: #fff;
}

/* 2. Quick Profile Drawer (#ow-drawer) */
.ow-drawer {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  padding: 64px 18px 18px;
}
.ow-drawer[hidden] {
  display: none !important;
}
.ow-dr-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(3, 6, 6, 0.72);
  backdrop-filter: blur(6px);
}
.ow-dr-card {
  position: relative;
  z-index: 1;
  width: min(430px, 100%);
  max-height: calc(100vh - 84px);
  overflow-y: auto;
  background: linear-gradient(165deg, rgba(12, 20, 20, 0.98), rgba(6, 10, 10, 0.99));
  border: 1px solid rgba(129, 216, 208, 0.32);
  border-radius: 16px;
  padding: 18px;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.75), 0 0 0 1px rgba(229, 193, 88, 0.14);
  color: var(--ink);
}
.ow-dr-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.ow-dr-kicker {
  font-size: 10px;
  color: #81D8D0;
  letter-spacing: 0.12em;
}
.ow-dr-head h3 {
  font-size: 16px;
  margin: 2px 0 0;
  color: #fff;
}
.ow-dr-close {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid var(--ln);
  color: var(--ink);
  width: 28px;
  height: 28px;
  border-radius: 50%;
  cursor: pointer;
}
.ow-dr-preview {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px;
  border-radius: 12px;
  background: rgba(129, 216, 208, 0.06);
  border: 1px solid rgba(129, 216, 208, 0.2);
  margin-bottom: 14px;
}
.ow-dr-badges {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}
.ow-dr-info {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}
.ow-dr-info b {
  font-size: 15px;
  color: #fff;
}
.ow-dr-info small {
  font-size: 10.5px;
  color: var(--mut);
}
.ow-dr-form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.ow-lbl {
  display: flex;
  flex-direction: column;
  gap: 5px;
  font-size: 11px;
  font-weight: 700;
  color: #81D8D0;
}
.ow-lbl input[type="text"] {
  padding: 8px 10px;
  border-radius: 8px;
  border: 1px solid rgba(129, 216, 208, 0.28);
  background: rgba(0, 0, 0, 0.45);
  color: #fff;
  font-size: 13px;
}
.ow-pick-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}
.ow-pick-grid.silks {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.ow-pick {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 7px 9px;
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.1);
  cursor: pointer;
  font-size: 11px;
  color: var(--ink);
}
.ow-pick input {
  display: none;
}
.ow-pick.on,
.ow-pick:has(input:checked) {
  background: rgba(129, 216, 208, 0.14);
  border-color: #81D8D0;
  box-shadow: 0 0 0 1px rgba(129, 216, 208, 0.35);
}
.ow-ttl-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.ow-ttl-opt {
  cursor: pointer;
}
.ow-ttl-opt input {
  display: none;
}
.ow-ttl-opt span {
  display: inline-block;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 11px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: var(--ink);
}
.ow-ttl-opt.on span,
.ow-ttl-opt:has(input:checked) span {
  background: rgba(229, 193, 88, 0.18);
  border-color: #E5C158;
  color: #E5C158;
  font-weight: 700;
}
.ow-dr-actions {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 4px;
}
.ow-save-btn {
  width: 100%;
  padding: 10px 14px;
  border-radius: 9px;
  background: linear-gradient(135deg, #81D8D0, #56b3aa);
  color: #041010;
  font-weight: 800;
  border: 0;
  cursor: pointer;
}
.ow-dr-links {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  font-size: 11px;
}
.ow-dr-links a {
  color: #81D8D0;
  text-decoration: none;
}

/* 3. Top Page (/) Cinematic Hero Background + Live Telemetry Wave + Owner Bar */
.v14-hero {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  border: 1px solid rgba(129, 216, 208, 0.26);
  background: #060909;
  padding: 26px 28px !important;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.65), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}
.v14-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}
.v14-hero-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 35%;
  opacity: 0.44;
  filter: saturate(1.12) contrast(1.08);
  transform: scale(1.03);
  animation: v14HeroKenBurns 22s ease-in-out infinite alternate;
}
@keyframes v14HeroKenBurns {
  0% { transform: scale(1.02) translate3d(0, 0, 0); }
  100% { transform: scale(1.08) translate3d(-1.2%, -1%, 0); }
}
.v14-hero-vignette {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(900px 420px at 78% 36%, rgba(129, 216, 208, 0.16), transparent 65%),
    linear-gradient(95deg, rgba(6, 9, 9, 0.94) 0%, rgba(6, 9, 9, 0.78) 52%, rgba(6, 9, 9, 0.58) 100%),
    linear-gradient(180deg, rgba(6, 9, 9, 0.35) 0%, rgba(6, 9, 9, 0.92) 100%);
}
.v14-quant-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0.85;
}
.v14-telemetry-svg {
  position: absolute;
  inset: auto 0 0 0;
  width: 100%;
  height: 68%;
  opacity: 0.82;
}
.v14-wave-path.w1 {
  stroke-dasharray: 14 8;
  animation: v14WaveFlow 14s linear infinite;
}
.v14-wave-path.w2 {
  animation: v14WaveFlowRev 20s linear infinite;
}
@keyframes v14WaveFlow {
  to { stroke-dashoffset: -220; }
}
@keyframes v14WaveFlowRev {
  to { stroke-dashoffset: 220; }
}
.v14-wave-node {
  filter: drop-shadow(0 0 8px rgba(129, 216, 208, 0.9));
  animation: v14NodePulse 2.6s ease-in-out infinite alternate;
}
@keyframes v14NodePulse {
  0% { opacity: 0.55; transform: scale(0.92); }
  100% { opacity: 1; transform: scale(1.18); }
}
.v14-hero-content,
.v14-spot {
  position: relative;
  z-index: 1;
}
.v14-spot {
  background: rgba(8, 14, 14, 0.82) !important;
  backdrop-filter: blur(14px);
  border: 1px solid rgba(129, 216, 208, 0.28) !important;
}

/* Owner Bar inside Hero (自分のアイコン・勝負服・肩書・ログイン導線) */
.v14-owner-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 14px;
  margin: 14px 0;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(12, 24, 24, 0.88), rgba(7, 13, 13, 0.92));
  border: 1px solid rgba(229, 193, 88, 0.35);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(10px);
}
.v14-ob-left {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.v14-ob-av,
.v14-ob-silk {
  display: inline-flex;
  flex-shrink: 0;
}
.v14-ob-av svg {
  border-radius: 50%;
  box-shadow: 0 0 0 1.5px rgba(229, 193, 88, 0.6);
}
.v14-ob-info {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}
.v14-ob-row {
  display: flex;
  align-items: center;
  gap: 7px;
  flex-wrap: wrap;
}
.v14-ob-kicker {
  font-size: 9.5px;
  color: #81D8D0;
  letter-spacing: 0.1em;
}
.v14-ob-info b {
  font-size: 13.5px;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.v14-ob-info small {
  color: var(--mut);
  font-size: 11px;
  font-weight: 400;
}
.v14-ob-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.v14-ob-btn {
  padding: 7px 12px;
  border-radius: 9px;
  background: rgba(129, 216, 208, 0.14);
  border: 1px solid rgba(129, 216, 208, 0.38);
  color: #81D8D0;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
}
.v14-ob-btn:hover {
  background: rgba(129, 216, 208, 0.25);
  color: #fff;
}
.v14-ob-btn.ghost {
  background: rgba(229, 193, 88, 0.12);
  border-color: rgba(229, 193, 88, 0.4);
  color: #E5C158;
}

/* 4. Redesigned Login Page (/login .lg-v3) */
body.login.lg-v3 {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  background: #060909;
  overflow-x: hidden;
}
.lg-v3 .lg-hd {
  position: sticky;
  top: 0;
  z-index: 50;
  width: 100%;
  box-sizing: border-box;
}
.lg-shell {
  position: relative;
  z-index: 2;
  width: min(1320px, 100%);
  margin: 0 auto;
  padding: 24px 24px 48px;
  box-sizing: border-box;
  flex: 1;
  display: flex;
  align-items: center;
}
.lg-grid {
  display: grid;
  grid-template-columns: 1.18fr 0.92fr;
  gap: 24px;
  width: 100%;
  align-items: stretch;
}
.lg-visual-col {
  display: flex;
  min-width: 0;
}
.lg-art-frame {
  position: relative;
  width: 100%;
  min-height: 540px;
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid rgba(129, 216, 208, 0.28);
  background: #050808;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 26px 28px;
  box-sizing: border-box;
  box-shadow: 0 28px 72px rgba(0, 0, 0, 0.72);
}
.lg-art-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 28%;
  opacity: 0.56;
  filter: contrast(1.08) saturate(1.1);
  transform: scale(1.02);
  animation: v14HeroKenBurns 24s ease-in-out infinite alternate;
}
.lg-art-overlay {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(640px 320px at 72% 24%, rgba(129, 216, 208, 0.18), transparent 65%),
    linear-gradient(180deg, rgba(5, 8, 8, 0.45) 0%, rgba(5, 8, 8, 0.35) 38%, rgba(5, 8, 8, 0.95) 100%);
}
.lg-quant-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: 0.82;
}
.lg-telemetry-svg {
  position: absolute;
  inset: auto 0 0 0;
  width: 100%;
  height: 65%;
  pointer-events: none;
  opacity: 0.85;
}
.lg-art-top,
.lg-art-bottom {
  position: relative;
  z-index: 2;
}
.lg-art-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.lg-gate-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(6, 12, 12, 0.78);
  border: 1px solid rgba(129, 216, 208, 0.35);
  color: #81D8D0;
  font-size: 11px;
  letter-spacing: 0.1em;
  backdrop-filter: blur(8px);
}
.lg-kicker {
  color: #81D8D0;
  font-size: 11px;
  letter-spacing: 0.16em;
  margin: 0 0 8px;
}
.lg-art-bottom h1 {
  font-size: clamp(26px, 3vw, 38px);
  line-height: 1.2;
  margin: 0 0 12px;
  color: #fff;
  font-weight: 800;
  letter-spacing: -0.01em;
}
.lg-art-bottom h1 span {
  background: linear-gradient(90deg, #81D8D0, #E5C158);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.lg-lead {
  color: rgba(232, 240, 239, 0.82);
  font-size: 13.5px;
  line-height: 1.65;
  margin: 0 0 18px;
  max-width: 58ch;
}
.lg-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.lg-metrics > div {
  padding: 12px 14px;
  border-radius: 12px;
  background: rgba(8, 15, 15, 0.82);
  border: 1px solid rgba(129, 216, 208, 0.24);
  backdrop-filter: blur(10px);
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.lg-metrics span {
  font-size: 10px;
  color: #81D8D0;
  letter-spacing: 0.08em;
}
.lg-metrics b {
  font-size: 20px;
  color: #fff;
  font-weight: 800;
}
.lg-metrics small {
  font-size: 10px;
  color: var(--mut);
}

.lg-form-col {
  display: flex;
  min-width: 0;
}
.lg-card {
  width: 100%;
  border-radius: 22px;
  padding: 28px !important;
  background: linear-gradient(165deg, rgba(12, 20, 20, 0.92), rgba(6, 10, 10, 0.96)) !important;
  border: 1px solid rgba(129, 216, 208, 0.3) !important;
  box-shadow: 0 28px 72px rgba(0, 0, 0, 0.72), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
  backdrop-filter: blur(18px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-sizing: border-box;
}
.lg-card h2 {
  font-size: 23px;
  margin: 6px 0 6px;
  color: #fff;
}
.lg-card-sub {
  font-size: 12.5px;
  line-height: 1.55;
  color: var(--mut);
  margin-bottom: 16px !important;
}
.lg-owner-preview {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 11px 13px;
  border-radius: 13px;
  background: linear-gradient(135deg, rgba(129, 216, 208, 0.09), rgba(229, 193, 88, 0.07));
  border: 1px solid rgba(229, 193, 88, 0.36);
  margin-bottom: 16px;
}
.lg-op-icons {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}
.lg-op-icons svg:first-child {
  border-radius: 50%;
  box-shadow: 0 0 0 1.5px rgba(229, 193, 88, 0.55);
}
.lg-op-meta {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  flex: 1;
}
.lg-op-badges {
  display: flex;
  align-items: center;
  gap: 6px;
}
.lg-op-tag {
  font-size: 9.5px;
  color: #81D8D0;
}
.lg-op-meta b {
  font-size: 13.5px;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.lg-op-edit {
  font-size: 10.5px;
  color: #81D8D0;
  text-decoration: none;
  white-space: nowrap;
  padding: 5px 9px;
  border-radius: 8px;
  background: rgba(129, 216, 208, 0.12);
  border: 1px solid rgba(129, 216, 208, 0.28);
}
.lg-input-lbl {
  display: block;
  font-size: 10.5px;
  color: #81D8D0;
  letter-spacing: 0.08em;
  margin-bottom: 6px;
}
.lg-submit-btn {
  width: 100%;
  margin-top: 8px;
  padding: 13px 18px !important;
  border-radius: 11px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  background: linear-gradient(135deg, #81D8D0, #52b2a9) !important;
  color: #041010 !important;
  border: 0 !important;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.lg-divider {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 16px 0 12px;
  color: var(--mut);
  font-size: 10px;
  letter-spacing: 0.12em;
}
.lg-divider::before,
.lg-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: rgba(255, 255, 255, 0.1);
}
.lg-quick-links {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 12px;
}
.lg-qbtn {
  display: block;
  text-align: center;
  padding: 10px 12px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(129, 216, 208, 0.28);
  color: #E8F0EF;
  font-size: 12px;
  text-decoration: none;
  font-weight: 600;
}
.lg-qbtn:hover {
  background: rgba(129, 216, 208, 0.12);
  color: #fff;
}
.lg-qrow {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  font-size: 11px;
}
.lg-qrow a {
  color: #81D8D0;
  text-decoration: none;
}

/* 5. MyPage (/mypage) Grid & Cards */
.mp-grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 20px;
  margin-top: 18px;
}
.mp-card {
  padding: 22px;
  border-radius: 18px;
  background: linear-gradient(165deg, rgba(12, 20, 20, 0.9), rgba(6, 10, 10, 0.95));
  border: 1px solid rgba(129, 216, 208, 0.25);
}
.mp-id-box {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  border-radius: 14px;
  background: rgba(129, 216, 208, 0.06);
  border: 1px solid rgba(229, 193, 88, 0.3);
  margin: 14px 0;
}
.mp-id-visuals {
  display: flex;
  align-items: center;
  gap: 10px;
}
.mp-id-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.mp-id-meta h3 {
  margin: 4px 0 0;
  font-size: 20px;
  color: #fff;
}
.mp-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin: 14px 0;
}
.mp-stats > div {
  padding: 10px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--ln);
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.mp-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

/* 6. Mobile Responsive (<= 900px and 390px) - Zero Horizontal Overflow */
@media (max-width: 960px) {
  .lg-grid,
  .mp-grid {
    grid-template-columns: 1fr;
  }
  .lg-art-frame {
    min-height: 340px;
    padding: 18px;
  }
}

@media (max-width: 680px) {
  .hd .who {
    gap: 4px;
  }
  .owner-pill {
    padding: 3px 8px 3px 4px;
    gap: 5px;
    max-width: 196px;
  }
  .owner-pill .ow-av svg,
  .owner-pill .ow-silk svg {
    width: 22px;
    height: 22px;
  }
  .owner-pill .ow-ttl {
    font-size: 8.5px;
    padding: 1px 5px;
    max-width: 105px;
  }
  .owner-pill .ow-nick {
    font-size: 10px;
    max-width: 95px;
  }
  .ow-gate-btn {
    display: none;
  }
  .v14-owner-bar {
    flex-direction: column;
    align-items: stretch;
    padding: 10px 12px;
    gap: 10px;
  }
  .v14-ob-left {
    gap: 9px;
  }
  .v14-ob-av svg,
  .v14-ob-silk svg {
    width: 32px;
    height: 32px;
  }
  .v14-ob-actions {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
  }
  .v14-ob-btn {
    text-align: center;
    padding: 7px 8px;
    font-size: 10.5px;
  }
  .lg-shell {
    padding: 12px 12px 36px;
  }
  .lg-art-frame {
    min-height: 280px;
    padding: 16px;
    border-radius: 16px;
  }
  .lg-art-bottom h1 {
    font-size: 22px;
  }
  .lg-lead {
    font-size: 12px;
    margin-bottom: 12px;
  }
  .lg-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
  }
  .lg-metrics > div {
    padding: 8px 6px;
  }
  .lg-metrics b {
    font-size: 15px;
  }
  .lg-metrics small {
    font-size: 9px;
  }
  .lg-card {
    padding: 18px 16px !important;
    border-radius: 16px;
  }
  .lg-owner-preview {
    padding: 9px 10px;
    gap: 8px;
    flex-wrap: wrap;
  }
  .lg-op-edit {
    font-size: 10px;
    padding: 4px 7px;
  }
}

/* Override legacy .lgf positioning inside .lg-v3 */
.lg-v3 .lgf,
.lg-v3 .lg-card {
  position: relative !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  top: auto !important;
  width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}
.lg-v3 .neon.sm {
  font-size: 12px !important;
  padding: 4px 12px !important;
  margin: 0 !important;
  letter-spacing: 0.14em;
  border-radius: 999px !important;
  border: 1px solid rgba(129, 216, 208, 0.65) !important;
  color: #81D8D0 !important;
  background: rgba(6, 14, 14, 0.78);
}
.lg-v3 .kf {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px;
  border-radius: 11px;
  background: rgba(0, 0, 0, 0.52);
  border: 1px solid rgba(129, 216, 208, 0.38);
}
.lg-v3 .kf .pre {
  color: #81D8D0;
  font-weight: 700;
  font-size: 15px;
}
.lg-v3 .kf input {
  margin: 0 !important;
  border: 0 !important;
  height: 40px !important;
  font-size: 16px !important;
  letter-spacing: 0.08em;
  color: #fff !important;
  outline: none;
}
.lg-v3 .kmeta {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  color: var(--mut);
  margin: 6px 2px 10px;
}

/* Ensure Header Top-Right Owner Profile Pill is always visible on Mobile (390px) */
@media (max-width: 680px) {
  .hd .brand span {
    display: none !important;
  }
  .hd .brand .wm {
    width: 118px !important;
    height: 18px !important;
  }
  .hd .hd-tools {
    display: none !important;
  }
  .hd .who {
    display: inline-flex !important;
    align-items: center !important;
    margin-left: auto !important;
    order: 2 !important;
    gap: 4px !important;
  }
  .owner-pill {
    display: inline-flex !important;
    padding: 3px 9px 3px 5px !important;
    gap: 6px !important;
    max-width: 224px !important;
  }
  .owner-pill .ow-av svg,
  .owner-pill .ow-silk svg {
    width: 24px !important;
    height: 24px !important;
  }
  .owner-pill .ow-ttl {
    font-size: 9px !important;
    padding: 1px 6px !important;
    max-width: 120px !important;
  }
  .owner-pill .ow-nick {
    font-size: 10px !important;
    max-width: 115px !important;
  }
}

/* Override v11.css .who .ttl-chip { display: none } so 肩書 is always visible in top-right Owner Pill */
.who .owner-pill .ow-ttl,
.owner-pill .ow-ttl {
  display: inline-block !important;
  margin: 0 !important;
  line-height: 1.25 !important;
}


/* ===== v15 Comprehensive Layout, Header, Gate, Race Table & Bets Card Polish ===== */
:root {
  --fg: var(--ink);
  --line: var(--ln);
}

/* 1. Reset global button rule from public/style.css (margin-top:8px; width:100%; height:44px; justify-content:space-between) */
.owner-pill,
.ow-dr-close,
.ow-save-btn,
.v14-ob-btn,
.skb-btn,
.lko-key-btn,
.upc-key-btn {
  margin-top: 0 !important;
  box-sizing: border-box !important;
}
.owner-pill {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: auto !important;
  height: 36px !important;
  margin: 0 !important;
  padding: 4px 11px 4px 6px !important;
  gap: 8px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, rgba(129, 216, 208, 0.13), rgba(14, 24, 24, 0.92)) !important;
  border: 1px solid rgba(129, 216, 208, 0.36) !important;
  color: var(--ink) !important;
  font-size: 12px !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}
.ow-dr-close {
  width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  justify-content: center !important;
  margin: 0 !important;
}
.v14-ob-btn {
  width: auto !important;
  height: 30px !important;
  padding: 0 12px !important;
  margin: 0 !important;
  justify-content: center !important;
}

/* 2. Global Header (.hd) PC layout */
header.hd {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  height: 60px !important;
  padding: 0 24px !important;
  box-sizing: border-box !important;
}
header.hd .brand {
  flex-shrink: 0 !important;
}
header.hd nav {
  display: flex !important;
  align-items: center !important;
  gap: 2px !important;
  height: 100% !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
}
header.hd nav a {
  padding: 0 11px !important;
  font-size: 13px !important;
  white-space: nowrap !important;
}
header.hd .hd-tools {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-shrink: 0 !important;
}
header.hd .who {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-shrink: 0 !important;
  font-size: 11px !important;
}
header.hd .who .key-login-btn,
header.hd .who a.lo {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 30px !important;
  padding: 0 10px !important;
  border: 1px solid rgba(129, 216, 208, 0.35) !important;
  border-radius: 999px !important;
  background: rgba(10, 186, 181, 0.1) !important;
  color: var(--a2) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

/* 3. Gate badge (.gate) crisp square alignment */
.gate {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  padding: 0 !important;
  border-radius: 4px !important;
  font-family: "Geist Mono", monospace !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.22) !important;
  vertical-align: middle !important;
}
.v14-cchips .gate {
  width: 20px !important;
  min-width: 20px !important;
  height: 20px !important;
  font-size: 11px !important;
  border-radius: 3.5px !important;
}
table.rt td.v14-gate-td,
table.rt td:nth-child(2) {
  width: 34px;
  text-align: center;
}

/* 4. section.v14-bets card & header (fixes border/title overlap on NAR & JRA sub-tabs) */
section.v14-bets {
  box-sizing: border-box !important;
  background: rgba(10, 18, 18, 0.72);
  border: 1px solid var(--ln);
  border-radius: 10px;
  padding: 16px 18px !important;
  margin-top: 14px;
}
section.v14-bets > header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  flex-wrap: wrap !important;
  gap: 6px 14px !important;
  padding-bottom: 10px !important;
  margin-bottom: 12px !important;
  border-bottom: 1px solid var(--ln) !important;
}
section.v14-bets > header h2 {
  font: 700 16px/1.4 "Noto Sans JP", sans-serif !important;
  color: var(--ink) !important;
  margin: 0 !important;
  letter-spacing: 0.01em !important;
}
section.v14-bets > header span {
  font-size: 11.5px !important;
  line-height: 1.45 !important;
  color: var(--mut) !important;
}

/* 5. .v14-kpis & .v14-kpi spacing & line-height */
.v14-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 10px !important;
  margin: 10px 0 14px !important;
}
.v14-kpi {
  box-sizing: border-box !important;
  padding: 12px 14px !important;
  background: rgba(10, 18, 18, 0.85) !important;
  border: 1px solid var(--ln) !important;
  border-left: 3px solid var(--a2) !important;
  border-radius: 6px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
}
.v14-kpi > span {
  font-size: 10.5px !important;
  line-height: 1.3 !important;
  color: var(--a2) !important;
  letter-spacing: 0.06em !important;
  margin: 0 !important;
}
.v14-kpi > b {
  font-size: 13.5px !important;
  line-height: 1.5 !important;
  color: var(--ink) !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 6px 10px !important;
}
.v14-kpi > small {
  font-size: 11px !important;
  line-height: 1.4 !important;
  color: var(--mut) !important;
  margin: 0 !important;
}
.v14-pod-item {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

/* 6. NAR Bets Formation Table (.v14-btab) */
table.v14-btab {
  width: 100%;
  border-collapse: collapse;
  font-size: 12.5px;
}
table.v14-btab th {
  text-align: left;
  font-size: 10.5px;
  color: var(--mut);
  font-weight: 500;
  padding: 7px 10px;
  border-bottom: 1px solid var(--ln2);
  background: rgba(12, 20, 20, 0.7);
}
table.v14-btab td {
  padding: 8px 10px;
  border-bottom: 1px solid var(--ln);
  vertical-align: middle;
}
table.v14-btab th.r,
table.v14-btab td.r {
  text-align: right;
}

/* 7. Mobile (<= 760px) Header, Hero, Gate, Table & Bets Card Refinements */
@media (max-width: 760px) {
  header.hd {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    height: auto !important;
    padding: 7px 10px !important;
    gap: 6px 6px !important;
  }
  header.hd .hd-tools {
    display: none !important;
  }
  header.hd .brand {
    order: 1 !important;
    gap: 5px !important;
  }
  header.hd .brand svg {
    height: 14px !important;
    width: auto !important;
  }
  header.hd .brand em {
    font-size: 8px !important;
    padding: 1px 4px !important;
  }
  header.hd .who {
    order: 2 !important;
    margin-left: auto !important;
    gap: 5px !important;
    max-width: calc(100% - 115px) !important;
    justify-content: flex-end !important;
  }
  header.hd .owner-pill {
    height: 28px !important;
    padding: 2px 7px 2px 4px !important;
    gap: 5px !important;
    max-width: 175px !important;
    overflow: hidden !important;
  }
  header.hd .ow-av svg,
  header.hd .ow-silk svg {
    width: 19px !important;
    height: 19px !important;
  }
  header.hd .ow-meta {
    min-width: 0 !important;
    overflow: hidden !important;
  }
  header.hd .ow-top {
    gap: 3px !important;
  }
  header.hd .ow-ttl {
    font-size: 8px !important;
    padding: 0 4px !important;
  }
  header.hd .ow-plan {
    display: none !important;
  }
  header.hd .ow-nick {
    font-size: 10px !important;
    max-width: 88px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  header.hd .who .key-login-btn,
  header.hd .who a.lo {
    height: 25px !important;
    padding: 0 7px !important;
    font-size: 9.5px !important;
    flex-shrink: 0 !important;
  }

  /* Sub-key-bar on mobile */
  .sub-key-bar {
    padding: 6px 10px !important;
  }
  .skb-in {
    width: auto !important;
    flex: 1 1 130px !important;
    min-width: 0 !important;
  }

  /* Section v14-bets on mobile */
  section.v14-bets {
    padding: 12px 11px !important;
    border-radius: 8px !important;
  }
  section.v14-bets > header {
    padding-bottom: 8px !important;
    margin-bottom: 10px !important;
    gap: 4px 8px !important;
  }
  section.v14-bets > header h2 {
    font-size: 14px !important;
    line-height: 1.4 !important;
  }
  section.v14-bets > header span {
    font-size: 10.5px !important;
    line-height: 1.4 !important;
  }
  .v14-kpis {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
  .v14-kpi {
    padding: 10px 12px !important;
  }
  .v14-kpi > b {
    font-size: 12.5px !important;
    line-height: 1.45 !important;
  }

  /* Gate badge on mobile */
  table.rt .gate {
    width: 21px !important;
    min-width: 21px !important;
    height: 21px !important;
    font-size: 11px !important;
  }
  .v14-cchips .gate {
    width: 18px !important;
    min-width: 18px !important;
    height: 18px !important;
    font-size: 10px !important;
  }

  /* JRA Hero section on mobile */
  section.hero {
    padding: 14px 12px 12px !important;
  }
  section.hero .rn {
    font-size: 64px !important;
    right: 8px !important;
    top: 4px !important;
    opacity: 0.45 !important;
  }
  section.hero h1 {
    font-size: 21px !important;
    line-height: 1.25 !important;
  }
  section.hero .neon {
    padding: 8px 10px !important;
    font-size: 11.5px !important;
  }

  /* NAR Bets table on mobile */
  table.v14-btab {
    font-size: 11px !important;
  }
  table.v14-btab th,
  table.v14-btab td {
    padding: 6px 5px !important;
  }
}

/* Fix v11.css .pr and .fx collisions on race table & 5-factor list */
table.rt th.pr,
table.rt td.pr {
  display: table-cell !important;
  text-align: right !important;
  vertical-align: middle !important;
}
.why .fx {
  position: static !important;
  inset: auto !important;
  pointer-events: auto !important;
  overflow: visible !important;
}

/* ===== Top Page (/) Hero, Telemetry Canvas, Owner Bar & Header Strip Fixes ===== */
.v14-hero {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
}
.v14-hero-bg {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  overflow: hidden !important;
}
.v14-hero-img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 35% !important;
  opacity: 0.36 !important;
  pointer-events: none !important;
}
.v14-hero-vignette {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background:
    radial-gradient(900px 420px at 78% 36%, rgba(129, 216, 208, 0.14), transparent 65%),
    linear-gradient(95deg, rgba(6, 9, 9, 0.96) 0%, rgba(6, 9, 9, 0.84) 54%, rgba(6, 9, 9, 0.68) 100%),
    linear-gradient(180deg, rgba(6, 9, 9, 0.45) 0%, rgba(6, 9, 9, 0.94) 100%) !important;
}
.v14-hero-canvas,
.v14-quant-canvas,
#hero-quant-canvas {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 2 !important;
  opacity: 0.65 !important;
  pointer-events: none !important;
  display: block !important;
}
.v14-telemetry-svg {
  position: absolute !important;
  inset: auto 0 0 0 !important;
  width: 100% !important;
  height: 62% !important;
  z-index: 2 !important;
  opacity: 0.68 !important;
  pointer-events: none !important;
}
.v14-hero-l,
.v14-hero-r,
.v14-spot {
  position: relative !important;
  z-index: 3 !important;
}
.v14-hero-toprow {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin-bottom: 14px !important;
}
.v14-hero-badge {
  margin-bottom: 0 !important;
  border-radius: 999px !important;
  padding: 5px 12px !important;
  background: rgba(6, 14, 14, 0.85) !important;
  border: 1px solid rgba(129, 216, 208, 0.42) !important;
}
.v14-telemetry-tag {
  display: inline-flex !important;
  align-items: center !important;
  font-size: 11px !important;
  color: rgba(200, 224, 221, 0.85) !important;
  letter-spacing: 0.08em !important;
  padding: 4px 10px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
}
.v14-hero-l h1 {
  text-shadow: 0 2px 16px rgba(0, 0, 0, 0.85) !important;
}
.v14-hero-sub {
  text-shadow: 0 1px 10px rgba(0, 0, 0, 0.85) !important;
  color: #cfe0de !important;
}
.v14-hero-ctas {
  margin-bottom: 16px !important;
}

/* Owner Bar inside Hero — exact class match with pages14.js */
.v14-owner-bar {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 10px 14px !important;
  margin: 0 0 16px !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, rgba(10, 20, 20, 0.92), rgba(6, 11, 11, 0.95)) !important;
  border: 1px solid rgba(229, 193, 88, 0.38) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45) !important;
}
.v14-ob-left {
  display: flex !important;
  align-items: center !important;
  gap: 11px !important;
  min-width: 0 !important;
}
.v14-ob-icons {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  flex-shrink: 0 !important;
}
.v14-ob-icons svg {
  display: block !important;
  flex-shrink: 0 !important;
}
.v14-ob-icons .ow-av-svg {
  border-radius: 50% !important;
  box-shadow: 0 0 0 1.5px rgba(229, 193, 88, 0.55) !important;
}
.v14-ob-txt {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  min-width: 0 !important;
}
.v14-ob-chips {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  flex-wrap: wrap !important;
}
.v14-ob-mode {
  display: inline-flex !important;
  align-items: center !important;
  font-size: 10px !important;
  color: #81D8D0 !important;
  padding: 1px 7px !important;
  border-radius: 999px !important;
  background: rgba(129, 216, 208, 0.12) !important;
  border: 1px solid rgba(129, 216, 208, 0.3) !important;
  letter-spacing: 0.04em !important;
}
.v14-ob-txt > b {
  font-size: 13px !important;
  color: #fff !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.v14-ob-actions {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-shrink: 0 !important;
}
.v14-ob-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: 32px !important;
  padding: 0 12px !important;
  margin: 0 !important;
  border-radius: 8px !important;
  background: rgba(129, 216, 208, 0.13) !important;
  border: 1px solid rgba(129, 216, 208, 0.38) !important;
  color: #81D8D0 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}
.v14-ob-btn.pri {
  background: linear-gradient(135deg, #81D8D0, #52b2a9) !important;
  border-color: #81D8D0 !important;
  color: #041010 !important;
}

/* Gate badge inside top page spotlight & main race cards */
.v14-spot-list .gate,
.v14-hmc-p .gate,
.v14-hw5-pick .gate {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  padding: 0 !important;
  border-radius: 5px !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  flex-shrink: 0 !important;
}

@media (max-width: 760px) {
  .sbar {
    display: none !important;
  }
  .v14-home {
    padding-top: 10px !important;
  }
  .v14-hero {
    padding: 16px 14px !important;
    gap: 16px !important;
    border-radius: 14px !important;
  }
  .v14-hero-toprow {
    gap: 6px !important;
    margin-bottom: 10px !important;
  }
  .v14-telemetry-tag {
    display: none !important;
  }
  .v14-hero-l h1 {
    font-size: 22px !important;
    line-height: 1.3 !important;
    margin-bottom: 10px !important;
  }
  .v14-hero-sub {
    font-size: 12px !important;
    line-height: 1.6 !important;
    margin-bottom: 14px !important;
  }
  .v14-hero-ctas {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px !important;
    margin-bottom: 12px !important;
  }
  .v14-hero-ctas .v14-cta-pri {
    grid-column: 1 / -1 !important;
    padding: 10px 12px !important;
    font-size: 12.5px !important;
    border-radius: 8px !important;
  }
  .v14-hero-ctas .v14-cta-sec {
    padding: 8px 8px !important;
    font-size: 11px !important;
    border-radius: 8px !important;
  }
  .v14-hero-ctas .v14-cta-sec:last-child:nth-child(even) {
    grid-column: 1 / -1 !important;
  }
  .v14-owner-bar {
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 10px 12px !important;
    gap: 9px !important;
    margin: 0 0 12px !important;
  }
  .v14-ob-left {
    gap: 9px !important;
  }
  .v14-ob-icons svg {
    width: 30px !important;
    height: 30px !important;
  }
  .v14-ob-actions {
    display: grid !important;
    grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.95fr) !important;
    gap: 6px !important;
    width: 100% !important;
  }
  .v14-ob-btn {
    width: 100% !important;
    height: 32px !important;
    padding: 0 6px !important;
    font-size: 10.5px !important;
  }
}

/* Refine Hero background telemetry & compact 1-row Owner Bar */
.v14-hero-canvas,
.v14-quant-canvas,
#hero-quant-canvas {
  opacity: 0.32 !important;
}
.v14-telemetry-svg {
  height: 44% !important;
  opacity: 0.35 !important;
}
@media (max-width: 760px) {
  .v14-telemetry-svg {
    height: 30% !important;
    opacity: 0.25 !important;
  }
  .v14-owner-bar {
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 8px 10px !important;
    gap: 8px !important;
  }
  .v14-ob-left {
    gap: 7px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }
  .v14-ob-icons {
    gap: 4px !important;
  }
  .v14-ob-icons svg {
    width: 26px !important;
    height: 26px !important;
  }
  .v14-ob-chips {
    gap: 4px !important;
    flex-wrap: nowrap !important;
  }
  .v14-ob-chips .ttl-chip {
    font-size: 9px !important;
    padding: 1px 5px !important;
  }
  .v14-ob-mode {
    display: none !important;
  }
  .v14-ob-txt > b {
    font-size: 11.5px !important;
  }
  .v14-ob-actions {
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    width: auto !important;
    flex-shrink: 0 !important;
  }
  .v14-ob-btn {
    width: auto !important;
    height: 28px !important;
    padding: 0 8px !important;
    font-size: 10px !important;
  }
  .v14-ob-btn.pri {
    display: none !important;
  }
}

/* Fix Owner Bar horizontal inline text & mobile CTA grid */
.v14-ob-txt {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}
.v14-ob-chips {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
@media (max-width: 760px) {
  .v14-hero-ctas {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }
  .v14-hero-ctas .v14-cta-pri {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .v14-hero-ctas .v14-cta-sec:nth-child(2) {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    font-size: 11.5px !important;
    padding: 9px 10px !important;
  }
  .v14-hero-ctas .v14-cta-sec:nth-child(3),
  .v14-hero-ctas .v14-cta-sec:nth-child(4) {
    grid-column: auto !important;
    width: 100% !important;
    box-sizing: border-box !important;
    font-size: 10.5px !important;
    padding: 8px 6px !important;
  }
  .v14-owner-bar {
    padding: 7px 10px !important;
    margin: 0 0 10px !important;
    border-radius: 10px !important;
  }
  .v14-ob-txt {
    gap: 5px !important;
    flex-wrap: nowrap !important;
  }
}

/* Ensure #bg canvas stays strictly behind all content and main.v14-pg sits above it */
canvas#bg {
  z-index: 0 !important;
  pointer-events: none !important;
  opacity: 0.45 !important;
}
main.v14-pg,
main.lg-shell,
footer.v14-ft {
  position: relative !important;
  z-index: 2 !important;
}
.v14-hero {
  background: #060909 !important;
  z-index: 2 !important;
}

/* ============================================================================
   7 MAJOR UPGRADES — NOCTURNE POLISH & ZERO OVERFLOW / ZERO OVERLAP SYSTEM
   ============================================================================ */

/* 1. Top Date Calendar (.v14-db): Zero Overlap & Clean Venue Display */
.v14-db {
  display: flex !important;
  gap: 6px !important;
  overflow-x: auto !important;
  scrollbar-width: none !important;
  padding: 8px 2px 12px !important;
  margin: 0 0 10px !important;
  border-bottom: 1px solid rgba(129, 216, 208, 0.16) !important;
}
.v14-db-d {
  flex: 0 0 auto !important;
  min-width: 96px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 3px !important;
  padding: 8px 11px !important;
  border: 1px solid rgba(129, 216, 208, 0.14) !important;
  border-radius: 8px !important;
  background: rgba(10, 18, 18, 0.72) !important;
  position: relative !important;
  text-decoration: none !important;
  transition: border-color 0.18s ease, background 0.18s ease, transform 0.18s ease !important;
}
.v14-db-d:hover {
  border-color: rgba(129, 216, 208, 0.45) !important;
  background: rgba(10, 186, 181, 0.09) !important;
}
.v14-db-top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 6px !important;
  width: 100% !important;
}
.v14-db-d small {
  font-size: 10.5px !important;
  color: var(--mut) !important;
  letter-spacing: 0.03em !important;
  white-space: nowrap !important;
  line-height: 1.2 !important;
}
.v14-db-d .v14-g {
  position: static !important;
  font-style: normal !important;
  font-size: 9.5px !important;
  font-weight: 700 !important;
  color: #e7c873 !important;
  background: rgba(231, 200, 115, 0.12) !important;
  border: 1px solid rgba(231, 200, 115, 0.45) !important;
  border-radius: 4px !important;
  padding: 1px 5px !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}
.v14-db-d b {
  font-size: 21px !important;
  font-weight: 700 !important;
  color: var(--ink) !important;
  line-height: 1.1 !important;
  font-variant-numeric: tabular-nums !important;
}
.v14-db-d em {
  font-style: normal !important;
  font-size: 10.5px !important;
  color: #9fb3b1 !important;
  white-space: nowrap !important;
  line-height: 1.25 !important;
  letter-spacing: 0.02em !important;
}
.v14-db-d.v14-on {
  border-color: var(--a2) !important;
  background: linear-gradient(180deg, rgba(10, 186, 181, 0.18), rgba(10, 18, 18, 0.92)) !important;
  box-shadow: 0 0 18px rgba(10, 186, 181, 0.22) !important;
}
.v14-db-d.v14-on::after {
  display: none !important;
}
.v14-db-d.v14-on em {
  color: var(--a2) !important;
  font-weight: 600 !important;
}

/* 2. Non-spoiler Result Notice Bar & Links (Upgrade 6) */
.v14-res-lnk {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 8px;
  border-radius: 5px;
  font-size: 11px;
  color: var(--a2) !important;
  background: rgba(10, 186, 181, 0.1);
  border: 1px solid rgba(129, 216, 208, 0.28);
  text-decoration: none !important;
  white-space: nowrap;
}
.v14-res-lnk:hover {
  background: rgba(10, 186, 181, 0.2);
  border-color: var(--a2);
}
.v14-res-notice {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  padding: 10px 14px;
  margin: 10px 0 12px;
  background: linear-gradient(90deg, rgba(10, 186, 181, 0.12), rgba(231, 200, 115, 0.08));
  border: 1px solid rgba(129, 216, 208, 0.32);
  border-left: 3px solid var(--a2);
  border-radius: 8px;
  font-size: 12px;
  color: var(--ink);
}
.v14-rn-acts {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.v14-rn-acts a {
  padding: 4px 10px;
  border-radius: 5px;
  background: rgba(6, 9, 9, 0.75);
  border: 1px solid rgba(129, 216, 208, 0.38);
  color: var(--a2);
  text-decoration: none;
  font-size: 11.5px;
  font-weight: 600;
  white-space: nowrap;
}
.v14-rn-acts a:hover {
  background: var(--a2);
  color: #041010;
}
.v14-res-spoiler {
  margin: 10px 0 14px;
  border: 1px solid rgba(129, 216, 208, 0.28);
  border-radius: 8px;
  background: rgba(10, 18, 18, 0.65);
  padding: 8px 12px;
}
.v14-res-spoiler > summary {
  cursor: pointer;
  color: var(--a2);
  font-size: 12px;
  font-weight: 600;
}

/* 3. Light-User Surface Summary on Shutuba (Upgrade 1) */
.v14-rx[data-rpanel="shutuba"] {
  display: block !important;
  margin-top: 18px !important;
}
.v14-qsum {
  background: linear-gradient(165deg, rgba(11, 20, 20, 0.88), rgba(6, 10, 10, 0.94));
  border: 1px solid rgba(129, 216, 208, 0.22);
  border-radius: 12px;
  padding: 16px 18px;
  margin-bottom: 18px;
}
.v14-qsum-hd {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-end !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  border-bottom: 1px solid rgba(129, 216, 208, 0.16) !important;
  padding-bottom: 10px !important;
  margin-bottom: 14px !important;
}
.v14-qsum-hd h3 {
  font: 700 16px/1.3 'Noto Sans JP', sans-serif;
  margin: 0;
  color: #effffd;
}
.v14-qsum-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.v14-qsum-links a {
  padding: 5px 11px;
  border-radius: 6px;
  font-size: 11.5px;
  color: var(--a2);
  background: rgba(10, 186, 181, 0.1);
  border: 1px solid rgba(129, 216, 208, 0.3);
  text-decoration: none;
  white-space: nowrap;
}
.v14-qsum-links a:hover {
  background: rgba(10, 186, 181, 0.22);
  border-color: var(--a2);
}
.v14-qs-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}
.v14-qs-card {
  background: rgba(6, 11, 11, 0.82);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 9px;
  padding: 11px 12px;
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
}
.v14-qs-card.v14-qs-ana {
  border-color: rgba(231, 200, 115, 0.4);
  background: linear-gradient(160deg, rgba(28, 22, 10, 0.55), rgba(6, 11, 11, 0.9));
}
.v14-qs-top {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}
.v14-qs-nm {
  font-size: 13.5px;
  color: var(--ink);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1 1 auto;
  min-width: 0;
}
.v14-qs-od {
  font-size: 11.5px;
  color: #e7c873;
  flex-shrink: 0;
}
.v14-ana-pill {
  font-size: 10px;
  font-weight: 700;
  color: #060909;
  background: #e7c873;
  padding: 1px 6px;
  border-radius: 4px;
  white-space: nowrap;
  flex-shrink: 0;
}
.v14-qs-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 11px;
  color: var(--mut);
}
.v14-qs-meta b {
  color: var(--ink);
}
.v14-qs-tx {
  font-size: 11.5px;
  color: #b8c9c7;
  margin: 0;
  line-height: 1.5;
}
.v14-light-more {
  margin-top: 14px;
  border: 1px solid rgba(129, 216, 208, 0.24);
  border-radius: 9px;
  background: rgba(6, 10, 10, 0.72);
  overflow: hidden;
}
.v14-light-more > summary {
  cursor: pointer;
  padding: 11px 14px;
  font-size: 12px;
  font-weight: 600;
  color: var(--a2);
  background: rgba(10, 186, 181, 0.07);
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.v14-light-more > summary::after {
  content: "＋ 展開する";
  font-size: 11px;
  color: var(--mut);
}
.v14-light-more[open] > summary::after {
  content: "－ 閉じる";
}
.v14-light-more-bd {
  padding: 14px;
  display: grid;
  gap: 18px;
}

/* 4. Pace & Track Visualization (`>>>` / `>>` / `>` Indicators, Upgrade 4) */
.pace {
  background: rgba(8, 14, 14, 0.86);
  border: 1px solid rgba(129, 216, 208, 0.22);
  border-radius: 10px;
  padding: 14px 16px;
  margin: 12px 0;
}
.v9-pc-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 6px 0 12px;
}
.v9-pc-badge {
  font-size: 11px;
  padding: 3px 8px;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #c9d6d4;
}
.v9-pc-badge.v9-pc-oneturn {
  color: var(--a2);
  border-color: rgba(129, 216, 208, 0.38);
  background: rgba(10, 186, 181, 0.1);
}
.v9-pc-badge.v9-pc-p {
  color: #e7c873;
  border-color: rgba(231, 200, 115, 0.38);
}
.v9-corners-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 12px;
}
.v9-corners-grid.is-single {
  grid-template-columns: minmax(0, 1fr);
}
.v9-cbox {
  background: rgba(4, 8, 8, 0.78);
  border: 1px solid rgba(129, 216, 208, 0.16);
  border-radius: 8px;
  padding: 10px 12px;
  min-width: 0;
}
.v9-chd {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
  font-size: 12px;
}
.v9-chd span {
  font-size: 10.5px;
  color: var(--mut);
}
.v9-ctrack {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  align-items: start;
}
.v9-zcol {
  background: rgba(255, 255, 255, 0.02);
  border: 1px dashed rgba(129, 216, 208, 0.15);
  border-radius: 6px;
  padding: 6px;
  min-width: 0;
}
.v9-zlbl {
  display: block;
  font-size: 10px;
  color: var(--mut);
  margin-bottom: 5px;
  text-align: center;
}
.v9-zchips {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.v9-hchip {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 3px 5px;
  border-radius: 5px;
  background: rgba(12, 22, 22, 0.9);
  border: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 11px;
  min-width: 0;
}
.v9-hchip.is-hon {
  border-color: var(--a2);
  background: rgba(10, 186, 181, 0.14);
}
.v9-hnm {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1 1 auto;
  min-width: 0;
}
.v9-harr {
  font-weight: 800;
  letter-spacing: -0.05em;
  flex-shrink: 0;
  font-size: 11px;
}
.v9-harr.arr-3 {
  color: #00f5d4;
  text-shadow: 0 0 8px rgba(0, 245, 212, 0.55);
}
.v9-harr.arr-2 {
  color: #e7c873;
}
.v9-harr.arr-1 {
  color: #9fb3b1;
}
.v9-stretch-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  font-size: 10.5px;
  color: var(--mut);
  margin-top: 8px;
  padding-top: 6px;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}
.v9-sp-details {
  margin-top: 10px;
  border: 1px solid rgba(129, 216, 208, 0.18);
  border-radius: 7px;
  background: rgba(5, 9, 9, 0.75);
}
.v9-sp-details > summary {
  cursor: pointer;
  padding: 8px 12px;
  font-size: 11.5px;
  color: var(--a2);
}
.v9-sp-list {
  padding: 8px 12px 10px;
  display: grid;
  gap: 6px;
}
.v9-sp-row {
  display: grid;
  grid-template-columns: minmax(120px, 1.1fr) minmax(130px, 1.4fr) auto;
  gap: 10px;
  align-items: center;
  padding: 5px 8px;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.02);
  font-size: 11.5px;
}
.v9-sp-h {
  display: flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
}
.v9-sp-nm {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v9-sp-bars {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.v9-arr {
  font-weight: 800;
  min-width: 28px;
}
.v9-arr-3 { color: #00f5d4; }
.v9-arr-2 { color: #e7c873; }
.v9-arr-1 { color: #9fb3b1; }
.v9-sp-track {
  flex: 1 1 auto;
  height: 6px;
  border-radius: 99px;
  background: rgba(255, 255, 255, 0.08);
  overflow: hidden;
}
.v9-sp-fill {
  display: block;
  height: 100%;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--a), #e7c873);
}
.v9-sp-nums {
  display: flex;
  gap: 10px;
  font-size: 11px;
  color: var(--mut);
  white-space: nowrap;
}

/* 5. Interactive Ticket Builder UI (`.v14-ib`, Upgrade 3) */
.v14-rx[data-rpanel="bets"] > .v14-rx {
  display: block !important;
}
.v14-ib {
  background: linear-gradient(165deg, rgba(10, 19, 19, 0.94), rgba(5, 9, 9, 0.98));
  border: 1px solid rgba(129, 216, 208, 0.32);
  border-top: 3px solid var(--a2);
  border-radius: 12px;
  padding: 18px;
  margin-bottom: 24px;
}
.v14-ib-hd {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-end !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  border-bottom: 1px solid rgba(129, 216, 208, 0.16) !important;
  padding-bottom: 12px !important;
  margin-bottom: 14px !important;
}
.v14-ib-hd h3 {
  font: 700 17px/1.3 'Noto Sans JP', sans-serif;
  margin: 0;
  color: #effffd;
}
.v14-ib-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.v14-ib-pre {
  cursor: pointer;
  padding: 5px 10px;
  border-radius: 6px;
  font-size: 11px;
  color: var(--mut);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.12);
}
.v14-ib-pre.is-on,
.v14-ib-pre:hover {
  color: #041010;
  background: var(--a2);
  border-color: var(--a2);
  font-weight: 700;
}
.v14-ib-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 24px;
  margin-bottom: 14px;
}
.v14-ib-cgroup {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.v14-ib-clbl {
  font-size: 11px;
  color: var(--mut);
  letter-spacing: 0.08em;
}
.v14-ib-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.v14-ib-pill {
  cursor: pointer;
  padding: 6px 12px;
  border-radius: 6px;
  font-size: 12px;
  color: var(--ink);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(129, 216, 208, 0.2);
}
.v14-ib-pill.is-on {
  color: #041010;
  background: var(--a2);
  border-color: var(--a2);
  font-weight: 700;
  box-shadow: 0 0 12px rgba(10, 186, 181, 0.35);
}
.v14-ib-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}
.v14-ib-kpi {
  background: rgba(4, 8, 8, 0.82);
  border: 1px solid rgba(129, 216, 208, 0.18);
  border-radius: 8px;
  padding: 10px 12px;
}
.v14-ib-kpi span {
  display: block;
  font-size: 10.5px;
  color: var(--mut);
}
.v14-ib-kpi b {
  display: block;
  font-size: 20px;
  color: #effffd;
  margin: 2px 0;
  font-variant-numeric: tabular-nums;
}
.v14-ib-kpi small {
  display: block;
  font-size: 10px;
  color: var(--dim);
}
.v14-ib-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.95fr);
  gap: 16px;
  align-items: start;
}
.v14-ib-hnm b {
  display: block;
  font-size: 12.5px;
  color: var(--ink);
}
.v14-ib-hnm small {
  font-size: 10.5px;
  color: var(--mut);
}
.v14-ib-chk {
  cursor: pointer;
  width: 30px;
  height: 28px;
  border-radius: 6px;
  border: 1px solid rgba(129, 216, 208, 0.25);
  background: rgba(255, 255, 255, 0.03);
  color: var(--mut);
  font-size: 12px;
  font-weight: 700;
}
.v14-ib-chk.is-on {
  background: var(--a2);
  border-color: var(--a2);
  color: #041010;
  box-shadow: 0 0 10px rgba(10, 186, 208, 0.4);
}
.v14-ib-right {
  background: rgba(4, 8, 8, 0.85);
  border: 1px solid rgba(129, 216, 208, 0.2);
  border-radius: 9px;
  padding: 12px;
}
.v14-ib-out-hd {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 8px;
  margin-bottom: 8px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 12px;
  color: var(--a2);
}
.v14-ib-out-list {
  display: grid;
  gap: 6px;
  max-height: 460px;
  overflow-y: auto;
}
.v14-ib-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  padding: 7px 9px;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(255, 255, 255, 0.06);
}
.v14-ib-rleft {
  min-width: 0;
  flex: 1 1 auto;
}
.v14-ib-rkey {
  display: block;
  font-size: 13px;
  color: #effffd;
}
.v14-ib-rleft small {
  display: block;
  font-size: 10.5px;
  color: var(--mut);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v14-ib-rright {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11.5px;
  white-space: nowrap;
  flex-shrink: 0;
}

/* 6. Dark Horse Signals (`/ana` & `tab=ana`, Upgrade 7) */
.v14-ana-sec,
.v14-res-tab {
  margin-top: 16px;
  background: rgba(8, 14, 14, 0.85);
  border: 1px solid rgba(129, 216, 208, 0.22);
  border-radius: 12px;
  padding: 18px;
}
.v14-sub-hd {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-end !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  border-bottom: 1px solid rgba(129, 216, 208, 0.16) !important;
  padding-bottom: 10px !important;
  margin-bottom: 12px !important;
}
.v14-sub-hd h3 {
  font: 700 17px/1.3 'Noto Sans JP', sans-serif;
  margin: 0;
  color: #effffd;
}
.v14-ana-lead {
  font-size: 12.5px;
  color: #b7c7c5;
  line-height: 1.7;
  margin: 0 0 14px;
}
.v14-ana-lead b {
  color: var(--a2);
}
.v14-ana-grid,
.v14-ana-pgrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.v14-ana-card,
.v14-ana-pcard {
  background: linear-gradient(160deg, rgba(12, 22, 22, 0.9), rgba(6, 10, 10, 0.95));
  border: 1px solid rgba(129, 216, 208, 0.24);
  border-radius: 10px;
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 9px;
  min-width: 0;
}
.v14-ana-chd,
.v14-ana-phd {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
  padding-bottom: 8px !important;
  margin-bottom: 2px !important;
}
.v14-ana-cleft,
.v14-ana-phorse {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  min-width: 0;
}
.v14-ana-cleft h4,
.v14-ana-phorse h3 {
  font: 700 15px/1.2 'Noto Sans JP', sans-serif;
  margin: 0;
}
.v14-ana-cleft h4 a,
.v14-ana-phorse h3 a {
  color: #effffd;
  text-decoration: none;
}
.v14-ana-rank,
.v14-ana-rk {
  font-size: 10.5px;
  font-weight: 700;
  color: #e7c873;
  background: rgba(231, 200, 115, 0.14);
  border: 1px solid rgba(231, 200, 115, 0.4);
  padding: 2px 6px;
  border-radius: 4px;
}
.v14-ana-cright {
  display: flex;
  gap: 10px;
  font-size: 12px;
}
.v14-ana-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.v14-ana-tag {
  font-size: 10.5px;
  padding: 3px 8px;
  border-radius: 5px;
  border: 1px solid rgba(129, 216, 208, 0.35);
  background: rgba(10, 186, 181, 0.12);
  color: var(--a2);
}
.v14-ana-tag.v14-at-aptitude {
  border-color: rgba(231, 200, 115, 0.45);
  background: rgba(231, 200, 115, 0.12);
  color: #e7c873;
}
.v14-ana-tag.v14-at-pace {
  border-color: rgba(0, 245, 212, 0.45);
  background: rgba(0, 245, 212, 0.11);
  color: #00f5d4;
}
.v14-ana-reason {
  font-size: 12px;
  color: #c9d6d4;
  margin: 0;
  line-height: 1.6;
}
.v14-ana-metrics {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  font-size: 11px;
  color: var(--mut);
  padding-top: 6px;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}
.v14-ana-metrics b {
  color: var(--ink);
}
.v14-ana-jump {
  margin-left: auto;
  color: var(--a2);
  text-decoration: none;
  font-weight: 600;
}
.v14-ana-filter {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.v14-af-btn {
  cursor: pointer;
  padding: 6px 11px;
  border-radius: 6px;
  font-size: 11.5px;
  color: var(--mut);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(129, 216, 208, 0.22);
}
.v14-af-btn.is-on {
  color: #041010;
  background: var(--a2);
  border-color: var(--a2);
  font-weight: 700;
}

/* 7. WIN5 4-Plan Strategy UI (`.v14-w5-plans`, Upgrade 5) */
.v14-w5-plans {
  margin-top: 24px;
}
.v14-w5-phd {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-end !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  border-bottom: 1px solid rgba(129, 216, 208, 0.2) !important;
  padding-bottom: 10px !important;
  margin-bottom: 16px !important;
}
.v14-w5-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.v14-w5-tab {
  cursor: pointer;
  padding: 6px 12px;
  border-radius: 6px;
  font-size: 11.5px;
  color: var(--ink);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(129, 216, 208, 0.24);
}
.v14-w5-tab.is-on {
  color: #041010;
  background: var(--a2);
  border-color: var(--a2);
  font-weight: 700;
}
.v14-w5p-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.v14-w5p-card {
  background: linear-gradient(160deg, rgba(11, 20, 20, 0.92), rgba(6, 10, 10, 0.96));
  border: 1px solid rgba(129, 216, 208, 0.24);
  border-radius: 11px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}
.v14-w5p-card.is-rec {
  border-color: var(--a2);
  box-shadow: 0 0 22px rgba(10, 186, 181, 0.14);
}
.v14-w5p-hd {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  padding-bottom: 10px !important;
}
.v14-w5p-badge {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  color: #041010;
  background: var(--a2);
  padding: 2px 8px;
  border-radius: 4px;
  margin-bottom: 5px;
}
.v14-w5p-hd h3 {
  font: 700 16px/1.3 'Noto Sans JP', sans-serif;
  margin: 0 0 4px;
  color: #effffd;
}
.v14-w5p-hd p {
  font-size: 11.5px;
  color: var(--mut);
  margin: 0;
  line-height: 1.5;
}
.v14-w5p-kpi {
  display: flex;
  gap: 14px;
  background: rgba(0, 0, 0, 0.35);
  padding: 8px 12px;
  border-radius: 7px;
  border: 1px solid rgba(255, 255, 255, 0.06);
}
.v14-w5p-kpi > div span {
  display: block;
  font-size: 10px;
  color: var(--mut);
}
.v14-w5p-kpi > div b {
  font-size: 16px;
  color: #effffd;
}
.v14-w5p-body {
  display: grid;
  gap: 8px;
}
.v14-w5p-leg {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 7px 10px;
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.025);
}
.v14-w5p-lh {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11.5px;
}
.v14-w5p-lh span {
  color: var(--a2);
  font-weight: 700;
}
.v14-w5p-lh em {
  font-style: normal;
  font-size: 10px;
  color: var(--mut);
}
.v14-w5p-horses {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.v14-w5p-h {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 8px;
  border-radius: 5px;
  background: rgba(6, 12, 12, 0.9);
  border: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 11.5px;
}
.v14-w5p-h small {
  color: var(--a2);
  font-size: 10.5px;
}

/* 8. Mobile Responsive Perfection (390px: Zero Horizontal Scroll & Zero Overlap) */
@media (max-width: 760px) {
  /* 7-item Header Nav on 390px */
  .hd nav {
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  }
  .hd nav a {
    font-size: 10.5px !important;
    padding: 8px 1px !important;
    letter-spacing: -0.02em !important;
  }

  /* Compact Date Bar on Mobile */
  .v14-db-d {
    min-width: 86px !important;
    padding: 6px 8px !important;
  }
  .v14-db-d b {
    font-size: 18px !important;
  }
  .v14-db-d em {
    font-size: 9.5px !important;
  }

  /* Shutuba Quick Summary & Pace on Mobile */
  .v14-qsum {
    padding: 12px !important;
  }
  .v14-qs-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
  .v9-corners-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .v9-ctrack {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .v9-sp-row {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 4px !important;
  }

  /* Interactive Builder on Mobile */
  .v14-ib {
    padding: 12px !important;
  }
  .v14-ib-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .v14-ib-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .v14-ib-chk {
    width: 26px !important;
    height: 26px !important;
    font-size: 11px !important;
  }

  /* Ana & WIN5 Grids on Mobile */
  .v14-ana-grid,
  .v14-ana-pgrid,
  .v14-w5p-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .v14-w5p-leg {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 6px !important;
  }
  .v14-w5p-kpi {
    width: 100% !important;
    justify-content: space-between !important;
  }

  /* Shutuba Table Mobile Column Fit (390px) */
  table.rt.v14-rt th.jk,
  table.rt.v14-rt td.jk,
  table.rt.v14-rt th.wt,
  table.rt.v14-rt td.wt,
  table.rt.v14-rt th:nth-child(4),
  table.rt.v14-rt th:nth-child(5) {
    display: none !important;
  }
  table.rt.v14-rt td.v14-sc-td .sb > i {
    display: none !important;
  }
  table.rt.v14-rt th,
  table.rt.v14-rt td {
    padding: 6px 4px !important;
    font-size: 11.5px !important;
  }
  table.rt.v14-rt td.hn .mob {
    display: block !important;
    font-size: 10px !important;
    color: var(--mut) !important;
    white-space: normal !important;
    line-height: 1.35 !important;
  }
}

/* 9. Precision Mobile Table Fit (390px: Zero internal table overflow) */
@media (max-width: 760px) {
  /* /races table (.v14-rtab) & .v14-res-lnk */
  table.v14-rtab th,
  table.v14-rtab td {
    padding: 5px 3px !important;
    font-size: 10.5px !important;
  }
  .v14-res-lnk {
    padding: 2px 5px !important;
    font-size: 9.5px !important;
    gap: 2px !important;
  }

  /* v9.js Pace & Late-Kick table (.v14-spurt-tbl) */
  table.v14-spurt-tbl th:nth-child(4),
  table.v14-spurt-tbl td:nth-child(4),
  table.v14-spurt-tbl th:nth-child(6),
  table.v14-spurt-tbl td:nth-child(6) {
    display: none !important;
  }
  table.v14-spurt-tbl th,
  table.v14-spurt-tbl td {
    padding: 5px 3px !important;
    font-size: 10.5px !important;
    white-space: normal !important;
  }
  table.v14-spurt-tbl td.hn {
    min-width: 0 !important;
  }

  /* Override generic nth-child(4/5) hiding ONLY for main shutuba table (which has no extra subclass) */
  table.rt.v14-rt.v14-ib-tbl th:nth-child(4),
  table.rt.v14-rt.v14-ib-tbl td:nth-child(4),
  table.rt.v14-rt.v14-ib-tbl th:nth-child(5),
  table.rt.v14-rt.v14-ib-tbl td:nth-child(5),
  table.rt.v14-rt.v14-score-tbl th:nth-child(4),
  table.rt.v14-rt.v14-score-tbl td:nth-child(4),
  table.rt.v14-rt.v14-score-tbl th:nth-child(5),
  table.rt.v14-rt.v14-score-tbl td:nth-child(5),
  table.rt.v14-rt.v14-bias-tbl th:nth-child(4),
  table.rt.v14-rt.v14-bias-tbl td:nth-child(4),
  table.rt.v14-rt.v14-bias-tbl th:nth-child(5),
  table.rt.v14-rt.v14-bias-tbl td:nth-child(5),
  table.rt.v14-rt.v14-chokyo-tbl th:nth-child(4),
  table.rt.v14-rt.v14-chokyo-tbl td:nth-child(4),
  table.rt.v14-rt.v14-chokyo-tbl th:nth-child(5),
  table.rt.v14-rt.v14-chokyo-tbl td:nth-child(5),
  table.rt.v14-rt.v14-blood-tbl th:nth-child(4),
  table.rt.v14-rt.v14-blood-tbl td:nth-child(4),
  table.rt.v14-rt.v14-blood-tbl th:nth-child(5),
  table.rt.v14-rt.v14-blood-tbl td:nth-child(5) {
    display: table-cell !important;
  }
  /* Re-hide .v14-donly on mobile even on sub-tables */
  table.rt.v14-rt th.v14-donly,
  table.rt.v14-rt td.v14-donly {
    display: none !important;
  }

  /* Interactive Builder table on mobile: hide EV col (5th) so 1/2/3 buttons fit comfortably */
  table.rt.v14-rt.v14-ib-tbl th:nth-child(5),
  table.rt.v14-rt.v14-ib-tbl td:nth-child(5) {
    display: none !important;
  }
  table.rt.v14-rt.v14-ib-tbl th,
  table.rt.v14-rt.v14-ib-tbl td {
    padding: 5px 2px !important;
    font-size: 10.5px !important;
  }

  /* Result tab table (.v14-res-tab table.rt.v14-rt) on mobile */
  .v14-res-tab table.rt.v14-rt th:nth-child(4),
  .v14-res-tab table.rt.v14-rt td:nth-child(4) {
    display: table-cell !important;
  }
  .v14-res-tab table.rt.v14-rt th:nth-child(5),
  .v14-res-tab table.rt.v14-rt td:nth-child(5),
  .v14-res-tab table.rt.v14-rt th:nth-child(6),
  .v14-res-tab table.rt.v14-rt td:nth-child(6),
  .v14-res-tab table.rt.v14-rt th:nth-child(8),
  .v14-res-tab table.rt.v14-rt td:nth-child(8) {
    display: none !important;
  }
}

/* Ensure [style*="display:none"] is never overridden by display:block !important */
[data-rpanel][style*="display:none"],
[data-rpanel][style*="display: none"] {
  display: none !important;
}


/* Fix Interactive Ticket Builder & Full-Width Grid Override for global button rule in public/style.css */
.v14-ib,
.v14-qsum {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.v14-rx[data-rpanel="bets"] {
  display: block !important;
}
.v14-rx[data-rpanel="bets"] > .v14-rx {
  display: grid !important;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr) !important;
  gap: 28px !important;
}
@media (max-width: 1100px) {
  .v14-rx[data-rpanel="bets"] > .v14-rx {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
.v14-ib button,
.v14-ib-pre,
.v14-ib-pill,
.v14-ib-chk {
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  white-space: nowrap !important;
}
.v14-ib-pre {
  padding: 5px 11px !important;
  border-radius: 6px !important;
  font-size: 11.5px !important;
  line-height: 1.2 !important;
}
.v14-ib-pill {
  padding: 6px 12px !important;
  border-radius: 6px !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
}
.v14-ib-chk {
  min-width: 28px !important;
  height: 26px !important;
  padding: 2px 7px !important;
  border-radius: 5px !important;
  font-size: 11px !important;
  line-height: 1 !important;
}
@media (max-width: 760px) {
  .v14-ib-chk {
    min-width: 24px !important;
    height: 24px !important;
    padding: 2px 5px !important;
    font-size: 10.5px !important;
  }
}

/* 10. Pace SVG Cards & Spurt/Stamina Badges (.v14-pace-sec) */
.v14-pace-sec {
  background: rgba(8, 14, 14, 0.86);
  border: 1px solid rgba(129, 216, 208, 0.22);
  border-radius: 10px;
  padding: 16px;
  margin: 12px 0;
}
.v14-course-chip {
  font-size: 11px;
  padding: 3px 10px;
  border-radius: 99px;
  background: rgba(10, 186, 181, 0.12);
  border: 1px solid rgba(129, 216, 208, 0.35);
  color: var(--a2);
}
.v14-pace-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 12px;
}
.v14-pace-card {
  background: rgba(4, 8, 8, 0.82);
  border: 1px solid rgba(129, 216, 208, 0.18);
  border-radius: 8px;
  padding: 10px 12px;
  min-width: 0;
}
.v14-pace-card-hi {
  border-color: rgba(129, 216, 208, 0.38);
}
.v14-pace-chd {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 6px;
}
.v14-pace-chd b {
  font-size: 12.5px;
  color: #effffd;
}
.v14-pace-chd small {
  font-size: 10.5px;
  color: var(--mut);
}
.v14-pace-svg {
  width: 100%;
  height: auto;
  display: block;
}
.v14-spurt-badge {
  display: inline-block;
  font-weight: 800;
  padding: 1px 6px;
  border-radius: 4px;
  margin-right: 4px;
  font-size: 11px;
}
.v14-spurt-badge.sp3 {
  color: #00f5d4;
  background: rgba(0, 245, 212, 0.14);
  border: 1px solid rgba(0, 245, 212, 0.45);
}
.v14-spurt-badge.sp2 {
  color: #e7c873;
  background: rgba(231, 200, 115, 0.14);
  border: 1px solid rgba(231, 200, 115, 0.45);
}
.v14-spurt-badge.sp1 {
  color: #9fb3b1;
  background: rgba(159, 179, 177, 0.12);
  border: 1px solid rgba(159, 179, 177, 0.3);
}
.v14-stam-badge {
  display: inline-block;
  font-weight: 700;
  padding: 1px 5px;
  border-radius: 3px;
  font-size: 10.5px;
  margin-right: 4px;
  border: 1px solid rgba(129, 216, 208, 0.3);
  color: var(--a2);
}
.v14-stam-badge.st-S {
  color: #041010;
  background: var(--a2);
}
@media (max-width: 760px) {
  .v14-pace-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* === V16 OFFICIAL GATE COLORS & LUXURY SHUTUBA RESTORATION === */
/* Official JRA/NAR 8-Frame Gate Badges */
.gate, .gt {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  padding: 0 5px;
  border-radius: 5px;
  font-weight: 800;
  font-size: 12px;
  line-height: 1;
  box-shadow: 0 1px 3px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.18);
  border: 1px solid rgba(255,255,255,.16);
  vertical-align: middle;
}
.gate.w1, .gt.f1, .v14-wk.w1 { background: #f8fafc !important; color: #0f172a !important; border-color: #cbd5e1 !important; }
.gate.w2, .gt.f2, .v14-wk.w2 { background: #18181b !important; color: #ffffff !important; border-color: #52525b !important; }
.gate.w3, .gt.f3, .v14-wk.w3 { background: #dc2626 !important; color: #ffffff !important; border-color: #f87171 !important; }
.gate.w4, .gt.f4, .v14-wk.w4 { background: #2563eb !important; color: #ffffff !important; border-color: #60a5fa !important; }
.gate.w5, .gt.f5, .v14-wk.w5 { background: #facc15 !important; color: #0f172a !important; border-color: #fde047 !important; }
.gate.w6, .gt.f6, .v14-wk.w6 { background: #16a34a !important; color: #ffffff !important; border-color: #4ade80 !important; }
.gate.w7, .gt.f7, .v14-wk.w7 { background: #ea580c !important; color: #ffffff !important; border-color: #fb923c !important; }
.gate.w8, .gt.f8, .v14-wk.w8 { background: #ec4899 !important; color: #ffffff !important; border-color: #f472b6 !important; }

/* Waku + Gate paired badge */
.v14-wg {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}
.v14-wk {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 19px;
  height: 22px;
  border-radius: 4px;
  font-size: 10.5px;
  font-weight: 800;
  opacity: 0.92;
  border: 1px solid rgba(255,255,255,.16);
}
.v14-gate-td {
  white-space: nowrap;
  width: 64px;
}

/* Prediction Mark Badges (◎ ○ ▲ ☆ △) */
.v14-mkb {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  font-weight: 900;
  font-size: 14px;
  line-height: 1;
  vertical-align: middle;
}
.v14-mk-hon {
  background: rgba(255, 77, 121, 0.18);
  color: #ff4d79;
  border: 1.5px solid rgba(255, 77, 121, 0.65);
  box-shadow: 0 0 10px rgba(255, 77, 121, 0.25);
}
.v14-mk-tai {
  background: rgba(56, 239, 255, 0.16);
  color: #38efff;
  border: 1.5px solid rgba(56, 239, 255, 0.6);
  box-shadow: 0 0 8px rgba(56, 239, 255, 0.2);
}
.v14-mk-tan {
  background: rgba(250, 204, 21, 0.16);
  color: #facc15;
  border: 1.5px solid rgba(250, 204, 21, 0.6);
}
.v14-mk-hos {
  background: rgba(216, 180, 254, 0.16);
  color: #d8b4fe;
  border: 1.5px solid rgba(216, 180, 254, 0.55);
}
.v14-mk-ren, .v14-mk-etc {
  background: rgba(129, 216, 208, 0.12);
  color: #81D8D0;
  border: 1px solid rgba(129, 216, 208, 0.4);
}
.v14-mk-none {
  display: inline-block;
  width: 26px;
  height: 26px;
}

/* Running Style Badges (逃げ / 先行 / 差し / 追込) */
.v14-sttag {
  display: inline-flex;
  align-items: center;
  padding: 2px 7px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.03em;
  margin-left: 6px;
}
.v14-st-nige { background: rgba(244, 63, 94, 0.16); color: #fb7185; border: 1px solid rgba(244, 63, 94, 0.4); }
.v14-st-senko { background: rgba(10, 186, 181, 0.16); color: #5eead4; border: 1px solid rgba(10, 186, 181, 0.42); }
.v14-st-sashi { background: rgba(234, 179, 8, 0.16); color: #fde047; border: 1px solid rgba(234, 179, 8, 0.4); }
.v14-st-oikomi { background: rgba(168, 85, 247, 0.16); color: #d8b4fe; border: 1px solid rgba(168, 85, 247, 0.4); }

/* Luxury Shutuba Table Rows & Bars */
.rt.v14-rt tbody tr.top.hon {
  background: linear-gradient(90deg, rgba(255, 77, 121, 0.09) 0%, rgba(10, 186, 181, 0.04) 45%, transparent 100%);
}
.rt.v14-rt tbody tr.tai {
  background: linear-gradient(90deg, rgba(56, 239, 255, 0.07) 0%, transparent 65%);
}
.rt.v14-rt tbody tr.tan {
  background: linear-gradient(90deg, rgba(250, 204, 21, 0.06) 0%, transparent 60%);
}
.rt.v14-rt td.hn .nm {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.rt.v14-rt td.hn .nm b {
  font-size: 14px;
  font-weight: 700;
  color: #f4f7f7;
}
.rt.v14-rt td.hn .sx {
  font-size: 11px;
  color: var(--mut);
}
.rt.v14-rt td.hn .ped {
  font-size: 11px;
  color: #8fa3a3;
  margin-top: 2px;
}
.rt.v14-rt td.jk i, .rt.v14-rt td.bw i {
  display: block;
  font-style: normal;
  font-size: 11px;
  color: var(--mut);
}
.rt.v14-rt td.bw i.up { color: #fb7185; }
.rt.v14-rt td.bw i.dn { color: #38bdf8; }
.rt.v14-rt td.pr .big {
  font-family: var(--mono);
  font-size: 14px;
  font-weight: 800;
  color: #e2f8f6;
}
.v14-pbar, .v14-scbar {
  width: 64px;
  height: 4px;
  background: rgba(255,255,255,.08);
  border-radius: 3px;
  overflow: hidden;
  margin-top: 3px;
  margin-left: auto;
}
.v14-pbar i {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #0ABAB5, #81D8D0);
  border-radius: 3px;
}
.v14-scbar i {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #eab308, #81D8D0);
  border-radius: 3px;
}
.v14-evpill {
  display: inline-flex;
  align-items: center;
  padding: 2px 7px;
  border-radius: 5px;
  font-family: var(--mono);
  font-size: 12px;
  font-weight: 700;
  background: rgba(255,255,255,.04);
  color: #94a3b8;
  border: 1px solid rgba(255,255,255,.08);
}
.v14-evpill.ok {
  background: rgba(129, 216, 208, 0.13);
  color: #81D8D0;
  border-color: rgba(129, 216, 208, 0.38);
}
.v14-evpill.hi {
  background: rgba(250, 204, 21, 0.18);
  color: #fde047;
  border-color: rgba(250, 204, 21, 0.55);
  box-shadow: 0 0 8px rgba(250, 204, 21, 0.2);
}
.v14-ib-rkey {
  display: inline-flex;
  align-items: center;
  gap: 3px;
}

/* === V16 SMART ANA SIGNAL LIST === */
.v14-ana-slist {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 14px;
}
.v14-ana-srow {
  display: grid;
  grid-template-columns: 280px 1fr auto;
  align-items: center;
  gap: 20px;
  padding: 16px 20px;
  background: linear-gradient(135deg, rgba(13, 21, 22, 0.92), rgba(8, 13, 14, 0.96));
  border: 1px solid rgba(129, 216, 208, 0.16);
  border-radius: 10px;
  transition: border-color 0.18s ease, transform 0.18s ease;
}
.v14-ana-srow:hover {
  border-color: rgba(129, 216, 208, 0.42);
}
.v14-ana-sleft {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.v14-ana-rbadge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 8px;
  border-radius: 6px;
  background: rgba(10, 186, 181, 0.15);
  border: 1px solid rgba(129, 216, 208, 0.35);
  color: #81D8D0;
  font-size: 11.5px;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
  flex-shrink: 0;
}
.v14-ana-shinfo {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}
.v14-ana-shname {
  font-size: 16px;
  font-weight: 800;
  color: #f4f7f7;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.v14-ana-shname:hover {
  color: #81D8D0;
}
.v14-ana-shsub {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11.5px;
  color: var(--mut);
  white-space: nowrap;
}
.v14-ana-rname {
  color: #64748b;
  font-size: 11px;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 110px;
}
.v14-ana-smid {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.v14-ana-spills {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.v14-ana-pilltag {
  display: inline-flex;
  align-items: center;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.v14-ana-pilltag.v14-at-aptitude {
  background: rgba(10, 186, 181, 0.16);
  color: #81D8D0;
  border: 1px solid rgba(129, 216, 208, 0.42);
}
.v14-ana-pilltag.v14-at-pace {
  background: rgba(250, 204, 21, 0.15);
  color: #fde047;
  border: 1px solid rgba(250, 204, 21, 0.42);
}
.v14-ana-pilltag.v14-at-ev {
  background: rgba(244, 63, 94, 0.16);
  color: #fb7185;
  border: 1px solid rgba(244, 63, 94, 0.42);
}
.v14-ana-pilltag.v14-at-train {
  background: rgba(168, 85, 247, 0.16);
  color: #d8b4fe;
  border: 1px solid rgba(168, 85, 247, 0.42);
}
.v14-ana-sreason {
  margin: 0;
  font-size: 13px;
  color: #cbd5e1;
  line-height: 1.45;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.v14-ana-sright {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
}
.v14-ana-sstat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  min-width: 72px;
}
.v14-ana-sstat span {
  font-size: 10px;
  color: var(--mut);
}
.v14-ana-sstat b {
  font-size: 17px;
  font-weight: 800;
  color: #f1f5f9;
}
.v14-ana-sstat b small {
  font-size: 11px;
  font-weight: 600;
  margin-left: 1px;
  color: var(--mut);
}
.v14-ana-sstat.is-hi b {
  color: #fde047;
}
.v14-ana-gobtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 7px 13px;
  border-radius: 7px;
  background: rgba(129, 216, 208, 0.12);
  border: 1px solid rgba(129, 216, 208, 0.35);
  color: #81D8D0;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}
.v14-ana-gobtn:hover {
  background: rgba(129, 216, 208, 0.24);
}
@media (max-width: 860px) {
  .v14-ana-srow {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 14px 15px;
  }
  .v14-ana-sreason {
    white-space: normal;
  }
  .v14-ana-sright {
    justify-content: space-between;
    padding-top: 8px;
    border-top: 1px solid rgba(255,255,255,0.06);
  }
  .v14-ana-sstat {
    align-items: flex-start;
  }
}

body.th-magenta{--a:#E0338F;--a2:#FF7AC6;--ag:224,51,143}
body.th-amber{--a:#E8920C;--a2:#FFC15E;--ag:232,146,12}
body.th-lime{--a:#6DBE2A;--a2:#B8F07A;--ag:109,190,42}
body.th-platinum{--a:#9FAAB3;--a2:#EEF3F6;--ag:200,212,220}
body.th-crimson{--a:#C2273B;--a2:#FF6B7D;--ag:194,39,59}
.plate.p-amber{color:#FFC15E;text-shadow:0 0 6px #FFC15E99;border-color:#FFC15E88;box-shadow:0 0 10px #FFC15E33,inset 0 0 8px #FFC15E22}
.plate.p-tube{color:#81D8D0;text-shadow:0 0 6px #81D8D099;border-color:#81D8D088;box-shadow:0 0 10px #81D8D033,inset 0 0 8px #81D8D022}
.plate.p-flicker{color:#FF7AC6;text-shadow:0 0 6px #FF7AC699;border-color:#FF7AC688;box-shadow:0 0 10px #FF7AC633,inset 0 0 8px #FF7AC622}.plate.p-flicker{animation:fl 3.2s infinite}
.plate.p-gold{color:#F2D27A;text-shadow:0 0 6px #F2D27A99;border-color:#F2D27A88;box-shadow:0 0 10px #F2D27A33,inset 0 0 8px #F2D27A22}