@font-face{font-family:LocalKorean;src:local('Pretendard'),local('Malgun Gothic')}*{box-sizing:border-box}body{margin:0;background:#10131a;color:#e9e8e5;font-family:LocalKorean,'Segoe UI',sans-serif;font-size:16px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0;background:none;transition:background .18s,transform .18s,border-color .18s}button:hover{color:#fff}button:active{transform:translateY(1px)}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid #f5bb7e;outline-offset:4px}input,select{background:#171d27;color:#e9e8e5;border:1px solid #303743;padding:11px 13px;border-radius:5px}input[type=checkbox]{accent-color:#e4ac70;width:14px;height:14px;vertical-align:middle;margin:0 6px 0 0}a{color:inherit;text-decoration:none}h1,h2,p{margin:0}small{font-size:14px}h1{font-size:28px;letter-spacing:-1.1px;font-weight:650}h2{font-size:20px;font-weight:600;letter-spacing:-.6px}p{line-height:1.7}.shell{display:flex;min-height:100vh}.sidebar{width:218px;flex-shrink:0;border-right:1px solid #282c33;background:#12151c;padding:28px 19px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;gap:9px;align-items:center;font-family:Georgia,serif;font-size:16px;letter-spacing:1.2px}.brand small{display:block;font-family:LocalKorean,sans-serif;font-size:13px;letter-spacing:2.8px;color:#9d9488;margin-top:7px}.brand-mark{color:#e5ac70;font-size:48px;line-height:1;text-shadow:0 0 25px #d8953f44}.chapter-label{font-size:12px;letter-spacing:1.8px;color:#6e7684;margin:43px 10px 16px}.chapter-label i{display:inline-block;width:4px;height:4px;background:#bd9362;margin-left:4px}.nav{width:100%;display:flex;align-items:center;gap:12px;padding:15px 13px;text-align:left;color:#949aa7;border-radius:5px;margin-bottom:7px;font-size:15px}.nav span{font-size:20px;width:20px;color:#7e8796}.nav b{margin-left:auto;font-size:13px;font-weight:400;opacity:.4}.nav.active{background:linear-gradient(100deg,#71503538,#76533812);color:#e8ba87;box-shadow:inset 2px 0 #e2aa6d}.nav.active span{color:#e8ba87}.nav:hover{background:#ffffff08}.sidebar-card{border:1px solid #34302c;background:linear-gradient(135deg,#46312228,transparent);padding:18px 14px;margin-top:31px;border-radius:5px}.sidebar-card small{color:#bd946c}.sidebar-card p{font-size:15px;line-height:1.8;margin:9px 0 17px;color:#b8b8bb}.subtle{background:#af7b4722;border:1px solid #976d3f35;border-radius:4px;width:100%;padding:10px 5px;font-size:14px;color:#e1b485}.subtle span{font-size:13px;margin-left:5px}.side-bottom{margin-top:auto;padding-top:28px;display:flex;flex-direction:column;align-items:flex-start;gap:15px;color:#89909c}.side-bottom>button{font-size:14px}.settings{display:flex;gap:6px;border-top:1px solid #242a33;padding-top:15px}.settings button{font-size:14px;padding:0 3px}.side-bottom small{font-size:12px;color:#575f6c;letter-spacing:.7px}.connection{font-size:14px;color:#7ba88b}.main-wrap{flex:1;min-width:0}.topbar{height:76px;border-bottom:1px solid #292d35;display:flex;align-items:center;justify-content:space-between;padding:0 32px;font-size:14px;color:#9ea4b0}.topbar>div{display:flex;align-items:center;gap:10px}.live-dot,.online-dot{width:5px;height:5px;display:inline-block;background:#91ba95;box-shadow:0 0 8px #91ba9555;border-radius:50%}.divider{color:#434954;padding:0 5px}.wallet{color:#f3c786;font-size:16px}.wallet>span:first-child{color:#a9b7e5;font-size:15px;margin-right:20px}.wallet .gold-icon{font-size:23px}.wallet small{color:#9d927c}.content-wrap{display:flex;max-width:1800px;margin:auto}main{padding:30px 28px 28px;min-width:0;flex:1}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:12px}.eyebrow{font-size:12px;letter-spacing:2.4px;color:#b18c65;display:block;margin-bottom:10px}.page-heading p{font-size:14px;color:#7d8795;margin-top:9px}.season-badge{font-size:12px;letter-spacing:2px;color:#847969;line-height:2.2;text-align:right;white-space:nowrap}.season-badge b{font-size:14px;letter-spacing:.5px;color:#c2ab8c;font-weight:400}.view[hidden]{display:none}.forge-layout{display:grid;grid-template-columns:minmax(280px,1fr) 230px;border:1px solid #33343b;border-radius:7px;overflow:hidden;background:#141820}.forge-stage{height:465px;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 47%,#75532d28,transparent 65%),linear-gradient(#10151e,#171b22 75%,#11161c)}.scene-top{position:absolute;left:21px;right:20px;top:21px;display:flex;justify-content:space-between;font-size:14px;color:#b0a18c;z-index:4}.live-tag{font-size:12px;letter-spacing:1.2px;color:#9e895f}.arch{position:absolute;width:73%;height:90%;border-radius:180px 180px 0 0;left:13.5%;top:46px;border:1px solid #b9965320;box-shadow:inset 0 0 0 12px #a080402,0 0 0 12px #a0804008}.arch:after{content:'';position:absolute;inset:17px;border:1px solid #9c794010;border-radius:inherit}.ambient-orb{position:absolute;width:260px;height:260px;top:80px;left:calc(50% - 130px);background:radial-gradient(#d1914d24,transparent 66%);filter:blur(15px);animation:breathe 5s ease-in-out infinite}.weapon{background-image:none;background-size:400% 1200%;background-repeat:no-repeat;aspect-ratio:1;width:100%;filter:drop-shadow(0 0 14px #eabd7650)}.hero-weapon{position:absolute;left:calc(50% - 160px);top:58px;width:320px;z-index:3;animation:float 5s ease-in-out infinite;transform-origin:center}.hero-weapon.empty{opacity:.15;filter:grayscale(1)}.hero-weapon.shattered{animation:shatter .8s forwards}.hero-weapon.charging{animation:charge .16s infinite alternate}.hero-weapon.reveal{animation:reveal .9s ease-out}.pedestal{position:absolute;width:224px;height:58px;left:calc(50% - 112px);bottom:90px;background:linear-gradient(180deg,#38332d,#181c24 45%,#262625 70%,#12151b);border-radius:50%;border-top:2px solid #9f845153;box-shadow:0 18px 20px #0007,0 -2px 25px #f6b66611;z-index:1}.pedestal:after{content:'';position:absolute;inset:8px 12px 20px;border-radius:50%;border:1px solid #c49a5955;background:radial-gradient(ellipse,#d5a96c11,#151820)}.pedestal-ring{width:300px;height:65px;border:1px solid #b68c3e44;position:absolute;left:calc(50% - 150px);bottom:99px;border-radius:50%;box-shadow:0 0 20px #bb7b1c18}.rune-ring{position:absolute;left:calc(50% - 116px);top:101px;width:232px;height:232px;border:1px solid #cca76425;border-radius:50%;animation:spin 60s linear infinite;box-shadow:0 0 0 11px #daa55c08,0 0 0 12px #daa55c12}.rune-ring span{position:absolute;color:#cda16285;font-size:16px}.rune-ring span:nth-child(1){top:-8px;left:109px}.rune-ring span:nth-child(2){bottom:-8px;left:109px}.rune-ring span:nth-child(3){top:109px;left:-8px}.rune-ring span:nth-child(4){top:109px;right:-8px}.weapon-title{position:absolute;bottom:23px;text-align:center;width:100%;z-index:5}.weapon-title small{letter-spacing:3px;color:#9a805f;font-size:12px}.weapon-title h2{font-size:20px;margin:8px 0}.weapon-title em{font-style:normal;color:#efb66b;margin-left:7px;font-family:Georgia,serif}.weapon-title p{color:#6d7785;font-size:14px}.forge-controls{padding:21px 19px;border-left:1px solid #30323a;background:#191d25}.section-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:15px}.section-title small{font-size:13px;color:#727d8b}.level-line{display:flex;align-items:center;justify-content:center;gap:26px;margin:24px 0;font-family:Georgia,serif;font-size:31px;color:#b1b6be}.level-line strong{color:#efc28a;font-weight:400}.level-arrow{color:#5b5f68;font-size:24px}.rate-track{display:flex;height:3px;border-radius:2px;overflow:hidden;background:#30363e}.rate-track span:nth-child(1){background:#95bca3}.rate-track span:nth-child(2){background:#838a9e}.rate-track span:nth-child(3){background:#be756b}.odds{display:flex;justify-content:space-between;margin-top:12px;font-size:13px;color:#828c98}.odds b{display:block;color:#d4d7dc;margin:7px 0 0 9px;font-size:15px;font-weight:500}.dot{display:inline-block;width:4px;height:4px;border-radius:50%;margin-right:4px}.dot.success{background:#95bca3}.dot.stay{background:#838a9e}.dot.destroy{background:#be756b}.muted{color:#7e8794}.pity{font-size:12px;margin:12px 0 15px}.stat-line{display:flex;justify-content:space-between;margin:10px 0;color:#8b929e;font-size:14px}.stat-line strong{color:#cbd0d8;font-weight:500}.stat-line .gold,.gold{color:#e6ba7e}.primary{background:linear-gradient(110deg,#dfae76,#f0c492);border:1px solid #efc394;color:#29211b;font-weight:700;border-radius:4px;padding:13px 17px;font-size:15px;box-shadow:0 3px 15px #a36c2415}.primary:hover{background:#f5cfa1;color:#241a11;box-shadow:0 0 25px #c08b3630}.forge-button{width:100%;margin-top:6px}.protection{text-align:center;margin:13px 0 0}.protection label{font-size:14px;color:#b2b8c4;display:block}.protection small{display:block;font-size:12px;color:#6e7786;margin-top:6px}.control-divider{height:1px;background:#30343e;margin:16px 0}.secondary{padding:11px 9px;border:1px solid #41434a;border-radius:4px;width:100%;font-size:14px;text-align:left;color:#ccd0d5}.secondary b{float:right;font-size:13px;color:#c7aa83;font-weight:400}.secondary:hover{background:#ffffff08}.text-button{font-size:14px;color:#919ba9;display:flex;align-items:center;justify-content:space-between;gap:12px}.forge-controls .text-button{width:100%;margin-top:12px}.text-button span{color:#ab946c;font-size:13px}.tiny{color:#646f80;font-size:12px;line-height:1.8;margin-top:12px}.evolution-section{margin-top:24px}.evolution{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:13px}.evolution-item{border:1px solid #2d323c;border-radius:5px;background:#151a22;position:relative;display:flex;align-items:center;min-height:83px;padding:6px}.evolution-item.current{border-color:#8c6c4160;background:#29231b44}.evolution-item .weapon{width:64px;flex-shrink:0}.evolution-item b{font-size:14px;display:block;color:#c0b49d;font-weight:500}.evolution-item small{font-size:12px;color:#707989;display:block;margin-top:7px}.bottom-note{display:flex;align-items:center;gap:14px;margin-top:22px;padding:16px 18px;background:#181d2580;border:1px solid #262d37;border-radius:5px}.bottom-note>span{font-size:20px;color:#b49369}.bottom-note b{font-size:14px;font-weight:500;color:#b8bcc3}.bottom-note p{font-size:13px;color:#677486;margin-top:5px}.bottom-note button{white-space:nowrap;font-size:14px;color:#c0a07b;margin-left:auto}.social{width:250px;flex-shrink:0;border-left:1px solid #282e38;padding:29px 21px;background:#12161e66}.social>.section-title{font-size:14px}.room-code{padding:12px 13px;border:1px solid #35363c;border-radius:4px;background:#1d2025;display:flex;justify-content:space-between;align-items:center;margin:17px 0 20px}.room-code small{font-size:12px;color:#92949d}.room-code button{font-size:18px;letter-spacing:2.5px;font-family:monospace;display:block;color:#e3c59c;padding:5px 0 0}.room-code button span{font-size:16px;color:#7c808b;margin-left:13px}.party-member{display:flex;align-items:center;gap:10px;margin:16px 0}.avatar{background:#363027;border:1px solid #66543d;border-radius:7px;width:33px;height:33px;display:grid;place-items:center;font-size:15px;color:#e8bc84;flex-shrink:0}.party-member:nth-child(2) .avatar{background:#25373a;border-color:#456a70;color:#8fc9cd}.party-member:nth-child(3) .avatar{background:#332c3d;border-color:#5c4c70;color:#bca4db}.party-member:nth-child(4) .avatar{background:#303c2b;border-color:#526f44;color:#b6c8a8}.party-member strong{font-size:14px;font-weight:500;display:block}.party-member small{font-size:12px;color:#76808f;display:block;margin-top:5px}.party-member .duel{margin-left:auto;font-size:12px;color:#a7a29a;border:1px solid #353943;border-radius:3px;padding:4px}.party-member.empty{opacity:.45}.party-member.empty .avatar{background:none;border-style:dashed;color:#666}.room-actions{display:flex;gap:7px}.room-actions button{font-size:13px;padding:9px 7px;border:1px solid #373c46;border-radius:4px;flex:1;color:#b0b6c0}.party-hint{font-size:13px}.social-divider{height:1px;background:#2a303a;margin:24px 0}.social select{font-size:12px;padding:3px 2px;background:transparent;border:0;color:#858e9a;width:73px}.ranking-row{display:flex;align-items:center;gap:10px;margin-top:17px;font-size:14px}.ranking-row span:first-child{color:#c4a478;font-family:Georgia,serif}.ranking-row b{margin-left:auto;color:#e3ba88;font-weight:500}.feed{margin-top:16px;max-height:310px;overflow:auto;scrollbar-width:thin}.feed-item{position:relative;padding:0 0 14px 13px;border-left:1px solid #303643;margin-left:2px}.feed-item:before{content:'';position:absolute;width:4px;height:4px;left:-3px;top:5px;background:#6f7a88;border-radius:50%}.feed-item.success:before,.feed-item.victory:before{background:#cbae7a}.feed-item.destroy:before{background:#c5796e}.feed-item p{font-size:13px;color:#a1a7b3;line-height:1.7}.feed-item small{font-size:12px;color:#545f70;display:block;margin-top:4px}footer{border-top:1px solid #262d37;margin:0 28px;padding:15px 0;display:flex;justify-content:space-between;color:#555f70;font-size:12px;letter-spacing:.5px}footer i{font-style:normal;margin:0 9px;color:#6e5a42}#forgeCanvas{position:absolute;inset:0;width:100%;height:100%;z-index:7;pointer-events:none}.forge-result{position:absolute;inset:145px 0 auto;z-index:8;text-align:center;pointer-events:none;text-shadow:0 2px 15px #000}.forge-result strong{display:block;font-size:32px;color:#f5d8aa;letter-spacing:6px}.forge-result small{display:block;font-size:14px;color:#e6d7bb;margin-top:10px}.forge-result.failure strong{color:#f3aa99}.forge-result.show{animation:resultIn .6s both}.forge-stage.impact{animation:shake .42s}.forge-stage.high{background:radial-gradient(ellipse at 50% 45%,#8765b42c,transparent 65%),linear-gradient(#10151e,#191b29 75%,#11161c)}.forge-stage.high .rune-ring{border-color:#b89ed260;box-shadow:0 0 0 11px #a986c812,0 0 35px #8865e522}.forge-stage.high .pedestal-ring{border-color:#b49bd96b}.raid-toolbar{display:flex;justify-content:space-between;align-items:center;margin:6px 0 18px}.raid-wave{font-size:15px;letter-spacing:3px;color:#ccaa7e}.arena{height:405px;position:relative;background:#0e1720 none center/cover;border:1px solid #3e424b;border-radius:7px;overflow:hidden;isolation:isolate}.arena-vignette{position:absolute;inset:0;background:linear-gradient(#10151be8,transparent 40%,#0d141bbe),radial-gradient(ellipse,transparent,#02060bcc);z-index:1}.boss-hud{position:absolute;left:22%;right:22%;top:25px;z-index:5}.boss-hud>div:first-child{display:flex;justify-content:space-between;font-size:14px;color:#c5b9aa;margin-bottom:8px}.hp-track{height:6px;background:#292e35;border-radius:3px;overflow:hidden;border:1px solid #41342e}.hp-track i{height:100%;display:block;background:linear-gradient(90deg,#a86244,#e4ab72);width:100%;transition:width .6s}.boss-sprite{background:none 0 0/400% 100%;width:245px;height:245px;position:absolute;left:calc(50% - 122px);top:25px;z-index:2;filter:drop-shadow(0 12px 8px #0009);animation:bossIdle 1.2s steps(1) infinite}.arena.fighting .boss-sprite{animation:bossFight 1s steps(1) infinite}.arena.boss-hit .boss-sprite{filter:drop-shadow(0 0 15px #ea9b68) brightness(1.5)}.arena.boss-slam{animation:shake .4s}.fighters{position:absolute;bottom:17px;left:8%;right:8%;display:flex;justify-content:space-around;z-index:4}.fighter{width:22%;text-align:center;position:relative}.fighter .weapon{width:114px;max-width:100%;margin:auto;animation:attackAuto 1s ease-in-out infinite;filter:drop-shadow(0 0 12px #eabe8480)}.fighter:nth-child(2) .weapon{animation-delay:.1s}.fighter:nth-child(3) .weapon{animation-delay:.2s}.fighter:nth-child(4) .weapon{animation-delay:.3s}.fighter .name{font-size:14px;margin:0 0 7px;color:#ddd2c2}.fighter .hp-track{height:4px;background:#161d23;border:0}.fighter .hp-track i{background:#87bba5}.fighter small{font-size:12px;color:#9dafa9;display:block;margin-top:5px}.fighter.dead{opacity:.3;filter:grayscale(1)}.fighter.dead .weapon{animation:none}.skill-dots{font-size:13px;letter-spacing:4px;color:#f3c887;margin-top:6px}.combat-float{position:absolute;top:28%;left:0;right:0;z-index:6;pointer-events:none;text-align:center;color:#f8d49b;font:700 23px Georgia,serif;min-height:40px}.combat-float.pop{animation:damagePop .8s ease-out both}.raid-banner{position:absolute;z-index:8;left:15%;right:15%;top:36%;text-align:center;padding:20px 10px;background:#101720ec;border:1px solid #c3a16b88;border-radius:5px;box-shadow:0 0 40px #0009;color:#f1cc96;font-size:24px}.raid-banner:empty{display:none}.raid-banner small{display:block;color:#a3b7ba;font-size:14px;margin-top:10px}.raid-settings{display:flex;align-items:end;gap:14px;margin-top:18px}.raid-settings label{font-size:14px;color:#8b96a4;display:block;margin-bottom:7px}.raid-settings select{font-size:14px;max-width:270px}.raid-settings .repeat{font-size:13px;white-space:nowrap;margin-left:auto;margin-bottom:15px}.raid-settings .primary{white-space:nowrap}.raid-summary{display:flex;justify-content:space-between;margin:14px 0 22px;gap:10px}.raid-summary p{font-size:14px;color:#768394}.raid-info{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.raid-info>div{padding:17px;border:1px solid #2c343e;border-radius:5px;background:#161b24}.raid-info span{font-size:12px;color:#ad8a60;letter-spacing:1px}.raid-info b{display:block;font-size:14px;margin:10px 0;font-weight:500}.raid-info p{font-size:13px;color:#7d8998}.battle-log{margin-top:20px;padding:14px;border:1px solid #2d343f;border-radius:4px;font-size:14px;color:#8994a5;max-height:180px;overflow:auto}.battle-log p{padding:3px}.stand-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin:18px 0 33px}.stand-slot{height:161px;background:radial-gradient(ellipse at 50% 100%,#a98c5122,transparent 65%),linear-gradient(#151a22,#171c24);border:1px solid #353945;border-radius:5px;display:flex;align-items:center;justify-content:center;flex-direction:column;position:relative;overflow:hidden}.stand-slot:after{content:'';height:14px;background:linear-gradient(#6d5e42,#171c24);border-radius:50%;position:absolute;left:15%;right:15%;bottom:30px;box-shadow:0 2px 8px #0008}.stand-slot .weapon{width:120px;max-width:130%;z-index:1;margin-top:-18px}.stand-slot small{font-size:12px;color:#a3a3a1;z-index:2;position:absolute;bottom:12px;left:5px;right:5px}.stand-slot .empty-cross{font-size:27px;font-weight:200;color:#525b68;margin-bottom:25px}.catalog-heading{display:flex;align-items:center;justify-content:space-between}.catalog-heading h2 span{font-size:15px;font-family:monospace;color:#bca37c;letter-spacing:1px;margin-left:12px}.catalog-heading label{font-size:14px;color:#8d97a6}.catalog-tools{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:20px 0}.filters{display:flex;gap:5px}.filters button{font-size:14px;padding:7px 10px;color:#8f98a7;border-radius:4px}.filters button.active{background:#bc98602b;color:#e7c291;border:1px solid #a98a5344}.catalog-tools input{width:165px;font-size:14px;padding:9px 10px}.catalog-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.weapon-card{text-align:left;background:#161c25;border:1px solid #2f3844;border-radius:5px;padding:12px;position:relative;overflow:hidden}.weapon-card:hover{background:#1c232d;border-color:#a68c5e}.weapon-card .weapon{width:100%;margin:2px auto 8px}.weapon-card b{display:block;font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.weapon-card small{display:block;font-size:12px;color:#7f8d9f;margin-top:8px}.weapon-card .card-top{display:flex;justify-content:space-between;font-size:12px;color:#a98f67}.weapon-card.locked .weapon{filter:grayscale(1) brightness(.45);opacity:.65}.weapon-card .badge{background:#c5964f22;border:1px solid #aa8b5644;color:#d6b781;border-radius:2px;font-size:12px;position:absolute;top:10px;right:9px;padding:2px 5px}.inventory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}.inventory-grid .selected{border-color:#c7a366}.no-results{padding:60px 20px;text-align:center;color:#8793a3;grid-column:1/-1;font-size:15px}dialog{color:#e2e5e9;background:#171d27;border:1px solid #6b573b;border-radius:10px;max-width:620px;width:calc(100% - 32px);padding:32px;box-shadow:0 30px 100px #0009}dialog::backdrop{background:#080d16d9;backdrop-filter:blur(7px)}dialog h1{font-size:34px;line-height:1.5;color:#f0e3cd}dialog p{color:#929cad;font-size:15px;margin:15px 0}dialog .eyebrow{margin:10px 0 18px}#welcome{max-width:460px;text-align:center;padding:38px 45px;background:radial-gradient(ellipse at 50% 0,#7554323a,transparent 60%),#151b24}#welcome label{display:block;text-align:left;font-size:14px;color:#a7afbc;margin:24px 0 9px}#welcome input{width:100%;margin-bottom:13px;padding:13px}#welcome .primary{width:100%}#welcome small{display:block;color:#657285;font-size:13px;line-height:1.8;margin-top:20px}.modal-symbol{display:block;font-size:50px;color:#d9ad75}.close-modal{position:absolute;right:12px;top:8px;font-size:27px;color:#8f9aab;padding:4px 10px}.modal-form label{display:block;color:#95a1b1;font-size:14px;margin:20px 0 8px}.modal-form input{width:100%;margin-bottom:15px}.modal-form .primary{width:100%}.modal-art{width:210px;margin:auto}.modal-details{text-align:center}.modal-details h2{margin:10px 0}.modal-details .level{font-family:Georgia,serif;font-size:22px;color:#e5bf85}.modal-actions{display:flex;gap:10px;justify-content:center;margin-top:20px}.modal-actions button{min-width:120px}.modal-evolution{display:grid;grid-template-columns:repeat(4,1fr);margin:16px 0;border:1px solid #353d48;border-radius:4px;padding:8px}.modal-evolution button{font-size:14px;color:#a6aebb}.modal-evolution .weapon{width:100%}.guide-list{list-style:none;padding:0;counter-reset:guide}.guide-list li{counter-increment:guide;border-bottom:1px solid #323b47;padding:14px 0;font-size:15px;line-height:1.8;color:#a9b2c0}.guide-list li:before{content:'0' counter(guide);color:#d5b078;margin-right:15px}.effect-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.effect-options button{padding:17px;border:1px solid #424a57;border-radius:5px;color:#d7bc96}.toast{position:fixed;left:50%;bottom:28px;z-index:100;transform:translate(-50%,20px);opacity:0;pointer-events:none;max-width:90vw;border:1px solid #7e6848;background:#21252df5;box-shadow:0 5px 30px #0008;padding:14px 24px;border-radius:5px;color:#e8d6b9;font-size:15px;transition:.25s;line-height:1.7}.toast.visible{opacity:1;transform:translate(-50%,0)}.error{color:#e5a295!important}.motion-low *{scroll-behavior:auto!important}.motion-low .hero-weapon,.motion-low .rune-ring,.motion-low .ambient-orb{animation:none}.motion-low .arena,.motion-low .forge-stage{animation:none!important}@keyframes float{50%{transform:translateY(-9px) rotate(2deg)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes breathe{50%{opacity:.5;transform:scale(1.2)}}@keyframes charge{to{transform:translate(1px,-2px) scale(1.035);filter:brightness(1.5) drop-shadow(0 0 20px #f9cd80)}}@keyframes shatter{30%{filter:brightness(4);transform:scale(1.1)}100%{opacity:0;transform:scale(1.2);filter:blur(12px)}}@keyframes reveal{0%{filter:brightness(4);transform:scale(.85)}60%{filter:brightness(1.8);transform:scale(1.1)}100%{filter:brightness(1);transform:scale(1)}}@keyframes resultIn{from{opacity:0;transform:scale(1.3)}to{opacity:1;transform:scale(1)}}@keyframes shake{10%,90%{transform:translateX(-2px)}20%,80%{transform:translateX(3px)}30%,50%,70%{transform:translateX(-4px)}40%,60%{transform:translateX(4px)}}@keyframes bossIdle{50%{background-position:33.333% 0}}@keyframes bossFight{0%,25%{background-position:0 0}50%{background-position:66.667% 0}75%{background-position:100% 0}}@keyframes attackAuto{15%{transform:translate(0,-18px) rotate(-19deg)}35%{transform:translate(12px,-42px) rotate(25deg)}70%{transform:translate(0,0) rotate(0)}}@keyframes damagePop{0%{transform:translateY(12px) scale(.8);opacity:0}20%{opacity:1;transform:translateY(0) scale(1.2)}100%{opacity:0;transform:translateY(-34px)}}
@media(min-width:1600px){.sidebar{width:235px}main{padding:38px}.social{width:285px;padding:38px 25px}.forge-layout{grid-template-columns:minmax(300px,1fr) 270px}.forge-stage{height:500px}.forge-controls{padding:25px}.hero-weapon{width:360px;left:calc(50% - 180px);top:54px}.rune-ring{width:260px;height:260px;left:calc(50% - 130px);top:100px}.forge-controls .control-divider{margin:23px 0}.forge-controls .level-line{margin:28px 0}.evolution-item{min-height:100px}.evolution-item .weapon{width:85px}}
@media(max-width:1250px){.sidebar{width:184px;padding:24px 13px}.brand{font-size:16px;gap:5px}.brand-mark{font-size:39px}.social{width:218px;padding:26px 15px}main{padding:26px 20px}.forge-layout{grid-template-columns:minmax(230px,1fr) 205px}.forge-controls{padding:20px 14px}.scene-top{left:15px;right:15px;font-size:13px}.scene-top .live-tag{font-size:12px}.hero-weapon{width:290px;left:calc(50% - 145px);top:72px}.evolution-item{display:block;text-align:center}.evolution-item .weapon{margin:auto;width:66px}.evolution-item small{margin:5px 0}.bottom-note button{display:none}.page-heading h1{font-size:25px}.season-badge{display:none}.raid-settings{flex-wrap:wrap}.raid-settings .repeat{margin-left:0}.raid-settings .primary{margin-left:auto}.catalog-grid,.inventory-grid{grid-template-columns:repeat(3,1fr)}.catalog-tools{flex-wrap:wrap}.stand-grid{grid-template-columns:repeat(3,1fr)}.stand-slot{height:170px}}
@media(max-width:1050px){.social{display:none}.forge-layout{grid-template-columns:minmax(250px,1fr) 230px}.social.mobile-open{display:block;position:fixed;right:0;top:76px;bottom:0;width:280px;background:#121720;z-index:12;overflow:auto}.topbar #worldLabel{cursor:pointer;color:#dbc39d}.catalog-grid,.inventory-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:720px){.shell{display:block}.sidebar{width:100%;height:auto;position:relative;border-right:0;padding:16px 17px 0}.brand{font-size:15px}.brand-mark{font-size:37px}.brand small{font-size:12px}.chapter-label,.sidebar-card,.side-bottom{display:none}.sidebar nav{display:flex;margin-top:18px;gap:5px}.nav{padding:10px 7px;font-size:14px;justify-content:center;gap:6px;white-space:nowrap}.nav span{font-size:16px;width:auto}.nav b{display:none}.nav.active{box-shadow:inset 0 -2px #e2aa6d}.topbar{height:55px;padding:0 19px;font-size:14px}.wallet{font-size:14px}.wallet>span:first-child{margin-right:7px}.topbar>div{gap:6px}.divider{padding:0}.content-wrap{display:block}main{padding:23px 16px}.page-heading{margin-bottom:19px}.page-heading h1{font-size:24px}.page-heading p{font-size:14px}.forge-layout{display:block}.forge-stage{height:390px}.hero-weapon{top:31px;width:285px;left:calc(50% - 142.5px)}.rune-ring{top:57px;width:210px;height:210px;left:calc(50% - 105px)}.rune-ring span{display:none}.scene-top{top:17px}.pedestal{bottom:86px}.pedestal-ring{bottom:98px;width:260px;left:calc(50% - 130px)}.forge-controls{border-left:0;border-top:1px solid #30323a;padding:20px}.forge-controls .level-line{margin:17px 0}.odds{justify-content:space-around}.odds b{display:inline;margin-left:7px}.forge-controls .pity{text-align:center}.forge-controls .stat-line{font-size:15px}.forge-button{padding:16px;font-size:14px}.protection{margin:17px 0}.control-divider{margin:18px 0}.secondary{font-size:15px;padding:12px}.secondary b{font-size:14px}.forge-controls .tiny{text-align:center}.evolution{gap:6px}.evolution-item{padding:6px 2px}.evolution-item .weapon{width:70px;max-width:100%}.evolution-item b{font-size:13px}.bottom-note{padding:12px}.bottom-note p{font-size:13px}.social{display:block;border-left:0;border-top:1px solid #29313d;width:auto;margin:0 16px 20px;padding:22px}.social .party{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.social .feed{max-height:160px}.social .party-hint{font-size:14px}.social.mobile-open{position:static;width:auto}.social-divider{margin:18px 0}.room-code{margin:16px 0 5px}.social .section-title{font-size:15px}footer{margin:0 16px;font-size:12px;gap:14px;line-height:1.8}footer span:last-child{max-width:130px;text-align:right}.catalog-grid,.inventory-grid{grid-template-columns:repeat(3,1fr);gap:8px}.weapon-card{padding:8px}.weapon-card b{font-size:13px}.weapon-card small{font-size:12px}.catalog-tools input{width:100%}.filters{width:100%;justify-content:space-between;gap:0}.filters button{padding:8px 10px}.stand-grid{gap:8px}.stand-slot{height:150px}.stand-slot .weapon{width:112px}.catalog-heading h2{font-size:18px}.catalog-heading label{font-size:13px}.arena{height:350px}.boss-hud{left:15%;right:15%;top:18px}.boss-sprite{top:20px;width:210px;height:210px;left:calc(50% - 105px)}.fighters{left:4%;right:4%}.fighter .weapon{width:90px}.fighter .name{font-size:12px}.fighter small{font-size:12px}.raid-settings{gap:12px}.raid-settings>div{width:100%}.raid-settings select{max-width:none;width:100%}.raid-settings .repeat{margin-bottom:13px}.raid-info{grid-template-columns:1fr}.raid-info>div{padding:13px 16px}.raid-info p{font-size:14px}.raid-summary{align-items:start}.raid-summary p{max-width:75%;font-size:13px}.raid-banner{font-size:20px;left:10%;right:10%}.raid-banner small{font-size:14px}.raid-wave{font-size:14px}.raid-toolbar h2{font-size:18px}dialog{padding:28px 22px}.modal-art{width:180px}.modal-actions button{min-width:100px}.modal-evolution{padding:4px}.modal-evolution button{font-size:13px;padding:2px}#welcome{padding:30px}#welcome h1{font-size:30px}}
@media(prefers-reduced-motion:reduce){.hero-weapon,.rune-ring,.ambient-orb{animation:none}}
.weapon{filter:brightness(var(--weapon-light,1)) drop-shadow(0 0 var(--weapon-glow,10px) #eabd7650)}
#quickSound{font-size:13px;color:#a4a6ae;border:1px solid #323945;border-radius:4px;padding:5px 7px;margin-right:7px}.weapon-card.locked .weapon{filter:grayscale(.5) brightness(.65);opacity:.8} @media(max-width:720px){.topbar .divider,.topbar #playerName{display:none}.wallet>span:first-of-type{margin-right:2px}#quickSound{font-size:12px;padding:5px;margin-right:2px}}
.audio-settings-link{font-size:14px;color:#b8a184;padding:10px 0;margin-top:7px}.volume-control{display:flex;align-items:center;gap:14px;margin:24px 0;color:#c1b19c}.volume-control input{flex:1;accent-color:#e3b680;padding:0;min-width:100px}.sound-demo{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sound-demo button{padding:13px 7px;border:1px solid #414957;border-radius:4px;font-size:14px;color:#c6b49b}.sound-demo button:hover{background:#2b303b}.audio-toggle{font-size:15px;color:#b9c2cf}
/* Fit the entire atlas cell inside the enhancement area, including animation overshoot. */
.weapon-frame{position:absolute;inset:52px 24px 118px;display:grid;place-items:center;container-type:size;z-index:3;pointer-events:none}
.weapon-frame .hero-weapon{position:relative;left:auto;top:auto;bottom:auto;width:min(80cqw,80cqh,320px);height:auto;max-width:100%;margin:0}
@media(max-width:720px){.weapon-frame{inset:45px 22px 112px}}
/* Source frames are measured per weapon, never inferred as uniform atlas rows. */
.weapon{background-image:none!important;background-size:auto}
.weapon-sprite{display:block;width:100%;height:100%;overflow:hidden}
.weapon-sprite>svg{overflow:hidden}
/* Always-visible volume controls share the saved master volume with settings. */
.quick-volume{display:flex;align-items:center;gap:6px;margin-right:10px;color:#b8a184;font-size:14px;white-space:nowrap}
.quick-volume #quickSound{margin:0;min-width:42px}
.quick-volume input{width:78px;min-width:0;padding:0;accent-color:#e3b680;cursor:pointer}
.quick-volume output{width:31px;text-align:right;font-variant-numeric:tabular-nums}
.quick-volume input:focus-visible{outline:2px solid #e3b680;outline-offset:4px}
@media(max-width:720px){.topbar{height:auto;min-height:78px;flex-wrap:wrap;gap:9px;padding:10px 19px}.topbar .wallet{width:100%;justify-content:flex-end}.quick-volume{margin-right:auto;gap:5px}.quick-volume input{width:70px}.quick-volume label{display:none}}
/* Unknown collection entries never render their weapon sprite. */
.weapon.weapon-unknown{display:grid;place-items:center;filter:none;opacity:1;background:radial-gradient(ellipse at center,#252b35 0%,transparent 68%);color:#827763}
.weapon-unknown>span{display:grid;place-items:center;width:55%;height:65%;border:1px solid #484239;border-radius:50%;font-family:Georgia,serif;font-size:clamp(30px,4vw,62px);text-shadow:0 0 18px #be995430}
.weapon-card.locked .weapon-unknown{filter:none;opacity:1}
.modal-art.weapon-unknown>span{font-size:80px}
.archive-button{margin-top:9px;width:100%;color:#eac394;border-color:#705639}.vault-heading{margin:32px 0 16px}.vault-heading b{color:#c7a980;margin-left:8px}.recovery-form{border-top:1px solid #34343c;padding-top:18px;margin-top:20px;max-width:100%}.recovery-form summary{cursor:pointer;color:#dab489;margin-bottom:14px}.recovery-form input,#savedRecovery{width:100%;margin:10px 0;min-width:0}.recovery-form button{width:100%;margin-bottom:12px}.modal-actions{flex-wrap:wrap}.legend-banner{position:fixed;z-index:110;top:26px;left:50%;width:min(680px,calc(100vw - 28px));padding:22px 24px;display:flex;align-items:center;justify-content:center;gap:24px;text-align:center;border:1px solid #dca75d;border-radius:8px;background:radial-gradient(ellipse at top,#57402a 0%,#211e25 65%);box-shadow:0 0 0 5px #deb36c0a,0 8px 60px #000c,0 0 45px #db99372b;opacity:0;transform:translate(-50%,-130%);pointer-events:none;transition:transform .6s cubic-bezier(.2,.8,.2,1),opacity .4s}.legend-banner.visible{transform:translate(-50%,0);opacity:1}.legend-banner small{display:block;color:#d8ad75;font-size:14px;letter-spacing:4px;margin-bottom:9px}.legend-banner strong{display:block;font-size:20px;line-height:1.6;overflow-wrap:anywhere;color:#ffecd0}.legend-banner div>span{display:block;font-size:14px;margin-top:6px;color:#bca787}.legend-star{font-size:30px;color:#e4b465;text-shadow:0 0 18px #efac55;flex-shrink:0}.motion-low .legend-banner{transition:opacity .2s;transform:translate(-50%,0)}.motion-low .legend-banner:not(.visible){visibility:hidden}@media(max-width:720px){.legend-banner{top:12px;padding:18px 12px;gap:9px}.legend-banner strong{font-size:16px}.legend-star{font-size:18px}.vault-heading{gap:12px;flex-wrap:wrap}#vault .no-results{grid-column:1/-1}.recovery-form small{line-height:1.7}}
/* Readable controls across desktop and phone layouts. */
body{line-height:1.55}.nav{min-height:52px}.topbar{min-height:80px;height:auto;padding-top:14px;padding-bottom:14px;gap:12px;flex-wrap:wrap}.topbar>div{flex-wrap:wrap}.wallet{row-gap:10px}.primary,.secondary,.room-actions button{min-height:46px}.forge-button{font-size:17px}.forge-controls{min-width:250px}.forge-layout{grid-template-columns:minmax(0,1fr) 270px}.section-title{flex-wrap:wrap}.raid-summary{align-items:center;gap:20px}.raid-summary p{flex:1;max-width:none;font-size:15px}.raid-reset{flex:0 0 auto;width:auto;min-height:52px;padding:14px 22px;font-size:16px;font-weight:600;text-align:center;border-color:#a47d50;color:#f0c594;background:#b9853820}.raid-settings{flex-wrap:wrap;align-items:end}.raid-settings .primary,.raid-settings .secondary{width:auto;flex-shrink:0;font-size:16px;padding:14px 20px}.raid-settings>div{flex:1;min-width:220px}.raid-settings select{max-width:none;width:100%;min-height:52px;font-size:15px}.social select{width:105px}.party-member .duel{min-height:40px;min-width:48px;padding:7px}.party-member>div{min-width:0}.party-member strong,.party-member small{overflow-wrap:anywhere}.party-member{gap:9px}.weapon-card b{white-space:normal;line-height:1.6;min-height:24px}.weapon-card small{line-height:1.6}.weapon-card .badge{position:static;display:inline-block;margin-top:8px}.catalog-tools{flex-wrap:wrap}.catalog-tools input{width:210px;min-height:44px}.filters button{min-height:44px}.bottom-note{flex-wrap:wrap}.bottom-note p{color:#98a4b5}.feed-item p,.tiny,.pity,.weapon-title p,.page-heading p{color:#9aa5b5}.attendance-clock{font-size:12px!important;color:#a4adbb!important;margin:12px 0 0!important}.audio-settings-link{display:block;min-height:44px}.scene-top{flex-wrap:wrap;gap:6px}.weapon-title h2{font-size:24px}.weapon-title{padding:0 12px}.stand-slot{min-height:190px}.stand-slot small{line-height:1.5}.modal-actions .secondary{width:auto}.quick-volume{flex-wrap:wrap}input[type=checkbox]{width:18px;height:18px}.raid-info{gap:12px}.raid-info b{font-size:16px}.raid-info p{font-size:14px}.boss-hud>div:first-child{gap:12px;flex-wrap:wrap}.fighter .name{overflow-wrap:anywhere}.fighter small{font-size:12px}.legend-banner strong{font-size:21px}
@media(max-width:1100px) and (min-width:721px){.forge-layout{grid-template-columns:minmax(0,1fr) 250px}.main-wrap{min-width:0}.content-wrap main{min-width:0}.sidebar{width:200px;padding-left:12px;padding-right:12px}.nav{gap:8px;padding-left:9px;padding-right:9px}.forge-controls{padding:20px 16px}}
@media(max-width:720px){.sidebar nav{display:grid;grid-template-columns:1fr 1fr}.nav{font-size:14px;min-height:46px;white-space:normal}.topbar{padding:14px 16px}.topbar>div{gap:8px}.wallet{width:100%;justify-content:space-between}.forge-controls{min-width:0}.raid-summary{flex-direction:column;align-items:stretch}.raid-summary p{max-width:none;font-size:14px}.raid-reset{width:100%;min-height:54px;font-size:17px}.raid-settings{display:grid;grid-template-columns:1fr 1fr}.raid-settings>div{grid-column:1/-1;min-width:0}.raid-settings .primary,.raid-settings .secondary{width:100%;font-size:14px;padding:13px 8px;margin:0}.catalog-grid,.inventory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.weapon-card b{font-size:14px}.weapon-card small{font-size:12px}.stand-slot small{font-size:12px}.social .party{grid-template-columns:1fr}.raid-banner{left:5%;right:5%}.fighter .name{font-size:12px}.fighter small{font-size:10px}.legend-banner strong{font-size:17px}.catalog-heading{gap:14px;flex-wrap:wrap}.scene-top .live-tag{font-size:10px}}
.raid-brief{padding:24px;border:1px solid #775d3f;border-radius:8px;background:linear-gradient(135deg,#34291e70,#161d28);margin:24px 0}.raid-brief p{font-size:15px;line-height:1.9;color:#b9b3a9;margin:14px 0}.party-strategy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.party-strategy>div{padding:14px;background:#10151d90;border:1px solid #3e4148;border-radius:6px}.party-strategy strong{display:block;color:#edc798;font-size:14px}.party-strategy span{display:block;margin-top:7px;font-size:13px;color:#b4c6be}.raid-effects{color:#b9d6c7;font-size:14px;margin-top:16px}.raid-trait{display:block;color:#b9d6c7;margin-top:10px}.fighter .hp-track{margin:6px 0}.arena{min-height:460px}.fighters{bottom:15px}.fighter small{line-height:1.6}@media(max-width:720px){.party-strategy{grid-template-columns:1fr}.raid-brief{padding:18px}.raid-brief h2{font-size:20px}.arena{min-height:440px}.fighter .weapon{width:76px}}
#combatCanvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:7}.raid-settings .is-ready{background:#29503c;color:#c2f1d2;border-color:#69b38b}#raidSolo{border-color:#647f91}#raidReady{border-color:#6b9c7b}.raid-settings .primary{margin-left:0}@media(max-width:720px){#raidStart{grid-column:1/-1}}
.weapon-card.collection-saved{border-color:#e3b66b;box-shadow:inset 0 0 20px #e1a64d12,0 0 16px #e9b66335;background:linear-gradient(150deg,#3a2d1d66,#191f28)}.weapon-card.collection-saved:hover{border-color:#ffe3a3;box-shadow:inset 0 0 24px #e1a64d20,0 0 24px #e9b66360}.collection-saved .card-top{color:#efd2a1}
.party-member .duel{min-width:72px;white-space:nowrap;flex-shrink:0}.nav{word-break:keep-all}.nav b{flex-shrink:0}
.auth-tabs{display:flex;gap:8px;margin:18px 0}.auth-tabs button{flex:1;padding:12px;border:1px solid #534b41;border-radius:5px;color:#bcb3a6}.auth-tabs .active{background:#5c4630;color:#ffe2b8}#accountForm input,#linkAccountForm input{width:100%;font-size:16px}#accountForm .primary{margin-top:20px}.guest-entry{margin-top:22px;border-top:1px solid #3c414a;padding-top:18px;text-align:left}.guest-entry summary{cursor:pointer;font-size:14px;color:#cdb58f}.guest-entry #loginForm{margin-top:16px}.guest-entry .modal-symbol,.guest-entry #loginForm>h1,.guest-entry #loginForm>.eyebrow{display:none}.layout-button{font-size:13px;border:1px solid #5c5b5b;border-radius:5px;padding:7px 10px;min-height:40px;color:#cdb491}.landscape-note{display:none}.welcome-heading p{font-size:14px}
#combatPanel[data-mode=solo] .party-only,#combatPanel[data-mode=party] .solo-only{display:none!important}.solo-brief{margin:24px 0;padding:24px;border:1px solid #4d6b72;border-radius:8px;background:#20303955}.solo-brief p{margin-top:12px;color:#b5c7cc;line-height:1.9}.battle-notice{padding:16px;background:#54412a;color:#ffe0b2;border-radius:6px;margin-bottom:16px}#sessionLogout{min-height:44px;color:#e4bd9b;white-space:nowrap}#nicknameSetup input{width:100%;font-size:16px}

.game-update{position:fixed;top:12px;left:50%;transform:translateX(-50%);z-index:200;background:#e5b77e;color:#17191f;border:1px solid #ffe1ad;border-radius:8px;padding:12px 18px;font-weight:700;box-shadow:0 4px 20px #0008;}
.game-update{max-width:calc(100vw - 24px);white-space:normal;}
