@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--paper:#f4f3ec;--ink:#292f2a;--muted:#7b8077;--line:#dedfd5;--red:#db5a40;--green:#436a53;--white:#fffef9;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,select,textarea{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.4}button,a{touch-action:manipulation}button{transition:background .15s,transform .15s,border-color .15s}button:hover:not(:disabled){filter:brightness(.97)}button:active:not(:disabled){transform:translateY(1px)}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #bd842b;outline-offset:4px}a{color:inherit}img{display:block}h1,h2,h3,p{margin:0}h1,h2,h3,.brand,.brand-mini{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif}p{line-height:1.65}.header{max-width:1320px;margin:auto;padding:25px 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:4px;text-decoration:none;font-size:30px;font-weight:800;letter-spacing:-.6px}.brand>span:nth-child(2){color:var(--red)}.ball-logo{display:inline-block;width:29px;height:29px;border:2px solid var(--ink);border-radius:50%;position:relative;margin-right:8px;background:linear-gradient(to bottom,var(--red) 0 44%,var(--ink) 44% 54%,var(--paper) 54%)}.ball-logo:after{content:'';position:absolute;width:8px;height:8px;background:var(--paper);border:2px solid var(--ink);border-radius:50%;left:7px;top:7px}.fan-label{font:600 9px 'DM Sans',sans-serif!important;letter-spacing:1px;color:var(--muted);margin-left:12px;border-left:1px solid #d4d6ca;padding-left:14px}.header nav{display:flex;gap:25px;align-items:center}.header button{background:none;border:0;font-size:12px;font-weight:600}.header nav span{margin-left:14px}.help-button{border:1px solid #c6cabe!important;border-radius:50%;width:27px;height:27px}main{max-width:1320px;margin:auto;padding:0 40px}.hero{display:flex;justify-content:space-between;align-items:center;padding:45px 0 40px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.5px;display:flex;align-items:center;gap:9px;color:#747e6f}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--red);display:inline-block}.edition{margin-left:10px;color:#aaa99d}.hero h1{font-size:78px;line-height:.97;letter-spacing:-1.9px;font-weight:700;margin:16px 0}.hero h1 span{color:var(--red)}.hero p{font-size:13px;color:#7a8076}.hero-aside{text-align:right;align-self:flex-end;padding-bottom:4px}.date-stamp{display:flex;flex-direction:column;gap:5px;margin-bottom:30px}.date-stamp>span{font:500 42px 'Barlow Condensed',sans-serif;letter-spacing:-.5px}.date-stamp small{font-size:9px;letter-spacing:1.5px;color:var(--muted)}.rule-chips{display:flex;justify-content:flex-end;gap:5px;flex-wrap:wrap}.rule-chips span{font-size:9px;font-weight:600;border:1px solid #cfd3c7;padding:7px 9px;border-radius:4px;letter-spacing:.8px}.rule-chips span:first-child{background:var(--ink);color:var(--paper);border-color:var(--ink)}.hero p.reset-note{font-size:10px;margin-top:14px;color:#92978d}.reset-note b{font-weight:500;color:#505b50;font-variant-numeric:tabular-nums}.reset-note span{font-size:9px}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:22px}.section-heading{display:flex;align-items:center;gap:10px;margin:0 0 15px;height:25px}.section-heading h2{font-size:23px;font-weight:600}.section-index{font-size:9px;font-weight:500;color:#8b9587;border:1px solid #d5d9cc;border-radius:50%;padding:3px 5px}.section-status{font-size:8px;letter-spacing:1.2px;color:#8a9285;margin-left:auto;font-weight:600}.arena{height:350px;border-radius:9px 9px 0 0;border:1px solid #bdc8ad;position:relative;overflow:hidden;background:linear-gradient(180deg,#c8d5bc 0%,#b6c7aa 28%,#bacdb0 31%,#d2ddc1 32%,#e0e4c7 55%,#d0d9b3 55%);isolation:isolate}.arena:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 3px,#ffffff0c 3px,#ffffff0c 4px);pointer-events:none;z-index:10}.stadium-lights{position:absolute;inset:0 0 70%;background:repeating-linear-gradient(120deg,transparent 0px,transparent 80px,#ffffff21 82px,#ffffff21 115px)}.crowd{position:absolute;top:53px;width:100%;height:42px;background-image:radial-gradient(#778e6530 1.8px,transparent 2px);background-size:8px 8px;transform:perspective(300px) rotateX(-10deg);border-bottom:5px double #96aa8345}.arena-mark{position:absolute;top:120px;left:-10%;width:120%;height:220px;border:2px solid #ffffff65;border-radius:50%;transform:rotate(-18deg)}.arena-mark:after{content:'';position:absolute;left:51%;top:0;height:100%;width:2px;background:#ffffff50;transform:rotate(15deg)}.ground-circle{position:absolute;border:1px solid #9aaf7870;border-radius:50%;background:#a3ba8433;transform:rotate(-8deg)}.circle-ash{width:190px;height:55px;top:169px;right:10%}.circle-you{width:220px;height:58px;bottom:44px;left:5%}.arena-top,.arena-bottom{position:absolute;left:20px;right:20px;display:flex;justify-content:space-between;z-index:3;font-size:8px;letter-spacing:1.6px;color:#53684c;font-weight:700}.arena-top{top:15px}.arena-bottom{bottom:12px;font-size:7px;opacity:.65}.arena-top i{display:inline-block;height:5px;width:5px;background:#728f5e;border-radius:50%;margin-right:5px}.combatant{position:absolute;z-index:4;display:flex;align-items:center;justify-content:center}.combatant .mon{object-fit:contain;image-rendering:pixelated;width:100%;height:100%;filter:drop-shadow(0 5px 1px #4f653818)}.ash-sprite{width:132px;height:132px;right:15%;top:65px;animation:bob 3s ease-in-out infinite}.your-sprite{width:176px;height:176px;left:8%;bottom:54px;animation:bob 3.6s ease-in-out infinite}.your-sprite .mon{transform:scaleX(-1)}.dynamaxed{filter:drop-shadow(0 0 15px #d3489c);scale:1.23}.knocked-out{opacity:.25;filter:grayscale(1);animation:none}.versus{position:absolute;left:48%;top:45%;font:italic 700 34px 'Barlow Condensed',sans-serif;color:#6c85533b;transform:rotate(-10deg)}.intro-name{position:absolute;display:flex;flex-direction:column;z-index:5}.intro-name span{font-size:8px;letter-spacing:1.6px;color:#667d5b}.intro-name strong{font:600 25px 'Barlow Condensed',sans-serif;margin-top:3px}.intro-name small{font-size:10px;color:#6a7e5b;margin-top:2px}.intro-name.opponent{top:58px;left:22px}.intro-name.player{bottom:54px;right:28px;text-align:right}.status-card{position:absolute;background:#fffef1e8;border:1px solid #aebc9d;box-shadow:2px 3px 0 #70875619;border-radius:7px;padding:12px 14px;width:215px;z-index:5}.status-card.opponent{left:18px;top:53px}.status-card.player{right:18px;bottom:52px}.status-card>div{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px;gap:8px}.status-card strong{font-size:13px}.status-card div>span{font-size:8px;white-space:nowrap;color:#6d7e61}.status-card small{display:block;font-size:9px;text-align:right;margin-top:5px;color:#6d7e61;font-variant-numeric:tabular-nums}.hp-track{display:block;background:#dbe0cf;border-radius:5px;height:5px;overflow:hidden}.hp-track>span{height:100%;display:block;border-radius:5px;transition:width .3s}.boost{font-size:8px;background:#dce9d1;padding:2px 4px;margin-right:3px;display:inline-block;margin-top:4px}.status-pill{font-size:8px;color:white;background:#9b7aab;padding:3px;border-radius:3px}.start-controls{background:var(--white);border:1px solid var(--line);border-top:0;padding:22px;display:flex;align-items:center;gap:10px;border-radius:0 0 9px 9px;min-height:100px}.start-controls>div{margin-right:auto}.start-controls strong{font-size:12px}.start-controls p{font-size:10px;color:var(--muted);margin-top:5px}.primary,.secondary{border:0;border-radius:5px;font-size:11px;font-weight:700;padding:13px 18px;white-space:nowrap}.primary{background:var(--red);color:#fff9f1;box-shadow:0 2px 0 #ad3e2e}.primary span{margin-left:15px}.secondary{border:1px solid #dadcd2;background:transparent}.primary:hover{background:#c95038}.ash-panel{padding:20px;background:#edeee5;border:1px solid #d9ddce;border-radius:9px;margin-top:40px;align-self:start}.opponent-header{display:flex;gap:12px;align-items:center}.cap-icon{width:59px;height:59px;border:1px solid #d5d9ca;border-radius:50%;background:#e2e6d9;padding:5px}.cap-icon svg{width:100%}.opponent-header .eyebrow{font-size:7px;letter-spacing:1.3px}.opponent-header h2{font-size:28px;margin:3px 0}.opponent-header p{font-size:10px;color:#63725e}.opponent-header p span{color:#909988;font-size:8px}.era-subtitle{font-size:10px;color:#89927f;padding:13px 0 12px;border-bottom:1px solid #d8ddce}.ash-roster{padding:7px 0}.ash-row{display:flex;align-items:center;gap:7px;width:100%;text-align:left;border:0;background:transparent;padding:2px 0}.ash-row>.mon{width:48px;height:48px;object-fit:contain;image-rendering:pixelated}.ash-row>span{display:flex;flex-direction:column;gap:3px}.ash-row strong{font-size:11px;font-weight:600}.ash-row small{font-size:8px;color:#8a9581}.ash-row-end{font-size:8px;margin-left:auto;color:#8b9582}.opponent-note{display:flex;gap:10px;padding-top:12px;border-top:1px solid #d8ddce;font-size:9px;color:#86917c;line-height:1.7}.opponent-note>span{font-size:18px;color:#9aa78c}.your-team{margin-top:34px}.team-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.team-card{background:var(--white);border:1px solid var(--line);border-radius:7px;overflow:hidden;position:relative;transition:border-color .15s}.team-card.lead{border-color:#768c61;box-shadow:0 0 0 1px #768c6122}.team-card.active-mon{border-color:#7c9b6c}.card-info{border:0;background:transparent;width:100%;display:flex;flex-direction:column;align-items:center;padding:18px 7px 13px}.mon-number{position:absolute;left:10px;top:10px;font-size:8px;letter-spacing:1px;color:#a5ab9c}.special-tag{position:absolute;top:8px;right:7px;padding:3px 5px;font-size:6px;letter-spacing:.8px;border-radius:3px;background:#eee2f0;color:#93689a;font-weight:700}.special-tag.zmove{background:#f7edcc;color:#aa8638}.special-tag.max{background:#f4dfe7;color:#b7708b}.card-info>.mon{width:95px;height:89px;object-fit:contain;image-rendering:pixelated;margin:4px 0 1px}.card-info>strong{font-size:12px;font-weight:600;margin-bottom:8px}.card-types{display:flex;gap:3px;justify-content:center;flex-wrap:wrap}.type{font-size:6px;text-transform:uppercase;border-radius:3px;padding:3px 5px;letter-spacing:.8px;display:inline-block;font-weight:700;background:color-mix(in srgb,var(--type-color,#9ca18b) 18%,white);color:color-mix(in srgb,var(--type-color,#9ca18b) 70%,black)}.normal{--type-color:#9a9a80}.fire{--type-color:#df8753}.water{--type-color:#689cc4}.grass{--type-color:#89ae66}.electric{--type-color:#cdb34d}.ice{--type-color:#65aeba}.fighting{--type-color:#b96551}.poison{--type-color:#a57bb1}.ground{--type-color:#b9986d}.flying{--type-color:#9a9bb9}.psychic{--type-color:#cc7d97}.bug{--type-color:#8fa356}.rock{--type-color:#ac9d6a}.ghost{--type-color:#8c7ca7}.dragon{--type-color:#8b85bb}.dark{--type-color:#8c7e74}.steel{--type-color:#8b9da5}.fairy{--type-color:#bf91b3}.item-label{font-size:8px;color:#979d90;margin-top:9px}.lead-button{border:0;border-top:1px solid #e8e9e0;background:#fafaf4;color:#92998a;width:100%;padding:8px;font-size:8px}.lead .lead-button{background:#e7ecde;color:#5e7650}.team-caption{display:flex;justify-content:space-between;gap:15px;font-size:8px;color:#939a8b;margin-top:12px}.journey{border-top:1px solid var(--line);margin-top:37px;padding-top:28px}.journey h2{font-size:30px;margin:10px 0 5px;font-weight:600}.journey p{font-size:11px;color:var(--muted)}.era-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:9px;margin-top:23px}.era-button{position:relative;border:1px solid var(--line);background:transparent;border-radius:6px;text-align:left;padding:14px 12px;display:flex;flex-direction:column;gap:6px;border-top:3px solid color-mix(in srgb,var(--era) 50%,var(--paper))}.era-button>span{font-size:8px;color:var(--era);letter-spacing:1px}.era-button strong{font:600 23px 'Barlow Condensed',sans-serif}.era-button small{font-size:6px;letter-spacing:.6px;color:#9ca294;margin-top:4px}.era-button.chosen{background:#e8ecdf;border-color:#b3bea2}.era-button.chosen small{color:#718359}.rules-strip{display:grid;grid-template-columns:repeat(3,1fr);margin:32px 0 20px;padding:25px 0;border-top:1px solid var(--line);gap:25px}.rules-strip span{font-size:8px;color:#78816f;letter-spacing:1px;font-weight:600}.rules-strip p{font-size:10px;color:#979e90;margin-top:8px}footer{max-width:1240px;margin:15px auto 0;border-top:1px solid var(--line);padding:24px 0 30px;display:flex;gap:25px;align-items:center}.brand-mini{font-weight:700;font-size:20px;color:#b2b6a8;white-space:nowrap}footer p{font-size:8px;color:#a4aa9c}footer a{text-decoration-color:#ced2c6}footer button{margin-left:auto;font-size:9px;color:#8b9580;border:0;background:none}.battle-controls{padding:20px;background:var(--white);border:1px solid var(--line);border-top:0;border-radius:0 0 9px 9px}.control-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.control-heading strong{font-size:13px}.text-button{border:0;background:none;text-decoration:underline;text-underline-offset:3px;font-size:9px;color:#8a9581}.gimmicks{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.gimmick{display:flex;gap:15px;align-items:center;border:1px solid #ded2e2;background:#f8f1fa;border-radius:4px;font-size:10px;padding:8px 11px;color:#94649a}.gimmick.zmove{border-color:#e4d6a9;background:#fbf5e4;color:#a98732}.gimmick.dynamax{border-color:#e3cbd5;background:#faf0f5;color:#b3678a}.gimmick.selected{box-shadow:inset 0 0 0 1px currentColor;font-weight:bold}.move-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.move{background:color-mix(in srgb,var(--type-color) 10%,white);border:1px solid color-mix(in srgb,var(--type-color) 30%,white);border-left:3px solid var(--type-color);border-radius:5px;text-align:left;padding:12px}.move-name{font-size:12px;font-weight:600}.move-meta{display:flex;font-size:8px;margin-top:6px;opacity:.65}.move-meta b{font-weight:400;margin-left:auto;font-variant-numeric:tabular-nums}.switch-row{display:flex;gap:5px;align-items:center;margin-top:16px}.switch-row>span{font-size:7px;writing-mode:vertical-rl;transform:rotate(180deg);color:#9ba390;margin-right:5px;letter-spacing:1.5px}.switch-row button{flex:1;min-width:0;border:1px solid #e4e6dd;background:#f7f8f0;border-radius:5px;padding:4px 4px 7px;display:flex;align-items:center;flex-direction:column}.switch-row .mon{width:45px;height:40px;image-rendering:pixelated;object-fit:contain}.switch-row button>span:not(.hp-track){font-size:7px;overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap;margin-bottom:5px}.switch-row .hp-track{width:80%;height:3px}.card-hp{padding:0 12px 10px}.card-hp>span:last-child{display:block;font-size:8px;text-align:center;color:#8f9a82;margin-top:5px}.fainted{opacity:.4;filter:grayscale(1)}.battle-log{margin-top:30px}.battle-log .section-heading button{margin-left:auto}.log-entries{height:210px;overflow-y:auto;background:#edeee5;border:1px solid var(--line);border-radius:6px;padding:14px 20px;font-size:10px;line-height:1.7;color:#737e67}.log-entries p{margin:3px 0}.log-entries .turn-line{font-size:8px;font-weight:700;letter-spacing:1px;color:#a0a893;padding-top:7px}.result-panel{display:flex;gap:15px;align-items:center;flex-wrap:wrap;background:#fffef9;border:1px solid var(--line);padding:22px;border-radius:0 0 8px 8px}.result-icon{font-size:30px;color:#c1a44b}.result-panel h2{font-size:28px}.result-panel p{font-size:10px;color:var(--muted)}.result-panel .primary{margin-left:auto}.result-panel .secondary{padding:12px}.loading{min-height:60vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px}.loading h1{font-size:34px}.loading p{font-size:12px;color:var(--muted)}dialog{border:1px solid #cdd2c1;border-radius:12px;box-shadow:0 20px 100px #25322236;background:var(--paper);color:var(--ink);width:min(620px,calc(100% - 28px));max-height:85vh;padding:34px}dialog::backdrop{background:#24331f70;backdrop-filter:blur(3px)}dialog h2{font-size:36px;margin:8px 0 16px;font-weight:600}dialog h3{font-size:23px;margin:20px 0 10px}dialog p,dialog li{font-size:12px;line-height:1.8;margin-bottom:12px;color:#737e6b}dialog a{color:#50714d}.close-modal{position:absolute;right:13px;top:10px;border:0;background:transparent;font-size:25px;color:#89947e}.full{width:100%;margin-top:13px}.detail-top{display:flex;align-items:center;gap:15px}.detail-top .mon{width:105px;height:105px;image-rendering:pixelated;object-fit:contain}.detail-top h2{margin:7px 0 10px}.detail-top .type{margin-right:4px}.detail-facts{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:20px;border-block:1px solid var(--line);padding:20px 0 10px}.detail-facts small{display:block;color:#909a86;font-size:8px;letter-spacing:1px;margin-bottom:7px}.detail-facts strong{font-size:12px}.detail-facts p{font-size:10px;margin-top:7px}.detail-moves{display:grid;grid-template-columns:1fr 1fr;gap:10px}.detail-moves>div{padding:12px;background:var(--white);border:1px solid var(--line);border-radius:5px}.detail-moves strong{display:inline-block;font-size:11px;margin-right:5px}.detail-moves p{font-size:10px;margin:7px 0}.detail-moves small{font-size:8px;color:#9ba28f}.stat-bars{display:grid;grid-template-columns:1fr 1fr;gap:10px 30px}.stat-bars>div{display:flex;align-items:center;gap:8px;font-size:9px}.stat-bars span{min-width:25px;color:#8b957f}.stat-bars b{min-width:20px;font-weight:500}.stat-bars i{display:block;background:#b1bf9b;height:5px;border-radius:3px}p.muted{font-size:10px;color:#939d89;margin-top:20px}.help-list{padding-left:20px}.help-list li{padding-left:5px;margin-bottom:15px}.help-list strong{color:#4e5f45}select{width:100%;border:1px solid #cdd2c1;padding:12px;border-radius:5px;background:var(--white);color:var(--ink);font-size:12px;margin-top:8px}label{font-size:10px;color:#7d8971}textarea{width:100%;padding:12px;border:1px solid #cdd2c1;border-radius:5px;background:var(--white);font-size:12px;line-height:1.7}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:25px 0}.stats-grid>div{display:flex;flex-direction:column;align-items:center;padding:20px;background:#e8ecdf;border-radius:7px}.stats-grid strong{font:600 42px 'Barlow Condensed',sans-serif}.stats-grid small{font-size:8px;color:#8b977d;letter-spacing:1px;margin-top:8px}.record-row{display:flex;justify-content:space-between;font-size:10px;padding:12px 0;border-bottom:1px solid var(--line);color:#808c72}.record-row b{color:#5d754b;font-weight:500}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:50;background:#303e2d;color:#fff;border-radius:6px;box-shadow:0 4px 25px #0002;padding:13px 20px;font-size:12px;max-width:calc(100% - 30px);transition:all .2s}#toast.show{transform:translate(-50%,0);opacity:1}.turn-flash{animation:flash .4s ease}@keyframes bob{50%{translate:0 -4px}}@keyframes flash{50%{filter:brightness(1.07)}}@media(min-width:1400px){.arena{height:370px}.hero{padding-top:48px}.hero h1{font-size:86px}}@media(max-width:1050px){.content-grid{grid-template-columns:minmax(0,1fr) 250px;gap:16px}.ash-panel{padding:16px}.start-controls{flex-wrap:wrap;padding:17px}.start-controls>div{flex-basis:100%;margin-bottom:4px}.start-controls .primary{flex:1}.team-grid{gap:7px}.card-info>strong{font-size:10px}.item-label{font-size:7px}.status-card{width:180px}.status-card strong{font-size:11px}.ash-sprite{right:8%}.your-sprite{left:3%}.era-grid{gap:6px}.era-button{padding:12px 8px}.era-button strong{font-size:20px}footer{margin-inline:40px}}@media(max-width:760px){.header{padding:18px 20px}.brand{font-size:26px}.fan-label{display:none}.header nav{gap:14px}.header button{font-size:10px}main{padding:0 20px}.hero{padding:28px 0;gap:20px;align-items:flex-end}.hero h1{font-size:58px;margin:14px 0 12px}.hero .eyebrow{font-size:7px;letter-spacing:1.1px;gap:5px}.edition{display:none}.hero p{font-size:10px}.hero-aside{max-width:175px}.date-stamp{margin-bottom:20px}.date-stamp>span{font-size:30px}.date-stamp small{font-size:6px;letter-spacing:1px}.rule-chips{gap:4px}.rule-chips span{font-size:6px;padding:5px}.hero p.reset-note{font-size:8px;line-height:1.7}.reset-note span{display:block;font-size:7px}.content-grid{grid-template-columns:1fr;gap:22px}.ash-panel{margin:0;padding:16px;display:grid;grid-template-columns:1fr 1.6fr;gap:10px 18px}.opponent-header{align-self:start;gap:8px}.cap-icon{width:43px;height:43px;flex-shrink:0}.opponent-header h2{font-size:23px}.opponent-header .eyebrow{font-size:6px}.opponent-header p{font-size:9px}.era-subtitle{display:none}.ash-roster{grid-column:2;grid-row:1 / 3;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.ash-row{gap:3px}.ash-row>.mon{width:35px;height:35px}.ash-row strong{font-size:8px}.ash-row small{font-size:6px}.ash-row-end{display:none}.opponent-note{grid-column:1;grid-row:2;font-size:7px;gap:4px;padding-top:8px}.opponent-note>span{font-size:13px}.arena{height:330px}.arena-top,.arena-bottom{font-size:7px;left:15px;right:15px;letter-spacing:1px}.arena-bottom{font-size:6px}.arena .status-card{width:190px}.status-card.opponent{top:48px;left:15px}.status-card.player{bottom:48px;right:15px}.your-sprite{left:4%;bottom:48px}.ash-sprite{right:8%}.circle-you{left:0}.circle-ash{right:3%}.start-controls{padding:18px;flex-wrap:nowrap}.start-controls>div{flex-basis:auto;margin:0 auto 0 0}.start-controls strong{font-size:10px}.start-controls p{font-size:8px;max-width:180px}.start-controls .primary{flex:initial}.primary,.secondary{font-size:10px;padding:12px 15px}.primary span{margin-left:7px}.team-grid{grid-template-columns:repeat(3,1fr);gap:9px}.card-info{padding-bottom:13px}.card-info>.mon{width:95px;height:80px}.card-info>strong{font-size:12px}.item-label{font-size:8px}.lead-button{font-size:9px;padding:9px}.type{font-size:7px}.team-caption{display:block;font-size:7px}.team-caption>span{display:block;margin-top:4px}.your-team{margin-top:27px}.section-status{font-size:7px;letter-spacing:1px}.era-grid{grid-template-columns:repeat(4,1fr);gap:8px}.era-button{padding:12px}.era-button strong{font-size:22px}.journey h2{font-size:27px}.journey .eyebrow{font-size:8px}.rules-strip{gap:14px}.rules-strip span{font-size:6px;letter-spacing:.6px}.rules-strip p{font-size:8px;line-height:1.7}.rules-strip br{display:none}footer{margin-inline:20px;flex-wrap:wrap;gap:10px;padding-top:20px}.brand-mini{font-size:17px}footer p{font-size:7px;flex:1}footer button{font-size:8px}.result-panel{gap:10px}.result-panel h2{font-size:25px}.result-panel p{font-size:9px}.result-panel .primary{margin-left:0}.result-icon{display:none}}@media(max-width:420px){main{padding-inline:14px}.header{padding-inline:14px}.hero{gap:10px}.hero h1{font-size:53px}.hero .eyebrow{font-size:6px}.hero-aside{max-width:140px}.hero p{font-size:9px}.rule-chips span{font-size:5px;padding:5px}.date-stamp>span{font-size:28px}.date-stamp small{font-size:5px}.hero p.reset-note{font-size:7px}.start-controls{flex-wrap:wrap;gap:8px}.start-controls>div{flex-basis:100%;margin-bottom:5px}.start-controls p{max-width:none;font-size:9px}.start-controls .primary{flex:1}.start-controls .secondary{flex:1}.arena{height:310px}.your-sprite{width:145px;height:145px;left:3%;bottom:55px}.ash-sprite{width:115px;height:115px;right:5%;top:75px}.arena .status-card{width:166px;padding:10px}.status-card strong{font-size:10px}.status-card div>span{font-size:7px}.intro-name strong{font-size:22px}.intro-name.player{right:18px}.intro-name.opponent{left:18px}.arena-bottom{font-size:5px}.ash-panel{gap:8px;grid-template-columns:1fr 1.5fr}.ash-roster{gap:0 4px}.ash-row>.mon{width:29px;height:33px}.ash-row strong{font-size:7px}.ash-row small{font-size:5px}.opponent-header h2{font-size:21px}.cap-icon{width:35px;height:35px}.opponent-header{gap:5px}.opponent-header .eyebrow{font-size:5px}.battle-controls{padding:14px}.switch-row{gap:3px}.switch-row>span{margin-right:0;font-size:6px}.switch-row .mon{width:37px;height:35px}.switch-row button>span:not(.hp-track){font-size:6px}.move{padding:10px}.move-name{font-size:11px}.move-meta{font-size:7px}.gimmick{font-size:9px;padding:8px}.control-heading strong{font-size:12px}.section-heading h2{font-size:22px}.section-status{font-size:6px}.card-info>strong{font-size:11px}.journey h2{font-size:24px}.era-button{padding:10px}.era-button strong{font-size:20px}.era-button small{font-size:5px}dialog{padding:26px 20px}.detail-top .mon{width:80px;height:80px}.detail-top h2{font-size:30px}.detail-top .eyebrow{font-size:8px}.detail-moves{gap:7px}.detail-moves>div{padding:10px}.detail-moves strong{font-size:10px}.detail-facts{gap:15px}.help-list li{font-size:11px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Gen 5 battle presentation: sprite animation, pixel effects, event playback. */
.combatant{animation:none}.your-sprite .mon{transform:none}.your-sprite .mon.flip-sprite{transform:scaleX(-1)}.combatant .animated-sprite{image-rendering:pixelated}.combatant .sprite-fallback{animation:sprite-breathe 1.15s steps(3,end) infinite;transform-origin:center bottom}.your-sprite .sprite-fallback.flip-sprite{animation:sprite-breathe-flip 1.15s steps(3,end) infinite}.battle-fx{position:absolute;inset:0;pointer-events:none;z-index:7;overflow:hidden}.fx-particle{position:absolute;display:block;pointer-events:none;box-sizing:border-box}.fx-orb{width:24px;height:24px;background:var(--fx-color);border:4px solid #fff9;box-shadow:0 0 0 4px color-mix(in srgb,var(--fx-color) 45%,transparent);clip-path:polygon(25% 0,75% 0,75% 15%,100% 25%,100% 75%,75% 75%,75% 100%,25% 100%,25% 85%,0 75%,0 25%,25% 25%)}.fx-orb.type-fire{height:37px;clip-path:polygon(50% 0,70% 35%,85% 20%,100% 70%,80% 100%,20% 100%,0 70%,20% 35%,30% 60%)}.fx-orb.type-grass,.fx-orb.type-bug{width:27px;height:14px;background:var(--fx-color);clip-path:polygon(0 50%,45% 0,100% 0,85% 65%,30% 100%)}.fx-orb.type-ice{width:18px;height:36px;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.fx-lightning{width:46px;height:123px;background:#fff8b5;filter:drop-shadow(0 0 5px #ffb700);clip-path:polygon(55% 0,10% 52%,42% 49%,18% 100%,95% 35%,60% 40%,90% 0)}.fx-beam{height:14px;background:linear-gradient(0deg,var(--fx-color),#fff,var(--fx-color));box-shadow:0 0 0 4px color-mix(in srgb,var(--fx-color) 25%,transparent);transform:rotate(var(--angle));transform-origin:left center;border-radius:0 30% 30% 0}.fx-hit{width:68px;height:68px;background:#fff5c6;box-shadow:0 0 12px var(--fx-color);clip-path:polygon(50% 0,60% 30%,85% 8%,74% 38%,100% 50%,74% 60%,92% 90%,60% 74%,50% 100%,40% 72%,7% 88%,28% 59%,0 50%,28% 40%,12% 12%,40% 29%)}.fx-slash{width:80px;height:75px;background:repeating-linear-gradient(125deg,transparent 0 15px,#fff9db 16px 21px,transparent 22px 28px);clip-path:polygon(80% 0,100% 20%,20% 100%,0 80%)}.fx-rock{height:25px;width:27px;background:var(--fx-color);border:4px solid #6c644670;clip-path:polygon(25% 0,85% 5%,100% 65%,70% 100%,10% 85%,0 25%)}.fx-ring{width:90px;height:90px;border:5px solid var(--fx-color);border-radius:50%;box-shadow:0 0 0 6px #fff5,inset 0 0 0 6px #fff5}.fx-ring.heal{border-color:#90db8e}.fx-ring.shield{border-radius:25% 25% 50% 50%;background:#a7d9ff30;border-color:#bedcff}.fx-spark,.impact{width:12px;height:12px;background:var(--fx-color);clip-path:polygon(40% 0,60% 0,60% 40%,100% 40%,100% 60%,60% 60%,60% 100%,40% 100%,40% 60%,0 60%,0 40%,40% 40%)}.is-playing .hp-track>span{transition:none}.is-playing .status-card{font-variant-numeric:tabular-nums}.battle-announcement{display:flex;align-items:center;gap:12px;background:#f9f9ee;border:1px solid #bfc8b2;border-top:0;padding:12px 17px;min-height:47px}.battle-announcer{font-size:12px;font-weight:500;line-height:1.5;color:#46563c;flex:1}.battle-announcement button{border:1px solid #cfd4c4;background:#f0f1e7;font-size:9px;padding:6px 8px;border-radius:4px;white-space:nowrap}.battle-controls[aria-busy="true"]{opacity:.65}.status-pill[hidden],[hidden]{display:none!important}.knocked-out{opacity:.15!important}.music-dock{position:fixed;top:80px;right:24px;z-index:40;width:330px;max-width:calc(100vw - 28px);background:#fafaf0;border:1px solid #bfc8b2;border-radius:10px;box-shadow:0 12px 40px #25322230;padding:17px}.music-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.music-heading strong{font-size:14px}.music-heading button{border:0;background:none;font-size:24px;line-height:1;color:#748267}.music-dock p{font-size:10px;color:#7b856f;line-height:1.6;margin:8px 0}.music-actions{display:flex;flex-direction:column;gap:7px;margin-top:12px}.music-actions button,.local-music{background:#e7ebdc;border:1px solid #c5d0b4;border-radius:5px;text-align:center;font-size:10px;color:#4c6041;padding:9px;cursor:pointer;font-weight:500}.local-music input{display:block;max-width:100%;margin-top:8px;font-size:9px}.music-transport{display:flex;gap:15px;align-items:center;border-top:1px solid #dce1d1;padding-top:12px}.music-transport button{background:#db5a40;border:0;color:white;border-radius:5px;padding:8px 13px;font-size:10px}.music-transport label{font-size:9px;display:flex;align-items:center;gap:7px;flex:1}.music-transport input{width:100%;min-width:0;accent-color:#718b58}.music-dock .music-note{font-size:9px;margin-top:12px}.online-player:empty{display:none}.online-player iframe{display:block;width:100%;height:210px;border:0;border-radius:4px;margin-top:10px}.music-track{overflow-wrap:anywhere}@keyframes sprite-breathe{50%{transform:translateY(-2px) scale(1.015,.985)}}@keyframes sprite-breathe-flip{50%{transform:translateY(-2px) scale(-1.015,.985)}}@media(max-width:420px){.header nav{gap:10px}.header button{font-size:9px}.battle-announcer{font-size:10px}.battle-announcement{padding:10px 13px}.music-dock{right:14px;top:68px}.fx-beam{height:10px}}@media(prefers-reduced-motion:reduce){.sprite-fallback{animation:none!important}}
.trainer-sprite{width:160px;height:160px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 4px 1px #4f653829)}@media(max-width:420px){.trainer-sprite{width:140px;height:140px}}
.campaign-panel{border:1px solid var(--line);border-radius:10px;padding:22px;margin:0 0 30px;background:#f9f9f1}.campaign-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.campaign-heading h2{font-size:32px;margin:6px 0}.campaign-heading p,.campaign-fairness{font-size:11px;color:var(--muted)}.campaign-count{font:700 46px "Barlow Condensed",sans-serif;color:var(--green);white-space:nowrap}.campaign-count span{font:500 12px "DM Sans",sans-serif;color:var(--muted)}.campaign-panel .era-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}.campaign-panel .era-button{min-width:0;padding:13px 10px}.campaign-panel .era-button strong{font-size:24px}.campaign-panel .era-button.cleared{background:#e5eedf;border-color:#9ab394}.campaign-panel .era-button:disabled{opacity:.72}.campaign-fairness{margin-top:14px;line-height:1.6}.result-panel{flex-wrap:wrap}@media(max-width:900px){.campaign-panel .era-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:600px){.campaign-panel{padding:15px;margin-bottom:24px}.campaign-heading{align-items:flex-start;gap:10px}.campaign-heading h2{font-size:26px}.campaign-heading p,.campaign-fairness{font-size:9px}.campaign-count{font-size:34px}.campaign-count span{display:block;font-size:9px}.campaign-panel .era-button{padding:10px 7px}.campaign-panel .era-button strong{font-size:21px}.campaign-panel .era-button small{font-size:6px}}

/* Persistent FAQ: independent native disclosures, available during battles. */
.header .faq-link{font-size:12px;font-weight:600;text-decoration:none;padding:6px 0}
.header .faq-link:hover{text-decoration:underline;text-underline-offset:4px}
.faq-section{max-width:1320px;margin:0 auto;padding:32px 40px 52px;scroll-margin-top:24px}
.faq-section h2{font-size:38px;font-weight:700;letter-spacing:-.4px;margin-bottom:24px}
.faq-section details{border-top:1px solid var(--line)}
.faq-section details:last-child{border-bottom:1px solid var(--line)}
.faq-section summary{display:flex;justify-content:space-between;align-items:baseline;gap:24px;list-style:none;cursor:pointer;padding:19px 0;font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-size:22px;font-weight:600;line-height:1.3}
.faq-section summary::-webkit-details-marker{display:none}
.faq-section summary::after{content:'+';flex-shrink:0;width:20px;text-align:center;font-family:'DM Sans',Arial,sans-serif;font-size:20px;font-weight:500;color:var(--green)}
.faq-section details[open]>summary::after{content:'−'}
.faq-section summary:hover{color:var(--green)}
.faq-section summary:focus-visible{outline:3px solid #bd842b;outline-offset:4px;border-radius:2px}
.faq-answer{max-width:850px;padding:0 28px 20px 0;font-size:14px;line-height:1.7;color:#505b50}
.faq-answer p+p{margin-top:10px}
@media(max-width:760px){.header .faq-link{font-size:10px}.faq-section{padding:28px 20px 38px}.faq-section h2{font-size:34px;margin-bottom:18px}.faq-section summary{font-size:21px}.faq-answer{font-size:13px}}
@media(max-width:420px){.header{flex-wrap:wrap;gap:14px}.header nav{flex-wrap:wrap;gap:12px}.header .faq-link{font-size:9px}.faq-section{padding-inline:14px}.faq-section summary{font-size:20px;gap:16px}.faq-answer{padding-right:0}}
.leaderboard-section{max-width:1320px;margin:64px auto;padding:38px;border:1px solid var(--line,#d9dcd2);border-radius:16px;background:#fafaf4;scroll-margin-top:24px;color:#2a3028}.lb-heading{display:flex;justify-content:space-between;align-items:start;gap:24px}.lb-heading h2{font-size:clamp(28px,3vw,42px);margin:10px 0}.lb-heading p,.lb-rules p{color:#737a70;line-height:1.6}.lb-live{font-size:12px;color:#43735a;background:#e6eee2;border-radius:30px;padding:10px 14px;white-space:nowrap}.lb-profile{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:25px 0;padding:24px 0;border-top:1px solid #dce0d5;border-bottom:1px solid #dce0d5}.lb-profile label{display:block;font-weight:700;margin-bottom:10px}.lb-profile form>div{display:flex;gap:8px}.lb-profile input,.lb-date input{background:white;border:1px solid #bcc6b7;border-radius:6px;padding:12px;min-width:0;font:inherit}.lb-profile input{flex:1}.lb-profile small{display:block;margin-top:10px;line-height:1.5;color:#70796d}.lb-profile button{white-space:nowrap}.lb-rules strong{font-size:16px}.lb-rules p{font-size:13px;margin:8px 0}#trainer-error{font-size:13px;color:#ae3b29}.lb-toolbar{display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;align-items:end;margin:20px 0}.lb-tabs{display:flex;flex-wrap:wrap;gap:6px}.lb-tabs button{border:1px solid #d2dacb;border-radius:6px;background:transparent;padding:10px 12px;font:inherit;font-size:13px;cursor:pointer}.lb-tabs button small{display:block;font-size:9px;margin-top:4px;opacity:.7}.lb-tabs button[aria-pressed=true]{background:#283d30;color:white;border-color:#283d30}.lb-date{font-size:11px;text-transform:uppercase;letter-spacing:1px}.lb-date input{display:block;margin-top:7px;font-size:13px}.lb-personal{background:#e9f0e3;padding:14px 18px;border-radius:6px;font-weight:600;margin:20px 0;font-size:14px}#lb-message{color:#73806f;font-size:13px;line-height:1.5}.lb-table-scroll{overflow-x:auto}.lb-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;min-width:560px}.lb-table th{padding:14px 10px;font-size:10px;letter-spacing:1.2px;text-transform:uppercase;border-bottom:1px solid #bdc9b6;color:#75836d}.lb-table td{padding:18px 10px;vertical-align:top;border-bottom:1px solid #e1e7db}.lb-table td:nth-child(n+3){white-space:nowrap}.lb-table small{color:#75816f}.lb-table .is-you{background:#eef4e8}.lb-rank{font-weight:800;font-size:19px;color:#6d805b;width:60px}.lb-table summary{cursor:pointer;list-style:none}.lb-table summary::before{content:'＋';margin-right:10px;color:#8b9c7d}.lb-table details[open]>summary::before{content:'−'}.lb-detail-hint{display:block;font-size:10px;margin:7px 0 0 22px;color:#7e8975}.lb-you{display:inline-block;font-size:9px;margin-left:8px;background:#56744d;color:white;padding:3px 6px;border-radius:3px}.lb-era-stats{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(160px,1fr));margin-top:20px}.lb-era-stats>div{padding:12px;background:#f1f3eb;border-radius:4px}.lb-era-stats strong,.lb-era-stats span,.lb-era-stats small{display:block}.lb-era-stats strong small{display:inline;font-size:9px;font-weight:400;margin-left:5px}.lb-era-stats span{font-size:11px;margin:7px 0}.lb-era-stats small{font-size:10px}.lb-empty{padding:45px 20px;text-align:center;background:repeating-linear-gradient(135deg,#f1f3ea,#f1f3ea 1px,transparent 1px,transparent 12px);border:1px dashed #d3ddc8;border-radius:10px}.lb-empty>span{font-size:34px;display:block;color:#94a283;margin-bottom:14px}.lb-empty strong{font-size:20px;display:block}.lb-empty p{font-size:13px;color:#7a8472}.lb-foot{display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:11px;color:#7a8472;margin-top:18px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:760px){.leaderboard-section{margin:32px 16px;padding:22px 16px}.lb-heading{display:block}.lb-live{display:inline-block;margin-top:6px}.lb-profile{grid-template-columns:1fr;gap:24px}.lb-profile form>div{flex-direction:column}.lb-profile input{width:100%}.lb-tabs button{padding:8px 9px;font-size:11px}.lb-foot{align-items:start}.lb-era-stats{grid-template-columns:1fr}.header nav{gap:10px}.header .faq-link{font-size:11px}}@media(prefers-reduced-motion:reduce){.lb-live{animation:none}}
