
    :root{--bg:#090d14;--panel:#141b29;--panel2:#0f1520;--line:#344158;--text:#edf2fb;--muted:#98a6bc;--gold:#e4b84f;--gold2:#ffe29a;--blue:#9bc5ff}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 15% 0,#1b2436 0,transparent 32%),var(--bg);color:var(--text);font-family:"Yu Gothic UI","Hiragino Sans",sans-serif;font-size:16px;line-height:1.55}.shell{width:min(1180px,calc(100% - 32px));margin:auto;padding:30px 0 60px}header{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.eyebrow{color:var(--gold);font-size:.76rem;font-weight:900;letter-spacing:.16em}.title{font-size:clamp(1.55rem,3vw,2.2rem);margin:3px 0 0}.panel{background:linear-gradient(180deg,#161e2c,#111824);border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 38px #0004}.intro{padding:15px 18px;margin-bottom:14px;display:flex;justify-content:space-between;gap:16px;align-items:center}.intro p{margin:0;color:#d6deec}.summary{color:var(--gold2);font-weight:900;white-space:nowrap}.notice{color:var(--muted);font-size:.82rem;margin-top:4px}.filters{display:grid;grid-template-columns:1.4fr repeat(4,minmax(120px,1fr));gap:11px;padding:16px 18px;margin-bottom:14px}.field{min-width:0}.field label{display:block;color:var(--muted);font-size:.75rem;font-weight:800;margin-bottom:5px}.control{width:100%;min-height:42px;background:#0c121c;color:var(--text);border:1px solid #46526a;border-radius:9px;padding:9px 10px;font:inherit}.control:focus{outline:2px solid #e4b84f88;outline-offset:1px}.filter-actions{display:flex;gap:8px;grid-column:1/-1;justify-content:flex-end}.reset{border:1px solid #4a5872;background:#202a3c;color:var(--text);border-radius:9px;padding:9px 13px;font-weight:800}.results-head{display:flex;justify-content:space-between;align-items:center;padding:14px 17px;margin-bottom:11px}.results-head h2{font-size:1rem;margin:0}.count strong{color:var(--gold2);font-size:1.2rem}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.card{padding:15px 16px}.card-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.name-line{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.character-name{font-size:1.05rem;font-weight:900}.formal{color:var(--muted);font-size:.78rem;margin-top:2px}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.attribute,.tier{border:1px solid currentColor;border-radius:999px;padding:2px 7px;font-size:.72rem;font-weight:900}.attr-hadou{color:#ffd3d3;background:#742929}.attr-madou{color:#d5e9ff;background:#214f7b}.attr-seidou{color:#d7ffe3;background:#23613c}.attr-shinki{color:#2d2300;background:#e7c957;border-color:#ffe58d}.attr-jakoku{color:#ead7ff;background:#582f78}.tier-1{color:#e4c1ff;background:#4d2670}.tier-2p{color:#ccecff;background:#164f77}.tier-2m{color:#d4ffe0;background:#205f3c}.tier-3{color:#ffe59a;background:#75470e}.tier-4{color:#ffd1d1;background:#762626}.tier-5{color:#e2e5eb;background:#353942}.facts{color:#bdc8da;font-size:.78rem;margin-top:7px}.stage{display:grid;grid-template-columns:72px minmax(0,1fr);gap:8px;align-items:start;margin-top:11px;padding-top:10px;border-top:1px solid #2b354a}.stage-label{color:var(--gold2);font-weight:900;font-size:.78rem;padding-top:4px}.resistance-list{display:flex;flex-wrap:wrap;gap:6px}.resistance{border:1px solid #43516c;background:#1b2535;border-radius:7px;padding:4px 7px;font-size:.78rem}.resistance small{color:var(--muted);margin-right:4px}.unknown{color:var(--muted);font-size:.78rem;padding-top:4px}.note{color:#c9d3e4;font-size:.76rem;margin:9px 0 0}.detail{display:inline-block;color:var(--blue);text-decoration:none;border:1px solid #425b84;border-radius:999px;padding:4px 9px;font-size:.76rem;font-weight:800;margin-top:12px}.empty{text-align:center;padding:50px 20px;color:var(--muted)}.empty strong{display:block;color:var(--text);margin-bottom:5px}
    @media(max-width:920px){.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.field:first-child{grid-column:1/-1}.cards{grid-template-columns:1fr}}
    @media(max-width:640px){.shell{width:min(100% - 20px,620px);padding-top:18px}header{align-items:start;flex-direction:column}.intro{align-items:start;flex-direction:column}.filters{grid-template-columns:1fr}.field:first-child{grid-column:auto}.card-head{display:block}.stage{grid-template-columns:64px minmax(0,1fr)}}
  
.calc-layout{display:grid;grid-template-columns:minmax(280px,1fr) minmax(320px,1.3fr);gap:20px}.calc-panel{padding:22px}.calc-panel h2{margin:0 0 18px;font-size:20px}.calc-field{display:block;margin-bottom:18px}.calc-field span{display:block;margin-bottom:7px}.calc-input{width:100%;padding:11px 12px;font:inherit;background:#0c1420;color:#edf2fb;border:1px solid #53617a;border-radius:8px}.calc-input:focus{outline:2px solid #e4b84f;outline-offset:2px}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px}.metric{padding:15px;background:#1b2639;border:1px solid #41516c;border-radius:10px}.metric strong{display:block;color:#ffe29a;font-size:25px;overflow-wrap:anywhere}.hp-table{width:100%;border-collapse:collapse}.hp-table th,.hp-table td{padding:12px 8px;border-bottom:1px solid #344158;text-align:right}.hp-table th:first-child,.hp-table td:first-child{text-align:left}.calc-note{font-size:14px;color:#b9c6da;margin:16px 0 0}.calc-error{color:#ffb4b4;min-height:24px}.formula{padding:18px 22px;margin-top:20px}.formula p{overflow-wrap:anywhere}.reset-calc{padding:9px 16px;background:#23314a;border:1px solid #566883;color:#edf2fb;border-radius:8px;font:inherit;cursor:pointer}@media(max-width:760px){.calc-layout{grid-template-columns:1fr}.metric-grid{grid-template-columns:1fr}.calc-panel{padding:17px}}.field-hint{display:block;margin-top:6px;color:#b9c6da;font-size:13px}.hp-start-line{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.hp-percent{color:#ffe29a;font-size:18px;font-weight:700}.hp-table th:last-child{font-size:14px}.hp-table tr.first-below{background:#66391e;box-shadow:inset 4px 0 #ffb45f}.hp-table tr.first-below th,.hp-table tr.first-below td{border-bottom-color:#bb7743}.hp-table .below-percent{color:#ffb45f;font-weight:800}.threshold-badge{display:block;font-size:12px;color:#ffe0b3;font-weight:700;margin-top:3px}