/* tournaments */
.tn-art{left:0;top:0;right:0;bottom:auto;height:340px;background-image:url(../assets/bg_tourney.jpg);background-position:center 38%}
.tn-ribbon{position:absolute;left:350px;top:10px;width:560px;height:112px;text-align:center;color:var(--cream);background:linear-gradient(#b8352c,#8a1f1a);border:3px solid #4a1612;border-radius:30px 30px 30px 30px;box-shadow:0 4px 0 rgba(0,0,0,.45),inset 0 0 0 3px rgba(255,230,190,.35);padding-top:4px}
.tn-ribbon small{display:block;font-size:19px;opacity:.95}
.tn-ribbon h1{font-size:56px;line-height:.95;text-shadow:0 3px 0 rgba(60,10,5,.6)}
.tn-ribbon h1 .kj{font-size:26px;vertical-align:middle;margin-left:6px;opacity:.9}
.tn-loc{display:inline-block;margin-top:2px;padding:0 22px;background:var(--cream);color:var(--ink);border:2px solid var(--brown);border-radius:6px;font-size:18px}
.tn-dates{position:absolute;left:922px;top:10px;width:186px;text-align:center;background:rgba(255,246,223,.92);border:3px solid var(--brown);border-radius:10px;padding:5px 4px 6px;font-size:18px;line-height:1.1;box-shadow:0 3px 0 rgba(0,0,0,.4)}
.tn-stamp{display:inline-block;margin-top:5px;padding:2px 14px;background:#a82a24;color:var(--cream);font-family:'Brush';font-size:25px;border-radius:6px;transform:rotate(-2deg);border:2px solid #5a1612}
.tn-stamp.up{background:#2c4a7a;border-color:#0f1d35}
.tn-cta{position:absolute;left:330px;top:206px;width:610px;padding:6px 16px 7px;background:linear-gradient(#b8352c,#8a1f1a);color:var(--cream);border:3px solid #4a1612;border-radius:10px;box-shadow:0 4px 0 rgba(0,0,0,.45),0 0 18px rgba(255,200,80,.6);cursor:pointer;z-index:2}
.tn-cta.calm{background:rgba(255,246,223,.94);color:var(--ink);border-color:var(--brown);box-shadow:0 4px 0 rgba(0,0,0,.4);cursor:default}
.tn-cta b{display:flex;align-items:center;gap:8px;font-family:'Brush';font-weight:400;font-size:27px;line-height:1.05}
.tn-cta svg{width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:2.4;flex:none}
.tn-cta span{font-size:17px}
.tn-ovp .pb{padding:6px 10px}
.tn-ov{width:100%;border-collapse:collapse;font-size:17px}.tn-ov td{padding:2px 4px;border-bottom:1px dotted #bfa77a;vertical-align:top;line-height:1.05}.tn-ov td:first-child{width:96px;color:#4e3a28}
.tn-ourh{font-family:'Brush';font-size:22px;margin:4px 0 0;color:#8a1f1a}
.tn-ovp .pb{display:flex;flex-direction:column}.tn-rks{flex:1;min-height:0}
.tn-rk{display:flex;align-items:center;gap:6px;font-size:16px;padding:1px 2px;border-bottom:1px dotted #d0b98a;line-height:1.1}
.tn-rk b{font-weight:400;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tn-rk span{color:#4e3a28;white-space:nowrap}
.tn-rk i{font-style:normal;font-size:14px;padding:0 6px;border-radius:5px;color:#fff;background:#4d8a30}.tn-rk i.out{background:#8a7a60}.tn-rk i.bad{background:#b3382f}
.tn-st{width:100%;border-collapse:collapse;font-size:17px}
.tn-st th{font-weight:400;text-align:left;color:#6a5640;border-bottom:2px solid #a98d63;padding:1px 4px}
.tn-st td{padding:1px 4px;border-bottom:1px dotted #bfa77a;line-height:1.15;white-space:nowrap}
.tn-st .n{width:22px;color:#6a5640}.tn-st .rk{font-size:15px;color:#4e3a28;width:44px}.tn-st .nm{font-family:'Brush';font-size:20px;max-width:130px;overflow:hidden;text-overflow:ellipsis}.tn-st .r{text-align:right}
.tn-st tr.mine td,table.t tr.mine td,.be tr.mine td{background:linear-gradient(#ffe58a,#f6c94b)}
.tn-st.big{font-size:21px}.tn-st.big td{padding:4px 8px}.tn-st.big .nm{font-size:24px;max-width:none}
.tn-wait{text-align:center;padding:12px 8px;font-size:20px}.tn-wait .big{font-size:80px;line-height:1;color:#8a1f1a}.tn-wait p{margin:8px 0}
/* banzuke */
.tn-tabs{display:flex;gap:3px;margin:0 0 4px}
.tn-tabs button{flex:1;display:flex;flex-direction:column;align-items:center;padding:1px 0 2px;border:2px solid var(--brown);border-radius:7px;background:rgba(255,248,225,.7);line-height:1}
.tn-tabs button .kj{font-size:17px}.tn-tabs button small{font-size:11px;letter-spacing:-.3px;color:#6a5640;white-space:nowrap}
.tn-tabs button.on{background:linear-gradient(#2c4a7a,#1c3156);color:var(--cream);border-color:#0f1d35}.tn-tabs button.on small{color:#d8e2f4}
.tn-bz{height:326px;margin:0 -4px;padding:0 4px}
.tn-bz[style]{height:auto}
.tzh{display:grid;grid-template-columns:1fr 34px 1fr;font-family:'Brush';font-size:20px;text-align:center;color:var(--cream);position:sticky;top:0;z-index:1}
.tzh span{background:linear-gradient(#2c4a7a,#1c3156);border-radius:6px;margin:0 2px;line-height:1.2}.tzh span:last-child{grid-column:3}
.tzh span:first-child{grid-column:1}
.tzr{display:grid;grid-template-columns:1fr 34px 1fr;align-items:stretch;border-bottom:1px dotted #bfa77a}
.tzm{display:grid;place-items:center;font-family:'Brush';font-size:20px;color:#8a1f1a;background:rgba(168,42,36,.08)}
.tzr>div:not(.tzm){display:flex}.tzc{padding:2px 5px;line-height:1.05;flex:1;min-width:0}.tzc small{display:block;font-size:14px;color:#4e3a28;white-space:nowrap}
.tzc span{display:flex;align-items:baseline;gap:4px;white-space:nowrap}.tzc b{font-family:'Brush';font-weight:400;font-size:21px;overflow:hidden;text-overflow:ellipsis}.tzc i{font-style:normal;font-size:16px;color:#4e3a28}
.tzc.mine{background:linear-gradient(#ffe58a,#f6c94b);outline:2px solid #b8891f;outline-offset:-2px;border-radius:6px}
/* next bout */
.tn-hot{box-shadow:0 4px 0 rgba(0,0,0,.4),0 0 0 3px #f6c94b,0 0 22px 4px rgba(246,201,75,.7)}
.tn-hot.flash{animation:tnflash .8s ease-out 2}
@keyframes tnflash{50%{box-shadow:0 4px 0 rgba(0,0,0,.4),0 0 0 6px #fff,0 0 34px 10px rgba(255,255,255,.9)}}
.tn-hot .ph .sub .btn{min-height:28px;font-size:18px;padding:1px 8px;line-height:1.1}
.nb-top{display:flex;align-items:stretch;justify-content:space-between;position:relative;height:104px}
.nb-p{width:152px;height:104px;border:3px solid var(--brown);overflow:hidden;position:relative}
.nb-p.a{background:repeating-conic-gradient(from 0deg at 50% 100%,#d8402f 0 8deg,#f4e6c4 8deg 16deg)}
.nb-p.b{background:repeating-conic-gradient(from 0deg at 50% 100%,#3a62a8 0 8deg,#e8eef8 8deg 16deg)}
.nb-p img{position:absolute;left:50%;top:0;height:100%;width:auto;transform:translateX(-50%);max-width:none}
.nb-vs{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-8deg);font-size:46px;color:#fff;background:#a82a24;padding:0 8px;border:3px solid #fff;border-radius:6px;text-shadow:0 2px 0 #4a1612;z-index:2;line-height:1.05}
.nb-names{display:grid;grid-template-columns:1fr 1fr;text-align:center;margin-top:3px;line-height:1.05}
.nb-names b{display:block;font-family:'Brush';font-weight:400;font-size:25px}.nb-names span{font-size:15px;color:#4e3a28}
.nb-st{width:100%;border-collapse:collapse;margin-top:3px;border:2px solid var(--brown);background:rgba(255,248,225,.6);font-size:17px}
.nb-st td,.nb-st th{padding:0 6px;font-weight:400;border-bottom:1px dotted #bfa77a;line-height:1.1}
.nb-st td{text-align:center;width:34%}.nb-st th{text-align:center;color:#6a5640;width:32%}
.nb-st td.hi{color:#2f7a22;font-weight:700}.nb-st td.lo{color:#6a5640}
.nb-odds{display:flex;justify-content:space-between;align-items:center;margin-top:4px;font-size:17px}.nb-odds b{font-weight:400;font-family:'Brush';font-size:22px;color:#8a1f1a}
.nb-odds i{font-style:normal;background:#2c4a7a;color:#fff;padding:0 8px;border-radius:5px;font-size:15px}
.nb-btns{display:flex;gap:6px;margin-top:5px}.nb-btns .btn{flex:1;min-height:36px;font-size:22px;padding:2px 4px}
/* daily cards */
.dc-nav{display:flex;align-items:center;justify-content:center;gap:12px;font-family:'Brush';font-size:25px;margin-bottom:4px}
.dc-nav small{font-family:'Hand';font-size:17px;color:#4e3a28}
.dc-nav button{width:40px;height:30px;border:2px solid var(--brown);border-radius:7px;background:rgba(255,248,225,.8);font-size:18px}.dc-nav button:disabled{opacity:.35;cursor:default}
.dc-list{height:324px;margin:0 -4px;padding:0 4px}
.dc-r{display:grid;grid-template-columns:1fr 68px 1fr;align-items:center;padding:3px 3px;margin-bottom:4px;border:2px solid #b49a6c;border-radius:8px;background:rgba(255,248,225,.55)}
.dc-r.mine{background:linear-gradient(#ffe58a,#f6c94b);border-color:#b8891f}
.dc-r.pend{box-shadow:0 0 0 2px #a82a24}
.dc-s{display:flex;align-items:center;gap:5px;min-width:0;line-height:1.05}.dc-s .face{flex:none}.dc-s span{min-width:0}
.dc-s b{display:block;font-family:'Brush';font-weight:400;font-size:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dc-s small{font-size:14px;color:#4e3a28;white-space:nowrap}
.dc-s.won b{color:#2f7a22}
.dc-m{text-align:center;line-height:1}.dc-m b{font-family:'Brush';font-weight:400;font-size:21px;color:#8a1f1a}.dc-m small{display:block;font-size:14px;color:#4e3a28}.dc-m .pd{color:#a82a24;font-weight:700}
/* outcome */
.tn-oc .pb{padding:6px 8px;display:flex;flex-direction:column;gap:6px}
.oc{flex:1;border:2px solid #b49a6c;border-radius:8px;padding:3px 8px;font-size:17px;line-height:1.1;display:flex;flex-direction:column;justify-content:space-around}
.oc.w{background:linear-gradient(rgba(94,160,58,.28),rgba(255,248,225,.4))}.oc.l{background:linear-gradient(rgba(192,57,43,.25),rgba(255,248,225,.4))}
.oc h4{margin:0;font-family:'Brush';font-weight:400;font-size:21px}.oc.w h4{color:#2f7a22}.oc.l h4{color:#a82a24}
.oc div{display:flex;justify-content:space-between;gap:6px}.oc div span{color:#4e3a28;white-space:nowrap}.oc b{font-weight:400}
.oc .ri{display:block}.oc .ri span{display:inline;margin-right:4px}.oc em{font-style:normal}
.tn-prize{background:linear-gradient(#4a2a6a,#2c1a46);border-color:#1b0f2c}
.tn-prize .pb{padding:4px 8px;text-align:center;color:var(--cream)}.tn-prize small{font-size:17px;color:#f6d98a}
.tn-prize .v{display:flex;align-items:center;justify-content:center;gap:8px}.tn-prize svg{width:36px;height:36px;stroke:#f6c94b;fill:none;stroke-width:2}.tn-prize b{font-weight:400;font-size:42px;line-height:1.1;text-shadow:0 2px 0 rgba(0,0,0,.5)}
/* bottom buttons */
.tn-bb{position:absolute;top:752px;height:84px;font-size:36px;gap:14px;border-width:4px}
.tn-bb svg{width:40px;height:40px}
.btn.plum{background:linear-gradient(#5a2e7a,#341a4c);color:var(--cream);border-color:#1b0f2c}
/* modals */
.en-list{max-height:380px}
.en-r{display:flex;align-items:center;gap:12px;padding:6px 4px;border-bottom:2px dotted #b49a6c}.en-r.inj{opacity:.8;background:rgba(179,56,47,.1)}
.en-r .chk{width:30px;height:30px;font-size:24px;cursor:pointer}.en-r .en-n{flex:1}.en-r b{font-family:'Brush';font-weight:400;font-size:26px;display:block;line-height:1}.en-r small{font-size:17px;color:#4e3a28}
.sc-d{font-family:'Brush';font-size:24px;margin-top:8px;border-bottom:2px solid #a98d63}.sc-d small{font-family:'Hand';font-size:17px;color:#4e3a28}
.sc-r{display:flex;justify-content:space-between;padding:3px 6px;font-size:20px;border-bottom:1px dotted #bfa77a}.sc-r b{font-weight:400}.amb{color:#a8721a}
.rs-b{border:2px solid #b49a6c;border-radius:9px;padding:6px 12px;margin-bottom:8px;background:rgba(255,248,225,.55)}.rs-b h4{margin:0;font-family:'Brush';font-weight:400;font-size:26px;color:#8a1f1a}.rs-b h4 i{font-family:'Hand';font-size:17px;color:#4e3a28}
.rs-o{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:19px}.rs-o small{color:#4e3a28;font-size:15px}.rs-f{display:flex;flex-wrap:wrap;gap:4px 22px;font-size:18px;margin-top:2px}.rs-f em{font-style:normal;margin-right:10px}.rs-f em.mine,.be-c .mine{background:linear-gradient(#ffe58a,#f6c94b);padding:0 5px;border-radius:4px}
.be-p{font-size:26px;margin:10px 0 4px;font-family:'Brush'}.be-p b{font-weight:400;color:#2f7a22}
.be-c{font-size:19px;display:flex;flex-direction:column;gap:2px}.be-c h4{font-size:24px;color:#8a1f1a;font-weight:400;margin:4px 0 0}
table.be th.r,table.be td.r{text-align:right}

.ph.sm{font-size:22px}.tn-oc .ph.sm{font-size:19px;padding-right:14px}.ph.sm .sub{white-space:nowrap;font-size:16px}
.nb-bond{margin-top:4px;padding:2px 8px;font-size:15px;line-height:1.05;border:2px solid #5a1612;border-radius:7px;background:linear-gradient(#b8352c,#8f1f1a);color:#fff;max-height:38px;overflow:hidden}.nb-bond b{font-family:'Brush';font-weight:400;color:#ffe08a;font-size:17px;margin-right:4px}.nb-bond.k-yusho{background:linear-gradient(#c28a12,#8a5e08)}.nb-bond.k-kinboshi{background:linear-gradient(#8a2d78,#5b1b4f)}.nb-bond.k-revenge{background:linear-gradient(#2c4a7a,#17294a)}.nb-bond.k-mentor,.nb-bond.k-stablemate{background:linear-gradient(#4d8a30,#2f5a1e)}
.nb-top.sm,.nb-top.sm .nb-p{height:84px}.nb-top.sm .nb-p img{top:-6px}
.nb-bond{max-height:36px}
/* Our Rikishi: compact rows, always-visible scrollbar */
.tn-ovp .tn-ov{font-size:15px}.tn-ovp .tn-ov td{padding:1px 3px}.tn-ovp .tn-ov td:first-child{width:78px}
.tn-ovp .tn-ourh{font-size:20px;margin:2px 0 0}.tn-rk{font-size:15px;padding:0 2px;line-height:1.05}
.tn-rks{scrollbar-width:auto;scrollbar-color:#8a6a46 #e4d3a8}
.tn-run{position:absolute;left:350px;top:126px;width:560px;display:flex;align-items:center;gap:12px;padding:5px 10px;border:2px solid var(--brown);border-radius:8px;background:rgba(255,246,223,.95)}
.tn-run .btn{flex:none}.tn-run small{font-size:16px;line-height:1.05}
.nb-day-actions{display:flex;justify-content:center;gap:6px;margin:3px 0}.nb-day-actions .btn{font-size:17px;min-height:25px;padding:2px 8px}
.tn-hot .nb-top{height:72px}.tn-hot .nb-top.sm{height:70px}
.tn-hot .nb-st{font-size:15px}.tn-hot .nb-names b{font-size:20px}
.dc-s b{white-space:normal;overflow:visible;overflow-wrap:anywhere}.dc-s>span{min-width:0}
.tn-oc .ph{font-size:21px;line-height:1.05}.tn-ovp .ph{font-size:24px}

.tn-hot .nb-top .nb-p{height:100%}

/* Current-basho delegation stays visible beside its reversible control. */
.tn-run .tn-run-copy{flex:1;min-width:0}.tn-run .tn-run-copy small{display:block}.tn-run .tn-run-copy small+small{margin-top:2px}

/* Scroll variable detail copy while keeping primary tournament actions visible. */
.tn-hot>.pb,.tn-standings>.pb{display:flex;flex-direction:column}
.nb-details,.tn-standings-details{flex:1;min-height:0;overflow-x:hidden;scrollbar-gutter:stable}
.tn-hot .nb-day-actions,.tn-hot .nb-btns,.tn-standings-footer{flex:none}
.tn-standings-footer{text-align:center;margin-top:5px}
.nb-names>div,.nb-odds>span{min-width:0}.nb-names b,.nb-odds>span{overflow-wrap:anywhere}.nb-odds i{flex:none}
