@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(../media/cormorant-garamond-latin-600-normal.2o27n1-667uro.woff2)format("woff2"),url(../media/cormorant-garamond-latin-600-normal.1hvep2259y108.woff)format("woff")}
@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:700;src:url(../media/cormorant-garamond-latin-700-normal.2qxezyj1x8a5a.woff2)format("woff2"),url(../media/cormorant-garamond-latin-700-normal.07z5_abzl8j92.woff)format("woff")}
@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(../media/figtree-latin-400-normal.01r494_vega98.woff2)format("woff2"),url(../media/figtree-latin-400-normal.1cge2g0c9lnsk.woff)format("woff")}
@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:500;src:url(../media/figtree-latin-500-normal.0_c0qm473oaog.woff2)format("woff2"),url(../media/figtree-latin-500-normal.2n4ittuwss_8-.woff)format("woff")}
@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(../media/figtree-latin-600-normal.0ipjmqts7q23-.woff2)format("woff2"),url(../media/figtree-latin-600-normal.0fzhr7oxw-dyz.woff)format("woff")}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-mono-latin-500-normal.25_05y-blbp24.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-500-normal.20ixcot5hpnm-.woff)format("woff")}
:root{--bg:#0e1117;--panel:#141821;--panel-on:#1d2230;--line:#2a3040;--line-2:#343b4e;--ink:#ece7da;--ink-bright:#f1ecdf;--ink-soft:#d8d3c6;--ink-muted:#a3a8b5;--ink-faint:#9aa0ae;--gold:#e0b252;--gold-hover:#f3cf7e;--serif:"Cormorant Garamond", Georgia, serif;--sans:"Figtree", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4,p,ul{margin:0}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}a{color:var(--gold)}a:hover{color:var(--gold-hover)}.page{--accent:var(--gold);flex-direction:column;gap:28px;max-width:1440px;min-height:100vh;margin:0 auto;padding:32px 40px 48px;display:flex}.top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.grid{flex-wrap:wrap;align-items:stretch;gap:24px;display:flex}.col{flex-direction:column;display:flex}.col-left{flex:320px;gap:24px;max-width:420px}.col-right{flex:320px;gap:26px;max-width:440px}.stack-6{flex-direction:column;gap:6px;display:flex}.stack-8{flex-direction:column;gap:8px;display:flex}.stack-12{flex-direction:column;gap:12px;display:flex}.stack-14{flex-direction:column;gap:14px;display:flex}.stack-22{flex-direction:column;gap:22px;display:flex}.row-between{justify-content:space-between;align-items:baseline;display:flex}.eyebrow{font-family:var(--mono);letter-spacing:.14em;color:var(--ink-faint);font-size:12px;font-weight:500}.eyebrow.wide{letter-spacing:.18em}.mono-sm{font-family:var(--mono);color:var(--ink-faint);font-size:12px}.mono-sm.spaced{letter-spacing:.1em}.name{font-family:var(--serif);color:var(--ink-bright);font-size:52px;font-weight:700;line-height:1}.footnote{color:var(--ink-faint);font-size:14px}.actions{flex-wrap:wrap;gap:12px;display:flex}.btn-outline,.btn-solid{border-radius:10px;align-items:center;min-height:48px;padding:0 22px;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex}.btn-outline{border:1px solid var(--gold);color:var(--gold);background:0 0}.btn-outline:hover{background:#e0b25214}.btn-solid{background:var(--gold);color:#14110a}.btn-solid:hover{background:var(--gold-hover);color:#14110a}.btn-ghost{border:1px solid var(--line-2);min-height:44px;color:var(--ink);background:0 0;border-radius:10px;padding:0 18px;font-size:15px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips.plain{padding:0;list-style:none}.builds{flex-direction:column;gap:10px;display:flex}.build{text-align:left;border:2px solid var(--line);background:var(--panel);width:100%;min-height:76px;color:var(--ink);border-radius:14px;align-items:center;gap:16px;padding:16px 18px;transition:border-color .15s,background .15s,transform .15s;display:flex}.build:hover{border-color:var(--line-2);transform:translateY(-1px)}.build.is-active{border-color:var(--build);background:color-mix(in srgb, var(--build) 12%, var(--panel));box-shadow:0 0 0 4px color-mix(in srgb, var(--build) 14%, transparent)}.build-main{flex-direction:column;flex:1;gap:4px;display:flex}.build-name{font-family:var(--serif);color:var(--ink-bright);font-size:26px;font-weight:700;line-height:1}.build-blurb{color:var(--ink-muted);font-size:14px}.build-dots{flex:none;gap:6px;display:flex}.build-dot{border-radius:50%;width:12px;height:12px}.build.is-locked{cursor:not-allowed;border-style:dashed;border-color:var(--line-2);background:repeating-linear-gradient(-45deg, var(--panel) 0 10px, #11151d 10px 20px)}.build.is-locked:hover{transform:none}.build.is-locked .build-name,.build.is-locked .build-blurb{color:#8a8f9c}.build-lock{border:1px solid var(--line-2);font-family:var(--mono);letter-spacing:.1em;color:var(--gold);border-radius:8px;flex:none;align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:inline-flex}.dlc-note{color:var(--ink-soft);font-size:14px;line-height:1.5}.hat-list{flex-direction:column;gap:2px;padding:0;list-style:none;display:flex}.hat-row{opacity:.55;border-bottom:1px solid #1c212c;align-items:center;gap:12px;padding:8px 4px;transition:opacity .2s;display:flex}.hat-row.is-on{opacity:1}.hat-dot{background:var(--hat);border-radius:50%;flex:none;width:12px;height:12px}.hat-row:not(.is-on) .hat-dot{box-shadow:inset 0 0 0 2px var(--hat);background:0 0}.hat-text{flex-direction:column;flex:1;gap:1px;display:flex}.hat-name{font-size:15px;font-weight:600}.hat-blurb{color:var(--ink-muted);font-size:13px}.hat-tag{font-family:var(--mono);letter-spacing:.08em;color:#7d8392;font-size:11px}.hat-row.is-on .hat-tag{color:var(--hat)}.hat-row.is-dlc .hat-tag{color:var(--gold)}.stage{border:1px solid var(--line);background:radial-gradient(ellipse at 50% 62%, color-mix(in srgb, var(--accent) 27%, transparent) 0%, #0e111700 64%), var(--panel);border-radius:16px;flex-direction:column;flex:1.3 380px;justify-content:flex-end;align-items:center;min-width:0;padding:32px 24px 28px;transition:background .35s;display:flex}.hat-stack{z-index:2;flex-direction:column;align-items:center;width:100%;margin-bottom:-26px;display:flex;position:relative}.hat{filter:drop-shadow(0 6px 10px #00000073);justify-content:center;width:100%;margin-top:-24px;animation:.35s ease-out hatdrop;display:flex}@keyframes hatdrop{0%{opacity:0;transform:translateY(-36px)}to{opacity:1;transform:none}}.portrait{z-index:1;position:relative}.portrait path:first-child{transition:fill .35s}.floor{background:radial-gradient(ellipse at center, var(--accent) 0%, #0e111700 70%);opacity:.55;border-radius:50%;width:78%;height:22px;margin-top:-14px}.caption{text-align:center;flex-direction:column;align-items:center;gap:8px;margin-top:22px;display:flex}.title-line{font-family:var(--serif);color:var(--ink-bright);font-size:28px;font-weight:600}.stat{grid-template-columns:116px 1fr 24px;align-items:center;gap:12px;display:grid}.stat-label{color:#c9c5ba;font-size:14px}.stat-track{background:#232938;border-radius:5px;height:10px;display:flex;overflow:hidden}.stat-seg{flex:none;height:100%;transition:width .4s;display:block}.stat-seg+.stat-seg{box-shadow:inset 2px 0 #141821}.stat-legend{color:var(--ink-muted);flex-wrap:wrap;justify-content:flex-end;gap:4px 12px;padding:0;font-size:12px;list-style:none;display:flex}.stat-legend li{align-items:center;gap:6px;display:inline-flex}.stat-legend-dot{border-radius:50%;width:8px;height:8px}.stat-value{font-family:var(--mono);text-align:right;font-size:13px}.skill{border:1px solid var(--line-2);color:var(--ink-soft);background:#171b24;border-radius:16px;padding:6px 12px;font-size:13px}.moves{flex-direction:column;gap:8px;padding:0;list-style:none;display:flex}.moves li{color:var(--ink-soft);align-items:baseline;gap:10px;font-size:14px;line-height:1.4;display:flex}.moves li:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:6px;height:6px;transform:translateY(-2px)}.bio{border:1px solid var(--line);background:var(--panel);width:min(860px,100% - 48px);max-width:none;max-height:calc(100% - 64px);color:var(--ink);border-radius:16px;margin:32px auto;padding:0}.bio::backdrop{background:#080a0ee6}.bio-panel{flex-direction:column;gap:28px;padding:32px 36px 36px;display:flex}.bio-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.bio-title{font-family:var(--serif);color:var(--ink-bright);font-size:40px;font-weight:700;line-height:1.1}.bio-summary{color:var(--ink-soft);font-size:17px;line-height:1.6}.job-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;display:flex}.job-title{color:var(--ink-bright);font-size:20px;font-weight:600}.job-meta{color:var(--ink-muted);font-weight:400}.job-dates{font-family:var(--mono);color:var(--gold);font-size:13px}.job-list{color:var(--ink-soft);flex-direction:column;gap:8px;padding-left:20px;font-size:15px;line-height:1.5;display:flex}.job-summary{color:var(--ink-soft);font-size:15px;line-height:1.5}.bio-links{flex-wrap:wrap;gap:20px;font-size:16px;display:flex}@media (max-width:1100px){.col-left,.col-right{max-width:none}.stage{flex-basis:100%;order:-1}}@media (max-width:640px){.page{padding:24px 16px 40px}.name{font-size:40px}.actions{width:100%}.actions>*{flex:1;justify-content:center}.stat{grid-template-columns:104px 1fr 24px}.bio{width:calc(100% - 24px);max-height:calc(100% - 24px);margin:12px auto}.bio-panel{padding:24px 20px 28px}.bio-title{font-size:32px}}@media (prefers-reduced-motion:reduce){.hat{animation:none}*{transition:none!important}}
