:root{color:#f8f4eb;background:#0d1326;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;overflow-x:hidden}body,#root{min-height:100vh;min-height:100dvh}body{margin:0;background:radial-gradient(circle at 50% -12%,rgb(73 90 138 / 38%),transparent 42rem),#0d1326}:focus-visible{outline:3px solid #ffd66b;outline-offset:4px}.app-shell{display:grid;width:min(100%,1280px);min-height:100vh;min-height:100dvh;margin:0 auto;padding:16px;align-content:center;gap:clamp(14px,2.2vh,22px)}.app-shell>*{min-width:0}.hero-header{text-align:center}.eyebrow{margin:0;color:#e7ca83;font-size:clamp(.69rem,2vw,.78rem);font-weight:750;letter-spacing:.14em;text-transform:uppercase}h1{margin:.2rem 0 0;color:#fffaf0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.35rem,8vw,4.75rem);line-height:.95;text-shadow:0 3px 18px rgb(0 0 0 / 45%)}.campaign-panel{display:grid;width:min(100%,70rem);min-width:0;margin-inline:auto;gap:7px;padding:clamp(14px,3vw,22px);border:2px solid #ffd66b;border-radius:14px;color:#fffaf0;background:#101a33;box-shadow:0 12px 30px #00000052}.campaign-panel p,.campaign-panel h2{min-width:0;margin:0;overflow-wrap:anywhere}.campaign-chapter,.campaign-status{color:#ffe08a;font-size:.78rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.campaign-panel h2{color:#fff;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.45rem,5vw,2rem)}.campaign-instruction{color:#e3eaff;line-height:1.45}button{min-height:44px}.campaign-panel button{width:fit-content;max-width:100%;margin-top:5px;padding:10px 16px;border:2px solid #fff1bd;border-radius:10px;color:#101a33;background:#ffd66b;font:inherit;font-weight:800;cursor:pointer}.campaign-panel button:hover{background:#fff1bd}.hero-panel{display:grid;width:min(100%,70rem);min-width:0;margin-inline:auto;gap:10px;padding:clamp(14px,3vw,20px);border:1px solid rgb(231 202 131 / 35%);border-radius:14px;background:#18223eeb}.hero-panel p{margin:0}.hero-level-row{display:flex;justify-content:space-between;gap:12px;color:#fffaf0;font-size:.88rem;font-weight:800}.hero-panel progress{width:100%;min-height:12px;accent-color:#ffd66b}.hero-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}.hero-stats>div{min-width:0;padding:9px 10px;border-radius:10px;text-align:center;background:#0d132694}.hero-stats dt{color:#c8d1e8;font-size:.7rem;font-weight:800;letter-spacing:.08em}.hero-stats dd{margin:.18rem 0 0;overflow-wrap:anywhere;color:#fff;font-size:clamp(1rem,3vw,1.25rem);font-variant-numeric:tabular-nums;font-weight:800}.level-up-message{margin:0;color:#fff4bf;font-weight:800}.equipment-panel{display:grid;width:min(100%,76rem);min-width:0;margin-inline:auto;gap:18px;padding:clamp(16px,3vw,28px);border:1px solid rgb(231 202 131 / 42%);border-radius:20px;background:linear-gradient(145deg,#222d4ef5,#0f1831fa);box-shadow:0 20px 55px #00000052}.section-heading,.inventory-heading{display:flex;min-width:0;align-items:end;justify-content:space-between;gap:16px}.section-heading h2,.inventory-heading h3,.comparison-panel h3{margin:0;color:#fffaf0;font-family:Georgia,Times New Roman,serif}.section-heading h2{font-size:clamp(1.8rem,5vw,2.6rem)}.section-heading>p,.inventory-heading span{margin:0;color:#b9c6e5;font-size:.82rem;font-weight:700}.equipment-stage{display:grid;min-width:0;grid-template-areas:"hat cape ari top shoulder" "bottom belt ari gloves shoes" "ring ring2 ari necklace eye" "face earring ari . .";grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:12px;border:1px solid rgb(255 214 107 / 18%);border-radius:16px;background:radial-gradient(circle at 50% 48%,rgb(255 214 107 / 12%),transparent 28%),#080f2285}.equipment-slot,.ari-medallion,.inventory-item{min-width:0;border-radius:12px}.equipment-slot{display:grid;min-height:94px;align-content:center;gap:3px;padding:10px;border:1px solid rgb(184 196 221 / 35%);overflow-wrap:anywhere;background:#141e39e0}.equipment-slot[data-slot=Hat]{grid-area:hat}.equipment-slot[data-slot=Cape]{grid-area:cape}.equipment-slot[data-slot=Top]{grid-area:top}.equipment-slot[data-slot=Shoulder]{grid-area:shoulder}.equipment-slot[data-slot=Bottom]{grid-area:bottom}.equipment-slot[data-slot=Belt]{grid-area:belt}.equipment-slot[data-slot=Gloves]{grid-area:gloves}.equipment-slot[data-slot=Shoes]{grid-area:shoes}.equipment-slot[data-slot=Ring]{grid-area:ring}.equipment-slot[data-slot="Ring 2"]{grid-area:ring2}.equipment-slot[data-slot=Necklace]{grid-area:necklace}.equipment-slot[data-slot=Eye]{grid-area:eye}.equipment-slot[data-slot=Face]{grid-area:face}.equipment-slot[data-slot=Earring]{grid-area:earring}.slot-name,.item-rarity{font-size:.67rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.slot-name{color:#aebbd9}.equipment-slot strong,.inventory-item strong{overflow-wrap:anywhere;color:#fff;font-size:.82rem}.equipment-slot>span:last-child,.inventory-item>span:last-child,.empty-label{color:#bdc8df;font-size:.7rem}.ari-medallion{grid-area:ari;display:grid;min-height:100%;place-content:center;place-items:center;gap:6px;padding:16px 8px;border:2px solid #ffd66b;color:#fff4bf;text-align:center;background:radial-gradient(circle,#5f77b1c2,#1e2a4ef5 66%);box-shadow:inset 0 0 30px #ffd66b1f}.ari-medallion strong{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.5rem,4vw,2.2rem)}.ari-medallion span:not(.ari-crown){color:#d9e2f5;font-size:.76rem;font-weight:750}.ari-crown{color:#ffd66b;font-size:2rem;line-height:1}.rarity-normal{border-color:#9aa6b8}.rarity-normal .item-rarity{color:#c6ced9}.rarity-rare{border-color:#61a9ff}.rarity-rare .item-rarity{color:#83bcff}.rarity-epic{border-color:#c887ff}.rarity-epic .item-rarity{color:#d8a9ff}.rarity-unique{border-color:#ffad5c}.rarity-unique .item-rarity{color:#ffc17f}.rarity-legendary{border-color:#ffd84d;box-shadow:inset 0 0 18px #ffd84d1a}.rarity-legendary .item-rarity{color:#ffe374}.primary-action{min-height:44px;padding:10px 18px;border:2px solid #fff1bd;border-radius:10px;color:#101a33;background:#ffd66b;font:inherit;font-weight:850;cursor:pointer}.primary-action:hover{background:#fff1bd}.equip-best{width:min(100%,17rem);justify-self:center}.inventory-panel{display:grid;min-width:0;gap:10px}.inventory-grid{display:grid;min-width:0;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:9px}.inventory-item{display:grid;min-height:76px;align-content:center;gap:2px;padding:10px 12px;border-width:1px;border-style:solid;color:#fff;text-align:left;background:#0a1227c2;cursor:pointer}.inventory-item:hover,.inventory-item.is-selected{background:#2f3d68eb}.inventory-item.is-selected{box-shadow:0 0 0 2px #fff1bd}.empty-inventory{margin:0;padding:16px;border:1px dashed rgb(184 196 221 / 34%);border-radius:12px;color:#b9c6e5;text-align:center}.comparison-panel{display:grid;min-width:0;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;border:1px solid #8fa2c9;border-left-width:5px;border-radius:14px;background:#0a1227c7}.comparison-panel p{margin:4px 0 0;color:#bbc7df;font-size:.78rem}.comparison-panel .comparison-result{margin:0 0 4px;font-weight:850}.comparison-positive{border-left-color:#73d69c}.comparison-positive .comparison-result{color:#8ee8b2}.comparison-neutral{border-left-color:#c3ccdc}.comparison-neutral .comparison-result{color:#dbe2ee}.comparison-negative{border-left-color:#ff8e98}.comparison-negative .comparison-result{color:#ffabb2}.comparison-stats{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;margin:0}.comparison-stats div{display:flex;min-width:0;justify-content:space-between;gap:8px}.comparison-stats dt{overflow-wrap:anywhere;color:#aebbd9;font-size:.69rem}.comparison-stats dd{margin:0;color:#fff;font-size:.74rem;font-weight:800}.drop-message{margin:0;padding:11px 14px;border:1px solid #ffd66b;border-radius:11px;color:#fff4bf;font-weight:800;text-align:center;background:#57431685}.battle-card{width:min(100%,max(18rem,calc((100dvh - 18rem) * 16 / 9)));min-height:min(10rem,45dvh);aspect-ratio:16 / 9;margin-inline:auto;overflow:hidden;border:1px solid rgb(248 244 235 / 28%);border-radius:clamp(12px,2vw,20px);background:#182443;box-shadow:0 18px 48px #00000061}.battle-host,.battle-host canvas{display:block;width:100%!important;height:100%!important}.diagnostics{display:grid;width:min(100%,70rem);margin-inline:auto;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;color:#f8f4eb}.diagnostics dl{display:contents;margin:0}.status-chip,.diagnostics dl>div{min-width:0;margin:0;padding:12px 14px;border:1px solid rgb(231 202 131 / 25%);border-radius:12px;background:#18223ee0}.status-chip{display:grid;place-items:center;color:#fff4bf;font-size:.8rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.diagnostics dt{overflow-wrap:anywhere;color:#c8d1e8;font-size:.72rem;font-weight:700;letter-spacing:.04em;line-height:1.3;text-transform:uppercase}.diagnostics dd{margin:.22rem 0 0;color:#fff;font-size:clamp(1.05rem,3vw,1.35rem);font-variant-numeric:tabular-nums;font-weight:750;line-height:1.1}.diagnostics [role=alert]{grid-column:1 / -1;margin:0;padding:12px 14px;border:1px solid #ff8f8f;border-radius:12px;color:#fff1f1;background:#641e2a}@media(max-width:639px){.campaign-panel button{width:100%}.diagnostics,.hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading,.inventory-heading{align-items:start;flex-direction:column;gap:5px}.equipment-stage{grid-template-areas:none;grid-template-columns:minmax(0,1fr);padding:8px}.ari-medallion,.equipment-slot[data-slot]{grid-area:auto}.ari-medallion{min-height:150px;order:-1}.equipment-slot{min-height:78px}.equip-best{width:100%}.inventory-grid,.comparison-panel,.comparison-stats{grid-template-columns:minmax(0,1fr)}.comparison-panel .primary-action{width:100%}.status-chip,.diagnostics dl>div{padding:10px 11px}}@media(min-width:640px){.app-shell{padding:28px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.account-bar{position:sticky;top:0;z-index:40;display:flex;min-height:56px;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;border-bottom:1px solid rgb(255 214 107 / 28%);color:#fffaf0;background:#0d1326f5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.account-actions,.dialog-actions{display:flex;flex-wrap:wrap;gap:10px}.account-bar button,.dialog-actions button{min-height:44px;padding:9px 14px;border:1px solid #b8c4dd;border-radius:9px;color:#fffaf0;background:#1d2a4d;font:inherit;font-weight:750;cursor:pointer}.account-bar button:disabled,.dialog-actions button:disabled{cursor:not-allowed;opacity:.55}.dialog-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:16px;background:#040812d1}.reset-dialog{display:grid;width:min(100%,34rem);max-height:min(90vh,44rem);gap:16px;overflow-y:auto;padding:clamp(20px,5vw,32px);border:2px solid #ff8e98;border-radius:18px;color:#fffaf0;background:#151d36;box-shadow:0 24px 80px #00000094}.reset-dialog h2,.reset-dialog p{margin:0}.reset-dialog label{display:grid;gap:7px;font-weight:750}.reset-dialog input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #c6d0e5;border-radius:9px;color:#10172b;background:#fff;font:inherit}.dialog-actions{justify-content:flex-end}.dialog-actions .destructive-action{border-color:#ffd5d8;color:#fff;background:#9c2635}.dialog-actions .destructive-action:hover:not(:disabled){background:#bc3042}@media(max-width:520px){.account-bar{align-items:stretch;flex-direction:column}.account-actions,.dialog-actions{display:grid;grid-template-columns:1fr}.account-actions button,.dialog-actions button{width:100%}}@media(prefers-reduced-motion:no-preference){.reset-dialog{animation:reset-dialog-in .14s ease-out}@keyframes reset-dialog-in{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}}.auth-shell{display:grid;min-height:100dvh;place-items:center;padding:16px}.auth-panel,.dialog-panel{display:grid;width:min(100%,34rem);gap:16px;padding:24px;border:1px solid #ffd66b;border-radius:18px;color:#edf2ff;background:#151f3b}.auth-panel form,.auth-panel label{display:grid;gap:8px}.auth-panel input,.reset-dialog input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #aebbd9;border-radius:10px;color:#fff;background:#0c152c;font:inherit}.auth-actions,.account-actions,.dialog-actions{display:flex;flex-wrap:wrap;gap:10px}.account-bar{position:sticky;z-index:40;top:0;display:flex;min-height:56px;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;border-bottom:1px solid rgb(255 214 107 / 30%);color:#fff4bf;background:#0a1227f5}.dialog-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:16px;overflow-y:auto;background:#030712d1}.dialog-panel{max-height:calc(100dvh - 32px);overflow-y:auto;box-shadow:0 28px 90px #0000008c}.reset-dialog{border-color:#ff8e98}.danger-action{min-height:44px;padding:10px 16px;border:2px solid #ffc2c7;border-radius:10px;color:#fff;background:#8e2634;font:inherit;font-weight:850}.offline-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.offline-summary>div,.offline-drops li{padding:10px 12px;border-radius:10px;background:#0d1731}.offline-summary dd{margin:4px 0 0;color:#fff4bf;font-weight:850}.offline-drops ul{display:grid;max-height:16rem;gap:8px;margin:0;padding:0;overflow-y:auto;list-style:none}.offline-drops li{display:grid;gap:3px;border:1px solid rgb(174 187 217 / 30%)}button:disabled{cursor:not-allowed;opacity:.58}@media(max-width:420px){.account-bar,.account-actions,.dialog-actions{align-items:stretch;flex-direction:column}.offline-summary{grid-template-columns:1fr}}
