/* Original artwork; game text stays in accessible HTML, never baked into images. */
.support[data-card="oxygen"],.support[data-card="chlorine"]{border-color:#a0e1c9!important}.support[data-card="zinc"],.support[data-card="boost"]{border-color:#e4ddf1!important}.support.available{outline:2px solid #a3ffc9;outline-offset:1px}
body{background:#101e2d url('../assets/chain/background.webp') center center/cover fixed no-repeat}body:before{content:'';position:fixed;inset:0;background:linear-gradient(90deg,#081426a6,#08142630 50%,#081426a6);pointer-events:none;z-index:-1}#app{max-width:980px;background:linear-gradient(180deg,#0c1c2cbb,#10233877 50%,#0c1c2ccc);box-shadow:0 0 80px #02091677;padding-top:12px;padding-bottom:14px}header{padding:0 4px}header h1{font-family:Georgia,serif;letter-spacing:2px;color:#fff1ca;text-shadow:0 2px 12px #000}header small{color:#d4dfed}.turn-banner{background:#112b3de6;border-color:#97b5c069;backdrop-filter:blur(6px)}.arena{background:radial-gradient(ellipse,#548d9c22,#091a3030);border-color:#c4d7e833;padding:8px 0;gap:5px}.arena .team{gap:6px}.arena .fighter{padding:0;display:block;position:relative;overflow:hidden;border:3px solid #c3d8ed;border-radius:10px;width:auto;height:clamp(160px,22dvh,230px);aspect-ratio:63/88;min-height:0;background:#172638;box-shadow:0 0 0 1px #587f9d,0 5px 16px #0008;isolation:isolate}.arena .fighter.gold{border-color:#ecd18b}.character-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%;z-index:-1}.card-name{position:absolute;inset:0 0 auto;display:flex;justify-content:space-between;align-items:center;gap:5px;background:linear-gradient(180deg,#102334f5,#102334c9);padding:6px 7px;border-bottom:1px solid #d9edf366}.arena .card-name h2{font-size:15px;margin:0;white-space:nowrap}.card-name span{font-size:14px;color:#e9e1bc}.card-info{position:absolute;bottom:0;left:0;right:0;padding:5px 7px 7px;background:linear-gradient(transparent,#0d1c30eb 15%);text-shadow:0 1px 2px #000}.arena .card-info .stats{font-size:14px;margin:2px 0;min-height:12px}.arena .card-info .hp-line{font-size:14px;margin:4px 0}.card-info .hp{height:5px}.arena .bench{width:260px;max-width:70%;gap:16px;align-items:center}.arena .bench .bench-card{flex:0 0 auto;width:58px;height:81px;min-height:0;padding:0;border:2px solid #bdd2e5;border-radius:6px;position:relative;overflow:hidden;background:#0f2437;opacity:1;box-shadow:0 3px 8px #0008}.bench-card img{width:100%;height:100%;object-fit:cover;object-position:center 25%}.arena .bench .bench-card b{position:absolute;top:0;left:0;right:0;background:#0c1c30d9;font-size:14px;padding:2px;text-align:center}.arena .bench .bench-card small{position:absolute;bottom:0;left:0;right:0;margin:0;background:#0c1c30e8;font-size:14px;padding:3px 1px;text-align:center;color:white}.arena .bench .bench-card.out{opacity:.38;filter:grayscale(1)}.arena .team-label{left:11%;top:55%;color:#eff7ff;text-shadow:0 2px 5px #000}.arena .versus{background:#0b2035bb;padding:4px 0}.arena .versus strong{color:#e8d9ad}.arena .versus p{color:#cfdfeb}.combo-line{background:#0e263be6;border-color:#6c8eaa88}.hand{padding-top:6px;padding-bottom:10px;justify-content:safe center;gap:14px}.hand .support{flex:0 0 auto;width:130px;aspect-ratio:63/88;min-height:0;height:auto;max-width:none;position:relative;display:block;padding:0;overflow:hidden;border:2px solid #cbd5e5;border-radius:9px;background:#142637;box-shadow:0 4px 12px #0008;isolation:isolate}.support-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 22%;z-index:-1}.hand .support.available{border-color:#baffdc;box-shadow:0 0 0 2px #87e3c677,0 0 17px #83f0c747}.hand .support .tag{position:absolute;bottom:0;left:0;right:0;margin:0;background:#132c31f5;padding:6px 4px;font-size:14px;text-align:center;line-height:1.25;min-height:25px}.hand .support .reason{background:#1b2638f2;color:#ead9bf}.hand .support>strong{position:absolute;right:5px;top:7px;font-size:14px;z-index:1;color:#fae7b9}.hand .support>b{position:absolute;top:0;left:0;right:0;background:#102437ec;padding:6px 38px 6px 6px;font-size:14px;white-space:nowrap}.support-desc{display:none}.hand-title{padding:0 4px}.hand-title h2{color:#edf5fe}.hand-title small{color:#d3e5ee}.action-bar{background:#0c2035e8;border-radius:12px;padding:10px 12px;backdrop-filter:blur(8px)}.last-event{background:#0a1e30c9;padding:9px 12px;margin-top:8px;border-radius:8px}.footnote{margin-top:6px;color:#bfcedc}.intro{padding:12px 24px 20px;border:1px solid #9ab9cd55;border-radius:20px;background:#0b1d32cc;backdrop-filter:blur(8px);margin:3vh auto}.intro h2{font-family:Georgia,serif;font-size:38px}.hero-cards{display:flex;justify-content:center;gap:10px;margin:20px 0}.hero-cards img{width:28%;aspect-ratio:63/88;object-fit:cover;object-position:50% 20%;border:3px solid #c0d6e9;border-radius:10px;box-shadow:0 10px 24px #0007}.hero-cards img:nth-child(2){transform:translateY(-8px);border-color:#e1c78f}.intro .steps{margin:16px 0}.intro>button{margin-top:12px}.intro .primary{margin-top:6px}.zoom-art{display:block;width:min(100%,300px);max-height:48dvh;aspect-ratio:2/3;object-fit:cover;object-position:top;margin:0 auto 16px;border-radius:10px;border:2px solid #a8c4dc}.art-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.art-gallery button{padding:0;overflow:hidden;border-color:#b8cfdf;position:relative}.art-gallery img{display:block;width:100%;aspect-ratio:63/88;object-fit:cover;object-position:top}.art-gallery b{position:absolute;bottom:0;left:0;right:0;padding:7px;background:#102137e8;font-size:14px}dialog{background:linear-gradient(155deg,#263b50,#101e32);border-color:#a3c2d1}dialog .controls{position:sticky;bottom:-26px;padding:12px 0;background:#142437;z-index:3}
@media(max-width:650px){#app{padding:10px}.arena .fighter{height:160px}.arena .bench .bench-card{width:47px;height:66px}.arena .team-label{left:7%;font-size:14px}.arena .bench{gap:12px}.hand .support{width:112px}.hand{gap:10px;justify-content:flex-start}.top-buttons{gap:4px}.top-buttons button{font-size:14px;padding:5px 7px}.intro{padding:16px}.intro h2{font-size:30px}.intro p{font-size:15px}.arena .card-name h2{font-size:14px}.arena .card-info .stats{font-size:14px}.arena .card-info .hp-line{font-size:14px}.hand .support>b{font-size:14px}.art-gallery{grid-template-columns:repeat(2,1fr)}.action-bar{padding:8px}.card-info{padding:4px 5px}.arena .team-label{max-width:22%}}
