.fantasy-theme{--fy-background: #100E10;--fy-panel: #1C1719;--fy-raised: #292125;--fy-text: #E8D6BD;--fy-muted: #B7A79A;--fy-borderDecorative: #66504A;--fy-borderControl: #92766B;--fy-primary: #B52D32;--fy-primaryHover: #A2262D;--fy-primaryPressed: #8C1F27;--fy-dangerText: #FF8589;--fy-candle: #E78A45;--fy-gold: #D5AD62;--fy-success: #83A88A;--fy-onPrimary: #FFF1DF;--fy-focus: #E8D6BD;--fy-rarity-common: #a1a9b6;--fy-rarity-uncommon: #74c98b;--fy-rarity-rare: #77b4f1;--fy-rarity-epic: #c797f4;--fy-rarity-legendary: #f1c453;--fy-space-4: 4px;--fy-space-8: 8px;--fy-space-12: 12px;--fy-space-16: 16px;--fy-space-24: 24px;--fy-space-32: 32px;--fy-font-data: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fy-font-heading: Georgia, "Times New Roman", serif;--fy-touch: 44px;--fy-duration: .15s;--fy-safe-top: env(safe-area-inset-top, 0px);--fy-safe-bottom: env(safe-area-inset-bottom, 0px)}.fantasy-theme{color:var(--fy-text);background:var(--fy-background);font:16px/1.5 var(--fy-font-data);color-scheme:dark;font-variant-numeric:tabular-nums}.fantasy-theme *,.fantasy-theme *:before,.fantasy-theme *:after{box-sizing:border-box}.fantasy-theme :where(h1,h2,h3,p){margin:0;overflow-wrap:anywhere}.fantasy-theme :where(h1,h2,h3){font-family:var(--fy-font-heading);font-weight:600}.fantasy-theme h1{font-size:28px;line-height:1.2}.fantasy-theme h3{font-size:20px;line-height:1.3}.fantasy-theme :where(button,a){-webkit-tap-highlight-color:transparent;touch-action:manipulation}.fantasy-theme button{font:inherit;cursor:pointer}.fantasy-theme button:disabled{cursor:not-allowed}.fantasy-theme a{color:var(--fy-text)}.fantasy-theme .fy-muted{color:var(--fy-muted)}.fantasy-theme .fy-caption{color:var(--fy-muted);font-size:13px;line-height:18px}.fantasy-theme .fy-error{color:var(--fy-dangerText)}.fantasy-theme .fy-eyebrow{color:var(--fy-gold);letter-spacing:.14em;text-transform:uppercase;font-size:12px;line-height:20px}.fantasy-theme .fy-panel{min-width:0;border:1px solid var(--fy-borderDecorative);background:var(--fy-panel);box-shadow:inset 0 0 0 3px var(--fy-background),inset 0 0 0 4px var(--fy-borderDecorative),0 8px 24px #0005}.fantasy-theme .fy-panel__title{display:flex;align-items:center;gap:12px;padding:14px 16px;font-size:22px;line-height:28px;border-bottom:1px solid var(--fy-borderDecorative);background:linear-gradient(90deg,#292125,#1c1719)}.fantasy-theme .fy-panel__title:before{content:"";flex:0 0 8px;width:8px;height:8px;background:var(--fy-gold);box-shadow:3px 3px #66504a;transform:rotate(45deg)}.fantasy-theme .fy-panel__body{display:grid;gap:16px;padding:18px 16px;min-width:0}.fantasy-theme .fy-button,.fantasy-theme .fy-icon-button{min-width:var(--fy-touch);min-height:48px;padding:10px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--fy-borderControl);border-radius:2px;text-decoration:none;font-weight:600;transition:background-color var(--fy-duration),box-shadow var(--fy-duration);overflow-wrap:anywhere}.fantasy-theme .fy-button--primary{background:var(--fy-primary);color:var(--fy-onPrimary);box-shadow:inset 0 0 0 3px #0003}.fantasy-theme .fy-button--secondary,.fantasy-theme .fy-icon-button{background:var(--fy-raised);color:var(--fy-text)}.fantasy-theme .fy-button--danger{background:var(--fy-panel);color:var(--fy-dangerText)}@media(hover:hover){.fantasy-theme .fy-button--primary:hover:not(:disabled){background:var(--fy-primaryHover)}.fantasy-theme .fy-button--secondary:hover:not(:disabled){background:var(--fy-panel)}}.fantasy-theme .fy-button:active:not(:disabled){background:var(--fy-primaryPressed);color:var(--fy-onPrimary);box-shadow:inset 0 2px 4px #0008}.fantasy-theme .fy-button[aria-pressed=true]{outline:1px solid var(--fy-gold);outline-offset:-4px}.fantasy-theme .fy-button:disabled{background:var(--fy-raised);color:var(--fy-muted);border-style:dashed;box-shadow:none}.fantasy-theme .fy-header{display:flex;gap:12px;align-items:center;padding:calc(16px + var(--fy-safe-top)) 0 16px;border-bottom:1px solid var(--fy-borderDecorative)}.fantasy-theme .fy-header__title{flex:1;min-width:0}.fantasy-theme .fy-header__actions{display:flex;gap:8px;flex-wrap:wrap}.fantasy-theme .fy-icon-button{padding:8px;font-size:24px}.fantasy-theme .fy-navigation{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--fy-borderControl);background:var(--fy-panel);padding-bottom:var(--fy-safe-bottom)}.fantasy-theme .fy-navigation a{display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;min-height:76px;min-width:0;padding:8px 2px;text-align:center;text-decoration:none;font-size:11px;line-height:14px;overflow-wrap:anywhere;border:1px solid transparent}.fantasy-theme .fy-navigation a[aria-current=page]{background:var(--fy-primaryPressed);color:var(--fy-onPrimary);border-color:var(--fy-borderControl);box-shadow:inset 0 3px var(--fy-candle)}.fantasy-theme .fy-nav-symbol{font-size:24px;line-height:26px;color:var(--fy-gold)}.fantasy-theme .fy-progress{display:grid;gap:8px}.fantasy-theme .fy-progress__label{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;font-size:14px}.fantasy-theme progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:12px;border:1px solid var(--fy-borderControl);border-radius:2px;overflow:hidden;background:var(--fy-background);accent-color:var(--fy-primary)}.fantasy-theme progress::-webkit-progress-bar{background:var(--fy-background)}.fantasy-theme progress::-webkit-progress-value{background:var(--fy-primary);border-top:2px solid var(--fy-dangerText)}.fantasy-theme progress::-moz-progress-bar{background:var(--fy-primary)}.fantasy-theme .fy-progress__empty{height:12px;border:1px dashed var(--fy-borderControl)}.fantasy-theme .fy-stat{display:grid;align-content:start;gap:4px;padding:12px;background:var(--fy-background);border-left:2px solid var(--fy-borderDecorative);min-width:0}.fantasy-theme .fy-stat strong{font:600 26px/32px var(--fy-font-heading);overflow-wrap:anywhere}.fantasy-theme .fy-stat small{font:14px var(--fy-font-data)}.fantasy-theme [data-rarity]{--fy-rarity:var(--fy-rarity-common)}.fantasy-theme [data-rarity=uncommon]{--fy-rarity:var(--fy-rarity-uncommon)}.fantasy-theme [data-rarity=rare]{--fy-rarity:var(--fy-rarity-rare)}.fantasy-theme [data-rarity=epic]{--fy-rarity:var(--fy-rarity-epic)}.fantasy-theme [data-rarity=legendary]{--fy-rarity:var(--fy-rarity-legendary)}.fantasy-theme .fy-slot{display:grid;place-items:center;align-content:start;gap:6px;min-height:144px;min-width:44px;padding:12px 6px;background:var(--fy-background);color:var(--fy-text);border:1px solid var(--fy-rarity);box-shadow:inset 0 0 0 3px var(--fy-panel)}.fantasy-theme .fy-slot small{color:var(--fy-muted);font-size:12px}.fantasy-theme .fy-slot[aria-pressed=true],.fantasy-theme .fy-item[data-selected]{outline:2px solid var(--fy-focus);outline-offset:2px}.fantasy-theme .fy-slot:disabled{border-style:dashed;color:var(--fy-muted)}.fantasy-theme :where(.fy-slot,.fy-item) img{object-fit:contain;image-rendering:pixelated}.fantasy-theme .fy-image-fallback{display:grid;place-items:center;width:48px;height:48px;flex-shrink:0;color:var(--fy-muted);font-size:32px;border:1px dashed var(--fy-borderControl)}.fantasy-theme .fy-item{padding:16px;min-width:0;display:grid;gap:12px;border:1px solid var(--fy-rarity);background:var(--fy-background)}.fantasy-theme .fy-item__identity{display:flex;gap:12px;align-items:center}.fantasy-theme .fy-item__identity>div{min-width:0}.fantasy-theme .fy-rarity{color:var(--fy-rarity);font-size:13px}.fantasy-theme .fy-state{display:grid;justify-items:start;gap:8px;padding:16px;border:1px dashed var(--fy-borderControl)}.fantasy-theme .fy-state p{color:var(--fy-muted)}.fantasy-theme .fy-state--error strong,.fantasy-theme .fy-state--error .fy-state__symbol{color:var(--fy-dangerText)}.fantasy-theme .fy-state__symbol{color:var(--fy-gold);font-size:24px}.fantasy-theme .fy-spinner{display:inline-block;width:16px;height:16px;flex-shrink:0;border:2px solid currentColor;border-right-color:transparent;animation:fy-spin 1s steps(8) infinite}@keyframes fy-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.fantasy-theme{--fy-duration:0ms}.fantasy-theme *,.fantasy-theme *:before,.fantasy-theme *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.fantasy-theme :where(button,a,input,select):focus-visible{outline:2px solid var(--fy-focus);outline-offset:3px}.fantasy-theme .fy-button:focus-visible,.fantasy-theme .fy-slot:focus-visible{outline:2px solid var(--fy-focus);outline-offset:3px}.fantasy-theme .fy-slot>span,.fantasy-theme .fy-slot>small{max-width:100%;min-width:0;overflow-wrap:anywhere}
