.champion-shell{max-width:1320px;margin:auto;padding:28px 30px;color:var(--ink);font-size:1rem;line-height:1.75}.champion-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.champion-heading h1{font-size:2rem;margin:2px 0 8px;line-height:1.4}.champion-heading p{margin:0}.eyebrow{font-size:.8125rem;color:var(--blue);font-weight:800;letter-spacing:.13em}.score-badge{background:var(--blue);color:white;display:flex;align-items:baseline;gap:9px;padding:16px 22px;border-radius:12px;font-size:1.8rem;font-weight:800;white-space:nowrap}.score-badge small{font-size:.875rem}.champion-shortcuts{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.champion-shortcuts a{border:1px solid var(--border);background:white;padding:8px 15px;border-radius:7px;font-size:.875rem;font-weight:700}.champion-filters{display:grid;grid-template-columns:1fr 1fr .8fr 1.4fr;gap:15px;padding:19px;background:white;border:1px solid var(--border);border-radius:12px}.champion-filters label{font-size:.875rem;font-weight:700;display:flex;flex-direction:column;gap:7px;min-width:0}.champion-filters select,.champion-filters input{width:100%;min-width:0;border:1px solid #bbc5d8;border-radius:7px;background:white;font:inherit;font-size:1rem;padding:10px;color:var(--ink)}.champion-note,.source-inline{font-size:.875rem;color:var(--muted)}#team-count{font-size:.875rem;font-weight:700;margin:21px 0 14px}.champion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.team-card{background:white;border:1px solid var(--border);border-radius:14px;overflow:hidden;scroll-margin-top:16px}.team-card>h2{font-size:1.2rem;line-height:1.6;margin:10px 20px 18px}.team-badges{display:flex;flex-wrap:wrap;gap:6px;padding:18px 20px 0}.team-badges span,.video-label{font-size:.8125rem;padding:3px 8px;border-radius:5px;background:#edf1f7;color:#45516a}.team-badges .strategy{background:#e8efff;color:#1e40af;font-weight:800}.team-badges .poison{background:#f1eaff;color:#643199}.team-badges .evidence{background:#fff4de;color:#795116}.team-badges .evidence.report{background:#eaf2f9;color:#245478}.team-members{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 20px}.team-member{display:flex;align-items:center;flex-direction:column;text-align:center;text-decoration:none;min-width:0;gap:3px}.team-member img{border-radius:10px;width:64px;height:64px;object-fit:contain;background:#f1f4f9}.team-member b{font-size:.875rem;line-height:1.4;overflow-wrap:anywhere;color:var(--ink)}.team-member span{font-size:.8125rem;line-height:1.5;color:var(--muted)}.team-member small{font-size:.8125rem;color:var(--blue)}.battle-context{font-size:.875rem;margin:20px 20px 5px;font-weight:700}.tempo-note{font-size:.875rem;color:var(--muted);margin:0 20px 20px}.team-details{border-top:1px solid var(--border)}.team-details>summary,.preset-details>summary{cursor:pointer;padding:14px 20px;font-size:.875rem;font-weight:700}.team-details>summary b,.preset-details>summary b{float:right;color:var(--blue)}.team-details[open]>summary{background:#eff4ff}.team-detail-body{padding:4px 22px 22px}.team-detail-body h3{font-size:1.0625rem;margin:22px 0 9px}.team-detail-body p{margin:8px 0}.team-detail-body ul,.team-detail-body ol{padding-left:23px}.team-detail-body li{margin-bottom:9px}.battle-steps li::marker{color:var(--blue);font-weight:800}.option-evidence{background:#fff7e6;padding:10px 12px;border-left:3px solid #d3942c;font-size:.875rem}.points-heading{display:flex;gap:15px;justify-content:space-between;font-size:.875rem;align-items:center;margin:15px 0 8px}.points-heading>b{white-space:nowrap;color:var(--blue)}ul.point-options{padding:0;list-style:none;border:1px solid var(--border);border-radius:8px;overflow:hidden;font-size:.875rem}ul.point-options li{display:flex;justify-content:space-between;gap:16px;padding:7px 10px;margin:0;border-bottom:1px solid #eef1f7}ul.point-options li:last-child{border:0}ul.point-options li:nth-child(even){background:#f8faff}.point-options b{white-space:nowrap;font-weight:600}.source-inline a,.team-source-list a{overflow-wrap:anywhere}.champion-section{margin-top:48px;scroll-margin-top:20px}.champion-section>h2{font-size:1.5rem;padding-bottom:10px;border-bottom:2px solid var(--blue)}.preset-details{background:white;border:1px solid var(--border);border-radius:9px;margin:10px 0}.preset-details>div{padding:0 20px 16px}.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}.guide-grid article{background:#edf2fa;padding:18px;border-radius:9px}.guide-grid h3{font-size:1.0625rem;margin:0 0 10px}.guide-grid p{margin:0}.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.video-card{border:1px solid var(--border);background:white;border-radius:10px;padding:20px}.video-card h3{font-size:1.0625rem;line-height:1.6;margin:10px 0}.video-card p{margin:10px 0}.video-chapters{display:flex;flex-wrap:wrap;gap:8px}.video-chapters a{font-size:.875rem;border:1px solid var(--border);padding:4px 9px;border-radius:5px}.verification-note{font-size:.8125rem;color:var(--muted)}.weekly-panel{background:#eaf0ff;border:1px solid #ccd9fc;border-radius:12px;padding:20px 24px}.weekly-panel h2{margin-top:0}.source-list{padding-left:23px}.source-list li{margin:16px 0}.source-list p,.source-list span{font-size:.875rem;color:var(--muted);margin:4px 0}.champion-empty{background:white;padding:26px;border:1px dashed var(--border);grid-column:1/-1;border-radius:10px}.champion-empty button{padding:10px 18px;background:var(--blue);color:white;border:0;border-radius:6px;font:inherit;cursor:pointer}.champion-shell a:focus-visible,.champion-shell summary:focus-visible{outline:3px solid #446de8;outline-offset:3px}.champion-shell .global-footer{margin-left:0;margin-right:0}
@media(max-width:900px){.champion-filters{grid-template-columns:1fr 1fr}.champion-grid{grid-template-columns:1fr}.guide-grid{grid-template-columns:1fr}.champion-heading h1{font-size:1.75rem}.score-badge{font-size:1.5rem;padding:12px 16px}}
@media(max-width:590px){.champion-shell{padding:22px 16px}.champion-heading{align-items:flex-start;gap:12px}.champion-heading h1{font-size:1.45rem}.champion-heading>div>p:last-child{font-size:.875rem}.score-badge{display:none}.champion-filters{padding:14px;gap:12px}.champion-search{grid-column:1/-1}.champion-shortcuts{gap:7px}.champion-shortcuts a{padding:7px 10px}.team-card>h2{margin-left:16px;margin-right:16px}.team-badges{padding-left:16px;padding-right:16px}.team-members{padding:0 14px;gap:8px}.team-detail-body{padding:3px 16px 18px}.team-details>summary{padding:14px 16px}.team-details>summary b{float:none;margin-left:8px}.video-grid{grid-template-columns:1fr}.weekly-panel{padding:18px}.preset-details>summary b{float:none;margin-left:6px}.champion-section{margin-top:36px}}
.champion-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}.champion-stats>div{display:flex;align-items:baseline;gap:10px;background:#e9efff;border-left:3px solid var(--blue);padding:12px 16px;border-radius:5px}.champion-stats b{font-size:1.65rem;color:#203db1}.champion-stats span{font-size:.875rem;line-height:1.4}.champion-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.champion-search{grid-column:1/-1}.team-badges .finish{background:#18377d;color:white;font-weight:700}.team-badges .solo-badge{background:#f5ebff;color:#643199}.solo-members{grid-template-columns:minmax(110px,1fr) 2fr;align-items:center}.solo-explanation{font-size:.875rem;color:var(--muted)}.damage-note{background:#edf2ff;padding:10px 12px;font-size:.875rem;border-radius:6px}.card-video-links{display:flex;flex-wrap:wrap;gap:8px;margin:0 20px 18px}.card-video-links a{font-size:.875rem;padding:7px 10px;background:#edf2ff;border-radius:6px;font-weight:700}.video-chapter-details summary{cursor:pointer;color:#2344a4;font-size:.875rem;font-weight:700;margin:14px 0}.social-heading{margin-top:32px}.social-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.social-card{background:white;border:1px solid var(--border);padding:16px 20px;border-radius:10px}.social-card h3{font-size:1rem;margin:0 0 8px}.social-card p{font-size:.875rem;margin:0;color:var(--muted)}
@media(max-width:900px){.champion-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.champion-filters{grid-template-columns:1fr 1fr}}
@media(max-width:590px){.champion-stats>div{padding:10px;gap:8px}.champion-stats b{font-size:1.4rem}.social-grid{grid-template-columns:1fr}.card-video-links{margin-left:16px;margin-right:16px}}

.champion-quick-filters{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 12px}.champion-quick-filters button,.champion-more{font:inherit;font-size:.875rem;font-weight:700;cursor:pointer;border:1px solid #bacade;border-radius:8px;background:#fff;color:#294b73;padding:9px 13px;min-height:44px}.champion-quick-filters button[aria-pressed="true"]{background:#1c507f;border-color:#1c507f;color:#fff}.champion-quick-filters button:focus-visible,.champion-more:focus-visible{outline:3px solid #247bc8;outline-offset:3px}.champion-more{display:block;margin:20px auto 0;min-width:220px}.champion-more[hidden]{display:none}.champion-filters{grid-template-columns:1fr 1fr;padding:14px;gap:10px}.champion-refine{grid-column:1/-1}.champion-refine>summary{cursor:pointer;font-size:.875rem;color:#375977;padding:8px 0}.champion-refine-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.team-score-row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:12px 20px 8px;background:#f3f7fc;border-bottom:1px solid #e0e8f3}.team-score-row>span{font-size:.75rem;color:#64758d;white-space:nowrap}.team-score{font-size:.9rem;font-weight:600;color:#65728b;font-variant-numeric:tabular-nums}.team-score.confirmed{font-size:1.1rem;font-weight:800;color:#215583}.team-badges{padding-top:12px}.team-member .member-training{font-size:.75rem;font-weight:700;color:#274e74}.team-bsb-list{display:grid;gap:8px;list-style:none;padding:0!important}.team-bsb-list li{background:#eef5ff;border:1px solid #cbdcf1;border-radius:8px;padding:10px 12px;margin:0}.team-bsb-list a{font-weight:700;display:block}.team-bsb-list small{display:block;color:#65728b;font-size:.8rem;line-height:1.6;margin-top:5px}.team-detail-body{overflow-wrap:break-word;line-break:strict}.team-card>h2{word-break:normal;overflow-wrap:break-word;line-break:strict;text-wrap:pretty}.champion-shell .champion-heading h1{font-size:clamp(1.3rem,4vw,1.9rem);text-wrap:balance}
.champion-filter-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0 4px}.champion-filter-actions button{min-height:44px;border:1px solid #abc2e0;border-radius:8px;background:#fff;color:#224d80;font:inherit;font-size:.875rem;font-weight:700;padding:9px 13px;cursor:pointer}.champion-filter-actions button:first-child{background:#245b98;color:#fff}.champion-filter-actions button:focus-visible,.champion-filter-actions input:focus-visible{outline:3px solid #247bc8;outline-offset:3px}.champion-filter-actions>span{font-size:.875rem;color:#375977}.champion-filter-actions label{display:grid;gap:5px;width:100%;font-size:.8125rem;font-weight:700}.champion-filter-actions input{width:100%;box-sizing:border-box;border:1px solid #b3c5de;border-radius:7px;padding:10px;font:inherit;font-size:.875rem}
@media(max-width:590px){.team-score-row{padding:10px 16px 7px}.champion-quick-filters button{padding:8px 10px;font-size:.8125rem}.champion-refine-grid{gap:10px 8px}}

/* Full-width option labels keep long Japanese names readable on small screens. */
.point-calculator{background:#f3f7ff;border:1px solid #c2d4ed;border-top:5px solid #e674a0;border-radius:16px;padding:clamp(16px,3vw,28px);scroll-margin-top:24px;min-width:0}
.point-calc-intro h2{font-size:clamp(1.2rem,3.5vw,1.6rem);margin:4px 0 10px;line-height:1.5;color:#183e6e}.point-kicker{font-size:.8rem;font-weight:800;letter-spacing:.08em;color:#a63467;margin:0}.point-calc-intro>p:last-child{margin:0 0 20px}
.point-calculator button,.point-load-button{font:inherit;font-size:.9rem;font-weight:700;line-height:1.6;border:1px solid #abc2e0;border-radius:8px;padding:10px 13px;min-height:44px;background:#fff;color:#224d80;cursor:pointer;overflow-wrap:anywhere}
.point-calculator button:hover,.point-load-button:hover{background:#e4edff}.point-calculator button:focus-visible,.point-load-button:focus-visible,.point-calculator input:focus-visible,.point-calculator select:focus-visible{outline:3px solid #247bc8;outline-offset:3px}
.point-preset-buttons{display:flex;flex-wrap:wrap;gap:8px}.point-preset-buttons button{text-align:left}.point-score-panel{background:#174f89;color:white;border-radius:12px;padding:18px 20px;margin:20px 0}.point-score-panel>div{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.point-score-panel output{font-size:clamp(2rem,7vw,3rem);font-weight:900;font-variant-numeric:tabular-nums;line-height:1.2}.point-score-panel p{margin:10px 0 0;font-size:.92rem;font-weight:700}.point-score-panel[data-state="exact"]{background:#20644f}.point-score-panel[data-state="over"]{background:#844627}
.point-context{margin:0;border:1px solid #ccd8e9;padding:16px;border-radius:10px;min-width:0;background:#fff}.point-context legend{font-weight:800;color:#244e7c;padding:0 6px}.point-context-selects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.point-context-selects label{display:grid;gap:6px;font-size:.9rem;font-weight:700;min-width:0}.point-context select{width:100%;min-width:0;min-height:44px;padding:8px 6px;border:1px solid #b3c5de;border-radius:6px;background:#fff;color:#213d60;font:inherit}
.point-needs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:8px;margin-top:14px}.point-needs label{display:flex;gap:10px;align-items:flex-start;padding:8px 0;font-size:.9rem;line-height:1.6}.point-calculator input[type="checkbox"]{width:20px;height:20px;min-width:20px;padding:0;margin:3px 0 0;accent-color:#215a9a;flex-shrink:0}
.point-advice{margin:16px 0;font-size:.9rem;color:#684715;background:#fff4db;border:1px solid #ead59e;border-radius:9px;padding:14px 16px}.point-advice p{margin:0}.point-advice ul{padding-left:20px;margin:9px 0 0}.point-advice li+li{margin-top:9px}
.point-options-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:22px 0 12px}.point-options-toolbar label{display:flex;align-items:center;gap:9px;font-size:.9rem}.point-option-group{margin:10px 0;border:1px solid #cad7e9;border-radius:10px;background:white;overflow:hidden}.point-option-group>summary{cursor:pointer;background:#e4edfb;color:#224b7c;padding:12px 14px;font-weight:800;line-height:1.7}.point-option-group>summary small{font-size:.8rem;font-weight:500;margin-left:12px;display:inline-block}.point-option-row{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:start;gap:12px;padding:14px;border-top:1px solid #e2e8f2;font-size:.92rem;line-height:1.75;cursor:pointer;min-width:0}.point-option-row:has(input:checked){background:#edf7f4}.point-option-row span{min-width:0;overflow-wrap:break-word}.point-option-row b{white-space:nowrap;font-size:.85rem;color:#28607f}
.point-calculator [hidden]{display:none!important}.point-calc-actions{margin-top:20px}.point-calc-actions>button{background:#245b98;color:#fff}.point-calc-actions>button:hover{background:#174c87}.point-calc-actions p{font-size:.9rem}.point-calc-actions textarea{display:block;resize:vertical;width:100%;box-sizing:border-box;font:inherit;font-size:.9rem;line-height:1.6;margin:8px 0;border:1px solid #b3c5de;border-radius:8px;padding:12px}.point-load-button{margin:8px 0}
@media(max-width:420px){.point-context-selects{grid-template-columns:1fr}.point-option-row{gap:9px;padding:12px 10px}.point-score-panel{padding:16px}.point-score-panel>div>span:first-child{width:100%}.point-context{padding:12px}.point-preset-buttons{display:grid;grid-template-columns:1fr}.point-calculator button{width:100%}}

/* Weekly five-battle planner. Inputs remain in this browser only. */
.weekly-plan-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:20px 0 12px}.weekly-plan-heading p{display:grid;gap:2px;margin:0}.weekly-plan-heading span{font-size:.8125rem;color:var(--muted)}.weekly-plan-heading button{min-height:44px;border:1px solid #a9bddb;border-radius:8px;background:white;color:#234f82;font:inherit;font-size:.875rem;font-weight:700;padding:8px 13px;cursor:pointer}.weekly-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.weekly-plan-slot{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:white;border:1px solid #c4d3e9;border-radius:10px;padding:14px;min-width:0}.weekly-plan-slot:last-child{grid-column:1/-1}.weekly-plan-slot legend{font-weight:800;color:#1f4f82;padding:0 5px}.weekly-plan-slot label{display:grid;gap:5px;font-size:.8125rem;font-weight:700;min-width:0}.weekly-plan-slot label:nth-of-type(4){grid-column:1/-1}.weekly-plan-slot input[type="text"],.weekly-plan-slot select{box-sizing:border-box;width:100%;min-width:0;min-height:44px;border:1px solid #afbed2;border-radius:7px;background:white;color:var(--ink);font:inherit;padding:8px}.weekly-plan-slot .weekly-done{display:flex;align-items:center;gap:7px;grid-column:1/-1}.weekly-done input{width:20px;height:20px;accent-color:#17684e}.weekly-plan-slot:has(.weekly-done input:checked){border-color:#72a897;background:#f3fbf7}.weekly-plan-heading button:focus-visible,.weekly-plan-slot input:focus-visible,.weekly-plan-slot select:focus-visible{outline:3px solid #247bc8;outline-offset:3px}
@media(max-width:590px){.weekly-plan-grid{grid-template-columns:1fr}.weekly-plan-slot:last-child{grid-column:auto}.weekly-plan-heading{align-items:flex-start;flex-direction:column}.weekly-plan-slot{grid-template-columns:1fr}.weekly-plan-slot label:nth-of-type(4){grid-column:auto}}
.weekly-plan-navigation{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.weekly-plan-navigation label{display:grid;gap:6px;font-weight:700;max-width:100%}.weekly-plan-navigation select,.weekly-plan-navigation button{min-height:44px;max-width:100%;border:1px solid #a9bddb;border-radius:8px;background:white;color:#234f82;padding:8px 13px;font:inherit}.weekly-plan-navigation button{cursor:pointer}.weekly-plan-navigation button:disabled{opacity:.6;cursor:default}.weekly-plan-navigation select:focus-visible,.weekly-plan-navigation button:focus-visible{outline:3px solid #247bc8;outline-offset:3px}#weekly-view-status{border-left:3px solid var(--blue);padding:8px 12px;background:white;font-size:.875rem}
.weekly-save-recovery{display:flex;flex-wrap:wrap;gap:10px;padding:12px;border:1px solid #ba9238;border-radius:8px;background:#fff9e8}.weekly-save-recovery[hidden]{display:none!important}.weekly-save-recovery p{flex-basis:100%;margin:0;overflow-wrap:anywhere}.weekly-save-recovery button{min-height:44px;padding:8px 12px;border:1px solid #a9bddb;border-radius:8px;background:white;color:#234f82;font:inherit;cursor:pointer}.weekly-save-recovery button:focus-visible{outline:3px solid #247bc8;outline-offset:3px}.weekly-plan-slot input[type="text"],.weekly-plan-slot select{font-size:16px}.weekly-session-warning{color:#654a14;overflow-wrap:anywhere}.weekly-session-warning:empty{display:none}@media(max-width:590px){.weekly-save-recovery{flex-direction:column}.weekly-save-recovery button{width:100%}}
.champion-filter-actions [hidden]{display:none!important}.champion-filter-actions input,.point-calc-actions textarea{font-size:16px}.point-calc-actions textarea:focus-visible,.champion-quick-filters button:focus-visible{outline:3px solid #247bc8;outline-offset:3px}.champion-quick-filters button{min-height:44px}#champion-sharing-help{overflow-wrap:anywhere}
