/* Stage 2: preserve established visual system, improve responsiveness and legibility */
:root{color-scheme:light}header{flex-wrap:wrap;height:auto;min-height:70px;padding-top:9px;padding-bottom:9px;gap:16px}.lang-select{margin-left:auto;min-width:105px}.panel{width:min(100%,920px)}.gamebox{overflow-wrap:anywhere}.bi-dual{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.bi-condition{border:2px solid #d7e4f5;background:#f3f7ff;padding:18px;border-radius:16px;min-height:110px;display:flex;flex-direction:column;justify-content:center;text-align:center}.bi-condition strong{font-size:clamp(19px,3vw,26px);line-height:1.2}.bi-condition small{color:#536785;font-weight:700}.bi-dice-players{display:grid;grid-template-columns:1fr 1fr;gap:12px}.bi-dice-player{background:#f4f7fb;border:3px solid transparent;border-radius:17px;padding:16px;text-align:center}.bi-dice-player.winner{border-color:#16a675;background:#e7fff4}.bi-dice-player.loser{opacity:.65}.bi-dice-face{font-size:70px;line-height:1.3}.bi-kit{display:inline-flex;align-items:center;justify-content:center;width:56px;height:60px;clip-path:polygon(22% 0,37% 7%,63% 7%,78% 0,100% 22%,83% 43%,75% 34%,75% 100%,25% 100%,25% 34%,17% 43%,0 22%);background:linear-gradient(90deg,var(--kit1) 0 33%,var(--kit2) 33% 66%,var(--kit1) 66%);box-shadow:0 2px 8px #0002;flex-shrink:0}.bi-career-item{display:flex;align-items:center;gap:16px;padding:9px 14px;background:#f3f7ff;border-radius:12px;margin:8px 0;font-weight:750}.bi-ball{font-size:110px;line-height:1.4;text-align:center;display:block;transform-origin:center;filter:drop-shadow(0 12px 12px #10223a26)}.bi-ball.running{animation:biRotate 2s linear infinite}@keyframes biRotate{to{transform:rotate(360deg)}}.bi-card{background:#f3f7ff;border-radius:16px;padding:20px;margin:15px 0}.bi-muted{color:#64758b}.bi-success{color:#0b8e60}.bi-fail{color:#d73756}.bi-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.bi-name-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bi-name-grid input{width:100%;border:1px solid #d4dfec;border-radius:10px;padding:12px}.bi-answer{font-size:clamp(19px,3vw,27px);font-weight:850}.bi-sr{position:absolute;left:-9999px}.bi-question{font-size:clamp(23px,3.5vw,34px);font-weight:850;line-height:1.3;padding:25px;background:#f2f6ff;border-radius:18px;margin:18px 0}.bi-note{font-size:13px;color:#64758b}.bi-bomb-count{font-size:64px;font-weight:900;text-align:center}.bi-pill{display:inline-block;padding:7px 12px;background:#e9f2ff;color:#1769cb;border-radius:30px;font-size:13px;font-weight:750}.bi-error{color:#be2447;font-weight:700}@media(max-width:600px){.bi-dual{grid-template-columns:1fr}.bi-name-grid{grid-template-columns:1fr}.bi-dice-face{font-size:52px}.bi-condition{min-height:82px;padding:12px}header{gap:8px}header .home{padding:8px 13px}.lang-select{min-width:85px}}

/* Stage 3: vivid original winner/loser hierarchy with equally readable constraints */
.bi-dice-player.p1{background:#fff1e5;border-color:#ffb879;color:#8f460b}.bi-dice-player.p2{background:#e3f9ef;border-color:#75d6ae;color:#087b58}.bi-dice-player.winner{opacity:1!important;filter:none;box-shadow:0 7px 25px #1b855a25;transform:translateY(-2px);border-width:4px}.bi-dice-player.p1.winner{background:#ffdfc0;border-color:#f5872a}.bi-dice-player.p2.winner{background:#bdf4d8;border-color:#13aa78}.bi-dice-player.loser{opacity:.52;filter:saturate(.65);box-shadow:none}.bi-dice-player.p1 .bi-dice-face{color:#f58a2a}.bi-dice-player.p2 .bi-dice-face{color:#16b68b}.bi-dice-result{background:#eaf2ff;color:#1252a4;text-align:center}.bi-condition{opacity:1!important;filter:none!important;min-height:110px}.bi-condition:first-child{background:#e8f1ff;border-color:#a9cdfc;color:#1756b0}.bi-condition:last-child{background:#e6f7ef;border-color:#a5e1c7;color:#087d5b}.bi-condition small{color:inherit}.bi-both{display:block;text-align:center;margin-bottom:12px}.bi-career-progress{background:#edf5ff;padding:13px 16px;border-radius:12px;margin:12px 0;text-align:center}.bi-progress-track{height:8px;background:#d4e2f4;border-radius:12px;overflow:hidden;margin:9px 0}.bi-progress-track>div{height:100%;background:#2587e5;border-radius:12px;transition:width .2s}.bi-bomb-figure{width:180px;height:175px;margin:15px auto;position:relative;text-align:center}.bi-bomb-body{font-size:118px;line-height:170px;display:block;filter:drop-shadow(0 10px 10px #0002)}.bi-fuse{position:absolute;left:101px;top:13px;width:47px;height:30px;border-top:7px solid #5e4a35;border-right:6px solid #5e4a35;border-radius:0 22px 0 0;transform:rotate(-14deg)}.bi-spark{position:absolute;left:142px;top:-3px;color:#f5a500;font-size:38px;animation:biSpark .5s infinite alternate}.bi-bomb-figure.running .bi-bomb-body{animation:biShake .28s infinite alternate}.bi-bomb-figure.running .bi-spark{animation:biSpark .28s infinite alternate}.bi-bomb-explosion{text-align:center;font-size:125px;animation:biBlast .55s ease-out}.bi-sound{margin-left:10px;min-width:65px}@keyframes biShake{from{transform:rotate(-7deg) translateX(-3px)}to{transform:rotate(7deg) translateX(3px)}}@keyframes biSpark{from{opacity:.5;transform:scale(.7)}to{opacity:1;transform:scale(1.3)}}@keyframes biBlast{from{transform:scale(.5);opacity:.4}to{transform:scale(1);opacity:1}}@media(max-width:600px){.bi-dual{grid-template-columns:1fr 1fr;gap:8px}.bi-condition{min-height:100px;padding:10px}.bi-condition strong{font-size:clamp(15px,4vw,22px)}}

/* Stage 4: retain the original colorful dice cards and winner hierarchy.
   Each category belongs to its own player card and stays legible on defeat. */
.bi-dice-player {display:flex;flex-direction:column;align-items:stretch;min-height:280px;
  transition:background .2s, box-shadow .2s, border-color .2s}
.bi-dice-player .bi-dice-face {flex:1;display:flex;align-items:center;justify-content:center}
.bi-dice-player.loser {opacity:1;filter:none;box-shadow:none}
.bi-dice-player.loser > b,.bi-dice-player.loser .bi-dice-face {opacity:.42;filter:saturate(.6)}
.bi-dice-player.p1.loser {background:#f5eee9;border-color:#e2d3c7}
.bi-dice-player.p2.loser {background:#edf3f0;border-color:#cfdfd7}
.bi-player-category {display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:5px;border-radius:14px;padding:12px 8px;min-height:88px;
  border:2px solid #b8d3f8;background:#e7f1ff;color:#1857a8}
.bi-dice-player.p2 .bi-player-category {border-color:#9fdfc5;background:#e2f7ed;color:#087d5b}
.bi-player-category small {font-weight:750;font-size:12px;letter-spacing:.02em}
.bi-player-category strong {font-weight:850;font-size:clamp(15px,2.4vw,23px);line-height:1.2;overflow-wrap:anywhere}
.bi-dice-player.loser .bi-player-category {opacity:1;filter:none}
.bi-bomb-body {font-size:118px;line-height:170px}
@media(max-width:600px){.bi-dice-player{min-height:235px;padding:10px}
.bi-player-category{min-height:90px;padding:9px 5px}}

/* Stage 5: preserve the screenshot's dice control hierarchy */
.bi-dice-subtitle{color:#64758b;margin:3px 0 20px;font-size:18px}
.bi-dice-names{background:#e7f1ff;border-radius:15px;padding:14px 16px;margin:8px 0 15px;color:#1252a4;font-weight:750}
.bi-dice-names summary{cursor:pointer;list-style:none}.bi-dice-names summary::-webkit-details-marker{display:none}
.bi-dice-modes{display:grid;grid-template-columns:1fr 1fr;border:2px solid #e1e9f5;border-radius:17px;padding:7px;gap:5px;background:#fff;margin:12px 0 18px}
.bi-mode{border:0;background:transparent;color:#66748b;font-weight:800;border-radius:12px;padding:16px 8px;cursor:pointer;font-size:clamp(13px,2vw,19px)}
.bi-mode.active{background:#187fe6;color:#fff}
.bi-dice-legend{color:#65768d;font-size:15px;margin:14px 0 19px}
.bi-dice-blue{background:#187fe6!important;color:white!important;box-shadow:0 7px 0 #1467bb!important;font-weight:850}
.bi-bomb-moving{display:block;position:relative;width:180px;height:175px;transform-origin:50% 58%}
.bi-bomb-figure.running .bi-bomb-moving{animation:biShake .28s infinite alternate}
.bi-bomb-figure.running .bi-bomb-body{animation:none}
.bi-bomb-figure .bi-fuse{left:105px;top:13px;transform:rotate(-14deg)}
.bi-bomb-figure .bi-spark{left:146px;top:-3px}
@media(max-width:600px){.bi-dice-legend{font-size:12px}.bi-mode{padding:12px 5px}}

/* Stage 6: ball and fuse form one rigid animated object; flame alone flickers. */
.bi-bomb-figure{overflow:visible}
.bi-bomb-moving{position:relative;display:block;width:180px;height:175px;transform-origin:50% 55%;isolation:isolate}
.bi-bomb-figure .bi-bomb-body{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:118px;line-height:1;transform:none!important;animation:none!important;z-index:2}
.bi-bomb-figure .bi-fuse{position:absolute;left:106px;top:12px;width:35px;height:49px;border:0;background:none;transform:none;z-index:1}
.bi-bomb-figure .bi-fuse::before{content:'';position:absolute;left:0;top:0;width:34px;height:38px;border-right:7px solid #5e4a35;border-top:7px solid #5e4a35;border-radius:0 24px 0 0;transform:rotate(-18deg);transform-origin:bottom left}
.bi-bomb-figure .bi-spark{position:absolute;left:138px;top:-4px;z-index:3}
.bi-bomb-figure.running .bi-bomb-moving{animation:biShake .28s infinite alternate}
@media (prefers-reduced-motion:reduce){.bi-bomb-figure.running .bi-bomb-moving{animation-duration:1.1s}}
.bi-rules{border:1px solid #dbe5f4;border-radius:14px;background:#f5f9ff;padding:12px 16px;margin:12px 0 18px;color:#263653}.bi-rules summary{font-weight:750;cursor:pointer}.bi-rules p{line-height:1.55;margin:10px 0 0}.bi-race-modes{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0 20px}.bi-race-modes label{background:#f2f6ff;border:1px solid #dbe5f4;border-radius:12px;padding:12px 15px;cursor:pointer}.bi-race-modes input{accent-color:#3476ea}
