:root{--layout-header-h:62px;--layout-footer-h:70px;--layout-aside-left-w:290px;--layout-aside-right-w:340px;--layout-gap:10px;--layout-pad:10px;--ink-0:#080908;--ink-1:#171614;--ink-2:#1d1915;--ink-3:#2a241d;--line:#403628;--line-strong:#65543a;--brass:#96743c;--brass-dim:#5b4a32;--gold:#dbaf55;--gold-bright:#f1d68a;--gold-soft:#dbaf5521;--text:#eee4d2;--text-muted:#c2b49f;--text-faint:#a19481;--good:#70b269;--good-deep:#315f35;--bad:#d76850;--bad-deep:#8e3528;--mana:#68a1d2;--mana-deep:#315f8f;--arcane:#aa83dc;--arcane-deep:#654598;--select:#6ac3dc;--xp:#8a4fd6;--font-display:"Cinzel", "Trajan Pro", "Palatino Linotype", Georgia, serif;--font-ui:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-prose:"Lora", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--fs-xs:12px;--fs-sm:13px;--fs-md:14.5px;--fs-lg:16px;--fs-xl:20px;--fs-2xl:26px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--r-sm:2px;--r-md:3px;--r-lg:5px;--shadow:0 9px 24px #000000ad}@media (width<=1180px){:root{--layout-aside-left-w:270px;--layout-aside-right-w:318px}}:root{--tier-1:#7a5b4b;--tier-2:#566574;--tier-3:#2d606f;--tier-4:#2d8a8a;--tier-5:#2fa27f;--tier-6:#5c4ba9;--tier-7:#b9402c;--tier-8:#7082c6;--tier-9:#257e1d;--tier-10:#87236a}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0}[hidden]{display:none!important}body{color:var(--text);font:400 var(--fs-md) / 1.4 var(--font-ui);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;background:#070807}button,input,select,textarea{font:inherit}body:before{content:"";z-index:-1;background:radial-gradient(at 52% -12%,#4c60702b,#0000 52%),radial-gradient(at 45% 112%,#683f1929,#0000 58%),linear-gradient(#03050561,#030404a3),url(/assets/blackened-iron-BE0HTh-E.webp) 50%/560px,#070807;position:fixed;inset:0}body:after{content:"";z-index:80;pointer-events:none;position:fixed;inset:0;box-shadow:inset 0 0 0 1px #e2b85c14}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:linear-gradient(#97743c73,#473724bf),url(/assets/blackened-iron-BE0HTh-E.webp) 50%/180px;border:1px solid #17120d;border-radius:2px}::-webkit-scrollbar-track{background:0 0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.note{font-size:var(--fs-xs);color:var(--text-muted)}.muted{color:var(--text-muted)}.faint{color:var(--text-faint)}.gold{color:var(--gold)}.good{color:var(--good)}.bad{color:var(--bad)}a.sl{color:var(--mana);text-underline-offset:2px;text-decoration:underline}a.sl.gold{color:var(--gold)}.panel{background:var(--ink-1);border:1px solid #8e6d39;border-radius:3px;flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;box-shadow:inset 0 1px #ffe7b00f,0 4px 13px #0000009e}.panel.fill{flex:1}.panel:before{content:"";z-index:3;pointer-events:none;border:1px solid #c597482e;border-radius:1px;position:absolute;inset:3px;box-shadow:inset 0 0 0 1px #00000075}.panel:after{content:"";z-index:4;pointer-events:none;opacity:.72;background:linear-gradient(#e0b863,#e0b863) 0 0/13px 1px no-repeat,linear-gradient(#e0b863,#e0b863) 0 0/1px 13px no-repeat,linear-gradient(#e0b863,#e0b863) 100% 0/13px 1px no-repeat,linear-gradient(#e0b863,#e0b863) 100% 0/1px 13px no-repeat,linear-gradient(#8b672f,#8b672f) 0 100%/13px 1px no-repeat,linear-gradient(#8b672f,#8b672f) 0 100%/1px 13px no-repeat,linear-gradient(#8b672f,#8b672f) 100% 100%/13px 1px no-repeat,linear-gradient(#8b672f,#8b672f) 100% 100%/1px 13px no-repeat;position:absolute;inset:-1px}.panel-head{align-items:center;gap:var(--s-2);background-color:#17110d;background-image:linear-gradient(#291d120f,#060707b0),url(/assets/smoked-oak-NFN7tVYC.webp);background-size:auto,360px;border-bottom:1px solid #554126;flex:none;padding:9px 12px;display:flex;position:relative;box-shadow:inset 0 1px #fbdc930d,inset 0 -1px #000000b8}.panel-head:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#daac4e8f,#0000);height:1px;position:absolute;bottom:-1px;left:9px;right:9px}.panel-head h3{font-family:var(--font-display);font-size:var(--fs-md);color:#efe2c9;letter-spacing:.07em;text-shadow:0 1px 1px #000;align-items:center;gap:8px;font-weight:600;display:inline-flex}.panel-head h3:before{content:"";background:#bd9145;flex:none;width:5px;height:5px;transform:rotate(45deg);box-shadow:0 0 0 1px #34250e,0 0 5px #dbaf5540}.panel-body{min-height:0;padding:10px 12px}.panel-body.scroll{flex:1;overflow:auto}.panel-body.tight{padding:6px 12px}.panel-foot{background-color:#100c09a8;background-image:linear-gradient(#07080885,#050606b8),url(/assets/smoked-oak-NFN7tVYC.webp);background-size:auto,420px;border-top:1px solid #4d3b24;gap:8px;padding:8px 12px 10px;display:flex}.tabs{gap:4px;display:flex}.tab{border-radius:var(--r-sm);color:var(--text-muted);font:600 var(--fs-sm) var(--font-ui);letter-spacing:.04em;text-shadow:0 1px #000;background-color:#111414;background-image:linear-gradient(#32393a29,#030506a8),url(/assets/blackened-iron-BE0HTh-E.webp);background-size:auto,310px;border:1px solid #5b4b34;padding:5px 12px;box-shadow:inset 0 1px #ebe0c20f,inset 0 -1px #000000b8,0 2px 5px #0000006b}.tab:hover{filter:brightness(1.17)saturate(1.04)}.tab.is-active{color:var(--gold-bright);background-color:#292015;background-image:none;border-color:#c3974a;box-shadow:inset 0 0 0 1px #efcd821f,0 0 8px #dbaf5514}.tab.is-locked{opacity:.4}.callout{border-radius:0 var(--r-sm) var(--r-sm) 0;background:linear-gradient(90deg, #30271b, var(--ink-1));font-size:var(--fs-xs);border-left:3px solid #c29342;padding:6px 10px}.callout.bad{border-left-color:var(--bad);background:#d768501a}.callout.good{border-left-color:var(--good);background:#70b2691a}.input{background:var(--ink-0);width:100%;height:40px;color:var(--text);font:inherit;font-size:var(--fs-md);border:1px solid #5b4b34;border-radius:3px;padding:0 12px;transition:border-color .12s,box-shadow .12s;box-shadow:inset 0 1px 3px #000,0 1px #e9c87e0a}.input::placeholder{color:var(--text-faint)}.input:focus{border-color:var(--gold);outline:none;box-shadow:inset 0 1px 3px #000,0 0 0 2px #dbaf552e}.input[aria-invalid=true]{border-color:var(--bad)}.input[disabled]{opacity:.6}@scope(kf-button){:scope{display:inline-flex}:scope[block]{width:100%;display:flex}button{justify-content:center;align-items:center;gap:var(--s-2);min-width:0;min-height:36px;padding:0 var(--s-4);border-radius:var(--r-sm);color:#e6dcc9;font:600 var(--fs-sm) / 1 var(--font-ui);text-shadow:0 1px #000;white-space:nowrap;cursor:pointer;background-color:#111414;background-image:linear-gradient(#32393a29,#030506a8),url(/assets/blackened-iron-BE0HTh-E.webp);background-size:auto,310px;border:1px solid #5b4b34;flex:1;display:inline-flex;box-shadow:inset 0 1px #ebe0c20f,inset 0 -1px #000000b8,0 2px 5px #0000006b}button:hover{filter:brightness(1.17)saturate(1.04)}button:active{transform:translateY(1px)}button:focus-visible{outline-offset:2px;outline:2px solid #dbaf558c}button[disabled]{opacity:.45;cursor:not-allowed;filter:none;transform:none}:scope[size=lg] button{min-height:44px;font-family:var(--font-display);letter-spacing:.06em}:scope[variant=gather] button,:scope[variant=attack] button,:scope[variant=dungeon] button,:scope[variant=danger] button{background-size:auto,240px}:scope[variant=gather] button{background-color:#24482b;background-image:linear-gradient(#45974eb3,#143f1edb),url(/assets/blackened-iron-BE0HTh-E.webp);border-color:#699b58}:scope[variant=attack] button{background-color:#254d79;background-image:linear-gradient(#437cb9c7,#19395be6),url(/assets/blackened-iron-BE0HTh-E.webp);border-color:#628eb9}:scope[variant=dungeon] button{background-color:#4b3573;background-image:linear-gradient(#70489dc4,#362355e6),url(/assets/blackened-iron-BE0HTh-E.webp);border-color:#9170b6}:scope[variant=danger] button{background-color:#743629;background-image:linear-gradient(#a24634cc,#531e18eb),url(/assets/blackened-iron-BE0HTh-E.webp);border-color:#ba624f}:scope[variant=gold] button{border-color:var(--gold);color:var(--gold-bright)}:scope[variant=ghost] button{box-shadow:none;color:var(--text-muted);background:0 0;border-color:#0000}}@scope(kf-item){:scope{--item-size:72px;--item-rarity:#817c70;width:var(--item-size);height:var(--item-size);vertical-align:middle;flex:none;display:inline-block}:scope[size=sm]{--item-size:48px}:scope[size=lg]{--item-size:112px}:scope[data-rarity=uncommon]{--item-rarity:#72ad78}:scope[data-rarity=rare]{--item-rarity:#689fdb}:scope[data-rarity=epic]{--item-rarity:#bc80d8}:scope[data-rarity=legendary]{--item-rarity:#e5b45d}button{isolation:isolate;border:1px solid color-mix(in srgb, var(--item-rarity) 72%, #15120d);background:radial-gradient(ellipse at 50% 100%, color-mix(in srgb, var(--item-rarity) 17%, transparent), transparent 80%), linear-gradient(140deg, #282722, #10120f 65%);width:100%;height:100%;color:var(--text);font-family:var(--font-display);border-radius:5px;place-items:center;padding:7%;display:grid;position:relative;box-shadow:inset 0 0 0 2px #0c0d0c,inset 0 0 0 3px #ffffff0c,0 3px 7px #0008}button:after{content:"";border-radius:inherit;pointer-events:none;box-shadow:0 0 12px color-mix(in srgb, var(--item-rarity) 35%, transparent), inset 0 0 10px color-mix(in srgb, var(--item-rarity) 15%, transparent);opacity:0;position:absolute;inset:-1px}.art{background:var(--item-src) center / contain no-repeat;filter:drop-shadow(0 3px 2px #0009);width:100%;height:100%}:scope[data-tier-tinted=true] .art{background-image:linear-gradient(var(--item-tier), var(--item-tier)), var(--item-src), linear-gradient(#000, #000);background-blend-mode:color, luminosity;-webkit-mask:var(--item-src) center / contain no-repeat;mask:var(--item-src) center / contain no-repeat}.tier,.amount,.selection{z-index:1;text-shadow:0 1px #000;background:#0d100eed;border-radius:2px;padding:1px 4px;font-size:11px;line-height:1.4;position:absolute}.tier{border-bottom:2px solid var(--item-tier);color:#eee4d2;top:3px;left:3px}.amount{font:700 12px/1.4 var(--font-ui);bottom:3px;right:3px}.selection{color:var(--gold);display:none;top:3px;right:3px}.fallback{color:var(--text-muted);font-size:30px}:scope[selected] button{outline:2px solid var(--gold);outline-offset:2px}:scope[selected] .selection{display:block}:scope[interactive] button:not(:disabled){cursor:pointer}:scope[interactive] button:not(:disabled):hover{border-color:var(--gold);background-color:#393124}button:focus-visible{outline-offset:4px;outline:2px solid #f4dc9b}:scope[disabled]{opacity:.45}:scope[animation=glow] button:after{animation:2.8s ease-in-out infinite alternate item-glow}:scope[animation=reveal] button{animation:.46s ease-out both item-reveal}:scope[animation=float] .art{animation:3s ease-in-out infinite item-float}@keyframes item-glow{0%{opacity:.2}to{opacity:1}}@keyframes item-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4%)}}@keyframes item-reveal{0%{opacity:0;transform:scale(.8)translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:after{animation:none!important}}}@scope(kf-item-details){:scope{min-width:0;height:100%;display:block}.panel{height:100%}.panel-foot{flex-direction:column;flex:none;align-items:stretch;gap:8px;margin-top:auto}.panel-foot .note{margin:8px 0 0;line-height:1.5}.panel-body{padding:14px;overflow:auto}.sheet-heading{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding-bottom:14px;display:flex}.identity{min-width:0}.panel-head{justify-content:space-between}[data-ref=close]{color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:22px}[data-ref=close]:focus-visible{outline:2px solid var(--gold)}h2{font:600 14px var(--font-display);color:var(--gold);margin:0}h3{font:600 16px/1.4 var(--font-display);overflow-wrap:anywhere;margin:0 0 6px}h4{font:600 12px var(--font-display);letter-spacing:.08em;color:var(--gold);text-transform:uppercase;margin:24px 0 10px}.portrait{background:radial-gradient(#a3833820,#0000 70%);flex:none;place-items:center;display:grid}.classification{color:var(--text-muted);margin:0;font-size:13px;line-height:1.5}.description{font:14px/1.7 var(--font-prose);margin:18px 0}dl{grid-template-columns:minmax(0,1fr) auto;gap:10px 12px;margin:15px 0;font-size:13px;display:grid}dt{color:var(--text-muted)}dd{text-align:right;overflow-wrap:anywhere;max-width:150px;margin:0}.empty-mark{color:var(--brass);margin:36px 0 20px;font-size:46px}.note{overflow-wrap:anywhere}}@scope(kf-item-details){.requirement-list{gap:6px;display:grid}.requirement{border:1px solid var(--line-strong);flex-wrap:wrap;justify-content:space-between;gap:6px;padding:10px;font-size:13px;display:flex}.requirement strong{font:inherit}.requirement.met{color:#bdcf93;background:#758d3520}.requirement.unmet{color:#edaf98;background:#b45b3320;border-color:#b36b4c70}.requirement.unknown{color:var(--text-muted)}}@scope(kf-item-details){.ability-actions{gap:10px;display:grid}.ability-actions button{width:100%;min-height:44px}.ability-actions .autocast{align-items:center;gap:8px;min-height:44px;display:flex}}@scope(kf-inventory){:scope{height:100%;min-height:0;display:block}.inventory-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:0;display:flex}h1{font:600 16px var(--font-display);margin:4px 0 8px}.eyebrow{color:var(--gold);font:10px var(--font-display);letter-spacing:.18em;text-transform:uppercase;margin:0}.inventory-heading .muted{margin:0;font-size:12px}.inventory-controls{flex-wrap:wrap;align-items:end;gap:8px;margin-bottom:14px;display:flex}label{color:var(--text-muted);gap:7px;font-size:12px;display:grid}.search{flex:1;min-width:180px}select{min-width:110px}.collection{height:100%}.inventory-scroll{min-height:0;padding:12px;overflow:auto}.collection-heading{justify-content:space-between;gap:8px;display:flex}.panel-head{justify-content:space-between;gap:12px}h2{font:600 13px var(--font-display);margin:0}.items{grid-template-columns:repeat(auto-fill,72px);gap:12px;margin:0;padding:14px 0;list-style:none;display:grid}.items:empty{display:none}li{flex-direction:column;align-items:center;gap:10px;min-width:0;display:flex}.item-caption{display:none}.empty{text-align:center;color:var(--text-muted);padding:65px 20px}.empty>div{color:var(--brass);margin-bottom:20px;font-size:38px}.empty p{max-width:330px;margin:16px auto;font-size:13px;line-height:1.6}.loading{color:var(--text-muted);padding:24px;font-size:13px}.skeletons{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:20px;margin-top:26px;display:grid}.skeletons span{border:1px solid var(--line);background:#a9925d0c;border-radius:5px;width:72px;height:72px;animation:1.4s ease-in-out infinite alternate inventory-loading;display:block}.callout{margin-bottom:20px}@keyframes inventory-loading{to{opacity:.35}}@media (prefers-reduced-motion:reduce){.skeletons span{animation:none}}@media (width<=760px){.inventory-controls label:not(.search){flex:1}.search{flex-basis:100%}}}@scope(kf-codex){:scope{height:100%;min-height:0;display:block}.panel{height:100%}.panel-head{gap:10px}.panel-head h2{font:600 14px var(--font-display);color:var(--gold);flex:1;margin:0}.panel-head button{color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:22px}.codex-body{min-height:0;padding:14px;overflow:auto}h3{font:600 17px/1.4 var(--font-display);overflow-wrap:anywhere;margin:0 0 8px}h4{color:var(--gold);font:600 11px var(--font-display);text-transform:uppercase;letter-spacing:.07em;border-top:1px solid var(--line);margin:22px 0 12px;padding-top:16px}p{font-size:12px;line-height:1.6}label{color:var(--text-muted);gap:6px;margin:12px 0;font-size:11px;display:grid}.item-heading{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding-bottom:12px;display:flex}.item-heading>div{min-width:0}.item-heading kf-item{flex:none}.item-heading p{margin:0}.codex-link{text-align:left;width:100%;color:var(--gold);font:600 12px/1.6 var(--font-ui);cursor:pointer;border:1px solid var(--line);background:#0d101080;border-radius:3px;margin:6px 0;padding:8px;display:block}.codex-link:hover{border-color:var(--gold);background:#b78c3410}.source-link{overflow-wrap:anywhere;gap:4px;display:grid}.source-title{justify-content:space-between;gap:8px;display:flex}.source-link .note{font-weight:400}.rarity-choices{flex-wrap:wrap;gap:6px;margin:14px 0;display:flex}.rarity-choices .codex-link{text-align:center;flex:auto;width:auto;margin:0}.rarity-choices [aria-pressed=true]{border-color:var(--gold);box-shadow:inset 0 -2px var(--gold);background:#b78c3420}.equipment-facts{margin:16px 0;font-size:13px}.equipment-facts>div{grid-template-columns:minmax(0,1fr) minmax(0,auto);align-items:baseline;gap:8px 12px;padding:7px 0;display:grid}.equipment-facts dt{color:var(--text-muted)}.equipment-facts dd{text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;max-width:150px;margin:0}.equipment-facts .item-power{border:1px solid var(--line);background:#b78c340c;margin-bottom:6px;padding:10px}.item-power dt,.item-power dd{color:var(--gold);font-weight:600}.item-power dd{font-size:20px}.item-row{border:1px solid var(--line);background:#0d101080;border-radius:3px;align-items:center;gap:10px;margin:6px 0;padding:8px;display:flex;position:relative}.item-row:hover{border-color:var(--gold)}.item-row kf-item{pointer-events:none;flex:none}.item-link{min-width:0;color:var(--text);background:0 0;border:0;flex:1;margin:0;padding:0}.item-link:after{content:"";position:absolute;inset:0}.item-label{overflow-wrap:anywhere;gap:3px;min-width:0;display:grid}.item-label .note{font-weight:400}.recipe-card{border:1px solid var(--line);background:#080b0940;margin:10px 0;padding:8px}.recipe-card>.codex-link:first-child{color:var(--gold)}.recipe-card .craft-link{text-align:center;color:#f0ead5;background:linear-gradient(#344031,#182219);border-color:#859b62}.creature-art{object-fit:contain;flex:none;width:44px;height:44px}.creature-portrait{object-fit:contain;flex:none;width:72px;height:72px}.drop-odds{color:var(--text-muted);flex:none;font-weight:400}.threat{border:1px solid var(--line);border-left:3px solid var(--line-strong);background:#0d101080;border-radius:3px;margin:6px 0;padding:10px 12px}.threat p{margin:2px 0}.threat-ready{border-left-color:#8fae6a}.threat-risky{border-left-color:#d8b35a}.threat-over{border-left-color:#c9694f}:is(button,input,select):focus-visible{outline:2px solid var(--gold);outline-offset:2px}h3:focus{outline:none}}@scope(kf-world-map){:scope{height:100%;min-height:0;display:block}.map-frame{background:#070a10;border:1px solid #aa8141;border-radius:3px;height:100%;overflow:hidden;box-shadow:inset 0 0 70px #000b,inset 0 0 0 3px #0c0906a3,0 4px 14px #000a}.map-viewport{height:100%;position:relative;overflow:hidden}[data-ref=world]{touch-action:none;cursor:grab;width:100%;height:100%;position:absolute;inset:0}[data-ref=world]:active{cursor:grabbing}.vignette{pointer-events:none;background:radial-gradient(#0000 55%,#05070ad9 100%);position:absolute;inset:0;box-shadow:inset 0 0 0 3px #0c09064d}.map-controls{justify-items:end;gap:6px;max-width:calc(100% - 24px);display:grid;position:absolute;top:12px;right:12px}.tier-tabs,.yield-tabs,.map-search,.map-status,.map-hint{border:1px solid var(--line);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:linear-gradient(#32393a29,#030506b8),url(/assets/blackened-iron-BE0HTh-E.webp) 50%/310px;border-radius:4px;box-shadow:inset 0 1px #ffe6a80d,0 2px 6px #0008}.tier-tabs,.yield-tabs{gap:4px;max-width:100%;padding:4px;display:flex}.tier-tabs{scrollbar-width:thin;overflow-x:auto}button{cursor:pointer;color:var(--text-muted);font:12px var(--font-ui);background:linear-gradient(#32393a29,#030506a8),url(/assets/blackened-iron-BE0HTh-E.webp) 50%/240px;border:1px solid #5b4b34;border-radius:3px;flex:none;place-items:center;padding:5px 9px;display:grid;box-shadow:inset 0 1px #ffe5a80f,0 2px 4px #0008}button:hover{border-color:var(--gold);color:var(--gold)}button[aria-pressed=true]{color:var(--gold-bright);border-color:var(--gold);background-color:#61491e;box-shadow:inset 0 0 10px #d9bd6926}button.locked{color:var(--text-faint)}button:disabled{opacity:.4;cursor:default}.tier-tabs button{white-space:nowrap;min-width:34px}.yield-tabs button{width:34px;height:32px;padding:3px}.yield-tabs img{object-fit:contain;filter:drop-shadow(0 2px 2px #000b);width:25px;height:25px}.map-filter-row{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;max-width:100%;display:flex}.map-search{width:174px}.map-search input{background:0 0;border:0;width:100%;min-width:0;height:36px;font-size:11px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.painted-map{filter:saturate(.8)brightness(.62)contrast(1.15);pointer-events:none}.hex{cursor:pointer}.ground-shade{fill:#070a10;fill-opacity:.78}.hex:hover .ground-shade{fill-opacity:.5}.hex.is-selected .ground-shade{fill-opacity:.15}.tint{fill-opacity:.45;transition:fill-opacity .12s}.hex:hover .tint{fill-opacity:.25}.terrain{opacity:.5;pointer-events:none}.edge{fill:none;stroke:#05070a;stroke-width:5px;pointer-events:none}.rim{fill:none;stroke:#d2b25f52;stroke-width:1.2px;transition:stroke .15s,stroke-width .15s}.hex:hover .rim,.hex:focus .rim{stroke:#f0d78acc;stroke-width:2px}.hex:focus{outline:none}.hex.is-selected .rim{stroke:#79c6e1;stroke-width:3.5px;filter:drop-shadow(0 0 6px #79c6e1)}.hex.is-selected .tint{fill-opacity:.3}.activity-rim{fill:none;stroke:var(--gold);stroke-width:2.5px;stroke-dasharray:8 5;pointer-events:none;animation:3s linear infinite active-border}.hex.is-selected .activity-rim{stroke-width:1.5px}.fog{fill:#0c0f15}.is-fog .rim{stroke:#3b435799}.is-frontier .rim{stroke:#d2b25f73;stroke-dasharray:6 5}.name{font:600 12px var(--font-ui);fill:#fff;text-anchor:middle;paint-order:stroke;stroke:#000;stroke-width:3px;stroke-linejoin:round;pointer-events:none}.tier{font:600 10px var(--font-display);fill:#e6dcc3;text-anchor:middle;paint-order:stroke;stroke:#000;stroke-width:2.5px;pointer-events:none}.is-fog .name{fill:#6e695f;stroke-width:0;font-style:italic;font-weight:400}.is-fog .tier{fill:#6e695f;stroke-width:0}.yield-icon{filter:drop-shadow(0 2px 2px #000c);pointer-events:none}.map-status{max-width:calc(100% - 70px);color:var(--text-muted);pointer-events:none;margin:0;padding:5px 8px;font-size:10px;position:absolute;bottom:44px;right:12px}.map-zoom{gap:6px;display:grid;position:absolute;bottom:12px;left:12px}.map-zoom button{width:34px;height:34px;color:var(--gold);border-color:#8f6e3a;padding:6px;font-size:20px}.map-zoom svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.map-hint{color:var(--text-muted);pointer-events:none;margin:0;padding:5px 8px;font-size:10px;position:absolute;bottom:12px;right:12px}button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@keyframes active-border{to{stroke-dashoffset:-26px}}@media (prefers-reduced-motion:reduce){.activity-rim{animation:none}.rim,.tint{transition:none}}@media (width<=600px){.map-controls{max-width:calc(100% - 16px);top:8px;right:8px}.map-filter-row{gap:4px}.map-search{width:140px}.yield-tabs{gap:2px}.yield-tabs button{width:29px;height:30px}.map-hint{display:none}.map-status{bottom:12px}}}@scope(kf-world-map){.map-quest-slot{pointer-events:none;position:absolute;bottom:44px;left:64px;right:16px}.map-quest-slot>*{pointer-events:auto}.hex.is-quest .rim{stroke:var(--gold);stroke-width:2.5px;stroke-dasharray:8 5}}@scope(.chat-link-action){:scope{border:1px solid var(--line-strong);min-height:30px;color:var(--text-muted);font:11px/1.3 var(--font-ui);white-space:nowrap;cursor:pointer;background:0 0;border-radius:3px;justify-content:center;align-items:center;gap:6px;padding:5px 8px;display:inline-flex}:scope:hover:not(:disabled){color:var(--gold-bright);border-color:var(--brass);background:var(--gold-soft);filter:none}:scope:disabled{opacity:.45;cursor:not-allowed}:scope:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px}svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linejoin:round;width:14px;height:14px}}@scope(kf-territory-details){:scope{height:100%;min-height:0;display:block}.panel{height:100%}.panel-body{padding:16px;overflow:auto}.panel-head{flex-wrap:wrap;justify-content:space-between;gap:8px}.header-share{margin-left:auto;display:inline-flex}.header-share:empty{display:none}h2{font:600 14px var(--font-display);color:var(--gold);margin:0}h3{font:600 18px var(--font-display);margin:0 0 8px}h4{border-top:1px solid var(--line);color:var(--gold);font:600 12px var(--font-display);margin:20px 0 12px;padding-top:12px}p{font-size:13px;line-height:1.6}button{cursor:pointer;font:inherit;color:var(--gold);text-align:left;background:0 0;border:0}[data-ref=close]{font-size:22px}.reward{align-items:center;gap:10px;margin:10px 0;display:flex}.reward kf-item{flex:none}.reward p{margin:4px 0 0}.reward button{text-underline-offset:3px;padding:0;font-size:13px;text-decoration:underline}.start{text-align:center;border:1px solid var(--brass);width:100%;font:600 13px var(--font-display);background:linear-gradient(#344031,#182219);border-radius:3px;padding:12px}.secondary{border:1px solid var(--brass);border-radius:3px;padding:8px 10px}button:disabled{opacity:.5;cursor:default}button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}}@scope(kf-territory-details){.requirement-met{color:#a6bd87}.requirement-unmet{color:#e0a184}.requirement-unknown{color:var(--text-muted)}.start:disabled{opacity:.45;cursor:default;filter:saturate(.3)}}@scope(kf-territory-details){.panel-body{flex:1;padding:14px}.territory-actions{flex-direction:column;flex:none;padding:12px 14px}.territory-actions p{margin:0}.territory-utilities{flex-wrap:wrap;gap:6px 14px;margin:8px 0;display:flex}.utility{color:var(--text-muted);text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);padding:3px 0;font-size:12px}.utility:hover{color:var(--gold-bright)}.secondary{border-color:var(--line);font-size:13px}.start{color:#f0ead5;background:linear-gradient(#42643a,#22391f);border-color:#859b62}h4{color:var(--text);border-color:var(--line)}}@scope(kf-territory-details){.threat{border:1px solid var(--line);border-left:3px solid var(--line-strong);background:#0d101080;border-radius:3px;margin:10px 0;padding:10px 12px}.threat-ready{border-left-color:#8fae6a}.threat-risky{border-left-color:#d8b35a}.threat-over{border-left-color:#c9694f}.threat-creature{align-items:center;gap:12px;margin-bottom:8px;display:flex}.threat-creature img{object-fit:contain;flex:none;width:56px;height:56px}.threat-creature p{margin:2px 0}.creature-link{font:600 14px var(--font-display);color:var(--gold);text-underline-offset:3px;padding:0;text-decoration:underline}.threat-power{color:var(--text);margin:4px 0 2px;font-size:13px}.threat-verdict{color:var(--text-muted);margin:0;font-size:12px}.threat-ready .threat-verdict{color:#a6bd87}.threat-risky .threat-verdict{color:#e0c184}.threat-over .threat-verdict{color:#e0a184}}@scope(kf-cycle-rewards){:scope{display:block}.reward-space{contain:layout;height:48px;position:relative}.reward-group{align-items:center;gap:7px;height:100%;display:flex}.reward-icons{scrollbar-width:thin;scrollbar-color:#82734a55 transparent;height:100%;overflow:auto hidden}.reward-group[data-phase=enter]{animation:.16s ease-out both rewards-arrive}.reward-group[data-phase=exit]{animation:.24s ease-in both rewards-leave}.unknown-reward{min-width:40px;color:var(--gold);border:1px solid var(--line-strong);padding:10px 4px;font-size:11px}.reward-announcement{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@keyframes rewards-arrive{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes rewards-leave{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.reward-group[data-phase]{animation:none}.reward-group[data-phase=exit]{opacity:0}}}@scope(kf-activity-status){.queue-controls{flex-wrap:wrap;align-items:center;gap:4px;display:flex}:scope{display:block}:scope[expanded]{height:100%;min-height:0}:scope[expanded] .panel{height:100%}.panel-head{justify-content:space-between}.panel-body{padding:12px;overflow:auto}h3,h4,p{margin:0}h4{font:600 13px var(--font-display)}p{font-size:12px;line-height:1.6}.activity-heading{align-items:center;gap:10px;margin-bottom:12px;display:flex}.activity-heading img{object-fit:contain;border:1px solid var(--brass);background:#101616;border-radius:3px;width:38px;height:38px;padding:5px}.activity-heading .note{margin-top:4px}.progress-label{color:var(--text-muted);justify-content:space-between;margin-bottom:5px;font-size:12px;display:flex}.progress-track{background:#080e0b;border:1px solid #534b32;border-radius:2px;height:8px;overflow:hidden;box-shadow:inset 0 1px 3px #000}.progress-track[data-indeterminate] i{animation:1.4s ease-in-out infinite alternate activity-wait;width:35%!important}@keyframes activity-wait{0%{transform:translate(0)}to{transform:translate(185%)}}.progress-track i{transform-origin:0;background:linear-gradient(#9aac65,#4b703c);height:100%;transition:none;display:block;box-shadow:0 0 7px #90ab6240}[data-ref=status],[data-ref=queue-summary],.bad{margin-top:7px}.actions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}button{color:var(--gold);border:1px solid var(--line-strong);font:12px var(--font-ui);cursor:pointer;background:linear-gradient(#32393a29,#030506a8),url(/assets/blackened-iron-BE0HTh-E.webp) 50%/240px;border-radius:3px;padding:6px 8px}button:hover{border-color:var(--gold)}.stop{color:#d5937e}button:disabled{opacity:.45;cursor:default}button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}[data-ref=close]{background:0 0;border:0;padding:0 5px;font-size:22px}[data-ref=queue-section]{margin-top:24px}.queue-heading{color:var(--gold);border-bottom:1px solid var(--line);justify-content:space-between;padding-bottom:10px;display:flex}.queue-heading span{font:12px var(--font-ui);color:var(--text-muted)}.action-total{margin-top:8px}:scope[data-phase=entering] .progress-track i{background:linear-gradient(#d6bd78,#8b6b32)}.open-activity{background:0 0;border:0;place-items:center;width:28px;height:28px;padding:4px;display:grid}[data-ref=loot-section]{margin-top:20px}[data-ref=loot]{margin:0;padding:0;list-style:none}.drop-batch{display:block}.drop-batch:before{content:none}.loot-item{align-items:center;gap:8px;margin-top:8px;display:flex}.loot-item button{text-align:left;background:0 0;border:0;padding:0;font-size:12px}.xp-line{color:#9bba78;margin-top:8px}ol{counter-reset:queue;margin:0 0 12px;padding:0;list-style-position:inside}li{border-bottom:1px solid var(--line);counter-increment:queue;align-items:center;gap:10px;padding:14px 0;display:flex}li:before{content:counter(queue);color:var(--gold);font:12px var(--font-display)}li>div{flex:1;min-width:0}li strong,li button{font-size:12px}.add{width:100%;margin-top:16px;padding:12px}@media (prefers-reduced-motion:reduce){.progress-track i{transition:none;animation:none}}}@scope(kf-activity-status){:scope[expanded]{min-height:0;display:flex}:scope[expanded]>.panel{flex-direction:column;width:100%;min-height:0;display:flex}:scope[expanded] .panel-head{flex:none;padding:18px 22px}:scope[expanded] .panel-head h3{font:21px var(--font-display)}:scope[expanded] .panel-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;min-height:0;padding:22px;display:grid}:scope[expanded] [data-ref=loot]{overscroll-behavior:contain;max-height:350px;overflow:auto}:scope[expanded] [data-ref=queue-section]{border-left:1px solid var(--line-strong);margin-top:0;padding-left:24px}:scope[expanded] .activity-heading h4{font-size:17px}:scope[expanded] .activity-heading img{width:48px;height:48px}:scope[expanded] .progress-track{height:10px}:scope[expanded] .queue-heading{margin-bottom:12px}:scope[expanded] [data-ref=queue] li{background:linear-gradient(120deg,#333d292e,#0c181766);border:1px solid #7c805047;border-radius:4px;grid-template-columns:24px minmax(0,1fr);gap:9px;margin:8px 0;padding:14px 12px;display:grid}:scope[expanded] .queue-controls{grid-column:2;gap:5px}:scope[expanded] .queue-controls button{min-height:34px;font-size:12px}:scope[expanded] .queue-controls [data-cancel]{color:#d8a08a;margin-left:auto}.queue-name{font:13px/1.5 var(--font-display);text-align:left;color:#e1d5b5;text-underline-offset:3px;background:0 0;border:0;padding:0;-webkit-text-decoration:underline #bca15c55;text-decoration:underline #bca15c55}.queue-duration{color:#b6c392;margin-top:4px;font-size:12px}.queue-strip{align-items:center;gap:8px;margin-top:8px;display:flex}.queue-summary{color:var(--text-muted);background:0 0;border:0;margin:0;padding:6px 0}.queue-preview{flex-wrap:wrap;flex:1;gap:5px;min-width:0;display:flex}.queue-slot{place-items:center;width:36px;height:36px;padding:4px;display:grid;position:relative}.queue-slot img{object-fit:contain;width:26px;height:26px}.queue-slot span{color:var(--text);text-shadow:0 1px 2px #000;font-size:9px;position:absolute;bottom:0;right:2px}.queue-slot.is-empty{color:var(--text-faint);background:var(--ink-0);border-style:dashed}.queue-slot.is-blocked{border-color:var(--bad)}@media (width<=700px){:scope[expanded] [data-ref=loot]{max-height:190px}:scope[expanded] .panel-body{grid-template-columns:1fr;gap:22px;padding:16px}:scope[expanded] [data-ref=queue-section]{border-left:0;padding-left:0}:scope[expanded] .panel-head{padding:16px}}}@scope(kf-activity-status){.activity-identity{flex:1;min-width:0}.activity-heading .stop{background:0 0;border-color:#0000;flex:none;padding:4px}:scope:not([expanded]) .panel-head{padding:4px 10px}:scope:not([expanded]) .panel-head h3{font-size:13px}:scope:not([expanded]) .open-activity{width:auto;height:22px;font-size:12px}:scope:not([expanded]) .panel-body{padding:6px 10px;overflow:visible}:scope:not([expanded]) .activity-heading{gap:7px;margin-bottom:6px}:scope:not([expanded]) .activity-heading h4{font-size:12px;line-height:1.4}:scope:not([expanded]) .activity-heading img{width:30px;height:30px;padding:3px}:scope:not([expanded]) .activity-heading .note{margin-top:2px}:scope:not([expanded]) .actions{display:none}:scope:not([expanded]) [data-ref=combat]{box-shadow:none;background:0 0;border:0;padding:2px 0 5px;font-size:12px}:scope:not([expanded]) .action-total{margin-top:4px}:scope:not([expanded]) .queue-strip{gap:6px;margin-top:2px}:scope:not([expanded]) .queue-slot{width:30px;height:30px}:scope:not([expanded]) .queue-slot img{width:23px;height:23px}:scope:not([expanded]) .queue-preview{gap:4px}[data-ref=status]:empty,:scope:not([expanded])[data-phase=idle] .progress-label,:scope:not([expanded])[data-phase=idle] [data-ref=cycle-rewards]{display:none}}kf-activity-status .territory-link{color:var(--gold);font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}kf-activity-status .territory-link:hover{color:var(--text)}kf-activity-status [data-ref=percent]{flex-shrink:0}@scope(kf-app){:scope{grid-template-columns:var(--layout-aside-left-w) minmax(0, 1fr) var(--layout-aside-right-w);grid-template-rows:var(--layout-header-h) minmax(0, 1fr) var(--layout-footer-h);column-gap:var(--layout-gap);grid-template-areas:"header header header""left content right""footer footer footer";height:100vh;display:grid;overflow:hidden}[data-region=header]{grid-area:header}[data-region=left]{padding:var(--layout-pad) 0 var(--layout-pad) var(--layout-pad);grid-area:left}[data-region=content]{padding:var(--layout-pad) 0;grid-area:content}[data-region=right]{padding:var(--layout-pad) var(--layout-pad) var(--layout-pad) 0;grid-area:right}[data-region=footer]{grid-area:footer}[data-region=left],[data-region=content],[data-region=right]{min-width:0;min-height:0;position:relative;overflow:hidden}[data-region=header],[data-region=footer]{background-color:#120f0c;background-image:linear-gradient(#231b122e,#040606b8),url(/assets/smoked-oak-NFN7tVYC.webp);background-size:auto,540px;position:relative;box-shadow:inset 0 1px #f8db9714,inset 0 -1px #000c,0 3px 14px #000000b3}[data-region=header]{border-bottom:1px solid #aa8343}[data-region=footer]{border-top:1px solid #aa8343}[data-region=header]:before,[data-region=footer]:after{content:"";pointer-events:none;opacity:.76;background:linear-gradient(90deg,#0000 1%,#604821 12%,#e0b45c 50%,#604821 88%,#0000 99%);height:1px;position:absolute;left:0;right:0}[data-region=header]:before{bottom:2px}[data-region=footer]:after{top:2px}:scope[phase=entering] [data-region=header]{animation:.56s cubic-bezier(.2,.7,.2,1) both app-from-top}:scope[phase=entering] [data-region=footer]{animation:.56s cubic-bezier(.2,.7,.2,1) both app-from-bottom}:scope[phase=entering] [data-region=left]{animation:.52s cubic-bezier(.2,.7,.2,1) .16s both app-from-left}:scope[phase=entering] [data-region=right]{animation:.52s cubic-bezier(.2,.7,.2,1) .16s both app-from-right}:scope[phase=entering] [data-region=content]{animation:.6s ease-out .26s both app-fade-in}@keyframes app-from-top{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:none}}@keyframes app-from-bottom{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:none}}@keyframes app-from-left{0%{opacity:0;transform:translate(-32px)}to{opacity:1;transform:none}}@keyframes app-from-right{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:none}}@keyframes app-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){:scope[phase=entering] [data-region]{animation:none}}:scope[outline] [data-region=left]:after,:scope[outline] [data-region=content]:after,:scope[outline] [data-region=right]:after{content:attr(data-region);inset:var(--layout-pad) 0;border:1px dashed var(--line-strong);border-radius:var(--r-md);font:600 10.5px var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);pointer-events:none;place-items:center;display:grid;position:absolute}:scope[outline] [data-region=left]:after{left:var(--layout-pad)}:scope[outline] [data-region=right]:after{right:var(--layout-pad)}}@scope(kf-enter){:scope{--welcome-duration:2.6s;z-index:10;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow:auto}.backdrop{object-fit:cover;filter:saturate(.7)brightness(.32);width:100%;height:100%;position:absolute;inset:0}.vignette{background:radial-gradient(at 50% 45%,#0000 20%,#050605eb 85%);position:absolute;inset:0}.enter{justify-items:center;gap:14px;width:460px;max-width:100%;display:grid;position:relative}.brand{text-align:center;justify-items:center;gap:6px;margin-bottom:6px;display:grid}.brand b{font:700 40px / 1.05 var(--font-display);color:var(--gold);letter-spacing:.04em;text-shadow:0 1px #3b250d,0 3px #050505,0 8px 20px #000000bd,0 0 34px #dbaf5547}.brand small{font:11px var(--font-display);letter-spacing:.3em;text-transform:uppercase;color:var(--text-muted);text-shadow:0 1px 2px #000}.rule{filter:drop-shadow(0 0 6px #dbaf5559);background:linear-gradient(90deg,#0000,#96743cc7 22% 78%,#0000) 50%/100% 1px no-repeat;width:320px;max-width:80%;height:9px;position:relative}.rule.wide{width:420px}.rule:after{content:"";background:var(--gold);width:9px;height:9px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg);box-shadow:0 0 8px #dbaf558c}.cards{gap:14px;width:100%;display:grid}.status{font:italic 500 15px var(--font-ui);color:var(--text-muted);text-shadow:0 2px 5px #000000b8;margin:4px 0 0;animation:1.8s ease-in-out infinite enter-status-pulse}@keyframes enter-status-pulse{0%,to{opacity:.55}50%{opacity:1}}.welcome{pointer-events:none;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.welcome .plate{width:min(920px,100%);animation:welcome-plate var(--welcome-duration) linear both;justify-items:center;gap:12px;display:grid}.welcome .eyebrow{font:600 12px var(--font-display);letter-spacing:.32em;text-transform:uppercase;color:var(--text-muted);text-shadow:0 2px 5px #000}.welcome .title{font:700 clamp(44px, 7vw, 84px) / 1.04 var(--font-display);letter-spacing:.012em;text-align:center;text-wrap:balance;color:var(--gold);text-shadow:0 1px #3b250d,0 3px #050505,0 8px 20px #000000bd,0 0 44px #dbaf554d}.welcome .note{font:italic 500 17px var(--font-ui);color:var(--text-muted);text-shadow:0 2px 5px #000000b8;margin:0}@keyframes welcome-plate{0%{opacity:0;animation-timing-function:cubic-bezier(.2,.7,.2,1);transform:translateY(10px)scale(.98)}26%,62%{opacity:1;animation-timing-function:cubic-bezier(.6,0,.8,.4);transform:none}to{opacity:0;transform:translateY(-12px)scale(1.02)}}@media (prefers-reduced-motion:reduce){.status,.welcome .plate{animation:none}.welcome .plate{opacity:0}}}@scope(kf-auth){:scope{width:100%;display:block}.card .panel-head{padding:8px 12px}.card .tab{padding:6px 16px;font-size:12px}.realm{margin-left:auto}.form{gap:12px;padding:14px 16px 16px;display:grid}.field{gap:5px;display:grid}.field label{font:600 10.5px var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}.hint{min-height:1em;font-size:var(--fs-xs);color:var(--text-faint)}.hint.bad{color:var(--bad)}.submit{margin-top:4px}.foot{font-size:var(--fs-xs);justify-content:center;gap:14px;display:flex}.foot a{color:var(--mana);text-decoration:none}.foot a:hover{text-underline-offset:2px;text-decoration:underline}}@scope(kf-modal-frame){:scope{display:contents}dialog{width:min(var(--modal-width,960px), calc(100vw - 32px));max-height:calc(100dvh - 40px);color:var(--text);border:1px solid var(--brass);background:var(--ink-1);border-radius:5px;margin:auto;padding:0;overflow:hidden;box-shadow:0 25px 100px #000d,0 0 0 4px #0c100dda,0 0 0 5px #78603555}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050908b8}[data-ref=body]{flex-direction:column;max-height:calc(100dvh - 44px);display:flex}[data-ref=body]>*{min-height:0}@media (width<=600px){dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 20px)}[data-ref=body]{max-height:calc(100dvh - 24px)}}@media (prefers-reduced-motion:no-preference){dialog[open]{animation:.22s ease-out both modal-arrive}}@keyframes modal-arrive{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:none}}}@scope(kf-roster){:scope{width:100%;animation:.36s cubic-bezier(.2,.7,.2,1) both roster-card-in;display:block}.seats-note{margin-left:auto}.seat{border-radius:var(--r-md);background:var(--ink-1);border:1px solid #51422f;grid-template-columns:56px 1fr auto;align-items:center;gap:12px;padding:10px;display:grid;box-shadow:inset 0 1px #efd59d0a}.seat+.seat{margin-top:8px}.seat{animation:.42s cubic-bezier(.2,.7,.2,1) both roster-seat-in;animation-delay:calc(90ms + var(--seat-index,0) * 70ms)}:scope.is-leaving{pointer-events:none;animation:.3s cubic-bezier(.6,0,.8,.4) .16s both roster-card-out}:scope.is-leaving .seat{animation:.22s cubic-bezier(.6,0,.8,.4) both roster-seat-out;animation-delay:calc(var(--seat-reverse,0) * 50ms)}.seat.is-empty{background-color:#07080873;background-image:none;border-style:dashed}.portrait{border-radius:var(--r-sm);width:56px;height:56px;font:700 22px var(--font-display);color:var(--gold);text-shadow:0 1px 1px #000;background-color:#0d1010;background-image:radial-gradient(circle at 50% 35%,#4a52532e,#030405b8 72%),url(/assets/blackened-iron-BE0HTh-E.webp);background-size:auto,260px;border:1px solid #745a32;place-items:center;display:grid;box-shadow:inset 0 0 0 1px #000000bf,inset 0 1px #f6dea20d,0 2px 6px #00000085}.portrait.empty{border-style:dashed;border-color:var(--line-strong);box-shadow:none;color:var(--text-faint);background:0 0;font-size:18px}.who{gap:2px;min-width:0;display:grid}.who strong{font-size:var(--fs-md)}.name-field{gap:6px;margin-top:4px;display:flex}.name-field .input{height:34px;font-size:var(--fs-sm)}.hint{font-size:var(--fs-xs);color:var(--text-faint)}.hint.bad{color:var(--bad)}.foot{font-size:var(--fs-xs);justify-content:space-between;align-items:center;margin-top:12px;display:flex}@keyframes roster-card-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes roster-seat-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes roster-card-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(10px)}}@keyframes roster-seat-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){:scope,:scope.is-leaving,.seat,:scope.is-leaving .seat{animation:none}}}.roster-delete{gap:16px;padding:24px;display:grid}.roster-delete h2,.roster-delete p{margin:0}.roster-delete label{gap:10px;display:grid}.roster-delete .danger{color:var(--bad);border-color:var(--bad-deep)}.roster-remove{color:var(--text-faint);padding:3px 8px;font-size:17px}kf-roster .seat:not(.is-empty){grid-template-columns:48px minmax(0,1fr) auto 24px;gap:8px}kf-roster .seat:not(.is-empty) .portrait{width:48px;height:48px}kf-roster .roster-remove{width:24px;min-width:0;padding:3px 0}kf-roster .name-field .input{width:100%;min-width:0}kf-guild-panel,kf-guild-details{min-width:0;height:100%;display:block}kf-guild-panel[hidden],kf-guild-details[hidden]{display:none}.guild-panel,.guild-details{flex-direction:column;height:100%;display:flex;overflow:hidden}.guild-body,.guild-detail-body{scrollbar-gutter:stable;min-height:0;padding:20px;overflow:auto}.guild-panel .panel-head h2{margin:4px 0}.guild-panel .eyebrow{color:var(--gold);letter-spacing:.16em;text-transform:uppercase;font-size:11px}.guild-crest{color:var(--gold);text-align:center;text-shadow:0 2px 16px #c99c3840;font-size:54px;line-height:1.4}.guild-welcome{text-align:center;padding:24px 0}.guild-welcome h3{font-size:24px}.guild-welcome .note{max-width:420px;margin:12px auto}.guild-create{max-width:480px;margin:0 auto 28px}.guild-create label,.guild-invite label,.guild-description-form label{color:var(--text-muted);gap:8px;margin-bottom:16px;display:grid}.guild-panel input,.guild-panel textarea,.guild-details textarea{box-sizing:border-box;width:100%;color:var(--text);border:1px solid var(--brass);font:inherit;background:#0d100dcc;border-radius:4px;min-width:0;padding:12px 14px}.guild-panel textarea,.guild-details textarea{resize:vertical;min-height:90px}.guild-panel input:focus-visible,.guild-panel textarea:focus-visible,.guild-details textarea:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.guild-banner{border-bottom:1px solid var(--brass);grid-template-columns:72px 1fr auto;align-items:center;gap:20px;padding:4px 4px 24px;display:grid}.guild-description{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text-muted)}.guild-count{font-variant-numeric:tabular-nums;color:var(--gold);white-space:nowrap}.guild-toolbar{gap:12px;margin:24px 0 14px;display:flex}.guild-toolbar .tab{white-space:nowrap}.guild-roster{gap:6px;display:grid}.guild-member{color:var(--text);text-align:left;font:inherit;cursor:pointer;background:#11150fd9;border:1px solid #b7995c33;border-radius:4px;grid-template-columns:32px minmax(0,1fr) auto 12px;align-items:center;gap:12px;padding:14px 16px;display:grid}.guild-member:hover,.guild-member[aria-pressed=true]{border-color:var(--gold);background:#b58c2d16}.guild-member:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.guild-member strong{overflow-wrap:anywhere}.guild-rank{color:var(--gold);font-size:24px}.guild-role,.guild-count{font-size:13px}.guild-role{color:var(--gold)}.guild-invite{border-top:1px solid var(--brass);align-items:end;gap:12px;margin:28px 0;padding-top:22px;display:flex}.guild-invite label{flex:1;margin:0}.guild-invite .tab{white-space:nowrap}.guild-invitation{border-bottom:1px solid #b7995c33;align-items:center;gap:12px;padding:16px 0;display:flex}.guild-invitation>div,.guild-invitation>span{flex:1}.guild-invitation .note{margin-bottom:0}.guild-detail-body>.tab{width:100%;margin:12px 0;display:block}.guild-detail-body h3{margin:20px 0 12px}.guild-detail-body h3:first-child{margin-top:0}.guild-description-form{margin-top:26px}.guild-bonus{border-bottom:1px solid #b7995c33;justify-content:space-between;gap:12px;padding:12px 0;display:flex}.guild-bonus strong{color:var(--gold)}.guild-error{color:#efaf9b;padding:0 20px}.guild-error+.tab{margin:0 20px 10px}.guild-panel .note,.guild-details .note{color:var(--text-muted);line-height:1.55}.guild-confirm{max-width:440px;color:var(--text);border:1px solid var(--gold);font:inherit;background:#191b14;border-radius:5px;padding:24px;box-shadow:0 20px 80px #000b}.guild-confirm::backdrop{background:#000a}.guild-confirm p{line-height:1.6}.guild-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.guild-panel .danger,.guild-details .danger{color:#efa693}@media (width<=650px){.guild-body,.guild-detail-body{padding:14px}.guild-banner{grid-template-columns:50px 1fr;gap:12px}.guild-count{grid-column:2}.guild-invitation{flex-wrap:wrap}.guild-invitation>div{flex-basis:100%}.guild-member{grid-template-columns:24px minmax(0,1fr) auto;gap:8px;padding:12px 8px}.guild-member>span:last-child{display:none}.guild-invite{flex-wrap:wrap}.guild-invite label{flex-basis:100%}.guild-crest{font-size:42px}}.guild-panel .panel-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.guild-panel .panel-head h2{font:600 23px var(--font-display);color:var(--gold-bright)}.guild-panel .panel-head>.tab{margin-left:auto}.guild-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.guild-invitations{margin-bottom:24px}.guild-tabs{border-bottom:1px solid var(--brass);flex:none;gap:6px;padding:12px 20px;display:flex}.guild-tabs[hidden]{display:none}.guild-tabs button{border:1px solid var(--brass);color:var(--text-muted);font:inherit;cursor:pointer;background:#151813;flex:1;padding:12px 18px}.guild-tabs button[aria-selected=true]{border-color:var(--gold);color:var(--gold);background:#b58c2d16}.guild-tabs button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.guild-profile-banner{text-align:center;padding:12px 0 22px}.guild-profile-banner h3{color:var(--gold);overflow-wrap:anywhere;margin:8px 0;font-size:26px}.guild-overview-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 24px;display:grid}.guild-overview-facts>div{text-align:center;background:#11150fd9;border:1px solid #b7995c55;padding:18px 12px}.guild-overview-facts dt{color:var(--text-muted);margin-bottom:8px;font-size:13px}.guild-overview-facts dd{color:var(--gold);overflow-wrap:anywhere;margin:0}.guild-overview-message{border-bottom:1px solid var(--brass);margin-bottom:22px;padding:4px 0 18px}@media (width<=640px){.guild-overview-facts{grid-template-columns:1fr}.guild-tabs{padding:10px}.guild-profile-banner h3{font-size:22px}}.guild-profile-link{color:var(--gold);font:600 18px var(--font-display);text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.guild-profile-link:hover{text-decoration:underline}.guild-profile-link:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.guild-invitation>div{min-width:0}.guild-invite-settings{border:1px solid var(--brass);margin:24px 0;padding:16px}.guild-invite-settings legend{color:var(--gold);padding:0 6px}.guild-invite-settings label{cursor:pointer;align-items:center;gap:10px;margin:12px 0;display:flex}.guild-invite-settings input{accent-color:var(--gold);flex-shrink:0}@scope(kf-enhancing-outcome){:scope{--outcome-color:#e5b45d;width:100%;max-width:420px;display:block}:scope[hidden]{display:none}:scope[data-rarity=uncommon]{--outcome-color:#8abb91}:scope[data-rarity=rare]{--outcome-color:#88b7e4}:scope[data-rarity=epic]{--outcome-color:#c19cde}:scope[data-outcome=failure]{--outcome-color:#aaa89b}.outcome-card{isolation:isolate;text-align:center;border:1px solid color-mix(in srgb, var(--outcome-color) 55%, #24251f);background:radial-gradient(ellipse at 50% 18%, color-mix(in srgb, var(--outcome-color) 9%, transparent), transparent 52%), #131713;border-radius:6px;padding:26px 30px 20px;position:relative;overflow:hidden;box-shadow:0 18px 70px #0006,inset 0 0 0 4px #0b0e0b,inset 0 0 0 5px #ffffff09}.outcome-rule{color:var(--outcome-color);opacity:.7;justify-content:center;align-items:center;gap:12px;font-size:10px;display:flex}.outcome-rule:before,.outcome-rule:after{content:"";background:linear-gradient(90deg, transparent, var(--outcome-color));width:72px;height:1px}.outcome-rule:after{transform:rotate(180deg)}.eyebrow{font:10px var(--font-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--outcome-color);margin:17px 0 8px}h2{font:27px/1.25 var(--font-display);color:#f3e8cf;margin:0}.reveal-stage{isolation:isolate;place-items:center;height:207px;margin:4px 0 8px;display:grid;position:relative}.hero-item{z-index:1;transform-origin:50% 65%}.hero-item kf-item{--item-size:128px;width:128px;height:128px}.aura{background:radial-gradient(ellipse, var(--outcome-color), transparent 68%);opacity:.4;pointer-events:none;width:230px;height:200px;position:absolute}.orbit{border:1px solid var(--outcome-color);outline:1px solid color-mix(in srgb, var(--outcome-color) 45%, transparent);outline-offset:7px;opacity:.24;pointer-events:none;border-radius:50%;width:170px;height:170px;position:absolute}.orbit:before,.orbit:after{content:"";background:var(--outcome-color);width:7px;height:7px;position:absolute;top:-4px;left:calc(50% - 3px);transform:rotate(45deg)}.orbit:after{top:auto;bottom:-4px}.rarity-seal{z-index:2;border:1px solid color-mix(in srgb, var(--outcome-color) 55%, #191d18);font:10px var(--font-ui);color:var(--outcome-color);text-transform:uppercase;letter-spacing:.13em;background:#151910;border-radius:3px;padding:5px 16px;position:absolute;bottom:18px}.sparks{pointer-events:none;position:absolute;inset:0}.sparks i{opacity:0;width:3px;height:3px;box-shadow:0 0 8px var(--outcome-color);background:#ffe4a2;border-radius:50%;position:absolute}.sparks i:first-child{top:55%;left:24%}.sparks i:nth-child(2){top:65%;left:69%}.sparks i:nth-child(3){top:30%;left:34%}.sparks i:nth-child(4){top:40%;left:78%}.sparks i:nth-child(5){top:35%;left:19%}.sparks i:nth-child(6){top:24%;left:61%}h3{font:21px/1.25 var(--font-display);color:#ece7dc;text-wrap:balance;margin:0}.rarity-change{color:var(--outcome-color);text-transform:capitalize;margin:8px 0 0;font-size:12px}.message{max-width:310px;min-height:40px;font:13px/1.6 var(--font-ui);color:#bcbcab;text-wrap:pretty;margin:14px auto 18px}.result-details{border-top:1px solid #c2ab7030;padding-top:14px}.stat-gains{text-align:left;font:12px/1.4 var(--font-ui);grid-template-columns:1fr auto;gap:8px 14px;margin:0 0 16px;display:grid}.stat-gains[hidden],.returned-items[hidden]{display:none}dt{color:#b8bcaf}dd{color:#aecd9d;font-variant-numeric:tabular-nums;margin:0}.returned-items{text-align:left;color:#b8bcaf;align-items:center;gap:10px;padding-bottom:12px;font-size:12px;display:flex}.ledger{color:#a8ad9e;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.ledger strong{font:500 12px var(--font-ui);color:#b7cd94}.continue{border:1px solid color-mix(in srgb, var(--outcome-color) 65%, #191d18);color:#f3e7c9;width:100%;min-height:43px;font:14px var(--font-display);cursor:pointer;background:linear-gradient(#4b442e,#292b1e);border-radius:3px;margin-top:21px;box-shadow:inset 0 0 0 2px #0d130950}.continue:hover{filter:brightness(1.15)}.continue:focus-visible{outline-offset:4px;outline:2px solid #f2d590}.inventory-note{color:#969e8e;margin:11px 0 0;font-size:10px}:scope[data-outcome=failure] .aura,:scope[data-outcome=failure] .orbit,:scope[data-outcome=failure] .sparks{display:none}:scope[data-outcome=failure] .outcome-card{background:radial-gradient(at 50% 20%,#a5b3c309,#0000 60%),#121614}:scope[data-outcome=failure] h2{color:#ced0c6}:scope[data-outcome=failure] .continue{color:#cdd1c6;background:linear-gradient(#2a3029,#1c211c);border-color:#626b5666}@media (width<=440px){.outcome-card{padding:22px 22px 18px}h2{font-size:24px}}}@scope(kf-enhancing){:scope{display:block}.close{color:var(--text-muted);cursor:pointer;background:0 0;border:0;font-size:24px;position:absolute;top:8px;right:8px}.enhancing-ritual{text-align:center;max-width:600px;color:var(--text);margin:auto;padding:24px;position:relative}h2,h3{font-family:var(--font-display);color:var(--gold)}.note{color:var(--text-muted);font-size:13px;line-height:1.6}.sacrifice-grid{grid-template-columns:repeat(3,76px);justify-content:center;gap:12px;margin:24px auto;display:grid}.offering{border:1px solid var(--brass);background:#b78c3410;border-radius:4px;padding:5px}.offering.missing{opacity:.3;border-style:dashed}.start,.secondary{border:1px solid var(--brass);color:var(--gold);font:15px var(--font-display);cursor:pointer;background:#29291e;border-radius:3px;margin:8px;padding:12px 20px}.start{background:linear-gradient(#625433,#30281a);min-width:220px}button:disabled{opacity:.45;cursor:default}button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}[data-ref=confirmation]{border:1px solid var(--brass);padding:12px;line-height:1.6}[data-ref=error]{color:#edae9b}.ritual-pending{background:radial-gradient(#d5b35319,#0000 65%);padding:45px 0;position:relative}.sigil{color:var(--gold);text-shadow:0 0 36px #d5b35366;font-size:150px;animation:2.5s ease-in-out infinite forge-breathe}.ritual-offerings{height:260px;position:relative}.ritual-offerings kf-item{animation:10s cubic-bezier(.3,0,.3,1) both gather-offering;position:absolute;top:100px;left:calc(50% - 28px)}@keyframes gather-offering{0%,20%{transform:translate(var(--offering-x), var(--offering-y));opacity:.9}85%,to{opacity:0;transform:translate(0)scale(.4)}}.sigil{place-items:center;height:260px;margin-top:-260px;display:grid}@keyframes forge-breathe{50%{text-shadow:0 0 65px #d5b353aa;transform:scale(1.08)rotate(15deg)}}@media (prefers-reduced-motion:reduce){.sigil,.ritual-offerings kf-item{animation:none}.ritual-offerings kf-item{transform:translate(var(--offering-x), var(--offering-y));opacity:.25}}}.tutorial-target-ring{z-index:1200;pointer-events:none;border:2px solid #edc56e;border-radius:7px;position:fixed;box-shadow:0 0 0 3px #edc56e26,0 0 18px #e7b94b50}.tutorial-coach{z-index:1201;color:#f3ebd8;font:14px/1.5 var(--font-body,sans-serif);background:#1b1c16;border:1px solid #b79a59;border-radius:8px;max-height:calc(100dvh - 24px);padding:14px 16px;position:fixed;overflow:auto;box-shadow:0 8px 30px #0009}.tutorial-coach small{color:#d7b96f;letter-spacing:.12em;font-size:10px}.tutorial-coach strong{margin-top:4px;font-size:16px;display:block}.tutorial-coach p{margin:7px 0 12px}.tutorial-coach-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.tutorial-coach-actions button{font:inherit;cursor:pointer;color:#edd390;background:#29291d;border:1px solid #897341;border-radius:4px;padding:5px 8px}.tutorial-coach-actions button:last-child{color:#c9c2af;background:0 0;border-color:#0000;font-size:12px}.tutorial-coach.is-inline{max-height:min(220px,32dvh);box-shadow:none;flex-shrink:0;margin:8px 12px;width:auto!important;position:static!important}.tutorial-coach[hidden],.tutorial-target-ring[hidden]{display:none}@scope(kf-ability-inspection){:scope{display:block}.sheet-heading{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding-bottom:14px;display:flex}.sheet-heading img{object-fit:contain;flex-shrink:0}h3{font:20px var(--font-display);margin:0}.note{color:var(--text-muted);font-size:12px;line-height:1.5}.ability-facts dl{grid-template-columns:auto minmax(0,1fr);gap:8px 12px;font-size:12px;line-height:1.5;display:grid}dt{color:var(--text-muted)}dd{overflow-wrap:anywhere;margin:0}.ability-requirement-warning{color:var(--gold);font-size:12px;line-height:1.5}progress{width:100%;height:6px;accent-color:var(--gold)}}@scope(kf-consumable-loadout){:scope{display:block}.supply-slots{grid-template-columns:repeat(4,minmax(0,1fr));justify-items:center;gap:6px;display:grid}.supply-slot kf-item{--item-size:54px}.supply-slot .empty-slot{border:1px dashed var(--line);background:var(--ink-1);width:54px;height:54px;color:var(--text-muted);font-size:24px}.supply-editor{background:var(--ink-1);border:1px solid var(--line);gap:10px;margin-top:12px;padding:12px;display:grid}.supply-editor h4{font:14px var(--font-display);margin:0}.supply-editor button{min-height:44px}.supply-editor label{gap:5px;display:grid}.supply-editor .input{width:100%;min-width:0}.supply-editor p{margin:0;line-height:1.5}}@scope(kf-item-details kf-consumable-loadout){.supply-editor{background:0 0;border:0;margin:0;padding:0;font-size:12px}}kf-level-up-notice{z-index:80;pointer-events:none;justify-content:center;display:flex;position:fixed;inset:50% 0 auto;transform:translateY(-50%)}kf-level-up-notice[hidden]{display:none}@scope(kf-level-up-notice){.level-up-card{text-align:center;color:#f4e8cb;background:linear-gradient(160deg,#24221eee,#121416f5);border:1px solid #a68a4e;border-radius:8px;min-width:240px;max-width:min(360px,100vw - 32px);padding:16px 26px 20px;animation:.26s ease-out level-up-arrive,.3s ease-in 3.5s forwards level-up-depart;box-shadow:0 10px 36px #0008,inset 0 0 20px #bb95450d}strong{color:var(--gold-bright);font-family:var(--font-display);font-size:23px;display:block}.level-up-sigil{color:var(--gold-bright);margin-bottom:6px;font-size:24px;line-height:1;display:block}p{margin:6px 0 0;font-size:15px}@keyframes level-up-arrive{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes level-up-depart{to{opacity:0}}@media (prefers-reduced-motion:reduce){.level-up-card{animation:none}}}@scope(kf-hero-summary){:scope{display:block}.hero-card{width:100%;color:var(--text);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:14px 12px 10px;display:flex}.hero-card:hover .hero-name{color:var(--gold-bright)}.identity:focus-visible{outline:2px solid var(--gold);outline-offset:-5px}.portrait{pointer-events:none;flex:none;place-items:center;width:60px;height:64px;display:grid}.portrait kf-item{--item-size:60px}.initial{border:1px solid var(--brass);background:var(--ink-0);width:60px;height:64px;color:var(--gold);font:26px var(--font-display);border-radius:3px;place-items:center;display:grid}.identity{color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;flex:1;gap:5px;min-width:0;min-height:64px;padding:0;display:grid}.hero-name{font:600 17px var(--font-display);align-items:center;gap:6px;display:flex}.hero-name strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.crown{color:var(--gold);font-size:15px}.chevron{color:var(--text-faint);margin-left:auto}.level,.power{color:var(--text-muted);font-size:13px}.power b{color:var(--gold);margin-left:4px;font-size:14px}.hero-progress{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0 12px 14px;display:block}.hero-progress:hover .progress-label{color:var(--gold-bright)}.hero-progress:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.progress-label{color:var(--text-muted);justify-content:space-between;gap:8px;margin-bottom:5px;font-size:12px;display:flex}.xp-track{border:1px solid var(--line-strong);background:var(--ink-0);height:6px;overflow:hidden}.xp-track i{transform-origin:0;background:linear-gradient(var(--arcane), var(--arcane-deep));width:100%;height:100%;transition:transform .22s ease-out;display:block}@media (prefers-reduced-motion:reduce){.xp-track i{transition:none}}}@scope(kf-hero-summary){.hero-card{gap:9px;padding:6px 10px 4px}.portrait,.initial{width:50px;height:48px}.portrait kf-item{--item-size:50px}.identity{gap:3px;min-height:48px}.hero-name{font-size:15px}.hero-progress{padding:0 10px 6px}}@scope(kf-equipped-figure){:scope{aspect-ratio:450/530;pointer-events:none;justify-content:center;width:100%;display:flex}.figure{aspect-ratio:450/530;isolation:isolate;flex:none;width:auto;height:100%;position:relative}.layers{z-index:2;position:absolute;inset:0}.piece{background:var(--figure-src) center/contain no-repeat;filter:drop-shadow(0 1px 1px #000b);display:block;position:absolute}.piece[data-tiered=true]{background-image:linear-gradient(var(--figure-tint), var(--figure-tint)), var(--figure-src), linear-gradient(#000, #000);background-blend-mode:color, luminosity;-webkit-mask:var(--figure-src) center/contain no-repeat;mask:var(--figure-src) center/contain no-repeat}.piece img{opacity:0;width:100%;height:100%}.bow-arm,:scope[data-bow] .resting-arm{display:none}:scope[data-bow] .bow-arm{display:block}.grip{z-index:65;background:linear-gradient(135deg,#77654b,#4d4435);border:1px solid #29291f;border-radius:35%;width:5%;height:4%;position:absolute;transform:translate(-50%,-50%);box-shadow:inset 0 -2px #342f26}.grip:after{content:"";border-top:1px solid #352e2399;border-bottom:1px solid #352e2399;position:absolute;inset:30% 15%;transform:rotate(-12deg)}.underlayer{z-index:1;width:100%;height:100%;position:absolute;inset:0}.ground-shadow{z-index:0;background:radial-gradient(#0009,#0000 72%);border-radius:50%;width:60%;height:5%;position:absolute;bottom:8%;left:20%}}@scope(kf-combat-arena){:scope{height:100%;min-height:0;display:block;container-type:inline-size}.combat-arena{flex-direction:column;gap:8px;height:100%;min-height:0;padding:12px;display:flex}.combat-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.combat-heading h2{font:22px var(--font-display);color:var(--gold);margin:0}.eyebrow{letter-spacing:.14em;color:var(--text-muted);margin:0 0 5px;font-size:9px}.entry-progress{background:#17170f;flex-shrink:0;height:4px}.entry-progress i{background:var(--gold);transform-origin:0;height:100%;display:block}.combat-ability img{object-fit:contain;border-radius:3px;width:28px;height:28px;margin-bottom:4px}.combat-state{min-height:17px;color:var(--text-muted);margin:0;font-size:12px}.field{border:1px solid var(--line-strong);background:radial-gradient(#34413255,#101b1488 75%),linear-gradient(#0b120ddd,#131610ee),url(/content-assets/maps/gen/map-art-ab369cd6.jpg) 50%/cover;border-radius:4px;flex:1;grid-template-columns:1fr 1fr;gap:16px;min-height:280px;padding:12px 6px;display:grid;position:relative;box-shadow:inset 0 0 40px #0007}.wave-announcement{z-index:90;pointer-events:none;text-align:center;position:absolute;inset:8px 0 auto}.wave-announcement span{color:var(--gold);font:16px var(--font-display);background:linear-gradient(90deg,#141b15dd,#323023ee,#141b15dd);border:1px solid #b19a5a88;border-radius:3px;padding:7px 24px;animation:1.6s both combat-wave;display:inline-block}.arriving .visual{animation:.48s both combat-arrive;animation-delay:calc(var(--position) * 65ms);--enter-x:-12px}.enemies .arriving .visual{--enter-x:12px}.team{flex-direction:column;min-width:0;min-height:0;display:flex}.team h3{text-align:center;color:#b8bc9a;letter-spacing:.08em;margin:0 0 8px;font-size:12px}.enemies h3{color:#c8937f}.formation{flex:1;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 2px;min-height:0;display:grid}.combatant{appearance:none;color:var(--text);cursor:pointer;background:0 0;border:0;flex-direction:column;grid-column:span 2;align-items:center;min-width:0;min-height:0;padding:0;display:flex;position:relative}.combatant:nth-child(4){grid-column:2/span 2}.combatant:nth-child(5){grid-column:4/span 2}.formation[data-count="1"] .combatant{grid-area:1/2/span 2/span 4;justify-content:center}.formation[data-count="2"] .combatant:first-child{grid-area:1/1/span 2/span 3;justify-content:center}.formation[data-count="2"] .combatant:nth-child(2){grid-area:1/4/span 2/span 3;justify-content:center}.combatant:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}.name{white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px 3px #000;width:100%;font-size:12px;line-height:16px;overflow:hidden}.mine .name{color:var(--gold)}.vitals{gap:3px;width:90%;max-width:125px;margin:3px 0 5px;display:grid}.vitals>span{background:#050805;border:1px solid #050705;border-radius:2px;height:6px;overflow:hidden;box-shadow:0 0 0 1px #88764b55}.vitals .mana{height:4px}.vitals i{transform-origin:0;background:linear-gradient(#9cbd64,#527d3d);width:100%;height:100%;transition:transform .2s linear;display:block}.enemies .health i{background:linear-gradient(#c6765d,#8b3c31)}.mana i{background:linear-gradient(#8bafcb,#416887)}.visual{justify-content:center;align-items:flex-end;width:100%;height:calc(100% - 40px);min-height:0;max-height:260px;display:flex;position:relative}.visual:after{content:"";pointer-events:none;border:1px solid #0000;border-radius:50%;width:82%;height:10%;position:absolute;bottom:2%;left:9%}.selected .visual:after{border-color:var(--gold);box-shadow:0 0 6px #d1b66b55}.targeted .visual:after{border-color:#cf7358}kf-equipped-figure{width:auto;max-width:125%;height:100%}.creature{object-fit:contain;filter:drop-shadow(0 4px 3px #0009);max-width:100%;max-height:100%}.dead .visual{opacity:.4;filter:grayscale()}.cast-progress{background:#141310;flex-shrink:0;width:80%;max-width:110px;height:3px}.cast-progress i{transform-origin:0;background:#d6b46a;height:100%;display:block}.feedback{pointer-events:none;z-index:80;flex-direction:column;align-items:center;width:124%;display:flex;position:absolute;top:30%;left:-12%}.feedback span{font:700 13px var(--font-ui);text-shadow:0 1px 2px #000,1px 0 2px #000,-1px 0 2px #000;color:#f0dfd2;animation:1.3s both combat-number}.feedback .heal{color:#bddc8c}.feedback .crit{color:#f0c66b}.combat-rail{border-top:1px solid var(--line-strong);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding-top:8px;display:flex}.combat-rail>.tab{padding:7px;font-size:12px}.ability-auto[aria-pressed=true]{color:var(--gold);border-color:var(--gold)}.abilities{flex-wrap:wrap;flex:1;gap:6px;min-width:0;display:flex}.ability-slot{flex-direction:column;flex:0 104px;width:104px;min-width:0;display:flex}.ability-auto{border:1px solid var(--line-strong);color:var(--text-muted);cursor:pointer;background:#141712;border-top:0;border-radius:0 0 3px 3px;min-height:24px;font-size:12px}.ability-auto:before{content:"○ "}.ability-auto[aria-pressed=true]:before{content:"✓ "}.ability-auto:disabled{opacity:.55;cursor:default}.ability-auto.is-locked{opacity:.8;color:var(--text-faint);font-size:11px}.ability-auto.is-locked:before{content:"🔒 "}.combat-ability{width:100%;min-width:0;min-height:48px;color:var(--text);border:1px solid var(--line-strong);cursor:pointer;background:linear-gradient(#292821,#151713);border-radius:3px;flex:1;padding:6px}.combat-ability b{font:600 12px/1.4 var(--font-ui);display:block}.combat-ability small{color:var(--text-muted);margin-top:4px;font-size:12px;display:block}.combat-ability:disabled{opacity:.55;cursor:default}@media (prefers-reduced-motion:reduce){.arriving .visual,.wave-announcement span,.feedback span{animation:none}.vitals i{transition:none}}@media (width<=900px){.combat-arena{padding:8px}.field{grid-template-rows:1fr 1fr;grid-template-columns:1fr;gap:8px;min-height:clamp(280px,100dvh - 424px,448px);padding:8px}.team{min-height:0}.enemies{border-bottom:1px solid #ae967222;order:-1;padding-bottom:8px}.formation{gap:4px}.team h3{margin-bottom:2px}.visual{height:calc(100% - 40px)}.name{font-size:12px;line-height:16px}.vitals{margin:2px 0 4px}.ability-auto{min-height:44px}.ability-slot{flex-basis:min(104px,33.3333% - 4px)}}}@keyframes combat-number{0%{opacity:0}12%,78%{opacity:1}to{opacity:0}}@keyframes combat-arrive{0%{opacity:0;transform:translate(var(--enter-x), 6px)}to{opacity:1;transform:translate(0)}}@keyframes combat-wave{0%{opacity:0;transform:translateY(4px)}18%,75%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-3px)}}html[data-reduce-effects] kf-combat-arena .arriving .visual,html[data-reduce-effects] kf-combat-arena .wave-announcement span,html[data-reduce-effects] kf-combat-arena .feedback span{animation:none!important}@scope(kf-combat-arena){.combat-heading h2{font-size:clamp(16px,2.8cqw,22px)}.combat-rail{border:1px solid var(--brass-dim);background:linear-gradient(#090d0db8,#090b0ddd),url(/assets/blackened-iron-BE0HTh-E.webp) 50%/310px;border-radius:3px;flex:none;padding:9px;box-shadow:inset 0 1px #dcc58c14}.abilities{gap:8px}.ability-auto[aria-pressed=true]{border-color:var(--line-strong);color:#b8d19b}.combat-ability:focus-visible,.ability-auto:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.combat-ability:hover:not(:disabled){border-color:var(--gold)}}@scope(kf-combat-arena){.combat-heading>div{flex:1;min-width:0}.combat-help{flex:none;position:relative}.combat-help summary{cursor:pointer;border:1px solid var(--line);width:26px;height:26px;color:var(--text-muted);border-radius:50%;place-items:center;list-style:none;display:grid}.combat-help summary::-webkit-details-marker{display:none}.combat-help summary:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.combat-help p{z-index:100;border:1px solid var(--brass-dim);background:var(--ink-1);width:min(260px,65cqw);box-shadow:var(--shadow);border-radius:3px;padding:12px;font-size:12px;line-height:1.6;position:absolute;top:28px;right:0}}@scope(kf-combat-arena){.field[data-idle]{grid-template-rows:1fr;grid-template-columns:1fr;place-items:center;display:grid}.field[data-idle] .team{display:none}.combat-idle{text-align:center;max-width:340px;padding:24px}.combat-idle h3{font:20px var(--font-display);color:var(--gold)}.combat-idle p{color:var(--text-muted);font-size:13px;line-height:1.7}.combat-idle button{border-color:var(--brass);min-height:40px;color:var(--text);cursor:pointer;margin-top:8px}}@scope(kf-combat-arena){.combat-supplies{align-items:center;gap:.5rem;display:flex}.combat-supply{appearance:none;border:1px solid var(--brass-dim);background:var(--ink-1);min-width:62px;min-height:68px;font:inherit;color:var(--text-muted);cursor:pointer;border-radius:3px;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;padding:8px;font-size:.75rem;display:flex}.combat-supply:not([data-item-id]){border-style:dashed}.combat-supply:hover{border-color:var(--gold);color:var(--text)}.combat-supply:focus-visible{outline:2px solid var(--gold);outline-offset:3px}}@scope(kf-combat-details){.log-title{font:14px var(--font-display);color:var(--gold);margin:20px 0 8px}.combat-log{max-height:220px;color:var(--text-muted);margin:0;padding:0;font-size:11px;list-style:none;overflow:auto}.combat-log li{border-bottom:1px solid var(--line-strong);padding:6px 0}}@scope(kf-combat-details){:scope{height:100%;min-height:0;display:block}.panel{height:100%}.panel-body{flex:1;min-height:0;padding:14px;overflow:auto}.panel-head h3{margin:0}h2{font:600 18px var(--font-display);margin:4px 0 16px}p{font-size:13px;line-height:1.6}.combat-log{max-height:none;font-size:12px;overflow:visible}.combat-log li{border-color:var(--line)}.panel-foot{flex:none;padding:12px 14px}.primary-action{width:100%;min-height:40px;color:var(--text);border-color:var(--brass)}.battle-loot{border-bottom:1px solid var(--line-strong);background:color-mix(in srgb, var(--gold) 4%, transparent);flex:none;padding:14px}.loot-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;margin-bottom:12px;display:flex}.loot-heading h3{color:var(--gold);font:600 16px var(--font-display);margin:0}.loot-heading span{color:var(--text-muted);font-size:12px}.loot-items{overscroll-behavior:contain;grid-template-columns:repeat(auto-fill,60px);gap:8px;max-height:196px;padding:3px;display:grid;overflow:auto}.loot-items kf-item{--item-size:60px}.loot-fallback{grid-column:1/-1;font-size:12px}.battle-loot .note{margin:0}}.account-page>.panel-head{justify-content:space-between;align-items:center;display:flex}.account-page h2{margin:0;font-size:20px}.account-body{gap:25px;padding:20px;display:grid}.account-body kf-roster>.card{width:100%;max-width:none;animation:none}.account-preferences{border-top:1px solid var(--line);padding-top:18px}.account-preferences h3{color:var(--gold);margin:0 0 16px;font-size:16px}.account-preferences label{align-items:center;gap:12px;font-size:14px;display:flex}.account-preferences input{accent-color:var(--gold);width:17px;height:17px}.account-preferences p{margin:8px 0 20px;line-height:1.6}@media (width<=550px){.account-body{padding:12px}.account-body .seat{flex-wrap:wrap}}html[data-reduce-effects] *,html[data-reduce-effects] :before,html[data-reduce-effects] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.public-profile>.panel-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.public-profile h2{margin:0;font-size:21px}.profile-body{padding:22px}.profile-power{color:var(--gold);align-items:baseline;gap:12px;margin:18px 0 8px;display:flex}.profile-power strong{font-size:32px}.profile-actions{gap:12px;margin:20px 0;display:flex}.profile-columns{grid-template-columns:1fr 1fr;gap:24px;display:grid}.profile-columns h3{border-bottom:1px solid var(--line);padding-bottom:12px;font-size:14px}.profile-gear{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:16px;display:grid}.profile-gear-row{text-align:center;color:var(--text-muted);justify-items:center;gap:7px;font-size:10px;display:grid}.profile-gear kf-item{--item-size:58px}.profile-skill{border-bottom:1px solid var(--line);justify-content:space-between;gap:14px;padding:11px 0;font-size:12px;display:flex}.profile-skill b{color:var(--gold)}@media (width<=550px){.profile-columns{grid-template-columns:1fr}.profile-body{padding:16px}}kf-store{height:100%;display:block;overflow:auto}.store-page{max-width:1100px;margin:auto;padding:26px}.store-hero{text-align:center;padding:10px 0 24px}.store-hero h1{color:var(--gold);margin:9px 0;font-size:28px}.store-purse{border:1px solid var(--brass-dim);background:var(--gold-soft);color:var(--gold);border-radius:5px;align-items:center;gap:10px;margin-top:12px;padding:10px 20px;display:inline-flex}.store-purse strong{font-variant-numeric:tabular-nums;font-size:23px}.store-purse>span:first-child{font-size:30px}.store-page>.tabs{flex-wrap:wrap}.store-offers{grid-template-columns:repeat(auto-fit,minmax(min(270px,100%),1fr));gap:16px;display:grid}.store-offer .panel-head{align-items:center;gap:12px;display:flex}.store-offer h2{margin:0;font-size:17px}.store-sigil{color:var(--gold);min-width:32px;font-size:28px}.store-offer .panel-body{flex-direction:column;gap:12px;display:flex}.store-offer p{margin:0;line-height:1.7}.store-offer .store-bonus{color:var(--gold-bright);font-size:14px}.store-offer .panel-body>.tab{min-height:42px;margin-top:auto}.store-blocks{justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.store-blocks input{width:80px}.store-offer progress{width:100%;height:8px;accent-color:var(--gold)}.store-benefits .panel-body{gap:16px;display:grid}.store-benefits p,.store-benefits h2{margin:0}.store-benefits h2{color:var(--gold);font-size:22px}.store-review{gap:16px;padding:26px;display:grid}.store-review h2,.store-review p{margin:0}.store-price{color:var(--gold);border-block:1px solid var(--brass-dim);padding:16px 0;font-size:25px}.store-receipt{border:1px solid var(--good-deep);color:#b2d5a5;background:#28432550;margin:15px 0;padding:16px;animation:.45s ease-out store-reward}@keyframes store-reward{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.store-receipt{animation:none}}@media (width<=600px){.store-page{padding:18px 12px}.store-hero h1{font-size:25px}}kf-ranks{height:100%;display:block;overflow:auto}.ranks-page{max-width:1100px;margin:auto;padding:28px}.ranks-page h1{color:var(--gold);margin:4px 0 8px;font-size:32px}.ranks-filters,.ranks-tools,.ranks-paging{flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0;display:flex}.ranks-filters .input{flex:1;min-width:140px}.ranks-tools{justify-content:space-between}.ranks-tools form{flex:1;gap:6px;min-width:190px;display:flex}.ranks-tools input{width:100%;min-width:0}.ranks-scroll{border:1px solid var(--line);background:#17151088;border-radius:8px;overflow-x:auto}.ranks-scroll table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.ranks-scroll th{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);text-align:left;white-space:nowrap;background:#242017;padding:13px 12px;font-size:10px}.ranks-scroll td{border-top:1px solid var(--line);padding:14px 12px}.ranks-scroll td:nth-child(n+3){text-align:right}.ranks-scroll tr.is-own{background:#b78b2920}.ranks-scroll tr[data-rank="1"] .ranks-number{color:#f0cf79}.ranks-scroll tr[data-rank="2"] .ranks-number{color:#cccfd5}.ranks-scroll tr[data-rank="3"] .ranks-number{color:#d29666}.ranks-name{color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.ranks-name:hover{color:var(--gold)}.ranks-you{color:var(--gold);margin-left:8px;font-size:10px}.ranks-paging{justify-content:space-between}.ranks-publication{border-top:1px solid var(--line);padding-top:14px;line-height:1.7}kf-rank-details{display:block}.rank-detail .panel-head{justify-content:space-between;display:flex}.rank-detail .panel-body{gap:14px;display:grid}.rank-detail h2,.rank-detail p{margin:0}.rank-seal{color:var(--gold);text-align:center;background:radial-gradient(#b78b2928,#0000 75%);border:1px solid #b7984c55;border-radius:50%;width:max-content;min-width:100px;margin:5px auto;padding:22px;font:700 40px Georgia,serif}.rank-stat{justify-content:space-between;gap:12px;font-size:12px;display:flex}@media (width<=600px){.ranks-page{padding:18px 12px}.ranks-scroll td,.ranks-scroll th{padding:12px 8px}.ranks-page h1{font-size:27px}}.ranks-scroll caption{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@scope(kf-chat-panel){:scope{min-width:0;min-height:0;display:block}.chat-panel{flex-direction:column;height:380px;min-height:0;display:flex}.panel-head{gap:8px}.panel-head button{margin-left:auto}.chat-channel{border-bottom:1px solid var(--line);gap:8px;padding:10px;display:flex}.chat-channel select{width:100%;min-width:0}.chat-whisper{gap:8px;padding:10px;display:flex}.chat-whisper input{flex:1;min-width:0}.chat-history{flex-direction:column;flex:1;min-height:90px;display:flex;overflow:hidden}.chat-history>button{align-self:center;margin:5px}.chat-messages{overscroll-behavior:contain;flex:1;min-height:0;padding:10px 14px;overflow:auto}.chat-message{overflow-wrap:anywhere;border-bottom:1px solid #73887918;padding:8px 0}.chat-message-head{align-items:center;gap:12px;display:flex}.chat-message-head button{color:var(--gold);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-size:13px}.chat-message-head button:disabled{opacity:1;color:#b6c4db;cursor:default}time{color:var(--text-muted);white-space:nowrap;margin-left:auto;font-size:11px}.chat-message p{white-space:pre-wrap;margin:5px 0 0;font-size:14px;line-height:1.6}.chat-reference{border:1px solid var(--brass-dim);background:var(--gold-soft);color:var(--gold-bright);font:inherit;cursor:pointer;white-space:normal;text-align:left;border-radius:3px;padding:1px 4px;display:inline}.chat-reference.is-skill{color:var(--arcane);border-color:var(--arcane-deep);background:#aa83dc12}.chat-reference.is-territory{color:var(--select);border-color:var(--mana-deep);background:#68a1d212}.chat-reference:hover{text-decoration:underline}.chat-reference:focus-visible,.chat-suggestions button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.chat-link-help{color:var(--text-muted);margin:0 0 6px;font-size:13px}.chat-link-help code{color:var(--gold)}.chat-compose>.chat-suggestions{border:1px solid var(--brass);background:var(--ink-0);gap:2px;max-height:150px;padding:4px;display:grid;overflow:auto}.chat-suggestions button{text-align:left;color:var(--text);font:12px var(--font-ui);cursor:pointer;background:0 0;border:1px solid #0000;padding:6px}.chat-suggestions button[aria-selected=true],.chat-suggestions button:hover{border-color:var(--brass);background:var(--gold-soft)}[data-ref=link-status]{margin:4px 0 0}[data-ref=link-status]:empty{display:none}.chat-compose{border-top:1px solid var(--line);padding:10px}textarea{resize:vertical;width:100%;min-height:52px;max-height:160px;font-family:inherit}.chat-compose>div{justify-content:space-between;align-items:center;padding-top:6px;display:flex}small{color:var(--text-muted);font-size:11px}.chat-status{padding:0 12px;font-size:13px}.chat-status:empty{display:none}.chat-empty{padding:12px 0;line-height:1.6}.chat-close{display:none}.chat-jump{color:var(--gold);margin:0 10px 8px}:scope:not([expanded]) .chat-whisper{display:none}:scope[expanded] .chat-panel{height:min(660px,100dvh - 60px)}:scope[expanded] .chat-expand{display:none}:scope[expanded] .chat-close{display:block}:scope[expanded] .chat-message p{font-size:14px}:scope[expanded] .chat-message-head button{font-size:13px}@media (width<=600px){:scope[expanded] .chat-panel{height:calc(100dvh - 36px)}}}@scope(kf-chat-panel){:scope:not([expanded]) .panel-head{padding:4px 10px}:scope:not([expanded]) .panel-head h3{font-size:13px}:scope:not([expanded]) .chat-channel{padding:5px 8px}:scope:not([expanded]) .chat-channel select{padding:5px 7px;font-size:13px}:scope:not([expanded]) .chat-history{min-height:32px}:scope:not([expanded]) .chat-compose{flex:none;padding:6px 8px;position:relative}:scope:not([expanded]) textarea{resize:none;height:36px;min-height:36px;max-height:72px;font-size:14px}:scope:not([expanded]) .chat-link-help{display:none}:scope:not([expanded]) .chat-compose>div{padding-top:3px}:scope:not([expanded]) .chat-compose>.chat-suggestions{z-index:10;max-height:140px;position:absolute;bottom:100%;left:8px;right:8px}:scope:not([expanded]) .chat-message{padding:5px 0}:scope:not([expanded]) .chat-message p{margin:2px 0 0;line-height:1.45}.chat-channel,.chat-status,.chat-jump{flex-shrink:0}}@scope(kf-chat-panel){:scope:not([expanded]) .chat-expand{height:22px;min-height:22px;padding:0 6px}:scope:not([expanded]) .chat-channel select{height:30px;min-height:30px}:scope:not([expanded]) .chat-status{margin:4px 0}:scope:not([expanded]) .chat-compose{grid-template-columns:minmax(0,1fr) auto;gap:4px;display:grid}:scope:not([expanded]) .chat-compose textarea{grid-area:1/1}:scope:not([expanded]) .chat-compose>div:not(.chat-suggestions){display:contents}:scope:not([expanded]) .chat-compose [data-ref=count]{display:none}:scope:not([expanded]) .chat-compose [data-ref=send]{grid-area:1/2;padding:4px 6px;font-size:13px}:scope:not([expanded]) [data-ref=link-status]{grid-column:1/-1}}@scope(kf-chat-panel){.chat-parties{border-bottom:1px solid var(--line);flex:0 auto;min-height:0;padding:10px 14px}.chat-parties h4{color:var(--gold);margin:0 0 8px;font-size:14px}.chat-party-list{overscroll-behavior:contain;gap:6px;max-height:180px;display:grid;overflow:auto}.chat-party-row{text-align:left;background:var(--surface-inset);border:1px solid var(--line);width:100%;color:var(--text);cursor:pointer;border-radius:4px;grid-template-columns:1fr auto;gap:4px 8px;padding:9px;display:grid}.chat-party-row:hover{border-color:var(--gold)}.chat-party-row strong{font-size:13px}.chat-party-row small{grid-column:1/-1;font-size:12px}.party-seats{color:var(--gold);font-size:12px}.party-open{color:var(--positive,#9bc88c)}.chat-parties p{margin:6px 0 0;font-size:11px}}@scope(kf-market){:scope{min-width:0;height:100%;min-height:0;padding:16px;display:block}.market-page{flex-direction:column;height:100%;min-height:0;display:flex}h2{font:18px var(--font-display)}.panel-head{flex-wrap:wrap;gap:8px}.panel-head .note{margin-left:auto;font-size:10px}.market-tabs,.market-filters{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px;padding:12px;display:flex}.market-filters input{flex:1;min-width:120px}.market-filters select{max-width:135px}.market-scroll{min-height:0;padding:12px;overflow:auto}.market-scroll>.note:empty{display:none}.market-item{border:1px solid var(--line);width:100%;color:var(--text);text-align:left;cursor:pointer;background:#0e15117a;border-radius:3px;align-items:center;gap:12px;margin-bottom:5px;padding:10px;display:flex}.market-item:hover{border-color:var(--brass);background:#9b85301a}[aria-pressed=true]{border-color:var(--gold);background:#9b853025}kf-item{flex:0 0 46px;width:46px}.market-item-name{flex:1;gap:5px;display:grid}small{color:var(--text-muted);font-size:10px}.market-order{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 0;display:flex}.market-order>div{flex:1;min-width:150px}.market-claim{border:1px solid var(--brass);background:#b6982720;margin-bottom:20px;padding:16px}.market-claim strong{color:var(--gold)}.market-receipt{border-left:2px solid var(--gold);color:var(--gold);margin-bottom:12px;padding:12px;animation:.45s ease-out market-reward}button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media (width<=600px){:scope{padding:8px}.market-tabs .tab{flex:1;padding:8px 4px;font-size:10px}.market-filters select{max-width:110px}}}@scope(kf-market-details){:scope{height:100%;min-height:0;display:block}.market-details{flex-direction:column;height:100%;display:flex}.market-detail-scroll{min-height:0;padding:16px;overflow:auto}.panel-head button{margin-left:auto}.market-empty{text-align:center;color:var(--text-muted);padding:60px 15px}.market-empty>span{color:var(--gold);font-size:40px}h2{font:18px var(--font-display)}.market-heading{align-items:center;gap:12px;margin-bottom:12px;display:flex}.market-heading kf-item{flex:0 0 56px;width:56px}.market-book{border-block:1px solid var(--line);grid-template-columns:1fr 1fr;gap:10px;margin:18px 0;padding:14px 0;display:grid}.market-book section{min-width:0}.market-book button{width:100%;margin:4px 0;padding:6px 3px;font-size:10px;display:block}.market-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}label{color:var(--text-muted);gap:6px;min-width:0;font-size:11px;display:grid}.input{width:100%;min-width:0}.note{line-height:1.7}.market-primary{border-color:var(--brass);width:100%;color:var(--gold);padding:12px}}.market-confirm{max-width:520px;padding:24px;line-height:1.7;overflow:auto}.market-confirm h2{font:22px var(--font-display);color:var(--gold)}.market-confirm kf-item{width:64px;display:block}.market-confirm button{margin:8px 8px 0 0}@keyframes market-reward{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.market-receipt{animation:none!important}}@scope(kf-quest-journal){:scope{height:100%;min-height:0;display:block}.quest-journal{flex-direction:column;height:100%;display:flex}.panel-head{gap:10px}.panel-head h2{font:18px var(--font-display)}.panel-head p{margin:5px 0 0}.panel-head>button{margin-left:auto;font-size:22px}button{color:var(--text);cursor:pointer;border:1px solid var(--line);font:11px var(--font-display);background:#13171380;border-radius:3px;padding:7px 9px}button:hover{border-color:var(--brass)}button:disabled{cursor:default;opacity:.45}button:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.tabs{flex-wrap:wrap;gap:3px;padding:8px}.tabs button{flex:1;padding:6px 4px;font-size:10px}.journal-scroll{min-height:0;padding:0 12px 18px;overflow-y:auto}.chapter-heading{font:13px var(--font-display);color:var(--gold);border-bottom:1px solid var(--line);margin:16px 0 9px;padding-bottom:7px}.quest-card{border:1px solid var(--line);background:linear-gradient(135deg,#bca35c09,#10141040);border-radius:4px;margin:8px 0;padding:12px}.quest-card.is-complete{border-color:#a6914e90;box-shadow:inset 0 0 20px #cca64b0a}.quest-card h3{font:14px/1.5 var(--font-display);margin:4px 0 8px}.quest-status{font:9px var(--font-display);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.is-complete .quest-status{color:var(--gold)}.quest-description{color:var(--text-muted);font-size:12px;line-height:1.65}.quest-objective-group{margin:12px 0}.quest-objective{margin:8px 0}.objective-line{justify-content:space-between;gap:8px;font-size:11px;display:flex}.objective-line b{white-space:nowrap;color:var(--gold);font-variant-numeric:tabular-nums}progress{appearance:none;background:#080b08;border:0;border-radius:4px;width:100%;height:4px;margin:7px 0;display:block;overflow:hidden}progress::-webkit-progress-bar{background:#080b08}progress::-webkit-progress-value{background:linear-gradient(90deg,#5b713d,#bab46f);transition:width .3s}progress::-moz-progress-bar{background:#8f9b5b}.quest-rewards{gap:6px;margin:10px 0;display:grid}.quest-reward{text-align:left;font:11px var(--font-body);background:0 0;border:0;align-items:center;gap:8px;padding:0;display:flex}.quest-reward kf-item{--item-size:30px;flex:none}.quest-xp{color:#96b08d;font-size:11px}.tier-reward{color:var(--gold);font:12px var(--font-display)}.quest-actions{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.quest-actions:empty{display:none}.claim-reward{border-color:var(--brass);background:linear-gradient(#63532b,#352c1b);flex:1 0 100%}.quiet{color:var(--text-muted);background:0 0;font-size:10px}.delivery-summary{color:var(--gold);flex:1 0 100%;margin:4px 0 0;font-size:11px}.delivery{color:var(--text-muted);align-items:center;gap:8px;font-size:11px;display:flex}.delivery input{width:78px;min-width:0;padding:5px}[data-quest-action=deliver]{flex:auto}.projected-note{font-size:10px;font-style:italic}.quest-receipt{text-align:center;border:1px solid var(--brass);background:radial-gradient(at top,#a587332b,#0000);margin-top:12px;padding:15px 12px;animation:.5s both quest-reward-arrive}.quest-receipt h3{color:var(--gold);font:16px var(--font-display)}.reward-seal{color:var(--gold);font-size:30px;display:block}.quest-archive{border:1px dashed var(--line);border-radius:4px;margin:10px 0 4px;padding:0 10px}.quest-archive summary{cursor:pointer;font:10px var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding:9px 0}.quest-archive summary:hover{color:var(--gold)}.archive-row{color:var(--text-muted);justify-content:space-between;gap:8px;margin:0;padding:6px 0 8px;font-size:12px;display:flex}.archive-row small{color:var(--text-faint);font-size:10px}.quest-confirm{max-width:400px}.quest-confirm .panel-body{gap:15px;font-size:13px;line-height:1.7;display:grid}.confirm-danger{background:#672d24;border-color:#ac6654}}kf-quest-tracker{width:min(340px,100% - 20px);display:block}@scope(kf-quest-tracker){.quest-pill{border:1px solid var(--brass);width:100%;color:var(--text);text-align:left;cursor:pointer;background:linear-gradient(100deg,#2d3321f5,#171f17ed);border-radius:4px;align-items:center;gap:9px;padding:10px 12px;display:flex;box-shadow:0 5px 18px #0006}.quest-pill>span{color:var(--gold);font-size:23px}b{font:12px var(--font-display);display:block}small{color:var(--text-muted);font:10px/1.5 var(--font-body);margin-top:5px;display:block}button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}}@keyframes quest-reward-arrive{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){kf-quest-journal .quest-receipt{animation:none}kf-quest-journal progress::-webkit-progress-value{transition:none}}@scope(kf-production-result){:scope{margin-block:16px;display:block}:scope[hidden]{display:none}section{background:#171c1c;border:1px solid #c2a76a55;border-radius:6px;padding:12px}h3{color:#e6c786;margin:0 0 10px;font-size:16px}div{flex-wrap:wrap;gap:8px;display:flex}p{color:var(--text-muted,#c0b9ac);margin-bottom:0;font-size:13px}}@scope(kf-rarity-odds){:scope{margin-block:16px;display:block}:scope[hidden]{display:none}h3{color:var(--text);margin:0 0 12px;font-size:15px}.rarity-outcomes{flex-wrap:wrap;gap:8px;display:flex}.rarity-outcome{background:#0a1016;border:1px solid #ffffff18;border-radius:5px;flex:120px;align-items:center;gap:8px;padding:8px;display:flex}.rarity-outcome>span{gap:4px;display:grid}strong{text-transform:capitalize;color:var(--text);font-size:12px;font-weight:500}.rarity-outcome>span>span{font-variant-numeric:tabular-nums;color:#e6c786;font-size:16px}.rarity-stat-changes{grid-template-columns:1fr auto;gap:7px 12px;margin:0;font-size:12px;display:grid}dt{color:var(--text-muted)}dd{color:var(--text);font-variant-numeric:tabular-nums;margin:0}h4{color:var(--text);margin:16px 0 10px;font-size:13px}p{color:var(--text-muted,#c0b9ac);margin-bottom:0;font-size:13px;line-height:1.6}}@scope(kf-crafting){:scope{min-width:0;height:100%;min-height:0;display:block}.crafting-bench{grid-template-columns:185px minmax(0,1fr);gap:12px;height:100%;padding:16px;display:grid}.professions{overflow:auto}.recipes{flex-direction:column;min-width:0;min-height:0;display:flex}h2{font:17px var(--font-display)}.bench-note{padding:12px 16px;line-height:1.7}.professions nav{gap:4px;padding:8px;display:grid}button{cursor:pointer;color:var(--text);border:1px solid var(--line);background:#10171370;border-radius:3px}.professions button{text-align:left;font:11px var(--font-display);align-items:center;gap:8px;padding:10px 7px;display:flex}.professions img{width:24px;height:24px}.professions small{color:var(--text-muted);white-space:nowrap;margin-left:auto}button[aria-pressed=true]{border-color:var(--gold);background:#a0823122;box-shadow:inset 0 0 12px #b39b3020}button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}button:hover{border-color:var(--brass)}.recipe-filters{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:end;gap:10px;padding:14px;display:flex}.recipe-filters label{color:var(--text-muted);gap:5px;min-width:0;font-size:10px;display:grid}.recipe-filters label:first-child{flex:1;min-width:120px}.input{width:100%;min-height:36px}.recipe-filters .availability{align-items:center;padding:9px 0;display:flex}input[type=checkbox]{accent-color:var(--gold)}.recipe-list{min-height:0;padding:0 12px 12px;overflow:auto}.recipe{text-align:left;background:linear-gradient(100deg,#33342760,#161c1880);grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;margin-bottom:7px;padding:12px;display:grid}.recipe-copy{gap:7px;min-width:0;display:grid}.recipe-copy strong{font:12px var(--font-display)}.needs{color:var(--text-muted);flex-wrap:wrap;gap:5px 12px;font-size:10px;line-height:1.6;display:flex}.short{color:#dda082}.recipe-meta{text-align:right;gap:6px;font-size:11px;display:grid}.recipe-meta small{color:var(--text-muted)}.more{margin:8px auto 14px;padding:10px 20px}@media (width<=1150px){.crafting-bench{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.professions nav{display:flex;overflow:auto}.professions button{flex:none}.professions .panel-head,.professions .bench-note{display:none}}@media (width<=600px){.crafting-bench{gap:8px;padding:8px}.recipe{gap:8px;padding:10px 6px}.recipe-filters{gap:7px;padding:10px}.recipe-meta{font-size:10px}}}@scope(kf-recipe-details){:scope{height:100%;min-height:0;display:flex}.recipe-details{flex-direction:column;width:100%;min-height:0;display:flex}.panel-body{min-height:0;overflow:auto}h2{font:19px var(--font-display)}h3{font:14px var(--font-display);color:var(--gold);margin:20px 0 10px}.note{font-size:11px;line-height:1.7}.panel-head button{color:var(--gold);cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:25px}.material{align-items:center;gap:10px;padding:8px 0;display:flex}.material kf-item{flex:none}.material p{margin:5px 0 0;font-size:11px}.item-link{color:var(--gold);text-align:left;font:12px var(--font-display);cursor:pointer;background:0 0;border:0;padding:0}.item-link:hover{text-decoration:underline}.short{color:#dda082}.affordable,.xp{color:#b7c797;font-size:12px;line-height:1.7}.start{color:#d9e8b6;width:100%;font:14px var(--font-display);cursor:pointer;background:linear-gradient(#465839,#283c2b);border:1px solid #82975d;border-radius:3px;padding:12px}button:disabled{opacity:.45;cursor:default;filter:saturate(.3)}button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}}@scope(kf-crafting){.ingredient-filter{border:1px solid var(--brass);color:var(--text-muted);background:#b78c3412;border-radius:3px;align-items:center;gap:8px;margin:6px 12px 0;padding:6px 10px;font-size:12px;display:flex}.ingredient-filter b{color:var(--gold)}.ingredient-filter button{color:var(--text-muted);cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:16px}.ingredient-filter button:hover{color:var(--gold-bright)}}@scope(kf-recipe-details){[data-ref=inspection]{flex-direction:column;flex:1;min-height:0;display:flex}[data-ref=inspection][hidden]{display:none}[data-ref=back]{font:13px var(--font-display);border-bottom:1px solid var(--brass);padding:12px 16px}[data-ref=inspection] kf-item-details{flex:1;min-height:0}}@scope(kf-activity-planner){:scope{min-height:0;display:flex}.activity-planner{flex-direction:column;width:100%;min-height:0;display:flex}.planner-heading{border-bottom:1px solid var(--line-strong);background:radial-gradient(at 15% 0,#aa853a33,#0000 65%),url(/assets/smoked-oak-NFN7tVYC.webp) 50%/600px;align-items:center;gap:16px;padding:22px;display:flex}.planner-heading img{border:1px solid var(--brass);background:#172017;border-radius:5px;width:52px;height:52px;padding:8px}.eyebrow{color:var(--gold);letter-spacing:.15em;font-size:9px}h2{font:23px var(--font-display);margin:5px 0}h3{font:15px var(--font-display);color:#daca9d;margin:22px 0 12px}.planner-heading p{color:var(--text-muted);margin:0;font-size:11px}[data-ref=close]{width:38px;height:38px;color:var(--gold);cursor:pointer;background:0 0;border:0;flex:none;margin-left:auto;font-size:27px}.planner-body{grid-template-columns:minmax(0,1fr) 285px;min-height:0;display:grid;overflow:auto}.activity-rewards{padding:22px}.activity-options{border-left:1px solid var(--line-strong);background:linear-gradient(130deg,#27302290,#0c161480);padding:24px 20px}.estimates{grid-template-columns:1fr 1fr;gap:10px;display:grid}.estimates div{border:1px solid var(--line-strong);background:#1e241d90;gap:8px;padding:14px;display:grid}.estimates span{color:var(--text-muted);font-size:10px}.estimates strong{color:#e5cc83;font:23px var(--font-display)}.estimate-note{color:#999f8b;font-size:10px;line-height:1.7}.drop-list{gap:8px;display:grid}.drop-row{background:#20291d55;border:1px solid #8d87503b;border-radius:4px;align-items:center;gap:10px;padding:10px;display:flex}.drop-row>div{flex:1;min-width:0}.drop-row strong{font:12px/1.5 var(--font-display)}.drop-row p,.requirements p,.muted{color:var(--text-muted);margin:5px 0 0;font-size:11px;line-height:1.7}kf-item{flex:none}.hourly{color:#c8d49b;white-space:nowrap;font-size:11px}.xp-row{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:8px;padding:10px 0;font-size:12px;display:flex}.xp-row span{color:#c2d18e}fieldset{border:0;min-width:0;margin:0;padding:0}legend{font:16px var(--font-display);margin-bottom:15px}.cycle-presets{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.cycle-presets label{position:relative}.cycle-presets input{opacity:0;width:1px;height:1px;position:absolute}.cycle-presets span{color:#aaa78a;min-height:44px;font:14px var(--font-display);cursor:pointer;background:#101713;border:1px solid #7b794252;place-items:center;display:grid}.cycle-presets input[value=custom]+span{font-size:10px}.cycle-presets input:checked+span{border-color:var(--gold);color:#eed58f;background:#85703333;box-shadow:inset 0 0 15px #9e88351c}.cycle-presets input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}.custom-count{color:var(--text-muted);gap:8px;margin-top:12px;font-size:11px;display:grid}.custom-count input{border:1px solid var(--line-strong);width:100%;color:var(--text);background:#101713;padding:10px}.plan-total{color:#d8ceac;border-bottom:1px solid var(--line-strong);margin-bottom:20px;padding:15px 0;font-size:12px;line-height:1.7}.start-mode{gap:10px;margin-bottom:16px;display:grid}.start-mode label{cursor:pointer;align-items:center;gap:9px;font-size:12px;display:flex}.start-mode input{accent-color:#c7ab60}.start-mode small{color:var(--text-muted);margin-top:4px;font-size:10px;display:block}.plan-warning{color:#d4b87e;background:#a4842520;border:1px solid #a9894555;padding:10px;font-size:11px;line-height:1.7}.plan-error{color:#e8a58e;font-size:12px;line-height:1.7}.start,.secondary{width:100%;min-height:44px;font:12px var(--font-display);border:1px solid var(--brass);color:#ebd59c;cursor:pointer;background:linear-gradient(#82704055,#3d442733);border-radius:3px;margin-top:10px;padding:10px}.start{color:#d9e8b6;background:linear-gradient(#465839,#283c2b);border-color:#82975d;box-shadow:inset 0 1px #adba7755}button:disabled{opacity:.45;cursor:default}button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.activity-options h3{margin-top:0}[data-ref=cycle-count],[data-ref=queue-note]{color:var(--text-muted);font-size:12px;line-height:1.8}@media (width<=700px){.planner-body{grid-template-columns:1fr}.activity-options{border-left:0;border-bottom:1px solid var(--line-strong);grid-row:1;padding:18px}.activity-rewards{padding:18px}.planner-heading{gap:10px;padding:16px}h2{font-size:18px}.planner-heading img{width:42px;height:42px}.start-mode{grid-template-columns:1fr 1fr}.plan-total{margin-bottom:12px;padding:10px 0}.drop-row{flex-wrap:wrap}}}@scope(kf-activity-planner){.requirements .requirement-met{color:#a6bd87}.requirements .requirement-unmet{color:#e0a184}.requirements .requirement-unknown{color:var(--text-muted)}.start:disabled{opacity:.45;cursor:default;filter:saturate(.3)}}@scope(kf-activity-planner){.material-link{font:12px var(--font-display);color:var(--gold);text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.material-link:hover{text-decoration:underline}.missing-material p{color:#e0a184}}@scope(kf-offline-summary){:scope{display:contents}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}dialog{color:var(--text);border:1px solid var(--brass);background:var(--ink-1);border-radius:5px;width:min(650px,100vw - 32px);max-height:calc(100dvh - 40px);margin:auto;padding:0;overflow:hidden;box-shadow:0 25px 100px #000d,0 0 0 4px #0c100dda,0 0 0 5px #78603555}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050908c9}dialog[open]{animation:.45s cubic-bezier(.16,1,.3,1) both report-arrive}article{flex-direction:column;max-height:calc(100dvh - 42px);display:flex}.report-heading{text-align:center;border-bottom:1px solid var(--line-strong);background:radial-gradient(at 50% 15%,#b48d3d24,#0000 70%),url(/assets/smoked-oak-NFN7tVYC.webp) 50%/600px;padding:16px 30px 15px;position:relative}.close{background:0 0;border:0;padding:2px 8px;font-size:26px;position:absolute;top:10px;right:12px}.seal{width:48px;height:48px;margin:0 auto 13px;position:relative}.seal:before,.seal:after{content:"";border:1px solid #d9b66b60;border-radius:12px;position:absolute;inset:-8px;transform:rotate(45deg)}.seal:after{border-color:#d9b66b20;inset:-15px}.seal svg{fill:#d9b66b15;width:100%;height:100%;stroke:var(--gold);stroke-width:1.4px;filter:drop-shadow(0 0 8px #e5b95c55)}.seal svg path+path{fill:none;stroke:var(--gold-bright);stroke-width:3px}dialog[open] .seal{animation:.9s .1s both report-seal}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.15em;font:10px var(--font-ui);margin:0 0 6px}h2{font:600 26px var(--font-display);color:var(--gold-bright);margin:0}.introduction{color:var(--text-muted);margin:8px 0 0;font-size:12px}.report-body{overscroll-behavior:contain;min-height:0;padding:0 24px 18px;overflow:auto}.statistics{border-bottom:1px solid var(--line);text-align:center;background:#0a100c80;grid-template-columns:repeat(3,1fr);margin:0 -24px 22px;padding:16px 12px;display:grid}.statistics div+div{border-left:1px solid var(--line)}dt{color:var(--text-muted);margin-bottom:6px;font-size:10px}dd{font:600 18px var(--font-display);color:var(--gold-bright);margin:0}h3{font:600 13px var(--font-display);color:var(--gold);justify-content:space-between;align-items:center;margin:20px 0 12px;display:flex}h3 span{color:var(--text-muted);font:11px var(--font-ui)}ul{margin:0;padding:0;list-style:none}.reward-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.reward-card{border:1px solid var(--line-strong);background:linear-gradient(120deg,#55442a35,#0a110dcc);border-radius:3px;align-items:center;gap:12px;padding:10px;display:flex}.reward-card kf-item{flex:none}.reward-card>div{min-width:0}.item-name{overflow-wrap:anywhere;font-size:12px;line-height:1.4;display:block}.reward-card .count{color:var(--gold-bright);font:600 19px var(--font-display);margin-top:5px;display:block}dialog[open] .reward-card{animation:reward-arrive .5s var(--reveal-delay) both}.experience{gap:7px;display:grid}.experience li{border-left:2px solid var(--good);background:linear-gradient(90deg,#59704026,#0a100c80);justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;font-size:12px;display:flex;position:relative;overflow:hidden}.experience .count{color:#b2d28d;font-variant-numeric:tabular-nums;white-space:nowrap}.skill-name{overflow-wrap:anywhere;flex:1;min-width:0}.skill-icon{width:30px;height:30px;color:var(--gold);border:1px solid var(--line-strong);background:#10160dcc;border-radius:3px;flex:none;place-items:center;display:grid}.skill-icon img{object-fit:contain;width:23px;height:23px}dialog[open] .experience li{animation:reward-arrive .5s var(--reveal-delay) both}.milestones{background:radial-gradient(at 100% 0,#c49b4330,#0000 70%),linear-gradient(120deg,#46371e70,#15180fd9);border:1px solid #b5914c99;border-radius:3px;padding:14px;position:relative;overflow:hidden;box-shadow:inset 0 0 24px #c89d3410,0 3px 18px #0003}.milestones h3{flex-wrap:wrap;gap:8px;margin:0 0 12px}.milestone-title{color:var(--gold-bright);font:600 15px var(--font-display)}.level-total{color:var(--gold-bright);background:#d4ad4317;border:1px solid #a88b4855;border-radius:2px;padding:4px 7px}.milestone{align-items:center;gap:12px;padding:8px 0;display:flex}.milestone+.milestone{border-top:1px solid #a88b4833}.milestone .skill-icon{background:#b8943720;border-color:#b5914c88;width:40px;height:40px}.milestone .skill-icon img{width:30px;height:30px}.milestone-label{flex:1;min-width:0}.milestone-kicker{color:var(--gold);text-transform:uppercase;letter-spacing:.15em;margin-bottom:5px;font-size:9px;display:block}.milestone-label strong{font:600 16px var(--font-display);color:var(--gold-bright);overflow-wrap:anywhere;display:block}.level-transition{font-variant-numeric:tabular-nums;align-items:center;gap:10px;display:flex}.previous-level{color:var(--text-muted);font:18px var(--font-display)}.level-arrow{color:var(--gold);font-size:17px}.new-level{min-width:48px;height:48px;color:var(--gold-bright);font:600 27px var(--font-display);text-shadow:0 0 16px #f4c95440;background:linear-gradient(#b5914c30,#2c26188c);border:1px solid #e1bf7490;border-radius:3px;place-items:center;padding:0 6px;display:grid}dialog[open] .milestone{animation:reward-arrive .55s var(--reveal-delay) both}dialog[open] .new-level{animation:level-stamp .7s calc(var(--reveal-delay) + .2s) both}.milestones:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 25%,#ffe1a317 45%,#0000 65%);position:absolute;inset:0;transform:translate(-120%)}dialog[open] .milestones:after{animation:1.1s .45s both milestone-shine}details{border-top:1px solid var(--line);margin-top:20px;padding-top:12px}summary{color:var(--text-muted);cursor:pointer;padding:4px 0;font-size:12px}summary span{float:right}.work li{flex-wrap:wrap;justify-content:space-between;gap:6px 16px;margin:12px 0;font-size:11px;display:flex}.muted,.costs{color:var(--text-muted);font-size:11px;line-height:1.7}footer{border-top:1px solid var(--line-strong);background:#0b110dc9;padding:12px 24px 14px}footer p{text-align:center;color:var(--text-muted);margin:0 0 4px;font-size:11px;line-height:1.5}.current{color:#bccba8}.report-actions{gap:9px;margin-top:8px;display:flex}button{cursor:pointer;color:var(--gold);font:12px var(--font-ui);border-radius:3px}.continue{color:#fff0c3;font:600 13px var(--font-display);background:linear-gradient(#52603a,#283421);border:1px solid #b7a05f;flex:1;padding:12px;box-shadow:inset 0 1px #d0dca02b}.continue span{margin-left:12px}.secondary{border:1px solid var(--line-strong);background:#181d15;padding:10px 14px}button:hover{filter:brightness(1.18)}button:focus-visible,summary:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px}@keyframes report-arrive{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:none}}@keyframes report-seal{0%{opacity:0;transform:scale(.65)rotate(-15deg)}65%{transform:scale(1.07)}to{opacity:1;transform:none}}@keyframes reward-arrive{0%{opacity:0;border-color:var(--gold);transform:translateY(9px)}to{opacity:1;border-color:var(--line-strong);transform:none}}@keyframes level-stamp{0%{opacity:0;transform:scale(1.22)}45%{opacity:1;transform:scale(.96);box-shadow:0 0 22px #f4c95440}to{opacity:1;box-shadow:none;transform:scale(1)}}@keyframes milestone-shine{to{transform:translate(120%)}}@media (width<=540px){dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}article{max-height:calc(100dvh - 22px)}.report-heading{padding:17px 18px 14px}.seal{width:42px;height:42px;margin-bottom:17px}h2{font-size:23px}.report-body{padding:0 14px 14px}.statistics{margin-left:-14px;margin-right:-14px;padding:12px 6px}dd{font-size:16px}.reward-grid{gap:6px}.reward-card{gap:8px;padding:8px}.reward-card kf-item{--item-size:36px}.item-name{font-size:11px}.reward-card .count{font-size:17px}.milestones{padding:10px}.milestone{gap:8px}.milestone-label strong{font-size:14px}.level-transition{gap:7px}.new-level{min-width:40px;height:42px;font-size:24px}.experience li{gap:8px;padding:8px}.experience .count{font-size:11px}footer{padding:12px 14px 14px}.report-actions{flex-direction:column}}@media (prefers-reduced-motion:reduce){dialog[open],dialog[open] .seal,dialog[open] .reward-card,dialog[open] .experience li,dialog[open] .milestone,dialog[open] .new-level,dialog[open] .milestones:after{animation:none}dialog::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}}}@scope(kf-party-panel){:scope{background:radial-gradient(at top,#b1923920,#0000 65%);height:100%;min-height:0;padding:22px;display:block;overflow:auto}:scope[hidden]{display:none}.party-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.14em;font-size:9px}h2{color:var(--gold-bright);font:600 27px var(--font-display);margin:4px 0}h3{color:var(--gold);font-family:var(--font-display)}.party-columns{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.panel{background:var(--ink-1)}.panel-head{flex-wrap:wrap;gap:10px}.panel-head h3{font-size:14px}.header-share{margin-left:auto;display:inline-flex}.header-share:empty{display:none}.panel-head:has(.header-share) h3{flex:1;min-width:0}.panel-body{padding:16px}button{border:1px solid var(--line-strong);color:var(--gold);font:12px var(--font-ui);cursor:pointer;background:linear-gradient(#33331ee6,#1b2015);border-radius:3px;padding:8px 12px}button:hover:not(:disabled){filter:brightness(1.15);border-color:var(--brass)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px}.primary{color:#f5e6af;background:linear-gradient(#52603a,#283421);border-color:#b7a05f}.danger{color:#e5a599;border-color:#94604b66}.note{color:var(--text-muted);font:11px/1.7 var(--font-ui)}.bad,.error{color:#e3a197;font-size:12px}.error{background:#47180d40;border:1px solid #9c564c55;padding:12px}.good{color:#b2d28d}.party-emblem{font:48px var(--font-display);color:var(--gold);text-shadow:0 0 20px #cba95433}.visibility{border:0;gap:5px;margin:0 0 14px;padding:0;display:flex}.visibility legend{color:var(--text-muted);margin-bottom:7px;font-size:10px}.visibility label{border:1px solid var(--line);align-items:center;gap:5px;padding:6px 9px;font-size:11px;display:flex}.visibility label:has(:checked){color:var(--gold-bright);border-color:var(--brass);background:#b3914420}input[type=radio]{accent-color:var(--gold)}.party-slot{border:1px solid var(--line-strong);background:#10170dbb;border-radius:3px;flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0;padding:12px;display:flex}.party-slot.open{background:#10170d55;border-style:dashed}.slot-seal{width:40px;height:44px;color:var(--gold);font:20px var(--font-display);background:linear-gradient(#69532d66,#1c2012);border:1px solid #a38b5360;border-radius:4px 4px 13px 13px;flex:none;place-items:center;display:grid}.open .slot-seal{opacity:.55}.slot-identity{flex:1;min-width:0}.slot-identity strong{color:var(--text);overflow-wrap:anywhere;font-size:12px;display:block}.slot-identity span{font-size:10px;display:block}.leader{color:var(--gold);margin-top:3px}details{color:var(--text-muted);font-size:11px}details[open]{flex-basis:100%}summary{cursor:pointer;padding:5px 0}details form{flex-wrap:wrap;gap:8px;padding-top:10px;display:flex}details button{margin-top:5px;font-size:11px}.field{color:var(--text-muted);gap:6px;min-width:0;margin:12px 0;font-size:11px;display:grid}input:not([type=radio]),select{width:100%;min-width:0;color:var(--text);border:1px solid var(--line-strong);font:12px var(--font-ui);background:#090f09b3;border-radius:3px;padding:9px}.slot-editor .field{flex:150px;margin:0}.slot-editor input{width:85px}.invite-form{border-top:1px solid var(--line);margin-top:15px;padding-top:2px}.actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.readiness{gap:9px;margin-top:20px;display:flex}.readiness span{border:1px solid var(--line-strong);border-radius:4px;place-items:center;width:32px;height:32px;display:grid}.readiness .ready{color:#d9e5aa;background:#56743866;border-color:#aec87c;animation:.45s both party-ready}.readiness .empty{color:var(--text-muted);border-style:dashed}.ready-row{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:10px 0;font-size:11px;display:flex}.blockers{color:#d7b881;background:#7a522523;border-left:2px solid #a68143;padding:10px 12px 10px 25px;font-size:11px;line-height:1.6}[data-ref=proposal]>button{margin:10px 5px 0 0}[data-ref=runtime]{padding:0 16px 16px}dialog{width:min(430px,100vw - 32px);color:var(--text);border:1px solid var(--brass);background:#171c13;border-radius:4px;padding:24px;box-shadow:0 20px 90px #000b}dialog::backdrop{background:#080d09c9}dialog p{font:13px/1.6 var(--font-ui)}@keyframes party-ready{0%{transform:scale(.9);box-shadow:0 0 16px #adc77466}to{box-shadow:none;transform:none}}@media (width<=1150px){.party-columns{grid-template-columns:1fr}}@media (width<=600px){:scope{padding:14px}.party-title{flex-direction:column;align-items:start}h2{font-size:23px}}@media (prefers-reduced-motion:reduce){.readiness .ready{animation:none}}}@scope(kf-party-access){:scope{height:100%;min-height:0;display:block}:scope[hidden]{display:none}.panel{flex-direction:column;height:100%;display:flex}.panel-body{overscroll-behavior:contain;min-height:0;padding:16px;overflow:auto}h3{color:var(--gold);font:600 15px var(--font-display);margin:20px 0 12px}.panel-head h3{margin:0}button{border:1px solid var(--line-strong);color:var(--gold);font:11px var(--font-ui);cursor:pointer;background:#202617;border-radius:3px;padding:8px 10px}button:hover:not(:disabled){border-color:var(--brass)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px}.primary{color:#f5e6af;background:linear-gradient(#506039,#283421);border-color:#a48d56}.note{font:11px/1.7 var(--font-ui);color:var(--text-muted);display:block}.bad{color:#e4a596;font-size:12px}.good{color:#b2d28d;margin:6px 0;font-size:11px;display:block}.access-card{border:1px solid var(--line-strong);background:linear-gradient(120deg,#42381f40,#0c140bcc);border-radius:3px;margin:10px 0;padding:13px}.access-card strong{font:600 14px var(--font-display);overflow-wrap:anywhere;display:block}.access-card p{margin:6px 0}.access-card>button{margin-top:8px}.actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.field{color:var(--text-muted);gap:7px;margin:10px 0;font-size:11px;display:grid}input{border:1px solid var(--line-strong);width:100%;min-width:0;color:var(--text);font:12px var(--font-ui);background:#0b100beb;border-radius:3px;padding:10px}[data-ref=preview]{border-top:1px solid var(--line);margin-top:18px}}@scope(kf-party-dock){:scope{display:block}.panel-body{padding:10px 14px}.panel-head h3{font-size:13px}button{color:var(--gold);cursor:pointer;background:0 0;border:0;font-size:12px}button:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px}.note{color:var(--text-muted);margin:0 0 8px;font-size:12px}.names{flex-wrap:wrap;gap:5px;display:flex}.names span{border:1px solid var(--line);background:#18200f55;padding:4px 7px;font-size:12px}.names .you{color:var(--gold);border-color:var(--brass)}.names .empty{color:var(--text-muted);border-style:dashed}}@scope(kf-party-dock){.panel-head{padding:4px 10px}.panel-body{padding:5px 10px}.note{margin-bottom:5px}.names{gap:4px}.names span{padding:3px 5px}}@scope(kf-app.game-shell){:scope{height:100dvh}[data-region=header]{align-items:center;gap:24px;padding:0 16px;display:flex}[data-region=left]{flex-direction:column;gap:10px;display:flex;overflow:auto}[data-region=left]>*{flex-shrink:0}[data-region=right]{flex-direction:column;display:flex}.chat-skill-sheet{padding:22px;overflow:auto}.chat-skill-sheet h3{color:var(--gold);margin-top:0}.chat-skill-sheet .tab{min-height:40px;margin-top:12px}.game-brand{color:var(--gold);flex:none;text-decoration:none}.game-brand b{font:600 17px var(--font-display);display:block}.game-brand small{color:var(--text-muted);letter-spacing:.12em;margin-top:3px;font-size:10px;display:block}.game-resources{color:var(--gold);align-items:center;gap:8px;font-size:13px;display:flex}.currency-mark{font-size:24px}.game-spacer{flex:1}.panel-head h3{margin:0}.game-notes{flex:1}.game-notes p{font-size:12px;line-height:1.8}.game-navigation{align-items:center;gap:14px;height:100%;padding:6px 14px;display:flex}.nav-group{align-items:center;gap:8px;display:flex}.nav-group+.nav-group{border-left:1px solid var(--line-strong);padding-left:14px}.nav-label{font:9px var(--font-display);color:var(--text-faint);text-transform:uppercase;letter-spacing:.1em}.game-navigation .tab{cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:80px;min-height:52px;display:flex}.game-navigation .tab svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linejoin:round;width:21px;height:21px}.game-navigation .tab:focus-visible,.game-brand:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.nav-hint{color:var(--text-muted);font-size:11px}@media (width>=901px) and (width<=1100px){:scope{--layout-aside-left-w:210px;--layout-aside-right-w:280px}}@media (width<=900px){:scope{grid-template-columns:minmax(0,1fr);grid-template-areas:"header""content""footer"}[data-region=left]{display:none}[data-region=content]{padding:10px}[data-region=right]{display:none}:scope[inspecting] [data-region=right]{z-index:20;inset:calc(var(--layout-header-h) + 8px) 10px calc(var(--layout-footer-h) + 8px);padding:0;display:flex;position:fixed;box-shadow:0 0 0 100vmax #0009}.game-brand b{font-size:13px}[data-region=header]{gap:12px;padding:0 10px}.game-resources{gap:4px;font-size:11px}.game-resources .note,.currency-mark,.nav-label,.nav-hint{display:none}.game-navigation{justify-content:flex-start;gap:6px;padding:6px;overflow-x:auto}.nav-group+.nav-group{padding-left:6px}.game-navigation .tab{min-width:48px;padding:4px;font-size:12px}.nav-group{gap:3px}@media (width<=420px){.nav-group{display:contents}.game-navigation .tab{flex:0 0 58px;min-width:58px;padding:4px 2px;font-size:12px}}.game-navigation .game-spacer{display:none}}}@media (width<=1600px){.game-navigation .nav-hint{display:none}}@scope(kf-app.game-shell){.currency-mark{object-fit:contain;width:24px;height:24px}.game-navigation{gap:8px}.nav-group{gap:4px}.nav-group+.nav-group{border-color:var(--line);padding-left:8px}.game-navigation .tab{min-width:68px;box-shadow:none;letter-spacing:0;background:0 0;border-color:#0000;padding:5px 8px;position:relative}.game-navigation .tab:hover{color:var(--text);background:#c5a9680c}.game-navigation .tab.is-active,.game-navigation .tab[aria-expanded=true]{border-color:var(--brass);box-shadow:inset 0 -2px var(--gold);color:var(--gold-bright);background:linear-gradient(#af93451a,#12130f)}.combat-indicator{display:none}.combat-nav[data-running] .combat-indicator{background:var(--good);border-radius:50%;width:5px;height:5px;display:block;position:absolute;top:5px;right:8px;box-shadow:0 0 5px #70b26960}:scope[data-scene=combat] kf-activity-status:not([expanded]) [data-ref=combat]{display:none}[data-region=right]>*{min-height:0}[data-region=right] .panel-head{min-height:40px}[data-region=right] .panel-head button[aria-label^=Close]{box-shadow:none;min-width:30px;min-height:30px;color:var(--text-muted);background:0 0;border:0;margin-left:auto}[data-region=left] .panel{border-color:var(--brass-dim)}[data-region=left] .panel:before{border-color:#c5974812}[data-region=left] .panel:after,[data-region=left] .panel-head:after{opacity:.4}@media (width>=901px){[data-region=left]{gap:6px}[data-region=left]>kf-chat-panel{flex:1 0 180px;min-height:180px}[data-region=left]>kf-chat-panel .chat-panel{height:100%}}@media (width>=901px) and (width<=1440px){:scope{--layout-aside-left-w:260px;--layout-aside-right-w:300px}}@media (width>=901px) and (width<=1100px){:scope{--layout-aside-left-w:230px;--layout-aside-right-w:270px}.game-navigation .tab{min-width:58px;padding-inline:5px;font-size:12px}.game-navigation,.nav-group{gap:2px}}@media (width<=900px){.game-navigation .tab{min-width:58px;padding:4px}}}[data-scene=guild][data-unread]:not([data-unread="0"]):after{content:attr(data-unread);background:var(--gold);color:var(--ink-0);min-width:15px;font:600 10px var(--font-ui);text-align:center;border-radius:8px;padding:1px 3px;position:absolute;top:2px;right:2px}[data-scene=guild]{position:relative}@scope(kf-lifetime-records){:scope{display:block}.records-page{padding:8px 4px}h3{font:22px var(--font-display);margin:10px 0}.record-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:24px 0;display:grid}.record-total{border:1px solid var(--line);background:linear-gradient(135deg,#75814319,#161c1420);border-radius:4px;padding:16px 12px}.record-total strong{font:26px var(--font-display);color:var(--gold);font-variant-numeric:tabular-nums;display:block}.record-total span{color:var(--text-muted);margin-top:8px;font-size:11px;display:block}.record-filters{gap:8px;margin-bottom:18px;display:flex}.record-filters input{flex:1;min-width:0}.record-filters select{min-width:0;max-width:45%}.record-list{gap:5px;display:grid}.record-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 4px;display:flex}.record-row strong{font:13px var(--font-display)}small{color:var(--text-muted);margin-top:5px;font-size:11px;display:block}.record-amount{text-align:right;font-variant-numeric:tabular-nums;margin-left:auto}.record-amount b{font:18px var(--font-display);color:var(--gold)}.record-amount small{color:#94af87}@media (width<=500px){.record-totals{gap:6px}.record-total{padding:12px 8px}.record-total strong{font-size:20px}}}@scope(kf-ability-loadout){:scope{display:block}.ability-page{padding:18px}.ability-card{border:1px solid var(--brass);background:linear-gradient(135deg,#262721,#191b19);border-radius:5px;padding:12px}.ability-card header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.ability-card h4{font:14px var(--font-display);margin:0}.ability-level{color:var(--gold);margin:8px 0 4px;font-size:11px}progress{accent-color:#b69a50;width:100%;height:6px}.is-locked{background:#161916;border-style:dashed}button{min-height:44px;margin-bottom:14px}@media (width<=550px){.ability-page{padding:12px}}}@scope(kf-ability-loadout){.ability-page.is-equipped{padding:0}.equipped-ability-slots{grid-template-columns:repeat(4,minmax(0,1fr));justify-items:center;gap:6px;display:grid}.ability-slot-icon{border:1px solid var(--line);background:var(--ink-1);width:54px;height:54px;color:var(--text-muted);place-items:center;margin:0;padding:6px;font-size:22px;display:grid;position:relative}.ability-slot-icon[aria-expanded=true]{border-color:var(--gold)}.ability-slot-icon img{object-fit:contain;width:40px;height:40px}.ability-slot-icon.is-locked img{opacity:.35}.ability-slot-lock{pointer-events:none;place-items:center;font-size:20px;display:grid;position:absolute;inset:0}.ability-collection{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:12px;display:grid}}@scope(kf-ability-loadout){.ability-choice{text-align:left;cursor:pointer;width:100%;margin:0}.ability-choice img{object-fit:contain;flex-shrink:0}.ability-choice[aria-pressed=true]{border-color:var(--gold)}}@scope(kf-ability-loadout){.ability-facts dl{grid-template-columns:auto minmax(0,1fr);gap:8px 12px;margin:12px 0;font-size:12px;line-height:1.4;display:grid}.ability-facts dt{color:var(--text-muted)}.ability-facts dd{color:var(--text);overflow-wrap:anywhere;margin:0}.ability-requirement-warning{color:var(--gold);font-size:12px;line-height:1.4}}@scope(kf-ability-loadout){.ability-title{text-align:left;width:100%;min-height:44px;color:var(--text);font:14px var(--font-display);cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;margin:0;padding:0;display:flex}}@scope(kf-loadout-panel){:scope{height:100%;min-height:0;display:block}.loadout-panel{flex-direction:column;height:100%;display:flex;overflow:hidden}.panel-head{gap:12px;min-height:66px}.panel-head h2{font:19px var(--font-display);margin:4px 0 0}.eyebrow{color:var(--gold);letter-spacing:.18em;font-size:8px}.refresh{min-width:40px;min-height:40px;margin-left:auto;font-size:22px}.loadout-tabs{border-bottom:1px solid var(--line-strong);background:#161917;flex-wrap:wrap;gap:6px;padding:8px 12px;display:flex}.loadout-tabs .tab{white-space:nowrap;flex:1;min-height:38px;font-size:11px}.loadout-scroll{scrollbar-width:thin;flex:1;min-height:0;overflow:auto;container-type:inline-size}.loadout-message{border-bottom:1px solid var(--brass);color:var(--gold);background:#30301e;flex:none;margin:0;padding:10px 14px;font-size:12px}.loadout-message.is-error{color:#e5a497;background:#3b2320}.equipment-page{grid-template-columns:minmax(280px,1.2fr) minmax(210px,1fr);min-height:100%;display:grid}.equipment-sheet{border-right:1px solid var(--line-strong);background:radial-gradient(at 50% 32%,#b5954520,#0000 60%),linear-gradient(100deg,#201f1a,#1b211e);padding:16px 14px}.sheet-title{justify-content:space-between;align-items:center;gap:8px;min-height:24px;margin-bottom:14px;display:flex}.sheet-title h3{font:15px var(--font-display);margin:0}.sheet-title>span{color:var(--text-muted);font-size:10px}.paper-doll{grid-template-rows:repeat(3,90px);grid-template-columns:66px minmax(110px,1fr) 66px;padding:4px 0;display:grid;position:relative}.paper-doll .gear-slot kf-item{--item-size:60px}.hero-effigy{flex-direction:column;grid-area:1/2/4/3;align-self:center;align-items:center;gap:4px;min-width:0;padding:0;display:flex;position:relative}.hero-effigy:before{content:"";pointer-events:none;background:radial-gradient(#b99a4530,#0000 65%);border:1px solid #af96592a;border-radius:50% 50% 40% 40%;position:absolute;inset:-14px -7px}.hero-effigy kf-equipped-figure{width:min(100%,170px);height:auto}.power-label{letter-spacing:.13em;color:var(--text-muted);white-space:nowrap;margin-top:0;font-size:7px}.power-total{font:32px var(--font-display);color:#e5cc83;text-shadow:0 2px 14px #c0a55a25}.hero-effigy .power-total{margin-top:0}.gear-slot{flex-direction:column;align-items:center;gap:4px;min-width:0;display:flex}.paper-doll .gear-slot:nth-child(2n){grid-column:1}.paper-doll .gear-slot:nth-child(odd){grid-column:3}.slot-label{color:#c2b795;white-space:nowrap;font-size:10px}.slot-state{color:#8a8d7d;font-size:9px}.empty-slot{width:60px;height:60px;font:29px var(--font-display);color:#8d826357;cursor:pointer;background:linear-gradient(145deg,#101611,#252820);border:1px solid #6d644349;border-radius:4px;place-items:center;display:grid;box-shadow:inset 0 2px 10px #0005}.empty-slot:hover,.is-selected .empty-slot{color:var(--gold);border-color:var(--brass)}.tools-heading{border-top:1px solid var(--line-strong);justify-content:space-between;align-items:baseline;gap:4px;margin:18px 0 12px;padding-top:16px;display:flex}.tools-heading.compact-heading{margin:12px 0 8px;padding-top:10px}.tools-heading h4{font:12px var(--font-display);margin:0}.tools-heading span{color:var(--text-muted);font-size:8px}.tool-slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.tool-slots .empty-slot{width:54px;height:54px}.tool-slots kf-item{--item-size:54px}.tool-slots .slot-label{font-size:9px}.combat-vitals{border-top:1px solid var(--line-strong);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px;padding-top:16px;display:grid}.combat-vitals div{flex-direction:column;align-items:center;gap:6px;display:flex}.combat-vitals span{color:#9eaa91;font-size:9px}.combat-vitals strong{font:17px var(--font-display);color:#d5d7bd}.bag-sheet{background:#11181455;min-width:0;padding:16px 12px}.clear-filter{color:var(--gold);cursor:pointer;background:0 0;border:0;min-height:32px;padding:7px 0 7px 8px;font-size:10px}.bag-filters{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.bag-filters label{min-width:0;color:var(--text-muted);gap:5px;font-size:10px;display:grid}.bag-filters .search-label{flex:1;min-width:120px}.bag-filters .input{width:100%;min-height:36px;font-size:11px}.bag-hint{color:var(--text-muted);min-height:28px;margin:10px 0;font-size:10px;line-height:1.6}.gear-list{flex-direction:column;gap:5px;display:flex}.gear-row{background:linear-gradient(100deg,#4e4b3024,#080d0922);border:1px solid #8c835124;border-radius:4px;align-items:center;gap:8px;padding:7px;display:flex}.gear-row:has([selected]){border-color:var(--brass);background:#78643522}.gear-copy{flex:1;min-width:0}.gear-name{text-align:left;font:11px/1.4 var(--font-display);color:#d8ceaf;cursor:pointer;background:0 0;border:0;padding:5px 0;display:block}.gear-kind{color:var(--text-muted);font-size:9px}.item-power{color:var(--gold);font-size:10px}.bag-link{width:100%;min-height:44px;margin-top:14px;font-size:10px}.empty-bag{color:var(--text-muted);padding:20px 4px;font-size:12px;line-height:1.8}.stats-page{padding:20px}.stats-page h3{font:22px var(--font-display);margin:8px 0 20px}.power-breakdown{border:1px solid var(--brass);background:linear-gradient(100deg,#b1914420,#0000);align-items:center;gap:18px;padding:16px;display:flex}.power-breakdown span{font:16px var(--font-display)}.attribute-grid{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:20px 0;display:grid}.attribute{border:1px solid var(--line-strong);background:#292b2355;flex-direction:column;gap:7px;padding:14px 10px;display:flex}.attribute span{color:#c9c2a7;text-transform:capitalize;font-size:11px}.attribute strong{font:16px var(--font-display)}.attribute small{color:var(--gold);font-size:9px}.stat-table{grid-template-columns:1fr auto;font-size:12px;display:grid}.stat-table dt,.stat-table dd{border-bottom:1px solid var(--line-strong);margin:0;padding:10px 0}.stat-table dd{text-align:right;color:var(--gold)}.stat-table dt{color:var(--text-muted)}button:focus-visible,.equipment-sheet:focus-visible,.bag-choices:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@container (width>=521px){.equipment-page{grid-template-rows:minmax(0,1fr);height:100%;min-height:0;overflow:hidden}.equipment-sheet,.bag-choices{overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-gutter:stable;min-height:0;overflow:auto}.bag-sheet{flex-direction:column;min-height:0;display:flex;overflow:hidden}.bag-sheet>:not(.bag-choices){flex-shrink:0}.bag-choices{flex:1}}@container (width<=520px){.equipment-page{grid-template-columns:1fr}.equipment-sheet{border-right:0;border-bottom:1px solid var(--line-strong)}.paper-doll,.tool-slots{max-width:340px;margin:0 auto}.gear-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gear-row{padding:6px}.gear-name{font-size:10px}.item-power{display:none}}@media (width<=600px){.loadout-tabs .tab{flex:1 0 calc(50% - 6px);font-size:10px}}@media (prefers-reduced-motion:no-preference){.hero-effigy{animation:.45s ease-out both loadout-arrive}}@keyframes loadout-arrive{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}@scope(kf-skills-masteries){:scope{display:block}.skills-sheet{padding:20px}.journal-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.eyebrow{color:var(--gold);letter-spacing:.18em;font-size:8px}h3{font:21px/1.4 var(--font-display);margin:7px 0}.total-level{text-align:right;flex:none;gap:3px;display:grid}.total-level strong{font:28px var(--font-display);color:#e5cc83}.total-level span{color:var(--text-muted);font-size:9px}.journal-caption{color:var(--text-muted);margin:8px 0 18px;font-size:12px;line-height:1.65}.skill-filters{flex-wrap:wrap;gap:5px;margin-bottom:12px;display:flex}.skill-filters button{border:1px solid var(--line-strong);min-height:36px;color:var(--text-muted);font:10px var(--font-display);cursor:pointer;background:#151c18;border-radius:3px;padding:8px 11px}.skill-filters button.is-active{border-color:var(--brass);color:#e5cc83;background:#8d723d24}.skill-search{margin-bottom:16px;display:block}.skill-search input{width:100%;font-size:12px}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.progress-card{background:linear-gradient(125deg,#34382b55,#111a16aa);border:1px solid #8e855039;border-radius:4px;min-width:0;padding:13px}.skill-chat-link{min-height:30px;margin-top:10px;font-size:10px}.progress-head{align-items:center;gap:9px;min-height:38px;margin-bottom:12px;display:flex}.skill-icon{width:34px;height:34px;color:var(--gold);flex:none;place-items:center;font-size:24px;display:grid}.skill-icon img{object-fit:contain;width:100%;height:100%}.progress-name{flex-direction:column;flex:1;align-items:start;gap:4px;min-width:0;display:flex}.progress-name strong{font:12px/1.45 var(--font-display);color:#ded5b9;overflow-wrap:anywhere}.progress-level{font:13px var(--font-display);color:#e5cc83;flex:none}.xp-meter{background:#070e0bb3;border-radius:3px;height:5px;overflow:hidden;box-shadow:inset 0 1px 2px #0006}.xp-meter>span{border-radius:inherit;background:linear-gradient(90deg,#596b41,#b1bd74);height:100%;display:block}.progress-foot{color:#a8ac96;flex-wrap:wrap;justify-content:space-between;gap:4px 8px;margin-top:8px;font-size:9px;display:flex}.is-mastered{border-color:#a68b4e80}.is-mastered .xp-meter>span{background:linear-gradient(90deg,#8d7138,#e5cc83)}.mastery-list{gap:10px;display:grid}.mastery-family{background:#131a1566;border:1px solid #8e855039;border-radius:4px}.mastery-family summary{cursor:pointer;align-items:center;list-style:none;display:flex}.mastery-family summary::-webkit-details-marker{display:none}.mastery-family summary .progress-card{background:0 0;border:0;flex:1}.expand-mark{color:var(--gold);margin-right:16px;transition:transform .18s}.mastery-family[open] .expand-mark{transform:rotate(180deg)}.mastery-branch{border-left:1px solid #a68b4e66;gap:8px;margin:0 14px 14px 30px;padding-left:12px;display:grid}.mastery-bonus{color:#ba7;margin:9px 0 0;font-size:10px;line-height:1.6}.family-description{color:var(--text-muted);margin:0 0 5px;font-size:11px;line-height:1.6}.equipped-badge{color:#baca8c;background:#667b2d20;border:1px solid #81935855;border-radius:2px;padding:2px 5px;font-size:8px}.is-equipped{border-color:#899b5c66}.mastery-card kf-item{--item-size:36px;flex:none}.progress-status{color:#d4c49a;background:#8d713818;border:1px solid #a68b4e66;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;padding:12px;font-size:11px;line-height:1.6;display:flex}.progress-status.is-error{color:#e5a497;border-color:#ac756877}.progress-status button{min-height:36px;color:var(--gold);border:1px solid var(--brass);cursor:pointer;background:0 0;flex:none;padding:7px;font-size:10px}.empty-progress{color:var(--text-muted);grid-column:1/-1;padding:20px 0;font-size:12px;line-height:1.8}button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@container (width<=460px){.skills-sheet{padding:16px 12px}.skill-grid{grid-template-columns:1fr}h3{font-size:18px}.total-level strong{font-size:23px}.skill-filters button{flex:1;min-height:40px}}@media (prefers-reduced-motion:reduce){.expand-mark{transition:none}}}@scope(kf-skills-masteries){.projected-xp{color:var(--gold);margin:0;padding-top:6px;font-size:11px}}@scope(kf-skills-masteries){.skill-unlocks{margin-top:12px}.skill-unlocks summary{color:var(--gold);cursor:pointer}.skill-unlocks button{text-align:left;width:100%;margin-top:6px;display:block}}
