.modal-overlay{z-index:300;box-sizing:border-box;background:#0f172a73;justify-content:center;align-items:flex-end;width:100%;height:100%;padding:0;display:flex;position:fixed;inset:0;overflow:auto}.modal{background:var(--color-bg-card);border-radius:var(--radius-xl) var(--radius-xl) 0 0;flex-shrink:0;width:100%;max-width:480px;max-height:min(70dvh,100%);animation:.2s ease-out modal-slide-up;overflow:auto}@keyframes modal-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal__header{border-bottom:1px solid var(--color-border);background:var(--color-bg-card);justify-content:space-between;align-items:center;padding:16px 16px 8px;display:flex;position:sticky;top:0}.modal__title{font-size:var(--font-size-lg);margin:0;font-weight:700}.modal__close{font-size:18px}.modal__body{padding:8px 0}.modal-list{margin:0;padding:0;list-style:none}.modal-list__item{text-align:left;width:100%;min-height:var(--tap-min);font-size:var(--font-size-lg);color:var(--color-text);border-bottom:1px solid var(--color-border);padding:14px 16px;font-weight:600;transition:background .15s}.modal-list__item:hover,.modal-list__item:focus-visible{background:var(--color-bg);outline:none}.modal-list__item--selected{color:var(--color-primary);background:var(--color-self-bg)}.modal--tall{flex-direction:column;max-height:min(90dvh,100%);display:flex;overflow:hidden}.modal--tall-fill{height:min(90dvh,100%)}.modal--name-edit{max-height:min(50dvh,100%)}.modal--tall .modal__body{flex-direction:column;flex:1;min-height:0;padding:0;display:flex;overflow:hidden}@media (width>=768px){.modal-overlay{align-items:center;padding:24px}.modal{border-radius:var(--radius-xl);max-height:min(80dvh,100%)}.modal--tall{max-height:min(90dvh,100%)}.modal--name-edit{max-height:min(60dvh,100%)}}.data-info__product{font-size:var(--font-size-lg);color:var(--color-primary);margin:0;font-weight:800}.data-info__updates{border-radius:var(--radius-md);background:var(--surface-2);margin:10px 0 12px;padding:10px 12px}.data-info__updates-title{color:var(--color-primary);margin:0 0 6px;font-size:12px;font-weight:800}.data-info__updates-list{color:var(--text-primary);margin:0;padding-left:1.2em;font-size:13px;line-height:1.5}.data-info__updates-list li+li{margin-top:4px}.data-info__regulation{color:var(--color-text-muted);margin:2px 0 16px;font-weight:700}.data-info__list{margin:0}.data-info__list>div{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;padding:10px 0;display:flex}.data-info__list dt{color:var(--color-text-muted);font-size:13px;font-weight:600}.data-info__list dd{text-align:right;margin:0;font-weight:700}.data-info__ok{color:var(--color-advantage)}.data-info__error{color:var(--color-disadvantage)}.data-info__note{color:var(--color-text-muted);margin:12px 0 0;font-size:12px;line-height:1.6}.header{background:var(--color-bg-card);border-bottom:1px solid var(--color-border);z-index:100;padding:12px 16px;position:sticky;top:0}.header__inner{max-width:var(--content-max-width);justify-content:space-between;align-items:center;gap:12px;margin:0 auto;display:flex}.header__brand{flex:auto;min-width:0}.header__title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.header__title{margin:0;line-height:0}.header__logo-button{cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;padding:0;line-height:0;display:block}.header__logo-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.header__logo-button:active{opacity:.88}.header__logo{object-fit:contain;width:auto;max-width:min(220px,52vw);height:36px;display:block}.header__subtitle{color:var(--color-text-muted);margin:4px 0 0;font-size:12px}@media (width<=767px){.header__subtitle{display:none}.header__logo{max-width:min(168px,48vw);height:28px}}@media (width<=389px){.header{padding:10px 12px}.header__logo{max-width:min(132px,40vw)}.header__actions{gap:4px}}.header__data-button{cursor:pointer;border:0}.header__data-button:hover{filter:brightness(1.1)}.header__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}@media (width>=768px){.header{padding:16px 24px}.header__logo{max-width:260px;height:40px}.header__subtitle{font-size:var(--font-size-base)}}.header-nav{display:none}@media (width>=768px){.header-nav{gap:4px;display:flex}.header-nav__item{min-height:var(--tap-min);border-radius:var(--radius-md);color:var(--color-text-muted);padding:8px;font-weight:600;transition:background .15s,color .15s}.header-nav__item:hover{background:var(--color-bg);color:var(--color-primary)}.header-nav__item--active{background:var(--color-primary);color:var(--color-on-primary)}.header-nav__icon{margin-right:4px}}.bottom-nav{height:calc(var(--nav-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--color-bg-card);border-top:1px solid var(--color-border);box-shadow:var(--shadow-nav);z-index:200;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav__item{min-height:var(--tap-min);color:var(--color-text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:12px;font-weight:600;transition:color .15s;display:flex}.bottom-nav__item--active{color:var(--color-primary)}.bottom-nav__item--active .bottom-nav__icon{background:var(--color-primary);color:var(--color-on-primary)}.bottom-nav__label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}@media (width<=389px){.bottom-nav__item{gap:1px;padding:0 1px;font-size:10px}}.bottom-nav__icon{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:32px;height:32px;transition:background .15s,color .15s;display:flex}.bottom-nav__icon .nav-icon{width:20px;height:20px;display:block}.header-nav__icon{justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.header-nav__icon .nav-icon{width:16px;height:16px}@media (width>=768px){.bottom-nav{display:none}}.toast{bottom:calc(var(--nav-height) + 72px + env(safe-area-inset-bottom));background:var(--color-primary);color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-base);z-index:400;text-align:center;max-width:calc(100% - 32px);animation:toast-in var(--motion) ease-out;align-items:center;gap:var(--space-2);padding:10px 16px;font-weight:600;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #0f172a33}.toast__action{min-height:var(--touch-target);color:#fff;flex-shrink:0;padding:0 10px;font-weight:800;text-decoration:underline}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@media (width>=768px){.toast{bottom:32px}}.confirm-dialog{padding:8px 16px 16px}.confirm-dialog__message{font-size:var(--font-size-base);white-space:pre-line;color:var(--color-text);margin:0 0 20px;line-height:1.6}.confirm-dialog__actions{justify-content:flex-end;gap:8px;display:flex}.confirm-dialog__btn{min-height:var(--tap-min);border-radius:var(--radius-md);padding:10px 20px;font-weight:600}.confirm-dialog__btn--confirm{border:none}.confirm-dialog__btn--primary{background:var(--color-primary);color:var(--color-on-primary)}.confirm-dialog__btn--primary:hover{background:var(--color-primary-light)}.confirm-dialog__btn--danger{background:var(--color-disadvantage);color:#fff}.confirm-dialog__btn--danger:hover{background:#b91c1c}@media (width<=480px){.confirm-dialog__actions{flex-direction:column-reverse}.confirm-dialog__btn{width:100%}}.pk-image{object-fit:contain;background:0 0;flex-shrink:0;display:block}.pk-image--xs{width:32px;height:32px}.pk-image--sm{width:48px;height:48px}.pk-image--md{width:64px;height:64px}.pk-image--lg{width:88px;height:88px}.pk-image--xl{width:120px;height:120px}.pk-image--empty{background:var(--surface-2);border-radius:50%}.pk-image--mirror{transform:scaleX(-1)}@media (width>=900px) and (orientation:landscape){.pk-image--md{width:72px;height:72px}.pk-image--lg{width:104px;height:104px}.pk-image--xl{width:120px;height:120px}}.bottom-sheet{z-index:500;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.bottom-sheet__backdrop{background:#071018b8;border:0;width:100%;height:100%;position:absolute;inset:0}.bottom-sheet__panel{background:var(--color-bg-card);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:min(100%,560px);max-height:80dvh;box-shadow:var(--shadow-nav);animation:bottom-sheet-in var(--motion) ease-out;flex-direction:column;display:flex;position:relative;overflow:hidden}.bottom-sheet__header{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);background:var(--color-bg-card);flex-shrink:0;display:flex}.bottom-sheet__title{font-size:var(--font-size-lg);margin:0}.bottom-sheet__close{min-height:var(--touch-target);min-width:var(--touch-target);color:var(--color-primary);font-weight:700}.bottom-sheet__body{min-height:0;padding:var(--space-3);padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom));background:var(--color-bg-card);flex:1;overflow:auto}@keyframes bottom-sheet-in{0%{transform:translateY(16px)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.bottom-sheet__panel{animation:none}}.battle-page-shell{padding-bottom:env(safe-area-inset-bottom);overflow-x:clip}.battle-free-back{width:100%;min-height:48px;margin-bottom:12px}.battle-hub{--hub-accent:#72dfff;--hub-accent-strong:#27b9e8;--hub-danger:#ff6578;isolation:isolate;min-height:min(690px, calc(100dvh - var(--header-height) - var(--nav-height) - 24px));border:1px solid color-mix(in srgb, var(--hub-accent) 26%, var(--color-border));background:linear-gradient(180deg, #0c162b47, #060b18f0), var(--color-bg-card);text-align:center;border-radius:24px;position:relative;overflow:hidden;box-shadow:0 24px 60px #00000057,inset 0 1px #ffffff0f}.battle-hub--live{--hub-accent:#ff7183;--hub-accent-strong:#e9425d}.battle-hub__stadium{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.battle-hub__stadium:before{content:"";background:radial-gradient(circle at 12% 9%,#72dfff33,#0000 28%),radial-gradient(circle at 88% 9%,#ff65782b,#0000 28%),repeating-linear-gradient(90deg,#0000 0 38px,#ffffff06 39px,#0000 40px);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0%,#0000 58%);mask-image:linear-gradient(#000 0%,#0000 58%)}.battle-hub__light{opacity:.26;filter:blur(8px);transform-origin:top;will-change:transform, opacity;width:180px;height:430px;position:absolute;top:-80px}.battle-hub__light--left{clip-path:polygon(44% 0,56% 0,100% 100%,0 100%);background:linear-gradient(#72dfffb8,#0000 74%);animation:5.8s ease-in-out infinite battle-hub-light-sway-left;left:-24px;transform:rotate(-15deg)}.battle-hub__light--right{clip-path:polygon(44% 0,56% 0,100% 100%,0 100%);background:linear-gradient(#ff657899,#0000 74%);animation:6.4s ease-in-out infinite battle-hub-light-sway-right;right:-24px;transform:rotate(15deg)}@keyframes battle-hub-light-sway-left{0%,to{opacity:.2;transform:rotate(-16deg)scaleY(1)}50%{opacity:.36;transform:rotate(-10deg)scaleY(1.06)}}@keyframes battle-hub-light-sway-right{0%,to{opacity:.18;transform:rotate(16deg)scaleY(1)}50%{opacity:.34;transform:rotate(10deg)scaleY(1.05)}}.battle-hub__field{background:radial-gradient(circle,#3e7e912e 0 28%,#0000 29%),linear-gradient(#27b9e81f,#27b9e804);border:2px solid #72dfff2e;border-radius:50%;width:640px;height:320px;animation:4.8s ease-in-out infinite battle-hub-field-glow;position:absolute;bottom:-138px;left:50%;transform:translate(-50%)perspective(420px)rotateX(58deg);box-shadow:0 0 60px #27b9e821,inset 0 0 42px #27b9e81f}@keyframes battle-hub-field-glow{0%,to{box-shadow:0 0 48px #27b9e81a,inset 0 0 36px #27b9e81a}50%{box-shadow:0 0 78px #27b9e838,inset 0 0 52px #27b9e82e}}.battle-hub__field-line{border-top:2px solid #72dfff2e;width:100%;position:absolute;top:50%;left:0}.battle-hub__field-center{border:2px solid #72dfff3b;border-radius:50%;width:116px;height:116px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.battle-hub__field-center:before{content:"";border:2px solid #72dfff52;border-radius:50%;position:absolute;inset:41px}.battle-hub__content{z-index:1;width:100%;max-width:560px;min-height:inherit;flex-direction:column;margin:0 auto;padding:24px 16px 20px;display:flex;position:relative}.battle-hub__hero{flex-direction:column;align-items:center;display:flex}.battle-hub__logo{filter:drop-shadow(0 5px 16px #0000004d);width:min(218px,70%);height:auto;margin:0 auto 8px;display:block}.battle-hub__rule{color:var(--color-text-muted);margin:0;font-size:12px;font-weight:700}.battle-hub__eyebrow{color:var(--hub-accent);letter-spacing:.2em;text-shadow:0 0 16px color-mix(in srgb, var(--hub-accent) 70%, transparent);margin:22px 0 5px;font-size:11px;font-weight:900}.battle-hub h2{color:var(--color-text);letter-spacing:.02em;margin:0;font-size:clamp(26px,7vw,36px);line-height:1.2}.battle-hub__lead{max-width:360px;color:var(--color-text-muted);margin:8px auto 0;font-size:13px;font-weight:600;line-height:1.6}.battle-hub__team-label{color:var(--color-text-muted);letter-spacing:.16em;text-align:left;margin:22px 0 8px;font-size:10px;font-weight:900}.hub-team-card{border:1px solid var(--color-border);background:var(--surface-1);width:100%;color:var(--color-text);text-align:left;border-radius:12px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.hub-team-card.is-selected{box-shadow:inset 0 0 0 2px var(--color-primary);background:var(--color-self-bg)}.hub-team-card.is-empty:not(.is-selected){opacity:.72;background:0 0;border-style:dashed}.hub-team-card--hub{margin:0}button.hub-team-card{cursor:pointer;font:inherit}button.hub-team-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.hub-team-card__head{align-items:center;gap:8px;display:flex}.hub-team-card__name{min-width:0;color:var(--color-primary);text-underline-offset:3px;overflow-wrap:anywhere;flex:auto;font-size:15px;font-weight:800;line-height:1.35;text-decoration:underline}.hub-team-card.is-empty:not(.is-selected) .hub-team-card__name{color:var(--color-text-muted)}.hub-team-card__badge{border:1px solid var(--color-border);background:var(--surface-2);min-width:64px;min-height:36px;color:var(--color-text);border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.hub-team-card__badge.is-on{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.hub-team-card__badge.is-live{border-color:color-mix(in srgb, var(--hub-accent) 66%, transparent);color:var(--hub-accent);letter-spacing:.08em;box-shadow:0 0 16px color-mix(in srgb, var(--hub-accent) 30%, transparent);background:0 0;animation:1.8s ease-in-out infinite battle-hub-live-pulse}.hub-team-card__note{color:var(--color-text-muted);margin:0;font-size:12px;font-weight:700}.hub-team-card__row{gap:6px;width:100%;display:flex}.hub-team-card__slot{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--color-border) 70%, transparent);background:var(--surface-2);border-radius:10px;flex:1 1 0;justify-content:center;align-items:center;min-width:0;display:flex;position:relative;overflow:hidden}.hub-team-card__slot.is-empty{background:0 0;border-style:dashed}.hub-team-card__slot .pk-image,.hub-team-card__slot img{object-fit:contain;width:100%;height:100%}.hub-team-card__item{z-index:1;pointer-events:none;background:#fff;border-radius:999px;justify-content:center;align-items:center;width:16px;height:16px;display:flex;position:absolute;bottom:0;right:0;overflow:hidden}.hub-team-card__item img{object-fit:contain;width:14px;height:14px}.hub-team-picker{flex-direction:column;gap:12px;display:flex}.hub-team-picker__empty{color:var(--color-text-muted);margin:0;font-weight:700}.hub-team-picker__list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.hub-team-picker__create{border:1px dashed color-mix(in srgb, var(--color-primary) 55%, var(--color-border));width:100%;min-height:56px;color:var(--color-text);background:#27b9e814;border-radius:14px;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;font-size:15px;font-weight:800;display:flex}.hub-team-picker__create-kicker{color:var(--color-primary);letter-spacing:.14em;font-size:10px;font-weight:900}@keyframes battle-hub-live-pulse{50%{opacity:.62}}.battle-hub__battle-command{border:1px solid color-mix(in srgb, var(--hub-accent) 78%, white 8%);background:linear-gradient(105deg, color-mix(in srgb, var(--hub-accent-strong) 88%, #0d2332), #16617b);color:#f8fdff;text-align:left;width:100%;min-height:78px;box-shadow:0 12px 30px color-mix(in srgb, var(--hub-accent) 20%, transparent), inset 0 1px 0 #fff3;border-radius:16px;flex-direction:column;justify-content:center;align-items:flex-start;margin-top:14px;padding:12px 56px 12px 18px;transition:transform .15s,filter .15s;display:flex;position:relative;overflow:hidden}.battle-hub__battle-command:before{content:"";background:#ffffff17;width:110px;height:210%;position:absolute;top:-70%;right:38px;transform:rotate(24deg)}.battle-hub__battle-command:hover{filter:brightness(1.08);transform:translateY(-1px)}.battle-hub__battle-command:active{transform:translateY(1px)}.battle-hub__command-kicker{letter-spacing:.14em;opacity:.78;font-size:10px;font-weight:900;position:relative}.battle-hub__command-label{margin-top:2px;font-size:21px;font-weight:900;position:relative}.battle-hub__command-arrow{font-size:38px;font-weight:300;line-height:1;position:absolute;top:50%;right:18px;transform:translateY(-54%)}.battle-hub__session-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.battle-hub__sub-command{border:1px solid var(--color-border);min-height:44px;color:var(--color-text);background:#0b1427c7;border-radius:12px;padding:8px;font-size:12px;font-weight:800}.battle-hub__sub-command--danger{color:var(--hub-danger)}.battle-hub__utility{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:auto;padding-top:28px;display:grid}.battle-hub__utility-btn{min-height:48px;color:var(--color-text-muted);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#081020b3;border:1px solid #ffffff17;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:8px 10px;font-size:12px;font-weight:800;display:flex}.battle-hub__utility-btn:hover{border-color:color-mix(in srgb, var(--hub-accent) 45%, var(--color-border));color:var(--color-text)}.battle-hub__utility-btn>span{color:var(--hub-accent);font-size:15px}.battle-hub--empty .battle-hub__battle-command{margin-top:14px}.battle-hub--empty .battle-hub__content{justify-content:center}@media (width<=389px){.battle-hub{min-height:min(620px, calc(100dvh - var(--header-height) - var(--nav-height) - 16px));border-radius:18px}.battle-hub__content{padding:16px 12px 12px}.battle-hub__logo{width:min(148px,54%)}.battle-hub__eyebrow{margin-top:12px}.battle-hub h2{font-size:23px}.battle-hub__lead{font-size:12px}.battle-hub__team-label{margin-top:12px}.hub-team-card__row{gap:5px}.hub-team-card{padding:10px}.battle-hub__battle-command{min-height:66px;margin-top:10px}.battle-hub__utility{padding-top:14px}}@media (width>=768px){.battle-hub{min-height:650px}.battle-hub__content{padding:36px 32px 28px}.battle-hub__logo{width:min(260px,70%)}.battle-hub__eyebrow,.battle-hub__team-label{margin-top:28px}}@media (prefers-reduced-motion:reduce){.hub-team-card__badge.is-live,.battle-hub__light--left,.battle-hub__light--right,.battle-hub__field{animation:none}.battle-hub__battle-command{transition:none}}.battle-setup{--setup-stepper-height:40px;padding-bottom:calc(var(--nav-height) + 140px + env(safe-area-inset-bottom));flex-direction:column;gap:8px;display:flex}.battle-setup__lead,.battle-setup__link{color:var(--color-text-muted);font-weight:600}.battle-setup__link{min-height:48px;text-decoration:underline}.battle-setup__primary{bottom:calc(var(--nav-height) + 8px + env(safe-area-inset-bottom));z-index:5;width:100%;min-height:48px;margin-top:12px;position:sticky;box-shadow:0 -8px 16px #0000003d}@media (width>=768px){.battle-setup__primary{bottom:8px}}.battle-setup__back{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);min-height:36px;color:var(--color-primary);flex:none;justify-content:center;align-items:center;padding:6px 14px;font-size:13px;font-weight:700;display:inline-flex}.battle-setup__back:hover{background:var(--surface-2)}.battle-setup-stepper{z-index:7;background:var(--color-bg);padding-bottom:0;position:sticky;top:0}.battle-setup-stepper__bar{align-items:center;gap:10px;margin:0 0 8px;display:flex}.battle-setup-stepper__mobile{color:var(--color-primary);margin:0;font-weight:800}.battle-setup-stepper__list{gap:8px;margin:0;padding:0;list-style:none;display:none}.battle-setup-stepper__item{color:var(--color-text-muted);align-items:center;gap:6px;font-weight:700;display:flex}.battle-setup-stepper__btn{min-height:40px;color:inherit;font:inherit;align-items:center;gap:6px;padding:0;display:flex}.battle-setup-stepper__btn:disabled{cursor:default}.battle-setup-stepper__item--current,.battle-setup-stepper__item--done{color:var(--color-primary)}.battle-setup-stepper__num{background:var(--color-border);border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;display:inline-flex}.battle-setup-stepper__item--current .battle-setup-stepper__num,.battle-setup-stepper__item--done .battle-setup-stepper__num{background:var(--color-primary);color:var(--color-on-primary)}.team-select-list{flex-direction:column;gap:12px;display:flex}.team-select-card__name{margin:0 0 8px}.team-select-card__pokemon{margin:0 0 12px;padding-left:18px}.team-select-card__error{color:var(--color-disadvantage);font-size:13px}.team-select-card--selected{outline:2px solid var(--color-primary)}.opponent-preview-list{grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none;display:grid}.opponent-preview-slot{min-width:0}.opponent-preview-slot__header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.opponent-preview-slot__index{color:var(--color-primary);font-weight:800}.opponent-preview-slot__order{gap:6px;display:flex}.opponent-preview-slot__order-btn,.opponent-preview-slot__clear{min-width:48px;min-height:48px}.opponent-preview-slot__name{margin:0;font-weight:800}.opponent-preview-slot__source{color:var(--color-text-muted);margin:4px 0 8px;font-size:12px;font-weight:700}.opponent-preview-slot__error{color:var(--color-disadvantage);font-weight:700}.self-select-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.self-select-card,.lead-select__item{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);min-height:56px;padding:8px;font-weight:700}.self-select-card--selected,.lead-select__item--lead{border-color:var(--color-self);background:var(--color-self-bg)}.self-select-card__badge{color:var(--color-self);font-size:12px;display:block}.lead-select{margin-top:16px}.lead-select__title{margin:0 0 8px}.lead-select__list{flex-direction:column;gap:8px;display:flex}.battle-confirm__team,.battle-confirm__label{font-weight:700}.battle-confirm__list{margin:0;padding:0;list-style:none}.live-battle{padding-bottom:env(safe-area-inset-bottom);flex-direction:column;gap:12px;display:flex;overflow-x:hidden}.live-battle-header{z-index:8;background:var(--color-bg);padding:8px 0 10px;position:sticky;top:0}.live-battle-header__top{grid-template-columns:1fr auto auto;align-items:center;gap:8px;display:grid}.live-battle-header__rule,.live-battle-header__count{color:var(--color-primary);margin:0;font-weight:800}.live-battle-header__team{color:var(--color-text-muted);margin:0;font-size:12px}.live-battle-header__menu{min-width:48px;min-height:48px;font-weight:800}.live-battle-header__vs{margin:6px 0 0;font-weight:800}.battle-session-menu{border-radius:var(--radius-lg);background:var(--color-bg-card);box-shadow:var(--shadow-card);flex-direction:column;gap:8px;padding:12px;display:flex}.battle-session-menu__item,.battle-session-menu__close{min-height:48px;font-weight:700}.battle-session-menu__item--danger{color:var(--color-disadvantage)}.live-battle__body{flex-direction:column;gap:12px;display:flex}.roster__title{margin:0 0 8px;font-size:13px}.roster__list{flex-wrap:wrap;gap:8px;display:flex;overflow-x:hidden}.roster__list--opponent{grid-template-columns:1fr 1fr;gap:8px;display:grid}.roster__chip,.roster__undo{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-card);text-align:left;min-height:48px;padding:8px}.roster__chip--current{outline:2px solid var(--color-primary)}.roster__chip--muted,.roster__chip--fainted{opacity:.55}.roster__chip-name,.roster__chip-hp,.roster__chip-status{display:block}.roster__chip-hp,.roster__chip-status{color:var(--color-text-muted);font-size:12px}.roster__opponent-wrap{flex-direction:column;gap:4px;display:flex}.roster__undo{font-size:12px}.current-matchup{border-radius:var(--radius-lg);background:var(--color-bg-card);box-shadow:var(--shadow-card);grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:16px 12px;display:grid}.current-matchup__name{font-weight:800;font-size:var(--font-size-lg);margin:0}.current-matchup__hp{margin:4px 0 0;font-weight:700}.current-matchup__vs{color:var(--color-text-muted);margin:0;font-weight:800}.current-matchup__side--self{color:var(--color-self)}.current-matchup__side--opponent{color:var(--color-opponent);text-align:right}.live-controls{border-radius:var(--radius-lg);background:var(--color-bg-card);flex-direction:column;gap:8px;padding:12px;display:flex}.live-hp__label,.live-status{font-weight:700}.live-hp__buttons{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.live-hp__btn,.live-status__select,.live-hp__input{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface-2);min-width:48px;min-height:48px;color:var(--color-text);padding:0 10px;font-weight:700}.live-hp__btn--faint{color:var(--color-disadvantage)}.live-hp__input{width:72px}.live-status__select{margin-left:8px}.live-battle__wait{text-align:center}.live-battle__details-toggle{width:100%;min-height:48px;color:var(--color-primary);font-weight:700}.live-field-row{justify-content:space-between;align-items:center;gap:8px;min-height:48px;font-weight:700;display:flex}.live-field-row select{min-width:120px;min-height:48px}@media (width>=480px){.battle-setup-stepper__list{flex:auto;grid-template-columns:repeat(4,1fr);display:grid}.battle-setup-stepper__mobile{display:none}}@media (width>=900px){.self-select-grid{grid-template-columns:repeat(3,1fr)}.roster__list--opponent{grid-template-columns:1fr}}@media (width>=900px) and (orientation:landscape){.live-battle__body{grid-template-columns:minmax(180px,220px) minmax(0,1fr) minmax(200px,260px);align-items:start;gap:12px;display:grid}.roster--self{grid-area:1/1}.live-battle__center{grid-area:1/2}.roster--opponent{grid-area:1/3}.roster__list{flex-direction:column}}.history-tags{gap:var(--space-1);flex-wrap:wrap;display:flex}.history-tag,.history-filters__chip,.previous-note-btn{min-height:var(--touch-target);border:1px solid var(--color-border);background:var(--color-bg-card);border-radius:999px;padding:0 12px;font-weight:700}.history-tag.is-on,.history-filters__chip.is-on{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.result-form{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.result-form__title{margin:0 0 var(--space-2);color:var(--color-primary);font-size:20px}.result-form__summary,.result-form__label,.result-form__field{font-weight:700}.result-form__summary{color:var(--color-text-muted);font-size:13px}.result-form__result{margin:var(--space-3) 0;border:0;padding:0}.result-form__choices{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.result-form__choice{border-radius:var(--radius-md);border:2px solid var(--color-border);min-height:56px;font-size:18px;font-weight:800}.result-form__choice--win.is-on{background:var(--color-advantage-bg);border-color:var(--color-advantage);color:var(--color-advantage)}.result-form__choice--loss.is-on{background:var(--color-disadvantage-bg);border-color:var(--color-disadvantage);color:var(--color-disadvantage)}.result-form__field,.result-form__input,.result-form__textarea{width:100%;margin-top:var(--space-2);display:block}.result-form__input,.result-form__textarea{min-height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-md);font-variant-numeric:tabular-nums;padding:10px 12px}.result-form__error{color:var(--color-disadvantage);font-weight:800}.result-form__bar{bottom:calc(var(--nav-height) + env(safe-area-inset-bottom));padding-top:var(--space-2);background:var(--color-bg);position:sticky}.result-form__save{width:100%;min-height:var(--touch-target)}.result-form__discard,.result-form__link{margin:var(--space-2) auto 0;min-height:var(--touch-target);color:var(--color-text-muted);text-decoration:underline;display:block}.result-form__hint{color:var(--color-text-muted);margin-top:4px;font-size:12px;font-weight:700;display:block}.result-form__saved-actions{gap:var(--space-2);flex-direction:column;display:flex}.history-tags__group{width:100%;margin-top:var(--space-1)}.history-tags__group-label{color:var(--color-text-muted);margin:0 0 4px;font-size:12px}.history-filters__extra,.history-filters__active{gap:var(--space-1);flex-wrap:wrap;display:flex}.history-filters__count,.history-filters__clear,.history-card__empty,.history-detail__hint{color:var(--color-text-muted);margin:0;font-size:13px;font-weight:700}.history-filters__pick{width:100%;min-height:var(--touch-target);text-align:left;align-items:center;gap:8px;display:flex}.history-filters__pick.is-on{color:var(--color-primary);font-weight:800}.history-detail__nav{gap:var(--space-1);flex-wrap:wrap;display:flex}.history-detail__confirm{margin-bottom:var(--space-2)}.history-card{text-align:left;width:100%;min-width:0;max-width:100%;padding:var(--space-2);margin-bottom:var(--space-1);border-radius:var(--radius-md);background:var(--color-bg-card);border:1px solid var(--color-border)}.history-card__vs{align-items:center;gap:6px;min-width:0;margin:8px 0;display:flex}.history-card__vs>span{flex:none;font-size:12px;font-weight:800}.history-card__icons{flex:1 1 0;gap:2px;min-width:0;display:flex}.history-card__icons .pk-image{aspect-ratio:1;flex:1 1 0;width:auto;min-width:0;max-width:48px;height:auto}.history-card.is-selected{outline:2px solid var(--color-primary)}.history-card__top{justify-content:space-between;gap:var(--space-1);display:flex}.history-card__date,.history-card__team,.history-card__line,.history-card__rating,.history-card__tags,.history-card__memo{margin:0}.history-card__team{font-weight:800}.history-card__line,.history-card__tags,.history-card__rating{color:var(--color-text-muted);font-size:13px}.history-card__memo{border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-primary);text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:4px;padding:6px 8px;font-size:13px;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.history-card__result{margin:0;font-weight:800}.history-card__result--win{color:var(--color-advantage)}.history-card__result--loss{color:var(--color-disadvantage)}.history-search__input,.history-filters__select select{width:100%;min-height:var(--touch-target);border-radius:var(--radius-md);border:1px solid var(--color-border);margin-top:4px;padding:0 12px}.history-filters{gap:var(--space-2);margin:var(--space-2) 0;flex-direction:column;display:flex}.history-filters__results{gap:var(--space-1);grid-template-columns:1fr 1fr 1fr;display:grid}.history-list__group{margin:var(--space-2) 0 var(--space-1);color:var(--color-primary);font-size:13px}.history-detail__back,.history-detail__btn,.history-detail__delete{min-height:var(--touch-target);margin-bottom:var(--space-2)}.history-detail__section{margin:var(--space-3) 0}.history-detail__section h3{margin:0 0 var(--space-1);color:var(--color-primary)}.history-detail__list{margin:0;padding-left:18px}.history-detail__moves{color:var(--color-text-muted);margin:4px 0 0;font-size:13px}.history-detail__next{padding:var(--space-2);border-radius:var(--radius-md);background:var(--color-warning-bg);overflow-wrap:anywhere}.history-detail__delete{color:var(--color-disadvantage);text-decoration:underline}.previous-note-btn{margin-bottom:var(--space-2)}.previous-note-body{margin:0;font-weight:700}.previous-note-setup{margin:0 0 var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);background:var(--color-warning-bg);font-weight:700}.type-icon{background:0 0;border:2px solid #0000;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:0;display:inline-flex;overflow:hidden}.type-icon img{pointer-events:none;width:100%;height:100%;display:block}.type-icon--sm{width:28px;height:28px}.type-icon--md{width:36px;min-width:36px;height:36px;min-height:36px}button.type-icon{width:40px;min-width:40px;height:40px;min-height:40px}.type-icon-button{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;min-width:40px;padding:0;display:inline-flex}.type-icon-button .type-icon--md{width:40px;min-width:40px;height:40px;min-height:40px}.type-icon.is-on{border-color:var(--accent-warning);box-shadow:0 0 0 2px #ffd42959}.ck-section,.ck-opp{flex-direction:column;gap:12px;display:flex}.ck-title{color:var(--text-primary);margin:0;font-size:18px;font-weight:800}.ck-label{color:var(--text-secondary);margin:0;font-size:13px;font-weight:700}.ck-label:before{content:"";background:var(--accent-warning);vertical-align:-1px;border-radius:2px;width:3px;height:12px;margin-right:8px;display:inline-block}.ck-team-card{text-align:left;background:var(--surface-1);border:1px solid var(--color-border);width:100%;min-width:0;max-width:100%;color:var(--text-secondary);border-radius:16px;flex-direction:column;gap:10px;padding:14px;display:flex}.ck-team-card:disabled{opacity:.7}.ck-team-card.is-selected{color:var(--text-primary);background:linear-gradient(var(--surface-2), var(--surface-2)) padding-box, var(--brand-gradient) border-box;border:2px solid #0000}.ck-team-card__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.ck-team-card__name{white-space:nowrap;text-overflow:ellipsis;min-width:0;margin:0;font-size:16px;overflow:hidden}.ck-chip{background:var(--surface-2);color:var(--text-secondary);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:800}.ck-team-card.is-selected .ck-chip{background:var(--brand-gradient);color:var(--color-on-primary)}.ck-opp{gap:8px;min-width:0;height:auto;max-height:none;overflow:visible}.ck-opp-head{z-index:auto;background:0 0;flex-direction:column;flex:none;gap:8px;padding-bottom:0;display:flex;position:static}.ck-opp-head__row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.ck-opp-count{color:var(--color-primary);margin:0;font-size:16px;font-weight:800}.ck-opp-ready{color:var(--color-primary);margin:0;font-size:13px;font-weight:800}.ck-opp-clear{min-height:32px;color:var(--color-text-muted);margin:0;font-size:13px;font-weight:700;text-decoration:underline}.ck-team-card__row,.ck-slots,.ck-pick-row,.ck-recent__row{gap:6px;display:flex}.ck-team-card__slot,.ck-slot,.ck-grid-card,.ck-pick{background:var(--surface-2);border-radius:12px;justify-content:center;align-items:center;min-width:48px;min-height:48px;display:flex;position:relative}.ck-slots{justify-content:space-between}.ck-slots--sticky{top:var(--header-height);z-index:6;background:var(--color-bg);border-bottom:1px solid var(--color-border);flex:none;margin:0 -16px;padding:8px 16px;position:sticky;box-shadow:0 6px 16px #00000047}.ck-slots--sticky:before{content:"";background:var(--color-bg);height:3px;position:absolute;top:-3px;left:0;right:0}.ck-opp-tools{flex-direction:column;flex:none;gap:8px;display:flex}@media (width<=389px){.ck-slots--sticky{margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}}.ck-team-card__row{min-width:0}.ck-team-card__slot{aspect-ratio:1;flex:1 1 0;min-width:0;overflow:hidden}.ck-team-card__slot .pk-image{width:100%;max-width:48px;height:100%}.ck-slot{flex:1;min-width:0;min-height:56px;transition:outline-color .16s,background-color .16s}.ck-slot__num{color:var(--text-secondary);font-size:10px;font-weight:800;position:absolute;top:2px;left:4px}.ck-slot.is-current{outline:2px solid var(--accent-warning);background:var(--color-warning-bg)}.ck-slot-actions{flex-wrap:wrap;gap:8px;display:flex}.ck-search input{border:1px solid var(--color-border);background:var(--surface-2);width:100%;min-height:48px;color:var(--text-primary);border-radius:14px;padding:0 16px}.ck-types{flex-wrap:wrap;flex:none;align-items:flex-start;gap:6px;display:flex}.ck-opp-sort-note{color:var(--color-text-muted);flex:none;margin:0;font-size:12px;font-weight:700}.ck-type-all{text-align:center;white-space:nowrap;background:var(--surface-2);min-width:48px;min-height:36px;color:var(--text-secondary);border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.ck-type-all.is-on{background:var(--accent-primary);color:var(--color-on-primary)}.ck-types--compact{gap:4px}.ck-recent{flex:none;min-width:0}.ck-recent__row{flex-wrap:nowrap;align-items:flex-start;padding-bottom:4px;overflow-x:auto}.ck-recent__row .ck-grid-card{flex:0 0 56px;width:56px;height:56px;padding-bottom:0}.ck-grid{flex:none;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;align-items:start;gap:8px;min-height:0;max-height:none;padding-bottom:8px;display:grid;overflow:visible}.ck-grid-empty{color:var(--text-secondary);grid-column:1/-1;margin:12px 0;font-weight:700}.ck-grid-card{border:1px solid color-mix(in srgb, var(--color-border) 80%, transparent);box-sizing:border-box;width:100%;min-width:0;height:0;padding-bottom:100%;display:block;position:relative;overflow:hidden}.ck-grid-card>.pk-image,.ck-grid-card>img{object-fit:contain;width:70%;height:70%;margin:auto;position:absolute;inset:0}.ck-grid-card.is-selected{outline:2px solid var(--accent-primary);outline-offset:-2px;opacity:.55}.ck-sheet-actions{flex-direction:column;gap:8px;display:flex}.ck-sheet-actions .btn-primary,.ck-sheet-actions .btn-secondary{min-height:48px}.ck-check,.ck-order{border-radius:999px;padding:2px 4px;font-size:9px;font-weight:800;line-height:1;position:absolute}.ck-team-card__item{z-index:2;pointer-events:none;background:#fff;border-radius:999px;justify-content:center;align-items:center;width:20px;height:20px;display:flex;position:absolute;bottom:1px;right:1px;overflow:hidden}.ck-team-card__item img{object-fit:contain;width:16px;height:16px}.ck-check,.ck-order{background:var(--accent-primary);color:var(--color-on-primary);bottom:2px;right:2px}.ck-pick__hint{color:var(--text-secondary);margin:0 0 8px;font-size:12px;font-weight:700}.ck-pick .ck-order{text-align:center;min-width:18px;font-size:10px;top:2px;bottom:auto}.ck-pick .ck-order--lead{background:var(--color-primary);padding:2px 5px}.ck-reco__member{display:inline-flex;position:relative}.ck-reco__ord{background:var(--accent-primary);min-width:16px;color:var(--color-on-primary);text-align:center;border-radius:999px;padding:1px 4px;font-size:9px;font-weight:800;line-height:1.2;position:absolute;top:-2px;right:-2px}.ck-select{--ck-own-dock-height:132px;flex-direction:column;gap:12px;display:flex}.ck-own--dock{left:50%;bottom:calc(var(--nav-height) + env(safe-area-inset-bottom));z-index:190;width:100%;max-width:var(--content-max-width);background:var(--color-bg);border-top:1px solid var(--color-border);padding:10px 16px 12px;position:fixed;transform:translate(-50%);box-shadow:0 -6px 16px #00000047}.ck-own--dock .ck-label{margin:0 0 4px}.ck-own--dock .ck-pick__hint{margin:0 0 8px}.ck-own-spacer{height:var(--ck-own-dock-height);pointer-events:none;flex:none}@media (width<=389px){.ck-own--dock{padding-left:12px;padding-right:12px}}@media (width>=768px){.ck-own--dock{padding-left:24px;padding-right:24px;bottom:0}}.ck-select__header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.ck-reco-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:8px;width:100%;min-width:0;display:grid}.ck-reco-pair.is-single{grid-template-columns:minmax(0,1fr)}.ck-reco-pair>.ck-reco{flex-direction:column;gap:6px;min-width:0;display:flex}.ck-reco-pair .ck-reco__card{width:100%}.ck-reco-pair .ck-reco__apply{box-sizing:border-box;width:100%}.ck-reco__hint{color:var(--text-secondary);margin:0 0 8px;font-size:12px;font-weight:700}.ck-reco__reasons{width:100%;color:var(--text-secondary);margin:0;padding-left:1.1em;font-size:11px;font-weight:700;list-style:outside}.ck-reco__reasons--risk{color:var(--color-danger,#b45309)}.ck-reco__risks,.ck-reco__history-win{flex-direction:column;gap:6px;width:100%;display:flex}.ck-reco__history-win{border-top:1px solid var(--color-border);margin-top:4px;padding-top:8px}.ck-select__count,.ck-own__now,.ck-mx-status,.ck-reco__score,.ck-reco__lead,.ck-reco__note,.ck-pick__rate{color:var(--text-secondary);margin:0;font-size:12px;font-weight:700}.ck-select__opponents .ck-label{margin-bottom:4px}.ck-mx-wrap{width:100%;min-width:0;overflow:visible}.ck-mx{--ck-mx-head:52px;flex-direction:column;gap:2px;width:100%;display:flex}.ck-mx.is-updating{opacity:.55}.ck-mx__header,.ck-mx__line{grid-template-columns:var(--ck-mx-head) repeat(6, minmax(0, 1fr));align-items:stretch;gap:2px;width:100%;display:grid}.ck-mx__header{z-index:4;background:var(--color-bg);padding-bottom:2px;position:sticky;top:36px}.ck-mx__corner,.ck-mx__col{background:var(--color-bg);min-height:44px}.ck-mx__col,.ck-mx__row,.ck-cell{z-index:1;touch-action:manipulation;justify-content:center;align-items:center;min-width:0;padding:0;display:flex;position:relative}.ck-mx__row{flex-direction:column;gap:0;min-height:52px}.ck-reco__card,.ck-now-row{align-items:center;gap:8px;display:flex}.ck-reco__card{background:var(--surface-1);border-radius:14px;flex-wrap:wrap;padding:10px}.ck-reco__row{gap:6px;display:flex}.ck-reco__apply,.ck-reco__more,.ck-own__detail-link,.ck-aux__toggle{text-align:center;justify-content:center;align-items:center;min-height:44px;padding:8px 12px;font-weight:800;display:inline-flex}.ck-reco__more,.ck-own__detail-link{color:var(--text-secondary);text-decoration:underline}.ck-reco__list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.ck-reco__item{border-bottom:1px solid var(--color-border);flex-direction:column;gap:6px;padding:8px 0;display:flex}.ck-now-row{justify-content:flex-start}.ck-now{background:var(--surface-2);border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.ck-now__empty{color:var(--text-secondary);font-size:12px;font-weight:800}.ck-pick-row--six{gap:4px}.ck-pick-row--six .ck-pick{min-width:0;min-height:52px;padding:2px}.ck-pick-row--lead .ck-pick{min-height:64px}.ck-pick__rate{font-size:10px}.ck-aux{flex-direction:column;gap:8px;display:flex}.ck-aux__toggle{background:var(--surface-2);width:100%;color:var(--text-primary);border-radius:12px}.ck-aux__tabs{gap:8px;display:flex}.ck-aux__tabs button{background:var(--surface-2);min-height:40px;color:var(--text-secondary);text-align:center;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-weight:800;display:inline-flex}.ck-aux__tabs button.is-on{background:var(--accent-primary);color:var(--color-on-primary)}.ck-aux__types{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.ck-aux__types li{align-items:center;gap:8px;font-size:12px;display:flex}.ck-aux__empty{color:var(--text-secondary);margin:0}.ck-detail{flex-direction:column;gap:8px;display:flex}.ck-detail__vs{justify-content:center;align-items:center;gap:8px;display:flex}.ck-detail__rating{margin:0;font-size:20px;font-weight:800}.ck-detail__rating span{color:var(--text-secondary);margin-left:8px;font-size:13px;font-weight:700}.ck-hidden{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.ck-matrix-wrap{overflow-x:auto}.ck-matrix{border-collapse:collapse;table-layout:fixed;width:100%}.ck-matrix th,.ck-matrix td{text-align:center;padding:2px}.ck-matrix thead th{color:var(--text-secondary);font-size:10px}.ck-matrix__rates th{font-size:9px;font-weight:600}.ck-cell{background:var(--surface-2);width:100%;min-height:52px;color:var(--text-primary);border-radius:8px;font-size:16px;font-weight:800}.ck-cell--excellent{background:var(--color-advantage-bg);color:var(--color-advantage)}.ck-cell--advantage{background:var(--color-self-bg);color:var(--color-self)}.ck-cell--even{background:var(--color-warning-bg);color:var(--color-warning)}.ck-cell--disadvantage{background:var(--color-disadvantage-bg);color:var(--color-disadvantage)}.ck-cell--unknown{color:var(--text-secondary)}.ck-cell-detail{color:var(--text-secondary);margin:0;font-size:12px}.ck-speed,.ck-stat-mini{color:var(--text-secondary);font-size:10px;display:block}.ck-side{border-radius:999px;padding:1px 8px;font-size:11px;font-weight:800;display:inline-block}.ck-side--self{background:var(--battle-self);color:var(--color-on-primary)}.ck-side--opp{background:var(--battle-opponent);color:#fff}.ck-pick{min-height:72px;color:var(--text-primary);flex-direction:column;flex:1;gap:4px;font-size:11px}.ck-pick.is-selected,.ck-pick.is-lead{outline:2px solid var(--accent-primary)}.ck-balance{gap:8px;display:grid}.ck-vs-board{background:var(--surface-1);border-radius:16px;justify-content:space-between;align-items:center;gap:8px;padding:10px;display:flex}.ck-vs-board__side{flex-direction:column;align-items:center;gap:4px;min-width:0;display:flex}.ck-vs-board__side.is-active{outline:2px solid var(--accent-warning);border-radius:14px;padding:4px}.ck-hp{background:var(--surface-2);min-width:56px;min-height:40px;color:var(--text-primary);border-radius:10px;font-weight:800}.ck-face{background:var(--surface-1);border-radius:18px;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:12px;display:grid}.ck-face__side{flex-direction:column;align-items:center;gap:6px;display:flex}.ck-face__name{overflow-wrap:anywhere;max-width:100%;margin:0;font-size:13px;font-weight:800}.ck-face__vs{color:var(--text-secondary);margin:0;font-weight:800}.ck-dmg{font-size:22px;font-weight:800;line-height:1.1}.ck-vs6{gap:6px;display:grid}.ck-vs6__row{background:var(--surface-2);border-radius:12px;grid-template-columns:56px 28px 1fr;align-items:center;gap:8px;min-height:48px;padding:4px 8px;display:grid}@media (width<=370px){.ck-mx{--ck-mx-head:48px}.ck-cell,.ck-mx__row,.ck-mx__col{min-height:48px}.ck-cell{font-size:15px}}@media (width>=480px){.ck-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width>=640px){.ck-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (width>=768px){.ck-grid{grid-template-columns:repeat(8,minmax(0,1fr))}}@media (width>=900px){.ck-select{grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:start;gap:16px;display:grid}.ck-select__header{grid-column:1/-1}.ck-mx{--ck-mx-head:64px}.ck-cell,.ck-mx__row,.ck-mx__col{min-height:52px}.ck-cell{font-size:18px}}@media (width>=1024px){.ck-opp{flex-direction:column;display:flex}.ck-opp-head{grid-row:auto;position:static}.ck-slots{flex-wrap:wrap}.ck-slot{flex:30%;min-height:72px}.ck-grid{grid-template-columns:repeat(10,minmax(0,1fr))}}.ai-advice-launch{flex-direction:column;gap:6px;margin-top:10px;display:flex}.ai-advice-launch__btn{width:100%;min-height:44px;font-weight:800}.ai-advice-launch__note{color:var(--text-secondary);margin:0;font-size:12px;font-weight:600}.ai-advice{flex-direction:column;gap:12px;display:flex}.ai-advice__quota,.ai-advice__status{color:var(--text-secondary);margin:0;font-size:12px;font-weight:700}.ai-advice__error{flex-direction:column;gap:10px;display:flex}.ai-advice__error p{color:var(--text-primary);margin:0;font-weight:700}.ai-advice__picks{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.ai-advice__pick{border:1px solid var(--color-border);background:var(--surface-2);border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:8px 6px;display:flex;position:relative}.ai-advice__pick.is-lead{border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.ai-advice__ord{color:var(--color-primary);font-size:11px;font-weight:900;position:absolute;top:4px;left:6px}.ai-advice__name{text-align:center;overflow-wrap:anywhere;font-size:12px;font-weight:800}.ai-advice__reasons{color:var(--text-primary);margin:0;padding-left:1.2em;font-size:13px;font-weight:600;line-height:1.5}.ai-advice__apply{width:100%;min-height:48px;font-weight:800}.stat-point-editor__summary{background:var(--color-bg);border-radius:var(--radius-md);flex-direction:column;gap:8px;margin-bottom:12px;padding:12px;display:flex}.stat-point-editor__summary-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.stat-point-editor__summary-text{flex:auto;justify-content:space-between;align-items:baseline;gap:8px;min-width:0;font-weight:700;display:flex}.stat-point-editor__summary-title{color:var(--color-primary)}.stat-point-editor__reset-all-btn{background:var(--color-bg-card);border:1px solid var(--color-border);min-height:36px;color:var(--color-text);border-radius:999px;flex:none;padding:6px 12px;font-size:13px;font-weight:700}.stat-point-editor__reset-all-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.stat-point-editor__reset-all-btn:disabled{opacity:.4;cursor:not-allowed}.stat-point-editor__summary-note{color:var(--color-text-muted);margin:0;font-size:12px;font-weight:600}.stat-point-editor__total-bar{background:var(--surface-2);border-radius:999px;width:100%;height:8px;display:block;overflow:hidden}.stat-point-editor__bar{background:var(--surface-2);cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:999px;width:100%;height:16px;display:block;position:relative}.stat-point-editor__total-bar-fill,.stat-point-editor__bar-fill{border-radius:inherit;background:var(--color-primary);height:100%;display:block}.stat-point-editor__bar-fill{border-radius:999px 0 0 999px}.stat-point-editor__bar-thumb{background:var(--color-bg-card);border:2px solid var(--color-primary);pointer-events:none;border-radius:50%;width:20px;height:20px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 1px 4px #00000059}.stat-point-editor__error{color:var(--color-disadvantage);font-size:var(--font-size-base);margin:0 0 12px;font-weight:600}.stat-point-editor__presets{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.stat-point-editor__preset-btn{background:var(--color-bg);border:1px solid var(--color-border);min-height:36px;color:var(--color-text);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}.stat-point-editor__preset-btn:hover,.stat-point-editor__preset-btn.is-on{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-self-bg)}.stat-point-editor__grid{flex-direction:column;gap:12px;display:flex}.stat-point-editor__row{flex-direction:column;gap:6px;display:flex}.stat-point-editor__row-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.stat-point-editor__label{font-weight:800;font-size:var(--font-size-lg);color:var(--color-primary)}.stat-point-editor__full-label{color:var(--color-text-muted);margin-left:6px;font-size:12px;font-weight:600}.stat-point-editor__value{color:var(--color-text-muted);align-items:center;gap:4px;font-weight:700;display:flex}.stat-point-editor__input{text-align:right;width:52px;min-height:36px;font-size:var(--font-size-lg);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--color-text);-moz-appearance:textfield;font-weight:700}.stat-point-editor__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stat-point-editor__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.stat-point-editor__bar:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.stat-point-editor__steps{grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;display:grid}.stat-point-editor__mid-actions{grid-template-columns:1fr 1fr;gap:8px;min-width:0;display:grid}.stat-point-editor__step-btn,.stat-point-editor__max-btn,.stat-point-editor__reset-btn{border-radius:var(--radius-sm);background:var(--color-bg);border:1px solid var(--color-border);min-height:44px;color:var(--color-primary);justify-content:center;align-items:center;font-weight:700;display:flex}.stat-point-editor__step-btn{min-width:44px;font-size:20px}.stat-point-editor__max-btn,.stat-point-editor__reset-btn{min-width:0;padding:0 8px;font-size:13px}.stat-point-editor__step-btn:disabled,.stat-point-editor__max-btn:disabled,.stat-point-editor__reset-btn:disabled{opacity:.4;cursor:not-allowed}.searchable-select{position:relative}.searchable-select__label{margin-bottom:6px;font-weight:600;display:block}.searchable-select__trigger{width:100%;min-height:var(--tap-min);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text);text-align:left;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.searchable-select__selected{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.searchable-select__panel{z-index:120;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);box-shadow:var(--shadow-nav);padding:8px;position:absolute;top:calc(100% + 4px);left:0;right:0}.searchable-select__search{width:100%;min-height:var(--tap-min);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--color-text);padding:8px 10px}.searchable-select__options{flex-direction:column;gap:4px;max-height:min(320px,45vh);margin-top:8px;display:flex;overflow-y:auto}.searchable-select__option{border-radius:var(--radius-sm);width:100%;color:var(--color-text);text-align:left;white-space:normal;padding:9px 10px;line-height:1.35}.searchable-select__option:hover,.searchable-select__option--selected{background:var(--color-bg)}.searchable-select__option--selected{outline:2px solid var(--color-primary);outline-offset:-2px}.searchable-select__empty{color:var(--color-text-muted);text-align:center;margin:8px}.searchable-select__sheet{flex-direction:column;gap:8px;min-height:0;display:flex}.searchable-select__sheet .searchable-select__options{flex:1;min-height:0;max-height:none;margin-top:0}.searchable-select__sheet .searchable-select__option{min-height:var(--tap-min)}.searchable-select__section+.searchable-select__section{margin-top:8px}.searchable-select__group{color:var(--color-text-muted);margin:4px 0 6px;padding:0 4px;font-size:12px;font-weight:700}.opponent-build-editor__field{flex-direction:column;gap:.35rem;margin-bottom:.75rem;display:flex}.opponent-build-editor__field label{font-size:.875rem;font-weight:600}.opponent-build-editor__field input,.opponent-build-editor__field select{border:1px solid var(--color-border);border-radius:8px;min-height:44px;padding:.5rem .75rem}.lb-header{z-index:8;background:var(--color-bg);padding:var(--space-1) 0 var(--space-1);position:sticky;top:0}.lb-header__top{align-items:center;gap:var(--space-1);grid-template-columns:1fr auto auto;display:grid}.lb-header__offline{background:var(--surface-3);color:var(--color-text-muted);border-radius:999px;margin:0;padding:2px 8px;font-size:12px;font-weight:800}.lb-header__rule{color:var(--color-primary);margin:0;font-size:13px;font-weight:800}.lb-header__end{border:1px solid var(--battle-danger);min-height:36px;color:var(--battle-danger);border-radius:999px;padding:0 12px;font-size:13px;font-weight:800}.lb-roster{margin-bottom:var(--space-2)}.lb-roster__row,.lb-roster__col,.lb-opp-grid{grid-template-columns:1fr;gap:4px;display:grid}.lb-roster__col{grid-template-columns:1fr}.lb-chip{border:1px solid var(--color-border);background:var(--color-bg-card);text-align:center;border-radius:10px;justify-content:flex-end;align-items:center;min-width:0;min-height:44px;padding:2px 18px 2px 0;display:flex;position:relative}.lb-chip__mark{font-size:12px;font-weight:800;position:absolute;top:2px;left:4px}.lb-opp-chip{border:1px solid var(--color-border);background:var(--color-bg-card);border-radius:10px;min-width:0;min-height:44px;padding:2px 0;position:relative}.lb-opp-chip--current{box-shadow:inset 0 0 0 2px var(--battle-opponent);outline:none}.lb-opp-chip--preview{opacity:.92}.lb-opp-chip--probing{box-shadow:inset 0 0 0 2px var(--color-accent,#ffd429);opacity:1}.lb-opp-chip--not-selected,.lb-opp-chip--fainted{opacity:.55}.lb-opp-chip__main{background:0 0;border:0;justify-content:flex-end;align-items:center;width:100%;min-height:44px;padding:2px 0;display:flex}.lb-chip .pk-image,.lb-opp-chip .pk-image{width:26px;height:26px}.lb-opp-chip__dot{font-size:12px;font-weight:800;position:absolute;top:2px;right:3px}.lb-opp-chip__hp{font-variant-numeric:tabular-nums;color:var(--battle-opponent);font-size:10px;font-weight:800;position:absolute;bottom:1px;left:2px}.lb-item-badge{z-index:2;border:1px solid var(--color-border);background:#fff;border-radius:999px;justify-content:center;align-items:center;width:20px;height:20px;padding:0;display:flex;position:absolute;overflow:hidden}.lb-item-icon{object-fit:contain;width:18px;height:18px}.lb-item-badge__unknown{color:#1b2430;font-size:12px;font-weight:800;line-height:1}.lb-item-badge__empty{border:1.5px dashed color-mix(in srgb, var(--color-text-muted) 70%, transparent);background:0 0;border-radius:999px;width:10px;height:10px;display:block}.lb-item-badge--self{pointer-events:none;top:1px;right:1px}.lb-item-badge--opp{top:1px;left:1px}.lb-chip--current{box-shadow:inset 0 0 0 2px var(--color-primary);outline:none}.lb-chip--faint,.lb-chip--ghost{opacity:.62}.lb-chip__name,.lb-chip__hp,.lb-chip__status{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.lb-chip__name{font-size:13px;font-weight:800}.lb-chip__hp{font-variant-numeric:tabular-nums;font-size:10px;font-weight:800;position:absolute;bottom:1px;left:2px}.lb-chip__status{color:var(--color-text-muted);font-size:12px}@media (width>=900px) and (orientation:landscape){.lb-roster__row{grid-template-columns:1fr}.lb-chip{text-align:left;flex:none;width:100%}}.lb-stone{z-index:2;position:absolute;bottom:0;right:0}.lb-stone--self{left:0;right:auto}.lb-stone__btn{color:#ffd429;background:#3a3418;border:1px solid #c9a227;border-radius:999px;justify-content:center;align-items:center;min-width:40px;height:26px;padding:0 6px;font-size:11px;font-weight:800;display:inline-flex}.lb-stone__btn.is-on{border-color:var(--accent-primary);background:var(--color-self-bg);color:var(--accent-primary)}.lb-stone__choices{gap:4px;display:flex;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}.lb-stone__choice{background:var(--surface-2);min-height:28px;color:var(--text-primary);white-space:nowrap;border-radius:999px;padding:0 8px;font-size:11px;font-weight:800}.lb-ranks{z-index:8;flex-direction:column;flex:none;align-items:stretch;gap:1px;display:flex;position:relative}.lb-ranks__chip{color:var(--color-text-muted);justify-content:center;align-items:center;display:inline-flex;position:relative}.lb-matchup__side--self .lb-ranks__chip{justify-content:flex-end}.lb-matchup__side--opp .lb-ranks__chip{justify-content:flex-start}.lb-ranks__chip.is-hot{color:var(--text-primary)}.lb-ranks__value,.lb-ranks__step{min-height:22px;padding:0 2px;font-size:12px;font-weight:800;line-height:1}.lb-ranks__value{min-width:28px}@media (width<=430px){.lb-ranks__value,.lb-ranks__step{min-height:20px;font-size:11px}.lb-ranks__value{min-width:22px;padding:0}}.lb-ranks__step{background:var(--surface-2);z-index:4;border-radius:8px;min-width:22px;position:absolute;top:0}.lb-matchup__side--self .lb-ranks__step:first-of-type{left:calc(100% + 2px)}.lb-matchup__side--self .lb-ranks__step:last-of-type{left:calc(100% + 26px)}.lb-matchup__side--opp .lb-ranks__step:last-of-type{right:calc(100% + 2px)}.lb-matchup__side--opp .lb-ranks__step:first-of-type{right:calc(100% + 26px)}.lb-ranks__step:disabled{opacity:.35}.lb-matchup.ck-face{grid-template-columns:1fr 1fr;align-items:start;gap:4px;margin-bottom:6px;padding:8px 2px 6px;display:grid}.lb-matchup .lb-matchup__side--self,.lb-matchup .lb-matchup__side--opp{align-items:start;gap:2px;width:100%;min-width:0;display:grid}.lb-matchup .lb-matchup__side--self{grid-area:1/1;grid-template-columns:28px minmax(0,1fr);justify-content:flex-start}.lb-matchup .lb-matchup__side--opp{grid-area:1/2;grid-template-columns:minmax(0,1fr) 28px;justify-content:flex-end}.lb-matchup__main{flex-direction:column;align-items:center;min-width:0;max-width:100%;display:flex}.lb-matchup__mid{grid-area:2/1/auto/-1}.lb-matchup__sprite{z-index:0;isolation:isolate;flex:none;width:min(112px,100%);max-width:112px;position:relative}.lb-matchup__photo{aspect-ratio:1;background:var(--surface-2);border-radius:14px;justify-content:center;align-items:center;width:100%;height:auto;min-height:0;padding:0;display:flex;position:relative}.lb-matchup__photo .pk-image{width:100%;max-width:none;height:100%;max-height:none}.lb-matchup__build{z-index:5;border:1px solid var(--color-primary);min-width:32px;height:22px;color:var(--color-primary);background:#071018d1;border-radius:999px;padding:0 6px;font-size:11px;font-weight:800;position:absolute;top:2px;right:2px}.lb-matchup__item.lb-item-badge{z-index:6;pointer-events:auto;width:28px;height:28px;position:absolute;inset:auto 2px 2px auto}.lb-matchup__side--opp .lb-matchup__item.lb-item-badge{left:2px;right:auto}.lb-matchup__item .lb-item-icon{width:24px;height:24px}.lb-matchup__hp-tag{font-variant-numeric:tabular-nums;background:#071018b8;border-radius:999px;padding:1px 5px;font-size:12px;font-weight:800;position:absolute;top:4px;left:4px}.lb-matchup__name-btn{text-align:center;white-space:nowrap;text-overflow:ellipsis;width:100%;min-width:0;min-height:28px;padding:0;font-size:13px;font-weight:800;line-height:1.2;display:block;overflow:hidden}.lb-matchup__main>.lb-transform__btn{margin-top:4px}@media (width<=430px){.lb-matchup.ck-face{gap:2px;padding:6px 0 4px}.lb-matchup__name-btn{font-size:12px}.lb-matchup .lb-matchup__side--self{grid-template-columns:24px minmax(0,1fr)}.lb-matchup .lb-matchup__side--opp{grid-template-columns:minmax(0,1fr) 24px}.lb-matchup__sprite{width:min(108px,100%);max-width:108px}}.lb-matchup__badge{background:var(--color-warning-bg);color:var(--color-warning);border-radius:999px;padding:1px 6px;font-size:11px}.lb-matchup__side--self .lb-matchup__hp-tag{color:var(--battle-self)}.lb-matchup__side--opp .lb-matchup__hp-tag{color:var(--battle-opponent)}.lb-matchup__hits{background:var(--surface-2);border-radius:999px;align-items:center;gap:4px;margin-top:4px;padding:2px 6px;font-size:11px;line-height:1.2;display:inline-flex}.lb-matchup__hits-label{color:var(--text-muted)}.lb-matchup__hits-value{text-align:center;font-variant-numeric:tabular-nums;min-width:1.2em;font-weight:700}.lb-matchup__hits-btn{border:1px solid var(--border);background:var(--surface);width:22px;height:22px;color:var(--text);border-radius:999px;padding:0;font-size:14px;line-height:1}.lb-matchup__hits-btn:disabled{opacity:.35}.lb-summary{text-align:center;width:100%;margin:2px 0 0;padding:0}.lb-summary__speed{white-space:nowrap;color:var(--color-primary);margin:0;font-size:11px;font-weight:800;line-height:1.3;display:block}@media (width<=430px){.lb-summary__speed{white-space:normal;font-size:10px;line-height:1.25}}.lb-moves__title{margin:6px 0 2px;font-size:12px;font-weight:800}.lb-moves__list{margin:0;padding:0;list-style:none}.lb-moves__row{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:baseline;gap:6px;min-height:28px;padding:2px 0;display:flex}.lb-moves__name{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;font-size:13px;font-weight:800;overflow:hidden}.lb-moves__dmg{font-variant-numeric:tabular-nums;text-align:right;flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:2px 0;font-size:12px;font-weight:800;display:inline-flex}.lb-moves__dmg-stack{flex-direction:column;align-items:flex-end;gap:2px;line-height:1.25;display:flex}.lb-moves__dmg-main{align-items:center;gap:4px;display:inline-flex}.lb-moves__dmg-chevron{color:var(--color-primary);font-size:10px;line-height:1}.lb-moves__dmg .is-ohko,.lb-moves__dmg-stack .is-ohko,.lb-moves__breakdown-ko.is-ohko{color:var(--battle-danger)}.lb-moves__row-wrap{border-bottom:1px solid var(--color-border);flex-direction:column;gap:4px;padding:2px 0;display:flex}.lb-moves__row-wrap>.lb-moves__row{border-bottom:none;min-height:28px;padding:0}.lb-moves__row--toggle{text-align:left;width:100%;min-height:44px;color:inherit;border:1px solid color-mix(in srgb, var(--color-primary) 40%, var(--color-border));background:color-mix(in srgb, var(--color-primary) 8%, transparent);border-radius:10px;padding:6px 8px}.lb-moves__row--toggle[aria-expanded=true]{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 16%, transparent)}.lb-moves__row--toggle:active{background:color-mix(in srgb, var(--color-primary) 20%, transparent)}.lb-moves__dmg-toggle{border:1px solid color-mix(in srgb, var(--color-primary) 40%, var(--color-border));background:color-mix(in srgb, var(--color-primary) 8%, transparent);min-height:40px;color:inherit;font:inherit;text-align:right;border-radius:10px;align-items:center;padding:4px 8px;display:inline-flex}.lb-moves__dmg-toggle[aria-expanded=true]{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 16%, transparent)}.lb-moves__dmg-toggle:active{background:color-mix(in srgb, var(--color-primary) 20%, transparent)}.lb-moves__breakdown{border:1px solid var(--color-border);background:var(--surface-2);border-radius:10px;margin:0 0 4px;padding:8px 10px;list-style:none}.lb-moves__breakdown-row{font-variant-numeric:tabular-nums;min-height:22px;color:var(--text-secondary);grid-template-columns:2.5em 1fr auto;align-items:baseline;gap:8px;font-size:12px;font-weight:700;display:grid}.lb-moves__breakdown-row.is-threshold{color:var(--text-primary);font-weight:800}.lb-moves__breakdown-hits{color:inherit}.lb-moves__breakdown-range{text-align:right}.lb-moves__breakdown-ko{text-align:right;min-width:3.5em}.lb-moves__data,.lb-moves__other,.lb-moves__confirm{color:var(--color-primary);padding:0;font-size:12px;font-weight:800;text-decoration:underline}.lb-moves__confirm{margin-left:6px}.lb-moves__change{text-align:left;min-width:0;min-height:36px;color:var(--color-primary);flex:auto;align-items:center;gap:4px;padding:0;font-size:13px;font-weight:800;display:flex}.lb-moves__change-name{white-space:nowrap;text-overflow:ellipsis;text-underline-offset:2px;min-width:0;text-decoration:underline;overflow:hidden}.lb-moves__change-hint{background:color-mix(in srgb, var(--color-primary) 18%, transparent);border-radius:999px;flex:none;padding:1px 6px;font-size:10px;line-height:1.4}.lb-moves__change--confirmed .lb-moves__change-name{color:var(--color-text)}.lb-moves__change--readonly{color:var(--color-text);cursor:default}.lb-moves__change--readonly .lb-moves__change-name{text-decoration:none}.lb-moves__locked{cursor:default}.battle-ranks{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);min-width:0;padding:7px}.battle-ranks__title{margin:0 0 5px;font-size:11px;font-weight:800}.battle-ranks__stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;display:grid}.battle-ranks__stat{border:1px solid var(--color-border);background:var(--color-bg-card);min-width:0;min-height:35px;color:var(--color-text-muted);border-radius:6px;padding:3px 1px;font-size:10px}.battle-ranks__stat strong{color:var(--color-text);font-size:12px;display:block}.battle-ranks__stat--active{border-color:var(--color-primary);background:var(--color-primary-light)}.battle-ranks__editor{grid-template-columns:auto 48px 1fr;align-items:center;gap:4px;margin-top:5px;display:grid}.battle-ranks__active-label{color:var(--color-text-muted);font-size:10px}.battle-ranks__editor select{min-height:30px;padding:2px;font-size:11px}.battle-ranks__quick{grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;display:grid}.battle-ranks__quick button{border:1px solid var(--color-border);background:var(--color-bg-card);border-radius:5px;min-height:30px;padding:2px;font-size:10px}.battle-ranks__quick .battle-ranks__quick--active{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}@media (width<=389px){.battle-ranks__editor{grid-template-columns:minmax(0,1fr) 48px}.battle-ranks__quick{grid-column:1/-1}}.turn-result-timeline__block{background:var(--surface-2);border-radius:8px;margin-bottom:8px;padding:10px;font-size:.875rem}.turn-result-timeline__label{margin:0 0 4px;font-weight:700}.turn-result-timeline__action{border-left:3px solid var(--color-self);margin:10px 0;padding-left:10px}.turn-result-timeline__action-title{margin:0 0 4px;font-weight:600}.turn-result-timeline__event{color:var(--color-text-muted);margin:0;font-size:.8125rem}.turn-simulator-card__title{margin:0 0 12px;font-size:1rem;font-weight:700}.turn-simulator-card__summary{background:var(--color-self-bg);border-radius:10px;margin-bottom:12px;padding:12px}.turn-simulator-card__conclusion-label{margin:0 0 6px;font-size:.875rem;font-weight:700}.turn-simulator-card__conclusion{margin:0;padding-left:1.2rem;font-size:.9375rem;line-height:1.5}.turn-simulator-card__details summary{cursor:pointer;min-height:44px;color:var(--color-primary);align-items:center;font-weight:600;display:flex}.turn-simulator-card__subheading{margin:12px 0 6px;font-weight:700}.turn-simulator-card__order ol{margin:0;padding-left:1.2rem}.lb-acc{margin-bottom:var(--space-1)}.lb-acc__toggle{background:var(--surface-2);width:100%;min-height:44px;color:var(--color-text);text-align:left;border-radius:12px;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;display:flex}.lb-acc__title{color:var(--color-primary);margin:8px 0 4px;font-size:14px;font-weight:800}.lb-acc__toggle .lb-acc__title{flex:none;margin:0}.lb-acc__summary{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-muted);text-align:right;flex:auto;font-size:12px;font-weight:700;overflow:hidden}.lb-acc__mark{color:var(--color-primary);flex:none;font-size:16px;font-weight:800}.lb-acc__body{padding:8px 2px var(--space-2)}.lb-detail__row{justify-content:space-between;align-items:center;gap:12px;min-height:40px;margin:0 0 8px;font-weight:700;display:flex}.lb-detail__row select{flex:none;width:112px;max-width:46%;height:36px;min-height:36px}.lb-detail__row:has(input[type=checkbox]){justify-content:flex-start;gap:8px}.lb-detail__note{color:var(--color-text-muted)}.lb-detail__memo-plus{width:auto;max-width:100%;min-height:36px;color:var(--color-text);text-align:left;background:0 0;border:none;border-radius:0;align-items:center;gap:6px;margin:0 0 4px;padding:4px 2px;font-weight:800;display:inline-flex}.lb-detail__memo-plus-mark{border:1.5px solid color-mix(in srgb, var(--color-primary) 55%, var(--color-border));width:22px;height:22px;color:var(--color-primary);background:0 0;border-radius:6px;flex:none;justify-content:center;align-items:center;font-size:16px;line-height:1;display:inline-flex}.lb-detail__memo-plus-label{color:var(--color-text);text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--color-primary) 45%, transparent);text-decoration-color:color-mix(in srgb, var(--color-primary) 45%, transparent);flex:0 auto;font-size:13px}.lb-detail__memo-plus-hint{border:1px solid var(--color-border);color:var(--color-text-muted);background:#fff;border-radius:999px;flex:none;margin-left:2px;padding:2px 7px;font-size:10px;font-weight:700}.lb-sheet__hp{margin:0 0 var(--space-2);font-variant-numeric:tabular-nums;font-size:24px;font-weight:800}.lb-sheet__hp--self{color:var(--battle-self,var(--color-self))}.lb-sheet__hp--opponent{color:var(--battle-opponent,var(--color-opponent))}.lb-sheet__row,.lb-sheet__stack{gap:var(--space-1);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.lb-sheet__stack{flex-direction:column;padding:0;list-style:none}.lb-sheet__btn,.lb-sheet__choice,.lb-sheet__input{min-height:var(--touch-target);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--surface-2);color:var(--color-text);padding:0 12px;font-weight:700}.lb-sheet__btn--primary,.lb-sheet__choice.is-active{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.lb-sheet__choice{text-align:left;justify-content:space-between;align-items:center;width:100%;display:flex}.lb-sheet__input-wrap,.lb-sheet__section,.lb-sheet__note,.lb-sheet__link{font-weight:700}.lb-sheet__slider-wrap{margin-bottom:var(--space-2);--lb-hp-accent:var(--battle-self,var(--color-self));flex-direction:column;gap:6px;font-weight:700;display:flex}.lb-sheet__slider-wrap--opponent{--lb-hp-accent:var(--battle-opponent,var(--color-opponent))}.lb-sheet__slider-label{color:var(--color-text-muted);font-size:13px}.lb-sheet__slider-track{align-items:center;width:100%;height:28px;display:flex;position:relative}.lb-sheet__slider-mid{z-index:0;background:color-mix(in srgb, var(--lb-hp-accent) 55%, transparent);pointer-events:none;border-radius:999px;width:2px;height:18px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.lb-sheet__slider{z-index:1;appearance:none;cursor:pointer;background:0 0;width:100%;height:28px;margin:0;position:relative}.lb-sheet__slider::-webkit-slider-runnable-track{background:color-mix(in srgb, var(--lb-hp-accent) 28%, var(--surface-2));border-radius:999px;height:10px}.lb-sheet__slider::-webkit-slider-thumb{appearance:none;border:2px solid var(--lb-hp-accent);background:#fff;border-radius:999px;width:28px;height:28px;margin-top:-9px;box-shadow:0 1px 4px #00000029}.lb-sheet__slider::-moz-range-track{background:color-mix(in srgb, var(--lb-hp-accent) 28%, var(--surface-2));border-radius:999px;height:10px}.lb-sheet__slider::-moz-range-thumb{border:2px solid var(--lb-hp-accent);background:#fff;border-radius:999px;width:28px;height:28px;box-shadow:0 1px 4px #00000029}.lb-sheet__slider-ends{color:var(--color-text-muted);font-variant-numeric:tabular-nums;grid-template-columns:1fr 1fr 1fr;align-items:center;font-size:12px;font-weight:700;display:grid}.lb-sheet__slider-ends>span:first-child{text-align:left}.lb-sheet__slider-mid-label{text-align:center;color:var(--lb-hp-accent)}.lb-sheet__slider-ends>span:last-child{text-align:right}.lb-sheet__input{width:100%;margin-top:var(--space-1)}.lb-sheet__input--numeric{text-align:right;font-variant-numeric:tabular-nums;-moz-appearance:textfield;font-size:20px}.lb-sheet__input--numeric::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.lb-sheet__input--numeric::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.lb-sheet__mid-actions{margin-top:var(--space-2);grid-template-columns:1fr 1fr;gap:8px;display:grid}.lb-sheet__mid-actions .lb-sheet__btn:disabled{opacity:.4;cursor:not-allowed}.lb-sheet__link{min-height:var(--touch-target);color:var(--color-primary);text-decoration:underline}.lb-sheet__opp{flex-direction:column;gap:4px;display:flex}.lb-sheet__note{color:var(--color-text-muted);font-size:13px}.lb-sheet__presets{margin-bottom:var(--space-2);flex-wrap:wrap;gap:8px;display:flex}.lb-sheet__preset{min-width:var(--touch-target);min-height:var(--touch-target);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--surface-2);color:var(--color-text);font-variant-numeric:tabular-nums;padding:0 10px;font-weight:800}.lb-sheet__preset.is-active{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.lb-type-change{gap:var(--space-2);flex-direction:column;display:flex}.lb-type-change__reset{min-height:var(--touch-target);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--surface-2);color:var(--color-text);text-align:left;padding:0 14px;font-weight:700}.lb-type-change__reset.is-on{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 18%, var(--surface-2))}.lb-type-change__grid{grid-template-columns:repeat(6,minmax(0,1fr));justify-items:center;gap:8px;display:grid}.lb-matchup__type-change{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;margin-top:2px;display:flex}.lb-matchup__type-change-btn{border:1px solid var(--color-border);background:var(--surface-2);min-height:28px;color:var(--color-text-muted,var(--color-text));border-radius:999px;padding:0 8px;font-size:11px;font-weight:700}.lb-matchup__type-change-btn.is-on{border-color:var(--color-primary);color:var(--color-primary)}.lb-matchup__type-change-icons{align-items:center;gap:2px;display:inline-flex}.lb-matchup__form-label{color:var(--color-text-muted,var(--color-text));font-size:11px;font-weight:700}.lb-form-change__list{flex-direction:column;gap:8px;display:flex}.pi-badge{white-space:nowrap;border-radius:999px;margin:0 6px 0 0;padding:2px 8px;font-size:12px;font-weight:800;display:inline-block}.pi-badge--mine{background:var(--color-advantage-bg);color:var(--color-primary)}.pi-badge--env{background:var(--color-bg);color:var(--color-text-muted)}.pi-badge--memo{background:var(--color-warning-bg);color:var(--color-primary)}.pi-compact__main{text-align:left;flex:1}.pi-compact__line--visual{align-items:center;gap:8px;display:flex}.pi-compact{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-card);text-align:left;width:100%}.pi-compact--live{min-height:40px;margin:0 0 var(--space-2);justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.pi-compact__note{min-width:0}@media (width<=389px){.pi-compact--live{flex-wrap:wrap;align-items:flex-start;row-gap:2px}.pi-compact__note{flex:100%}}.pi-compact__title,.pi-section-title{color:var(--color-primary);margin:0 0 4px;font-weight:800}.pi-compact__line,.pi-muted,.pi-privacy{color:var(--color-text-muted);margin:0;font-size:13px;font-weight:700}.pi-ref{color:var(--color-warning);font-size:12px;font-weight:800}.pi-memo{margin:0 0 var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);background:var(--color-warning-bg);font-weight:800}.pi-row{justify-content:space-between;gap:var(--space-1);width:100%;min-height:var(--touch-target);border-bottom:1px solid var(--color-border);text-align:left;padding:8px 0;display:flex}.pi-form{margin:var(--space-1) 0 var(--space-2);flex-wrap:wrap;gap:6px;display:flex}.pi-form span{border-radius:6px;justify-content:center;align-items:center;min-width:28px;min-height:28px;font-size:12px;font-weight:800;display:inline-flex}.pi-form span.is-win{background:var(--color-advantage-bg);color:var(--color-advantage)}.pi-form span.is-loss{background:var(--color-disadvantage-bg);color:var(--color-disadvantage)}.pi-insight{width:100%;min-height:var(--touch-target);margin-bottom:var(--space-1);padding:var(--space-2);border-radius:var(--radius-md);border:1px solid var(--color-border);text-align:left}.pi-insight--attention{background:var(--color-warning-bg)}.pi-insight--positive{background:var(--color-advantage-bg)}.pi-link{width:100%;min-height:var(--touch-target);margin-top:var(--space-1);color:var(--color-primary);text-align:left;font-weight:800}.pi-privacy{margin-top:var(--space-3)}.lb-opp-moves__badge{background:var(--color-advantage-bg);color:var(--color-primary);border-radius:999px;margin-left:6px;padding:1px 6px;font-size:12px;font-weight:800;display:inline-block}.lb-shell{max-width:var(--app-max-width);padding-bottom:calc(12px + env(safe-area-inset-bottom));margin:0 auto;overflow-x:hidden}.lb-shell__body{grid-template-columns:52px minmax(0,1fr) 52px;align-items:start;gap:4px;display:grid}.lb-shell__left,.lb-shell__opp-mobile{min-width:0;position:sticky;top:36px}.lb-shell__left{grid-area:1/1}.lb-shell__center{grid-area:1/2;min-width:0}.lb-shell__opp-mobile{grid-area:1/3}.lb-shell__right{display:none}.app-shell:has(.lb-shell) .bottom-nav{display:none}.app-shell:has(.lb-shell) .header{display:none}.app-shell:has(.lb-shell) .app-main{max-width:var(--app-max-width);padding-bottom:var(--space-2)}.lb-wait{padding:var(--space-4) var(--space-2);text-align:center}.lb-wait h2{margin:0 0 var(--space-1);font-size:var(--font-size-lg)}.lb-sheet-stack{gap:var(--space-1);flex-direction:column;display:flex}.lb-menu-btn{min-height:var(--touch-target);border-radius:var(--radius-md);border:1px solid var(--color-border);font-weight:800}.lb-menu-btn--danger{color:var(--battle-danger)}.lb-side-toggle{grid-template-columns:1fr 1fr;gap:4px;margin-top:6px;display:grid}.lb-side-toggle button{border:1px solid var(--color-border);min-height:32px;color:var(--color-text-muted);background:0 0;border-radius:999px;font-size:13px;font-weight:800}.lb-side-toggle button.is-active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.lb-move-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:6px;display:flex}.lb-move-toolbar .lb-side-toggle{flex:auto;min-width:0;margin-top:0}.lb-dmg-unit{border:1px solid var(--color-border);background:var(--surface-2,var(--color-bg));border-radius:999px;flex:none;display:inline-flex;overflow:hidden}.lb-dmg-unit button{min-width:44px;min-height:32px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:0 10px;font-size:12px;font-weight:800}.lb-dmg-unit button.is-active{background:var(--color-primary);color:var(--color-on-primary,#fff)}.lb-transform{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin-top:4px;display:flex}.lb-matchup__main .lb-transform__btn{border:1px solid var(--color-border);min-height:28px;color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:999px;padding:0 10px;font-size:12px;font-weight:800}.lb-matchup__main .lb-transform__btn.is-active{background:color-mix(in srgb, var(--color-primary) 22%, transparent);border-color:var(--color-primary);color:var(--color-primary)}.lb-transform__btn{border:1px solid var(--color-border);min-height:32px;color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:999px;padding:0 12px;font-size:12px;font-weight:800}.lb-transform__btn.is-active{background:color-mix(in srgb, var(--color-primary) 22%, transparent);border-color:var(--color-primary);color:var(--color-primary)}.lb-field-full{margin-top:12px;padding:0 8px 16px}.lb-probe-bar{left:50%;bottom:calc(12px + env(safe-area-inset-bottom));z-index:40;border:1px solid var(--color-border);background:color-mix(in srgb, var(--surface-1,#162033) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;justify-content:center;align-items:center;gap:10px;width:max-content;max-width:calc(100vw - 24px);padding:8px 10px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #00000059}.lb-probe-bar__confirm,.lb-probe-bar__cancel{cursor:pointer;border-radius:999px;min-width:96px;min-height:40px;padding:0 16px;font-size:14px;font-weight:800}.lb-probe-bar__confirm{border:1px solid var(--color-primary);background:var(--color-primary);color:var(--color-on-primary,#071018)}.lb-probe-bar__cancel{border:1px solid var(--color-border);background:var(--surface-2,#1e2b40);color:var(--text-primary,#f4f7fb)}.lb-shell:has(.lb-probe-bar){padding-bottom:calc(72px + env(safe-area-inset-bottom))}@media (width<=430px){.app-shell:has(.lb-shell) .app-main{padding-left:8px;padding-right:8px}.lb-shell__body{grid-template-columns:40px minmax(0,1fr) 40px;gap:2px}}@media (width>=768px){.lb-shell__body{grid-template-columns:72px minmax(0,1fr) 72px}}@media (width>=1024px){.lb-shell{max-width:var(--app-max-width)}}.app-shell:has(.lb-shell) .toast{bottom:calc(16px + env(safe-area-inset-bottom))}.fit-single-line-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;display:block;overflow:hidden}.pokemon-selector{border-radius:var(--radius-md);width:100%;min-height:var(--tap-min);text-align:left;align-items:center;gap:12px;padding:12px;transition:background .15s;display:flex}.pokemon-selector--self{background:var(--color-self-bg);border:1px solid var(--color-self-border)}.pokemon-selector--opponent{background:var(--color-opponent-bg);border:1px solid var(--color-opponent-border)}.pokemon-selector:hover{filter:brightness(.98)}.pokemon-selector__avatar{background:var(--surface-2);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;overflow:hidden}.pokemon-selector__avatar--image{background:#2c3f5c}.pokemon-selector__avatar--image .pk-image{width:100%;height:100%}.pokemon-selector__avatar--self,.pokemon-selector__avatar--opponent{background:var(--surface-2)}.pokemon-selector__info{flex:1;min-width:0}.pokemon-selector__label{color:var(--color-text-muted);font-size:12px;font-weight:600;display:block}.pokemon-selector__name{color:var(--color-text);font-weight:700;line-height:1.2}.pokemon-selector__chevron{color:var(--color-text-muted);font-size:10px}.pokemon-selector--compact{text-align:left;flex-direction:row;align-items:center;gap:6px;min-height:40px;padding:4px 6px}.pokemon-selector--compact .pokemon-selector__info{flex:1;min-width:0}.pokemon-selector--compact .pokemon-selector__label{font-size:10px}.pokemon-selector--compact .pokemon-selector__avatar{border-radius:8px;width:32px;height:32px}.pokemon-selector--compact .pokemon-selector__chevron{flex-shrink:0;font-size:8px}.pokemon-selector__option{align-items:center;gap:10px;display:flex}.fc-cockpit{background:var(--surface-1,var(--color-bg-elevated,#fff));border:1px solid var(--color-border);border-radius:16px;flex-direction:column;gap:8px;margin-bottom:12px;padding:10px 8px 12px;display:flex}.fc-cockpit__source{background:var(--color-bg-card,#f3f4f6);border:1px solid var(--color-border);border-radius:12px;gap:2px;width:100%;padding:3px;display:flex}.fc-cockpit__source-btn{min-height:36px;color:var(--color-text-muted);background:0 0;border:0;border-radius:10px;flex:1 1 0;padding:0 10px;font-size:13px;font-weight:800}.fc-cockpit__source-btn.is-on{background:var(--color-primary);color:var(--color-on-primary)}.fc-cockpit__source-btn:disabled{opacity:.45}.fc-cockpit__pickers{grid-template-columns:1fr 1fr;align-items:start;gap:8px;display:grid}.fc-cockpit__picker{min-width:0}.fc-cockpit__hint{text-align:center;color:var(--color-text-muted);margin:8px 0 0;padding:8px;font-size:13px;font-weight:600}.fc-moves{margin-top:4px}.fc-move-row{border:none;border-bottom:1px solid var(--color-border);width:100%;min-height:36px;color:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:10px;justify-content:space-between;align-items:baseline;gap:6px;margin:0;padding:6px 8px;display:flex}.fc-move-row.is-selected{background:color-mix(in srgb, var(--color-primary) 14%, transparent);border-bottom-color:#0000}.fc-move-row--multi{border:1px solid color-mix(in srgb, var(--color-primary) 35%, var(--color-border));background:color-mix(in srgb, var(--color-primary) 6%, transparent);min-height:48px}.fc-move-row--multi.is-selected{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 16%, transparent)}.fc-move-row .lb-moves__name,.fc-move-row .lb-moves__dmg{pointer-events:none}.fc-move-row__meta{align-items:center;gap:6px;min-width:0;display:inline-flex}.fc-move-row__badge{background:color-mix(in srgb, var(--color-primary) 18%, transparent);color:var(--color-primary);white-space:nowrap;border-radius:999px;flex:none;padding:2px 6px;font-size:11px;font-weight:800}.fc-accordion{border:1px solid var(--color-border);background:var(--surface-1,var(--color-bg-elevated,#fff));border-radius:16px;margin-bottom:12px;overflow:hidden}.fc-accordion__toggle{width:100%;min-height:44px;color:var(--text-primary,var(--color-text));text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;font-size:14px;font-weight:800;display:flex}.fc-accordion__toggle:disabled{opacity:.55;cursor:not-allowed}.fc-accordion__toggle:before{content:"";background:var(--accent-warning,var(--color-primary));border-radius:2px;flex:none;width:3px;height:14px;margin-right:4px;display:inline-block}.fc-accordion__chevron{color:var(--color-text-muted);flex:none;font-weight:700}.fc-accordion__body{border-top:1px solid var(--color-border);flex-direction:column;gap:12px;padding:0 14px 14px;display:flex}.fc-accordion__section-title{color:var(--text-secondary,var(--color-text-muted));margin:12px 0 0;font-size:13px;font-weight:800}.fc-accordion__section-title:first-child{margin-top:12px}.fc-battle-data-footer{border-top:1px solid var(--color-border);flex-direction:column;gap:6px;margin-top:8px;padding-top:12px;display:flex}.battle-page--cockpit{padding-bottom:calc(var(--nav-height) + 20px)}.battle-page--cockpit .selection-quick-switch{margin-bottom:8px}.damage-calculation-details{padding:.75rem 0 0;font-size:.875rem}.damage-calculation-details__title{margin:0 0 .35rem;font-weight:700}.damage-calculation-details__rolls{white-space:pre-wrap;margin:0 0 .75rem;font-family:ui-monospace,monospace}.damage-calculation-details__list{gap:.35rem;margin:0 0 .75rem;display:grid}.damage-calculation-details__list div{gap:.5rem;display:flex}.damage-calculation-details__list dt{min-width:6rem;color:var(--color-text-muted)}.damage-calculation-details__warnings ul{margin:.25rem 0 0;padding-left:1.1rem}.damage-move-row{border-radius:var(--radius-md);background:var(--color-bg);border:1px solid var(--color-border);padding:12px}.damage-move-row--recommended{background:var(--color-warning-bg);border-color:var(--color-accent-dark)}.damage-move-row--dangerous{background:var(--color-disadvantage-bg);border-color:var(--color-disadvantage-border)}.damage-move-row__header{flex-direction:column;gap:6px;margin-bottom:8px;display:flex}@media (width>=480px){.damage-move-row__header{flex-direction:row;justify-content:space-between;align-items:flex-start}}.damage-move-row__title-group{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.damage-move-row__name{font-size:var(--font-size-lg);font-weight:700}.damage-move-row__stats{flex-direction:column;align-items:flex-start;gap:2px;display:flex}@media (width>=480px){.damage-move-row__stats{text-align:right;align-items:flex-end}}.damage-move-row__percent{font-size:var(--font-size-lg);color:var(--color-text);font-weight:700}.damage-move-row__hit-count{color:var(--color-text-muted);font-size:13px;font-weight:600}.damage-move-row__bar-track{background:var(--surface-3);border-radius:999px;height:10px;overflow:hidden}.damage-move-row__bar-fill{border-radius:999px;max-width:100%;height:100%;transition:width .3s}.damage-move-row__bar-fill--outgoing{background:var(--color-self)}.damage-move-row__bar-fill--incoming{background:var(--color-opponent)}.damage-move-row__bar-fill--recommended{background:var(--color-advantage)}.damage-move-row__bar-fill--dangerous{background:var(--color-disadvantage)}.damage-move-row__note{color:var(--color-text-muted);margin:6px 0 0;font-size:13px}.damage-move-row__toggle{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:0}.damage-move-row__meta{color:var(--color-text-muted);margin:.25rem 0 0;font-size:.8125rem}.badge--muted{background:var(--surface-3);color:var(--color-text-muted)}.damage-result-card__header{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.damage-result-card__header .card-title{margin:0}.damage-result-card__sort{gap:.25rem;display:flex}.damage-result-card__sort-btn{border:1px solid var(--color-border);background:var(--surface-2);min-height:44px;color:var(--color-text);border-radius:8px;padding:.35rem .65rem;font-size:.8125rem}.damage-result-card__sort-btn--active{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.damage-result-card__list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.battle-advice-card__list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.battle-advice-card__item{background:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border);align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.battle-advice-card__text{font-size:var(--font-size-base);flex:1;line-height:1.5}.speed-condition-editor{flex-direction:column;gap:10px;display:flex}.speed-condition-editor__field label,.speed-condition-editor__label{font-weight:600;font-size:var(--font-size-base);margin-bottom:4px;display:block}.speed-condition-editor__field input,.speed-condition-editor__field select{width:100%;min-height:var(--tap-min);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--color-text);padding:8px 12px}.speed-condition-editor__hint{color:var(--color-text-muted);margin:4px 0 0;font-size:12px}.speed-condition-editor__toggles{flex-direction:column;gap:8px;display:flex}.speed-condition-editor__checkbox{min-height:var(--tap-min);align-items:center;gap:8px;font-weight:600;display:flex}.speed-condition-editor__checkbox input{width:20px;height:20px}.speed-condition-editor__toggle-group{flex-wrap:wrap;gap:8px;display:flex}.speed-condition-editor__toggle{border:1px solid var(--color-border);background:var(--color-bg);border-radius:999px;min-height:36px;padding:6px 10px;font-size:12px;font-weight:600}.speed-condition-editor__toggle--active{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.speed-condition-editor__blaze{padding-top:4px}.speed-breakdown__toggle{width:100%;min-height:var(--tap-min);color:var(--color-primary);border-radius:var(--radius-md);margin-top:12px;font-weight:600}.speed-breakdown__toggle:hover{background:var(--color-bg)}.speed-breakdown__content{gap:12px;margin-top:12px;display:grid}@media (width>=640px){.speed-breakdown__content{grid-template-columns:1fr 1fr}}.speed-breakdown__side-title{color:var(--color-primary);margin:0 0 8px;font-weight:700}.speed-breakdown__side ul{margin:0;padding:0;list-style:none}.speed-breakdown__side li{font-size:var(--font-size-base);border-bottom:1px solid var(--color-border);padding:4px 0}.damage-condition-editor{flex-direction:column;gap:.75rem;display:flex}.damage-condition-editor__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.damage-condition-editor__field{flex-direction:column;gap:.35rem;display:flex}.damage-condition-editor__field label,.damage-condition-editor__screens legend{font-size:.875rem;font-weight:600}.damage-condition-editor__field select{border:1px solid var(--color-border);border-radius:8px;min-height:44px;padding:.5rem}.damage-condition-editor__screens{border:1px solid var(--color-border);border-radius:8px;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.damage-condition-editor__checkbox{align-items:center;gap:.5rem;min-height:44px;display:flex}.damage-condition-editor__checkbox input{width:1.1rem;height:1.1rem}.species-picker{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex}.species-picker .ck-grid.species-picker__grid{-webkit-overflow-scrolling:touch;flex:1 1 0;align-content:start;align-self:stretch;min-height:0;max-height:none;overflow-y:auto}@media (width<=430px){.species-picker .ck-grid.species-picker__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}}.species-picker__selected{border:1px solid var(--color-border);background:var(--surface-2);border-radius:16px;align-items:center;gap:12px;padding:10px 12px;display:flex}.species-picker__selected--compact{gap:10px;padding:6px 8px}.species-picker__selected-text{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.species-picker__name{margin:0 0 8px;font-size:16px;font-weight:800}.species-picker__selected--compact .species-picker__name{margin:0;font-size:15px}.species-picker__change{min-height:40px}.species-picker__change-quiet{color:var(--color-text-muted);text-underline-offset:2px;cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:400;text-decoration:underline;display:inline}.calculated-stats-preview{background:var(--color-self-bg);border:1px solid var(--color-self-border);border-radius:var(--radius-md);margin-top:12px;padding:12px}.calculated-stats-preview--missing{background:var(--color-warning-bg);border-color:var(--color-warning-border)}.calculated-stats-preview__title{color:var(--color-primary);margin:0 0 8px;font-weight:700}.calculated-stats-preview__note,.calculated-stats-preview__warning{margin:0 0 8px;font-size:13px;line-height:1.5}.calculated-stats-preview__warning{color:var(--color-warning);font-weight:600}.calculated-stats-preview__grid{grid-template-columns:repeat(3,1fr);gap:8px;margin:0;display:grid}.calculated-stats-preview__grid div{background:var(--surface-2);border-radius:var(--radius-sm);align-items:center;gap:6px;padding:6px 8px;display:flex}.calculated-stats-preview__grid dt{color:var(--color-primary);font-weight:800}.calculated-stats-preview__grid dd{font-weight:700;font-size:var(--font-size-lg);margin:0}.pokemon-form{flex-direction:column;flex:1;min-height:0;padding:0;display:flex;overflow:hidden}.pokemon-form__scroll{flex-direction:column;flex:1;min-height:0;padding:0 16px 16px;display:flex;overflow-y:auto}.pokemon-form--picking .pokemon-form__scroll{overflow:hidden}.pokemon-form--picking .pokemon-form__field--species{flex-direction:column;flex:1;min-height:0;margin-bottom:0;display:flex}.pokemon-form__error-summary{background:var(--color-disadvantage-bg);color:var(--color-disadvantage);border:1px solid var(--color-disadvantage-border);border-radius:var(--radius-md);font-weight:600;font-size:var(--font-size-base);margin:12px 0;padding:10px 12px}.pokemon-form__field{margin-bottom:12px}.pokemon-form--compact .pokemon-form__field{margin-bottom:0}.pokemon-form__field--species{margin-bottom:10px}.pokemon-form__quiet-link{color:var(--color-text-muted);text-underline-offset:2px;cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:400;text-decoration:underline;display:inline}.pokemon-form__picker-label{font-weight:600;font-size:var(--font-size-base);margin:0 0 6px}.pokemon-form__field label,.pokemon-form--compact .searchable-select__label{color:var(--color-text-muted);margin-bottom:4px;font-size:12px;font-weight:600;display:block}.pokemon-form__field input,.pokemon-form__field textarea,.pokemon-form__select{width:100%;min-height:var(--tap-min);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-base);background:var(--surface-2);color:var(--color-text);padding:10px 12px}.pokemon-form__field textarea{resize:vertical;min-height:72px}.pokemon-form__field input[aria-invalid=true],.pokemon-form__field textarea[aria-invalid=true]{border-color:var(--color-disadvantage)}.pokemon-form__field-error{color:var(--color-disadvantage);margin:4px 0 0;font-size:13px;font-weight:600}.pokemon-form__char-count{color:var(--color-text-muted);text-align:right;margin:4px 0 0;font-size:12px}.pokemon-form__meta{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px;display:grid}.pokemon-form__field--wide{grid-column:1/-1}.pokemon-form__moves{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px;display:grid}.pokemon-form__moves-error{grid-column:1/-1}.pokemon-form--compact .searchable-select__trigger,.pokemon-form--compact .pokemon-form__select{min-height:40px;padding:6px 8px;font-size:13px}.pokemon-form--compact .searchable-select__selected{white-space:normal;line-height:1.3}.pokemon-form__stats{margin-bottom:8px}.pokemon-form__stats-toggle{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface-2);width:100%;min-height:44px;color:var(--color-text);text-align:left;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:8px 12px;display:grid}.pokemon-form__stats-toggle--over{border-color:var(--color-disadvantage);background:var(--color-disadvantage-bg);color:var(--color-disadvantage)}.pokemon-form__stats-label{color:var(--color-text-muted);font-size:12px;font-weight:700}.pokemon-form__stats-toggle--over .pokemon-form__stats-label{color:inherit}.pokemon-form__stats-value{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13px;font-weight:700;overflow:hidden}.pokemon-form__stats-action{color:var(--color-text-muted);text-underline-offset:2px;font-size:12px;text-decoration:underline}.pokemon-form__stats-sheet{flex-direction:column;gap:12px;display:flex}.pokemon-form__stats-sheet-summary{margin:0;font-size:14px;font-weight:700}.pokemon-form__stats-sheet-done{width:100%;margin-top:4px}.pokemon-form__extras{flex-wrap:wrap;gap:12px;margin:4px 0 8px;display:flex}.pokemon-form__actions{background:var(--color-bg-card);border-top:1px solid var(--color-border);padding:12px 16px;padding-bottom:max(12px, env(safe-area-inset-bottom));flex-shrink:0;gap:8px;display:flex}.pokemon-form__btn{flex:1}.pokemon-form__btn:disabled{opacity:.5;cursor:not-allowed}.battle-result-tabs{background:var(--color-bg);border-radius:var(--radius-md);gap:4px;margin-bottom:12px;padding:4px;display:flex}.battle-result-tabs__tab{min-height:var(--tap-min);border-radius:var(--radius-sm);font-weight:600;font-size:var(--font-size-base);color:var(--color-text-muted);flex:1;padding:8px 10px;transition:background .15s,color .15s}.battle-result-tabs__tab--active{background:var(--color-bg-card);color:var(--color-primary);box-shadow:var(--shadow-card)}.battle-result-tabs__tab:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.selection-quick-switch{background:var(--color-bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-card);margin-bottom:12px;padding:10px 12px}.selection-quick-switch__label{color:var(--color-text-muted);margin:0 0 8px;font-size:12px;font-weight:700}.selection-quick-switch__buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.selection-quick-switch__btn{min-height:var(--tap-min);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg);flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 4px;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:flex}.selection-quick-switch__btn--active{background:var(--color-self-bg);border-color:var(--color-self);color:var(--color-self)}.selection-quick-switch__name{word-break:break-word;text-align:center;font-size:12px;line-height:1.3}.selection-quick-switch__badge{background:var(--color-primary);color:var(--color-on-primary);border-radius:999px;padding:2px 6px;font-size:10px;font-weight:700}.battle-page{padding-bottom:calc(var(--nav-height) + 16px)}.battle-page__selection-plan{margin-bottom:12px;padding:10px 14px}.battle-page__selection-plan-text{color:var(--color-text-muted);margin:0;font-size:13px;font-weight:600;line-height:1.5}.battle-page__empty{text-align:center;padding:32px 16px}.battle-page__empty-title{font-size:var(--font-size-xl);color:var(--color-primary);margin:0 0 8px}.battle-page__empty-text{color:var(--color-text-muted);margin:0 0 20px}.battle-page__empty-btn{min-width:200px}.battle-page__speed-section{border-top:1px solid var(--color-border);margin-top:16px;padding-top:12px}.battle-page__speed-section-title{color:var(--color-primary);margin:0 0 8px;font-weight:700}.battle-page__checkbox{min-height:var(--tap-min);align-items:center;gap:8px;font-weight:600;display:flex}.battle-page__result-panel{flex-direction:column;gap:0;display:flex}.battle-page__result-panel[hidden]{display:none}.battle-page__details-toggle{width:100%;min-height:var(--tap-min);color:var(--color-primary);border-radius:var(--radius-md);justify-content:center;align-items:center;gap:4px;padding:8px;font-weight:600;transition:background .15s;display:flex}.battle-page__details-toggle:hover{background:var(--color-bg)}.battle-page__details-content{border-top:1px solid var(--color-border);flex-direction:column;gap:10px;margin-top:12px;padding-top:12px;display:flex}.battle-page__detail-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.battle-page__detail-row label{font-weight:600;font-size:var(--font-size-base);flex-shrink:0}.battle-page__detail-row select{max-width:200px;min-height:var(--tap-min);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg);flex:1;padding:8px 12px}.battle-page__details{margin-bottom:16px}.party-detail{background:var(--surface-1);border:1px solid var(--color-border);border-radius:12px;margin-top:8px;padding:12px}.party-detail__summary,.party-detail__item,.party-detail__missing,.party-detail__memo,.party-detail__stats p{margin:0}.party-detail__summary{font-weight:800}.party-detail__item,.party-detail__missing,.party-detail__memo,.party-detail__stats{color:var(--color-text-muted);margin-top:4px;font-size:13px;font-weight:700}.party-detail__stats p+p{margin-top:2px}.party-detail__moves{grid-template-columns:1fr 1fr;gap:4px 8px;margin:10px 0 0;padding:0;font-weight:700;list-style:none;display:grid}.party-detail__actions{grid-template-columns:1fr auto;gap:8px;margin-top:12px;display:grid}.party-detail__edit,.party-detail__more,.party-detail__menu button{border-radius:12px;min-height:44px;font-weight:800}.party-detail__more{padding:0 16px}.party-detail__menu{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.party-detail__menu button{background:var(--surface-2);color:var(--color-text);border:1px solid var(--color-border)}.party-detail__menu button:disabled{opacity:.4}.party-detail__menu .is-danger{color:var(--battle-danger)}.party-page{flex-direction:column;gap:8px;padding-bottom:88px;display:flex}.party-team__list>li,.party-team{flex-direction:column;gap:8px;display:flex}.party-team__title{color:var(--color-text-muted);margin:0;font-size:13px;font-weight:800}.party-team__list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.party-team-card{border:1px solid var(--color-border);background:var(--surface-1);width:100%;color:var(--color-text);text-align:left;border-radius:12px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.party-team-card.is-current{box-shadow:inset 0 0 0 2px var(--color-primary);background:var(--color-self-bg)}.party-team-card.is-empty:not(.is-current){opacity:.62;background:0 0;border-style:dashed}.party-team-card__head{align-items:center;gap:8px;display:flex}.party-team-card__name{text-align:left;min-width:0;min-height:44px;color:var(--color-primary);text-underline-offset:3px;white-space:normal;overflow-wrap:anywhere;background:0 0;border:0;flex:auto;padding:0;font-size:15px;font-weight:800;line-height:1.35;text-decoration:underline}.party-team-card.is-empty:not(.is-current) .party-team-card__name{color:var(--color-text-muted)}.party-team-card__select{border:1px solid var(--color-border);background:var(--surface-2);min-width:64px;min-height:36px;color:var(--color-text);border-radius:999px;flex:none;padding:0 12px;font-size:13px;font-weight:800}.party-team-card__select.is-on{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.party-team-card__row{background:0 0;border:0;gap:6px;width:100%;padding:0;display:flex}.party-team-card__slot{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--color-border) 70%, transparent);background:var(--surface-2);min-width:0;color:inherit;border-radius:10px;flex:1 1 0;justify-content:center;align-items:center;padding:0;display:flex;position:relative;overflow:hidden}@media (width<=380px){.party-team-card__row{gap:5px}.party-team-card{padding:10px}}.party-team-card__slot.is-current{box-shadow:inset 0 0 0 2px var(--color-primary)}.party-team-card__slot--empty{cursor:pointer}.party-team-card.is-empty:not(.is-current) .party-team-card__slot{background:0 0}.party-team-card__slot .pk-image{object-fit:contain;width:100%;height:100%}.party-team-card__item{z-index:1;pointer-events:none;background:#fff;border-radius:999px;justify-content:center;align-items:center;width:16px;height:16px;display:flex;position:absolute;bottom:0;right:0;overflow:hidden}.party-team-card__item img{object-fit:contain;width:14px;height:14px}.party-editor,.party-editor__actions{flex-direction:column;gap:8px;display:flex}.party-editor__actions-row{gap:8px;display:flex}.party-editor__actions-row>button{flex:1}.party-editor__actions>button,.party-editor__actions-row>button{border:1px solid var(--color-border);background:var(--surface-1);min-height:44px;color:var(--color-text);border-radius:12px;font-weight:800}.party-editor__actions>button{width:100%}.party-editor__actions .is-danger{color:var(--battle-danger)}.party-editor__actions button:disabled{opacity:.4}.party-page__fab{right:16px;bottom:calc(var(--nav-height) + env(safe-area-inset-bottom) + 16px);z-index:201;background:var(--color-primary);width:56px;height:56px;color:var(--color-on-primary);border:0;border-radius:999px;font-size:28px;font-weight:700;line-height:1;position:fixed;box-shadow:0 8px 20px #07101873}.party-page__fab:active{transform:scale(.96)}@media (width>=768px){.party-page__fab{bottom:24px;right:24px}}.party-page__legality{background:var(--color-warning-bg);color:var(--color-text);border-radius:12px;margin-top:8px;padding:12px}.party-page__legality h3{margin:0 0 6px;font-size:14px}.party-page__legality ul{margin:0;padding-left:1.2em}.party-page__team-name-form{padding:8px 16px 16px}.party-page__team-name-form label{margin-bottom:4px;font-weight:600;display:block}.party-page__team-name-form input{width:100%;min-height:var(--tap-min);border:1px solid var(--color-border);border-radius:var(--radius-sm);margin-bottom:8px;padding:10px 12px}.party-page__team-name-error{color:var(--color-disadvantage);margin:0 0 8px;font-size:13px;font-weight:600}.party-page__team-name-actions{gap:8px;display:flex}.party-page__team-name-actions button{min-height:var(--tap-min);flex:1}.speed-table-wrapper{width:100%}.speed-table-desktop{display:none}.speed-table-mobile{flex-direction:column;gap:10px;display:flex}@media (width>=640px){.speed-table-desktop{display:block;overflow-x:auto}.speed-table-mobile{display:none}}.speed-table{border-collapse:collapse;width:100%;font-size:var(--font-size-base)}.speed-table th,.speed-table td{text-align:center;border-bottom:1px solid var(--color-border);padding:10px 12px}.speed-table th{background:var(--color-bg);color:var(--color-primary);white-space:nowrap;font-weight:700}.speed-table th:first-child,.speed-table td:first-child{text-align:left}.speed-table__name{font-weight:600}.speed-table-card{background:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border);padding:12px}.speed-table-card__name{font-weight:700;font-size:var(--font-size-lg);margin:0 0 8px}.speed-table-card__stats{flex-wrap:wrap;gap:12px;margin:0;display:flex}.speed-table-card__row{flex-direction:column;align-items:center;min-width:72px;display:flex}.speed-table-card__row dt{color:var(--color-text-muted);font-size:11px;font-weight:600}.speed-table-card__row dd{font-size:var(--font-size-lg);margin:2px 0 0;font-weight:700}.speed-table__empty{text-align:center;color:var(--color-text-muted);padding:24px}.speed-adjustment-card p{font-size:var(--font-size-base);margin:8px 0;line-height:1.5}.speed-adjustment-card__target{font-weight:700;font-size:var(--font-size-lg)}.speed-adjustment-card__fail{color:var(--color-disadvantage);font-weight:600}.speed-adjustment-card__suggestion{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-radius:var(--radius-md);color:var(--color-warning);padding:10px 12px;font-weight:600}.speed-adjustment-card__missing{color:var(--color-text-muted)}.speed-page__compare-grid{flex-direction:column;gap:12px;display:flex}.speed-page__compare-side{border-radius:var(--radius-md);padding:12px}.speed-page__compare-side--self{background:var(--color-self-bg);border:1px solid var(--color-self-border)}.speed-page__compare-side--opponent{background:var(--color-opponent-bg);border:1px solid var(--color-opponent-border)}.speed-page__compare-side select{width:100%;min-height:var(--tap-min);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--surface-2);color:var(--color-text);margin-bottom:8px;padding:8px 12px}.speed-page__compare-label{color:var(--color-text-muted);margin:0 0 8px;font-size:12px;font-weight:700}.speed-page__compare-speed{font-size:var(--font-size-xl);margin:4px 0 0;font-weight:800}.speed-page__compare-side--self .speed-page__compare-speed{color:var(--color-self)}.speed-page__compare-side--opponent .speed-page__compare-speed{color:var(--color-opponent)}.speed-page__compare-vs{text-align:center;color:var(--color-text-muted);font-weight:800}.speed-page__compare-result{text-align:center;font-size:var(--font-size-xl);border-radius:var(--radius-md);margin:16px 0 0;padding:12px;font-weight:800}.speed-page__compare-result--advantage{background:var(--color-advantage-bg);color:var(--color-advantage);border:1px solid var(--color-advantage-border)}.speed-page__compare-result--disadvantage{background:var(--color-disadvantage-bg);color:var(--color-disadvantage);border:1px solid var(--color-disadvantage-border)}@media (width>=640px){.speed-page__compare-grid{flex-direction:row;align-items:center}.speed-page__compare-side{flex:1}.speed-page__compare-vs{padding:0 8px}}.speed-page__search-row{margin-bottom:12px}.speed-page__search{width:100%;min-height:var(--tap-min);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg);font-size:var(--font-size-base);padding:10px 14px}.speed-page__filters{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.speed-page__filter-btn{background:var(--color-bg);border:1px solid var(--color-border);border-radius:999px;min-height:36px;padding:6px 14px;font-size:13px;font-weight:600;transition:background .15s,color .15s}.speed-page__filter-btn--active{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.speed-page__disclaimer{color:var(--color-text-muted);text-align:center;margin:16px 0 0;font-size:12px}.speed-page__info{font-size:var(--font-size-base);margin:4px 0}.speed-page__empty-side{color:var(--color-text-muted)}.speed-page__result{background:var(--color-bg);border-radius:var(--radius-md);text-align:center;margin-top:16px;padding:16px}.speed-page__result-values{color:var(--color-text-muted);justify-content:space-between;margin-bottom:8px;font-weight:600;display:flex}.speed-page__result-symbol{font-size:var(--font-size-xl);margin:0 0 8px;font-weight:800}.speed-page__result-diff{font-size:var(--font-size-lg);margin:0 0 8px;font-weight:700}.speed-page__priority-note{color:var(--color-text-muted);margin:8px 0 0;font-size:12px}.speed-page__missing{color:var(--color-disadvantage);margin-top:12px;font-weight:600}.speed-page__details-toggle{width:100%;min-height:var(--tap-min);color:var(--color-primary);margin-top:12px;font-weight:600}.speed-page__details{flex-direction:column;gap:12px;margin-top:12px;display:flex}.speed-page__detail-block{background:var(--color-bg);border-radius:var(--radius-md);padding:12px}.speed-page__detail-title{color:var(--color-primary);margin:0 0 8px;font-weight:700}.speed-page__checkbox{min-height:var(--tap-min);align-items:center;gap:8px;font-weight:600;display:flex}.speed-page__sort{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.season-selector{flex-shrink:0;max-width:46%;margin:0;display:inline-flex}.season-selector__select{border:1px solid var(--color-border);background-color:var(--surface-1,var(--color-bg-card));width:100%;min-width:0;min-height:36px;color:var(--color-text,inherit);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:12px;border-radius:999px;padding:0 28px 0 10px;font-size:12px;font-weight:800}.history-page__title-row{margin:0 0 var(--space-1);justify-content:space-between;align-items:center;gap:12px;display:flex}.history-page__title-row h1{color:var(--color-primary);min-width:0;margin:0}.history-page h1{margin:0 0 var(--space-1);color:var(--color-primary)}.history-page__back-an{min-height:var(--touch-target);margin-bottom:var(--space-1);color:var(--color-primary);font-weight:800;text-decoration:underline}.history-page__lead,.history-page__privacy,.history-page__placeholder{color:var(--color-text-muted);font-weight:700}.history-page--empty{text-align:center;padding:var(--space-4) var(--space-2)}.history-page--empty .btn-primary{margin-top:var(--space-3);min-width:200px}.history-page__detail-pane,.history-page--detail .history-page__list-pane{display:none}.history-page--detail .history-page__detail-pane{display:block}@media (width>=900px){.history-page,.history-page--detail{gap:var(--space-3);grid-template-columns:minmax(280px,380px) minmax(0,1fr);align-items:start;display:grid}.history-page__list-pane,.history-page--detail .history-page__list-pane,.history-page__detail-pane,.history-page--detail .history-page__detail-pane{display:block}.history-page__placeholder{padding:var(--space-4)}}.an-period{gap:var(--space-1);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.an-period button,.an-sort button,.an-row,.an-insight,.an-more-item{min-height:var(--touch-target)}.an-period button,.an-sort button{border:1px solid var(--color-border);border-radius:999px;padding:0 12px;font-weight:700}.an-period button.is-on,.an-sort button.is-on{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.an-kpis{gap:var(--space-2);margin-bottom:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.an-kpi,.an-card{padding:var(--space-2);border-radius:var(--radius-md);background:var(--color-bg-card)}.an-kpi__label,.an-muted,.an-privacy{color:var(--color-text-muted);margin:0;font-size:13px;font-weight:700}.an-kpi__value,.an-card h2,.an-section-title{color:var(--color-primary);margin:0;font-weight:800}.an-kpi__value{font-variant-numeric:tabular-nums;font-size:22px}.an-form{margin:var(--space-2) 0 0;flex-wrap:wrap;gap:6px;display:flex}.an-form span{border-radius:6px;justify-content:center;align-items:center;min-width:28px;min-height:28px;font-size:12px;font-weight:800;display:inline-flex}.an-form span.is-win{background:var(--color-advantage-bg);color:var(--color-advantage)}.an-form span.is-loss{background:var(--color-disadvantage-bg);color:var(--color-disadvantage)}.an-chart{width:100%;height:120px;max-height:140px}.an-overview-record{margin:0 0 var(--space-2);font-size:20px;font-weight:800}.an-poke-card{width:100%;min-height:var(--touch-target);margin-bottom:var(--space-1);text-align:left;border-radius:var(--radius-md);background:var(--color-bg);align-items:center;gap:12px;padding:8px;display:flex}.an-poke-card__body{flex-direction:column;gap:2px;font-weight:700;display:flex}.an-insight{text-align:left;width:100%;padding:var(--space-2);margin-bottom:var(--space-1);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-card)}.an-insight--attention{background:var(--color-warning-bg)}.an-insight--positive{background:var(--color-advantage-bg)}.an-row{gap:var(--space-1);text-align:left;border-bottom:1px solid var(--color-border);font-variant-numeric:tabular-nums;grid-template-columns:auto 1fr auto auto;align-items:center;width:100%;padding:8px 0;display:grid}.an-row__name{text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.an-ref{color:var(--color-warning);font-size:12px;font-weight:700}.an-sort{margin-bottom:var(--space-2);flex-wrap:wrap;gap:6px;display:flex}.an-toggle{width:100%;min-height:var(--touch-target);color:var(--color-primary);text-align:left;font-weight:800}.an-privacy{margin-top:var(--space-4)}@media (width>=900px){.an-kpis{grid-template-columns:repeat(4,1fr)}.an-dash{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.an-dash__wide{grid-column:1/-1}}.analytics-page{max-width:var(--app-max-width);margin:0 auto}.analytics-page__title-row{margin:0 0 var(--space-2);justify-content:space-between;align-items:center;gap:12px;display:flex}.analytics-page__title-row h1{color:var(--color-primary);min-width:0;margin:0}.analytics-page h1,.dm-page h1{margin:0 0 var(--space-2);color:var(--color-primary)}.dm-card{background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin-bottom:16px;padding:16px}.dm-card h2{color:var(--color-primary);margin:0 0 12px;font-size:16px}.dm-row{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:12px;padding:8px 0;font-weight:700;display:flex}.dm-row:last-child{border-bottom:none}.dm-row dt{color:var(--color-text-muted);margin:0}.dm-row dd{text-align:right;margin:0}.dm-updates{border-radius:var(--radius-md);background:var(--surface-2);margin:4px 0 12px;padding:10px 12px}.dm-updates__title{color:var(--color-primary);margin:0 0 6px;font-size:12px;font-weight:800}.dm-updates__list{color:var(--text-primary);margin:0;padding-left:1.2em;font-size:13px;line-height:1.5}.dm-updates__list li+li{margin-top:4px}.dm-warn{border-radius:var(--radius-md);background:var(--color-warning-bg);color:var(--color-warning);margin:12px 0 0;padding:10px 12px;font-weight:700}.dm-note{color:var(--color-text-muted);margin:0 0 12px;font-weight:700;line-height:1.6}.dm-actions{flex-direction:column;gap:8px;margin-top:12px;display:flex}.dm-preview{border-radius:var(--radius-md);background:var(--color-bg);margin:12px 0 0;padding:12px}.dm-preview h3{margin:0 0 8px;font-size:15px}.dm-input{width:100%;min-height:var(--tap-min);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-top:8px;padding:8px 12px}.dm-danger{color:var(--color-disadvantage)}.dm-mode{flex-direction:column;gap:8px;margin:12px 0;display:flex}.dm-mode label{min-height:var(--tap-min);align-items:center;gap:8px;font-weight:700;display:flex}.dm-update{z-index:30;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);margin:0 16px 8px;padding:12px;position:sticky;top:0}.dm-update__actions{gap:8px;margin-top:8px;display:flex}.dm-update__actions button{min-height:var(--tap-min);border-radius:var(--radius-md);background:var(--color-on-primary);color:var(--color-primary);flex:1;font-weight:700}.dm-offline{background:var(--surface-3);min-height:24px;color:var(--color-text-muted);border-radius:999px;align-items:center;padding:0 8px;font-size:12px;font-weight:800;display:inline-flex}:root{--bg-app:#0b1220;--surface-1:#162033;--surface-2:#1e2b40;--surface-3:#2a3a52;--text-primary:#f4f7fb;--text-secondary:#b8c3d6;--accent-primary:#2ec8ea;--accent-purple:#9b8cff;--accent-warning:#ffd429;--danger:#ff5c5c;--success:#54d78c;--color-bg:var(--bg-app);--color-bg-card:var(--surface-1);--color-primary:var(--accent-primary);--color-primary-light:#6adcf4;--color-on-primary:#071018;--color-accent:var(--accent-warning);--color-accent-dark:#e6bc12;--color-self:#2ec8ea;--color-self-bg:#103240;--color-self-border:#2a8eaa;--color-opponent:#ff7ab6;--color-opponent-bg:#3a2034;--color-opponent-border:#b85a88;--color-advantage:var(--success);--color-advantage-bg:#163028;--color-advantage-border:#2f6b4e;--color-disadvantage:var(--danger);--color-disadvantage-bg:#3a2226;--color-disadvantage-border:#8a3d3d;--color-warning:var(--accent-warning);--color-warning-bg:#3a3418;--color-warning-border:#8a7420;--color-text:var(--text-primary);--color-text-muted:var(--text-secondary);--color-border:#2a3a52;--brand-gradient:linear-gradient(135deg, var(--color-self) 0%, var(--accent-purple) 50%, var(--color-opponent) 100%);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--space-1:8px;--space-2:12px;--space-3:16px;--space-4:24px;--touch-target:48px;--battle-self:var(--color-self);--battle-opponent:var(--color-opponent);--battle-danger:var(--danger);--battle-safe:var(--success);--shadow-card:0 1px 8px #00000052;--shadow-nav:0 -2px 12px #00000052;--font-size-base:14px;--font-size-lg:16px;--font-size-xl:20px;--font-size-2xl:24px;--nav-height:64px;--header-height:53px;--content-max-width:1200px;--app-max-width:1440px;--tap-min:48px;--motion:.16s}*,:before,:after{box-sizing:border-box}html{font-size:var(--font-size-base);-webkit-text-size-adjust:100%;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;touch-action:pan-x pan-y}body{background:var(--color-bg);color:var(--color-text);touch-action:pan-x pan-y;min-height:100dvh;margin:0;font-family:Segoe UI,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;line-height:1.5;overflow-x:hidden}#root{min-height:100dvh}button,input,select,textarea{font:inherit}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{background:var(--surface-2);color:var(--color-text);border-color:var(--color-border)}button{cursor:pointer;background:0 0;border:none}button:active:not(:disabled){opacity:.92;transform:scale(.98)}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}a{color:inherit}.app-shell{min-height:100dvh;padding-top:env(safe-area-inset-top);flex-direction:column;display:flex}.app-main{width:100%;max-width:var(--content-max-width);padding:16px 16px calc(var(--nav-height) + 24px);flex:1;margin:0 auto}@media (width<=389px){.app-main{padding-left:12px;padding-right:12px}}@media (width>=768px){.app-main{padding:24px 24px 32px}}.card{background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin-bottom:16px;padding:16px}.card-title{font-size:var(--font-size-lg);color:var(--color-primary);margin:0 0 12px;font-weight:700}.badge{border-radius:999px;align-items:center;padding:2px 8px;font-size:12px;font-weight:600;line-height:1.4;display:inline-flex}.badge--regulation{background:var(--color-primary);color:var(--color-on-primary)}.badge--advantage{background:var(--color-advantage-bg);color:var(--color-advantage);border:1px solid var(--color-advantage-border)}.badge--warning{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning-border)}.badge--danger{background:var(--color-disadvantage-bg);color:var(--color-disadvantage);border:1px solid var(--color-disadvantage-border)}.badge--recommended{background:var(--color-accent);color:var(--color-primary)}.type-label{background:var(--surface-3);color:var(--color-text-muted);border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.btn-primary{min-height:var(--tap-min);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);justify-content:center;align-items:center;padding:10px 20px;font-weight:600;transition:background .15s;display:inline-flex}.btn-primary:hover{background:var(--color-primary-light)}.btn-secondary{min-height:var(--tap-min);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-primary);border:1px solid var(--color-border);justify-content:center;align-items:center;padding:10px 16px;font-weight:600;display:inline-flex}.btn-secondary:hover{background:var(--surface-2)}.btn-ghost{min-height:var(--tap-min);min-width:var(--tap-min);border-radius:var(--radius-sm);color:var(--color-text-muted);justify-content:center;align-items:center;display:inline-flex}.btn-ghost:hover{background:var(--color-bg)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=389px){:root{--header-height:49px}}@media (width>=768px){:root{--header-height:73px}}.app-error{text-align:center;max-width:420px;margin:48px auto;padding:24px 16px}.app-error h1{color:var(--color-primary);margin:0 0 8px}.app-error__version{color:var(--color-text-muted);font-weight:700}.app-error__actions{flex-direction:column;gap:8px;margin-top:16px;display:flex}
