:root{--ink:#1d2421;--muted:#747b77;--accent:#286b58;--accent-hover:#1e5646;--light:#f0f5f2;--line:#e5e9e6;--paper:#f5f5f7;--white:#fff;--radius:24px;--radius-small:14px;--shadow:0 4px 24px #1d302608;--shadow-hover:0 12px 36px #1d302612;color-scheme:light}
*{box-sizing:border-box}
html{scroll-padding-top:110px}
body{display:flex;flex-direction:column;min-height:100vh;margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}
[hidden]{display:none!important}
a{color:var(--accent);text-decoration:none;transition:color .18s}
a:hover{color:var(--accent-hover)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #68a38d;outline-offset:4px}
button,input,select,textarea{font:inherit}
button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 24px;border:1px solid transparent;border-radius:999px;background:var(--accent);color:#fff;font-size:14px;font-weight:550;line-height:1.5;text-align:center;cursor:pointer;transition:background .18s,box-shadow .18s}
button:hover,.button:hover{background:var(--accent-hover);color:#fff;box-shadow:0 4px 12px #286b581a}
button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}
button.secondary{background:#edf1ee;border-color:#e1e7e2;color:#40584b}
button.secondary:hover{background:#e2eae4;color:var(--ink)}
button.link{min-height:0;padding:0;border:0;border-radius:4px;background:none;color:var(--muted);font-size:inherit;font-weight:400;box-shadow:none}
button.link:hover{color:var(--accent)}
.compact{min-height:34px;padding:6px 15px;font-size:12px}
.shell{width:100%;max-width:1600px;margin:0 auto;padding:0 32px}
.site-main{flex:1;min-width:0}
.site-header{position:sticky;top:0;z-index:50;flex-shrink:0;background:#fafafcde;border-bottom:1px solid #dce2dd99;-webkit-backdrop-filter:saturate(160%) blur(20px);backdrop-filter:saturate(160%) blur(20px)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px}
.brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;color:var(--ink);font-size:21px;font-weight:700;letter-spacing:-.04em}
.brand-mark{display:block;flex-shrink:0;width:40px;height:40px;object-fit:cover;border-radius:12px;box-shadow:0 3px 10px #23594414}
.brand small{margin-left:4px;color:var(--muted);font-size:10px;font-weight:500;letter-spacing:.06em}
.site-nav{display:flex;align-items:center;gap:4px;min-width:0}
.site-nav a{display:block;padding:8px 12px;border-radius:999px;color:#626d66;font-size:13px;white-space:nowrap;transition:background .18s,color .18s,box-shadow .18s}
.site-nav a:hover{background:#eef2ef;color:var(--ink)}
.site-nav a[aria-current=page]{background:#fff;color:var(--ink);box-shadow:0 2px 8px #20352a0a;font-weight:600}
.account{display:flex;align-items:center;justify-content:flex-end;gap:13px;min-width:0;font-size:12px;white-space:nowrap}
.account form{margin:0;flex-shrink:0}
.account-name{max-width:100px;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}
.admin-link{color:var(--muted)}
.skip-link{position:fixed;top:10px;left:20px;z-index:100;padding:10px 16px;border-radius:10px;background:var(--ink);color:#fff;transform:translateY(-180%)}
.skip-link:focus{transform:none;color:#fff}
h1,h2,h3{color:var(--ink);overflow-wrap:anywhere}
h1{margin:16px 0 20px;font-size:40px;font-weight:700;line-height:1.25;letter-spacing:-.035em}
h2{margin:0 0 20px;font-size:23px;font-weight:650;line-height:1.4;letter-spacing:-.025em}
h3{margin:14px 0 8px;font-size:18px;font-weight:600;line-height:1.5}
.eyebrow{color:#718277;font-size:11px;font-weight:600;letter-spacing:.13em}
.hero{position:relative;isolation:isolate;padding:68px 0 52px;text-align:center}
.hero::before{position:absolute;z-index:-1;inset:0 10%;border-radius:50%;background:radial-gradient(ellipse at 50% 40%,#e3efe66b,transparent 68%);content:"";pointer-events:none}
.hero .eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 13px;border:1px solid #e1e9e2;border-radius:999px;background:#ffffffa8;font-size:11px;letter-spacing:.07em}
.hero .eyebrow::before{width:5px;height:5px;border-radius:50%;background:#5b967c;content:""}
.hero h1{margin:24px 0 20px;font-size:clamp(40px,5.3vw,64px);font-weight:750;line-height:1.2;letter-spacing:-.05em}
.hero em{display:inline-block;color:var(--accent);font-style:normal}
.hero-description{margin:0 auto;max-width:640px;color:var(--muted);font-size:16px;line-height:1.9}
.hero-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:16px 26px;margin-top:26px}
.hero-actions svg{width:16px;height:16px}
.text-link{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500}
.hero .hero-caption{margin:18px 0 0;color:#939b96;font-size:11px}
.page-heading{max-width:820px;margin:52px 0 32px}
.page-heading p{margin:0;color:var(--muted);font-size:15px;line-height:1.85}
.page-heading h1{margin-bottom:16px}
.filter-bar{position:relative;z-index:2;display:flex;align-items:flex-end;flex-wrap:wrap;gap:18px;margin:12px 0 30px;padding:24px;border:1px solid #e6ebe7;border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow);scroll-margin-top:110px}
.grow{flex:1;min-width:200px}
label{display:block;margin-bottom:20px;color:#56635b;font-size:12px;font-weight:600;line-height:1.6}
label input:not([type=checkbox]),label select,label textarea{display:block;width:100%;max-width:100%;min-width:0;margin-top:8px;padding:11px 13px;border:1px solid #e1e6e2;border-radius:var(--radius-small);background:#f7f8f8;color:var(--ink);font-size:14px;font-weight:400;line-height:1.55;transition:border-color .18s,box-shadow .18s,background .18s}
label input:not([type=checkbox]),label select{min-height:46px}
label select:not([multiple]){appearance:none;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18'%3E%3Cpath d='m5 7 4 4 4-4' fill='none' stroke='%23747b77' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center}
.site-select{position:relative;display:block;min-width:0;margin-top:8px}
.site-select select.site-select-native{position:absolute;width:1px;height:1px;min-height:0;margin:0;padding:0;overflow:hidden;opacity:0;clip-path:inset(50%);pointer-events:none}
.site-select-trigger{display:flex;justify-content:space-between;gap:16px;width:100%;min-width:0;min-height:46px;padding:11px 14px;border:1px solid #e1e6e2;border-radius:var(--radius-small);background:#f7f8f8;color:var(--ink);font-size:14px;font-weight:400;line-height:1.55;text-align:left;box-shadow:none}
.site-select-trigger:hover{border-color:#c7d5cd;background:#fff;color:var(--ink);box-shadow:none}
.site-select-trigger:focus-visible,.site-select-trigger[aria-expanded=true]{outline:0;border-color:#80aa96;background:#fff;box-shadow:0 0 0 3px #286b5810}
.site-select-trigger[aria-invalid=true]{border-color:#c27165;box-shadow:0 0 0 3px #c2716512}
.site-select-trigger:disabled{background:#f0f2f1;opacity:.55;cursor:not-allowed}
.site-select-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.site-select-chevron{flex-shrink:0;width:7px;height:7px;margin:0 3px 4px 0;border-right:1.6px solid #78867d;border-bottom:1.6px solid #78867d;transform:rotate(45deg);transition:transform .16s}
.site-select-trigger[aria-expanded=true] .site-select-chevron{margin-bottom:-2px;transform:rotate(225deg)}
.site-select-menu{position:fixed;z-index:150;padding:6px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c5d3ca transparent;border:1px solid #dde5df;border-radius:16px;background:#fffffffa;color:var(--ink);box-shadow:0 12px 36px #20372a20,0 2px 6px #20372a0a;font-size:14px;font-weight:400;line-height:1.5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.site-select-option{position:relative;display:flex;align-items:center;min-height:40px;padding:9px 34px 9px 12px;border-radius:10px;overflow-wrap:anywhere;cursor:pointer}
.site-select-option[aria-selected=true]{background:#eef5f0;color:var(--accent);font-weight:600}
.site-select-option[aria-selected=true]::after{position:absolute;right:14px;top:50%;width:5px;height:10px;margin-top:-6px;border:solid currentColor;border-width:0 1.8px 1.8px 0;transform:rotate(45deg);content:""}
.site-select-option.is-active{background:#e5efe8;color:#205642;box-shadow:inset 0 0 0 1px #c8dfd0}
.site-select-option[aria-disabled=true]{opacity:.45;cursor:not-allowed;background:none;box-shadow:none}
.site-select-group{padding:10px 12px 5px;color:var(--muted);font-size:11px;font-weight:600}
.site-select-error{display:block;margin-top:6px;color:#a34639;font-size:12px;font-weight:400}
@media(max-width:600px){.site-select-trigger{font-size:16px}.site-select-option{min-height:44px}.site-select-menu{font-size:16px}}
@media(prefers-reduced-motion:reduce){.site-select-chevron{transition:none}}
@media(forced-colors:active){.site-select-trigger,.site-select-menu{border-color:CanvasText;background:Canvas;color:CanvasText;box-shadow:none}.site-select-option[aria-selected=true]{outline:1px solid CanvasText}.site-select-option.is-active{background:Highlight;color:HighlightText;forced-color-adjust:none}.site-select-chevron{border-color:CanvasText}}
label textarea{min-height:106px;resize:vertical}
label small{display:block;margin-top:7px;color:var(--muted);font-size:11px;font-weight:400;line-height:1.7}
input::placeholder,textarea::placeholder{color:#99a19c;opacity:1}
input:focus,select:focus,textarea:focus{outline:0;border-color:#80aa96;box-shadow:0 0 0 3px #286b5810;background:#fff}
input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}
input[type=checkbox]:focus-visible{outline:2px solid #80aa96;outline-offset:3px}
input[type=file]::file-selector-button{margin-right:10px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#56635b;font:inherit;cursor:pointer}
.filter-bar label{min-width:0;margin:0}
.filter-bar>label:not(.grow){flex:0 1 132px}
.filter-bar>.grow{flex:1 1 270px}
.filter-bar select,.filter-bar input{background:#f7f8f8}
.reset{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 12px;border-radius:999px;color:var(--muted);font-size:13px}
.reset:hover{background:#f4f7f5;color:var(--accent)}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:38px 0 22px}
.section-heading h1,.section-heading h2{margin:0}
.section-heading h2{font-size:24px}
.section-heading small{display:inline-block;margin-left:10px;color:#89958d;font-size:12px;font-weight:400;letter-spacing:0}
.section-heading>span{color:var(--muted);font-size:11px;line-height:1.7}
.combo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.combo-card{display:flex;flex-direction:column;width:100%;min-width:0;overflow:hidden;border-radius:var(--radius);background:#fff;color:var(--ink);transition:transform .2s,box-shadow .2s,border-color .2s}
.general-card,.combo-card{border:1px solid #dfe7e1;box-shadow:0 4px 16px #1d30260d,0 1px 3px #1d302608}
.combo-card-artwork{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;flex-shrink:0;width:100%;min-height:240px;aspect-ratio:6/4.4;background:#edf3ef}
.combo-card-member{position:relative;isolation:isolate;min-width:0;overflow:hidden}


.combo-card-body{display:flex;flex:1;flex-direction:column;min-width:0;padding:22px}
.combo-card .excerpt{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.portrait{display:grid;place-items:center;flex-shrink:0;width:80px;height:112px;overflow:hidden;border-radius:12px;background:linear-gradient(150deg,#e0eae2,#f0f4ec)}
.portrait img{display:block;width:100%;height:100%;object-fit:cover}
.portrait span{color:#75917e;font-family:serif;font-size:34px}
.portrait.large{width:170px;max-width:100%;height:230px;margin:auto;border-radius:18px}
.pair-plus{flex-shrink:0;color:#9eafa4;font-size:21px;font-weight:300}
.card-title{margin:0;font-size:17px;font-weight:650;line-height:1.55;letter-spacing:-.02em;overflow-wrap:anywhere}
.card-title>span{color:#a1aba5;font-weight:400}
.tags{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0}
.tag{display:inline-block;padding:4px 9px;border-radius:999px;background:#edf4ee;color:#557b65;font-size:10px;font-weight:500;line-height:1.5}
.tag.subtle{background:#f1f3f1;color:#7b877f}
.tag.demo{background:#faf2e2;color:#a17d3c}
.excerpt{margin:6px 0 22px;color:var(--muted);font-size:13px;line-height:1.85;overflow-wrap:anywhere}
.read-more{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:4px;color:var(--accent);font-size:12px;font-weight:550}
.read-more>span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#f1f6f2;font-size:16px;font-weight:400}
.panel{min-width:0;margin-bottom:24px;padding:30px;border:1px solid #e6ebe7;border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}
.empty{grid-column:1/-1;padding:64px 26px;border:1px solid var(--line);border-radius:var(--radius);background:#ffffffa8;color:var(--muted);text-align:center}
.empty h3{margin:0 0 12px;font-size:21px}
.empty p{max-width:540px;margin:0 auto;font-size:14px;line-height:1.85}
.back{display:inline-flex;align-items:center;gap:6px;margin:34px 0 24px;color:#74867a;font-size:13px}
.detail-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px}
.detail-grid aside{text-align:center;align-self:start}
.detail-grid article{min-width:0}
.detail-grid article>h1{font-size:32px;line-height:1.35}
.pair-panel>a{display:block;margin:12px 0;font-size:15px;font-weight:550}
.pair-panel>.pair-plus{display:block;margin:18px 0}
.combo-detail{min-width:0}
.combo-detail-heading{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:24px;margin-bottom:26px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.combo-detail-intro{min-width:0}
.combo-detail-heading h1{margin:12px 0;font-size:32px;line-height:1.35;overflow-wrap:anywhere}
.combo-members-hint{margin:0;color:var(--muted);font-size:12px}
.combo-members-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
.combo-members-grid .combo-member-card{min-height:0;aspect-ratio:3/4.4;border:3px solid #fff;border-radius:16px;box-shadow:0 5px 16px #24433212,0 0 0 1px #dce6df}
.combo-member-card .general-card-visual{--general-image-scale:1.12;--general-badge-size:32px;--general-badge-radius:16px;--general-name-size:12px;border-radius:13px}
@media(max-width:600px){.combo-detail-heading{grid-template-columns:minmax(0,1fr);gap:18px;margin-bottom:22px;padding-bottom:20px}.combo-detail-heading h1{font-size:27px}.combo-members-grid{width:180px;max-width:100%}.combo-members-hint{font-size:11px}}
@media(forced-colors:active){.combo-members-grid .combo-member-card{border-color:CanvasText;box-shadow:none}}
.position-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:28px 0}
.position-grid>div{min-width:0;padding:22px;border:1px solid #eaf0eb;border-radius:18px;background:#f5f8f5}
.position-grid strong{font-size:14px;font-weight:600}
.position-grid p{color:var(--muted);font-size:13px;line-height:1.9}
.prose{white-space:pre-line;overflow-wrap:anywhere;line-height:1.95;font-size:15px}
.muted{color:var(--muted);font-size:13px;overflow-wrap:anywhere}
.general-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
.general-art{position:absolute;inset:0;overflow:hidden;background:linear-gradient(145deg,#a5beb0,#466b57);pointer-events:none}
.general-art-placeholder{position:absolute;right:8%;bottom:5%;color:#d0e2d766;font-family:serif;font-size:clamp(84px,9vw,150px);line-height:1}
.general-art picture,.general-art img{display:block;width:100%;height:100%}
.general-art picture{position:relative}
.general-art img{object-fit:cover;object-position:50% 20%;color:transparent}
.general-card{position:relative;isolation:isolate;display:block;width:100%;min-width:0;min-height:250px;aspect-ratio:3/4.4;overflow:hidden;margin:0;border-radius:22px;background:#fff;transition:transform .2s,box-shadow .2s,border-color .2s}

.general-card-visual{--general-image-scale:1.06;--general-badge-size:39px;--general-badge-radius:19.5px;--general-name-size:14.0625px;position:absolute;inset:0;isolation:isolate;overflow:hidden;border-radius:inherit}
.general-card-visual::after{position:absolute;inset:0;z-index:3;border:1px solid #ffffff80;border-radius:inherit;content:"";pointer-events:none}
.general-card-visual .general-art{background:#e6eee4}
.general-card-visual .general-art img{opacity:1;filter:none;transform:scale(var(--general-image-scale));transform-origin:center}
.general-card-visual .general-art-placeholder{color:#779482}
.general-card-heading{position:absolute;top:0;bottom:30px;left:0;z-index:2;display:flex;flex-direction:column;align-items:flex-start;width:var(--general-badge-size);min-height:0}
.general-card-faction{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;flex:0 0 var(--general-badge-size);width:var(--general-badge-size);height:var(--general-badge-size);padding:6px;border-radius:0 0 var(--general-badge-radius) var(--general-badge-radius);background:rgba(249,247,237,.4);-webkit-backdrop-filter:blur(9px) saturate(1.15);backdrop-filter:blur(9px) saturate(1.15);color:#315d47;font-size:14px;font-weight:700;line-height:1.2;letter-spacing:.04em;text-align:center;writing-mode:horizontal-tb;white-space:nowrap}
.general-card-faction--long{font-size:11px;letter-spacing:0;white-space:normal;overflow-wrap:anywhere}
.general-card-nameplate{position:relative;display:flex;justify-content:center;flex:0 1 auto;width:var(--general-badge-size);min-height:0;margin-top:calc(-1 * var(--general-badge-radius));padding:calc(var(--general-badge-radius) + 7.5px) 0 12px;overflow:hidden;border-radius:0 0 13.5px 0}
.general-card-nameplate::before{position:absolute;inset:0;z-index:-1;border-radius:inherit;background:rgba(29,69,49,.5);-webkit-backdrop-filter:blur(9px) saturate(1.15);backdrop-filter:blur(9px) saturate(1.15);-webkit-mask-image:radial-gradient(circle at 50% 0,transparent calc(var(--general-badge-radius) - .375px),#000 var(--general-badge-radius));mask-image:radial-gradient(circle at 50% 0,transparent calc(var(--general-badge-radius) - .375px),#000 var(--general-badge-radius));content:""}
.general-card-name{min-height:0;overflow:hidden;margin:0;color:#fff;font-size:var(--general-name-size);font-weight:600;line-height:1.15;letter-spacing:.1em;writing-mode:vertical-rl;text-orientation:upright;white-space:nowrap;text-overflow:ellipsis}
.general-card-name--long{font-size:10.6875px}
.general-card-visual--right .general-card-heading{right:0;left:auto}
.general-card-visual--right .general-card-nameplate{border-radius:0 0 0 13.5px}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.general-card-faction{background:#f6f2e7}.general-card-nameplate::before{background:#315d47}}
.general-card .tag.demo{position:absolute;top:10px;right:10px;z-index:2;margin:0;background:#faf2e2ed}
.general-win-rate{position:absolute;right:10px;bottom:10px;z-index:2;display:flex;flex-direction:column;gap:3px;max-width:calc(100% - 20px);padding:8px 10px;border:1px solid #ffffff80;border-radius:12px;background:#f7faf2db;color:#254d3e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-variant-numeric:tabular-nums;line-height:1.3}
.general-win-rate-label{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.general-win-rate strong{font-size:17px;font-weight:650}
.combo-card-member .general-win-rate{right:auto;left:10px}
.combo-card-member .general-card-visual--right .general-win-rate{right:10px;left:auto}
.general-win-rate-detail{margin:20px 0;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.general-win-rate-detail h2{margin:0 0 8px;font-size:17px;line-height:1.5}
.general-win-rate-detail h2 span{margin-left:6px;color:var(--muted);font-size:12px;font-weight:400}
.general-win-rate-period,.general-win-rate-source{margin:6px 0;color:var(--muted);font-size:12px;overflow-wrap:anywhere}
.general-win-rate-metrics{display:flex;flex-wrap:wrap;gap:14px 24px;margin:16px 0}
.general-win-rate-metrics dt{color:var(--muted);font-size:12px}
.general-win-rate-metrics dd{margin:4px 0 0;color:var(--accent);font-size:26px;font-weight:650;font-variant-numeric:tabular-nums}
.general-win-rate-metrics small{display:block;margin-top:4px;color:var(--muted);font-size:12px;font-weight:400}
.general-win-rate-detail .text-link{display:inline-block;margin-top:8px;font-size:12px}
.combo-win-rates{margin:24px 0}
.combo-win-rate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.combo-win-rate-grid>div{min-width:0}
.combo-win-rate-grid h3{font-size:17px}
.combo-win-rate-grid .general-win-rate-detail{margin:10px 0 0}
@media(max-width:600px){.general-win-rate{padding:6px 8px}.general-win-rate strong{font-size:15px}.combo-win-rate-grid{grid-template-columns:minmax(0,1fr);gap:12px}}
@media(forced-colors:active){.general-win-rate{border-color:CanvasText;background:Canvas;color:CanvasText;-webkit-backdrop-filter:none;backdrop-filter:none}.general-win-rate-metrics dd{color:CanvasText}}
.general-profile{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr);align-items:center;overflow:hidden;margin-bottom:32px;border:1px solid #e0e9e2;border-radius:28px;background:linear-gradient(125deg,#e9f1ec,#f5f7f1 60%,#dfeae3);box-shadow:var(--shadow)}
.general-profile .general-art{position:relative;inset:auto;z-index:1;grid-area:1/2;justify-self:center;width:100%;max-width:460px;min-width:0;aspect-ratio:14/13;max-height:420px;background:transparent}
.general-profile .general-art img{object-fit:contain;object-position:center}
.general-profile::after{position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse at 74% 45%,#ffffffa3,transparent 64%);content:"";pointer-events:none}
.general-profile-content{position:relative;z-index:2;grid-area:1/1;min-width:0;margin:28px 0 28px 28px;padding:48px 28px 28px;border:1px solid #ffffffb3;border-radius:22px;background:#ffffffa6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.general-profile .general-art img[hidden]{display:none}
.general-profile:not(:has(.general-art img:not([hidden]))){grid-template-columns:minmax(0,1fr)}
.general-profile .general-art:not(:has(img:not([hidden]))){display:none}
.general-profile:not(:has(.general-art img:not([hidden]))) .general-profile-content{grid-area:1/1;margin-right:28px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.general-profile-source{position:absolute;top:0;right:0;padding:7px 16px;border-radius:0 21px 0 14px;background:#3e6954;color:#fff;font-size:11px;letter-spacing:.06em}
.general-profile-identity{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.general-profile-faction{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:38px;max-width:100%;padding:7px 12px;border:1px solid #ffffffc9;border-radius:13px;background:linear-gradient(145deg,#ffffffd9,#dfeae480);color:#436752;box-shadow:0 2px 8px #284d3810,inset 0 1px 0 #fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:14px;font-weight:600;letter-spacing:.04em;overflow-wrap:anywhere}
.general-profile h1{min-width:0;margin:0;font-size:clamp(30px,3vw,42px);line-height:1.3;overflow-wrap:anywhere}
.general-profile-facts{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:24px}
.general-profile-role{display:inline-flex;align-items:center;min-width:0;max-width:100%;padding:5px 10px;border:1px solid #dce7df99;border-radius:999px;background:#e9f0eb99}
.general-profile-positioning{margin:0;color:#64816e;font-size:12px;font-weight:500;line-height:1.5;overflow-wrap:anywhere}
.general-profile-stats{display:flex;flex-wrap:wrap;gap:10px;min-width:0;max-width:100%;margin:0}
.general-profile-stats>div{min-width:0;max-width:100%}
.general-profile-stat{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid #dce7de;border-radius:12px;background:#f8fbf7c9}
.general-profile-stat--health{border-color:#e8dfd5;background:#faf7f1c9}
.general-profile-stats dt{display:flex;align-items:center;flex-shrink:0;gap:6px;color:#687e6f;font-size:13px;line-height:24px}
.general-profile-stats dt svg{flex-shrink:0;width:16px;height:16px;fill:none;stroke:#638e73;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.general-profile-stat--health dt svg{stroke:#ad8870}
.general-profile-stats dd{min-width:0;margin:0;color:#304f3b;font-size:16px;font-weight:650;line-height:24px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.general-profile-stat--health dd{color:#876c55}
.general-art-zoom{position:absolute;inset:0;z-index:3;pointer-events:auto;cursor:zoom-in}
.general-art-zoom:focus-visible{outline-offset:-5px}
.general-art-zoom-icon{position:absolute;right:18px;bottom:18px;display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffffb3;border-radius:14px;background:#ffffffbf;color:#315b45;box-shadow:0 4px 18px #1d302614;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.general-art-zoom:hover .general-art-zoom-icon{background:#fff;color:var(--accent)}
.general-art-zoom svg,.artwork-dialog-toolbar svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
html.artwork-viewing{overflow:hidden}
.artwork-dialog{position:fixed;inset:0;width:min(1240px,calc(100% - 40px));height:calc(100% - 40px);max-width:none;max-height:none;margin:auto;padding:16px;border:1px solid #ffffff24;border-radius:22px;background:#15241d;color:#f1f6f2;box-shadow:0 24px 100px #0006;overflow:hidden}
.artwork-dialog[open]{display:flex;flex-direction:column;gap:12px}
.artwork-dialog::backdrop{background:#08120dde;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.artwork-dialog-toolbar{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:16px;padding-left:10px}
.artwork-dialog-toolbar>span{min-width:0;font-size:14px;font-weight:600;overflow-wrap:anywhere}
.artwork-dialog-toolbar button{flex-shrink:0;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #ffffff30;border-radius:13px;background:#ffffff12;color:#f1f6f2;box-shadow:none}
.artwork-dialog-toolbar button:hover{background:#ffffff24}
.artwork-dialog-stage{position:relative;display:flex;flex:1;align-items:center;justify-content:center;min-width:0;min-height:0;overflow:hidden}
.artwork-dialog-stage img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
.artwork-dialog-stage p{padding:24px;color:#c3d0c6;font-size:14px;text-align:center}
@media(max-width:600px){.artwork-dialog{width:calc(100% - 16px);height:calc(100% - 16px);padding:12px;border-radius:18px}.general-art-zoom-icon{right:12px;bottom:12px}}
@media(forced-colors:active){.general-profile-source,.general-profile-stat,.general-profile-role,.artwork-dialog,.artwork-dialog-toolbar button{border-color:CanvasText;background:Canvas;color:CanvasText}.general-profile-stats dt svg{stroke:CanvasText}.artwork-dialog-stage p{color:CanvasText}}
.site-tabs{min-width:0;max-width:100%}
.site-tab-list{display:flex;gap:6px;max-width:100%;overflow-x:auto;padding:5px;margin:0 0 18px;border:1px solid #dce5df;border-radius:14px;background:#eff3f0b3;scrollbar-width:thin;scroll-padding-inline:5px}
.site-tab{display:block;flex:0 0 auto;max-width:100%;overflow:hidden;padding:9px 14px;border:1px solid transparent;border-radius:10px;color:#52665b;font-size:13px;font-weight:550;line-height:1.5;white-space:nowrap;text-overflow:ellipsis;text-decoration:none}
.site-tab:hover{background:#ffffffa6;color:var(--accent)}
.site-tab[aria-selected=true]{border-color:#dce5df;background:#fff;color:var(--accent);box-shadow:0 2px 7px #19372a0a}
.site-tab:focus-visible,.site-tab-panels>[data-tab-panel]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.site-tab-panels>[data-tab-panel]{min-width:0;scroll-margin-top:100px}
.site-tab-panels>[data-tab-panel][hidden]{display:none!important}
.site-tabs--heading{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:20px 24px}
.site-tabs--heading>.site-tabs-heading{margin:0;font-size:24px}
.site-tabs--heading>.site-tab-list{justify-content:flex-end;flex-wrap:wrap;gap:6px 20px;min-width:0;overflow:visible;margin:0;padding:0;border:0;border-radius:0;background:transparent}
.site-tabs--heading>.site-tab-list>.site-tab{padding:10px 2px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;font-size:15px;white-space:normal;overflow-wrap:anywhere;text-align:center;box-shadow:none}
.site-tabs--heading>.site-tab-list>.site-tab[aria-selected=true]{border-bottom-color:var(--accent);color:var(--accent);font-weight:700}
.site-tabs--heading>.site-tab-panels{grid-column:1/-1;min-width:0;padding-top:24px;border-top:1px solid var(--line)}
@media(max-width:600px){.site-tabs--heading{gap:16px 12px}.site-tabs--heading>.site-tabs-heading{font-size:20px}.site-tabs--heading>.site-tab-list{gap:4px 12px}.site-tabs--heading>.site-tab-list>.site-tab{padding:8px 0;font-size:13px}.site-tabs--heading>.site-tab-panels{padding-top:18px}}
.general-performance{margin:0 0 28px}
.general-performance-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;margin-bottom:22px}
.general-performance-heading h2{margin:0;font-size:24px}
.general-performance-heading p{margin:0;color:var(--muted);font-size:12px}
.site-tabs--wrap>.site-tab-list{flex-wrap:wrap;gap:8px;overflow:visible;margin-bottom:24px;padding:0;border:0;border-radius:0;background:transparent}
.site-tabs--wrap>.site-tab-list>.site-tab{padding:8px 13px;border-color:#e4ebe6;border-radius:999px;background:#f5f7f5;font-size:12px;white-space:normal;overflow-wrap:anywhere;text-align:center}
.site-tabs--wrap>.site-tab-list>.site-tab[aria-selected=true]{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:none}
.general-win-rate-detail--compact{margin:0;padding:0;border:0}
.general-win-rate-detail--compact .general-win-rate-content{display:grid;grid-template-columns:minmax(160px,.8fr) minmax(0,1.2fr);align-items:center;gap:24px;padding-top:22px;border-top:1px solid var(--line)}
.general-win-rate-detail--compact .general-win-rate-metrics{gap:20px;margin:0}
.general-win-rate-detail--compact .general-win-rate-metrics dd{margin-top:6px;font-size:38px;line-height:1.2;letter-spacing:-.03em}
.general-win-rate-detail--compact .general-win-rate-metrics small{display:table;margin-top:10px;padding:4px 9px;border-radius:8px;background:var(--light);font-size:12px;letter-spacing:0}
.general-win-rate-detail--compact .general-win-rate-meta{padding:4px 0 4px 24px;border-left:1px solid var(--line)}
.general-win-rate-detail--compact .general-win-rate-period,.general-win-rate-detail--compact .general-win-rate-source{margin:0 0 9px;line-height:1.7}
@media(max-width:600px){.general-performance-heading{margin-bottom:18px}.general-performance-heading h2{font-size:21px}.site-tabs--wrap>.site-tab-list{gap:7px}.site-tabs--wrap>.site-tab-list>.site-tab{padding:7px 11px}.general-win-rate-detail--compact .general-win-rate-content{grid-template-columns:minmax(0,1fr);gap:20px}.general-win-rate-detail--compact .general-win-rate-meta{padding:16px 0 0;border-top:1px solid var(--line);border-left:0}.general-win-rate-detail--compact .general-win-rate-metrics dd{font-size:34px}}
@media(forced-colors:active){.site-tabs--wrap>.site-tab-list>.site-tab{border-color:CanvasText;background:Canvas;color:CanvasText}.site-tabs--wrap>.site-tab-list>.site-tab[aria-selected=true]{border-color:Highlight;background:Canvas;color:CanvasText}.general-win-rate-detail--compact .general-win-rate-metrics small{background:Canvas;color:CanvasText}}
.general-skills .skill>h2{margin-top:0;font-size:21px}
@media(max-width:600px){.site-tab{padding:8px 11px;font-size:12px}.site-tab-list{gap:4px}}
@media(forced-colors:active){.site-tab-list,.site-tab{border-color:CanvasText;background:Canvas;color:CanvasText}.site-tab[aria-selected=true]{outline:2px solid Highlight;outline-offset:-3px;background:Canvas;color:CanvasText;box-shadow:none}}
.general-skills{margin:0}
.skill-section{margin-top:22px;padding-top:20px;border-top:1px solid #edf0ed}
.skill-description{margin-top:0;padding-top:0;border-top:0}
.skill-section h3{margin:0 0 12px;color:#587d67;font-size:12px;font-weight:600}
.skill-resolution .prose{font-size:14px}
.skill-note summary{padding:12px 15px;border-radius:12px;background:#f5f7f5;color:#587362;font-size:13px;font-weight:550;cursor:pointer}
.skill-note summary:hover{background:#eef3ef}
.skill-note[open] .prose{margin-top:16px}
.skill-note .prose{color:var(--muted);font-size:14px}
.auth-panel{max-width:448px;margin:64px auto;padding:38px}
.auth-heading{margin-bottom:28px;text-align:center}
.brand-mark.auth-mark{width:64px;height:64px;margin:0 auto 22px;border-radius:19px}
.auth-panel h1{margin:12px 0 12px;font-size:30px}
.auth-heading p{margin:0;font-size:13px;line-height:1.85}
.auth-panel form>button{width:100%;margin-top:4px}
.auth-footer{margin:26px 0 0;padding-top:22px;border-top:1px solid #edf0ed;color:var(--muted);text-align:center;font-size:13px}
.auth-footer a{margin-left:5px;font-weight:500}
.inline{display:flex;align-items:center;gap:10px;font-weight:400}
.inline input{flex-shrink:0;margin:0}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}
.notice,.error{margin:24px 0;padding:18px 22px;border:1px solid transparent;border-radius:16px;font-size:13px;line-height:1.8;overflow-wrap:anywhere}
.notice{border-color:#dcebe1;background:#edf6f0;color:#38694b}
.error{border-color:#f0deda;background:#fcf1ee;color:#975341}
.error strong{font-weight:600}
.error ul{margin:8px 0 0;padding-left:20px}
.table-wrap{max-width:100%;overflow:auto}
table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;font-variant-numeric:tabular-nums}
th{text-align:left;background:#f6f8f6;color:#78877d;font-size:12px;font-weight:500}
td,th{padding:16px 18px;border-bottom:1px solid #edf0ed;white-space:nowrap}
tbody tr:last-child td{border-bottom:0}
tbody tr:hover{background:#fafcfb}
.page-heading.comparison-page-heading{margin-bottom:24px}
.panel.comparison-controls{position:relative;z-index:3;margin-bottom:20px;padding:24px 28px;box-shadow:none}
.comparison-filters{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,1.15fr);align-items:start;gap:20px}
.comparison-filters>label,.comparison-filters>.general-picker{min-width:0;margin:0}
.comparison-filters .general-picker>label{margin-bottom:0}
.comparison-filters .general-picker-hint{margin-bottom:0}
.comparison-filter-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px}
.comparison-filter-actions,.comparison-column-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.comparison-metrics{display:flex;align-items:center;gap:14px;min-width:0;padding:0;margin:0;border:0}
.comparison-metrics legend{float:left;padding:0;margin-right:14px;color:var(--muted);font-size:12px;line-height:42px}
.comparison-segments{display:flex;gap:3px;padding:4px;border-radius:13px;background:#f0f2f1}
.comparison-segments label{position:relative;margin:0;cursor:pointer}
.comparison-segments input[type=radio]{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;border:0;opacity:0;cursor:pointer}
.comparison-segments span{display:block;padding:7px 17px;border-radius:10px;white-space:nowrap;font-size:13px;font-weight:500;color:#68736c;transition:background .15s,color .15s,box-shadow .15s}
.comparison-segments input:checked+span{background:#fff;color:var(--accent);box-shadow:0 2px 5px #1d302614}
.comparison-segments input:focus-visible+span{outline:3px solid #68a38d;outline-offset:2px}
.comparison-filter-actions .reset{margin:0 8px;font-size:12px}
.comparison-filter-actions button{min-height:42px;padding:10px 25px;border-radius:12px}
.comparison-options{display:flex;flex-wrap:wrap;gap:0 26px;margin-top:18px;padding-top:10px;border-top:1px solid #edf0ee}
.comparison-options>details{min-width:0;margin:0;color:var(--muted);font-size:12px}
.comparison-options>details[open]{flex-basis:100%}
.comparison-options>details>summary{width:fit-content;padding:9px 0;cursor:pointer;font-size:12px;font-weight:500}
.comparison-filter-badge{margin-left:5px;color:var(--accent);font-size:11px}
.comparison-context-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:580px;margin-top:6px}
.comparison-context-fields label{margin:0}
.comparison-column-picker{margin:0;padding:0;border:0}
.comparison-column-picker>summary{color:var(--muted)}
.comparison-column-picker>summary span{display:inline-block;margin-left:8px;padding:2px 9px;border-radius:20px;background:var(--light);font-size:11px;font-weight:500}
.comparison-column-picker>p{font-size:12px;line-height:1.8}
.comparison-column-picker>[data-column-message]:empty{display:none}
.comparison-order>summary{width:fit-content;cursor:pointer;font-size:12px}
.comparison-order:has([data-column-order][hidden]){display:none}
.comparison-column-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;max-height:360px;margin:18px 0;overflow:auto;overscroll-behavior:contain}
.comparison-column-groups fieldset{min-width:0;margin:0;padding:12px 14px 4px;border:1px solid var(--line);border-radius:14px}
.comparison-column-groups legend{max-width:100%;padding:0 5px;font-size:12px;font-weight:600;overflow-wrap:anywhere}
.comparison-column-option{display:flex;align-items:flex-start;gap:10px;margin:0 0 6px;padding:8px;border-radius:9px;cursor:pointer;font-size:13px;font-weight:400}
.comparison-column-option:has(input:checked){background:var(--light);color:var(--accent)}
.comparison-column-option input{flex-shrink:0;margin-top:3px}
.comparison-column-option small{margin-top:2px;font-size:10px}
.comparison-selection{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.comparison-column-chip{display:inline-flex;align-items:center;gap:3px;max-width:100%;padding:5px 7px 5px 12px;border:1px solid #dbe7df;border-radius:12px;background:#f3f8f5;font-size:11px;color:#486252}
.comparison-column-chip>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:5px}
.comparison-column-chip button{flex-shrink:0;min-width:28px;min-height:30px;padding:2px 5px;border:0;border-radius:7px;background:transparent;color:var(--accent);font-size:15px;box-shadow:none}
.comparison-column-chip button:hover{background:#e1ede5}
.panel.comparison-panel{padding:26px 0 18px;overflow:hidden;box-shadow:0 6px 30px #1d302606}
.comparison-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:0 26px}
.comparison-heading h2{margin:0 0 6px;font-size:21px;letter-spacing:-.025em}
.comparison-heading p{margin:0;font-size:12px;overflow-wrap:anywhere}
.comparison-total{flex-shrink:0;padding:5px 12px;border-radius:9px;background:#f3f5f4;color:var(--muted);font-size:12px}
.comparison-table-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 18px;padding:18px 26px 14px}
.comparison-sort-note{margin:0;color:var(--accent);font-size:11px;overflow-wrap:anywhere}
.comparison-scroll-hint{margin:0;color:#7a8e80;font-size:11px}
.comparison-panel>.notice{margin:16px 26px}
.comparison-scroll{max-width:100%;max-height:70vh;overflow:auto;overscroll-behavior:contain;border-top:1px solid var(--line);border-bottom:1px solid var(--line);scrollbar-width:thin;scrollbar-color:#becfc3 #f4f7f5}
@supports(max-height:70dvh){.comparison-scroll{max-height:70dvh}}
.comparison-scroll:focus-visible{outline:2px solid #80aa96;outline-offset:-2px}
.comparison-table{width:100%;table-layout:auto;font-variant-numeric:tabular-nums}
.comparison-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.comparison-table thead th{position:sticky;top:0;z-index:2;min-width:170px;padding:16px 24px;background:#f7f8f8;vertical-align:top;white-space:normal;text-align:right;border-bottom:1px solid #e6ebe8}
.comparison-table .comparison-general-head{left:0;z-index:4;min-width:200px;width:200px;padding-top:22px;text-align:left;box-shadow:1px 0 0 #e3eae5}
.comparison-table .comparison-general-head small{display:block;margin-top:4px;font-size:10px;color:#93a097}
.comparison-primary-sort{display:flex;flex-direction:column;align-items:flex-end;gap:5px;color:#77857c;font-size:11px}
.comparison-primary-sort>span{max-width:220px;overflow-wrap:anywhere}
.comparison-primary-sort small{color:#829086;font-size:10px;font-weight:400}
.comparison-primary-sort strong{margin-top:0;color:var(--ink);font-size:14px;font-weight:600}
.comparison-primary-sort strong span{padding-left:5px;color:#80a28e}
.comparison-rank-sort{display:inline-block;margin-top:4px;padding:4px 0;color:#7b8c80;font-size:11px}
.comparison-table th[aria-sort]{background:#edf5f1;box-shadow:inset 0 -2px 0 #679983}
.comparison-table th[aria-sort] .comparison-primary-sort strong{color:var(--accent)}
.comparison-table .comparison-general{position:sticky;left:0;z-index:1;width:190px;min-width:190px;max-width:190px;padding:13px 20px;background:#fff;box-shadow:1px 0 0 #e3eae5;white-space:normal}
.comparison-general a{display:flex;align-items:center;gap:12px;color:var(--ink)}
.comparison-general a>span{min-width:0;overflow-wrap:anywhere}
.comparison-general strong{display:block;font-size:14px;font-weight:600;line-height:1.5}
.comparison-general small{display:block;margin-top:3px;color:#8c968f;font-size:10px;font-weight:400}
.comparison-general .portrait{width:42px;height:50px;border-radius:11px}
.comparison-general .portrait span{font-size:20px}
.comparison-table td{min-width:170px;padding:15px 24px;background:#fff;font-size:14px;text-align:right;border-bottom-color:#f0f2f1}
.comparison-table td.comparison-active-column{background:#f5faf7}
.comparison-table tbody tr:hover td,.comparison-table tbody tr:hover .comparison-general{background:#f0f7f2}
.comparison-table tbody tr:last-child th{border-bottom:0}
.comparison-table td>small{display:block;margin-top:4px;color:#929d96;font-size:10px;font-weight:400}
.comparison-rate{color:#35493e;font-size:20px;font-weight:600;letter-spacing:-.035em}
.comparison-active-column .comparison-rate{color:var(--accent)}
.comparison-ranking{font-size:14px;font-weight:500;color:#536b5d}
.comparison-missing{color:#a2ada6;font-size:18px}
.comparison-table .comparison-empty{padding:38px 26px;white-space:normal;text-align:center;color:var(--muted)}
.comparison-footnote{margin:20px 26px 0;color:#8b978f;font-size:10px;line-height:1.8}
@media(max-width:1000px){.comparison-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-filters>.general-picker{grid-column:1/-1}.comparison-metrics legend{display:none}}
@media(max-width:600px){.panel.comparison-controls{padding:18px}.comparison-filters{gap:14px 12px}.comparison-filters>label:first-child,.comparison-filters>.general-picker{grid-column:1/-1}.comparison-filters>label{grid-column:1/-1}.comparison-filter-footer{flex-direction:column;align-items:stretch;gap:14px}.comparison-metrics,.comparison-segments{width:100%}.comparison-segments label{flex:1;text-align:center}.comparison-segments span{padding:8px 5px;font-size:12px}.comparison-filter-actions{justify-content:flex-end}.comparison-filter-actions button{flex:1}.comparison-options{gap:0 18px;margin-top:14px}.comparison-context-fields{grid-template-columns:1fr}.comparison-column-groups{grid-template-columns:minmax(0,1fr)}.comparison-column-chip button{min-width:34px;min-height:36px}.comparison-heading{align-items:flex-start;flex-direction:column;gap:10px;padding:0 18px}.comparison-heading h2{font-size:19px}.comparison-panel{padding-top:20px}.comparison-table-toolbar{padding:14px 18px}.comparison-footnote{margin:18px 18px 0}.comparison-table .comparison-general-head,.comparison-table .comparison-general{min-width:130px;width:130px;max-width:130px;padding-left:12px;padding-right:10px}.comparison-general a{gap:8px}.comparison-general .portrait{width:30px;height:38px;border-radius:8px}.comparison-general strong{font-size:12px}.comparison-table thead th,.comparison-table td{min-width:145px;padding-left:16px;padding-right:16px}.comparison-rate{font-size:18px}}
@media(forced-colors:active){.comparison-segments input:checked+span{outline:2px solid Highlight}.comparison-column-option:has(input:checked){outline:1px solid Highlight}}
@media(forced-colors:active){.comparison-table thead th,.comparison-table .comparison-general,.comparison-table td.comparison-active-column{background:Canvas;color:CanvasText;border-color:CanvasText;box-shadow:none}.comparison-table .comparison-general{border-right:1px solid CanvasText}}
.pagination{display:flex;align-items:center;justify-content:center;gap:12px;width:fit-content;max-width:100%;margin:34px auto 0;padding:6px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:12px}
.pagination>a,.pagination>span{padding:7px 12px;border-radius:999px;white-space:nowrap}
.pagination>a{background:#f2f6f3;color:var(--accent)}
.pagination>a:hover{background:#e7efe9}
.pagination>span{color:#95a198}
.image-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.image-list>*{min-width:0}
.image-list img{display:block;max-width:100%;max-height:280px;margin:auto;border-radius:14px;object-fit:contain}
.image-list p{overflow-wrap:anywhere;font-size:13px}
.code-input,pre{font:13px/1.8 ui-monospace,"SFMono-Regular",Consolas,monospace}
.id-list{display:flex;flex-wrap:wrap;gap:8px;max-height:200px;overflow:auto}
.id-list span{padding:5px 9px;border:1px solid #e3eae4;border-radius:8px;background:#f5f8f5;font-size:12px;overflow-wrap:anywhere}
details{margin:16px 0}
summary{cursor:pointer}
pre{max-width:100%;overflow:auto;padding:18px;border:1px solid var(--line);border-radius:14px;background:#f5f7f5}
.footer{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-top:68px;padding-top:28px;padding-bottom:32px;border-top:1px solid #e0e5e1;color:#8a958e;font-size:11px;line-height:1.8}
.footer>span:last-child{text-align:right}
.source-rating{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:5px 8px;max-width:100%;padding:6px 9px;border:1px solid #e4ebe5;border-radius:14px;background:linear-gradient(180deg,#ffffffed,#f2f5f2f5);box-shadow:0 2px 8px #253d3008,inset 0 1px 0 #fff;vertical-align:middle;white-space:nowrap;transition:box-shadow .2s,border-color .2s}
.source-rating-label{color:#66766d;font-size:11px;font-weight:500;line-height:1.2;letter-spacing:.015em}
.source-rating-stars{display:inline-flex;align-items:center;gap:2px;line-height:0}
.source-rating-star{width:16px;height:16px;flex-shrink:0;fill:#e4ebe5;stroke:#b4c2b8;stroke-width:1;stroke-linejoin:round}
.source-rating-star.is-filled{fill:#d4a049;stroke:#c28e35;filter:drop-shadow(0 1px 1px #9f671326)}
.source-rating.is-unrated{padding:8px 11px;background:#f6f8f6;box-shadow:inset 0 1px 0 #fff;color:#738078;font-size:11px;line-height:1.2}
.selection-filter-bar{align-items:flex-start;gap:18px}
.selection-filter-bar>button,.selection-filter-bar>.reset{margin-top:27px}
.selection-filter-bar>label select{min-height:46px}
.general-picker{position:relative;min-width:250px}
.general-picker-optional{margin-left:6px;color:#939e97;font-size:11px;font-weight:400}
.general-picker-native{width:100%;margin-top:8px;padding:11px 13px;border:1px solid #e1e6e2;border-radius:14px;background:#f7f8f8;color:var(--ink);font-size:14px}
.general-picker-native[multiple]{padding:8px;min-height:156px}
.general-picker-native[multiple] option{padding:5px 7px}
.general-picker-control{display:flex;align-items:center;gap:8px;min-height:46px;margin-top:8px;padding:6px 9px 6px 12px;border:1px solid #dfe6e0;border-radius:14px;background:#f7f9f7;transition:border-color .18s,box-shadow .18s,background .18s}
.general-picker-control:focus-within{border-color:#80aa96;background:#fff;box-shadow:0 0 0 3px #286b5810}
.general-picker-search-icon{width:17px;height:17px;flex-shrink:0;color:#97a79c}
.general-picker-values{display:flex;flex:1;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}
.general-picker-selection{display:flex;align-items:flex-start;gap:10px;margin-top:10px;padding:10px;border:1px solid #e1e9e3;border-radius:14px;background:#f5f8f6}
.general-picker-selection-label{flex-shrink:0;padding-top:10px;color:#748078;font-size:11px;line-height:20px}
.general-picker-chips{display:flex;flex:1;flex-wrap:wrap;gap:7px;min-width:0}
.general-picker-control .general-picker-input{flex:1 1 128px;width:0;min-width:60px;max-width:100%;padding:5px 0;border:0;outline:0;background:transparent;box-shadow:none;color:var(--ink);font-size:13px;line-height:1.6}
.general-picker-input::placeholder{color:#97a29b}
.general-picker-chip{display:inline-flex;align-items:center;gap:7px;flex-shrink:1;min-width:0;max-width:100%;padding:3px 5px 3px 3px;border:1px solid #d4e5d9;border-radius:10px;background:#fff;color:#376c51;font-size:13px;font-weight:550;line-height:1.6}
.general-picker-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.general-picker-remove{flex-shrink:0;width:24px;height:24px;min-height:0;padding:0;border:0;border-radius:7px;background:transparent;color:#779680;font:20px/1 sans-serif;box-shadow:none}
.general-picker-remove:hover{background:#d9eadd;color:#356547;box-shadow:none}
.general-picker-toggle{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:32px;min-height:0;padding:0;border:0;border-radius:9px;background:transparent;color:#8a9c90;box-shadow:none}
.general-picker-toggle svg{width:18px;height:18px}
.general-picker-toggle:hover{background:#eaf1ec;color:var(--accent);box-shadow:none}
.general-picker-remove:focus-visible,.general-picker-toggle:focus-visible{outline:2px solid #79a58c;outline-offset:1px}
.general-picker-enhanced{position:relative}
.general-picker-dropdown{position:absolute;top:calc(100% + 8px);left:0;z-index:30;width:100%;min-width:250px;max-width:calc(100vw - 64px);overflow:hidden;border:1px solid #e0e8e2;border-radius:18px;background:#fff;box-shadow:0 12px 36px #213b2c14,0 2px 8px #213b2c06}
.general-picker-heading,.general-picker-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 15px;color:#8c9b91;font-size:11px}
.general-picker-heading{border-bottom:1px solid #f0f3f0;font-weight:500}
.general-picker-heading>span:first-child{color:#607966}
.general-picker-footer{flex-wrap:wrap;border-top:1px solid #f0f3f0;background:#fafcfb;font-size:10px}
.general-picker-options{max-height:278px;overflow-y:auto;overscroll-behavior:contain;padding:6px}
.general-picker-option{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;cursor:pointer}
.general-picker-avatar{position:relative;display:grid;place-items:center;width:38px;height:44px;flex-shrink:0;overflow:hidden;border-radius:9px;background:#eef4ef;color:#79927f;font-family:serif;font-size:20px}
.general-picker-avatar img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center top;background:#eef4ef}
.general-picker-chip .general-picker-avatar{width:28px;height:32px;border-radius:7px;font-size:16px}
.general-picker-details{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}
.general-picker-details strong{color:#3b5143;font-size:13px;font-weight:550;overflow-wrap:anywhere}
.general-picker-details small{color:#99a49d;font-size:11px}
.general-picker-initials{max-width:30%;padding:2px 6px;border:1px solid #e7eee9;border-radius:6px;color:#94a69a;font-size:10px;letter-spacing:.06em;overflow-wrap:anywhere}
.general-picker-check{width:12px;flex-shrink:0;color:#58886a;font-size:13px}
.general-picker-option:hover,.general-picker-option.is-active,.general-picker-option[aria-selected=true]{background:#f0f6f1}
.general-picker-option.is-active{box-shadow:inset 2px 0 #7aa788}
.general-picker-empty{padding:28px 15px;color:var(--muted);font-size:12px;text-align:center}
.general-picker-hint{margin:8px 0 0;color:#748078;font-size:11px;line-height:1.7}
.general-picker.is-invalid .general-picker-control{border-color:#c78977;box-shadow:0 0 0 3px #b6664d0d}
.general-picker.is-invalid .general-picker-hint{color:#a56855}
.general-picker-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(hover:hover){.combo-card:hover,.general-card:hover{transform:translateY(-3px);border-color:#d6e2d8;color:var(--ink);box-shadow:var(--shadow-hover)}.combo-card:hover .source-rating{border-color:#d3dfd6;box-shadow:0 3px 10px #253d300d,inset 0 1px 0 #fff}}
@media(max-width:1200px){.combo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.general-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1100px){.nav{gap:16px}.brand small{display:none}.site-nav a{padding:8px 10px}}
@media(max-width:900px){.general-picker{flex-basis:100%;min-width:0}.general-picker-dropdown{position:static;min-width:0;max-width:none;margin-top:8px}}
@media(max-width:850px){html{scroll-padding-top:145px}.shell{padding-right:24px;padding-left:24px}.nav{flex-wrap:wrap;gap:9px 16px;padding-top:12px;padding-bottom:10px}.site-nav{order:3;width:100%;justify-content:center}.site-nav a{padding:8px 14px}.account{margin-left:auto}.hero{padding:48px 0 36px}.hero h1{font-size:48px}.hero-description{font-size:15px}.filter-bar{scroll-margin-top:145px}.general-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-grid{grid-template-columns:minmax(0,1fr);gap:0}.detail-grid aside{width:100%}.portrait.large{width:144px;height:auto;aspect-ratio:3/4.05}.pair-panel{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);align-items:center;gap:12px}.pair-panel>.portrait{grid-row:1}.pair-panel>.portrait:nth-of-type(2){grid-column:3}.pair-panel>a:first-of-type{grid-column:1;grid-row:2;margin:0}.pair-panel>a:last-of-type{grid-column:3;grid-row:2;margin:0}.pair-panel>.pair-plus{grid-column:2;grid-row:1;margin:0}.image-list{grid-template-columns:repeat(2,minmax(0,1fr))}.footer{flex-direction:column;gap:8px}.footer>span:last-child{text-align:left}}
@media(max-width:600px){.shell{padding-right:20px;padding-left:20px}.nav{gap:8px 10px}.brand{gap:8px;font-size:19px}.brand-mark{width:32px;height:32px;border-radius:10px}.account{gap:10px;font-size:11px}.account-name{max-width:58px}.compact{min-height:32px;padding:5px 12px;font-size:11px}.site-nav{justify-content:space-between;gap:4px}.site-nav a{padding:8px 9px;font-size:12px}.hero{padding:38px 0 30px}.hero h1{margin:21px 0 18px;font-size:42px;line-height:1.25}.hero .eyebrow{font-size:10px;letter-spacing:.025em}.hero-description{font-size:14px}.hero-actions{gap:14px 22px;margin-top:23px}.hero-caption{font-size:10px}.page-heading{margin:36px 0 26px}h1{font-size:32px}h2{font-size:21px}.page-heading p{font-size:14px}.panel{padding:23px;border-radius:22px}.filter-bar{gap:14px;padding:20px;border-radius:22px}.filter-bar>label:not(.grow){flex:1 1 calc(50% - 7px)}.filter-bar>.grow{flex-basis:100%}.selection-filter-bar>label{min-width:0}.selection-filter-bar>button,.selection-filter-bar>.reset{margin-top:0}.selection-filter-bar>button{flex-grow:1}.combo-filter-bar>label:not(.grow){flex-basis:100%}label input:not([type=checkbox]),label select,label textarea,.general-picker-control .general-picker-input{font-size:16px}.general-picker-control{padding-right:7px}.general-picker-hint{font-size:10px}.general-picker-options{max-height:250px}.section-heading{align-items:flex-start;flex-direction:column;gap:8px;margin-top:30px}.section-heading h2{font-size:22px}.section-heading>span{font-size:11px}.form-grid{grid-template-columns:minmax(0,1fr);gap:0}.position-grid{grid-template-columns:minmax(0,1fr)}.detail-grid article>h1{font-size:27px}.auth-panel{margin:40px auto;padding:30px 24px}.auth-panel h1{font-size:28px}.auth-mark{margin-bottom:18px}.pagination{gap:3px;padding:5px}.pagination>a,.pagination>span{padding:7px 10px;font-size:11px}.image-list{grid-template-columns:minmax(0,1fr)}.footer{margin-top:44px;padding-top:24px;padding-bottom:26px}.back{margin:28px 0 20px}.empty{padding:44px 22px}.empty h3{font-size:19px}.empty p{font-size:13px}}
@media(max-width:540px){.combo-grid{grid-template-columns:minmax(0,1fr);gap:18px}.combo-card-body{padding:20px}.card-title{font-size:18px}.excerpt{font-size:14px}.read-more{font-size:13px}.general-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.account-name{max-width:48px}.admin-link{font-size:10px}.auth-panel{padding:28px 22px}}
@media(max-width:850px){.general-profile-content{margin:20px 0 20px 20px;padding:44px 20px 24px}.general-profile:not(:has(.general-art img:not([hidden]))) .general-profile-content{margin-right:20px}}
@media(max-width:600px){.general-card{min-height:220px;border-radius:18px}.general-card-visual{--general-name-size:12.375px}.general-card .tag.demo{top:10px;right:10px}.general-profile{grid-template-columns:minmax(0,1fr);border-radius:22px}.general-profile .general-art{grid-area:1/1;max-width:345px;max-height:320px}.general-profile-content{grid-area:2/1;margin:0 16px 16px;padding:44px 18px 22px}.general-profile:not(:has(.general-art img:not([hidden]))) .general-profile-content{margin:16px}.general-profile h1{font-size:30px}.general-profile-facts{margin-top:18px;gap:8px}.general-profile-stats{gap:8px}}
.faction-badge--colored{--faction-background:#f6f2e7;--faction-background-top:#dedacf;--faction-foreground:#315d47;--faction-label-background:transparent;background:linear-gradient(to bottom,var(--faction-background-top),var(--faction-background));color:var(--faction-foreground);border-color:#ffffff80;box-shadow:0 2px 8px #172d251f,inset 0 1px 0 #ffffff70,inset 0 0 0 1px #ffffff40;-webkit-backdrop-filter:none;backdrop-filter:none;text-shadow:none}
.faction-badge-label{border-radius:3px;background:var(--faction-label-background);box-shadow:0 0 0 2px var(--faction-label-background)}
@media(forced-colors:active){.faction-badge-label{background:Canvas;color:CanvasText;box-shadow:none}}
@media(forced-colors:active){.general-card,.general-profile{border-color:CanvasText;background:Canvas;box-shadow:none}.general-profile::after,.general-art{display:none}.general-card-name,.general-profile h1,.general-profile-positioning,.general-profile-stats dt,.general-profile-stats dd{color:CanvasText;text-shadow:none}.general-card-faction,.general-profile-faction{border-color:CanvasText;background:Canvas;color:CanvasText;box-shadow:none}.general-profile{grid-template-columns:minmax(0,1fr)}.general-profile .general-profile-content{grid-area:1/1;margin:16px;border-color:CanvasText;background:Canvas;-webkit-backdrop-filter:none;backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){.combo-card,.general-card,.source-rating,.site-nav a,button,.button,.general-picker-control{transition:none}.combo-card:hover,.general-card:hover{transform:none}}
@media(forced-colors:active){.general-card-faction,.general-card-nameplate::before{-webkit-backdrop-filter:none;backdrop-filter:none}.general-card-faction{background:Canvas;color:CanvasText;border:1px solid CanvasText}.general-card-nameplate::before{background:Canvas}.general-card-name{color:CanvasText}.combo-card-artwork{background:Canvas}}
@media(forced-colors:active){.site-header,.panel,.combo-card,.filter-bar,.empty,.general-picker-control,.general-picker-dropdown{border-color:CanvasText;background:Canvas;box-shadow:none}.hero::before{display:none}.source-rating,.source-rating.is-unrated,.combo-card:hover .source-rating{border-color:CanvasText;background:Canvas;box-shadow:none}.source-rating-label,.source-rating.is-unrated{color:CanvasText}.source-rating-star{fill:Canvas;stroke:CanvasText;filter:none}.source-rating-star.is-filled{fill:CanvasText;stroke:CanvasText;filter:none}.site-nav a[aria-current=page]{outline:1px solid CanvasText}}

.nav-dropdown{position:relative;flex-shrink:0}
.nav-dropdown>summary{display:flex;align-items:center;gap:5px;padding:8px 12px;border-radius:999px;color:#626d66;font-size:13px;white-space:nowrap;cursor:pointer;list-style:none}
.nav-dropdown>summary::-webkit-details-marker{display:none}
.nav-dropdown>summary svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .18s}
.nav-dropdown[open]>summary svg{transform:rotate(180deg)}
.nav-dropdown>summary:hover,.nav-dropdown[open]>summary{background:#eef2ef;color:var(--ink)}
.nav-dropdown.is-active>summary{background:#fff;color:var(--ink);box-shadow:0 2px 8px #20352a0a;font-weight:600}
.nav-dropdown-panel{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);min-width:156px;padding:6px;border:1px solid var(--line);border-radius:16px;background:#fffffff5;box-shadow:0 12px 32px #1d302619}
.site-nav .nav-dropdown-panel a{padding:11px 15px;border-radius:11px;font-size:13px}
.quiz-heading{max-width:none}
.quiz-heading h1{font-size:clamp(28px,4vw,40px)}
.panel.quiz-search{padding:26px 28px;margin-bottom:30px}
.quiz-search-row{display:flex;align-items:flex-end;gap:14px}
.quiz-search-field{flex:1;min-width:0;margin:0}
.quiz-search-field input{margin-bottom:0}
.quiz-search-hint{margin:16px 0 0;color:var(--muted);font-size:12px}
[data-daily-quiz] [hidden]{display:none!important}
.quiz-search-row>button{min-width:100px;flex-shrink:0;border-radius:14px}
.quiz-reset{flex-shrink:0;padding:10px 0;font-size:13px}
.quiz-categories{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
button.quiz-category{min-height:36px;padding:7px 15px;border:1px solid transparent;border-radius:999px;background:#f2f4f3;color:var(--muted);font-size:12px;font-weight:500;box-shadow:none}
button.quiz-category:hover{background:#eaf0ec;color:var(--accent)}
button.quiz-category[aria-pressed=true]{background:#e6f0e9;border-color:#d5e5dc;color:var(--accent);font-weight:650}
.quiz-results-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;margin:0 4px 16px}
.quiz-results-heading h2{margin:0;font-size:19px}
.quiz-results-heading h2 b{font-weight:inherit}
.quiz-results-heading h2 span{margin-left:8px;color:var(--muted);font-size:12px;font-weight:400}
.quiz-results-heading p{margin:0;color:var(--muted);font-size:12px;overflow-wrap:anywhere}
.quiz-list{display:grid;gap:12px}
.quiz-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,28%);align-items:center;gap:24px;padding:22px 26px;border:1px solid var(--line);border-radius:20px;background:var(--white);box-shadow:var(--shadow)}
.quiz-meta{display:flex;align-items:center;gap:10px}
.quiz-meta .tag{font-size:10px;padding:2px 8px;font-weight:500}
.quiz-number{min-width:16px;color:#a0aaa4;font-size:11px;font-variant-numeric:tabular-nums}
.quiz-question{min-width:0}
.quiz-question h3{margin:10px 0 0;font-size:15px;line-height:1.8;font-weight:550;white-space:pre-wrap}
.quiz-answer{min-width:0;padding:14px 18px;border-radius:14px;background:#f1f6f3;overflow-wrap:anywhere}
.quiz-answer>span{display:block;color:#7b9185;font-size:10px;letter-spacing:.08em}
.quiz-answer p{margin:3px 0 0;color:var(--accent);font-size:17px;font-weight:650;white-space:pre-wrap}
.quiz-disclaimer{margin:25px 4px 0;color:var(--muted);font-size:11px;line-height:1.8}
@media(max-width:600px){.site-nav{flex-wrap:wrap;justify-content:center}.nav-dropdown>summary{padding:8px 9px;font-size:12px}.panel.quiz-search{padding:20px}.quiz-search-row{flex-wrap:wrap;gap:12px}.quiz-search-field{flex-basis:100%}.quiz-search-row>button{flex:1}.quiz-reset{padding-right:5px}.quiz-categories{gap:7px}button.quiz-category{padding:7px 12px}.quiz-card{grid-template-columns:minmax(0,1fr);gap:15px;padding:20px;border-radius:18px}.quiz-answer{padding:12px 15px}.quiz-answer p{font-size:16px}.quiz-results-heading{align-items:flex-start;flex-direction:column}.quiz-question h3{font-size:14px}}
@media(max-width:380px){.site-nav>a,.nav-dropdown>summary{padding:8px 5px;font-size:11px}.site-nav{gap:3px}}
@media(prefers-reduced-motion:reduce){.nav-dropdown>summary svg{transition:none}}
@media(forced-colors:active){button.quiz-category[aria-pressed=true]{outline:2px solid Highlight}.quiz-answer{border:1px solid CanvasText}.nav-dropdown-panel{background:Canvas;border-color:CanvasText}}
