/* v0.76: denser windows, a real trading board, and receipt-driven reward ceremonies. */
#game #panel.floatingPanel{max-height:none;border-radius:7px;background:linear-gradient(145deg,#132b25f8,#091b18f5)!important;padding:0;box-shadow:0 12px 40px #0008;border:1px solid #9e895b}
#game #panel .panelHead{min-height:36px;padding:3px 8px;gap:6px;flex-shrink:0}
#game #panel #panelTitle{font-size:15px;line-height:1.4}
#game #panel #panelBody{padding:8px;min-height:0;font-size:12px;line-height:1.45;scrollbar-width:thin;overflow:auto}
#game #panel h3{font-size:15px;line-height:1.4;margin:4px 0}
#game #panel h4{font-size:13px;line-height:1.4;margin:5px 0}
#game #panel p{font-size:12px;line-height:1.45;margin:5px 0}
#game #panel button,#game #panel input,#game #panel select{font-family:var(--font-ui);font-size:12px;min-height:34px;padding:5px 8px;border-radius:4px;max-width:100%;box-sizing:border-box}
#game #panel :is(.card,.communityCard,.utilitySheet article,.mailCard,.questCard,.growthCard){padding:8px;margin:5px 0;border-radius:4px}
#game #panel :is(.communityHero,.communityEmpty){padding:6px;gap:8px;margin:4px 0}
#game #panel .communityHero .menuSymbol{width:32px;height:32px;flex:none}
#game #panel .communityPanel{font-size:12px}#game #panel .communityPanel fieldset{padding:0;margin:0;min-width:0}
#game #panel .communityToolbar{padding:0 0 5px;min-height:28px}#game #panel .communityToolbar button{min-height:28px;padding:3px 8px}
#game #panel .communityRows>article{padding:7px;gap:7px}#game #panel .communityRows small{font-size:11px}
#game #panel :is(.gameMenu,.menuGrid){gap:5px}#game #panel .menuTile{padding:6px;min-height:56px;gap:5px}#game #panel .menuTile .artIcon{width:28px;height:28px}
#game #panel .commerceShell{font-size:12px}#game #panel.commercePanel #panelBody{padding:0 8px 8px;overflow:hidden;flex:1;height:auto}
#game #panel .commerceWallet{padding:4px 0;min-height:27px}#game #panel .commerceScroll{padding:0;overflow:auto}
#game #panel .summonArt{height:150px;min-height:150px;border:1px solid #9b865b;overflow:hidden;border-radius:6px;margin:3px 0 7px;position:relative}
#game #panel .summonArt>img{width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:saturate(.85)}
#game #panel .summonArt>div{position:absolute;inset:auto 0 0;padding:12px;background:linear-gradient(transparent,#071c1aeb);text-shadow:0 2px 8px #000}
#game #panel .summonArt h3{font:22px var(--font-display);color:#fce6a6}
#game #panel .summonButtons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}
#game #panel .summonButtons button{min-height:53px;background:linear-gradient(145deg,#3c5038,#1d3429);border:1px solid #b8a06a;color:#ffecb5;box-shadow:inset 0 1px #f5d89138}
#game #panel .summonButtons button:last-child{background:linear-gradient(145deg,#795b27,#493715);border-color:#d2b167}
#game #panel .summonButtons b{font-size:15px}#game #panel .summonButtons span{display:block;font-size:11px;margin-top:3px}
#game #panel .pityLine{padding:5px;font-size:12px}#game #panel .commerceHint{font-size:11px;color:#c1cbbd}
#game #panel .productGrid{gap:8px}#game #panel .productArt{height:95px}#game #panel .productCopy{padding:7px}#game #panel .commerceIcon{width:30px;height:30px}
#game #panel .commerceConfirm{padding:14px;z-index:10}#game #panel .commerceConfirm h3{font-size:17px}
#game #panel .enhanceCard{padding:9px;margin:5px 0}#game #panel .enhanceHero{padding:4px;gap:10px;min-height:68px}
#game #panel .enhanceHero>.artIcon{width:58px;height:58px}#game #panel .enhanceHero h3{font-size:18px}
#game #panel .enhanceTarget{padding:8px;margin:5px 0}#game #panel .enhanceTarget strong{font-size:23px}
#game #panel .enhanceStats :is(th,td){padding:5px 7px;font-size:12px}#game #panel .enhanceCost{padding:5px;gap:10px;font-size:12px}
#game #panel .enhanceRisk,#game #panel .enhanceSafe{padding:6px;font-size:12px}#game #panel .enhanceHint{font-size:11px}
#game #panel .bagInventory{max-height:210px;min-height:128px}#game #panel .inventoryGrid{grid-template-columns:repeat(8,minmax(0,1fr));gap:4px}
#game #panel .martialCatalog{max-height:360px}#game #panel .techniqueTile{min-height:64px}
#game #panel .techniqueTile strong{font-size:11px!important}#game #panel .skillGroup:last-child h3 small{font-size:10px}
/* Trading board: list first; registration and settlement have their own tabs. */
#game #panel .marketBalance{position:static;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;height:auto;min-height:30px;padding:0;gap:7px;pointer-events:auto;font-size:12px}
#game #panel .marketBalance>b{font-size:14px;color:#f2db9a}.currency-coins{color:#f1d180}.currency-diamonds{color:#8ae0e7}
.marketTabs{display:flex;gap:4px;margin:6px 0 9px}.marketTabs button{flex:1;background:#102923;border:1px solid #526653;color:#d2dcca}.marketTabs button[aria-pressed=true]{background:#445c3c;color:#fff0b7;border-color:#c4ab6d}
#game #panel .marketSearch{display:block;padding:0;border:0;margin:0 0 7px}.marketSearchMain{display:grid;grid-template-columns:minmax(90px,1fr) 80px 100px 56px;gap:5px}.marketSearchExtra{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:5px}
#game #panel .marketSearch :is(input,select){width:100%;margin:0;min-width:0;background:#091c18;color:#e5eadc;border:1px solid #4b6153}
.marketSummary{display:flex;justify-content:space-between;gap:8px;margin:8px 0 5px;font-size:11px;color:#b9c6b5}.marketTable{border:1px solid #56674f;border-radius:4px;overflow:hidden}
.marketRow{display:grid;grid-template-columns:minmax(0,1fr) 42px 105px 76px;gap:7px;align-items:center;padding:8px;border-bottom:1px solid #8c986331;background:#122c23}.marketRow:nth-child(odd){background:#172f26}.marketRow:last-child{border-bottom:0}.marketRow.marketHead{background:#2c4030;font-size:11px;color:#d2d9c0;padding:6px 8px}
.marketItem{display:flex;gap:7px;align-items:center;min-width:0}.marketItem>div{min-width:0}.marketItem b{display:block;font-size:12px;overflow-wrap:anywhere}.marketItem small{display:block;font-size:11px;color:#bcc9b9}.marketItem .marketSeller{color:#d5c598}
#game #panel .marketItem .artIcon{width:34px;height:34px;flex:none;min-width:34px;border:1px solid #78805c;border-radius:3px}.marketQuantity{font-size:11px;text-align:center}.marketPrice{text-align:right;font-variant-numeric:tabular-nums}.marketPrice strong{display:block;font-size:13px}.marketPrice small{display:block;font-size:11px;line-height:1.5;color:#bfcdbb}
.marketRow.grade2 .marketItem b{color:#d3a8ee}.marketRow.grade3 .marketItem b{color:#ffda82}.marketRow button{width:100%;white-space:nowrap}.marketPages{display:flex;align-items:center;justify-content:center;gap:14px;padding:6px}.marketEmpty{text-align:center;padding:24px 10px!important;color:#bfcbba}
.marketSellGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}#game #panel .marketSellGrid form{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:6px 0;padding:0}#game #panel .marketSellGrid label{display:flex;flex-direction:column;gap:4px;font-size:12px;min-width:0}#game #panel .marketSellGrid select,#game #panel .marketSellGrid input{width:100%;min-width:0}#game #panel .marketSellGrid label:first-child,#game #panel .marketSellGrid button,#game #panel .marketSellGrid output{grid-column:1/-1}.marketSellGrid output{text-align:right;color:#ffe1a1;padding:4px}
#game #panel .marketHelp{font-size:11px;color:#b6c3b3}.marketSettlement{padding:12px;background:#263c2b;border:1px solid #687657;display:flex;justify-content:space-between;align-items:center;gap:10px}.marketSettlement b,.marketSettlement small{display:block}.marketSettlement b{margin-top:5px}.marketMine article{display:grid;grid-template-columns:minmax(0,1fr) 100px 84px;gap:8px;align-items:center;border-bottom:1px solid #5d6a4944;padding:9px 4px}.marketMine small{display:block}.marketHistory{font-size:11px;padding:5px}.marketHistory table{width:100%;font-size:11px;border-collapse:collapse}.marketHistory th,.marketHistory td{padding:5px;border-bottom:1px solid #67734f55;text-align:left}
/* Server-authored global events have a consistent semantic color in chat and HUD. */
#game .chatMessage.system.celebration,#game .chatHudLine.celebration,#game .chatHudLine[data-kind=celebration]{color:#ffdb7b;background:linear-gradient(90deg,#815e252f,transparent);text-shadow:0 1px 4px #000}
#game .chatMessage.system.pk,#game .chatHudLine.pk,#game .chatHudLine[data-kind=pk]{color:#ff7777;background:#681b202b}
#game .chatMessage.system.failure,#game .chatHudLine.failure,#game .chatHudLine[data-kind=failure]{color:#c7b7d7}
#game .chatMessage.system b,#game .chatMessage.system p{color:inherit}
/* The overlay is separate from rerendered windows, so sync cannot restart the ceremony. */
#rewardOverlay{position:absolute;inset:0;z-index:200;background:#030b0dcc;display:flex;align-items:center;justify-content:center;padding:12px;box-sizing:border-box;backdrop-filter:blur(4px)}
#game #rewardOverlay .rewardScene{--glow:#b7d7bf;position:relative;width:min(640px,100%);max-height:100%;overflow:auto;background:radial-gradient(ellipse at 50% 15%,#405949,#0b201d 66%);border:1px solid var(--glow);box-shadow:0 0 55px #a5c89630,inset 0 0 30px #cce4b80b;border-radius:10px;padding:20px;box-sizing:border-box;color:#f5eed7;text-align:center}
#rewardOverlay .rarity2{--glow:#d3a1f3!important}#rewardOverlay .rarity3,#rewardOverlay .rarity4{--glow:#ffdb80!important;background:radial-gradient(ellipse at 50% 10%,#6a5028,#17281f 55%,#091c1b)!important}
#game #rewardOverlay header{position:relative;inset:auto;display:block;height:auto;padding:5px 12px 15px;pointer-events:auto;margin:0;background:none;z-index:1}
#rewardOverlay header small{font-size:12px;letter-spacing:.18em;color:#cdbb8f}#rewardOverlay h2{font:30px/1.3 var(--font-display);color:var(--glow);margin:7px 0;text-shadow:0 0 24px #ffd88c60}#rewardOverlay p{font-size:12px;line-height:1.5;margin:4px 0;color:#d0d9c9}
#rewardOverlay button{font:12px var(--font-ui);min-height:38px;padding:8px 14px;background:#203f31;border:1px solid #8b986a;border-radius:5px;color:#e7ecd1;cursor:pointer}#rewardOverlay .rewardClose{position:absolute;right:6px;top:6px;z-index:3;min-height:30px;width:32px;padding:2px;font-size:23px;background:transparent;border:0}
.rewardAura{position:absolute;pointer-events:none;left:50%;top:80px;width:260px;height:260px;transform:translate(-50%,-30%);border:1px solid var(--glow);border-radius:50%;opacity:.12;box-shadow:0 0 0 18px #d1c7850b,0 0 0 38px #d1c78509;animation:rewardAura 1.6s ease-out both}
.rewardCards{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;perspective:800px}.rewardCards.count1{grid-template-columns:minmax(120px,180px);justify-content:center}.rewardCard{--grade:#94af98;position:relative;min-width:0;height:145px;border:1px solid var(--grade);border-radius:6px;background:linear-gradient(150deg,#273f31,#102922);box-shadow:0 4px 10px #0005;overflow:hidden;animation:rewardCard .65s both;animation-delay:var(--delay)}.rewardCard.grade1{--grade:#85d8e6}.rewardCard.grade2{--grade:#d4a4f1;box-shadow:0 0 18px #ad72d540}.rewardCard.grade3,.rewardCard.grade4{--grade:#ffdb84;box-shadow:0 0 21px #edc76e55;background:linear-gradient(145deg,#685025,#1b3327)}
.rewardFace{position:relative;display:flex;align-items:center;flex-direction:column;justify-content:center;padding:8px 4px;gap:5px;height:100%;box-sizing:border-box;animation:rewardFace .25s both;animation-delay:calc(var(--delay) + .25s)}.rewardFace small{color:var(--grade);font-size:11px}.rewardFace .artIcon{width:54px;height:54px;flex:none}.rewardFace b{font-size:12px;line-height:1.35;color:var(--grade);overflow-wrap:anywhere}.rewardFace span{font-size:10px;color:#d0d7c6}.count1 .rewardCard{height:216px}.count1 .rewardFace .artIcon{width:96px;height:96px}.count1 .rewardFace b{font-size:16px}
.rewardSeal{position:absolute;inset:0;display:grid;place-items:center;color:#c6b478;font:45px var(--font-display);background:repeating-linear-gradient(45deg,#1d342a,#1d342a 4px,#263a2d 4px,#263a2d 5px);animation:rewardSeal .2s both;animation-delay:calc(var(--delay) + .2s)}
#rewardOverlay footer{position:relative;display:flex;gap:8px;justify-content:center;margin-top:18px}#rewardOverlay .rewardDone{background:linear-gradient(#806332,#4b3c23);border-color:#dbbb76;color:#fff0c2;min-width:160px}
.rewardPetals{position:absolute;inset:0;overflow:hidden;pointer-events:none}.rewardPetals i{position:absolute;left:calc(5% + var(--i)*5.2%);top:-10px;width:4px;height:10px;background:var(--glow);animation:rewardPetal 2.2s ease-out both;animation-delay:calc(var(--i)*.045s);transform:rotate(calc(var(--i)*23deg));opacity:0}.failure .rewardPetals{display:none}.failure .rewardCard{filter:saturate(.2);animation:rewardBreak .65s both}.failure .rewardAura{opacity:.06}.failure h2{color:#d5bbce!important}
.revealAll .rewardCard,.revealAll .rewardFace{animation:none}.revealAll .rewardSeal,.revealAll .rewardPetals{display:none}
@keyframes rewardCard{0%{transform:translateY(20px) rotateY(90deg);opacity:0}55%{transform:translateY(-3px) rotateY(0);opacity:1}100%{transform:none;opacity:1}}
@keyframes rewardFace{from{opacity:0}to{opacity:1}}@keyframes rewardSeal{from{opacity:1}to{opacity:0;visibility:hidden}}
@keyframes rewardAura{from{scale:.55;opacity:.35}to{scale:1.15;opacity:.1}}@keyframes rewardPetal{15%{opacity:.8}100%{translate:18px 440px;rotate:190deg;opacity:0}}
@keyframes rewardBreak{0%{transform:translateX(-5px)}20%{transform:translateX(5px)}40%{transform:translateX(-3px)}100%{transform:none}}
@media(max-width:520px){.marketSearchMain{grid-template-columns:minmax(80px,1fr) 76px 48px}.marketSearchMain input{grid-column:1/-1}.marketSearchExtra{grid-template-columns:1fr 1fr}.marketRow{grid-template-columns:minmax(0,1fr) 30px 74px 58px;gap:4px;padding:7px 5px}.marketRow.marketHead{padding:6px 5px}.marketItem{gap:4px}#game #panel .marketItem .artIcon{width:26px;height:26px;min-width:26px}.marketItem small:last-child{display:none}#game #panel .marketRow button{padding:4px;font-size:11px}.marketPrice strong{font-size:12px}.marketPrice small,.marketQuantity{font-size:10px}.marketSummary{display:block}.marketSummary span{display:block;margin-top:2px}.marketSellGrid{grid-template-columns:1fr}.marketMine article{grid-template-columns:minmax(0,1fr) 80px 68px}.marketBalance{justify-content:start!important}.marketBalance>b{width:100%}#game #panel .inventoryGrid{grid-template-columns:repeat(6,minmax(0,1fr))}#game #panel .summonArt{height:124px;min-height:124px}#game #rewardOverlay .rewardScene{padding:12px}#rewardOverlay h2{font-size:24px}.rewardCards{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.rewardCard{height:100px}.rewardFace{display:grid;grid-template-columns:38px 1fr;gap:3px;padding:5px;text-align:left}.rewardFace .artIcon{width:38px;height:38px;grid-row:span 3}.rewardFace small{grid-column:2;grid-row:1}.rewardFace b{font-size:11px}.rewardFace span{font-size:10px}.count1 .rewardFace{display:flex;text-align:center}.rewardCards.count1{grid-template-columns:160px}#rewardOverlay header{padding-bottom:8px!important}#rewardOverlay footer{margin-top:10px;flex-wrap:wrap}}
@media(pointer:coarse){#game #panel :is(button,input,select){min-height:38px}}
@media(prefers-reduced-motion:reduce){#rewardOverlay *{animation:none!important;transition:none!important}.rewardSeal,.rewardPetals{display:none}.rewardFace{opacity:1}}
/* Older sheets used !important for large type; override those at the final layer. */
#game #panel #panelBody :is(p,.muted){font-size:12px!important;line-height:1.45!important;margin:4px 0!important}
#game #panel #panelBody h3{font-size:14px!important;line-height:1.4!important;margin:3px 0!important}
#game #panel #panelBody h4{font-size:13px!important;margin:4px 0!important}
#game #panel #panelBody :is(button,input,select){font-size:12px!important;min-height:32px!important;margin-top:0;line-height:1.35!important}
#game #panel #panelBody .card{padding:7px!important;margin:4px 0!important}
#game #panel #panelBody .techniqueTile{padding:3px!important;min-height:58px!important;gap:2px}
#game #panel #panelBody .techniqueTile .artIcon{width:32px!important;height:32px!important}
#game #panel #panelBody .skillGroup{padding:4px}.martialCatalog{gap:4px}
#game #panel #panelBody .skillGroup:last-child .techniqueTile{min-height:50px!important}
#game #panel #panelBody .skillGroup:last-child .techniqueTile .artIcon{width:25px!important;height:25px!important}
#game #panel #panelBody .gameMenuTile{padding:3px 2px;min-height:44px!important}
#game #panel #panelBody .gameMenuTile strong{font-size:11px}.gameMenuTile .menuTileArt{width:28px;height:28px}
#game #panel #panelBody .gameMenuTile .menuTileArt>.artIcon,#game #panel #panelBody .gameMenuTile .menuTileArt>.menuSymbol{width:24px;height:24px}
#game #panel #panelBody .enhanceHero h3{font-size:17px!important}
#game #panel #panelBody .summonArt h3{font-size:22px!important}
#game #panel #panelBody .summonButtons button{min-height:53px!important}
#game #panel #panelBody .communityToolbar{min-height:24px}
#game #panel #panelBody .communityToolbar button{min-height:26px!important}
#game #panel #panelBody .marketRow{padding-top:6px;padding-bottom:6px}
#game #panel #panelBody .bagInventory{min-height:112px;max-height:150px}
@media(pointer:coarse){#game #panel #panelBody :is(button,input,select){min-height:38px!important}}
#game #panel #panelBody .atlasGo{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0;text-align:left;white-space:normal;height:auto}
#game #panel #panelBody .atlasGo>*{max-width:100%;white-space:normal;overflow-wrap:anywhere}
#game #panel #panelBody .atlasGo em{font-size:10px}#game #panel #panelBody .atlasGo strong{font-size:12px}#game #panel #panelBody .atlasGo>span{font-size:10px}
#game #panel #panelBody .atlasRow{min-width:0;grid-template-columns:minmax(0,1fr) 30px}
#game #panel #panelBody .frontierCard{min-width:0;padding:4px!important}#game #panel #panelBody .frontierCard span{min-width:0;max-width:100%;overflow-wrap:anywhere;white-space:normal}#game #panel #panelBody .frontierCard :is(small,strong){white-space:normal;font-size:11px}
#game #panel #panelBody .huntingRegions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
#game #panel #panelBody .huntingRegion{padding:7px;margin:0;min-width:0}
#game #panel #panelBody .huntingRegionHead{padding:0;gap:5px;margin:0}
#game #panel #panelBody .huntingRegionHead h3{font-size:13px!important}
#game #panel #panelBody .huntingRegionHead>span{font-size:11px}
#game #panel #panelBody .huntingRegion dl{margin:5px 0;gap:4px}
#game #panel #panelBody .huntingRegion :is(dt,dd){font-size:11px;margin:0}
#game #panel #panelBody .huntingSummary{padding:8px}#game #panel #panelBody .huntingSummary dl{margin:6px 0;gap:6px}#game #panel #panelBody .huntingSummary dd{font-size:16px}
#game #panel #panelBody .forgeIntro{padding:5px;gap:8px}#game #panel #panelBody .forgeIntro>.artIcon{width:36px;height:36px}
#game #panel #panelBody .forgeRecipes{gap:7px}#game #panel #panelBody .forgeRecipe{padding:8px}
#game #panel #panelBody .forgeItem{gap:7px}#game #panel #panelBody .forgeItem>.artIcon{width:36px;height:36px}
#game #panel #panelBody .forgeItem p{font-size:11px!important}
#game #panel #panelBody .forgeIngredients{padding:5px 0;font-size:11px}
#game #panel #panelBody .forgeIngredients summary{min-height:24px;line-height:24px;cursor:pointer;color:#d7c797}
#game #panel #panelBody .forgeMaterials{gap:4px;margin:4px 0}
#game #panel #panelBody .forgeMaterials button{padding:4px}.forgeMaterials .artIcon{width:22px!important;height:22px!important}
#game #panel #panelBody .forgeAction{margin-top:4px;font-size:12px}

/* Coupon contents describe the durable mail, never an unconfirmed client grant. */
.couponRewardList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;text-align:left}.couponReward{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:3px 9px;padding:10px;border:1px solid #9c8d5c66;border-radius:5px;background:#102a21}.couponReward>.commerceIcon,.couponReward>.artIcon{width:42px;height:42px;grid-row:span 2;flex:none}.couponReward>b{font-size:12px;overflow-wrap:anywhere}.couponReward>strong{font-size:16px;color:#ffde91}#rewardOverlay .couponDeliveryNote{margin-top:12px;color:#c9d6bd}#rewardOverlay .coupon h2{overflow-wrap:anywhere}
@media(max-width:420px){.couponRewardList{grid-template-columns:minmax(0,1fr)}.couponReward{padding:8px}#rewardOverlay .coupon footer{position:sticky;bottom:-12px;background:#102720;padding:8px 0}#rewardOverlay .coupon header{padding-left:4px;padding-right:4px}}

.clanGrowthTitle,.clanBuffs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.clanGrowthTitle{justify-content:space-between}.clanGrowthTitle strong{color:#f0d597;font-size:16px}.clanGrowth progress{width:100%;height:8px;accent-color:#84bda6}.clanBuffs{padding:8px 0;color:#b6dfc8;font-size:12px}.clanAchievements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:6px 0 10px}.clanAchievements>span{display:grid;gap:3px;background:#182926;padding:7px;border-radius:6px;font-size:11px}.clanAchievements b{font-size:13px}.clanAchievements small{font-size:10px}.clanGrowth>small{font-size:10px;line-height:1.5;color:#a9b9b0}

.rankingTabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.rankingTabs button{padding:7px 3px;font-size:12px;min-width:0}.rankingTabs [aria-pressed="true"]{background:#615038;color:#ffe8ac;border-color:#c8a866}.rankingHeader{display:flex;align-items:center;justify-content:space-between;margin:12px 0 5px;gap:8px}.rankingHeader h3{margin:2px 0;font-size:18px}.rankingHeader small,.rankingHeader>span{font-size:10px;color:#bfb6a0}.rankingRule{font-size:11px;color:#c8bea7;line-height:1.5;margin:5px 0 8px}.rankingMine{display:flex;justify-content:space-between;gap:8px;padding:10px;background:#263b32;border:1px solid #49745e;border-radius:6px;font-size:12px;margin-bottom:8px}.rankingRows{display:grid;gap:4px}.rankRow{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:7px;padding:8px 7px;background:#252821;border:1px solid #494637;border-radius:5px}.rankRow.isSelf{background:#2b3e30;border-color:#75a384}.rankTop .rankPlace{color:#ffe3a4;background:#51442d;border-radius:4px}.rankPlace{text-align:center;font-size:16px;padding:3px}.rankPlace small{display:block;font-size:9px;font-weight:normal}.rankPerson{min-width:0}.rankPerson b{font-size:12px;overflow-wrap:anywhere}.rankPerson small{display:block;color:#b5b7ab;font-size:10px;line-height:1.45;margin-top:3px}.rankPerson em{font-size:9px;color:#abddaf;font-style:normal}.rankValue{font-size:13px;color:#efdda5;text-align:right;white-space:nowrap}.rankingRules{font-size:11px;margin:12px 0;line-height:1.6}.rankingStamp{font-size:10px;color:#aaa697}@media(max-width:420px){.rankingMine{display:grid;gap:4px}.rankRow{grid-template-columns:28px minmax(0,1fr) auto;gap:5px;padding:7px 5px}.rankValue{font-size:11px}.rankPerson b{font-size:11px}}

.transformShopBanner{position:relative;display:block;width:100%;padding:0;margin:0 0 12px;height:180px;overflow:hidden;text-align:left;border:1px solid #c6a962;border-radius:8px;background:#152927}.transformShopBanner img{width:100%;height:100%;object-fit:cover;object-position:50% 32%}.transformShopBanner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#061d1ddd,#0a242455 65%,transparent)}.transformShopBanner>span{position:absolute;z-index:1;left:16px;top:24px;display:grid;gap:9px;color:#fff0bc;text-shadow:0 2px 4px #001}.transformShopBanner strong{font:32px var(--font-display)}.transformShopBanner small{font-size:11px}.transformShopBanner b{font-size:12px}.transformShopArt{position:relative;aspect-ratio:16/9;overflow:hidden;border:1px solid #bb9b5c;border-radius:8px}.transformShopArt img{width:100%;height:100%;object-fit:cover;object-position:50% 35%}.transformShopArt>div{position:absolute;inset:auto 0 0;padding:20px 15px 10px;background:linear-gradient(transparent,#081e1feb);text-shadow:0 2px 3px #10231e}.transformShopArt h3{margin:3px 0;color:#ffedb5;font:26px var(--font-display)}.transformShopArt p,.transformShopArt small{margin:2px 0;font-size:11px;color:#eee4ca}.transformShopState{display:flex;justify-content:space-between;gap:8px;margin:10px 0;font-size:11px;color:#c6ceb8}.transformShopButtons button{background:linear-gradient(#a28650,#695128);border-color:#d6b76e;color:#fff2c9}.transformShopButtons button:disabled{filter:grayscale(.65);opacity:.6}.transformCollectionLink{width:100%;padding:9px;background:#29453b;border:1px solid #728a6e;font-size:12px}.transformFeatured{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:12px 0}.transformFeatured article{display:grid;justify-items:center;padding:5px 2px;background:#202b24;border:1px solid var(--rarity);border-radius:6px;min-width:0}.transformFeatured .transformPortrait{width:52px;height:64px}.transformFeatured small{font-size:9px;color:var(--rarity)}.transformFeatured b{font-size:10px;text-align:center}.transformShop .transformRates{font-size:11px}@media(max-width:420px){.transformShopBanner{height:145px}.transformShopBanner strong{font-size:26px}.transformShopBanner>span{left:12px;top:17px}.transformShopArt h3{font-size:21px}.transformFeatured b{font-size:9px}}
